@arcgis/coding-components 4.31.0-next.2 → 4.31.0-next.21
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/README.md +22 -3
- package/dist/arcgis-coding-components/arcgis-coding-components.esm.js +2 -2
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ar.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.bg.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.bs.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ca.json +6 -6
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.cs.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.da.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.de.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.el.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.es.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.et.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.fi.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.fr.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.he.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.hr.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.id.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.it.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ko.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.nb.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.nl.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.pl.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.pt-BR.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.pt-PT.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ru.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sk.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sl.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sr.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sv.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.th.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.tr.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.uk.json +5 -5
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.vi.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.zh-CN.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.zh-HK.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.zh-TW.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ca.json +2 -2
- package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.de.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.he.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ca.json +1 -1
- package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.it.json +1 -1
- package/dist/arcgis-coding-components/assets/code-editor/css.worker.js +1 -1
- package/dist/arcgis-coding-components/assets/code-editor/html.worker.js +1 -1
- package/dist/arcgis-coding-components/assets/code-editor/json.worker.js +1 -1
- package/dist/arcgis-coding-components/assets/code-editor/sql-expr.worker.js +33 -0
- package/dist/arcgis-coding-components/assets/code-editor/ts.worker.js +1 -1
- package/dist/arcgis-coding-components/assets/language-api-panel/t9n/language-api-panel.t9n.ca.json +1 -1
- package/dist/arcgis-coding-components/assets/sql-expression-editor/api/sql-expression-api.t9n.en.json +735 -0
- package/dist/arcgis-coding-components/index.esm.js +2 -2
- package/dist/arcgis-coding-components/{p-7984ea8e.js → p-1b799777.js} +2 -2
- package/dist/arcgis-coding-components/p-4d5cf512.entry.js +6 -0
- package/dist/arcgis-coding-components/{p-60c2a820.js → p-56266a64.js} +2 -2
- package/dist/arcgis-coding-components/{p-e8211ffe.js → p-57b8bcd7.js} +1 -1
- package/dist/arcgis-coding-components/{p-9eced6fc.js → p-5b67b62b.js} +2 -2
- package/dist/arcgis-coding-components/{p-93a97573.js → p-64137fec.js} +3 -3
- package/dist/arcgis-coding-components/{p-e7ee4d64.js → p-6621a80f.js} +3 -3
- package/dist/arcgis-coding-components/p-77dd5521.js +6 -0
- package/dist/arcgis-coding-components/p-8eb7e694.js +6 -0
- package/dist/arcgis-coding-components/p-a2341e0c.js +6 -0
- package/dist/arcgis-coding-components/{p-bb7e832e.js → p-b715834b.js} +3 -3
- package/dist/arcgis-coding-components/p-cbee273f.js +6 -0
- package/dist/arcgis-coding-components/{p-5ef7cce5.js → p-cdc52d2f.js} +1 -1
- package/dist/arcgis-coding-components/{p-36fedc23.js → p-d7d1f130.js} +12 -12
- package/dist/arcgis-coding-components/p-e1f9b463.entry.js +6 -0
- package/dist/arcgis-coding-components/{p-62ee6251.js → p-e5a924a1.js} +1 -1
- package/dist/arcgis-coding-components/p-f2d64a9d.js +6 -0
- package/dist/arcgis-coding-components/{p-03ea6cd7.js → p-ff62d134.js} +3 -3
- package/dist/arcgis-coding-components/p-ffce0588.entry.js +6 -0
- package/dist/cjs/{app-globals-aee5f4b5.js → app-globals-a9ef3ca8.js} +1 -1
- package/dist/cjs/arcade-defaults-f5241680.js +349 -0
- package/dist/cjs/arcade-language-features-0b9f3947.js +274 -0
- package/dist/cjs/arcade-mode-cc08d9cd.js +335 -0
- package/dist/cjs/arcgis-arcade-editor_6.cjs.entry.js +181 -1501
- package/dist/cjs/arcgis-coding-components.cjs.js +4 -4
- package/dist/cjs/arcgis-sql-expression-editor.cjs.entry.js +81 -0
- package/dist/cjs/arcgis-sql-expression-fields.cjs.entry.js +80 -0
- package/dist/cjs/{css-7cc05f76.js → css-bb6a49ec.js} +1 -1
- package/dist/cjs/{cssMode-2b0daeae.js → cssMode-e7fac7d7.js} +3 -4
- package/dist/cjs/{html-f56911e1.js → html-7ff4071d.js} +3 -4
- package/dist/cjs/{htmlMode-43eed674.js → htmlMode-c89193ec.js} +3 -4
- package/dist/cjs/{index-b34238a6.js → index-4b7880ab.js} +9 -1
- package/dist/cjs/index.cjs.js +4 -3
- package/dist/cjs/{javascript-5115cb76.js → javascript-864c0220.js} +3 -4
- package/dist/cjs/{jsonMode-550dda36.js → jsonMode-ac4a7be7.js} +3 -4
- package/dist/cjs/{arcade-defaults-a8d8f8e2.js → language-defaults-base-57b37f9f.js} +842 -1183
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/sql-expr-defaults-245b036d.js +1347 -0
- package/dist/cjs/sql-expr-mode-304f5ce2.js +20844 -0
- package/dist/cjs/{tsMode-336306a9.js → tsMode-d30d4ab1.js} +4 -5
- package/dist/cjs/{typescript-b395242f.js → typescript-6c87ddb3.js} +3 -4
- package/dist/components/arcade-defaults.js +54 -1369
- package/dist/components/arcade-language-features.js +271 -0
- package/dist/components/arcade-mode.js +4 -264
- package/dist/components/arcade-results.js +7 -5
- package/dist/components/arcade-suggestions.js +7 -5
- package/dist/components/arcade-variables.js +8 -6
- package/dist/components/arcgis-arcade-editor.js +37 -35
- package/dist/components/arcgis-arcade-results.js +1 -1
- package/dist/components/arcgis-arcade-suggestions.js +1 -1
- package/dist/components/arcgis-arcade-variables.js +1 -1
- package/dist/components/arcgis-assets.d.ts +1 -1
- package/dist/components/arcgis-assets.js +1 -1
- package/dist/components/arcgis-code-editor.js +1 -1
- package/dist/components/arcgis-language-api-panel.js +1 -1
- package/dist/components/arcgis-sql-expression-editor.d.ts +11 -0
- package/dist/components/arcgis-sql-expression-editor.js +120 -0
- package/dist/components/arcgis-sql-expression-fields.d.ts +11 -0
- package/dist/components/arcgis-sql-expression-fields.js +11 -0
- package/dist/components/chunk-2JTWBRMN.js +1154 -0
- package/dist/components/code-editor.js +40 -13
- package/dist/components/fields.js +5 -5
- package/dist/components/index.js +1 -1
- package/dist/components/index2.js +30 -22
- package/dist/components/language-api-panel.js +13 -40
- package/dist/components/language-defaults-base.js +1309 -0
- package/dist/components/markdown.js +1 -1
- package/dist/components/sql-expr-defaults.js +196 -0
- package/dist/components/sql-expr-mode.js +20842 -0
- package/dist/components/sql-expression-fields.js +102 -0
- package/dist/components/useT9n.js +45 -8
- package/dist/components/utilities.js +1 -1
- package/dist/esm/{app-globals-59faaf33.js → app-globals-6d0ca11d.js} +1 -1
- package/dist/esm/arcade-defaults-066445c4.js +344 -0
- package/dist/esm/arcade-language-features-0e00c199.js +269 -0
- package/dist/esm/{arcade-mode-5d46035e.js → arcade-mode-abf1e1cf.js} +3 -263
- package/dist/esm/arcgis-arcade-editor_6.entry.js +127 -1447
- package/dist/esm/arcgis-coding-components.js +5 -5
- package/dist/esm/arcgis-sql-expression-editor.entry.js +77 -0
- package/dist/esm/arcgis-sql-expression-fields.entry.js +76 -0
- package/dist/esm/{css-e257dc49.js → css-c6dae12d.js} +1 -1
- package/dist/esm/{cssMode-c11f7f40.js → cssMode-052bb603.js} +2 -3
- package/dist/esm/{html-a6c37a99.js → html-572696a1.js} +2 -3
- package/dist/esm/{htmlMode-1270bc7d.js → htmlMode-fc184f2d.js} +2 -3
- package/dist/esm/{index-a970952c.js → index-0edd9846.js} +9 -1
- package/dist/esm/index.js +4 -3
- package/dist/esm/{javascript-ee179624.js → javascript-8bfc0096.js} +3 -4
- package/dist/esm/{jsonMode-07502ccb.js → jsonMode-7adf94ff.js} +2 -3
- package/dist/esm/{arcade-defaults-9eb28407.js → language-defaults-base-85a7f476.js} +833 -1179
- package/dist/esm/loader.js +5 -5
- package/dist/esm/sql-expr-defaults-be84ec7f.js +1339 -0
- package/dist/esm/sql-expr-mode-a4413e5c.js +20840 -0
- package/dist/esm/{tsMode-96749a12.js → tsMode-d10773c8.js} +2 -3
- package/dist/esm/{typescript-a3cf9881.js → typescript-9491f23e.js} +2 -3
- package/dist/loader/cdn.js +1 -1
- package/dist/loader/index.cjs.js +1 -1
- package/dist/loader/index.es2017.js +1 -1
- package/dist/loader/index.js +1 -1
- package/dist/types/components/arcade-editor/arcade-editor.d.ts +45 -10
- package/dist/types/components/arcade-results/arcade-results.d.ts +43 -1
- package/dist/types/components/arcade-suggestions/arcade-suggestions.d.ts +22 -1
- package/dist/types/components/arcade-variables/arcade-variables.d.ts +28 -1
- package/dist/types/components/code-editor/code-editor.d.ts +16 -5
- package/dist/types/components/language-api-panel/language-api-panel.d.ts +34 -8
- package/dist/types/components/sql-expression-editor/sql-expression-editor.d.ts +24 -0
- package/dist/types/components/sql-expression-fields/sql-expression-fields.d.ts +32 -0
- package/dist/types/components.d.ts +98 -24
- package/dist/types/data/actions-runner-1/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/arcade-editor/arcade-editor.stories.d.ts +8 -1
- package/dist/types/data/actions-runner-1/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/arcade-editor/editorContext.d.ts +5 -1
- package/dist/types/data/actions-runner-1/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/sql-expression-editor/sql-expression-editor.stories.d.ts +13 -0
- package/dist/types/dependencies.d.ts +6 -10
- package/dist/types/utils/arcade-monaco/arcade-language-features.d.ts +1 -0
- package/dist/types/utils/arcade-monaco/arcade-profile-strategy.d.ts +9 -0
- package/dist/types/utils/fields.d.ts +2 -2
- package/dist/types/utils/language-defaults-base.d.ts +2 -9
- package/dist/types/utils/profile/editor-profile.d.ts +7 -6
- package/dist/types/utils/profile/types.d.ts +53 -65
- package/dist/types/utils/profile/utils.d.ts +9 -8
- package/dist/types/utils/sql-expr-monaco/DependentFiles/DateOnly.d.ts +41 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlInterval.d.ts +16 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlTimestampOffset.d.ts +26 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/TimeOnly.d.ts +37 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/UnknownTimeZone.d.ts +11 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/WhereGrammar.d.ts +122 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlCompareUtils.d.ts +5 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlDateParsingUtils.d.ts +18 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlUtils.d.ts +6 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/standardizedFunctions.d.ts +156 -0
- package/dist/types/utils/sql-expr-monaco/DependentFiles/support.d.ts +150 -0
- package/dist/types/utils/sql-expr-monaco/PeggyGrammar/sql92grammar.d.ts +1397 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-completion.d.ts +6 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-constants.d.ts +45 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-contribution.d.ts +1 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-defaults.d.ts +21 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-language-features.d.ts +39 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-language-syntax.d.ts +8 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-mode.d.ts +43 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-service-accessors.d.ts +19 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-validation-diagnostic-adapter.d.ts +34 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-validation-utils.d.ts +100 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-validation.d.ts +41 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr-worker-manager.d.ts +17 -0
- package/dist/types/utils/sql-expr-monaco/sql-expr.worker.d.ts +24 -0
- package/dist/types/utils/sql-expr-monaco/sql-expression-profile-strategy.d.ts +13 -0
- package/dist/types/utils/sql-expr-monaco/types.d.ts +89 -0
- package/package.json +27 -21
- package/dist/arcgis-coding-components/p-0c6de9b3.js +0 -6
- package/dist/arcgis-coding-components/p-81c37dab.entry.js +0 -6
- package/dist/cjs/arcade-mode-b85ae7d4.js +0 -595
- package/dist/components/chunk-IHYYRFLQ.js +0 -1363
- package/dist/types/components/arcade-editor/t9n-types.d.ts +0 -8
- package/dist/types/components/arcade-results/t9n-types.d.ts +0 -13
- package/dist/types/components/arcade-suggestions/t9n-types.d.ts +0 -6
- package/dist/types/components/arcade-variables/t9n-types.d.ts +0 -8
- package/dist/types/components/language-api-panel/t9n-types.d.ts +0 -8
- package/dist/types/utils/profile/predefined-profile.d.ts +0 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
* See https://js.arcgis.com/4.31/esri/copyright.txt for details.
|
|
4
|
-
* v4.31.0-next.
|
|
4
|
+
* v4.31.0-next.21
|
|
5
5
|
*/
|
|
6
6
|
/*!-----------------------------------------------------------------------------
|
|
7
7
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
|
+
* See https://js.arcgis.com/4.31/esri/copyright.txt for details.
|
|
4
|
+
* v4.31.0-next.21
|
|
5
|
+
*/
|
|
6
|
+
import{F as t,D as i,G as s,H as e,J as o,f as n,i as r,b as c,m as h,L as a,d,E as u,U as f}from"./p-d7d1f130.js";import{g as l}from"./p-57b8bcd7.js";var p,y=(t,i)=>t.manager.internals.members?.[i]?.[0],v=Symbol.for("controller");function g(t){p!==t&&(p=t,queueMicrotask((()=>{p===t&&(p=void 0)})))}function w(){return p}var b,m=[];function k(t){if(void 0===t)return void(m=[]);const i=m.indexOf(t);m=-1===i?[...m,t]:m.slice(0,i+1),queueMicrotask((()=>{m=[]}))}var L,j=async(t,i)=>{const s=M(t);if(void 0===s)return t;if(await s.ready,"function"==typeof i){const t=s.watchExports((s=>i(s,t)))}return s.exports},x=async t=>{const i=M(t);return await i.ready,i},M=t=>{const i=function(){const t=b;return b=void 0,t}();if(void 0!==i)return i;const s=w().manager.internals.resolveExports(t);return void 0!==s?s:(t=>"object"==typeof t&&null!==t&&(v in t||"hostConnected"in t||"hostDisconnected"in t||"hostUpdate"in t||"hostUpdated"in t))(t)?t:void 0},U={setter:!1,getter:!1,readOnly:!1},D=new WeakMap;L=v;var S=class{constructor(t){this._callbacks={hostConnected:[],hostDisconnected:[],hostLoad:[],hostLoaded:[],hostUpdate:[],hostUpdated:[],hostDestroy:[],hostLifecycle:[]},this._ready=new i,this._lifecycleCleanups=[],this.connectedCalled=!1,this.willLoadCalled=!1,this.didLoadCalled=!1,this[L]=!0,this.ready=this._ready.promise,this._exports=E(this),this._exportWatchers=new Set;const s=t??w();this.component=s,this.component.addController(this),k(this),void 0===this.component.manager||queueMicrotask((()=>this.catchUpLifecycle()))}catchUpLifecycle(){const{manager:t}=this.component;!t.connectedCalled||this.connectedCalled||this.triggerConnected(),!t.willLoadCalled||this.triggerLoad().then((()=>{!t.didLoadCalled||this.triggerLoaded()})).catch(console.error)}get exports(){return this._exports}set exports(t){const i=this._exports;i!==t&&(this._exports=t,this._exportWatchers.forEach(o),this.connectedCalled&&!1!==this.assignedProperty&&this.component.requestUpdate(this.assignedProperty,i)),this._ready.resolve(t)}setProvisionalExports(t){this._exports=E(t),this._exportWatchers.forEach(o)}watchExports(t){const i=()=>t(this._exports);return this._exportWatchers.add(i),()=>{this._exportWatchers.delete(i)}}get use(){return g(this.component),j}get useRef(){return g(this.component),x}get useRefSync(){return g(this.component),M}controllerRemoved(){this.component.el.isConnected&&this.triggerDisconnected(),this.triggerDestroy()}onConnected(t){this._callbacks.hostConnected.push(t)}onDisconnected(t){this._callbacks.hostDisconnected.push(t)}onLoad(t){this._callbacks.hostLoad.push(t)}onLoaded(t){this._callbacks.hostLoaded.push(t)}onUpdate(t){this._callbacks.hostUpdate.push(t)}onUpdated(t){this._callbacks.hostUpdated.push(t)}onDestroy(t){this._callbacks.hostDestroy.push(t)}onLifecycle(t){this._callbacks.hostLifecycle.push(t),this.connectedCalled&&this.component.el.isConnected&&this._callLifecycle(t)}triggerConnected(){const t=this;t.hostConnected&&o(t.hostConnected,t),this._callbacks.hostConnected.forEach(o),this.triggerLifecycle(),this.connectedCalled=!0}triggerDisconnected(){const t=this;t.hostDisconnected&&o(t.hostDisconnected,t),this._callbacks.hostDisconnected.forEach(o),this._lifecycleCleanups.forEach(o),this._lifecycleCleanups=[]}async triggerLoad(){if(this.willLoadCalled)return;this.willLoadCalled=!0;const t=this;t.hostLoad&&await s(t.hostLoad,t),this._callbacks.hostLoad.length>0&&await Promise.allSettled(this._callbacks.hostLoad.map(s)),this._ready.resolve(this._exports)}triggerLoaded(){if(this.didLoadCalled)return;const t=this;t.hostLoaded&&o(t.hostLoaded,t),this._callbacks.hostLoaded.forEach(o),this.didLoadCalled=!0}triggerUpdate(t){const i=this;i.hostUpdate&&o(i.hostUpdate,i,t),this._callbacks.hostUpdate.forEach(C,t)}triggerUpdated(t){const i=this;i.hostUpdated&&o(i.hostUpdated,i,t),this._callbacks.hostUpdated.forEach(C,t)}triggerDestroy(){const t=this;t.hostDestroy&&o(t.hostDestroy,t),this._callbacks.hostDestroy.forEach(o)}triggerLifecycle(){const t=this;t.hostLifecycle&&this._callLifecycle((()=>t.hostLifecycle())),this._callbacks.hostLifecycle.forEach(this._callLifecycle,this)}_callLifecycle(t){g(this.component);const i=o(t);(Array.isArray(i)?i:[i]).forEach((t=>{"function"==typeof t?this._lifecycleCleanups.push(t):"object"==typeof t&&"function"==typeof t.remove&&this._lifecycleCleanups.push(t.remove)}))}};function C(t){o(t,void 0,this)}var O=S;function E(t){if("object"!=typeof t&&"function"!=typeof t||null===t)return t;const i=new Proxy(t,{get(t,s,e){if(!P.has(s)||!(s in t)||t[s]!==i)return s in t||s in Promise.prototype||"symbol"==typeof s?"function"==typeof t?t[s]:Reflect.get(t,s,e):void 0},set:(t,i,s,e)=>Reflect.set(t,i,s,e)});return i}var P=new Set(["exports","_exports"]),_=void 0;function A(){Array.from(_?.entries()??[]).forEach((([t,{callbacks:i}])=>{const s=Object.keys(t);i.forEach((t=>t(s)))})),_=void 0}function T(t,i,s){var e;const n=i,r=t.manager.internals;(e=r.allWatchers)[n]??(e[n]=[]);const c=r.allWatchers[n],h=s,a=(t,i,s)=>o(h,null,t,i,s);return c.push(a),()=>{const t=c.indexOf(a);-1!==t&&c.splice(t,1)}}var $=class{constructor(t){this.enabledWatchers={},this.allWatchers={},this.enableReadonly=()=>{if(this.enableReadonly=void 0,!this.component.manager.isLit)return;const t=this.component.manager.internals;Object.entries(t.members).forEach((([i,[s]])=>{var e;2048&s&&((e=t.setters)[i]??(e[i]=[]),t.setters[i].push(t.readonlySetter))}))},this.trackedValue=R,this.keyTrackers=[],this.getters={},this.setters={},this.accessorGetter={},this.accessorSetter={},this.reactiveUtilsIntegrations=new Set,this._exports=new WeakMap,this.readonlySetter=(t,i,s)=>{if(U.readOnly)return t;throw new Error(`Cannot assign to read-only property "${s}" of ${this.component.el.tagName.toLowerCase()}. Trying to assign "${String(t)}"`)},this.component=t}firePropTrackers(t,i){const s=this.keyTrackers;this.trackedValue=R,this.keyTrackers=[],s.forEach((s=>s(t,i)))}getSetProxy(t){const i=this.component,s=i.constructor.prototype;if(this._getSetProxy(s,t,"class"),i.manager.isLit)return;const e=i.el.constructor.prototype;s!==e&&this._getSetProxy(e,t,"html")}_getSetProxy(t,i,s){const e=y(this.component,i),o=Object.getOwnPropertyDescriptor(t,i);if(!o)return;const n=o.get,r=o.set,c=!(F in n),h=!(F in r);if(!c&&!h)return;const a=c?function(){let t=n.call(this);const s=D.get(this);if(void 0===s)return t;const e=s.manager.internals;t=e.accessorGetter[i](t,i);const o=e.getters[i]??q;for(let s=0;s<o.length;s++)t=o[s](t,i);return t}:n,d=h?function(t){const s=n.call(this),o=D.get(this);if(void 0===o)return void r.call(this,t);let c=o.manager.isLit?t:function(t,i=8){return null==t||"object"==typeof t||"function"==typeof t?t:4&i?"false"!==t&&(""===t||!!t):2&i?Number.parseFloat(t):1&i?String(t):t}(t,e);const h=o.manager.internals;if(c===s)r.call(this,t);else{const t=U.setter?q:h.setters[i]??q;for(let e=0;e<t.length&&(c=t[e](c,s,i),c!==s);e++);c=h.accessorSetter[i](c,s,i),r.call(this,c),c!==s&&h.enabledWatchers[i]?.forEach((t=>t(c,s,i)))}h.keyTrackers.length>0&&h?.firePropTrackers(i,t)}:r;c&&(a[F]=!0),h&&(d[F]=!0),Object.defineProperty(t,i,{...o,get:a,set:d})}markExports(t,i){("object"==typeof i&&null!==i||"function"==typeof i)&&this._exports.set(i,t)}resolveExports(t){return"object"==typeof t&&null!==t||"function"==typeof t?this._exports.get(t):void 0}},q=[],F=Symbol(),R=Symbol(),I=(t,i)=>new W(t,i),W=class extends O{constructor(s,e){const o="addController"in s,n=new Set,r=s;if(r.addController=function(t){n.add(t),o&&!(v in t)&&s.el.isConnected&&t.hostConnected?.()},r.removeController=function(t){n.delete(t),t.controllerRemoved?.()},!o){const t=e??s.constructor.__forceUpdate;r.requestUpdate=()=>t(s)}super(s),this.internals=new $(this.component),this.destroyed=!1,this._updatePromise=new i,this._originalLifecycles={},this.isLit=o,this.component.manager=this,function(i,s){if(s)i.manager.internals.members=Object.fromEntries(Array.from(i.constructor.elementProperties,(([t,i])=>i.noAccessor?void 0:[t,[(i.readOnly?2048:0)|(i.state?32:i.type===Number?2:i.type===Boolean?4:1)]])).filter(t));else{const t=i.constructor,s=t.__registerControllers?.(i)??void 0;if(t.__registerControllers=void 0,"object"!=typeof s)throw new Error("Failed to retrieve component meta");i.manager.internals.members=Object.fromEntries(Object.entries(s).filter((([t,[i]])=>!!(63&i))))}}(s,o),this._controllers=n,this.exports=void 0,this.hasDestroy=N in this.component&&"function"==typeof this.component.destroy,this.hasDestroy&&T(s,N,(()=>this._setAutoDestroyTimeout())),this._bindLifecycleMethods();const c=this.internals;Object.keys(c.members).forEach((t=>{c.accessorGetter[t]=B,c.accessorSetter[t]=B,c.getSetProxy(t)})),o||Object.defineProperty(s,"updateComplete",{get:async()=>await this._updatePromise.promise}),queueMicrotask(c.enableReadonly),k(void 0),g(s),D.set(s.el,s),D.set(s,s)}_bindLifecycleMethods(){const t=this.component,i=this.isLit,s=t.el===t;this._originalLifecycles={connectedCallback:i||s?void 0:t.connectedCallback,disconnectedCallback:i||s?void 0:t.disconnectedCallback,componentWillLoad:i?void 0:t.componentWillLoad,componentDidLoad:i?void 0:t.componentDidLoad,componentWillUpdate:i?void 0:t.componentWillUpdate,componentDidUpdate:i?void 0:t.componentDidUpdate,destroy:t.destroy};const e=this._connectedCallback.bind(this),o=this._disconnectedCallback.bind(this),n=this._update.bind(this),r=this._updated.bind(this);i?t.constructor.prototype.addController.call(t,{hostConnected:e,hostDisconnected:o,hostUpdate:n,hostUpdated:r}):(t.connectedCallback=e,t.disconnectedCallback=o,t.componentWillLoad=this._load.bind(this),t.componentDidLoad=this._loaded.bind(this),t.componentWillUpdate=n,t.componentDidUpdate=r),this.hasDestroy&&(t.destroy=this.destroy.bind(this))}_connectedCallback(){if(this.destroyed){const t=this.component.el.tagName.toLowerCase();throw this.component.el.remove(),new Error(`The ${t} component has already been destroyed. It can not be used again. If you meant to disconnect and reconnect a component without automatic destroy, set the ${N} prop.`)}void 0!==this._autoDestroyTimeout&&clearTimeout(this._autoDestroyTimeout);const t=this.internals;t.enabledWatchers=t.allWatchers,A(),t.enableReadonly?.(),this._controllers.forEach(G),this._originalLifecycles.connectedCallback?.call(this.component)}_disconnectedCallback(){this.destroyed||(this._controllers.forEach(H),this._originalLifecycles.disconnectedCallback?.call(this.component),this.hasDestroy&&this._setAutoDestroyTimeout())}async _load(){const t=this.internals.reactiveUtilsIntegrations;if(t.size>0)for(const i of t)"triggerLoad"in i?await i.triggerLoad():await s(i.hostLoad,i);await Promise.allSettled(Array.from(this._controllers,J,t)),await(this._originalLifecycles.componentWillLoad?.call(this.component))}_loaded(){this._controllers.forEach(z),this._originalLifecycles.componentDidLoad?.call(this.component)}_update(){this._controllers.forEach(K,this.component.changedProperties),this._originalLifecycles.componentWillUpdate?.call(this.component)}_updated(){const t=this.component;if(this._controllers.forEach(Q,t.changedProperties),this._originalLifecycles.componentDidUpdate?.call(this.component),this.isLit)t.changedProperties=new Map;else{const t=this._updatePromise;this._updatePromise=new i,t.resolve(!0)}}async destroy(){if(!this.destroyed){if(this.component.el.isConnected){this.hasDestroy=!1;try{this.component.el.remove()}finally{this.hasDestroy=!0}}this._autoDestroyTimeout=void 0,this.destroyed=!0,this._controllers.forEach(X),this._controllers.clear(),await(this._originalLifecycles.destroy?.call(this.component))}}_setAutoDestroyTimeout(){this.component.el.isConnected||this.component.autoDestroyDisabled||(void 0!==this._autoDestroyTimeout&&clearTimeout(this._autoDestroyTimeout),this._autoDestroyTimeout=e((()=>{this.destroy().catch(console.error)}),V))}},N="autoDestroyDisabled",V=1e3,B=t=>t;function G(t){"triggerConnected"in t?t.triggerConnected():o(t.hostConnected,t)}function H(t){"triggerDisconnected"in t?t.triggerDisconnected():o(t.hostDisconnected,t)}async function J(t){this.has(t)||("triggerLoad"in t?await t.triggerLoad():await s(t.hostLoad,t))}function z(t){"triggerLoaded"in t?t.triggerLoaded():o(t.hostLoaded,t)}function K(t){"triggerUpdate"in t?t.triggerUpdate(this):o(t.hostUpdate,t,this)}function Q(t){"triggerUpdated"in t?t.triggerUpdated(this):o(t.hostUpdated,t,this)}function X(t){"triggerDestroy"in t?t.triggerDestroy():o(t.hostDestroy,t)}function Y(t,i,s){const e=t.manager.internals;return e.trackedValue!==R&&e.trackedValue!==s&&e.firePropTrackers(void 0,void 0),0===e.keyTrackers.length&&queueMicrotask((()=>e.firePropTrackers(void 0,void 0))),e.trackedValue=s,e.keyTrackers.push(((t,e)=>o(i,void 0,s===e?t:void 0))),s}function Z(t,i){const s=w();return Y(s,(e=>{const o=e,n=s.manager,r=s,c=r[o];if(null!=c&&c!==t&&"function"==typeof i.set&&(i.initialSet??1)){const s=i.set(c,t,o);if(s!==c)if(n.isLit)r[o]=s;else{let t=!0;n.onConnected((()=>{t&&(t=!0,function(){U.setter=!0;try{return void(r[o]=s)}finally{U.setter=!1}}())}))}}!function(t,i,s){var e,o;const n=s,r=t.manager.internals,c="function"==typeof n.get?n.get:void 0;c&&((e=r.getters)[i]??(e[i]=[]),r.getters[i].unshift(c));const h="ignore"===n.set?it:n.set;h&&((o=r.setters)[i]??(o[i]=[]),r.setters[i].unshift(h))}(s,o,i)}),t)}var tt,it=(t,i)=>i,st=t=>et(void 0,t),et=(tt=class extends S{constructor(t,i){super(t);const s=this.exports;try{g(this.component);const t=i(this.component,this),e=this.exports!==s;if(t instanceof Promise){e||this.setProvisionalExports(t);const i=t.then((t=>{this.exports=t,super.catchUpLifecycle()})).catch((t=>{this._ready.reject(t),console.error(t)}));this.onLoad((async()=>await i))}else e&&void 0===t||(this.exports=t),queueMicrotask((()=>super.catchUpLifecycle()))}catch(t){this._ready.reject(t),console.error(t)}}catchUpLifecycle(){}},(...t)=>{const i=m,s=new tt(...t),e=s.exports;k(i.at(-1));const n=s.component.manager.internals;var r;return n.markExports(s,e),s.watchExports((t=>n.markExports(s,t))),b!==(r=s)&&(b=r,queueMicrotask((()=>{b===r&&(b=void 0)}))),function(t,i,s){const e=Array.isArray(t)?t:[t];let n=e.length+1;const r=t=>{n-=1,void 0!==t&&(n=0),0===n&&i(t)};e.forEach((t=>function(t,i,s){const e=Object.keys(t),n=e.length;void 0===_&&queueMicrotask(A),_??(_=new Map);let r=_.get(t);return void 0===r&&(r={callbacks:[],keyCount:n},_.set(t,r)),r.keyCount!==n&&(r.callbacks.forEach((t=>t(e))),r.callbacks=[],r.keyCount=n),r.callbacks.push((e=>{const r=e[n];o(i,null,void 0===r?void 0:t[r]===s?r:void 0)})),s}(t,(i=>r(void 0===i?void 0:{key:i,host:t,isReactive:!1})),s)));const c=e.find((t=>"manager"in t&&"object"==typeof t.manager&&t.manager.component===t));return c&&Y(c,(t=>r(void 0===t?void 0:{key:t,host:c,isReactive:void 0!==y(c,t)})),s),s}([s.component,...i].reverse(),(t=>void 0===t?void 0:function(t,{host:i,key:s,isReactive:e},o){const n=i,r=n[s]!==o;n[s]!==t.exports&&!r&&o!==t.exports&&(n[s]=t.exports);if(i===t.component){if(e){const i=t.component.manager.internals;r&&i.markExports(t,n[s]),T(t.component,s,(s=>{s!==t.exports&&i.markExports(t,s)}))}t.assignedProperty=e?void 0:s}t.watchExports((()=>{if(n[s]===t.exports)return;const i=t.component.manager,e=i.internals.setters[s]?.includes(i.internals.readonlySetter);e?function(){U.readOnly=!0;try{return void(n[s]=t.exports)}finally{U.readOnly=!1}}():n[s]=t.exports}))}(s,t,e)),e)});const ot={en:{id:"field-calculation",variables:[{name:"$layer",type:"featureSet",description:"The layer being calculated."}]}};const nt=t=>t.variables?t.variables.find((t=>"$layer"===t.name&&"dictionary"===t.type)).properties??[]:[];async function rt(){return await import("./p-77dd5521.js")}const ct=new class extends a{constructor(){super(...arguments),this._languageId="arcgis-sql-expression",this._languageOptions={},this._layerMap=new Map}updateFeatureLayerForModel(t,i){const s=this._getApiKey(t);this._layerMap.set(s,i)}setLanguageOptions(t){this._languageOptions=t}getFeatureLayerForModel(t){const i=this._getApiKey(t);return this._layerMap.get(i)}async setProfileForModel(t,i,s={locale:"en"}){r(i)&&(i=await async function(t,i="en"){if(!r(t))return;const s=await async function(t="en"){return await Promise.resolve(ot[t])}(i);if(!s)return;const e={variables:[],hiddenApiItems:t.hiddenApiItems?.map((t=>t.toLowerCase()))};return s.variables.forEach((i=>{if(t.disabledVariables?.includes(i.name))return;const s=t.definitions[i.name];if("featureSet"===i.type)return c(s)?e.variables.push({...i,type:i.type,definition:s}):void 0;throw Error(`sdkVariable type not supported (yet) type: ${i.type}`)})),e}(i,s.locale));const e=await d(s.locale,l("./assets/arcade-language/t9n"),"profile.t9n.");if(!e)throw new Error(`Failed to load the language bundle for ${s.locale}`);this.disposeForModel(t);const o=this._getApiKey(t),a=new u(i,e);this._profileMap.set(o,a);const f=(t=>{const{apiVersion:i,bundles:s,hiddenApiItems:e}=t.toEditorProfileDefinition(),o=t.variables[0];if(!o||"featureSet"!==o.type)throw Error("No variable found in the editor profile");const r=function(t){const{name:i}=t,s=t.getDescription(),{definition:e}=t.toProfileVariableDefinition(),o={label:i,detail:i,insertText:i,insertTextMode:h.exports.InsertTextMode.asIs,insertTextFormat:h.exports.InsertTextFormat.PlainText,kind:h.exports.CompletionItemKind.Field},r={name:i,description:s,type:"dictionary",properties:[],completion:o};if(!e||!("fields"in e))return r;const[c,a]=n(e.fields,s);return r.properties=c,o.documentation={kind:"markdown",value:a},r}(o);return{apiVersion:i,bundles:s,variables:[r],hiddenApiItems:e?.map((t=>t.toLowerCase()))}})(a);this.updateApiContextForModel(t,{locale:s.locale,profile:f});const p=i?.variables?.find((t=>"$layer"===t.name));p&&this.updateFeatureLayerForModel(t,p.definition)}async getApiLibrary(t){const i=f.parse(t),s=await async function(t){const i=await rt();return await i.getSqlExprWorker(t)}(i);return await s.getApiLibrary(this.getApiContextForModel(i))}};export{rt as a,nt as b,Z as g,st as m,ct as s,I as u,T as w}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
* See https://js.arcgis.com/4.31/esri/copyright.txt for details.
|
|
4
|
-
* v4.31.0-next.
|
|
4
|
+
* v4.31.0-next.21
|
|
5
5
|
*/
|
|
6
|
-
import{
|
|
6
|
+
import{N as t,M as e}from"./p-d7d1f130.js";
|
|
7
7
|
/*!-----------------------------------------------------------------------------
|
|
8
8
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
9
9
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
|
10
10
|
* Released under the MIT license
|
|
11
11
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
|
12
|
-
*-----------------------------------------------------------------------------*/var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,a=(t,e,a,o)=>{if(e&&"object"==typeof e||"function"==typeof e)for(let c of i(e))s.call(t,c)||c===a||n(t,c,{get:()=>e[c],enumerable:!(o=r(e,c))||o.enumerable});return t},o=(t,e,r)=>(((t,e,r)=>{e in t?n(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r})(t,"symbol"!=typeof e?e+"":e,r),r),c={};a(c,e,"default");var u=class{constructor(t,e){this._modeId=t,this._defaults=e,this._worker=null,this._client=null,this._configChangeListener=this._defaults.onDidChange((()=>this._stopWorker())),this._updateExtraLibsToken=0,this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange((()=>this._updateExtraLibs()))}_configChangeListener;_updateExtraLibsToken;_extraLibsChangeListener;_worker;_client;dispose(){this._configChangeListener.dispose(),this._extraLibsChangeListener.dispose(),this._stopWorker()}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}async _updateExtraLibs(){if(!this._worker)return;const t=++this._updateExtraLibsToken,e=await this._worker.getProxy();this._updateExtraLibsToken===t&&e.updateExtraLibs(this._defaults.getExtraLibs())}_getClient(){return this._client||(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((t=>t.getLanguageId()===this._modeId)).map((t=>t.uri))):await this._worker.getProxy()))()),this._client}async getLanguageServiceWorker(...t){const e=await this._getClient();return this._worker&&await this._worker.withSyncedResources(t),e}},l={};function h(t,e,n=0){if("string"==typeof t)return t;if(void 0===t)return"";let r="";if(n){r+=e;for(let t=0;t<n;t++)r+=" "}if(r+=t.messageText,n++,t.next)for(const i of t.next)r+=h(i,e,n);return r}function d(t){return t?t.map((t=>t.text)).join(""):""}l["lib.d.ts"]=!0,l["lib.decorators.d.ts"]=!0,l["lib.decorators.legacy.d.ts"]=!0,l["lib.dom.d.ts"]=!0,l["lib.dom.iterable.d.ts"]=!0,l["lib.es2015.collection.d.ts"]=!0,l["lib.es2015.core.d.ts"]=!0,l["lib.es2015.d.ts"]=!0,l["lib.es2015.generator.d.ts"]=!0,l["lib.es2015.iterable.d.ts"]=!0,l["lib.es2015.promise.d.ts"]=!0,l["lib.es2015.proxy.d.ts"]=!0,l["lib.es2015.reflect.d.ts"]=!0,l["lib.es2015.symbol.d.ts"]=!0,l["lib.es2015.symbol.wellknown.d.ts"]=!0,l["lib.es2016.array.include.d.ts"]=!0,l["lib.es2016.d.ts"]=!0,l["lib.es2016.full.d.ts"]=!0,l["lib.es2017.d.ts"]=!0,l["lib.es2017.full.d.ts"]=!0,l["lib.es2017.intl.d.ts"]=!0,l["lib.es2017.object.d.ts"]=!0,l["lib.es2017.sharedmemory.d.ts"]=!0,l["lib.es2017.string.d.ts"]=!0,l["lib.es2017.typedarrays.d.ts"]=!0,l["lib.es2018.asyncgenerator.d.ts"]=!0,l["lib.es2018.asynciterable.d.ts"]=!0,l["lib.es2018.d.ts"]=!0,l["lib.es2018.full.d.ts"]=!0,l["lib.es2018.intl.d.ts"]=!0,l["lib.es2018.promise.d.ts"]=!0,l["lib.es2018.regexp.d.ts"]=!0,l["lib.es2019.array.d.ts"]=!0,l["lib.es2019.d.ts"]=!0,l["lib.es2019.full.d.ts"]=!0,l["lib.es2019.intl.d.ts"]=!0,l["lib.es2019.object.d.ts"]=!0,l["lib.es2019.string.d.ts"]=!0,l["lib.es2019.symbol.d.ts"]=!0,l["lib.es2020.bigint.d.ts"]=!0,l["lib.es2020.d.ts"]=!0,l["lib.es2020.date.d.ts"]=!0,l["lib.es2020.full.d.ts"]=!0,l["lib.es2020.intl.d.ts"]=!0,l["lib.es2020.number.d.ts"]=!0,l["lib.es2020.promise.d.ts"]=!0,l["lib.es2020.sharedmemory.d.ts"]=!0,l["lib.es2020.string.d.ts"]=!0,l["lib.es2020.symbol.wellknown.d.ts"]=!0,l["lib.es2021.d.ts"]=!0,l["lib.es2021.full.d.ts"]=!0,l["lib.es2021.intl.d.ts"]=!0,l["lib.es2021.promise.d.ts"]=!0,l["lib.es2021.string.d.ts"]=!0,l["lib.es2021.weakref.d.ts"]=!0,l["lib.es2022.array.d.ts"]=!0,l["lib.es2022.d.ts"]=!0,l["lib.es2022.error.d.ts"]=!0,l["lib.es2022.full.d.ts"]=!0,l["lib.es2022.intl.d.ts"]=!0,l["lib.es2022.object.d.ts"]=!0,l["lib.es2022.regexp.d.ts"]=!0,l["lib.es2022.sharedmemory.d.ts"]=!0,l["lib.es2022.string.d.ts"]=!0,l["lib.es2023.array.d.ts"]=!0,l["lib.es2023.d.ts"]=!0,l["lib.es2023.full.d.ts"]=!0,l["lib.es5.d.ts"]=!0,l["lib.es6.d.ts"]=!0,l["lib.esnext.d.ts"]=!0,l["lib.esnext.full.d.ts"]=!0,l["lib.esnext.intl.d.ts"]=!0,l["lib.scripthost.d.ts"]=!0,l["lib.webworker.d.ts"]=!0,l["lib.webworker.importscripts.d.ts"]=!0,l["lib.webworker.iterable.d.ts"]=!0;var f=class{constructor(t){this._worker=t}_textSpanToRange(t,e){let n=t.getPositionAt(e.start),r=t.getPositionAt(e.start+e.length),{lineNumber:i,column:s}=n,{lineNumber:a,column:o}=r;return{startLineNumber:i,startColumn:s,endLineNumber:a,endColumn:o}}},m=class{constructor(t){this._worker=t,this._libFiles={},this._hasFetchedLibFiles=!1,this._fetchLibFilesPromise=null}_libFiles;_hasFetchedLibFiles;_fetchLibFilesPromise;isLibFile(t){return!!t&&0===t.path.indexOf("/lib.")&&!!l[t.path.slice(1)]}getOrCreateModel(e){const 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);const i=t.getExtraLibs()[e];return i?c.editor.createModel(i.content,"typescript",n):null}_containsLibFile(t){for(let e of t)if(this.isLibFile(e))return!0;return!1}async fetchLibFilesIfNecessary(t){this._containsLibFile(t)&&await this._fetchLibFiles()}_fetchLibFiles(){return this._fetchLibFilesPromise||(this._fetchLibFilesPromise=this._worker().then((t=>t.getLibFiles())).then((t=>{this._hasFetchedLibFiles=!0,this._libFiles=t}))),this._fetchLibFilesPromise}},p=class extends f{constructor(t,e,n,r){super(r),this._libFiles=t,this._defaults=e,this._selector=n;const i=t=>{if(t.getLanguageId()!==n)return;const e=()=>{const{onlyVisible:e}=this._defaults.getDiagnosticsOptions();e?t.isAttachedToEditor()&&this._doValidate(t):this._doValidate(t)};let r;const i=t.onDidChangeContent((()=>{clearTimeout(r),r=window.setTimeout(e,500)})),s=t.onDidChangeAttached((()=>{const{onlyVisible:n}=this._defaults.getDiagnosticsOptions();n&&(t.isAttachedToEditor()?e():c.editor.setModelMarkers(t,this._selector,[]))}));this._listener[t.uri.toString()]={dispose(){i.dispose(),s.dispose(),clearTimeout(r)}},e()},s=t=>{c.editor.setModelMarkers(t,this._selector,[]);const e=t.uri.toString();this._listener[e]&&(this._listener[e].dispose(),delete this._listener[e])};this._disposables.push(c.editor.onDidCreateModel((t=>i(t)))),this._disposables.push(c.editor.onWillDisposeModel(s)),this._disposables.push(c.editor.onDidChangeModelLanguage((t=>{s(t.model),i(t.model)}))),this._disposables.push({dispose(){for(const t of c.editor.getModels())s(t)}});const a=()=>{for(const t of c.editor.getModels())s(t),i(t)};this._disposables.push(this._defaults.onDidChange(a)),this._disposables.push(this._defaults.onDidExtraLibsChange(a)),c.editor.getModels().forEach((t=>i(t)))}_disposables=[];_listener=Object.create(null);dispose(){this._disposables.forEach((t=>t&&t.dispose())),this._disposables=[]}async _doValidate(t){const e=await this._worker(t.uri);if(t.isDisposed())return;const n=[],{noSyntaxValidation:r,noSemanticValidation:i,noSuggestionDiagnostics:s}=this._defaults.getDiagnosticsOptions();r||n.push(e.getSyntacticDiagnostics(t.uri.toString())),i||n.push(e.getSemanticDiagnostics(t.uri.toString())),s||n.push(e.getSuggestionDiagnostics(t.uri.toString()));const a=await Promise.all(n);if(!a||t.isDisposed())return;const o=a.reduce(((t,e)=>e.concat(t)),[]).filter((t=>-1===(this._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(t.code))),u=o.map((t=>t.relatedInformation||[])).reduce(((t,e)=>e.concat(t)),[]).map((t=>t.file?c.Uri.parse(t.file.fileName):null));await this._libFiles.fetchLibFilesIfNecessary(u),t.isDisposed()||c.editor.setModelMarkers(t,this._selector,o.map((e=>this._convertDiagnostics(t,e))))}_convertDiagnostics(t,e){const n=e.start||0,r=e.length||1,{lineNumber:i,column:s}=t.getPositionAt(n),{lineNumber:a,column:o}=t.getPositionAt(n+r),u=[];return e.reportsUnnecessary&&u.push(c.MarkerTag.Unnecessary),e.reportsDeprecated&&u.push(c.MarkerTag.Deprecated),{severity:this._tsDiagnosticCategoryToMarkerSeverity(e.category),startLineNumber:i,startColumn:s,endLineNumber:a,endColumn:o,message:h(e.messageText,"\n"),code:e.code.toString(),tags:u,relatedInformation:this._convertRelatedInformation(t,e.relatedInformation)}}_convertRelatedInformation(t,e){if(!e)return[];const n=[];return e.forEach((e=>{let r=t;if(e.file&&(r=this._libFiles.getOrCreateModel(e.file.fileName)),!r)return;const i=e.start||0,s=e.length||1,{lineNumber:a,column:o}=r.getPositionAt(i),{lineNumber:c,column:u}=r.getPositionAt(i+s);n.push({resource:r.uri,startLineNumber:a,startColumn:o,endLineNumber:c,endColumn:u,message:h(e.messageText,"\n")})})),n}_tsDiagnosticCategoryToMarkerSeverity(t){switch(t){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 extends f{get triggerCharacters(){return["."]}async provideCompletionItems(t,e,n,r){const i=t.getWordUntilPosition(e),s=new c.Range(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn),a=t.uri,o=t.getOffsetAt(e),u=await this._worker(a);if(t.isDisposed())return;const l=await u.getCompletionsAtPosition(a.toString(),o);return l&&!t.isDisposed()?{suggestions:l.entries.map((n=>{let r=s;if(n.replacementSpan){const e=t.getPositionAt(n.replacementSpan.start),i=t.getPositionAt(n.replacementSpan.start+n.replacementSpan.length);r=new c.Range(e.lineNumber,e.column,i.lineNumber,i.column)}const i=[];return void 0!==n.kindModifiers&&-1!==n.kindModifiers.indexOf("deprecated")&&i.push(c.languages.CompletionItemTag.Deprecated),{uri:a,position:e,offset:o,range:r,label:n.name,insertText:n.name,sortText:n.sortText,kind:g.convertKind(n.kind),tags:i}}))}:void 0}async resolveCompletionItem(t,e){const n=t,r=n.uri,i=n.position,s=n.offset,a=await this._worker(r),o=await a.getCompletionEntryDetails(r.toString(),s,n.label);return o?{uri:r,position:i,label:o.name,kind:g.convertKind(o.kind),detail:d(o.displayParts),documentation:{value:g.createDocumentationString(o)}}:n}static convertKind(t){switch(t){case k.primitiveType:case k.keyword:return c.languages.CompletionItemKind.Keyword;case k.variable:case k.localVariable:return c.languages.CompletionItemKind.Variable;case k.memberVariable:case k.memberGetAccessor:case k.memberSetAccessor:return c.languages.CompletionItemKind.Field;case k.function:case k.memberFunction:case k.constructSignature:case k.callSignature:case k.indexSignature:return c.languages.CompletionItemKind.Function;case k.enum:return c.languages.CompletionItemKind.Enum;case k.module:return c.languages.CompletionItemKind.Module;case k.class:return c.languages.CompletionItemKind.Class;case k.interface:return c.languages.CompletionItemKind.Interface;case k.warning:return c.languages.CompletionItemKind.File}return c.languages.CompletionItemKind.Property}static createDocumentationString(t){let e=d(t.documentation);if(t.tags)for(const n of t.tags)e+=`\n\n${w(n)}`;return e}};function w(t){let e=`*@${t.name}*`;if("param"===t.name&&t.text){const[n,...r]=t.text;e+=`\`${n.text}\``,r.length>0&&(e+=` — ${r.map((t=>t.text)).join(" ")}`)}else Array.isArray(t.text)?e+=` — ${t.text.map((t=>t.text)).join(" ")}`:t.text&&(e+=` — ${t.text}`);return e}var b=class extends f{signatureHelpTriggerCharacters=["(",","];static _toSignatureHelpTriggerReason(t){switch(t.triggerKind){case c.languages.SignatureHelpTriggerKind.TriggerCharacter:return t.triggerCharacter?t.isRetrigger?{kind:"retrigger",triggerCharacter:t.triggerCharacter}:{kind:"characterTyped",triggerCharacter:t.triggerCharacter}:{kind:"invoked"};case c.languages.SignatureHelpTriggerKind.ContentChange:return t.isRetrigger?{kind:"retrigger"}:{kind:"invoked"};default:return{kind:"invoked"}}}async provideSignatureHelp(t,e,n,r){const i=t.uri,s=t.getOffsetAt(e),a=await this._worker(i);if(t.isDisposed())return;const o=await a.getSignatureHelpItems(i.toString(),s,{triggerReason:b._toSignatureHelpTriggerReason(r)});if(!o||t.isDisposed())return;const c={activeSignature:o.selectedItemIndex,activeParameter:o.argumentIndex,signatures:[]};return o.items.forEach((t=>{const e={label:"",parameters:[]};e.documentation={value:d(t.documentation)},e.label+=d(t.prefixDisplayParts),t.parameters.forEach(((n,r,i)=>{const s=d(n.displayParts),a={label:s,documentation:{value:d(n.documentation)}};e.label+=s,e.parameters.push(a),r<i.length-1&&(e.label+=d(t.separatorDisplayParts))})),e.label+=d(t.suffixDisplayParts),c.signatures.push(e)})),{value:c,dispose(){}}}},v=class extends f{async provideHover(t,e,n){const r=t.uri,i=t.getOffsetAt(e),s=await this._worker(r);if(t.isDisposed())return;const a=await s.getQuickInfoAtPosition(r.toString(),i);if(!a||t.isDisposed())return;const o=d(a.documentation),c=a.tags?a.tags.map((t=>w(t))).join(" \n\n"):"",u=d(a.displayParts);return{range:this._textSpanToRange(t,a.textSpan),contents:[{value:"```typescript\n"+u+"\n```\n"},{value:o+(c?"\n\n"+c:"")}]}}},y=class extends f{async provideDocumentHighlights(t,e,n){const r=t.uri,i=t.getOffsetAt(e),s=await this._worker(r);if(t.isDisposed())return;const a=await s.getDocumentHighlights(r.toString(),i,[r.toString()]);return a&&!t.isDisposed()?a.flatMap((e=>e.highlightSpans.map((e=>({range:this._textSpanToRange(t,e.textSpan),kind:"writtenReference"===e.kind?c.languages.DocumentHighlightKind.Write:c.languages.DocumentHighlightKind.Text}))))):void 0}},x=class extends f{constructor(t,e){super(e),this._libFiles=t}async provideDefinition(t,e,n){const r=t.uri,i=t.getOffsetAt(e),s=await this._worker(r);if(t.isDisposed())return;const a=await s.getDefinitionAtPosition(r.toString(),i);if(!a||t.isDisposed())return;if(await this._libFiles.fetchLibFilesIfNecessary(a.map((t=>c.Uri.parse(t.fileName)))),t.isDisposed())return;const o=[];for(let t of a){const e=this._libFiles.getOrCreateModel(t.fileName);e&&o.push({uri:e.uri,range:this._textSpanToRange(e,t.textSpan)})}return o}},S=class extends f{constructor(t,e){super(e),this._libFiles=t}async provideReferences(t,e,n,r){const i=t.uri,s=t.getOffsetAt(e),a=await this._worker(i);if(t.isDisposed())return;const o=await a.getReferencesAtPosition(i.toString(),s);if(!o||t.isDisposed())return;if(await this._libFiles.fetchLibFilesIfNecessary(o.map((t=>c.Uri.parse(t.fileName)))),t.isDisposed())return;const u=[];for(let t of o){const e=this._libFiles.getOrCreateModel(t.fileName);e&&u.push({uri:e.uri,range:this._textSpanToRange(e,t.textSpan)})}return u}},C=class extends f{async provideDocumentSymbols(t,e){const n=t.uri,r=await this._worker(n);if(t.isDisposed())return;const i=await r.getNavigationTree(n.toString());if(!i||t.isDisposed())return;const s=(e,n)=>({name:e.text,detail:"",kind:N[e.kind]||c.languages.SymbolKind.Variable,range:this._textSpanToRange(t,e.spans[0]),selectionRange:this._textSpanToRange(t,e.spans[0]),tags:[],children:e.childItems?.map((t=>s(t,e.text))),containerName:n});return i.childItems?i.childItems.map((t=>s(t))):[]}},k=class{};o(k,"unknown",""),o(k,"keyword","keyword"),o(k,"script","script"),o(k,"module","module"),o(k,"class","class"),o(k,"interface","interface"),o(k,"type","type"),o(k,"enum","enum"),o(k,"variable","var"),o(k,"localVariable","local var"),o(k,"function","function"),o(k,"localFunction","local function"),o(k,"memberFunction","method"),o(k,"memberGetAccessor","getter"),o(k,"memberSetAccessor","setter"),o(k,"memberVariable","property"),o(k,"constructorImplementation","constructor"),o(k,"callSignature","call"),o(k,"indexSignature","index"),o(k,"constructSignature","construct"),o(k,"parameter","parameter"),o(k,"typeParameter","type parameter"),o(k,"primitiveType","primitive type"),o(k,"label","label"),o(k,"alias","alias"),o(k,"const","const"),o(k,"let","let"),o(k,"warning","warning");var N=Object.create(null);N[k.module]=c.languages.SymbolKind.Module,N[k.class]=c.languages.SymbolKind.Class,N[k.enum]=c.languages.SymbolKind.Enum,N[k.interface]=c.languages.SymbolKind.Interface,N[k.memberFunction]=c.languages.SymbolKind.Method,N[k.memberVariable]=c.languages.SymbolKind.Property,N[k.memberGetAccessor]=c.languages.SymbolKind.Property,N[k.memberSetAccessor]=c.languages.SymbolKind.Property,N[k.variable]=c.languages.SymbolKind.Variable,N[k.const]=c.languages.SymbolKind.Variable,N[k.localVariable]=c.languages.SymbolKind.Variable,N[k.variable]=c.languages.SymbolKind.Variable,N[k.function]=c.languages.SymbolKind.Function,N[k.localFunction]=c.languages.SymbolKind.Function;var _,F,I=class extends f{static _convertOptions(t){return{ConvertTabsToSpaces:t.insertSpaces,TabSize:t.tabSize,IndentSize:t.tabSize,IndentStyle:2,NewLineCharacter:"\n",InsertSpaceAfterCommaDelimiter:!0,InsertSpaceAfterSemicolonInForStatements:!0,InsertSpaceBeforeAndAfterBinaryOperators:!0,InsertSpaceAfterKeywordsInControlFlowStatements:!0,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:!0,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,PlaceOpenBraceOnNewLineForControlBlocks:!1,PlaceOpenBraceOnNewLineForFunctions:!1}}_convertTextChanges(t,e){return{text:e.newText,range:this._textSpanToRange(t,e.span)}}},L=class extends I{canFormatMultipleRanges=!1;async provideDocumentRangeFormattingEdits(t,e,n,r){const i=t.uri,s=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn}),a=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn}),o=await this._worker(i);if(t.isDisposed())return;const c=await o.getFormattingEditsForRange(i.toString(),s,a,I._convertOptions(n));return c&&!t.isDisposed()?c.map((e=>this._convertTextChanges(t,e))):void 0}},O=class extends I{get autoFormatTriggerCharacters(){return[";","}","\n"]}async provideOnTypeFormattingEdits(t,e,n,r,i){const s=t.uri,a=t.getOffsetAt(e),o=await this._worker(s);if(t.isDisposed())return;const c=await o.getFormattingEditsAfterKeystroke(s.toString(),a,n,I._convertOptions(r));return c&&!t.isDisposed()?c.map((e=>this._convertTextChanges(t,e))):void 0}},T=class extends I{async provideCodeActions(t,e,n,r){const i=t.uri,s=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn}),a=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn}),o=I._convertOptions(t.getOptions()),c=n.markers.filter((t=>t.code)).map((t=>t.code)).map(Number),u=await this._worker(i);if(t.isDisposed())return;const l=await u.getCodeFixesAtPosition(i.toString(),s,a,c,o);return!l||t.isDisposed()?{actions:[],dispose:()=>{}}:{actions:l.filter((t=>0===t.changes.filter((t=>t.isNewFile)).length)).map((e=>this._tsCodeFixActionToMonacoCodeAction(t,n,e))),dispose:()=>{}}}_tsCodeFixActionToMonacoCodeAction(t,e,n){const r=[];for(const e of n.changes)for(const n of e.textChanges)r.push({resource:t.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(t,n.span),text:n.newText}});return{title:n.description,edit:{edits:r},diagnostics:e.markers,kind:"quickfix"}}},A=class extends f{constructor(t,e){super(e),this._libFiles=t}async provideRenameEdits(t,e,n,r){const i=t.uri,s=i.toString(),a=t.getOffsetAt(e),o=await this._worker(i);if(t.isDisposed())return;const c=await o.getRenameInfo(s,a,{allowRenameOfImportPath:!1});if(!1===c.canRename)return{edits:[],rejectReason:c.localizedErrorMessage};if(void 0!==c.fileToRename)throw new Error("Renaming files is not supported.");const u=await o.findRenameLocations(s,a,!1,!1,!1);if(!u||t.isDisposed())return;const l=[];for(const t of u){const e=this._libFiles.getOrCreateModel(t.fileName);if(!e)throw new Error(`Unknown file ${t.fileName}.`);l.push({resource:e.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(e,t.textSpan),text:n}})}return{edits:l}}},R=class extends f{async provideInlayHints(t,e,n){const r=t.uri,i=r.toString(),s=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn}),a=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn}),o=await this._worker(r);return t.isDisposed()?null:{hints:(await o.provideInlayHints(i,s,a)).map((e=>({...e,label:e.text,position:t.getPositionAt(e.position),kind:this._convertHintKind(e.kind)}))),dispose:()=>{}}}_convertHintKind(t){return"Parameter"===t?c.languages.InlayHintKind.Parameter:c.languages.InlayHintKind.Type}};function P(t){F=E(t,"typescript")}function j(t){_=E(t,"javascript")}function B(){return new Promise(((t,e)=>{if(!_)return e("JavaScript not registered!");t(_)}))}function D(){return new Promise(((t,e)=>{if(!F)return e("TypeScript not registered!");t(F)}))}function E(t,e){const n=[],r=new u(e,t),i=(...t)=>r.getLanguageServiceWorker(...t),s=new m(i);return function(){const{modeConfiguration:r}=t;!function(t){for(;t.length;)t.pop().dispose()}(n),r.completionItems&&n.push(c.languages.registerCompletionItemProvider(e,new g(i))),r.signatureHelp&&n.push(c.languages.registerSignatureHelpProvider(e,new b(i))),r.hovers&&n.push(c.languages.registerHoverProvider(e,new v(i))),r.documentHighlights&&n.push(c.languages.registerDocumentHighlightProvider(e,new y(i))),r.definitions&&n.push(c.languages.registerDefinitionProvider(e,new x(s,i))),r.references&&n.push(c.languages.registerReferenceProvider(e,new S(s,i))),r.documentSymbols&&n.push(c.languages.registerDocumentSymbolProvider(e,new C(i))),r.rename&&n.push(c.languages.registerRenameProvider(e,new A(s,i))),r.documentRangeFormattingEdits&&n.push(c.languages.registerDocumentRangeFormattingEditProvider(e,new L(i))),r.onTypeFormattingEdits&&n.push(c.languages.registerOnTypeFormattingEditProvider(e,new O(i))),r.codeActions&&n.push(c.languages.registerCodeActionProvider(e,new T(i))),r.inlayHints&&n.push(c.languages.registerInlayHintsProvider(e,new R(i))),r.diagnostics&&n.push(new p(s,t,e,i))}(),i}export{f as Adapter,T as CodeActionAdaptor,x as DefinitionAdapter,p as DiagnosticsAdapter,y as DocumentHighlightAdapter,L as FormatAdapter,I as FormatHelper,O as FormatOnTypeAdapter,R as InlayHintsAdapter,k as Kind,m as LibFiles,C as OutlineAdapter,v as QuickInfoAdapter,S as ReferenceAdapter,A as RenameAdapter,b as SignatureHelpAdapter,g as SuggestAdapter,u as WorkerManager,h as flattenDiagnosticMessageText,B as getJavaScriptWorker,D as getTypeScriptWorker,j as setupJavaScript,P as setupTypeScript}
|
|
12
|
+
*-----------------------------------------------------------------------------*/var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,a=(t,e,a,o)=>{if(e&&"object"==typeof e||"function"==typeof e)for(let c of i(e))s.call(t,c)||c===a||n(t,c,{get:()=>e[c],enumerable:!(o=r(e,c))||o.enumerable});return t},o=(t,e,r)=>(((t,e,r)=>{e in t?n(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r})(t,"symbol"!=typeof e?e+"":e,r),r),c={};a(c,e,"default");var u=class{constructor(t,e){this._modeId=t,this._defaults=e,this._worker=null,this._client=null,this._configChangeListener=this._defaults.onDidChange((()=>this._stopWorker())),this._updateExtraLibsToken=0,this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange((()=>this._updateExtraLibs()))}_configChangeListener;_updateExtraLibsToken;_extraLibsChangeListener;_worker;_client;dispose(){this._configChangeListener.dispose(),this._extraLibsChangeListener.dispose(),this._stopWorker()}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}async _updateExtraLibs(){if(!this._worker)return;const t=++this._updateExtraLibsToken,e=await this._worker.getProxy();this._updateExtraLibsToken===t&&e.updateExtraLibs(this._defaults.getExtraLibs())}_getClient(){return this._client||(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((t=>t.getLanguageId()===this._modeId)).map((t=>t.uri))):await this._worker.getProxy()))()),this._client}async getLanguageServiceWorker(...t){const e=await this._getClient();return this._worker&&await this._worker.withSyncedResources(t),e}},l={};function h(t,e,n=0){if("string"==typeof t)return t;if(void 0===t)return"";let r="";if(n){r+=e;for(let t=0;t<n;t++)r+=" "}if(r+=t.messageText,n++,t.next)for(const i of t.next)r+=h(i,e,n);return r}function d(t){return t?t.map((t=>t.text)).join(""):""}l["lib.d.ts"]=!0,l["lib.decorators.d.ts"]=!0,l["lib.decorators.legacy.d.ts"]=!0,l["lib.dom.d.ts"]=!0,l["lib.dom.iterable.d.ts"]=!0,l["lib.es2015.collection.d.ts"]=!0,l["lib.es2015.core.d.ts"]=!0,l["lib.es2015.d.ts"]=!0,l["lib.es2015.generator.d.ts"]=!0,l["lib.es2015.iterable.d.ts"]=!0,l["lib.es2015.promise.d.ts"]=!0,l["lib.es2015.proxy.d.ts"]=!0,l["lib.es2015.reflect.d.ts"]=!0,l["lib.es2015.symbol.d.ts"]=!0,l["lib.es2015.symbol.wellknown.d.ts"]=!0,l["lib.es2016.array.include.d.ts"]=!0,l["lib.es2016.d.ts"]=!0,l["lib.es2016.full.d.ts"]=!0,l["lib.es2017.d.ts"]=!0,l["lib.es2017.full.d.ts"]=!0,l["lib.es2017.intl.d.ts"]=!0,l["lib.es2017.object.d.ts"]=!0,l["lib.es2017.sharedmemory.d.ts"]=!0,l["lib.es2017.string.d.ts"]=!0,l["lib.es2017.typedarrays.d.ts"]=!0,l["lib.es2018.asyncgenerator.d.ts"]=!0,l["lib.es2018.asynciterable.d.ts"]=!0,l["lib.es2018.d.ts"]=!0,l["lib.es2018.full.d.ts"]=!0,l["lib.es2018.intl.d.ts"]=!0,l["lib.es2018.promise.d.ts"]=!0,l["lib.es2018.regexp.d.ts"]=!0,l["lib.es2019.array.d.ts"]=!0,l["lib.es2019.d.ts"]=!0,l["lib.es2019.full.d.ts"]=!0,l["lib.es2019.intl.d.ts"]=!0,l["lib.es2019.object.d.ts"]=!0,l["lib.es2019.string.d.ts"]=!0,l["lib.es2019.symbol.d.ts"]=!0,l["lib.es2020.bigint.d.ts"]=!0,l["lib.es2020.d.ts"]=!0,l["lib.es2020.date.d.ts"]=!0,l["lib.es2020.full.d.ts"]=!0,l["lib.es2020.intl.d.ts"]=!0,l["lib.es2020.number.d.ts"]=!0,l["lib.es2020.promise.d.ts"]=!0,l["lib.es2020.sharedmemory.d.ts"]=!0,l["lib.es2020.string.d.ts"]=!0,l["lib.es2020.symbol.wellknown.d.ts"]=!0,l["lib.es2021.d.ts"]=!0,l["lib.es2021.full.d.ts"]=!0,l["lib.es2021.intl.d.ts"]=!0,l["lib.es2021.promise.d.ts"]=!0,l["lib.es2021.string.d.ts"]=!0,l["lib.es2021.weakref.d.ts"]=!0,l["lib.es2022.array.d.ts"]=!0,l["lib.es2022.d.ts"]=!0,l["lib.es2022.error.d.ts"]=!0,l["lib.es2022.full.d.ts"]=!0,l["lib.es2022.intl.d.ts"]=!0,l["lib.es2022.object.d.ts"]=!0,l["lib.es2022.regexp.d.ts"]=!0,l["lib.es2022.sharedmemory.d.ts"]=!0,l["lib.es2022.string.d.ts"]=!0,l["lib.es2023.array.d.ts"]=!0,l["lib.es2023.d.ts"]=!0,l["lib.es2023.full.d.ts"]=!0,l["lib.es5.d.ts"]=!0,l["lib.es6.d.ts"]=!0,l["lib.esnext.d.ts"]=!0,l["lib.esnext.full.d.ts"]=!0,l["lib.esnext.intl.d.ts"]=!0,l["lib.scripthost.d.ts"]=!0,l["lib.webworker.d.ts"]=!0,l["lib.webworker.importscripts.d.ts"]=!0,l["lib.webworker.iterable.d.ts"]=!0;var f=class{constructor(t){this._worker=t}_textSpanToRange(t,e){let n=t.getPositionAt(e.start),r=t.getPositionAt(e.start+e.length),{lineNumber:i,column:s}=n,{lineNumber:a,column:o}=r;return{startLineNumber:i,startColumn:s,endLineNumber:a,endColumn:o}}},m=class{constructor(t){this._worker=t,this._libFiles={},this._hasFetchedLibFiles=!1,this._fetchLibFilesPromise=null}_libFiles;_hasFetchedLibFiles;_fetchLibFilesPromise;isLibFile(t){return!!t&&0===t.path.indexOf("/lib.")&&!!l[t.path.slice(1)]}getOrCreateModel(e){const 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);const i=t.getExtraLibs()[e];return i?c.editor.createModel(i.content,"typescript",n):null}_containsLibFile(t){for(let e of t)if(this.isLibFile(e))return!0;return!1}async fetchLibFilesIfNecessary(t){this._containsLibFile(t)&&await this._fetchLibFiles()}_fetchLibFiles(){return this._fetchLibFilesPromise||(this._fetchLibFilesPromise=this._worker().then((t=>t.getLibFiles())).then((t=>{this._hasFetchedLibFiles=!0,this._libFiles=t}))),this._fetchLibFilesPromise}},p=class extends f{constructor(t,e,n,r){super(r),this._libFiles=t,this._defaults=e,this._selector=n;const i=t=>{if(t.getLanguageId()!==n)return;const e=()=>{const{onlyVisible:e}=this._defaults.getDiagnosticsOptions();e?t.isAttachedToEditor()&&this._doValidate(t):this._doValidate(t)};let r;const i=t.onDidChangeContent((()=>{clearTimeout(r),r=window.setTimeout(e,500)})),s=t.onDidChangeAttached((()=>{const{onlyVisible:n}=this._defaults.getDiagnosticsOptions();n&&(t.isAttachedToEditor()?e():c.editor.setModelMarkers(t,this._selector,[]))}));this._listener[t.uri.toString()]={dispose(){i.dispose(),s.dispose(),clearTimeout(r)}},e()},s=t=>{c.editor.setModelMarkers(t,this._selector,[]);const e=t.uri.toString();this._listener[e]&&(this._listener[e].dispose(),delete this._listener[e])};this._disposables.push(c.editor.onDidCreateModel((t=>i(t)))),this._disposables.push(c.editor.onWillDisposeModel(s)),this._disposables.push(c.editor.onDidChangeModelLanguage((t=>{s(t.model),i(t.model)}))),this._disposables.push({dispose(){for(const t of c.editor.getModels())s(t)}});const a=()=>{for(const t of c.editor.getModels())s(t),i(t)};this._disposables.push(this._defaults.onDidChange(a)),this._disposables.push(this._defaults.onDidExtraLibsChange(a)),c.editor.getModels().forEach((t=>i(t)))}_disposables=[];_listener=Object.create(null);dispose(){this._disposables.forEach((t=>t&&t.dispose())),this._disposables=[]}async _doValidate(t){const e=await this._worker(t.uri);if(t.isDisposed())return;const n=[],{noSyntaxValidation:r,noSemanticValidation:i,noSuggestionDiagnostics:s}=this._defaults.getDiagnosticsOptions();r||n.push(e.getSyntacticDiagnostics(t.uri.toString())),i||n.push(e.getSemanticDiagnostics(t.uri.toString())),s||n.push(e.getSuggestionDiagnostics(t.uri.toString()));const a=await Promise.all(n);if(!a||t.isDisposed())return;const o=a.reduce(((t,e)=>e.concat(t)),[]).filter((t=>-1===(this._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(t.code))),u=o.map((t=>t.relatedInformation||[])).reduce(((t,e)=>e.concat(t)),[]).map((t=>t.file?c.Uri.parse(t.file.fileName):null));await this._libFiles.fetchLibFilesIfNecessary(u),t.isDisposed()||c.editor.setModelMarkers(t,this._selector,o.map((e=>this._convertDiagnostics(t,e))))}_convertDiagnostics(t,e){const n=e.start||0,r=e.length||1,{lineNumber:i,column:s}=t.getPositionAt(n),{lineNumber:a,column:o}=t.getPositionAt(n+r),u=[];return e.reportsUnnecessary&&u.push(c.MarkerTag.Unnecessary),e.reportsDeprecated&&u.push(c.MarkerTag.Deprecated),{severity:this._tsDiagnosticCategoryToMarkerSeverity(e.category),startLineNumber:i,startColumn:s,endLineNumber:a,endColumn:o,message:h(e.messageText,"\n"),code:e.code.toString(),tags:u,relatedInformation:this._convertRelatedInformation(t,e.relatedInformation)}}_convertRelatedInformation(t,e){if(!e)return[];const n=[];return e.forEach((e=>{let r=t;if(e.file&&(r=this._libFiles.getOrCreateModel(e.file.fileName)),!r)return;const i=e.start||0,s=e.length||1,{lineNumber:a,column:o}=r.getPositionAt(i),{lineNumber:c,column:u}=r.getPositionAt(i+s);n.push({resource:r.uri,startLineNumber:a,startColumn:o,endLineNumber:c,endColumn:u,message:h(e.messageText,"\n")})})),n}_tsDiagnosticCategoryToMarkerSeverity(t){switch(t){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 extends f{get triggerCharacters(){return["."]}async provideCompletionItems(t,e,n,r){const i=t.getWordUntilPosition(e),s=new c.Range(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn),a=t.uri,o=t.getOffsetAt(e),u=await this._worker(a);if(t.isDisposed())return;const l=await u.getCompletionsAtPosition(a.toString(),o);return l&&!t.isDisposed()?{suggestions:l.entries.map((n=>{let r=s;if(n.replacementSpan){const e=t.getPositionAt(n.replacementSpan.start),i=t.getPositionAt(n.replacementSpan.start+n.replacementSpan.length);r=new c.Range(e.lineNumber,e.column,i.lineNumber,i.column)}const i=[];return void 0!==n.kindModifiers&&-1!==n.kindModifiers.indexOf("deprecated")&&i.push(c.languages.CompletionItemTag.Deprecated),{uri:a,position:e,offset:o,range:r,label:n.name,insertText:n.name,sortText:n.sortText,kind:g.convertKind(n.kind),tags:i}}))}:void 0}async resolveCompletionItem(t,e){const n=t,r=n.uri,i=n.position,s=n.offset,a=await this._worker(r),o=await a.getCompletionEntryDetails(r.toString(),s,n.label);return o?{uri:r,position:i,label:o.name,kind:g.convertKind(o.kind),detail:d(o.displayParts),documentation:{value:g.createDocumentationString(o)}}:n}static convertKind(t){switch(t){case k.primitiveType:case k.keyword:return c.languages.CompletionItemKind.Keyword;case k.variable:case k.localVariable:return c.languages.CompletionItemKind.Variable;case k.memberVariable:case k.memberGetAccessor:case k.memberSetAccessor:return c.languages.CompletionItemKind.Field;case k.function:case k.memberFunction:case k.constructSignature:case k.callSignature:case k.indexSignature:return c.languages.CompletionItemKind.Function;case k.enum:return c.languages.CompletionItemKind.Enum;case k.module:return c.languages.CompletionItemKind.Module;case k.class:return c.languages.CompletionItemKind.Class;case k.interface:return c.languages.CompletionItemKind.Interface;case k.warning:return c.languages.CompletionItemKind.File}return c.languages.CompletionItemKind.Property}static createDocumentationString(t){let e=d(t.documentation);if(t.tags)for(const n of t.tags)e+=`\n\n${w(n)}`;return e}};function w(t){let e=`*@${t.name}*`;if("param"===t.name&&t.text){const[n,...r]=t.text;e+=`\`${n.text}\``,r.length>0&&(e+=` — ${r.map((t=>t.text)).join(" ")}`)}else Array.isArray(t.text)?e+=` — ${t.text.map((t=>t.text)).join(" ")}`:t.text&&(e+=` — ${t.text}`);return e}var b=class extends f{signatureHelpTriggerCharacters=["(",","];static _toSignatureHelpTriggerReason(t){switch(t.triggerKind){case c.languages.SignatureHelpTriggerKind.TriggerCharacter:return t.triggerCharacter?t.isRetrigger?{kind:"retrigger",triggerCharacter:t.triggerCharacter}:{kind:"characterTyped",triggerCharacter:t.triggerCharacter}:{kind:"invoked"};case c.languages.SignatureHelpTriggerKind.ContentChange:return t.isRetrigger?{kind:"retrigger"}:{kind:"invoked"};default:return{kind:"invoked"}}}async provideSignatureHelp(t,e,n,r){const i=t.uri,s=t.getOffsetAt(e),a=await this._worker(i);if(t.isDisposed())return;const o=await a.getSignatureHelpItems(i.toString(),s,{triggerReason:b._toSignatureHelpTriggerReason(r)});if(!o||t.isDisposed())return;const c={activeSignature:o.selectedItemIndex,activeParameter:o.argumentIndex,signatures:[]};return o.items.forEach((t=>{const e={label:"",parameters:[]};e.documentation={value:d(t.documentation)},e.label+=d(t.prefixDisplayParts),t.parameters.forEach(((n,r,i)=>{const s=d(n.displayParts),a={label:s,documentation:{value:d(n.documentation)}};e.label+=s,e.parameters.push(a),r<i.length-1&&(e.label+=d(t.separatorDisplayParts))})),e.label+=d(t.suffixDisplayParts),c.signatures.push(e)})),{value:c,dispose(){}}}},v=class extends f{async provideHover(t,e,n){const r=t.uri,i=t.getOffsetAt(e),s=await this._worker(r);if(t.isDisposed())return;const a=await s.getQuickInfoAtPosition(r.toString(),i);if(!a||t.isDisposed())return;const o=d(a.documentation),c=a.tags?a.tags.map((t=>w(t))).join(" \n\n"):"",u=d(a.displayParts);return{range:this._textSpanToRange(t,a.textSpan),contents:[{value:"```typescript\n"+u+"\n```\n"},{value:o+(c?"\n\n"+c:"")}]}}},y=class extends f{async provideDocumentHighlights(t,e,n){const r=t.uri,i=t.getOffsetAt(e),s=await this._worker(r);if(t.isDisposed())return;const a=await s.getDocumentHighlights(r.toString(),i,[r.toString()]);return a&&!t.isDisposed()?a.flatMap((e=>e.highlightSpans.map((e=>({range:this._textSpanToRange(t,e.textSpan),kind:"writtenReference"===e.kind?c.languages.DocumentHighlightKind.Write:c.languages.DocumentHighlightKind.Text}))))):void 0}},x=class extends f{constructor(t,e){super(e),this._libFiles=t}async provideDefinition(t,e,n){const r=t.uri,i=t.getOffsetAt(e),s=await this._worker(r);if(t.isDisposed())return;const a=await s.getDefinitionAtPosition(r.toString(),i);if(!a||t.isDisposed())return;if(await this._libFiles.fetchLibFilesIfNecessary(a.map((t=>c.Uri.parse(t.fileName)))),t.isDisposed())return;const o=[];for(let t of a){const e=this._libFiles.getOrCreateModel(t.fileName);e&&o.push({uri:e.uri,range:this._textSpanToRange(e,t.textSpan)})}return o}},S=class extends f{constructor(t,e){super(e),this._libFiles=t}async provideReferences(t,e,n,r){const i=t.uri,s=t.getOffsetAt(e),a=await this._worker(i);if(t.isDisposed())return;const o=await a.getReferencesAtPosition(i.toString(),s);if(!o||t.isDisposed())return;if(await this._libFiles.fetchLibFilesIfNecessary(o.map((t=>c.Uri.parse(t.fileName)))),t.isDisposed())return;const u=[];for(let t of o){const e=this._libFiles.getOrCreateModel(t.fileName);e&&u.push({uri:e.uri,range:this._textSpanToRange(e,t.textSpan)})}return u}},C=class extends f{async provideDocumentSymbols(t,e){const n=t.uri,r=await this._worker(n);if(t.isDisposed())return;const i=await r.getNavigationTree(n.toString());if(!i||t.isDisposed())return;const s=(e,n)=>({name:e.text,detail:"",kind:N[e.kind]||c.languages.SymbolKind.Variable,range:this._textSpanToRange(t,e.spans[0]),selectionRange:this._textSpanToRange(t,e.spans[0]),tags:[],children:e.childItems?.map((t=>s(t,e.text))),containerName:n});return i.childItems?i.childItems.map((t=>s(t))):[]}},k=class{};o(k,"unknown",""),o(k,"keyword","keyword"),o(k,"script","script"),o(k,"module","module"),o(k,"class","class"),o(k,"interface","interface"),o(k,"type","type"),o(k,"enum","enum"),o(k,"variable","var"),o(k,"localVariable","local var"),o(k,"function","function"),o(k,"localFunction","local function"),o(k,"memberFunction","method"),o(k,"memberGetAccessor","getter"),o(k,"memberSetAccessor","setter"),o(k,"memberVariable","property"),o(k,"constructorImplementation","constructor"),o(k,"callSignature","call"),o(k,"indexSignature","index"),o(k,"constructSignature","construct"),o(k,"parameter","parameter"),o(k,"typeParameter","type parameter"),o(k,"primitiveType","primitive type"),o(k,"label","label"),o(k,"alias","alias"),o(k,"const","const"),o(k,"let","let"),o(k,"warning","warning");var N=Object.create(null);N[k.module]=c.languages.SymbolKind.Module,N[k.class]=c.languages.SymbolKind.Class,N[k.enum]=c.languages.SymbolKind.Enum,N[k.interface]=c.languages.SymbolKind.Interface,N[k.memberFunction]=c.languages.SymbolKind.Method,N[k.memberVariable]=c.languages.SymbolKind.Property,N[k.memberGetAccessor]=c.languages.SymbolKind.Property,N[k.memberSetAccessor]=c.languages.SymbolKind.Property,N[k.variable]=c.languages.SymbolKind.Variable,N[k.const]=c.languages.SymbolKind.Variable,N[k.localVariable]=c.languages.SymbolKind.Variable,N[k.variable]=c.languages.SymbolKind.Variable,N[k.function]=c.languages.SymbolKind.Function,N[k.localFunction]=c.languages.SymbolKind.Function;var _,I,F=class extends f{static _convertOptions(t){return{ConvertTabsToSpaces:t.insertSpaces,TabSize:t.tabSize,IndentSize:t.tabSize,IndentStyle:2,NewLineCharacter:"\n",InsertSpaceAfterCommaDelimiter:!0,InsertSpaceAfterSemicolonInForStatements:!0,InsertSpaceBeforeAndAfterBinaryOperators:!0,InsertSpaceAfterKeywordsInControlFlowStatements:!0,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:!0,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,PlaceOpenBraceOnNewLineForControlBlocks:!1,PlaceOpenBraceOnNewLineForFunctions:!1}}_convertTextChanges(t,e){return{text:e.newText,range:this._textSpanToRange(t,e.span)}}},L=class extends F{canFormatMultipleRanges=!1;async provideDocumentRangeFormattingEdits(t,e,n,r){const i=t.uri,s=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn}),a=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn}),o=await this._worker(i);if(t.isDisposed())return;const c=await o.getFormattingEditsForRange(i.toString(),s,a,F._convertOptions(n));return c&&!t.isDisposed()?c.map((e=>this._convertTextChanges(t,e))):void 0}},O=class extends F{get autoFormatTriggerCharacters(){return[";","}","\n"]}async provideOnTypeFormattingEdits(t,e,n,r,i){const s=t.uri,a=t.getOffsetAt(e),o=await this._worker(s);if(t.isDisposed())return;const c=await o.getFormattingEditsAfterKeystroke(s.toString(),a,n,F._convertOptions(r));return c&&!t.isDisposed()?c.map((e=>this._convertTextChanges(t,e))):void 0}},T=class extends F{async provideCodeActions(t,e,n,r){const i=t.uri,s=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn}),a=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn}),o=F._convertOptions(t.getOptions()),c=n.markers.filter((t=>t.code)).map((t=>t.code)).map(Number),u=await this._worker(i);if(t.isDisposed())return;const l=await u.getCodeFixesAtPosition(i.toString(),s,a,c,o);return!l||t.isDisposed()?{actions:[],dispose:()=>{}}:{actions:l.filter((t=>0===t.changes.filter((t=>t.isNewFile)).length)).map((e=>this._tsCodeFixActionToMonacoCodeAction(t,n,e))),dispose:()=>{}}}_tsCodeFixActionToMonacoCodeAction(t,e,n){const r=[];for(const e of n.changes)for(const n of e.textChanges)r.push({resource:t.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(t,n.span),text:n.newText}});return{title:n.description,edit:{edits:r},diagnostics:e.markers,kind:"quickfix"}}},A=class extends f{constructor(t,e){super(e),this._libFiles=t}async provideRenameEdits(t,e,n,r){const i=t.uri,s=i.toString(),a=t.getOffsetAt(e),o=await this._worker(i);if(t.isDisposed())return;const c=await o.getRenameInfo(s,a,{allowRenameOfImportPath:!1});if(!1===c.canRename)return{edits:[],rejectReason:c.localizedErrorMessage};if(void 0!==c.fileToRename)throw new Error("Renaming files is not supported.");const u=await o.findRenameLocations(s,a,!1,!1,!1);if(!u||t.isDisposed())return;const l=[];for(const t of u){const e=this._libFiles.getOrCreateModel(t.fileName);if(!e)throw new Error(`Unknown file ${t.fileName}.`);l.push({resource:e.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(e,t.textSpan),text:n}})}return{edits:l}}},R=class extends f{async provideInlayHints(t,e,n){const r=t.uri,i=r.toString(),s=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn}),a=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn}),o=await this._worker(r);return t.isDisposed()?null:{hints:(await o.provideInlayHints(i,s,a)).map((e=>({...e,label:e.text,position:t.getPositionAt(e.position),kind:this._convertHintKind(e.kind)}))),dispose:()=>{}}}_convertHintKind(t){return"Parameter"===t?c.languages.InlayHintKind.Parameter:c.languages.InlayHintKind.Type}};function P(t){I=E(t,"typescript")}function j(t){_=E(t,"javascript")}function B(){return new Promise(((t,e)=>{if(!_)return e("JavaScript not registered!");t(_)}))}function D(){return new Promise(((t,e)=>{if(!I)return e("TypeScript not registered!");t(I)}))}function E(t,e){const n=[],r=new u(e,t),i=(...t)=>r.getLanguageServiceWorker(...t),s=new m(i);return function(){const{modeConfiguration:r}=t;!function(t){for(;t.length;)t.pop().dispose()}(n),r.completionItems&&n.push(c.languages.registerCompletionItemProvider(e,new g(i))),r.signatureHelp&&n.push(c.languages.registerSignatureHelpProvider(e,new b(i))),r.hovers&&n.push(c.languages.registerHoverProvider(e,new v(i))),r.documentHighlights&&n.push(c.languages.registerDocumentHighlightProvider(e,new y(i))),r.definitions&&n.push(c.languages.registerDefinitionProvider(e,new x(s,i))),r.references&&n.push(c.languages.registerReferenceProvider(e,new S(s,i))),r.documentSymbols&&n.push(c.languages.registerDocumentSymbolProvider(e,new C(i))),r.rename&&n.push(c.languages.registerRenameProvider(e,new A(s,i))),r.documentRangeFormattingEdits&&n.push(c.languages.registerDocumentRangeFormattingEditProvider(e,new L(i))),r.onTypeFormattingEdits&&n.push(c.languages.registerOnTypeFormattingEditProvider(e,new O(i))),r.codeActions&&n.push(c.languages.registerCodeActionProvider(e,new T(i))),r.inlayHints&&n.push(c.languages.registerInlayHintsProvider(e,new R(i))),r.diagnostics&&n.push(new p(s,t,e,i))}(),i}export{f as Adapter,T as CodeActionAdaptor,x as DefinitionAdapter,p as DiagnosticsAdapter,y as DocumentHighlightAdapter,L as FormatAdapter,F as FormatHelper,O as FormatOnTypeAdapter,R as InlayHintsAdapter,k as Kind,m as LibFiles,C as OutlineAdapter,v as QuickInfoAdapter,S as ReferenceAdapter,A as RenameAdapter,b as SignatureHelpAdapter,g as SuggestAdapter,u as WorkerManager,h as flattenDiagnosticMessageText,B as getJavaScriptWorker,D as getTypeScriptWorker,j as setupJavaScript,P as setupTypeScript}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
|
+
* See https://js.arcgis.com/4.31/esri/copyright.txt for details.
|
|
4
|
+
* v4.31.0-next.21
|
|
5
|
+
*/
|
|
6
|
+
import{r as e,h as i,H as s,a}from"./p-57b8bcd7.js";import{u as o,s as t}from"./p-f2d64a9d.js";import{o as r}from"./p-d7d1f130.js";const l=class{constructor(i){e(this,i),this.manager=o(this),this._modelId=r(),this._insertAsSnippet=e=>{this._codeEditorElt?.insertSnippet(e.detail).catch(console.error)},this._preparing=!1,this._editorProfile=void 0,this._activeAction=void 0,this._apiLibrary=void 0,this.profile=void 0}_profileChanged(){this._updateSqlExprDefaults().catch(console.error)}async _updateSqlExprDefaults(){this._preparing=!0;try{await t.setProfileForModel(this._modelId,this.profile),this._apiLibrary=await t.getApiLibrary(this._modelId)}catch{this._editorProfile=void 0}finally{this._preparing=!1}}_setActiveAction(e){this._activeAction=e}_handleActionClick(e){this._setActiveAction(e.target.dataset.panelName)}async componentWillLoad(){await this._updateSqlExprDefaults().catch(console.error)}disconnectedCallback(){t.disposeForModel(this._modelId)}render(){return i(s,{key:"67f7ebf7a28a8ffc3fe967721389d45c4e2003a1"},i("div",{key:"b3bf4ec2a8d04105e97489593ccec95cd33237f0",class:"flex-row flex-adjustable"},i("div",{key:"fdac47e22baf64c72f786f9e09b637050f417f94",class:"flex-column flex-adjustable"},i("arcgis-code-editor",{key:"f4151dd39ec3523907cd907ebb7558e05bca9cc1",language:"arcgis-sql-expression",modelId:this._modelId,ref:e=>this._codeEditorElt=e})),"fields"===this._activeAction&&i("arcgis-sql-expression-fields",{key:"aa0e5d88429d4bf865b9adc506028efefec1a73a",class:"side-panel flex-panel border-inline-start",loading:this._preparing,modelId:this._modelId,"data-panel-name":"none",onArcgisFieldSelected:this._insertAsSnippet,onArcgisClose:()=>this._setActiveAction(void 0)}),"functions"===this._activeAction&&i("arcgis-language-api-panel",{key:"7826dbb1b08894c6c6385806a3aef6cff77395d0",class:"side-panel flex-panel border-inline-start",onArcgisItemSelected:this._insertAsSnippet,onArcgisClose:()=>this._setActiveAction(void 0),loading:this._preparing,apiLibrary:this._apiLibrary,"data-panel-name":"none"}),i("calcite-action-bar",{key:"ee618d666b70405495627a9d15238e8723c6f961",class:"side-action-bar border-inline-start",expanded:!1,position:"end"},i("calcite-action",{key:"2c828df5dded6347e13e59ba9e313824baa606ff",id:"fields-action",text:"Fields",icon:"profile-variables",active:"fields"===this._activeAction,"data-panel-name":"fields",onClick:e=>this._handleActionClick(e)}),i("calcite-action",{key:"eab785c5b14cadeb5047db1957134f5accfedc76",id:"functions-action",text:"Functions",icon:"function",active:"functions"===this._activeAction,"data-panel-name":"functions",onClick:e=>this._handleActionClick(e)}))))}static get assetsDirs(){return["assets"]}get el(){return a(this)}static get watchers(){return{profile:["_profileChanged"]}}};l.style="arcgis-sql-expression-editor{display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid var(--calcite-color-border-3);box-sizing:border-box;background-color:var(--calcite-color-foreground-1);height:100%}arcgis-sql-expression-editor .flex-adjustable{flex:1 1 auto;overflow:hidden}arcgis-sql-expression-editor .flex-panel{flex:1 0 auto}arcgis-sql-expression-editor .position-relative{position:relative}arcgis-sql-expression-editor .flex-row{display:flex;flex-direction:row;overflow:hidden}arcgis-sql-expression-editor .flex-column{display:flex;flex-direction:column;overflow:hidden}arcgis-sql-expression-editor .border-inline-start{border-inline-start:1px solid var(--calcite-color-border-3);box-sizing:border-box}arcgis-sql-expression-editor .border-inline-end{border-inline-end:1px solid var(--calcite-color-border-3);box-sizing:border-box}arcgis-sql-expression-editor .side-action-bar{max-width:25%}arcgis-sql-expression-editor .side-panel{max-width:45%;width:600px}arcgis-sql-expression-editor .side-panel calcite-flow{height:100%}";export{l as arcgis_sql_expression_editor}
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
|
+
* See https://js.arcgis.com/4.31/esri/copyright.txt for details.
|
|
4
|
+
* v4.31.0-next.21
|
|
5
|
+
*/
|
|
6
|
+
'use strict';
|
|
7
|
+
|
|
8
|
+
const languageDefaultsBase = require('./language-defaults-base-57b37f9f.js');
|
|
9
|
+
const index = require('./index-4b7880ab.js');
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Returns the arcade diagnostic service.
|
|
13
|
+
* Example:
|
|
14
|
+
* ```ts
|
|
15
|
+
* const diagnosticService = await getArcadeDiagnosticService();
|
|
16
|
+
* diagnosticService.onDidChangeDiagnostics(({uri, diaganostics }) => {
|
|
17
|
+
* // Filter the diagnostics for the uri of interest
|
|
18
|
+
* // Do something with the diagnostics
|
|
19
|
+
* });
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
async function getArcadeDiagnosticService() {
|
|
23
|
+
const mode = await getMode();
|
|
24
|
+
return mode.getArcadeDiagnosticService();
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Returns the arcade worker for the model.
|
|
28
|
+
* Example:
|
|
29
|
+
* ```ts
|
|
30
|
+
* const arcadeWorker = await getArcadeWorker(model.uri);
|
|
31
|
+
* ```
|
|
32
|
+
* @returns arcade worker
|
|
33
|
+
*/
|
|
34
|
+
async function getArcadeWorker(uri) {
|
|
35
|
+
const mode = await getMode();
|
|
36
|
+
return await mode.getArcadeWorker(uri);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Request the arcade mode
|
|
40
|
+
* @returns arcade mode module
|
|
41
|
+
*/
|
|
42
|
+
async function getMode() {
|
|
43
|
+
return await Promise.resolve().then(function () { return require('./arcade-mode-cc08d9cd.js'); });
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// #region convert editor profile to apiProfile
|
|
47
|
+
/**
|
|
48
|
+
* Converts an editor profile to an api profile.
|
|
49
|
+
* The api profile is an optimized version of the editor profile designed for minimal data transfer between the main thread and the worker.
|
|
50
|
+
*/
|
|
51
|
+
async function arcadeEditorToApiProfile(editorProfile) {
|
|
52
|
+
const { apiVersion, bundles, hiddenApiItems } = editorProfile.toEditorProfileDefinition();
|
|
53
|
+
const variables = await variablesToLSVariable(editorProfile.dictionaryVariables);
|
|
54
|
+
return { apiVersion, bundles, variables, hiddenApiItems: hiddenApiItems?.map((s) => s.toLowerCase()) };
|
|
55
|
+
}
|
|
56
|
+
async function variablesToLSVariable(editorVariables, kind = languageDefaultsBase.main.exports.CompletionItemKind.Variable) {
|
|
57
|
+
return await Promise.all(editorVariables.map(async (editorVariable) => {
|
|
58
|
+
switch (editorVariable.type) {
|
|
59
|
+
case "dictionary":
|
|
60
|
+
return await dictionaryToLSDictionary(editorVariable, kind);
|
|
61
|
+
case "feature":
|
|
62
|
+
return await featureToLSFeature(editorVariable, kind);
|
|
63
|
+
default:
|
|
64
|
+
return variableToLSVariable(editorVariable, kind);
|
|
65
|
+
}
|
|
66
|
+
}));
|
|
67
|
+
}
|
|
68
|
+
function variableToLSVariable(editorVariable, kind) {
|
|
69
|
+
const { name, type } = editorVariable;
|
|
70
|
+
const description = editorVariable.getDescription();
|
|
71
|
+
return {
|
|
72
|
+
name,
|
|
73
|
+
description,
|
|
74
|
+
type,
|
|
75
|
+
completion: {
|
|
76
|
+
label: name,
|
|
77
|
+
detail: name,
|
|
78
|
+
insertText: name,
|
|
79
|
+
insertTextMode: languageDefaultsBase.main.exports.InsertTextMode.asIs,
|
|
80
|
+
insertTextFormat: languageDefaultsBase.main.exports.InsertTextFormat.PlainText,
|
|
81
|
+
kind,
|
|
82
|
+
documentation: { kind: "markdown", value: description },
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
async function featureToLSFeature(editorFeature, kind) {
|
|
87
|
+
// Get the source for the definition
|
|
88
|
+
const source = await editorFeature.loadSource();
|
|
89
|
+
const { name } = editorFeature;
|
|
90
|
+
const description = editorFeature.getDescription();
|
|
91
|
+
const resultCompletion = {
|
|
92
|
+
label: name,
|
|
93
|
+
detail: name,
|
|
94
|
+
insertText: name,
|
|
95
|
+
insertTextMode: languageDefaultsBase.main.exports.InsertTextMode.asIs,
|
|
96
|
+
insertTextFormat: languageDefaultsBase.main.exports.InsertTextFormat.PlainText,
|
|
97
|
+
kind,
|
|
98
|
+
};
|
|
99
|
+
const result = {
|
|
100
|
+
name,
|
|
101
|
+
description,
|
|
102
|
+
type: "dictionary",
|
|
103
|
+
properties: [],
|
|
104
|
+
completion: resultCompletion,
|
|
105
|
+
};
|
|
106
|
+
// No source definition, then it will be a feature without any known fields
|
|
107
|
+
if (!source) {
|
|
108
|
+
return result;
|
|
109
|
+
}
|
|
110
|
+
// Create properties for the fields and the aliases
|
|
111
|
+
// Also improve the feature completion documentation
|
|
112
|
+
const [properties, featureCompletionDescription] = languageDefaultsBase.fieldsToProfileValues(source.fields, description, true);
|
|
113
|
+
result.properties = properties;
|
|
114
|
+
resultCompletion.documentation = { kind: "markdown", value: featureCompletionDescription };
|
|
115
|
+
return result;
|
|
116
|
+
}
|
|
117
|
+
async function dictionaryToLSDictionary(editorDictionary, kind) {
|
|
118
|
+
const { name, dictionaryVariables: variables } = editorDictionary;
|
|
119
|
+
const description = editorDictionary.getDescription();
|
|
120
|
+
const completionDescription = variables.reduce((previous, p) => {
|
|
121
|
+
if (previous !== "") {
|
|
122
|
+
previous += " \n \n";
|
|
123
|
+
}
|
|
124
|
+
previous += `**${p.name}** \n${p.type}`;
|
|
125
|
+
const description = p.getDescription();
|
|
126
|
+
if (description) {
|
|
127
|
+
previous += ` \n${description}`;
|
|
128
|
+
}
|
|
129
|
+
return previous;
|
|
130
|
+
}, description);
|
|
131
|
+
return {
|
|
132
|
+
name,
|
|
133
|
+
description,
|
|
134
|
+
type: "dictionary",
|
|
135
|
+
properties: await variablesToLSVariable(variables, languageDefaultsBase.main.exports.CompletionItemKind.Field),
|
|
136
|
+
completion: {
|
|
137
|
+
label: name,
|
|
138
|
+
detail: name,
|
|
139
|
+
insertText: name,
|
|
140
|
+
insertTextMode: languageDefaultsBase.main.exports.InsertTextMode.asIs,
|
|
141
|
+
insertTextFormat: languageDefaultsBase.main.exports.InsertTextFormat.PlainText,
|
|
142
|
+
kind,
|
|
143
|
+
documentation: { kind: "markdown", value: completionDescription },
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
// #endregion
|
|
148
|
+
// #region predefined profile to editor profile definition
|
|
149
|
+
/**
|
|
150
|
+
* Get a PredefinedProfile for a locale. If not already loaded then fetch it.
|
|
151
|
+
* If the locale doesn't exist or the locale profile file doesn't exist then returns
|
|
152
|
+
* the english version of the profile.
|
|
153
|
+
*/
|
|
154
|
+
async function getSdkPredefinedProfiles(locale = "en") {
|
|
155
|
+
const profiles = sdkPredefinedProfilesMap.get(locale);
|
|
156
|
+
if (profiles) {
|
|
157
|
+
return profiles;
|
|
158
|
+
}
|
|
159
|
+
if (!languageDefaultsBase.supportedLocales.has(locale)) {
|
|
160
|
+
return await getSdkPredefinedProfiles("en");
|
|
161
|
+
}
|
|
162
|
+
try {
|
|
163
|
+
const response = await fetch(index.getAssetPath(`./assets/arcade-language/profiles/arcade-profiles.t9n.${locale}.json`));
|
|
164
|
+
if (response.ok) {
|
|
165
|
+
return cacheSdkPredefinedProfiles(locale, (await response.json()));
|
|
166
|
+
}
|
|
167
|
+
if (locale === "en") {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
170
|
+
return await getSdkPredefinedProfiles("en");
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
const sdkPredefinedProfilesMap = new Map();
|
|
177
|
+
/**
|
|
178
|
+
* Convert a stored profile into a PredefinedProfile and add it to the in-memory
|
|
179
|
+
* Map of profiles per locale.
|
|
180
|
+
*/
|
|
181
|
+
function cacheSdkPredefinedProfiles(locale, profiles) {
|
|
182
|
+
const map = new Map();
|
|
183
|
+
profiles.forEach((profile) => {
|
|
184
|
+
map.set(profile.id, profile);
|
|
185
|
+
});
|
|
186
|
+
sdkPredefinedProfilesMap.set(locale, map);
|
|
187
|
+
return map;
|
|
188
|
+
}
|
|
189
|
+
async function getSdkPredefinedProfile(id, locale = "en") {
|
|
190
|
+
const profiles = await getSdkPredefinedProfiles(locale);
|
|
191
|
+
return profiles?.get(id) ?? null;
|
|
192
|
+
}
|
|
193
|
+
function isExtendedPredefinedProfileDefinition(item) {
|
|
194
|
+
return !!item && typeof item === "object" && "additionalVariables" in item && Array.isArray(item.additionalVariables);
|
|
195
|
+
}
|
|
196
|
+
function convertApiVariables(variables) {
|
|
197
|
+
return variables?.map(convertApiVariable);
|
|
198
|
+
}
|
|
199
|
+
function convertApiVariable(variable) {
|
|
200
|
+
switch (variable.type) {
|
|
201
|
+
case "dictionary":
|
|
202
|
+
return {
|
|
203
|
+
...variable,
|
|
204
|
+
type: variable.type,
|
|
205
|
+
properties: convertApiVariables(variable.properties),
|
|
206
|
+
};
|
|
207
|
+
case "array": {
|
|
208
|
+
return {
|
|
209
|
+
...variable,
|
|
210
|
+
type: variable.type,
|
|
211
|
+
elementType: { type: "number", name: "number" },
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
default:
|
|
215
|
+
return { ...variable, type: variable.type };
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
async function convertToEditorProfileDefinition(predefinedProfile, locale = "en") {
|
|
219
|
+
if (!languageDefaultsBase.isPredefinedProfile(predefinedProfile)) {
|
|
220
|
+
return undefined;
|
|
221
|
+
}
|
|
222
|
+
const sdkPredefinedProfile = await getSdkPredefinedProfile(predefinedProfile.id, locale);
|
|
223
|
+
if (!sdkPredefinedProfile) {
|
|
224
|
+
return undefined;
|
|
225
|
+
}
|
|
226
|
+
const editorProfile = {
|
|
227
|
+
bundles: [...sdkPredefinedProfile.bundles],
|
|
228
|
+
variables: [],
|
|
229
|
+
hiddenApiItems: predefinedProfile.hiddenApiItems?.map((s) => s.toLowerCase()),
|
|
230
|
+
};
|
|
231
|
+
// Merge the SDK variables' definitions/properties with the predefined profile definitions.
|
|
232
|
+
sdkPredefinedProfile.variables.forEach((predefinedVariable) => {
|
|
233
|
+
// Don't include disabled variables
|
|
234
|
+
if (predefinedProfile.disabledVariables?.includes(predefinedVariable.name)) {
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
// Try to get a definition from the predefined profile, for the variable that needs one.
|
|
238
|
+
const definition = predefinedProfile.definitions[predefinedVariable.name];
|
|
239
|
+
// Note: Something is weird with TS. The sdkVariables are being casted to the wrong type
|
|
240
|
+
// despite the type checking from the switch statement.
|
|
241
|
+
switch (predefinedVariable.type) {
|
|
242
|
+
case "dictionary": {
|
|
243
|
+
// For dictionary, we support properties overrride
|
|
244
|
+
return editorProfile.variables.push(convertApiVariable({
|
|
245
|
+
...predefinedVariable,
|
|
246
|
+
type: predefinedVariable.type,
|
|
247
|
+
properties: Array.isArray(definition) ? [...definition] : predefinedVariable.properties,
|
|
248
|
+
}));
|
|
249
|
+
}
|
|
250
|
+
case "feature":
|
|
251
|
+
// If the definition is not valid, then we don't include it.
|
|
252
|
+
if (!languageDefaultsBase.isFeatureDefinition(definition)) {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
return editorProfile.variables.push({ ...predefinedVariable, type: predefinedVariable.type, definition });
|
|
256
|
+
case "featureSet":
|
|
257
|
+
// If the definition is not valid, then we don't include it.
|
|
258
|
+
if (!languageDefaultsBase.isFeatureSetDefinition(definition)) {
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
261
|
+
return editorProfile.variables.push({ ...predefinedVariable, type: predefinedVariable.type, definition });
|
|
262
|
+
case "featureSetCollection":
|
|
263
|
+
// If the definition is not valid, then we don't include it.
|
|
264
|
+
if (!languageDefaultsBase.isFeatureSetCollectionDefinition(definition)) {
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
267
|
+
return editorProfile.variables.push({ ...predefinedVariable, type: predefinedVariable.type, definition });
|
|
268
|
+
default:
|
|
269
|
+
return editorProfile.variables.push(convertApiVariable(predefinedVariable));
|
|
270
|
+
}
|
|
271
|
+
});
|
|
272
|
+
if (isExtendedPredefinedProfileDefinition(predefinedProfile)) {
|
|
273
|
+
editorProfile.variables.push(...(predefinedProfile.additionalVariables ?? []));
|
|
274
|
+
}
|
|
275
|
+
return editorProfile;
|
|
276
|
+
}
|
|
277
|
+
// #endregion
|
|
278
|
+
|
|
279
|
+
const arcadeLanguageId = "arcade";
|
|
280
|
+
class ArcadeLanguageServiceDefaults extends languageDefaultsBase.LanguageDefaultsBase {
|
|
281
|
+
constructor() {
|
|
282
|
+
super(...arguments);
|
|
283
|
+
this._languageId = arcadeLanguageId;
|
|
284
|
+
this._languageOptions = {};
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* Create an EditorProfile for the given model id using the given definition and locale.
|
|
288
|
+
* The EditorProfile is used by the the Arcade Language service as well by the cosing components.
|
|
289
|
+
* The definition can be a pre-defined profile or an editor profile definition.
|
|
290
|
+
* If the locale is not provided then the 'en' locale is used.
|
|
291
|
+
* @param modelId The model id for which to create the context.
|
|
292
|
+
* @param definition The definition to use for the model context.
|
|
293
|
+
* @param locale The locale to use for the model context.
|
|
294
|
+
* @returns The EditorProfile for the model.
|
|
295
|
+
*/
|
|
296
|
+
async setProfileForModel(modelId, definition, apiContext = { locale: "en" }) {
|
|
297
|
+
// Convert pre-defined profile to a runtime profile
|
|
298
|
+
if (languageDefaultsBase.isPredefinedProfile(definition)) {
|
|
299
|
+
definition = await convertToEditorProfileDefinition(definition, apiContext.locale);
|
|
300
|
+
}
|
|
301
|
+
const profileStrings = await languageDefaultsBase.fetchT9nStringsBundle(apiContext.locale, index.getAssetPath("./assets/arcade-language/t9n"), "profile.t9n.");
|
|
302
|
+
if (!profileStrings) {
|
|
303
|
+
throw new Error(`Failed to load the language bundle for ${apiContext.locale}`);
|
|
304
|
+
}
|
|
305
|
+
this.disposeForModel(modelId);
|
|
306
|
+
const key = this._getApiKey(modelId);
|
|
307
|
+
const editorProfile = new languageDefaultsBase.EditorProfile(definition, profileStrings);
|
|
308
|
+
this._profileMap.set(key, editorProfile);
|
|
309
|
+
const apiProfile = await arcadeEditorToApiProfile(editorProfile);
|
|
310
|
+
this.updateApiContextForModel(modelId, {
|
|
311
|
+
locale: apiContext.locale,
|
|
312
|
+
profile: apiProfile,
|
|
313
|
+
snippets: apiContext.snippets,
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Set or update the Arcade language service options.
|
|
318
|
+
* @param languageOptions The language options to set.
|
|
319
|
+
*/
|
|
320
|
+
setLanguageOptions(languageOptions = {}) {
|
|
321
|
+
// Check if options have actually changed.
|
|
322
|
+
// Avoid restarting the worker when no updates.
|
|
323
|
+
// Today we only have the 'assetsPath' as a property
|
|
324
|
+
if (this._languageOptions.assetsPath === languageOptions.assetsPath) {
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
this._languageOptions = { ...this._languageOptions, ...languageOptions };
|
|
328
|
+
this._onDidChange.fire(this);
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Gets the API library for the given model id.
|
|
332
|
+
* @param modelId The model id for which to get the API library.
|
|
333
|
+
* @returns The API library for the model.
|
|
334
|
+
*/
|
|
335
|
+
async getApiLibrary(modelId) {
|
|
336
|
+
const uri = languageDefaultsBase.Uri.parse(modelId);
|
|
337
|
+
const worker = await getArcadeWorker(uri);
|
|
338
|
+
return await worker.getApiLibrary(this.getApiContextForModel(uri));
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
const arcadeDefaults = new ArcadeLanguageServiceDefaults();
|
|
342
|
+
const arcade = {
|
|
343
|
+
setProfileForModel: arcadeDefaults.setProfileForModel.bind(arcadeDefaults),
|
|
344
|
+
};
|
|
345
|
+
|
|
346
|
+
exports.arcade = arcade;
|
|
347
|
+
exports.arcadeDefaults = arcadeDefaults;
|
|
348
|
+
exports.getArcadeDiagnosticService = getArcadeDiagnosticService;
|
|
349
|
+
exports.getMode = getMode;
|