@waica/cli 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +64 -0
- package/dist/cli.js +184 -0
- package/dist/editor/assets/abap-08VXUWAP.js +1 -0
- package/dist/editor/assets/apex-BWPQTe0t.js +1 -0
- package/dist/editor/assets/azcli-Bc_sGQ0U.js +1 -0
- package/dist/editor/assets/bat-i0X4ZdIN.js +1 -0
- package/dist/editor/assets/bicep-B5-_aFwp.js +2 -0
- package/dist/editor/assets/cameligo-DMUM7wLl.js +1 -0
- package/dist/editor/assets/clojure-Cm7r79vr.js +1 -0
- package/dist/editor/assets/codicon-DCmgc-ay.ttf +0 -0
- package/dist/editor/assets/coffee-Ba7i2nA0.js +1 -0
- package/dist/editor/assets/cpp-C7h46wYY.js +1 -0
- package/dist/editor/assets/csharp-BKxtCVv1.js +1 -0
- package/dist/editor/assets/csp-bTuwJoIa.js +1 -0
- package/dist/editor/assets/css-DIMkf-bt.js +3 -0
- package/dist/editor/assets/css.worker-Fwwr_HdT.js +88 -0
- package/dist/editor/assets/cssMode-CQE-WdwL.js +4 -0
- package/dist/editor/assets/cypher-CVaqCwHa.js +1 -0
- package/dist/editor/assets/dart-onAF5SnQ.js +1 -0
- package/dist/editor/assets/dockerfile-DZFCIeNp.js +1 -0
- package/dist/editor/assets/ecl-D05T4iGw.js +1 -0
- package/dist/editor/assets/editor.worker-DsBDrWS5.js +12 -0
- package/dist/editor/assets/elixir-6RTg0lbw.js +1 -0
- package/dist/editor/assets/flow9-C5_-GSwl.js +1 -0
- package/dist/editor/assets/freemarker2-CYgdVabn.js +3 -0
- package/dist/editor/assets/fsharp-C8Ef5oNN.js +1 -0
- package/dist/editor/assets/go-C-y9NEjX.js +1 -0
- package/dist/editor/assets/graphql-fmXr3nnJ.js +1 -0
- package/dist/editor/assets/handlebars-DdeORCJD.js +1 -0
- package/dist/editor/assets/hcl-CpzslTdj.js +1 -0
- package/dist/editor/assets/html-DTIAGV84.js +1 -0
- package/dist/editor/assets/html.worker-B3Ztmmz2.js +495 -0
- package/dist/editor/assets/htmlMode-CRV3iBih.js +4 -0
- package/dist/editor/assets/index-Btzc6zxr.css +1 -0
- package/dist/editor/assets/index-Dhkqk31v.js +11016 -0
- package/dist/editor/assets/ini-sBoK_t0W.js +1 -0
- package/dist/editor/assets/java-BEtHBSE6.js +1 -0
- package/dist/editor/assets/javascript-dxBW86cl.js +1 -0
- package/dist/editor/assets/json.worker-PWQxM7ZO.js +51 -0
- package/dist/editor/assets/jsonMode-DFA5-FFK.js +10 -0
- package/dist/editor/assets/julia-Bri6UV-V.js +1 -0
- package/dist/editor/assets/kotlin-B0qVs-E9.js +1 -0
- package/dist/editor/assets/less-B9JPFI3C.js +2 -0
- package/dist/editor/assets/lexon-CfSJPG6W.js +1 -0
- package/dist/editor/assets/liquid-CScWaXYV.js +1 -0
- package/dist/editor/assets/lua-CsQS60Ue.js +1 -0
- package/dist/editor/assets/m3-D-oSqn_W.js +1 -0
- package/dist/editor/assets/markdown-Cimd5fb3.js +1 -0
- package/dist/editor/assets/mdx-Bvp84SqA.js +1 -0
- package/dist/editor/assets/mips-CIPQ_RoX.js +1 -0
- package/dist/editor/assets/msdax-DauUninz.js +1 -0
- package/dist/editor/assets/mysql-SOo6toE5.js +1 -0
- package/dist/editor/assets/objective-c-FvmIjYaQ.js +1 -0
- package/dist/editor/assets/pascal-DrH0SRf2.js +1 -0
- package/dist/editor/assets/pascaligo-D-ptJ9y-.js +1 -0
- package/dist/editor/assets/perl-oz_6vUea.js +1 -0
- package/dist/editor/assets/pgsql-DTj74zXo.js +1 -0
- package/dist/editor/assets/php-nr791fC2.js +1 -0
- package/dist/editor/assets/pla-CopQ2nXW.js +1 -0
- package/dist/editor/assets/postiats-43DmfD33.js +1 -0
- package/dist/editor/assets/powerquery-D3hlyOfw.js +1 -0
- package/dist/editor/assets/powershell-DmHpPYUd.js +1 -0
- package/dist/editor/assets/protobuf-C531GsRP.js +2 -0
- package/dist/editor/assets/pug-Z5eAx3Zn.js +1 -0
- package/dist/editor/assets/python-CG-OtvFa.js +1 -0
- package/dist/editor/assets/qsharp-DkqhCAOL.js +1 -0
- package/dist/editor/assets/r-BwWrilGY.js +1 -0
- package/dist/editor/assets/razor-r-iUEZPj.js +1 -0
- package/dist/editor/assets/redis-ClamHrr6.js +1 -0
- package/dist/editor/assets/redshift-DT7zqm-g.js +1 -0
- package/dist/editor/assets/restructuredtext-BYgofb2h.js +1 -0
- package/dist/editor/assets/ruby-DezsRK8O.js +1 -0
- package/dist/editor/assets/rust-DdL9SqIa.js +1 -0
- package/dist/editor/assets/sb-CcwsVR0C.js +1 -0
- package/dist/editor/assets/scala-DHpiXF5c.js +1 -0
- package/dist/editor/assets/scheme-BeGwcela.js +1 -0
- package/dist/editor/assets/scss-gp-XZpBa.js +3 -0
- package/dist/editor/assets/shell-CC2rA5mh.js +1 -0
- package/dist/editor/assets/solidity-BEEn4gHE.js +1 -0
- package/dist/editor/assets/sophia-CRfGWb83.js +1 -0
- package/dist/editor/assets/sparql-D_Lu-MrJ.js +1 -0
- package/dist/editor/assets/sql-NEE52Syq.js +1 -0
- package/dist/editor/assets/st-DbInun42.js +1 -0
- package/dist/editor/assets/swift-Bxkupp3x.js +1 -0
- package/dist/editor/assets/systemverilog-Bz4Y3fRF.js +1 -0
- package/dist/editor/assets/tcl-DISqw1ZD.js +1 -0
- package/dist/editor/assets/ts.worker-0mEyHVru.js +51339 -0
- package/dist/editor/assets/tsMode-Bth1rJwM.js +11 -0
- package/dist/editor/assets/twig-De2hgUGE.js +1 -0
- package/dist/editor/assets/typescript-tNRuHsoe.js +1 -0
- package/dist/editor/assets/typespec-B8J7ngcE.js +1 -0
- package/dist/editor/assets/vb-DV3o63ZY.js +1 -0
- package/dist/editor/assets/wgsl-DpFanUEy.js +298 -0
- package/dist/editor/assets/xml-BCx9e6CK.js +1 -0
- package/dist/editor/assets/yaml-Bb-peGP_.js +1 -0
- package/dist/editor/index.html +14 -0
- package/dist/mcp/archetypes.js +103 -0
- package/dist/mcp/cli.js +6 -0
- package/dist/mcp/create-project.js +151 -0
- package/dist/mcp/introspection.js +201 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/assets/waica-coin.png +0 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/assets/waica-dog.png +0 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/assets/waica-slime.png +0 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/art.d.ts +10 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/art.js +13 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/bundle.d.ts +3 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/bundle.js +10 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/controls.d.ts +5 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/controls.js +12 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/index.d.ts +38 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/index.js +34 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/manifest.d.ts +15 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/manifest.js +26 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/prefabs.d.ts +7 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/prefabs.js +97 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/registry-data.d.ts +5 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/registry-data.js +45 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/registry.d.ts +6 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/registry.js +15 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/scene-default.d.ts +40 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/scene-default.js +93 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/ui.d.ts +10 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/dist/ui.js +24 -0
- package/dist/mcp/node_modules/@waica/archetype-platformer/package.json +30 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/chaser.d.ts +59 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/chaser.js +127 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/collectible.d.ts +25 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/collectible.js +27 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/hazard.d.ts +29 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/hazard.js +42 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/index.d.ts +9 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/index.js +9 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/lifetime.d.ts +16 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/lifetime.js +19 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/npc.d.ts +4 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/npc.js +14 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/patrol.d.ts +43 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/patrol.js +68 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/platformer-motor.d.ts +124 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/platformer-motor.js +146 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/player-identity.d.ts +3 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/player-identity.js +5 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/player-states.d.ts +18 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/player-states.js +95 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/respawnable.d.ts +23 -0
- package/dist/mcp/node_modules/@waica/behaviors/dist/respawnable.js +27 -0
- package/dist/mcp/node_modules/@waica/behaviors/package.json +24 -0
- package/dist/mcp/node_modules/@waica/engine/dist/aabb.d.ts +2 -0
- package/dist/mcp/node_modules/@waica/engine/dist/aabb.js +4 -0
- package/dist/mcp/node_modules/@waica/engine/dist/animation/clip-player.d.ts +20 -0
- package/dist/mcp/node_modules/@waica/engine/dist/animation/clip-player.js +24 -0
- package/dist/mcp/node_modules/@waica/engine/dist/animation/contract.d.ts +21 -0
- package/dist/mcp/node_modules/@waica/engine/dist/animation/contract.js +23 -0
- package/dist/mcp/node_modules/@waica/engine/dist/animation/sheet.d.ts +65 -0
- package/dist/mcp/node_modules/@waica/engine/dist/animation/sheet.js +44 -0
- package/dist/mcp/node_modules/@waica/engine/dist/archetype.d.ts +37 -0
- package/dist/mcp/node_modules/@waica/engine/dist/archetype.js +1 -0
- package/dist/mcp/node_modules/@waica/engine/dist/camera.d.ts +71 -0
- package/dist/mcp/node_modules/@waica/engine/dist/camera.js +59 -0
- package/dist/mcp/node_modules/@waica/engine/dist/collision-shape.d.ts +26 -0
- package/dist/mcp/node_modules/@waica/engine/dist/collision-shape.js +136 -0
- package/dist/mcp/node_modules/@waica/engine/dist/component-registry.d.ts +16 -0
- package/dist/mcp/node_modules/@waica/engine/dist/component-registry.js +44 -0
- package/dist/mcp/node_modules/@waica/engine/dist/component.d.ts +58 -0
- package/dist/mcp/node_modules/@waica/engine/dist/component.js +11 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/animated-sprite.d.ts +80 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/animated-sprite.js +210 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/dynamic-body.d.ts +68 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/dynamic-body.js +189 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/hitbox.d.ts +25 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/hitbox.js +21 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/solid.d.ts +32 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/solid.js +45 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/sprite.d.ts +51 -0
- package/dist/mcp/node_modules/@waica/engine/dist/components/sprite.js +112 -0
- package/dist/mcp/node_modules/@waica/engine/dist/entity.d.ts +22 -0
- package/dist/mcp/node_modules/@waica/engine/dist/entity.js +52 -0
- package/dist/mcp/node_modules/@waica/engine/dist/events.d.ts +8 -0
- package/dist/mcp/node_modules/@waica/engine/dist/events.js +20 -0
- package/dist/mcp/node_modules/@waica/engine/dist/game.d.ts +95 -0
- package/dist/mcp/node_modules/@waica/engine/dist/game.js +263 -0
- package/dist/mcp/node_modules/@waica/engine/dist/index.d.ts +39 -0
- package/dist/mcp/node_modules/@waica/engine/dist/index.js +26 -0
- package/dist/mcp/node_modules/@waica/engine/dist/input.d.ts +40 -0
- package/dist/mcp/node_modules/@waica/engine/dist/input.js +84 -0
- package/dist/mcp/node_modules/@waica/engine/dist/scene.d.ts +80 -0
- package/dist/mcp/node_modules/@waica/engine/dist/scene.js +93 -0
- package/dist/mcp/node_modules/@waica/engine/dist/solid-axis.d.ts +21 -0
- package/dist/mcp/node_modules/@waica/engine/dist/solid-axis.js +77 -0
- package/dist/mcp/node_modules/@waica/engine/dist/state/hooks.d.ts +90 -0
- package/dist/mcp/node_modules/@waica/engine/dist/state/hooks.js +81 -0
- package/dist/mcp/node_modules/@waica/engine/dist/state/state-machine.d.ts +83 -0
- package/dist/mcp/node_modules/@waica/engine/dist/state/state-machine.js +173 -0
- package/dist/mcp/node_modules/@waica/engine/dist/stats.d.ts +27 -0
- package/dist/mcp/node_modules/@waica/engine/dist/stats.js +54 -0
- package/dist/mcp/node_modules/@waica/engine/dist/ui.d.ts +47 -0
- package/dist/mcp/node_modules/@waica/engine/dist/ui.js +175 -0
- package/dist/mcp/node_modules/@waica/engine/package.json +25 -0
- package/dist/mcp/package-resolver.js +240 -0
- package/dist/mcp/project-path.js +86 -0
- package/dist/mcp/scaffolds.js +153 -0
- package/dist/mcp/server.js +217 -0
- package/dist/mcp/stdio.js +13 -0
- package/dist/mcp/template/README.md +22 -0
- package/dist/mcp/template/_gitignore +5 -0
- package/dist/mcp/template/index.html +25 -0
- package/dist/mcp/template/package.json.tpl +20 -0
- package/dist/mcp/template/public/waica.params.json +1 -0
- package/dist/mcp/template/src/art/waica-coin.png +0 -0
- package/dist/mcp/template/src/art/waica-dog.png +0 -0
- package/dist/mcp/template/src/art/waica-slime.png +0 -0
- package/dist/mcp/template/src/characters/player.character.json +133 -0
- package/dist/mcp/template/src/characters/slime.character.json +61 -0
- package/dist/mcp/template/src/controls.json +8 -0
- package/dist/mcp/template/src/game.json +10 -0
- package/dist/mcp/template/src/main.ts +105 -0
- package/dist/mcp/template/src/objects/coin.object.json +41 -0
- package/dist/mcp/template/src/scenes/main.scene.json +217 -0
- package/dist/mcp/template/src/stats.json +7 -0
- package/dist/mcp/template/src/tiles/block.tile.json +21 -0
- package/dist/mcp/template/src/tiles/decor.tile.json +14 -0
- package/dist/mcp/template/src/tiles/platform.tile.json +21 -0
- package/dist/mcp/template/src/ui/coin-counter.html +12 -0
- package/dist/mcp/template/tsconfig.json +15 -0
- package/dist/mcp/template/vite.config.ts +3 -0
- package/dist/mcp/validation.js +323 -0
- package/dist/mcp/workspace-loader.js +14 -0
- package/dist/mcp/workspace-runtime.js +109 -0
- package/dist/server.js +210 -0
- package/package.json +38 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import{n as e,t}from"./index-Dhkqk31v.js";var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},s=(e,t,n)=>(o(e,t,`default`),n&&o(n,t,`default`)),c={};s(c,e);var l=class{constructor(e,t){this._modeId=e,this._defaults=t,this._worker=null,this._client=null,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker()),this._updateExtraLibsToken=0,this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange(()=>this._updateExtraLibs())}dispose(){this._configChangeListener.dispose(),this._extraLibsChangeListener.dispose(),this._stopWorker()}_stopWorker(){this._worker&&=(this._worker.dispose(),null),this._client=null}async _updateExtraLibs(){if(!this._worker)return;let e=++this._updateExtraLibsToken,t=await this._worker.getProxy();this._updateExtraLibsToken===e&&t.updateExtraLibs(this._defaults.getExtraLibs())}_getClient(){return this._client||=(async()=>(this._worker=c.editor.createWebWorker({moduleId:`vs/language/typescript/tsWorker`,label:this._modeId,keepIdleModels:!0,createData:{compilerOptions:this._defaults.getCompilerOptions(),extraLibs:this._defaults.getExtraLibs(),customWorkerPath:this._defaults.workerOptions.customWorkerPath,inlayHintsOptions:this._defaults.inlayHintsOptions}}),this._defaults.getEagerModelSync()?await this._worker.withSyncedResources(c.editor.getModels().filter(e=>e.getLanguageId()===this._modeId).map(e=>e.uri)):await this._worker.getProxy()))(),this._client}async getLanguageServiceWorker(...e){let t=await this._getClient();return this._worker&&await this._worker.withSyncedResources(e),t}},u={};u[`lib.d.ts`]=!0,u[`lib.decorators.d.ts`]=!0,u[`lib.decorators.legacy.d.ts`]=!0,u[`lib.dom.asynciterable.d.ts`]=!0,u[`lib.dom.d.ts`]=!0,u[`lib.dom.iterable.d.ts`]=!0,u[`lib.es2015.collection.d.ts`]=!0,u[`lib.es2015.core.d.ts`]=!0,u[`lib.es2015.d.ts`]=!0,u[`lib.es2015.generator.d.ts`]=!0,u[`lib.es2015.iterable.d.ts`]=!0,u[`lib.es2015.promise.d.ts`]=!0,u[`lib.es2015.proxy.d.ts`]=!0,u[`lib.es2015.reflect.d.ts`]=!0,u[`lib.es2015.symbol.d.ts`]=!0,u[`lib.es2015.symbol.wellknown.d.ts`]=!0,u[`lib.es2016.array.include.d.ts`]=!0,u[`lib.es2016.d.ts`]=!0,u[`lib.es2016.full.d.ts`]=!0,u[`lib.es2016.intl.d.ts`]=!0,u[`lib.es2017.d.ts`]=!0,u[`lib.es2017.date.d.ts`]=!0,u[`lib.es2017.full.d.ts`]=!0,u[`lib.es2017.intl.d.ts`]=!0,u[`lib.es2017.object.d.ts`]=!0,u[`lib.es2017.sharedmemory.d.ts`]=!0,u[`lib.es2017.string.d.ts`]=!0,u[`lib.es2017.typedarrays.d.ts`]=!0,u[`lib.es2018.asyncgenerator.d.ts`]=!0,u[`lib.es2018.asynciterable.d.ts`]=!0,u[`lib.es2018.d.ts`]=!0,u[`lib.es2018.full.d.ts`]=!0,u[`lib.es2018.intl.d.ts`]=!0,u[`lib.es2018.promise.d.ts`]=!0,u[`lib.es2018.regexp.d.ts`]=!0,u[`lib.es2019.array.d.ts`]=!0,u[`lib.es2019.d.ts`]=!0,u[`lib.es2019.full.d.ts`]=!0,u[`lib.es2019.intl.d.ts`]=!0,u[`lib.es2019.object.d.ts`]=!0,u[`lib.es2019.string.d.ts`]=!0,u[`lib.es2019.symbol.d.ts`]=!0,u[`lib.es2020.bigint.d.ts`]=!0,u[`lib.es2020.d.ts`]=!0,u[`lib.es2020.date.d.ts`]=!0,u[`lib.es2020.full.d.ts`]=!0,u[`lib.es2020.intl.d.ts`]=!0,u[`lib.es2020.number.d.ts`]=!0,u[`lib.es2020.promise.d.ts`]=!0,u[`lib.es2020.sharedmemory.d.ts`]=!0,u[`lib.es2020.string.d.ts`]=!0,u[`lib.es2020.symbol.wellknown.d.ts`]=!0,u[`lib.es2021.d.ts`]=!0,u[`lib.es2021.full.d.ts`]=!0,u[`lib.es2021.intl.d.ts`]=!0,u[`lib.es2021.promise.d.ts`]=!0,u[`lib.es2021.string.d.ts`]=!0,u[`lib.es2021.weakref.d.ts`]=!0,u[`lib.es2022.array.d.ts`]=!0,u[`lib.es2022.d.ts`]=!0,u[`lib.es2022.error.d.ts`]=!0,u[`lib.es2022.full.d.ts`]=!0,u[`lib.es2022.intl.d.ts`]=!0,u[`lib.es2022.object.d.ts`]=!0,u[`lib.es2022.regexp.d.ts`]=!0,u[`lib.es2022.sharedmemory.d.ts`]=!0,u[`lib.es2022.string.d.ts`]=!0,u[`lib.es2023.array.d.ts`]=!0,u[`lib.es2023.collection.d.ts`]=!0,u[`lib.es2023.d.ts`]=!0,u[`lib.es2023.full.d.ts`]=!0,u[`lib.es5.d.ts`]=!0,u[`lib.es6.d.ts`]=!0,u[`lib.esnext.collection.d.ts`]=!0,u[`lib.esnext.d.ts`]=!0,u[`lib.esnext.decorators.d.ts`]=!0,u[`lib.esnext.disposable.d.ts`]=!0,u[`lib.esnext.full.d.ts`]=!0,u[`lib.esnext.intl.d.ts`]=!0,u[`lib.esnext.object.d.ts`]=!0,u[`lib.esnext.promise.d.ts`]=!0,u[`lib.scripthost.d.ts`]=!0,u[`lib.webworker.asynciterable.d.ts`]=!0,u[`lib.webworker.d.ts`]=!0,u[`lib.webworker.importscripts.d.ts`]=!0,u[`lib.webworker.iterable.d.ts`]=!0;function d(e,t,n=0){if(typeof e==`string`)return e;if(e===void 0)return``;let r=``;if(n){r+=t;for(let e=0;e<n;e++)r+=` `}if(r+=e.messageText,n++,e.next)for(let i of e.next)r+=d(i,t,n);return r}function f(e){return e?e.map(e=>e.text).join(``):``}var p=class{constructor(e){this._worker=e}_textSpanToRange(e,t){let n=e.getPositionAt(t.start),r=e.getPositionAt(t.start+t.length),{lineNumber:i,column:a}=n,{lineNumber:o,column:s}=r;return{startLineNumber:i,startColumn:a,endLineNumber:o,endColumn:s}}},m=class{constructor(e){this._worker=e,this._libFiles={},this._hasFetchedLibFiles=!1,this._fetchLibFilesPromise=null}isLibFile(e){return e?e.path.indexOf(`/lib.`)===0&&!!u[e.path.slice(1)]:!1}getOrCreateModel(e){let n=c.Uri.parse(e),r=c.editor.getModel(n);if(r)return r;if(this.isLibFile(n)&&this._hasFetchedLibFiles)return c.editor.createModel(this._libFiles[n.path.slice(1)],`typescript`,n);let i=t.getExtraLibs()[e];return i?c.editor.createModel(i.content,`typescript`,n):null}_containsLibFile(e){for(let t of e)if(this.isLibFile(t))return!0;return!1}async fetchLibFilesIfNecessary(e){this._containsLibFile(e)&&await this._fetchLibFiles()}_fetchLibFiles(){return this._fetchLibFilesPromise||=this._worker().then(e=>e.getLibFiles()).then(e=>{this._hasFetchedLibFiles=!0,this._libFiles=e}),this._fetchLibFilesPromise}},h=class extends p{constructor(e,t,n,r){super(r),this._libFiles=e,this._defaults=t,this._selector=n,this._disposables=[],this._listener=Object.create(null);let i=e=>{if(e.getLanguageId()!==n)return;let t=()=>{let{onlyVisible:t}=this._defaults.getDiagnosticsOptions();t?e.isAttachedToEditor()&&this._doValidate(e):this._doValidate(e)},r,i=e.onDidChangeContent(()=>{clearTimeout(r),r=window.setTimeout(t,500)}),a=e.onDidChangeAttached(()=>{let{onlyVisible:n}=this._defaults.getDiagnosticsOptions();n&&(e.isAttachedToEditor()?t():c.editor.setModelMarkers(e,this._selector,[]))});this._listener[e.uri.toString()]={dispose(){i.dispose(),a.dispose(),clearTimeout(r)}},t()},a=e=>{c.editor.setModelMarkers(e,this._selector,[]);let t=e.uri.toString();this._listener[t]&&(this._listener[t].dispose(),delete this._listener[t])};this._disposables.push(c.editor.onDidCreateModel(e=>i(e))),this._disposables.push(c.editor.onWillDisposeModel(a)),this._disposables.push(c.editor.onDidChangeModelLanguage(e=>{a(e.model),i(e.model)})),this._disposables.push({dispose(){for(let e of c.editor.getModels())a(e)}});let o=()=>{for(let e of c.editor.getModels())a(e),i(e)};this._disposables.push(this._defaults.onDidChange(o)),this._disposables.push(this._defaults.onDidExtraLibsChange(o)),c.editor.getModels().forEach(e=>i(e))}dispose(){this._disposables.forEach(e=>e&&e.dispose()),this._disposables=[]}async _doValidate(e){let t=await this._worker(e.uri);if(e.isDisposed())return;let n=[],{noSyntaxValidation:r,noSemanticValidation:i,noSuggestionDiagnostics:a}=this._defaults.getDiagnosticsOptions();r||n.push(t.getSyntacticDiagnostics(e.uri.toString())),i||n.push(t.getSemanticDiagnostics(e.uri.toString())),a||n.push(t.getSuggestionDiagnostics(e.uri.toString()));let o=await Promise.all(n);if(!o||e.isDisposed())return;let s=o.reduce((e,t)=>t.concat(e),[]).filter(e=>(this._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(e.code)===-1),l=s.map(e=>e.relatedInformation||[]).reduce((e,t)=>t.concat(e),[]).map(e=>e.file?c.Uri.parse(e.file.fileName):null);await this._libFiles.fetchLibFilesIfNecessary(l),!e.isDisposed()&&c.editor.setModelMarkers(e,this._selector,s.map(t=>this._convertDiagnostics(e,t)))}_convertDiagnostics(e,t){let n=t.start||0,r=t.length||1,{lineNumber:i,column:a}=e.getPositionAt(n),{lineNumber:o,column:s}=e.getPositionAt(n+r),l=[];return t.reportsUnnecessary&&l.push(c.MarkerTag.Unnecessary),t.reportsDeprecated&&l.push(c.MarkerTag.Deprecated),{severity:this._tsDiagnosticCategoryToMarkerSeverity(t.category),startLineNumber:i,startColumn:a,endLineNumber:o,endColumn:s,message:d(t.messageText,`
|
|
2
|
+
`),code:t.code.toString(),tags:l,relatedInformation:this._convertRelatedInformation(e,t.relatedInformation)}}_convertRelatedInformation(e,t){if(!t)return[];let n=[];return t.forEach(t=>{let r=e;if(t.file&&(r=this._libFiles.getOrCreateModel(t.file.fileName)),!r)return;let i=t.start||0,a=t.length||1,{lineNumber:o,column:s}=r.getPositionAt(i),{lineNumber:c,column:l}=r.getPositionAt(i+a);n.push({resource:r.uri,startLineNumber:o,startColumn:s,endLineNumber:c,endColumn:l,message:d(t.messageText,`
|
|
3
|
+
`)})}),n}_tsDiagnosticCategoryToMarkerSeverity(e){switch(e){case 1:return c.MarkerSeverity.Error;case 3:return c.MarkerSeverity.Info;case 0:return c.MarkerSeverity.Warning;case 2:return c.MarkerSeverity.Hint}return c.MarkerSeverity.Info}},g=class e extends p{get triggerCharacters(){return[`.`]}async provideCompletionItems(t,n,r,i){let a=t.getWordUntilPosition(n),o=new c.Range(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn),s=t.uri,l=t.getOffsetAt(n),u=await this._worker(s);if(t.isDisposed())return;let d=await u.getCompletionsAtPosition(s.toString(),l);if(!(!d||t.isDisposed()))return{suggestions:d.entries.map(r=>{let i=o;if(r.replacementSpan){let e=t.getPositionAt(r.replacementSpan.start),n=t.getPositionAt(r.replacementSpan.start+r.replacementSpan.length);i=new c.Range(e.lineNumber,e.column,n.lineNumber,n.column)}let a=[];return r.kindModifiers!==void 0&&r.kindModifiers.indexOf(`deprecated`)!==-1&&a.push(c.languages.CompletionItemTag.Deprecated),{uri:s,position:n,offset:l,range:i,label:r.name,insertText:r.name,sortText:r.sortText,kind:e.convertKind(r.kind),tags:a}})}}async resolveCompletionItem(t,n){let r=t,i=r.uri,a=r.position,o=r.offset,s=await(await this._worker(i)).getCompletionEntryDetails(i.toString(),o,r.label);return s?{uri:i,position:a,label:s.name,kind:e.convertKind(s.kind),detail:f(s.displayParts),documentation:{value:e.createDocumentationString(s)}}:r}static convertKind(e){switch(e){case w.primitiveType:case w.keyword:return c.languages.CompletionItemKind.Keyword;case w.variable:case w.localVariable:return c.languages.CompletionItemKind.Variable;case w.memberVariable:case w.memberGetAccessor:case w.memberSetAccessor:return c.languages.CompletionItemKind.Field;case w.function:case w.memberFunction:case w.constructSignature:case w.callSignature:case w.indexSignature:return c.languages.CompletionItemKind.Function;case w.enum:return c.languages.CompletionItemKind.Enum;case w.module:return c.languages.CompletionItemKind.Module;case w.class:return c.languages.CompletionItemKind.Class;case w.interface:return c.languages.CompletionItemKind.Interface;case w.warning:return c.languages.CompletionItemKind.File}return c.languages.CompletionItemKind.Property}static createDocumentationString(e){let t=f(e.documentation);if(e.tags)for(let n of e.tags)t+=`
|
|
4
|
+
|
|
5
|
+
${_(n)}`;return t}};function _(e){let t=`*@${e.name}*`;if(e.name===`param`&&e.text){let[n,...r]=e.text;t+=`\`${n.text}\``,r.length>0&&(t+=` \u2014 ${r.map(e=>e.text).join(` `)}`)}else Array.isArray(e.text)?t+=` \u2014 ${e.text.map(e=>e.text).join(` `)}`:e.text&&(t+=` \u2014 ${e.text}`);return t}var v=class e extends p{constructor(){super(...arguments),this.signatureHelpTriggerCharacters=[`(`,`,`]}static _toSignatureHelpTriggerReason(e){switch(e.triggerKind){case c.languages.SignatureHelpTriggerKind.TriggerCharacter:return e.triggerCharacter?e.isRetrigger?{kind:`retrigger`,triggerCharacter:e.triggerCharacter}:{kind:`characterTyped`,triggerCharacter:e.triggerCharacter}:{kind:`invoked`};case c.languages.SignatureHelpTriggerKind.ContentChange:return e.isRetrigger?{kind:`retrigger`}:{kind:`invoked`};case c.languages.SignatureHelpTriggerKind.Invoke:default:return{kind:`invoked`}}}async provideSignatureHelp(t,n,r,i){let a=t.uri,o=t.getOffsetAt(n),s=await this._worker(a);if(t.isDisposed())return;let c=await s.getSignatureHelpItems(a.toString(),o,{triggerReason:e._toSignatureHelpTriggerReason(i)});if(!c||t.isDisposed())return;let l={activeSignature:c.selectedItemIndex,activeParameter:c.argumentIndex,signatures:[]};return c.items.forEach(e=>{let t={label:``,parameters:[]};t.documentation={value:f(e.documentation)},t.label+=f(e.prefixDisplayParts),e.parameters.forEach((n,r,i)=>{let a=f(n.displayParts),o={label:a,documentation:{value:f(n.documentation)}};t.label+=a,t.parameters.push(o),r<i.length-1&&(t.label+=f(e.separatorDisplayParts))}),t.label+=f(e.suffixDisplayParts),l.signatures.push(t)}),{value:l,dispose(){}}}},y=class extends p{async provideHover(e,t,n){let r=e.uri,i=e.getOffsetAt(t),a=await this._worker(r);if(e.isDisposed())return;let o=await a.getQuickInfoAtPosition(r.toString(),i);if(!o||e.isDisposed())return;let s=f(o.documentation),c=o.tags?o.tags.map(e=>_(e)).join(`
|
|
6
|
+
|
|
7
|
+
`):``,l=f(o.displayParts);return{range:this._textSpanToRange(e,o.textSpan),contents:[{value:"```typescript\n"+l+"\n```\n"},{value:s+(c?`
|
|
8
|
+
|
|
9
|
+
`+c:``)}]}}},b=class extends p{async provideDocumentHighlights(e,t,n){let r=e.uri,i=e.getOffsetAt(t),a=await this._worker(r);if(e.isDisposed())return;let o=await a.getDocumentHighlights(r.toString(),i,[r.toString()]);if(!(!o||e.isDisposed()))return o.flatMap(t=>t.highlightSpans.map(t=>({range:this._textSpanToRange(e,t.textSpan),kind:t.kind===`writtenReference`?c.languages.DocumentHighlightKind.Write:c.languages.DocumentHighlightKind.Text})))}},x=class extends p{constructor(e,t){super(t),this._libFiles=e}async provideDefinition(e,t,n){let r=e.uri,i=e.getOffsetAt(t),a=await this._worker(r);if(e.isDisposed())return;let o=await a.getDefinitionAtPosition(r.toString(),i);if(!o||e.isDisposed()||(await this._libFiles.fetchLibFilesIfNecessary(o.map(e=>c.Uri.parse(e.fileName))),e.isDisposed()))return;let s=[];for(let e of o){let t=this._libFiles.getOrCreateModel(e.fileName);t&&s.push({uri:t.uri,range:this._textSpanToRange(t,e.textSpan)})}return s}},S=class extends p{constructor(e,t){super(t),this._libFiles=e}async provideReferences(e,t,n,r){let i=e.uri,a=e.getOffsetAt(t),o=await this._worker(i);if(e.isDisposed())return;let s=await o.getReferencesAtPosition(i.toString(),a);if(!s||e.isDisposed()||(await this._libFiles.fetchLibFilesIfNecessary(s.map(e=>c.Uri.parse(e.fileName))),e.isDisposed()))return;let l=[];for(let e of s){let t=this._libFiles.getOrCreateModel(e.fileName);t&&l.push({uri:t.uri,range:this._textSpanToRange(t,e.textSpan)})}return l}},C=class extends p{async provideDocumentSymbols(e,t){let n=e.uri,r=await this._worker(n);if(e.isDisposed())return;let i=await r.getNavigationTree(n.toString());if(!i||e.isDisposed())return;let a=(t,n)=>({name:t.text,detail:``,kind:T[t.kind]||c.languages.SymbolKind.Variable,range:this._textSpanToRange(e,t.spans[0]),selectionRange:this._textSpanToRange(e,t.spans[0]),tags:[],children:t.childItems?.map(e=>a(e,t.text)),containerName:n});return i.childItems?i.childItems.map(e=>a(e)):[]}},w=class{static{this.unknown=``}static{this.keyword=`keyword`}static{this.script=`script`}static{this.module=`module`}static{this.class=`class`}static{this.interface=`interface`}static{this.type=`type`}static{this.enum=`enum`}static{this.variable=`var`}static{this.localVariable=`local var`}static{this.function=`function`}static{this.localFunction=`local function`}static{this.memberFunction=`method`}static{this.memberGetAccessor=`getter`}static{this.memberSetAccessor=`setter`}static{this.memberVariable=`property`}static{this.constructorImplementation=`constructor`}static{this.callSignature=`call`}static{this.indexSignature=`index`}static{this.constructSignature=`construct`}static{this.parameter=`parameter`}static{this.typeParameter=`type parameter`}static{this.primitiveType=`primitive type`}static{this.label=`label`}static{this.alias=`alias`}static{this.const=`const`}static{this.let=`let`}static{this.warning=`warning`}},T=Object.create(null);T[w.module]=c.languages.SymbolKind.Module,T[w.class]=c.languages.SymbolKind.Class,T[w.enum]=c.languages.SymbolKind.Enum,T[w.interface]=c.languages.SymbolKind.Interface,T[w.memberFunction]=c.languages.SymbolKind.Method,T[w.memberVariable]=c.languages.SymbolKind.Property,T[w.memberGetAccessor]=c.languages.SymbolKind.Property,T[w.memberSetAccessor]=c.languages.SymbolKind.Property,T[w.variable]=c.languages.SymbolKind.Variable,T[w.const]=c.languages.SymbolKind.Variable,T[w.localVariable]=c.languages.SymbolKind.Variable,T[w.variable]=c.languages.SymbolKind.Variable,T[w.function]=c.languages.SymbolKind.Function,T[w.localFunction]=c.languages.SymbolKind.Function;var E=class extends p{static _convertOptions(e){return{ConvertTabsToSpaces:e.insertSpaces,TabSize:e.tabSize,IndentSize:e.tabSize,IndentStyle:2,NewLineCharacter:`
|
|
10
|
+
`,InsertSpaceAfterCommaDelimiter:!0,InsertSpaceAfterSemicolonInForStatements:!0,InsertSpaceBeforeAndAfterBinaryOperators:!0,InsertSpaceAfterKeywordsInControlFlowStatements:!0,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:!0,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,PlaceOpenBraceOnNewLineForControlBlocks:!1,PlaceOpenBraceOnNewLineForFunctions:!1}}_convertTextChanges(e,t){return{text:t.newText,range:this._textSpanToRange(e,t.span)}}},D=class extends E{constructor(){super(...arguments),this.canFormatMultipleRanges=!1}async provideDocumentRangeFormattingEdits(e,t,n,r){let i=e.uri,a=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),o=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),s=await this._worker(i);if(e.isDisposed())return;let c=await s.getFormattingEditsForRange(i.toString(),a,o,E._convertOptions(n));if(!(!c||e.isDisposed()))return c.map(t=>this._convertTextChanges(e,t))}},O=class extends E{get autoFormatTriggerCharacters(){return[`;`,`}`,`
|
|
11
|
+
`]}async provideOnTypeFormattingEdits(e,t,n,r,i){let a=e.uri,o=e.getOffsetAt(t),s=await this._worker(a);if(e.isDisposed())return;let c=await s.getFormattingEditsAfterKeystroke(a.toString(),o,n,E._convertOptions(r));if(!(!c||e.isDisposed()))return c.map(t=>this._convertTextChanges(e,t))}},k=class extends E{async provideCodeActions(e,t,n,r){let i=e.uri,a=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),o=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),s=E._convertOptions(e.getOptions()),c=n.markers.filter(e=>e.code).map(e=>e.code).map(Number),l=await this._worker(i);if(e.isDisposed())return;let u=await l.getCodeFixesAtPosition(i.toString(),a,o,c,s);return!u||e.isDisposed()?{actions:[],dispose:()=>{}}:{actions:u.filter(e=>e.changes.filter(e=>e.isNewFile).length===0).map(t=>this._tsCodeFixActionToMonacoCodeAction(e,n,t)),dispose:()=>{}}}_tsCodeFixActionToMonacoCodeAction(e,t,n){let r=[];for(let t of n.changes)for(let n of t.textChanges)r.push({resource:e.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(e,n.span),text:n.newText}});return{title:n.description,edit:{edits:r},diagnostics:t.markers,kind:`quickfix`}}},A=class extends p{constructor(e,t){super(t),this._libFiles=e}async provideRenameEdits(e,t,n,r){let i=e.uri,a=i.toString(),o=e.getOffsetAt(t),s=await this._worker(i);if(e.isDisposed())return;let c=await s.getRenameInfo(a,o,{allowRenameOfImportPath:!1});if(c.canRename===!1)return{edits:[],rejectReason:c.localizedErrorMessage};if(c.fileToRename!==void 0)throw Error(`Renaming files is not supported.`);let l=await s.findRenameLocations(a,o,!1,!1,!1);if(!l||e.isDisposed())return;let u=[];for(let e of l){let t=this._libFiles.getOrCreateModel(e.fileName);if(t)u.push({resource:t.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(t,e.textSpan),text:n}});else throw Error(`Unknown file ${e.fileName}.`)}return{edits:u}}},j=class extends p{async provideInlayHints(e,t,n){let r=e.uri,i=r.toString(),a=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),o=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),s=await this._worker(r);return e.isDisposed()?null:{hints:(await s.provideInlayHints(i,a,o)).map(t=>({...t,label:t.text,position:e.getPositionAt(t.position),kind:this._convertHintKind(t.kind)})),dispose:()=>{}}}_convertHintKind(e){switch(e){case`Parameter`:return c.languages.InlayHintKind.Parameter;case`Type`:return c.languages.InlayHintKind.Type;default:return c.languages.InlayHintKind.Type}}},M,N;function P(e){N=R(e,`typescript`)}function F(e){M=R(e,`javascript`)}function I(){return new Promise((e,t)=>{if(!M)return t(`JavaScript not registered!`);e(M)})}function L(){return new Promise((e,t)=>{if(!N)return t(`TypeScript not registered!`);e(N)})}function R(e,t){let n=[],r=[],i=new l(t,e);n.push(i);let a=(...e)=>i.getLanguageServiceWorker(...e),o=new m(a);function s(){let{modeConfiguration:n}=e;B(r),n.completionItems&&r.push(c.languages.registerCompletionItemProvider(t,new g(a))),n.signatureHelp&&r.push(c.languages.registerSignatureHelpProvider(t,new v(a))),n.hovers&&r.push(c.languages.registerHoverProvider(t,new y(a))),n.documentHighlights&&r.push(c.languages.registerDocumentHighlightProvider(t,new b(a))),n.definitions&&r.push(c.languages.registerDefinitionProvider(t,new x(o,a))),n.references&&r.push(c.languages.registerReferenceProvider(t,new S(o,a))),n.documentSymbols&&r.push(c.languages.registerDocumentSymbolProvider(t,new C(a))),n.rename&&r.push(c.languages.registerRenameProvider(t,new A(o,a))),n.documentRangeFormattingEdits&&r.push(c.languages.registerDocumentRangeFormattingEditProvider(t,new D(a))),n.onTypeFormattingEdits&&r.push(c.languages.registerOnTypeFormattingEditProvider(t,new O(a))),n.codeActions&&r.push(c.languages.registerCodeActionProvider(t,new k(a))),n.inlayHints&&r.push(c.languages.registerInlayHintsProvider(t,new j(a))),n.diagnostics&&r.push(new h(o,e,t,a))}return s(),n.push(z(r)),a}function z(e){return{dispose:()=>B(e)}}function B(e){for(;e.length;)e.pop().dispose()}export{p as Adapter,k as CodeActionAdaptor,x as DefinitionAdapter,h as DiagnosticsAdapter,b as DocumentHighlightAdapter,D as FormatAdapter,E as FormatHelper,O as FormatOnTypeAdapter,j as InlayHintsAdapter,w as Kind,m as LibFiles,C as OutlineAdapter,y as QuickInfoAdapter,S as ReferenceAdapter,A as RenameAdapter,v as SignatureHelpAdapter,g as SuggestAdapter,l as WorkerManager,d as flattenDiagnosticMessageText,I as getJavaScriptWorker,L as getTypeScriptWorker,F as setupJavaScript,P as setupTypeScript};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:[`{#`,`#}`]},brackets:[[`{#`,`#}`],[`{%`,`%}`],[`{{`,`}}`],[`(`,`)`],[`[`,`]`],[`<!--`,`-->`],[`<`,`>`]],autoClosingPairs:[{open:`{# `,close:` #}`},{open:`{% `,close:` %}`},{open:`{{ `,close:` }}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],surroundingPairs:[{open:`"`,close:`"`},{open:`'`,close:`'`},{open:`<`,close:`>`}]},t={defaultToken:``,tokenPostfix:``,ignoreCase:!0,keywords:`apply.autoescape.block.deprecated.do.embed.extends.flush.for.from.if.import.include.macro.sandbox.set.use.verbatim.with.endapply.endautoescape.endblock.endembed.endfor.endif.endmacro.endsandbox.endset.endwith.true.false`.split(`.`),tokenizer:{root:[[/\s+/],[/{#/,`comment.twig`,`@commentState`],[/{%[-~]?/,`delimiter.twig`,`@blockState`],[/{{[-~]?/,`delimiter.twig`,`@variableState`],[/<!DOCTYPE/,`metatag.html`,`@doctype`],[/<!--/,`comment.html`,`@comment`],[/(<)((?:[\w\-]+:)?[\w\-]+)(\s*)(\/>)/,[`delimiter.html`,`tag.html`,``,`delimiter.html`]],[/(<)(script)/,[`delimiter.html`,{token:`tag.html`,next:`@script`}]],[/(<)(style)/,[`delimiter.html`,{token:`tag.html`,next:`@style`}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,[`delimiter.html`,{token:`tag.html`,next:`@otherTag`}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,[`delimiter.html`,{token:`tag.html`,next:`@otherTag`}]],[/</,`delimiter.html`],[/[^<{]+/]],commentState:[[/#}/,`comment.twig`,`@pop`],[/./,`comment.twig`]],blockState:[[/[-~]?%}/,`delimiter.twig`,`@pop`],[/\s+/],[/(verbatim)(\s*)([-~]?%})/,[`keyword.twig`,``,{token:`delimiter.twig`,next:`@rawDataState`}]],{include:`expression`}],rawDataState:[[/({%[-~]?)(\s*)(endverbatim)(\s*)([-~]?%})/,[`delimiter.twig`,``,`keyword.twig`,``,{token:`delimiter.twig`,next:`@popall`}]],[/./,`string.twig`]],variableState:[[/[-~]?}}/,`delimiter.twig`,`@pop`],{include:`expression`}],stringState:[[/"/,`string.twig`,`@pop`],[/#{\s*/,`string.twig`,`@interpolationState`],[/[^#"\\]*(?:(?:\\.|#(?!\{))[^#"\\]*)*/,`string.twig`]],interpolationState:[[/}/,`string.twig`,`@pop`],{include:`expression`}],expression:[[/\s+/],[/\+|-|\/{1,2}|%|\*{1,2}/,`operators.twig`],[/(and|or|not|b-and|b-xor|b-or)(\s+)/,[`operators.twig`,``]],[/==|!=|<|>|>=|<=/,`operators.twig`],[/(starts with|ends with|matches)(\s+)/,[`operators.twig`,``]],[/(in)(\s+)/,[`operators.twig`,``]],[/(is)(\s+)/,[`operators.twig`,``]],[/\||~|:|\.{1,2}|\?{1,2}/,`operators.twig`],[/[^\W\d][\w]*/,{cases:{"@keywords":`keyword.twig`,"@default":`variable.twig`}}],[/\d+(\.\d+)?/,`number.twig`],[/\(|\)|\[|\]|{|}|,/,`delimiter.twig`],[/"([^#"\\]*(?:\\.[^#"\\]*)*)"|\'([^\'\\]*(?:\\.[^\'\\]*)*)\'/,`string.twig`],[/"/,`string.twig`,`@stringState`],[/=>/,`operators.twig`],[/=/,`operators.twig`]],doctype:[[/[^>]+/,`metatag.content.html`],[/>/,`metatag.html`,`@pop`]],comment:[[/-->/,`comment.html`,`@pop`],[/[^-]+/,`comment.content.html`],[/./,`comment.content.html`]],otherTag:[[/\/?>/,`delimiter.html`,`@pop`],[/"([^"]*)"/,`attribute.value.html`],[/'([^']*)'/,`attribute.value.html`],[/[\w\-]+/,`attribute.name.html`],[/=/,`delimiter.html`],[/[ \t\r\n]+/]],script:[[/type/,`attribute.name.html`,`@scriptAfterType`],[/"([^"]*)"/,`attribute.value.html`],[/'([^']*)'/,`attribute.value.html`],[/[\w\-]+/,`attribute.name.html`],[/=/,`delimiter.html`],[/>/,{token:`delimiter.html`,next:`@scriptEmbedded`,nextEmbedded:`text/javascript`}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,[`delimiter.html`,`tag.html`,{token:`delimiter.html`,next:`@pop`}]]],scriptAfterType:[[/=/,`delimiter.html`,`@scriptAfterTypeEquals`],[/>/,{token:`delimiter.html`,next:`@scriptEmbedded`,nextEmbedded:`text/javascript`}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:`@rematch`,next:`@pop`}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:`attribute.value.html`,switchTo:`@scriptWithCustomType.$1`}],[/'([^']*)'/,{token:`attribute.value.html`,switchTo:`@scriptWithCustomType.$1`}],[/>/,{token:`delimiter.html`,next:`@scriptEmbedded`,nextEmbedded:`text/javascript`}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:`@rematch`,next:`@pop`}]],scriptWithCustomType:[[/>/,{token:`delimiter.html`,next:`@scriptEmbedded.$S2`,nextEmbedded:`$S2`}],[/"([^"]*)"/,`attribute.value.html`],[/'([^']*)'/,`attribute.value.html`],[/[\w\-]+/,`attribute.name.html`],[/=/,`delimiter.html`],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:`@rematch`,next:`@pop`}]],scriptEmbedded:[[/<\/script/,{token:`@rematch`,next:`@pop`,nextEmbedded:`@pop`}],[/[^<]+/,``]],style:[[/type/,`attribute.name.html`,`@styleAfterType`],[/"([^"]*)"/,`attribute.value.html`],[/'([^']*)'/,`attribute.value.html`],[/[\w\-]+/,`attribute.name.html`],[/=/,`delimiter.html`],[/>/,{token:`delimiter.html`,next:`@styleEmbedded`,nextEmbedded:`text/css`}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,[`delimiter.html`,`tag.html`,{token:`delimiter.html`,next:`@pop`}]]],styleAfterType:[[/=/,`delimiter.html`,`@styleAfterTypeEquals`],[/>/,{token:`delimiter.html`,next:`@styleEmbedded`,nextEmbedded:`text/css`}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:`@rematch`,next:`@pop`}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:`attribute.value.html`,switchTo:`@styleWithCustomType.$1`}],[/'([^']*)'/,{token:`attribute.value.html`,switchTo:`@styleWithCustomType.$1`}],[/>/,{token:`delimiter.html`,next:`@styleEmbedded`,nextEmbedded:`text/css`}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:`@rematch`,next:`@pop`}]],styleWithCustomType:[[/>/,{token:`delimiter.html`,next:`@styleEmbedded.$S2`,nextEmbedded:`$S2`}],[/"([^"]*)"/,`attribute.value.html`],[/'([^']*)'/,`attribute.value.html`],[/[\w\-]+/,`attribute.name.html`],[/=/,`delimiter.html`],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:`@rematch`,next:`@pop`}]],styleEmbedded:[[/<\/style/,{token:`@rematch`,next:`@pop`,nextEmbedded:`@pop`}],[/[^<]+/,``]]}};export{e as conf,t as language};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./index-Dhkqk31v.js";var t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,a=(e,a,o,s)=>{if(a&&typeof a==`object`||typeof a==`function`)for(let c of r(a))!i.call(e,c)&&c!==o&&t(e,c,{get:()=>a[c],enumerable:!(s=n(a,c))||s.enumerable});return e},o=(e,t,n)=>(a(e,t,`default`),n&&a(n,t,`default`)),s={};o(s,e);var c={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:s.languages.IndentAction.IndentOutdent,appendText:` * `}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:s.languages.IndentAction.None,appendText:` * `}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:s.languages.IndentAction.None,appendText:`* `}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:s.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`,notIn:[`string`]},{open:`'`,close:`'`,notIn:[`string`,`comment`]},{open:"`",close:"`",notIn:[`string`,`comment`]},{open:`/**`,close:` */`,notIn:[`string`]}],folding:{markers:{start:RegExp(`^\\s*//\\s*#?region\\b`),end:RegExp(`^\\s*//\\s*#?endregion\\b`)}}},l={defaultToken:`invalid`,tokenPostfix:`.ts`,keywords:`abstract.any.as.asserts.bigint.boolean.break.case.catch.class.continue.const.constructor.debugger.declare.default.delete.do.else.enum.export.extends.false.finally.for.from.function.get.if.implements.import.in.infer.instanceof.interface.is.keyof.let.module.namespace.never.new.null.number.object.out.package.private.protected.public.override.readonly.require.global.return.satisfies.set.static.string.super.switch.symbol.this.throw.true.try.type.typeof.undefined.unique.unknown.var.void.while.with.yield.async.await.of`.split(`.`),operators:`<=.>=.==.!=.===.!==.=>.+.-.**.*./.%.++.--.<<.</.>>.>>>.&.|.^.!.~.&&.||.??.?.:.=.+=.-=.*=.**=./=.%=.<<=.>>=.>>>=.&=.|=.^=.@`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/[{}]/,`delimiter.bracket`],{include:`common`}],common:[[/#?[a-z_$][\w$]*/,{cases:{"@keywords":`keyword`,"@default":`identifier`}}],[/[A-Z][\w\$]*/,`type.identifier`],{include:`@whitespace`},[/\/(?=([^\\\/]|\\.)+\/([dgimsuy]*)(\s*)(\.|;|,|\)|\]|\}|$))/,{token:`regexp`,bracket:`@open`,next:`@regexp`}],[/[()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/!(?=([^=]|$))/,`delimiter`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/(@digits)[eE]([\-+]?(@digits))?/,`number.float`],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,`number.float`],[/0[xX](@hexdigits)n?/,`number.hex`],[/0[oO]?(@octaldigits)n?/,`number.octal`],[/0[bB](@binarydigits)n?/,`number.binary`],[/(@digits)n?/,`number`],[/[;,.]/,`delimiter`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/'([^'\\]|\\.)*$/,`string.invalid`],[/"/,`string`,`@string_double`],[/'/,`string`,`@string_single`],[/`/,`string`,`@string_backtick`]],whitespace:[[/[ \t\r\n]+/,``],[/\/\*\*(?!\/)/,`comment.doc`,`@jsdoc`],[/\/\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]],comment:[[/[^\/*]+/,`comment`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],jsdoc:[[/[^\/*]+/,`comment.doc`],[/\*\//,`comment.doc`,`@pop`],[/[\/*]/,`comment.doc`]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,[`regexp.escape.control`,`regexp.escape.control`,`regexp.escape.control`]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,[`regexp.escape.control`,{token:`regexp.escape.control`,next:`@regexrange`}]],[/(\()(\?:|\?=|\?!)/,[`regexp.escape.control`,`regexp.escape.control`]],[/[()]/,`regexp.escape.control`],[/@regexpctl/,`regexp.escape.control`],[/[^\\\/]/,`regexp`],[/@regexpesc/,`regexp.escape`],[/\\\./,`regexp.invalid`],[/(\/)([dgimsuy]*)/,[{token:`regexp`,bracket:`@close`,next:`@pop`},`keyword.other`]]],regexrange:[[/-/,`regexp.escape.control`],[/\^/,`regexp.invalid`],[/@regexpesc/,`regexp.escape`],[/[^\]]/,`regexp`],[/\]/,{token:`regexp.escape.control`,next:`@pop`,bracket:`@close`}]],string_double:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,`string`,`@pop`]],string_single:[[/[^\\']+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/'/,`string`,`@pop`]],string_backtick:[[/\$\{/,{token:`delimiter.bracket`,next:`@bracketCounting`}],[/[^\\`$]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/`/,`string`,`@pop`]],bracketCounting:[[/\{/,`delimiter.bracket`,`@bracketCounting`],[/\}/,`delimiter.bracket`,`@pop`],{include:`common`}]}};export{c as conf,l as language};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=e=>`\\b${e}\\b`,t=e=>`(?!${e})`,n=e(`[_a-zA-Z][_a-zA-Z0-9]*`),r=e(`[_a-zA-Z-0-9]+`),i=[`import`,`model`,`scalar`,`namespace`,`op`,`interface`,`union`,`using`,`is`,`extends`,`enum`,`alias`,`return`,`void`,`if`,`else`,`projection`,`dec`,`extern`,`fn`],a=[`true`,`false`,`null`,`unknown`,`never`],o=`[ \\t\\r\\n]`,s=`[0-9]+`,c={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`/**`,close:` */`,notIn:[`string`]}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`}],indentationRules:{decreaseIndentPattern:RegExp(`^((?!.*?/\\*).*\\*/)?\\s*[\\}\\]].*$`),increaseIndentPattern:RegExp(`^((?!//).)*(\\{([^}"'\`/]*|(\\t|[ ])*//.*)|\\([^)"'\`/]*|\\[[^\\]"'\`/]*)$`),unIndentedLinePattern:RegExp(`^(\\t|[ ])*[ ]\\*[^/]*\\*/\\s*$|^(\\t|[ ])*[ ]\\*/\\s*$|^(\\t|[ ])*[ ]\\*([ ]([^\\*]|\\*(?!/))*)?$`)}},l={defaultToken:``,tokenPostfix:`.tsp`,brackets:[{open:`{`,close:`}`,token:`delimiter.curly`},{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`}],symbols:/[=:;<>]+/,keywords:i,namedLiterals:a,escapes:'\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\|"|\\${)',tokenizer:{root:[{include:`@expression`},{include:`@whitespace`}],stringVerbatim:[{regex:`(|"|"")[^"]`,action:{token:`string`}},{regex:`"""${t(`"`)}`,action:{token:`string`,next:`@pop`}}],stringLiteral:[{regex:"\\${",action:{token:`delimiter.bracket`,next:`@bracketCounting`}},{regex:`[^\\\\"$]+`,action:{token:`string`}},{regex:`@escapes`,action:{token:`string.escape`}},{regex:`\\\\.`,action:{token:`string.escape.invalid`}},{regex:`"`,action:{token:`string`,next:`@pop`}}],bracketCounting:[{regex:`{`,action:{token:`delimiter.bracket`,next:`@bracketCounting`}},{regex:`}`,action:{token:`delimiter.bracket`,next:`@pop`}},{include:`@expression`}],comment:[{regex:`[^\\*]+`,action:{token:`comment`}},{regex:`\\*\\/`,action:{token:`comment`,next:`@pop`}},{regex:`[\\/*]`,action:{token:`comment`}}],whitespace:[{regex:o},{regex:`\\/\\*`,action:{token:`comment`,next:`@comment`}},{regex:`\\/\\/.*$`,action:{token:`comment`}}],expression:[{regex:`"""`,action:{token:`string`,next:`@stringVerbatim`}},{regex:`"${t(`""`)}`,action:{token:`string`,next:`@stringLiteral`}},{regex:s,action:{token:`number`}},{regex:n,action:{cases:{"@keywords":{token:`keyword`},"@namedLiterals":{token:`keyword`},"@default":{token:`identifier`}}}},{regex:`@${n}`,action:{token:`tag`}},{regex:`#${r}`,action:{token:`directive`}}]}};export{c as conf,l as language};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={comments:{lineComment:`'`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`],[`<`,`>`],[`addhandler`,`end addhandler`],[`class`,`end class`],[`enum`,`end enum`],[`event`,`end event`],[`function`,`end function`],[`get`,`end get`],[`if`,`end if`],[`interface`,`end interface`],[`module`,`end module`],[`namespace`,`end namespace`],[`operator`,`end operator`],[`property`,`end property`],[`raiseevent`,`end raiseevent`],[`removehandler`,`end removehandler`],[`select`,`end select`],[`set`,`end set`],[`structure`,`end structure`],[`sub`,`end sub`],[`synclock`,`end synclock`],[`try`,`end try`],[`while`,`end while`],[`with`,`end with`],[`using`,`end using`],[`do`,`loop`],[`for`,`next`]],autoClosingPairs:[{open:`{`,close:`}`,notIn:[`string`,`comment`]},{open:`[`,close:`]`,notIn:[`string`,`comment`]},{open:`(`,close:`)`,notIn:[`string`,`comment`]},{open:`"`,close:`"`,notIn:[`string`,`comment`]},{open:`<`,close:`>`,notIn:[`string`,`comment`]}],folding:{markers:{start:RegExp(`^\\s*#Region\\b`),end:RegExp(`^\\s*#End Region\\b`)}}},t={defaultToken:``,tokenPostfix:`.vb`,ignoreCase:!0,brackets:[{token:`delimiter.bracket`,open:`{`,close:`}`},{token:`delimiter.array`,open:`[`,close:`]`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.angle`,open:`<`,close:`>`},{token:`keyword.tag-addhandler`,open:`addhandler`,close:`end addhandler`},{token:`keyword.tag-class`,open:`class`,close:`end class`},{token:`keyword.tag-enum`,open:`enum`,close:`end enum`},{token:`keyword.tag-event`,open:`event`,close:`end event`},{token:`keyword.tag-function`,open:`function`,close:`end function`},{token:`keyword.tag-get`,open:`get`,close:`end get`},{token:`keyword.tag-if`,open:`if`,close:`end if`},{token:`keyword.tag-interface`,open:`interface`,close:`end interface`},{token:`keyword.tag-module`,open:`module`,close:`end module`},{token:`keyword.tag-namespace`,open:`namespace`,close:`end namespace`},{token:`keyword.tag-operator`,open:`operator`,close:`end operator`},{token:`keyword.tag-property`,open:`property`,close:`end property`},{token:`keyword.tag-raiseevent`,open:`raiseevent`,close:`end raiseevent`},{token:`keyword.tag-removehandler`,open:`removehandler`,close:`end removehandler`},{token:`keyword.tag-select`,open:`select`,close:`end select`},{token:`keyword.tag-set`,open:`set`,close:`end set`},{token:`keyword.tag-structure`,open:`structure`,close:`end structure`},{token:`keyword.tag-sub`,open:`sub`,close:`end sub`},{token:`keyword.tag-synclock`,open:`synclock`,close:`end synclock`},{token:`keyword.tag-try`,open:`try`,close:`end try`},{token:`keyword.tag-while`,open:`while`,close:`end while`},{token:`keyword.tag-with`,open:`with`,close:`end with`},{token:`keyword.tag-using`,open:`using`,close:`end using`},{token:`keyword.tag-do`,open:`do`,close:`loop`},{token:`keyword.tag-for`,open:`for`,close:`next`}],keywords:`AddHandler.AddressOf.Alias.And.AndAlso.As.Async.Boolean.ByRef.Byte.ByVal.Call.Case.Catch.CBool.CByte.CChar.CDate.CDbl.CDec.Char.CInt.Class.CLng.CObj.Const.Continue.CSByte.CShort.CSng.CStr.CType.CUInt.CULng.CUShort.Date.Decimal.Declare.Default.Delegate.Dim.DirectCast.Do.Double.Each.Else.ElseIf.End.EndIf.Enum.Erase.Error.Event.Exit.False.Finally.For.Friend.Function.Get.GetType.GetXMLNamespace.Global.GoSub.GoTo.Handles.If.Implements.Imports.In.Inherits.Integer.Interface.Is.IsNot.Let.Lib.Like.Long.Loop.Me.Mod.Module.MustInherit.MustOverride.MyBase.MyClass.NameOf.Namespace.Narrowing.New.Next.Not.Nothing.NotInheritable.NotOverridable.Object.Of.On.Operator.Option.Optional.Or.OrElse.Out.Overloads.Overridable.Overrides.ParamArray.Partial.Private.Property.Protected.Public.RaiseEvent.ReadOnly.ReDim.RemoveHandler.Resume.Return.SByte.Select.Set.Shadows.Shared.Short.Single.Static.Step.Stop.String.Structure.Sub.SyncLock.Then.Throw.To.True.Try.TryCast.TypeOf.UInteger.ULong.UShort.Using.Variant.Wend.When.While.Widening.With.WithEvents.WriteOnly.Xor`.split(`.`),tagwords:`If.Sub.Select.Try.Class.Enum.Function.Get.Interface.Module.Namespace.Operator.Set.Structure.Using.While.With.Do.Loop.For.Next.Property.Continue.AddHandler.RemoveHandler.Event.RaiseEvent.SyncLock`.split(`.`),symbols:/[=><!~?;\.,:&|+\-*\/\^%]+/,integersuffix:/U?[DI%L&S@]?/,floatsuffix:/[R#F!]?/,tokenizer:{root:[{include:`@whitespace`},[/next(?!\w)/,{token:`keyword.tag-for`}],[/loop(?!\w)/,{token:`keyword.tag-do`}],[/end\s+(?!for|do)(addhandler|class|enum|event|function|get|if|interface|module|namespace|operator|property|raiseevent|removehandler|select|set|structure|sub|synclock|try|while|with|using)/,{token:`keyword.tag-$1`}],[/[a-zA-Z_]\w*/,{cases:{"@tagwords":{token:`keyword.tag-$0`},"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],[/^\s*#\w+/,`keyword`],[/\d*\d+e([\-+]?\d+)?(@floatsuffix)/,`number.float`],[/\d*\.\d+(e[\-+]?\d+)?(@floatsuffix)/,`number.float`],[/&H[0-9a-f]+(@integersuffix)/,`number.hex`],[/&0[0-7]+(@integersuffix)/,`number.octal`],[/\d+(@integersuffix)/,`number`],[/#.*#/,`number`],[/[{}()\[\]]/,`@brackets`],[/@symbols/,`delimiter`],[/["\u201c\u201d]/,{token:`string.quote`,next:`@string`}]],whitespace:[[/[ \t\r\n]+/,``],[/(\'|REM(?!\w)).*$/,`comment`]],string:[[/[^"\u201c\u201d]+/,`string`],[/["\u201c\u201d]{2}/,`string.escape`],[/["\u201c\u201d]C?/,{token:`string.quote`,next:`@pop`}]]}};export{e as conf,t as language};
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
var e={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`[`,close:`]`},{open:`{`,close:`}`},{open:`(`,close:`)`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`}]};function t(e){let t=[],n=e.split(/\t+|\r+|\n+| +/);for(let e=0;e<n.length;++e)n[e].length>0&&t.push(n[e]);return t}var n=t(`true false`),r=t(`
|
|
2
|
+
alias
|
|
3
|
+
break
|
|
4
|
+
case
|
|
5
|
+
const
|
|
6
|
+
const_assert
|
|
7
|
+
continue
|
|
8
|
+
continuing
|
|
9
|
+
default
|
|
10
|
+
diagnostic
|
|
11
|
+
discard
|
|
12
|
+
else
|
|
13
|
+
enable
|
|
14
|
+
fn
|
|
15
|
+
for
|
|
16
|
+
if
|
|
17
|
+
let
|
|
18
|
+
loop
|
|
19
|
+
override
|
|
20
|
+
requires
|
|
21
|
+
return
|
|
22
|
+
struct
|
|
23
|
+
switch
|
|
24
|
+
var
|
|
25
|
+
while
|
|
26
|
+
`),i=t(`
|
|
27
|
+
NULL
|
|
28
|
+
Self
|
|
29
|
+
abstract
|
|
30
|
+
active
|
|
31
|
+
alignas
|
|
32
|
+
alignof
|
|
33
|
+
as
|
|
34
|
+
asm
|
|
35
|
+
asm_fragment
|
|
36
|
+
async
|
|
37
|
+
attribute
|
|
38
|
+
auto
|
|
39
|
+
await
|
|
40
|
+
become
|
|
41
|
+
binding_array
|
|
42
|
+
cast
|
|
43
|
+
catch
|
|
44
|
+
class
|
|
45
|
+
co_await
|
|
46
|
+
co_return
|
|
47
|
+
co_yield
|
|
48
|
+
coherent
|
|
49
|
+
column_major
|
|
50
|
+
common
|
|
51
|
+
compile
|
|
52
|
+
compile_fragment
|
|
53
|
+
concept
|
|
54
|
+
const_cast
|
|
55
|
+
consteval
|
|
56
|
+
constexpr
|
|
57
|
+
constinit
|
|
58
|
+
crate
|
|
59
|
+
debugger
|
|
60
|
+
decltype
|
|
61
|
+
delete
|
|
62
|
+
demote
|
|
63
|
+
demote_to_helper
|
|
64
|
+
do
|
|
65
|
+
dynamic_cast
|
|
66
|
+
enum
|
|
67
|
+
explicit
|
|
68
|
+
export
|
|
69
|
+
extends
|
|
70
|
+
extern
|
|
71
|
+
external
|
|
72
|
+
fallthrough
|
|
73
|
+
filter
|
|
74
|
+
final
|
|
75
|
+
finally
|
|
76
|
+
friend
|
|
77
|
+
from
|
|
78
|
+
fxgroup
|
|
79
|
+
get
|
|
80
|
+
goto
|
|
81
|
+
groupshared
|
|
82
|
+
highp
|
|
83
|
+
impl
|
|
84
|
+
implements
|
|
85
|
+
import
|
|
86
|
+
inline
|
|
87
|
+
instanceof
|
|
88
|
+
interface
|
|
89
|
+
layout
|
|
90
|
+
lowp
|
|
91
|
+
macro
|
|
92
|
+
macro_rules
|
|
93
|
+
match
|
|
94
|
+
mediump
|
|
95
|
+
meta
|
|
96
|
+
mod
|
|
97
|
+
module
|
|
98
|
+
move
|
|
99
|
+
mut
|
|
100
|
+
mutable
|
|
101
|
+
namespace
|
|
102
|
+
new
|
|
103
|
+
nil
|
|
104
|
+
noexcept
|
|
105
|
+
noinline
|
|
106
|
+
nointerpolation
|
|
107
|
+
noperspective
|
|
108
|
+
null
|
|
109
|
+
nullptr
|
|
110
|
+
of
|
|
111
|
+
operator
|
|
112
|
+
package
|
|
113
|
+
packoffset
|
|
114
|
+
partition
|
|
115
|
+
pass
|
|
116
|
+
patch
|
|
117
|
+
pixelfragment
|
|
118
|
+
precise
|
|
119
|
+
precision
|
|
120
|
+
premerge
|
|
121
|
+
priv
|
|
122
|
+
protected
|
|
123
|
+
pub
|
|
124
|
+
public
|
|
125
|
+
readonly
|
|
126
|
+
ref
|
|
127
|
+
regardless
|
|
128
|
+
register
|
|
129
|
+
reinterpret_cast
|
|
130
|
+
require
|
|
131
|
+
resource
|
|
132
|
+
restrict
|
|
133
|
+
self
|
|
134
|
+
set
|
|
135
|
+
shared
|
|
136
|
+
sizeof
|
|
137
|
+
smooth
|
|
138
|
+
snorm
|
|
139
|
+
static
|
|
140
|
+
static_assert
|
|
141
|
+
static_cast
|
|
142
|
+
std
|
|
143
|
+
subroutine
|
|
144
|
+
super
|
|
145
|
+
target
|
|
146
|
+
template
|
|
147
|
+
this
|
|
148
|
+
thread_local
|
|
149
|
+
throw
|
|
150
|
+
trait
|
|
151
|
+
try
|
|
152
|
+
type
|
|
153
|
+
typedef
|
|
154
|
+
typeid
|
|
155
|
+
typename
|
|
156
|
+
typeof
|
|
157
|
+
union
|
|
158
|
+
unless
|
|
159
|
+
unorm
|
|
160
|
+
unsafe
|
|
161
|
+
unsized
|
|
162
|
+
use
|
|
163
|
+
using
|
|
164
|
+
varying
|
|
165
|
+
virtual
|
|
166
|
+
volatile
|
|
167
|
+
wgsl
|
|
168
|
+
where
|
|
169
|
+
with
|
|
170
|
+
writeonly
|
|
171
|
+
yield
|
|
172
|
+
`),a=t(`
|
|
173
|
+
read write read_write
|
|
174
|
+
function private workgroup uniform storage
|
|
175
|
+
perspective linear flat
|
|
176
|
+
center centroid sample
|
|
177
|
+
vertex_index instance_index position front_facing frag_depth
|
|
178
|
+
local_invocation_id local_invocation_index
|
|
179
|
+
global_invocation_id workgroup_id num_workgroups
|
|
180
|
+
sample_index sample_mask
|
|
181
|
+
rgba8unorm
|
|
182
|
+
rgba8snorm
|
|
183
|
+
rgba8uint
|
|
184
|
+
rgba8sint
|
|
185
|
+
rgba16uint
|
|
186
|
+
rgba16sint
|
|
187
|
+
rgba16float
|
|
188
|
+
r32uint
|
|
189
|
+
r32sint
|
|
190
|
+
r32float
|
|
191
|
+
rg32uint
|
|
192
|
+
rg32sint
|
|
193
|
+
rg32float
|
|
194
|
+
rgba32uint
|
|
195
|
+
rgba32sint
|
|
196
|
+
rgba32float
|
|
197
|
+
bgra8unorm
|
|
198
|
+
`),o=t(`
|
|
199
|
+
bool
|
|
200
|
+
f16
|
|
201
|
+
f32
|
|
202
|
+
i32
|
|
203
|
+
sampler sampler_comparison
|
|
204
|
+
texture_depth_2d
|
|
205
|
+
texture_depth_2d_array
|
|
206
|
+
texture_depth_cube
|
|
207
|
+
texture_depth_cube_array
|
|
208
|
+
texture_depth_multisampled_2d
|
|
209
|
+
texture_external
|
|
210
|
+
texture_external
|
|
211
|
+
u32
|
|
212
|
+
`),s=t(`
|
|
213
|
+
array
|
|
214
|
+
atomic
|
|
215
|
+
mat2x2
|
|
216
|
+
mat2x3
|
|
217
|
+
mat2x4
|
|
218
|
+
mat3x2
|
|
219
|
+
mat3x3
|
|
220
|
+
mat3x4
|
|
221
|
+
mat4x2
|
|
222
|
+
mat4x3
|
|
223
|
+
mat4x4
|
|
224
|
+
ptr
|
|
225
|
+
texture_1d
|
|
226
|
+
texture_2d
|
|
227
|
+
texture_2d_array
|
|
228
|
+
texture_3d
|
|
229
|
+
texture_cube
|
|
230
|
+
texture_cube_array
|
|
231
|
+
texture_multisampled_2d
|
|
232
|
+
texture_storage_1d
|
|
233
|
+
texture_storage_2d
|
|
234
|
+
texture_storage_2d_array
|
|
235
|
+
texture_storage_3d
|
|
236
|
+
vec2
|
|
237
|
+
vec3
|
|
238
|
+
vec4
|
|
239
|
+
`),c=t(`
|
|
240
|
+
vec2i vec3i vec4i
|
|
241
|
+
vec2u vec3u vec4u
|
|
242
|
+
vec2f vec3f vec4f
|
|
243
|
+
vec2h vec3h vec4h
|
|
244
|
+
mat2x2f mat2x3f mat2x4f
|
|
245
|
+
mat3x2f mat3x3f mat3x4f
|
|
246
|
+
mat4x2f mat4x3f mat4x4f
|
|
247
|
+
mat2x2h mat2x3h mat2x4h
|
|
248
|
+
mat3x2h mat3x3h mat3x4h
|
|
249
|
+
mat4x2h mat4x3h mat4x4h
|
|
250
|
+
`),l=t(`
|
|
251
|
+
bitcast all any select arrayLength abs acos acosh asin asinh atan atanh atan2
|
|
252
|
+
ceil clamp cos cosh countLeadingZeros countOneBits countTrailingZeros cross
|
|
253
|
+
degrees determinant distance dot exp exp2 extractBits faceForward firstLeadingBit
|
|
254
|
+
firstTrailingBit floor fma fract frexp inverseBits inverseSqrt ldexp length
|
|
255
|
+
log log2 max min mix modf normalize pow quantizeToF16 radians reflect refract
|
|
256
|
+
reverseBits round saturate sign sin sinh smoothstep sqrt step tan tanh transpose
|
|
257
|
+
trunc dpdx dpdxCoarse dpdxFine dpdy dpdyCoarse dpdyFine fwidth fwidthCoarse fwidthFine
|
|
258
|
+
textureDimensions textureGather textureGatherCompare textureLoad textureNumLayers
|
|
259
|
+
textureNumLevels textureNumSamples textureSample textureSampleBias textureSampleCompare
|
|
260
|
+
textureSampleCompareLevel textureSampleGrad textureSampleLevel textureSampleBaseClampToEdge
|
|
261
|
+
textureStore atomicLoad atomicStore atomicAdd atomicSub atomicMax atomicMin
|
|
262
|
+
atomicAnd atomicOr atomicXor atomicExchange atomicCompareExchangeWeak pack4x8snorm
|
|
263
|
+
pack4x8unorm pack2x16snorm pack2x16unorm pack2x16float unpack4x8snorm unpack4x8unorm
|
|
264
|
+
unpack2x16snorm unpack2x16unorm unpack2x16float storageBarrier workgroupBarrier
|
|
265
|
+
workgroupUniformLoad
|
|
266
|
+
`),u=t(`
|
|
267
|
+
&
|
|
268
|
+
&&
|
|
269
|
+
->
|
|
270
|
+
/
|
|
271
|
+
=
|
|
272
|
+
==
|
|
273
|
+
!=
|
|
274
|
+
>
|
|
275
|
+
>=
|
|
276
|
+
<
|
|
277
|
+
<=
|
|
278
|
+
%
|
|
279
|
+
-
|
|
280
|
+
--
|
|
281
|
+
+
|
|
282
|
+
++
|
|
283
|
+
|
|
|
284
|
+
||
|
|
285
|
+
*
|
|
286
|
+
<<
|
|
287
|
+
>>
|
|
288
|
+
+=
|
|
289
|
+
-=
|
|
290
|
+
*=
|
|
291
|
+
/=
|
|
292
|
+
%=
|
|
293
|
+
&=
|
|
294
|
+
|=
|
|
295
|
+
^=
|
|
296
|
+
>>=
|
|
297
|
+
<<=
|
|
298
|
+
`),d=/enable|requires|diagnostic/,f=/[_\p{XID_Start}]\p{XID_Continue}*/u,p=`variable.predefined`,m={tokenPostfix:`.wgsl`,defaultToken:`invalid`,unicode:!0,atoms:n,keywords:r,reserved:i,predeclared_enums:a,predeclared_types:o,predeclared_type_generators:s,predeclared_type_aliases:c,predeclared_intrinsics:l,operators:u,symbols:/[!%&*+\-\.\/:;<=>^|_~,]+/,tokenizer:{root:[[d,`keyword`,`@directive`],[f,{cases:{"@atoms":p,"@keywords":`keyword`,"@reserved":`invalid`,"@predeclared_enums":p,"@predeclared_types":p,"@predeclared_type_generators":p,"@predeclared_type_aliases":p,"@predeclared_intrinsics":p,"@default":`identifier`}}],{include:`@commentOrSpace`},{include:`@numbers`},[/[{}()\[\]]/,`@brackets`],[`@`,`annotation`,`@attribute`],[/@symbols/,{cases:{"@operators":`operator`,"@default":`delimiter`}}],[/./,`invalid`]],commentOrSpace:[[/\s+/,`white`],[/\/\*/,`comment`,`@blockComment`],[/\/\/.*$/,`comment`]],blockComment:[[/[^\/*]+/,`comment`],[/\/\*/,`comment`,`@push`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],attribute:[{include:`@commentOrSpace`},[/\w+/,`annotation`,`@pop`]],directive:[{include:`@commentOrSpace`},[/[()]/,`@brackets`],[/,/,`delimiter`],[f,`meta.content`],[/;/,`delimiter`,`@pop`]],numbers:[[/0[fh]/,`number.float`],[/[1-9][0-9]*[fh]/,`number.float`],[/[0-9]*\.[0-9]+([eE][+-]?[0-9]+)?[fh]?/,`number.float`],[/[0-9]+\.[0-9]*([eE][+-]?[0-9]+)?[fh]?/,`number.float`],[/[0-9]+[eE][+-]?[0-9]+[fh]?/,`number.float`],[/0[xX][0-9a-fA-F]*\.[0-9a-fA-F]+(?:[pP][+-]?[0-9]+[fh]?)?/,`number.hex`],[/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*(?:[pP][+-]?[0-9]+[fh]?)?/,`number.hex`],[/0[xX][0-9a-fA-F]+[pP][+-]?[0-9]+[fh]?/,`number.hex`],[/0[xX][0-9a-fA-F]+[iu]?/,`number.hex`],[/[1-9][0-9]*[iu]?/,`number`],[/0[iu]?/,`number`]]}};export{e as conf,m as language};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./index-Dhkqk31v.js";var t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,a=(e,a,o,s)=>{if(a&&typeof a==`object`||typeof a==`function`)for(let c of r(a))!i.call(e,c)&&c!==o&&t(e,c,{get:()=>a[c],enumerable:!(s=n(a,c))||s.enumerable});return e},o=(e,t,n)=>(a(e,t,`default`),n&&a(n,t,`default`)),s={};o(s,e);var c={comments:{blockComment:[`<!--`,`-->`]},brackets:[[`<`,`>`]],autoClosingPairs:[{open:`<`,close:`>`},{open:`'`,close:`'`},{open:`"`,close:`"`}],surroundingPairs:[{open:`<`,close:`>`},{open:`'`,close:`'`},{open:`"`,close:`"`}],onEnterRules:[{beforeText:RegExp(`<([_:\\w][_:\\w-.\\d]*)([^/>]*(?!/)>)[^<]*$`,`i`),afterText:/^<\/([_:\w][_:\w-.\d]*)\s*>$/i,action:{indentAction:s.languages.IndentAction.IndentOutdent}},{beforeText:RegExp(`<(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,`i`),action:{indentAction:s.languages.IndentAction.Indent}}]},l={defaultToken:``,tokenPostfix:`.xml`,ignoreCase:!0,qualifiedName:/(?:[\w\.\-]+:)?[\w\.\-]+/,tokenizer:{root:[[/[^<&]+/,``],{include:`@whitespace`},[/(<)(@qualifiedName)/,[{token:`delimiter`},{token:`tag`,next:`@tag`}]],[/(<\/)(@qualifiedName)(\s*)(>)/,[{token:`delimiter`},{token:`tag`},``,{token:`delimiter`}]],[/(<\?)(@qualifiedName)/,[{token:`delimiter`},{token:`metatag`,next:`@tag`}]],[/(<\!)(@qualifiedName)/,[{token:`delimiter`},{token:`metatag`,next:`@tag`}]],[/<\!\[CDATA\[/,{token:`delimiter.cdata`,next:`@cdata`}],[/&\w+;/,`string.escape`]],cdata:[[/[^\]]+/,``],[/\]\]>/,{token:`delimiter.cdata`,next:`@pop`}],[/\]/,``]],tag:[[/[ \t\r\n]+/,``],[/(@qualifiedName)(\s*=\s*)("[^"]*"|'[^']*')/,[`attribute.name`,``,`attribute.value`]],[/(@qualifiedName)(\s*=\s*)("[^">?\/]*|'[^'>?\/]*)(?=[\?\/]\>)/,[`attribute.name`,``,`attribute.value`]],[/(@qualifiedName)(\s*=\s*)("[^">]*|'[^'>]*)/,[`attribute.name`,``,`attribute.value`]],[/@qualifiedName/,`attribute.name`],[/\?>/,{token:`delimiter`,next:`@pop`}],[/(\/)(>)/,[{token:`tag`},{token:`delimiter`,next:`@pop`}]],[/>/,{token:`delimiter`,next:`@pop`}]],whitespace:[[/[ \t\r\n]+/,``],[/<!--/,{token:`comment`,next:`@comment`}]],comment:[[/[^<\-]+/,`comment.content`],[/-->/,{token:`comment`,next:`@pop`}],[/<!--/,`comment.content.invalid`],[/[<\-]/,`comment.content`]]}};export{c as conf,l as language};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./index-Dhkqk31v.js";var t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,a=(e,a,o,s)=>{if(a&&typeof a==`object`||typeof a==`function`)for(let c of r(a))!i.call(e,c)&&c!==o&&t(e,c,{get:()=>a[c],enumerable:!(s=n(a,c))||s.enumerable});return e},o=(e,t,n)=>(a(e,t,`default`),n&&a(n,t,`default`)),s={};o(s,e);var c={comments:{lineComment:`#`},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],folding:{offSide:!0},onEnterRules:[{beforeText:/:\s*$/,action:{indentAction:s.languages.IndentAction.Indent}}]},l={tokenPostfix:`.yaml`,brackets:[{token:`delimiter.bracket`,open:`{`,close:`}`},{token:`delimiter.square`,open:`[`,close:`]`}],keywords:[`true`,`True`,`TRUE`,`false`,`False`,`FALSE`,`null`,`Null`,`Null`,`~`],numberInteger:/(?:0|[+-]?[0-9]+)/,numberFloat:/(?:0|[+-]?[0-9]+)(?:\.[0-9]+)?(?:e[-+][1-9][0-9]*)?/,numberOctal:/0o[0-7]+/,numberHex:/0x[0-9a-fA-F]+/,numberInfinity:/[+-]?\.(?:inf|Inf|INF)/,numberNaN:/\.(?:nan|Nan|NAN)/,numberDate:/\d{4}-\d\d-\d\d([Tt ]\d\d:\d\d:\d\d(\.\d+)?(( ?[+-]\d\d?(:\d\d)?)|Z)?)?/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,tokenizer:{root:[{include:`@whitespace`},{include:`@comment`},[/%[^ ]+.*$/,`meta.directive`],[/---/,`operators.directivesEnd`],[/\.{3}/,`operators.documentEnd`],[/[-?:](?= )/,`operators`],{include:`@anchor`},{include:`@tagHandle`},{include:`@flowCollections`},{include:`@blockStyle`},[/@numberInteger(?![ \t]*\S+)/,`number`],[/@numberFloat(?![ \t]*\S+)/,`number.float`],[/@numberOctal(?![ \t]*\S+)/,`number.octal`],[/@numberHex(?![ \t]*\S+)/,`number.hex`],[/@numberInfinity(?![ \t]*\S+)/,`number.infinity`],[/@numberNaN(?![ \t]*\S+)/,`number.nan`],[/@numberDate(?![ \t]*\S+)/,`number.date`],[/(".*?"|'.*?'|[^#'"]*?)([ \t]*)(:)( |$)/,[`type`,`white`,`operators`,`white`]],{include:`@flowScalars`},[/.+?(?=(\s+#|$))/,{cases:{"@keywords":`keyword`,"@default":`string`}}]],object:[{include:`@whitespace`},{include:`@comment`},[/\}/,`@brackets`,`@pop`],[/,/,`delimiter.comma`],[/:(?= )/,`operators`],[/(?:".*?"|'.*?'|[^,\{\[]+?)(?=: )/,`type`],{include:`@flowCollections`},{include:`@flowScalars`},{include:`@tagHandle`},{include:`@anchor`},{include:`@flowNumber`},[/[^\},]+/,{cases:{"@keywords":`keyword`,"@default":`string`}}]],array:[{include:`@whitespace`},{include:`@comment`},[/\]/,`@brackets`,`@pop`],[/,/,`delimiter.comma`],{include:`@flowCollections`},{include:`@flowScalars`},{include:`@tagHandle`},{include:`@anchor`},{include:`@flowNumber`},[/[^\],]+/,{cases:{"@keywords":`keyword`,"@default":`string`}}]],multiString:[[/^( +).+$/,`string`,`@multiStringContinued.$1`]],multiStringContinued:[[/^( *).+$/,{cases:{"$1==$S2":`string`,"@default":{token:`@rematch`,next:`@popall`}}}]],whitespace:[[/[ \t\r\n]+/,`white`]],comment:[[/#.*$/,`comment`]],flowCollections:[[/\[/,`@brackets`,`@array`],[/\{/,`@brackets`,`@object`]],flowScalars:[[/"([^"\\]|\\.)*$/,`string.invalid`],[/'([^'\\]|\\.)*$/,`string.invalid`],[/'[^']*'/,`string`],[/"/,`string`,`@doubleQuotedString`]],doubleQuotedString:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,`string`,`@pop`]],blockStyle:[[/[>|][0-9]*[+-]?$/,`operators`,`@multiString`]],flowNumber:[[/@numberInteger(?=[ \t]*[,\]\}])/,`number`],[/@numberFloat(?=[ \t]*[,\]\}])/,`number.float`],[/@numberOctal(?=[ \t]*[,\]\}])/,`number.octal`],[/@numberHex(?=[ \t]*[,\]\}])/,`number.hex`],[/@numberInfinity(?=[ \t]*[,\]\}])/,`number.infinity`],[/@numberNaN(?=[ \t]*[,\]\}])/,`number.nan`],[/@numberDate(?=[ \t]*[,\]\}])/,`number.date`]],tagHandle:[[/\![^ ]*/,`tag`]],anchor:[[/[&*][^ ]+/,`namespace`]]}};export{c as conf,l as language};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>🐕</text></svg>" />
|
|
7
|
+
<title>Waica Editor</title>
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-Dhkqk31v.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-Btzc6zxr.css">
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div id="root"></div>
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { PackageResolver, PackageUnavailableError, } from './package-resolver.js';
|
|
4
|
+
import { WaicaToolError } from './project-path.js';
|
|
5
|
+
async function dependencyNames(projectPath, warnings) {
|
|
6
|
+
const file = path.join(projectPath, 'package.json');
|
|
7
|
+
let source;
|
|
8
|
+
try {
|
|
9
|
+
source = await readFile(file, 'utf8');
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
if (error.code === 'ENOENT')
|
|
13
|
+
return [];
|
|
14
|
+
throw new Error(`Cannot read project dependencies from ${file}: ${error.message}`);
|
|
15
|
+
}
|
|
16
|
+
let parsed;
|
|
17
|
+
try {
|
|
18
|
+
parsed = JSON.parse(source);
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
warnings.push(`Cannot parse project package.json; archetype dependency discovery was skipped: ${error.message}`);
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
|
|
25
|
+
return [];
|
|
26
|
+
const pkg = parsed;
|
|
27
|
+
const names = new Set();
|
|
28
|
+
for (const section of ['dependencies', 'devDependencies', 'optionalDependencies']) {
|
|
29
|
+
const dependencies = pkg[section];
|
|
30
|
+
if (!dependencies || typeof dependencies !== 'object' || Array.isArray(dependencies))
|
|
31
|
+
continue;
|
|
32
|
+
for (const name of Object.keys(dependencies)) {
|
|
33
|
+
if (name.startsWith('@waica/archetype-'))
|
|
34
|
+
names.add(name);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return [...names].sort();
|
|
38
|
+
}
|
|
39
|
+
export async function activeArchetypeId(projectPath) {
|
|
40
|
+
const relative = 'src/game.json';
|
|
41
|
+
let source;
|
|
42
|
+
try {
|
|
43
|
+
source = await readFile(path.join(projectPath, relative), 'utf8');
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
if (error.code === 'ENOENT')
|
|
47
|
+
return null;
|
|
48
|
+
throw new Error(`Cannot read ${relative}: ${error.message}`, { cause: error });
|
|
49
|
+
}
|
|
50
|
+
let parsed;
|
|
51
|
+
try {
|
|
52
|
+
parsed = JSON.parse(source);
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
throw new Error(`Cannot parse ${relative}: ${error.message}`, { cause: error });
|
|
56
|
+
}
|
|
57
|
+
if (!parsed || typeof parsed !== 'object')
|
|
58
|
+
return null;
|
|
59
|
+
const archetype = parsed.archetype;
|
|
60
|
+
return typeof archetype === 'string' && archetype ? archetype : null;
|
|
61
|
+
}
|
|
62
|
+
export async function discoverArchetypes(projectPath, resolver = new PackageResolver(projectPath), warnings = [], requiredIds = []) {
|
|
63
|
+
const packages = new Set(await dependencyNames(projectPath, warnings));
|
|
64
|
+
packages.add('@waica/archetype-platformer');
|
|
65
|
+
const resolved = [];
|
|
66
|
+
for (const packageName of [...packages].sort()) {
|
|
67
|
+
try {
|
|
68
|
+
const loaded = await resolver.load(packageName, './manifest');
|
|
69
|
+
const manifest = loaded.module.ARCHETYPE;
|
|
70
|
+
if (!manifest || typeof manifest.id !== 'string') {
|
|
71
|
+
throw new Error(`${packageName}/manifest does not export ARCHETYPE with a string id`);
|
|
72
|
+
}
|
|
73
|
+
resolved.push({ packageName, loaded, manifest });
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
if (error instanceof PackageUnavailableError) {
|
|
77
|
+
warnings.push(`Declared archetype package ${packageName} is not installed; it was skipped.`);
|
|
78
|
+
}
|
|
79
|
+
else if (packageName === '@waica/archetype-platformer' ||
|
|
80
|
+
requiredIds.includes(packageName.slice('@waica/archetype-'.length))) {
|
|
81
|
+
throw error;
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
warnings.push(`Declared archetype package ${packageName} could not be loaded and was skipped: ${error instanceof Error ? error.message : String(error)}`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return resolved;
|
|
89
|
+
}
|
|
90
|
+
export function pickArchetype(available, id, projectPath) {
|
|
91
|
+
const selected = id ? available.find((entry) => entry.manifest.id === id) : undefined;
|
|
92
|
+
if (selected)
|
|
93
|
+
return selected;
|
|
94
|
+
const ids = available.map((entry) => entry.manifest.id).sort();
|
|
95
|
+
throw new WaicaToolError({
|
|
96
|
+
code: 'unknown-archetype',
|
|
97
|
+
message: id
|
|
98
|
+
? `Unknown archetype "${id}". Available ids: ${ids.join(', ')}.`
|
|
99
|
+
: `The active archetype is unknown because src/game.json is missing or does not declare one. Available ids: ${ids.join(', ')}.`,
|
|
100
|
+
projectPath,
|
|
101
|
+
available: ids,
|
|
102
|
+
});
|
|
103
|
+
}
|