@adminide-stack/extension-api 5.0.1-alpha.0 → 5.0.1-alpha.8
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/lib/connections/jsonrpc2/connection.js +50 -49
- package/lib/connections/jsonrpc2/connection.js.map +1 -1
- package/lib/connections/jsonrpc2/connection.test.js +118 -120
- package/lib/connections/jsonrpc2/connection.test.js.map +1 -1
- package/lib/connections/jsonrpc2/events.js +3 -7
- package/lib/connections/jsonrpc2/events.js.map +1 -1
- package/lib/connections/jsonrpc2/index.js +5 -21
- package/lib/connections/jsonrpc2/index.js.map +1 -1
- package/lib/connections/jsonrpc2/linkedMap.js +3 -7
- package/lib/connections/jsonrpc2/linkedMap.js.map +1 -1
- package/lib/connections/jsonrpc2/linkedMap.test.js +15 -17
- package/lib/connections/jsonrpc2/linkedMap.test.js.map +1 -1
- package/lib/connections/jsonrpc2/messages.js +6 -13
- package/lib/connections/jsonrpc2/messages.js.map +1 -1
- package/lib/connections/jsonrpc2/test-helper.js +5 -10
- package/lib/connections/jsonrpc2/test-helper.js.map +1 -1
- package/lib/connections/jsonrpc2/trace.js +2 -6
- package/lib/connections/jsonrpc2/trace.js.map +1 -1
- package/lib/connections/jsonrpc2/transport.js +7 -12
- package/lib/connections/jsonrpc2/transport.js.map +1 -1
- package/lib/connections/jsonrpc2/transports/webWorker.js +4 -8
- package/lib/connections/jsonrpc2/transports/webWorker.js.map +1 -1
- package/lib/connections/proxy/index.js +1 -17
- package/lib/connections/proxy/index.js.map +1 -1
- package/lib/connections/proxy/proxy.js +6 -15
- package/lib/connections/proxy/proxy.js.map +1 -1
- package/lib/connections/proxy/proxy.test.js +13 -15
- package/lib/connections/proxy/proxy.test.js.map +1 -1
- package/lib/connections/remote-rpc/browser-remote-rpc.js +15 -19
- package/lib/connections/remote-rpc/browser-remote-rpc.js.map +1 -1
- package/lib/connections/remote-rpc/index.js +1 -17
- package/lib/connections/remote-rpc/index.js.map +1 -1
- package/lib/connections/remote-rpc/old-browser-remote-rpc.js +9 -13
- package/lib/connections/remote-rpc/old-browser-remote-rpc.js.map +1 -1
- package/lib/connections/remote-rpc/rxjs-websockets.js +8 -12
- package/lib/connections/remote-rpc/rxjs-websockets.js.map +1 -1
- package/lib/constants/action-types.js +4 -7
- package/lib/constants/action-types.js.map +1 -1
- package/lib/constants/index.js +2 -18
- package/lib/constants/index.js.map +1 -1
- package/lib/constants/types.js +1 -4
- package/lib/constants/types.js.map +1 -1
- package/lib/core/expr/evaluator.js +12 -19
- package/lib/core/expr/evaluator.js.map +1 -1
- package/lib/core/expr/evaluator.test.js +2 -4
- package/lib/core/expr/evaluator.test.js.map +1 -1
- package/lib/core/expr/index.js +3 -19
- package/lib/core/expr/index.js.map +1 -1
- package/lib/core/expr/lexer.js +8 -13
- package/lib/core/expr/lexer.js.map +1 -1
- package/lib/core/expr/parser.js +19 -24
- package/lib/core/expr/parser.js.map +1 -1
- package/lib/core/index.js +2 -18
- package/lib/core/index.js.map +1 -1
- package/lib/core/types/ext-host-types.js +10 -15
- package/lib/core/types/ext-host-types.js.map +1 -1
- package/lib/core/types/index.js +1 -17
- package/lib/core/types/index.js.map +1 -1
- package/lib/errors/errors.js +1 -5
- package/lib/errors/errors.js.map +1 -1
- package/lib/errors/index.js +1 -17
- package/lib/errors/index.js.map +1 -1
- package/lib/index.js +7 -23
- package/lib/index.js.map +1 -1
- package/lib/interfaces/command.js +1 -2
- package/lib/interfaces/configuration.js +1 -2
- package/lib/interfaces/connection.js +1 -2
- package/lib/interfaces/context.js +1 -2
- package/lib/interfaces/contributions/contribution-service.js +1 -2
- package/lib/interfaces/contributions/contribution.js +3 -6
- package/lib/interfaces/contributions/contribution.js.map +1 -1
- package/lib/interfaces/contributions/index.js +2 -18
- package/lib/interfaces/contributions/index.js.map +1 -1
- package/lib/interfaces/controller.js +1 -2
- package/lib/interfaces/errors.js +1 -2
- package/lib/interfaces/ext-services/contributon-registry.js +1 -2
- package/lib/interfaces/ext-services/ext-services.js +1 -2
- package/lib/interfaces/ext-services/extension-service.js +1 -2
- package/lib/interfaces/ext-services/index.js +8 -24
- package/lib/interfaces/ext-services/index.js.map +1 -1
- package/lib/interfaces/ext-services/model-service.js +1 -2
- package/lib/interfaces/ext-services/panel-view-registry.js +1 -2
- package/lib/interfaces/ext-services/settings-service.js +1 -2
- package/lib/interfaces/ext-services/view-service.js +1 -3
- package/lib/interfaces/ext-services/view-service.js.map +1 -1
- package/lib/interfaces/ext-services/viewer-service.js +1 -2
- package/lib/interfaces/ext-services/viewer-service.js.map +1 -1
- package/lib/interfaces/extension-manifest.js +1 -2
- package/lib/interfaces/extension.js +1 -2
- package/lib/interfaces/generated-models.js +105 -129
- package/lib/interfaces/generated-models.js.map +1 -1
- package/lib/interfaces/graphql.js +1 -4
- package/lib/interfaces/graphql.js.map +1 -1
- package/lib/interfaces/index.js +21 -37
- package/lib/interfaces/index.js.map +1 -1
- package/lib/interfaces/languages-types.js +1 -2
- package/lib/interfaces/model.js +1 -4
- package/lib/interfaces/model.js.map +1 -1
- package/lib/interfaces/plain-types.js +1 -2
- package/lib/interfaces/plain-types.js.map +1 -1
- package/lib/interfaces/plainTypes.js +1 -2
- package/lib/interfaces/platform-context.js +1 -2
- package/lib/interfaces/react-props/action-item.js +1 -2
- package/lib/interfaces/react-props/extension-controller.js +1 -2
- package/lib/interfaces/react-props/index.js +3 -19
- package/lib/interfaces/react-props/index.js.map +1 -1
- package/lib/interfaces/react-props/platform-context.js +1 -2
- package/lib/interfaces/registry-extension.js +1 -2
- package/lib/interfaces/settings.js +1 -2
- package/lib/interfaces/text-document.js +5 -10
- package/lib/interfaces/text-document.js.map +1 -1
- package/lib/interfaces/webview/index.js +3 -19
- package/lib/interfaces/webview/index.js.map +1 -1
- package/lib/interfaces/webview/webview-manager-service.js +1 -2
- package/lib/interfaces/webview/webview-port-mapping.js +1 -2
- package/lib/interfaces/webview/webview.js +2 -5
- package/lib/interfaces/webview/webview.js.map +1 -1
- package/lib/protocol/client.protocol.js +3 -6
- package/lib/protocol/client.protocol.js.map +1 -1
- package/lib/protocol/common.protocol.js +12 -17
- package/lib/protocol/common.protocol.js.map +1 -1
- package/lib/protocol/editor-missing-types.js +2 -5
- package/lib/protocol/editor-missing-types.js.map +1 -1
- package/lib/protocol/index.js +6 -22
- package/lib/protocol/index.js.map +1 -1
- package/lib/protocol/proxy-identifier.js +10 -17
- package/lib/protocol/proxy-identifier.js.map +1 -1
- package/lib/protocol/rpc-logger.js +1 -5
- package/lib/protocol/rpc-logger.js.map +1 -1
- package/lib/protocol/rpc-protocol.js +48 -55
- package/lib/protocol/rpc-protocol.js.map +1 -1
- package/lib/protocol/rpc-protocol.test.js +13 -15
- package/lib/protocol/rpc-protocol.test.js.map +1 -1
- package/lib/protocol/server.protocol.js +13 -16
- package/lib/protocol/server.protocol.js.map +1 -1
- package/lib/protocol/shared/editor.js +6 -11
- package/lib/protocol/shared/editor.js.map +1 -1
- package/lib/protocol/shared/tasks.js +1 -2
- package/lib/protocol/shared/tasks.js.map +1 -1
- package/lib/protocol/temporary-types.js +2 -5
- package/lib/protocol/temporary-types.js.map +1 -1
- package/lib/protocol/utils/index.js +1 -17
- package/lib/protocol/utils/index.js.map +1 -1
- package/lib/protocol/utils/lazy-promise.js +3 -7
- package/lib/protocol/utils/lazy-promise.js.map +1 -1
- package/lib/utils/errors.js +2 -7
- package/lib/utils/errors.js.map +1 -1
- package/lib/utils/extensions.js +3 -7
- package/lib/utils/extensions.js.map +1 -1
- package/lib/utils/helper.test.js +1 -5
- package/lib/utils/helper.test.js.map +1 -1
- package/lib/utils/index.js +7 -24
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/paths-util.js +17 -23
- package/lib/utils/paths-util.js.map +1 -1
- package/lib/utils/rxjs/combineLatestOrDefault.js +12 -16
- package/lib/utils/rxjs/combineLatestOrDefault.js.map +1 -1
- package/lib/utils/rxjs/combineLatestOrDefault.test.js +13 -15
- package/lib/utils/rxjs/combineLatestOrDefault.test.js.map +1 -1
- package/lib/utils/rxjs/index.js +1 -17
- package/lib/utils/rxjs/index.js.map +1 -1
- package/lib/utils/util.js +7 -15
- package/lib/utils/util.js.map +1 -1
- package/lib/worker-lib/MessageTypes.js +5 -8
- package/lib/worker-lib/MessageTypes.js.map +1 -1
- package/lib/worker-lib/index.js +2 -18
- package/lib/worker-lib/index.js.map +1 -1
- package/lib/worker-lib/webWorkerLink.js +10 -16
- package/lib/worker-lib/webWorkerLink.js.map +1 -1
- package/lib/worker-lib/workerUtils.js +16 -21
- package/lib/worker-lib/workerUtils.js.map +1 -1
- package/package.json +3 -3
@@ -1,18 +1,2 @@
|
|
1
|
-
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
-
}
|
8
|
-
Object.defineProperty(o, k2, desc);
|
9
|
-
}) : (function(o, m, k, k2) {
|
10
|
-
if (k2 === undefined) k2 = k;
|
11
|
-
o[k2] = m[k];
|
12
|
-
}));
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
-
};
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
__exportStar(require("./proxy"), exports);
|
1
|
+
export * from './proxy';
|
18
2
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connections/proxy/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connections/proxy/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
|
@@ -1,6 +1,3 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.handleServerProxyRequests = exports.handleServerProxyRequest = exports.handleRequests = exports.createProxy = exports.createExtensionProxy = exports.createProxyAndHandleRequests = void 0;
|
4
1
|
/**
|
5
2
|
*
|
6
3
|
* @param prefix
|
@@ -8,12 +5,11 @@ exports.handleServerProxyRequests = exports.handleServerProxyRequest = exports.h
|
|
8
5
|
* @param handler
|
9
6
|
* @return A proxy that translates method calls on itself to requests sent on the {@link connection}.
|
10
7
|
*/
|
11
|
-
function createProxyAndHandleRequests(prefix, connection, handler) {
|
8
|
+
export function createProxyAndHandleRequests(prefix, connection, handler) {
|
12
9
|
handleRequests(connection, prefix, handler);
|
13
10
|
return createProxy(connection, prefix);
|
14
11
|
}
|
15
|
-
|
16
|
-
function createExtensionProxy(connection, rpcId) {
|
12
|
+
export function createExtensionProxy(connection, rpcId) {
|
17
13
|
let handler = {
|
18
14
|
get: (target, name) => {
|
19
15
|
if (!target[name] && name[0] === '$') {
|
@@ -27,7 +23,6 @@ function createExtensionProxy(connection, rpcId) {
|
|
27
23
|
};
|
28
24
|
return new Proxy(Object.create(null), handler);
|
29
25
|
}
|
30
|
-
exports.createExtensionProxy = createExtensionProxy;
|
31
26
|
/**
|
32
27
|
* Creates a Proxy that translates method calls (whose name begins with "$") on the returned object to messages
|
33
28
|
* named `${prefix}/${name}` on the connectino.
|
@@ -35,7 +30,7 @@ exports.createExtensionProxy = createExtensionProxy;
|
|
35
30
|
* @param connection - The connection to send messages on when proxy methods are called.
|
36
31
|
* @param prefix - The name prefix for connection methods.
|
37
32
|
*/
|
38
|
-
function createProxy(connection, prefix) {
|
33
|
+
export function createProxy(connection, prefix) {
|
39
34
|
return new Proxy(Object.create(null), {
|
40
35
|
get: (target, name) => {
|
41
36
|
if (!target[name] && name[0] === '$') {
|
@@ -51,7 +46,6 @@ function createProxy(connection, prefix) {
|
|
51
46
|
},
|
52
47
|
});
|
53
48
|
}
|
54
|
-
exports.createProxy = createProxy;
|
55
49
|
/**
|
56
50
|
* Forwards all requests received on the connection to the corresponding method on the handler object. The
|
57
51
|
* connection method `${prefix}/${name}` corresponds to `${name}` method on the handler object.
|
@@ -63,7 +57,7 @@ exports.createProxy = createProxy;
|
|
63
57
|
* corresponding requests, or an object created with Object.create(null) (or otherwise with a null
|
64
58
|
* prototype) whose properties contain functions to be called.
|
65
59
|
*/
|
66
|
-
function handleRequests(connection, prefix, handler) {
|
60
|
+
export function handleRequests(connection, prefix, handler) {
|
67
61
|
// A class instance's methods are own, non-enumerable properties of its prototype.
|
68
62
|
const proto = Object.getPrototypeOf(handler) || handler;
|
69
63
|
for (const name of Object.getOwnPropertyNames(proto)) {
|
@@ -73,7 +67,6 @@ function handleRequests(connection, prefix, handler) {
|
|
73
67
|
}
|
74
68
|
}
|
75
69
|
}
|
76
|
-
exports.handleRequests = handleRequests;
|
77
70
|
/**
|
78
71
|
* Forwards all requests received on the connection to the corresponding method on the server side.
|
79
72
|
*
|
@@ -81,7 +74,7 @@ exports.handleRequests = handleRequests;
|
|
81
74
|
* @param extContext - Remote Context, usually for connecting to Server side providers
|
82
75
|
* @param identifier - Remote Actor Identifier.
|
83
76
|
*/
|
84
|
-
function handleServerProxyRequest(connection, remoteProtocol, identifier) {
|
77
|
+
export function handleServerProxyRequest(connection, remoteProtocol, identifier) {
|
85
78
|
const aProxy = remoteProtocol.getProxy(identifier);
|
86
79
|
connection.onRequest(`${identifier.sid}/*`, (args, signal, method) => {
|
87
80
|
const methodName = method.split('/')[1];
|
@@ -91,7 +84,6 @@ function handleServerProxyRequest(connection, remoteProtocol, identifier) {
|
|
91
84
|
return aProxy[methodName](...args, signal);
|
92
85
|
});
|
93
86
|
}
|
94
|
-
exports.handleServerProxyRequest = handleServerProxyRequest;
|
95
87
|
/**
|
96
88
|
* Forwards all requests received on the connection to the corresponding method on the server side.
|
97
89
|
*
|
@@ -99,10 +91,9 @@ exports.handleServerProxyRequest = handleServerProxyRequest;
|
|
99
91
|
* @param extContext - Remote Context, usually for connecting to Server side providers
|
100
92
|
* @param identifier - Remote Actor Identifier.
|
101
93
|
*/
|
102
|
-
function handleServerProxyRequests(connection, remoteProtocol, identifiers) {
|
94
|
+
export function handleServerProxyRequests(connection, remoteProtocol, identifiers) {
|
103
95
|
for (let i in identifiers) {
|
104
96
|
handleServerProxyRequest(connection, remoteProtocol, identifiers[i]);
|
105
97
|
}
|
106
98
|
}
|
107
|
-
exports.handleServerProxyRequests = handleServerProxyRequests;
|
108
99
|
//# sourceMappingURL=proxy.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../src/connections/proxy/proxy.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../src/connections/proxy/proxy.ts"],"names":[],"mappings":"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"}
|
@@ -1,19 +1,17 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
const test_helper_1 = require("../jsonrpc2/test-helper");
|
8
|
-
const proxy_1 = require("./proxy");
|
1
|
+
import * as assert from 'assert';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { bufferCount } from 'rxjs/operators';
|
4
|
+
import { createConnection } from '../jsonrpc2/connection';
|
5
|
+
import { createMessageTransports } from '../jsonrpc2/test-helper';
|
6
|
+
import { createProxy, handleRequests } from './proxy';
|
9
7
|
// import 'jest';
|
10
8
|
function createTestProxy(handler) {
|
11
9
|
Object.setPrototypeOf(handler, null);
|
12
|
-
const [clientTransports, serverTransports] =
|
13
|
-
const client =
|
14
|
-
const server =
|
15
|
-
const proxy =
|
16
|
-
|
10
|
+
const [clientTransports, serverTransports] = createMessageTransports();
|
11
|
+
const client = createConnection(clientTransports);
|
12
|
+
const server = createConnection(serverTransports);
|
13
|
+
const proxy = createProxy(client, 'prefix');
|
14
|
+
handleRequests(server, 'prefix', handler);
|
17
15
|
client.listen();
|
18
16
|
server.listen();
|
19
17
|
return proxy;
|
@@ -39,7 +37,7 @@ describe('Proxy', () => {
|
|
39
37
|
});
|
40
38
|
it('proxies Observables', async () => {
|
41
39
|
const proxy = createTestProxy({
|
42
|
-
$observe: (...args) => new
|
40
|
+
$observe: (...args) => new Observable(observer => {
|
43
41
|
for (const arg of args) {
|
44
42
|
observer.next(arg + 1);
|
45
43
|
}
|
@@ -48,7 +46,7 @@ describe('Proxy', () => {
|
|
48
46
|
});
|
49
47
|
assert.deepStrictEqual(await proxy
|
50
48
|
.$observe(1, 2, 3, 4)
|
51
|
-
.pipe(
|
49
|
+
.pipe(bufferCount(4))
|
52
50
|
.toPromise(), [2, 3, 4, 5]);
|
53
51
|
});
|
54
52
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"proxy.test.js","sourceRoot":"","sources":["../../../src/connections/proxy/proxy.test.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"proxy.test.js","sourceRoot":"","sources":["../../../src/connections/proxy/proxy.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,41 +1,38 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
const rxjs_websockets_1 = require("./rxjs-websockets");
|
8
|
-
const operators_1 = require("rxjs/operators");
|
9
|
-
class BrowserRemoteRPC {
|
1
|
+
import { QueueingSubject } from 'queueing-subject';
|
2
|
+
import { VSBuffer } from '@vscode-alt/monaco-editor/esm/vs/base/common/buffer';
|
3
|
+
import { Emitter } from '@vscode-alt/monaco-editor/esm/vs/base/common/event';
|
4
|
+
import websocketConnect, { normalClosureMessage } from './rxjs-websockets';
|
5
|
+
import { share, switchMap } from 'rxjs/operators';
|
6
|
+
export class BrowserRemoteRPC {
|
10
7
|
constructor(hostId = 2 /* HostIdentifier.BrowserExtHost */) {
|
11
|
-
this._onMessage = new
|
8
|
+
this._onMessage = new Emitter();
|
12
9
|
this._localHostId = hostId;
|
13
10
|
console.clear();
|
14
|
-
this.input$ = new
|
11
|
+
this.input$ = new QueueingSubject();
|
15
12
|
}
|
16
13
|
onMessage(event) {
|
17
14
|
return this._onMessage.event(event);
|
18
15
|
}
|
19
16
|
connect(url, makeWebSocket) {
|
20
|
-
const socket$ = (
|
17
|
+
const socket$ = websocketConnect(url, {
|
21
18
|
protocols: '',
|
22
19
|
makeWebSocket,
|
23
20
|
});
|
24
21
|
const messages$ = socket$.pipe(
|
25
22
|
// the observable produces a value once the websocket has been opened
|
26
|
-
|
23
|
+
switchMap((getResponses) => {
|
27
24
|
console.log('websocket opened');
|
28
25
|
return getResponses(this.input$);
|
29
|
-
}),
|
26
|
+
}), share());
|
30
27
|
messages$.subscribe((message) => {
|
31
28
|
const buff = new Uint8Array(message);
|
32
29
|
// @sri in future version of @vscode-alt/monaco-editor we don't need to do add `Buffer.from`
|
33
30
|
// noticed `Buffer` in browser will be polyfilled by webpack
|
34
|
-
const vsBuffer =
|
31
|
+
const vsBuffer = VSBuffer.wrap(Buffer.from(buff.buffer));
|
35
32
|
this._onMessage.fire(vsBuffer);
|
36
33
|
}, (error) => {
|
37
34
|
const { message } = error;
|
38
|
-
if (message ===
|
35
|
+
if (message === normalClosureMessage) {
|
39
36
|
console.log('server closed the websocket connection normally');
|
40
37
|
}
|
41
38
|
else {
|
@@ -48,15 +45,14 @@ class BrowserRemoteRPC {
|
|
48
45
|
// that messages are queued and delivered when the websocket reconnects.
|
49
46
|
// A regular Subject can be used to discard messages sent when the websocket
|
50
47
|
// is disconnected.
|
51
|
-
const headerBuf =
|
48
|
+
const headerBuf = VSBuffer.alloc(2);
|
52
49
|
// add destination host id
|
53
50
|
headerBuf.writeUInt8(hostIdentifier, 0);
|
54
51
|
// add sender host id
|
55
52
|
headerBuf.writeUInt8(this._localHostId, 1);
|
56
|
-
const cocnatBuf =
|
53
|
+
const cocnatBuf = VSBuffer.concat([headerBuf, buffer]);
|
57
54
|
// converts to ArrayBuffer and sends data
|
58
55
|
this.input$.next(cocnatBuf.buffer);
|
59
56
|
}
|
60
57
|
}
|
61
|
-
exports.BrowserRemoteRPC = BrowserRemoteRPC;
|
62
58
|
//# sourceMappingURL=browser-remote-rpc.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"browser-remote-rpc.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/browser-remote-rpc.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"browser-remote-rpc.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/browser-remote-rpc.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,qDAAqD,CAAC;AAE/E,OAAO,EAAE,OAAO,EAAE,MAAM,oDAAoD,CAAC;AAC7E,OAAO,gBAAgB,EAAE,EAA2C,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEpH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,OAAO,gBAAgB;IAQzB,YAAY,8CAAsD;QAF1D,eAAU,GAAG,IAAI,OAAO,EAAY,CAAC;QAGzC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;QAC3B,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,EAAe,CAAC;IACrD,CAAC;IAGM,SAAS,CAAC,KAAK;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAGM,OAAO,CAAC,GAAW,EAAE,aAAa;QACrC,MAAM,OAAO,GAAG,gBAAgB,CAC5B,GAAG,EAAE;YACD,SAAS,EAAE,EAAE;YACb,aAAa;SAChB,CACJ,CAAC;QAEF,MAAM,SAAS,GAAiC,OAAO,CAAC,IAAI;QACxD,qEAAqE;QACrE,SAAS,CAAC,CAAC,YAAmC,EAAE,EAAE;YAC9C,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAChC,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC,CAAC,EACF,KAAK,EAAE,CACV,CAAC;QAEF,SAAS,CAAC,SAAS,CACf,CAAC,OAAoB,EAAE,EAAE;YACrB,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;YACrC,6FAA6F;YAC7F,4DAA4D;YAC5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC,EACD,CAAC,KAAY,EAAE,EAAE;YACb,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;YAC1B,IAAI,OAAO,KAAK,oBAAoB,EAAE;gBAClC,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;aAClE;iBAAM;gBACH,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;aACjE;QACL,CAAC,CACJ,CAAC;IAEN,CAAC;IAGM,IAAI,CAAC,MAAgB,EAAE,cAAc;QACxC,yEAAyE;QACzE,wEAAwE;QACxE,4EAA4E;QAC5E,mBAAmB;QACnB,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpC,0BAA0B;QAC1B,SAAS,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACxC,qBAAqB;QACrB,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACvD,yCAAyC;QACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;CACJ"}
|
@@ -1,18 +1,2 @@
|
|
1
|
-
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
-
}
|
8
|
-
Object.defineProperty(o, k2, desc);
|
9
|
-
}) : (function(o, m, k, k2) {
|
10
|
-
if (k2 === undefined) k2 = k;
|
11
|
-
o[k2] = m[k];
|
12
|
-
}));
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
-
};
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
__exportStar(require("./browser-remote-rpc"), exports);
|
1
|
+
export * from './browser-remote-rpc';
|
18
2
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
|
@@ -1,13 +1,10 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
const event_1 = require("@vscode-alt/monaco-editor/esm/vs/base/common/event");
|
6
|
-
const buffer_1 = require("@vscode-alt/monaco-editor/esm/vs/base/common/buffer");
|
7
|
-
class BrowserRemoteRPC {
|
1
|
+
import { ReplaySubject } from 'rxjs';
|
2
|
+
import { Emitter } from '@vscode-alt/monaco-editor/esm/vs/base/common/event';
|
3
|
+
import { VSBuffer } from '@vscode-alt/monaco-editor/esm/vs/base/common/buffer';
|
4
|
+
export class BrowserRemoteRPC {
|
8
5
|
constructor(hostId = 2 /* HostIdentifier.BrowserExtHost */) {
|
9
|
-
this._$queue = new
|
10
|
-
this._onMessage = new
|
6
|
+
this._$queue = new ReplaySubject();
|
7
|
+
this._onMessage = new Emitter();
|
11
8
|
this._localHostId = hostId;
|
12
9
|
}
|
13
10
|
onMessage(event) {
|
@@ -19,7 +16,7 @@ class BrowserRemoteRPC {
|
|
19
16
|
const buff = new Uint8Array(msg.data);
|
20
17
|
// @sri in future version of @vscode-alt/monaco-editor we don't need to do add `Buffer.from`
|
21
18
|
// noticed `Buffer` in browser will be polyfilled by webpack
|
22
|
-
const vsBuffer =
|
19
|
+
const vsBuffer = VSBuffer.wrap(Buffer.from(buff.buffer));
|
23
20
|
this._onMessage.fire(vsBuffer);
|
24
21
|
};
|
25
22
|
socket.onclose = event => {
|
@@ -27,15 +24,14 @@ class BrowserRemoteRPC {
|
|
27
24
|
};
|
28
25
|
}
|
29
26
|
send(buffer, hostIdentifier) {
|
30
|
-
const headerBuf =
|
27
|
+
const headerBuf = VSBuffer.alloc(2);
|
31
28
|
// add destination host id
|
32
29
|
headerBuf.writeUInt8(hostIdentifier, 0);
|
33
30
|
// add sender host id
|
34
31
|
headerBuf.writeUInt8(this._localHostId, 1);
|
35
|
-
const cocatBuf =
|
32
|
+
const cocatBuf = VSBuffer.concat([headerBuf, buffer]);
|
36
33
|
// converts to ArrayBuffer and sends data
|
37
34
|
this._$queue.next(cocatBuf.buffer);
|
38
35
|
}
|
39
36
|
}
|
40
|
-
exports.BrowserRemoteRPC = BrowserRemoteRPC;
|
41
37
|
//# sourceMappingURL=old-browser-remote-rpc.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"old-browser-remote-rpc.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/old-browser-remote-rpc.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"old-browser-remote-rpc.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/old-browser-remote-rpc.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAW,MAAM,MAAM,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,oDAAoD,CAAC;AAG7E,OAAO,EAAE,QAAQ,EAAE,MAAM,qDAAqD,CAAC;AAE/E,MAAM,OAAO,gBAAgB;IAKzB,YAAY,8CAAsD;QAJ1D,YAAO,GAAiB,IAAI,aAAa,EAAO,CAAC;QAEjD,eAAU,GAAG,IAAI,OAAO,EAAY,CAAC;QAGzC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;IAC/B,CAAC;IAEM,SAAS,CAAC,KAAK;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAEM,OAAO,CAAC,MAAiB;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,SAAS,GAAG,CAAC,GAAiB,EAAE,EAAE;YACrC,MAAM,IAAI,GAAI,IAAI,UAAU,CAAc,GAAG,CAAC,IAAI,CAAC,CAAC;YACpD,6FAA6F;YAC7F,4DAA4D;YAC5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC,CAAC;QACF,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE;YACrB,YAAY,CAAC,WAAW,EAAE,CAAC;QAC/B,CAAC,CAAC;IACN,CAAC;IAEM,IAAI,CAAC,MAAgB,EAAE,cAAc;QACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpC,0BAA0B;QAC1B,SAAS,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACxC,qBAAqB;QACrB,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACtD,yCAAyC;QACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;CACJ"}
|
@@ -1,19 +1,16 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
const Observable_1 = require("rxjs/Observable");
|
5
|
-
const Subject_1 = require("rxjs/Subject");
|
6
|
-
const WebSocket = require("ws");
|
1
|
+
import { Observable } from 'rxjs/Observable';
|
2
|
+
import { Subject } from 'rxjs/Subject';
|
3
|
+
import WebSocket from 'ws';
|
7
4
|
const defaultProtocols = [];
|
8
5
|
const defaultWebsocketFactory = (url, protocols) => new WebSocket(url, protocols);
|
9
|
-
|
10
|
-
function makeWebSocketObservable(url, { protocols = defaultProtocols, makeWebSocket = defaultWebsocketFactory } = {
|
6
|
+
export const normalClosureMessage = 'Normal closure';
|
7
|
+
export default function makeWebSocketObservable(url, { protocols = defaultProtocols, makeWebSocket = defaultWebsocketFactory } = {
|
11
8
|
protocols: defaultProtocols,
|
12
9
|
makeWebSocket: defaultWebsocketFactory,
|
13
10
|
}) {
|
14
|
-
return new
|
11
|
+
return new Observable(observer => {
|
15
12
|
let inputSubscription;
|
16
|
-
const messages = new
|
13
|
+
const messages = new Subject();
|
17
14
|
const socket = makeWebSocket(url, protocols);
|
18
15
|
let isSocketClosed = false;
|
19
16
|
let forcedClose = false;
|
@@ -61,7 +58,7 @@ function makeWebSocketObservable(url, { protocols = defaultProtocols, makeWebSoc
|
|
61
58
|
messages.complete();
|
62
59
|
}
|
63
60
|
else {
|
64
|
-
observer.error(new Error(event.code === 1000 ?
|
61
|
+
observer.error(new Error(event.code === 1000 ? normalClosureMessage : event.reason));
|
65
62
|
}
|
66
63
|
};
|
67
64
|
return () => {
|
@@ -76,5 +73,4 @@ function makeWebSocketObservable(url, { protocols = defaultProtocols, makeWebSoc
|
|
76
73
|
};
|
77
74
|
});
|
78
75
|
}
|
79
|
-
exports.default = makeWebSocketObservable;
|
80
76
|
//# sourceMappingURL=rxjs-websockets.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rxjs-websockets.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/rxjs-websockets.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"rxjs-websockets.js","sourceRoot":"","sources":["../../../src/connections/remote-rpc/rxjs-websockets.ts"],"names":[],"mappings":"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"}
|
@@ -1,18 +1,15 @@
|
|
1
|
-
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.SETTINGS_ACTION_TYPES = exports.EXTENSION_ACTION_TYPES = exports.COMMAND_ACTION_TYPES = exports.CONTRIBUTION_ACTION_TYPES = void 0;
|
4
|
-
exports.CONTRIBUTION_ACTION_TYPES = {
|
1
|
+
export const CONTRIBUTION_ACTION_TYPES = {
|
5
2
|
GET_CONTRIBUTIONS: 'contribution/GET_CONTRIBUTIONS',
|
6
3
|
REGISTER_CONTRIBUTIONS: 'contribution/REGISTER_CONTRIBUTIONS',
|
7
4
|
DEREGISTER_CONTRIBUTIONS: 'contribution/DEREGISTER_CONTRIBUTIONS',
|
8
5
|
REPLACE_CONTRIBUTIONS: 'contribution/REPLACE_CONTRIBUTIONS',
|
9
6
|
};
|
10
|
-
|
7
|
+
export const COMMAND_ACTION_TYPES = {
|
11
8
|
REGISTER_COMMAND: 'command/REGISTER_COMMAND',
|
12
9
|
DEREGISTER_COMMAND: 'command/DEREGISTER_COMMAND',
|
13
10
|
EXECUTE_COMMAND: 'command/EXECUTE_COMMAND',
|
14
11
|
};
|
15
|
-
|
12
|
+
export const EXTENSION_ACTION_TYPES = {
|
16
13
|
// extensions
|
17
14
|
GET_EXECUTABLE_EXTENIONS: 'extension/GET_EXECUTABLE_EXTENIONS',
|
18
15
|
GET_CONFIGURED_EXTENSION: 'extension/GET_CONFIGURED_EXTENSION',
|
@@ -30,7 +27,7 @@ exports.EXTENSION_ACTION_TYPES = {
|
|
30
27
|
// Document
|
31
28
|
TEXT_POSITION: 'extension/TEXT_POSITION',
|
32
29
|
};
|
33
|
-
|
30
|
+
export const SETTINGS_ACTION_TYPES = {
|
34
31
|
// settings
|
35
32
|
GET_SETTINGS: 'settings/GET_SETTINGS',
|
36
33
|
UPDATE_SETTINGS: 'settings/UPDATE_SETTINGS',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"action-types.js","sourceRoot":"","sources":["../../src/constants/action-types.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"action-types.js","sourceRoot":"","sources":["../../src/constants/action-types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACrC,iBAAiB,EAAE,gCAAgC;IACnD,sBAAsB,EAAE,qCAAqC;IAC7D,wBAAwB,EAAE,uCAAuC;IACjE,qBAAqB,EAAE,oCAAoC;CAC9D,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,gBAAgB,EAAE,0BAA0B;IAC5C,kBAAkB,EAAE,4BAA4B;IAChD,eAAe,EAAE,yBAAyB;CAC7C,CAAA;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,aAAa;IACb,wBAAwB,EAAE,oCAAoC;IAC9D,wBAAwB,EAAE,oCAAoC;IAC9D,qBAAqB,EAAE,iCAAiC;IACxD,uBAAuB,EAAE,mCAAmC;IAC5D,iBAAiB,EAAE,6BAA6B;IAChD,uBAAuB,EAAE,mCAAmC;IAC5D,kBAAkB,EAAE,8BAA8B;IAClD,2BAA2B,EAAE,uCAAuC;IACpE,qBAAqB,EAAE,iCAAiC;IACxD,WAAW;IACX,kBAAkB,EAAE,8BAA8B;IAElD,aAAa,EAAE,yBAAyB;IACxC,kBAAkB,EAAE,8BAA8B;IAElD,WAAW;IACX,aAAa,EAAE,yBAAyB;CAC3C,CAAC;AAGF,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,WAAW;IACX,YAAY,EAAE,uBAAuB;IACrC,eAAe,EAAE,0BAA0B;CAC9C,CAAC"}
|
package/lib/constants/index.js
CHANGED
@@ -1,19 +1,3 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
-
}
|
8
|
-
Object.defineProperty(o, k2, desc);
|
9
|
-
}) : (function(o, m, k, k2) {
|
10
|
-
if (k2 === undefined) k2 = k;
|
11
|
-
o[k2] = m[k];
|
12
|
-
}));
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
-
};
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
__exportStar(require("./types"), exports);
|
18
|
-
__exportStar(require("./action-types"), exports);
|
1
|
+
export * from './types';
|
2
|
+
export * from './action-types';
|
19
3
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC"}
|
package/lib/constants/types.js
CHANGED
@@ -1,7 +1,4 @@
|
|
1
|
-
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.ClientTypes = void 0;
|
4
|
-
exports.ClientTypes = {
|
1
|
+
export const ClientTypes = {
|
5
2
|
ICommandRegistry: Symbol.for('ICommandRegistry'),
|
6
3
|
IContributionRegistry: Symbol.for('IContributionRegistry'),
|
7
4
|
IExtensionService: Symbol.for('IExtensionService'),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/constants/types.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/constants/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAG;IAEvB,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChD,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAC1D,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;CAEjD,CAAA"}
|
@@ -1,12 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
exports.parseTemplate = exports.parse = exports.TemplateExpression = exports.Expression = void 0;
|
4
|
-
const lexer_1 = require("./lexer");
|
5
|
-
const parser_1 = require("./parser");
|
1
|
+
import { TokenType } from './lexer';
|
2
|
+
import { Parser, TemplateParser } from './parser';
|
6
3
|
/**
|
7
4
|
* A parsed context expression (that can evaluate to anything)
|
8
5
|
*/
|
9
|
-
class Expression {
|
6
|
+
export class Expression {
|
10
7
|
constructor(root) {
|
11
8
|
this.root = root;
|
12
9
|
}
|
@@ -14,44 +11,40 @@ class Expression {
|
|
14
11
|
return exec(this.root, context);
|
15
12
|
}
|
16
13
|
}
|
17
|
-
exports.Expression = Expression;
|
18
14
|
/**
|
19
15
|
* A parsed template string that can contain `${contextKey}` interpolations.
|
20
16
|
* Always evaluates to a string.
|
21
17
|
*/
|
22
|
-
class TemplateExpression extends Expression {
|
18
|
+
export class TemplateExpression extends Expression {
|
23
19
|
}
|
24
|
-
exports.TemplateExpression = TemplateExpression;
|
25
20
|
/**
|
26
21
|
* Evaluates an expression with the given context and returns the result.
|
27
22
|
*/
|
28
|
-
function parse(expression) {
|
29
|
-
return new Expression(new
|
23
|
+
export function parse(expression) {
|
24
|
+
return new Expression(new Parser().parse(expression));
|
30
25
|
}
|
31
|
-
exports.parse = parse;
|
32
26
|
/**
|
33
27
|
* Evaluates a template with the given context and returns the result.
|
34
28
|
*
|
35
29
|
* A template is a string that interpolates expressions in ${...}. It uses the same syntax as
|
36
30
|
* JavaScript templates.
|
37
31
|
*/
|
38
|
-
function parseTemplate(template) {
|
39
|
-
return new TemplateExpression(new
|
32
|
+
export function parseTemplate(template) {
|
33
|
+
return new TemplateExpression(new TemplateParser().parse(template));
|
40
34
|
}
|
41
|
-
exports.parseTemplate = parseTemplate;
|
42
35
|
const FUNCS = {
|
43
|
-
get: (object, key) =>
|
36
|
+
get: (object, key) => object?.[key] ?? undefined,
|
44
37
|
json: (object) => JSON.stringify(object),
|
45
38
|
};
|
46
39
|
function exec(node, context) {
|
47
40
|
if ('Literal' in node) {
|
48
41
|
switch (node.Literal.type) {
|
49
|
-
case
|
42
|
+
case TokenType.String:
|
50
43
|
return node.Literal.value;
|
51
|
-
case
|
44
|
+
case TokenType.Number:
|
52
45
|
return parseFloat(node.Literal.value);
|
53
46
|
default:
|
54
|
-
throw new SyntaxError(`Unrecognized literal of type ${
|
47
|
+
throw new SyntaxError(`Unrecognized literal of type ${TokenType[node.Literal.type]}`);
|
55
48
|
}
|
56
49
|
}
|
57
50
|
if ('Template' in node) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../../src/core/expr/evaluator.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../../src/core/expr/evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAkB,MAAM,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAIjE;;GAEG;AACH,MAAM,OAAO,UAAU;IACnB,YAAoB,IAAoB;QAApB,SAAI,GAAJ,IAAI,CAAgB;IAAG,CAAC;IAErC,IAAI,CAAI,OAAiB;QAC5B,OAAO,IAAI,CAAI,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,kBAA8C,SAAQ,UAAa;CAAG;AAEnF;;GAEG;AACH,MAAM,UAAU,KAAK,CAAI,UAAkB;IACvC,OAAO,IAAI,UAAU,CAAI,IAAI,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAA;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC1C,OAAO,IAAI,kBAAkB,CAAC,IAAI,cAAc,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;AACvE,CAAC;AAED,MAAM,KAAK,GAAgD;IACvD,GAAG,EAAE,CAAC,MAAW,EAAE,GAAW,EAAO,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,SAAS;IAClE,IAAI,EAAE,CAAC,MAAW,EAAU,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;CACxD,CAAA;AAED,SAAS,IAAI,CAAI,IAAoB,EAAE,OAAiB;IACpD,IAAI,SAAS,IAAI,IAAI,EAAE;QACnB,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YACvB,KAAK,SAAS,CAAC,MAAM;gBACjB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAA;YAC7B,KAAK,SAAS,CAAC,MAAM;gBACjB,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACzC;gBACI,MAAM,IAAI,WAAW,CAAC,gCAAgC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;SAC5F;KACJ;IAED,IAAI,UAAU,IAAI,IAAI,EAAE;QACpB,MAAM,KAAK,GAAU,EAAE,CAAA;QACvB,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC1C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;SACxC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KACxB;IAED,IAAI,QAAQ,IAAI,IAAI,EAAE;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5C,MAAM,KAAK,GAAG,GAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA,CAAC,kBAAkB;QAC5E,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC1B,KAAK,IAAI;gBACL,OAAO,IAAI,IAAI,KAAK,EAAE,CAAA;YAC1B,KAAK,IAAI;gBACL,OAAO,IAAI,IAAI,KAAK,EAAE,CAAA;YAC1B,KAAK,IAAI;gBACL,kCAAkC;gBAClC,OAAO,IAAI,IAAI,KAAK,EAAE,CAAA;YAC1B,KAAK,IAAI;gBACL,kCAAkC;gBAClC,OAAO,IAAI,IAAI,KAAK,EAAE,CAAA;YAC1B,KAAK,KAAK;gBACN,OAAO,IAAI,KAAK,KAAK,EAAE,CAAA;YAC3B,KAAK,KAAK;gBACN,OAAO,IAAI,KAAK,KAAK,EAAE,CAAA;YAC3B,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,IAAI;gBACL,OAAO,IAAI,IAAI,KAAK,EAAE,CAAA;YAC1B,KAAK,IAAI;gBACL,OAAO,IAAI,IAAI,KAAK,EAAE,CAAA;YAC1B,KAAK,GAAG;gBACJ,qEAAqE;gBACrE,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB,KAAK,GAAG;gBACJ,OAAO,IAAI,GAAG,KAAK,EAAE,CAAA;YACzB;gBACI,MAAM,IAAI,WAAW,CAAC,qBAAqB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;SACzE;KACJ;IAED,IAAI,OAAO,IAAI,IAAI,EAAE;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACvD,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACzB,KAAK,GAAG;gBACJ,OAAO,CAAC,UAAU,CAAA;YACtB,KAAK,GAAG;gBACJ,OAAO,UAAU,CAAA;YACrB,KAAK,GAAG;gBACJ,OAAO,CAAC,UAAU,CAAA;YACtB;gBACI,MAAM,IAAI,WAAW,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;SACxE;KACJ;IAED,IAAI,YAAY,IAAI,IAAI,EAAE;QACtB,QAAQ,IAAI,CAAC,UAAU,EAAE;YACrB,KAAK,MAAM;gBACP,OAAO,IAAI,CAAA;YACf,KAAK,OAAO;gBACR,OAAO,KAAK,CAAA;YAChB,KAAK,WAAW;gBACZ,OAAO,SAAS,CAAA;YACpB,KAAK,MAAM;gBACP,OAAO,IAAI,CAAA;SAClB;QACD,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;KAClC;IAED,IAAI,cAAc,IAAI,IAAI,EAAE;QACxB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;YACrE,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;SACvB;QACD,MAAM,IAAI,WAAW,CAAC,uBAAuB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;KAClE;IAED,MAAM,IAAI,WAAW,CAAC,0BAA0B,CAAC,CAAA;AACrD,CAAC"}
|
@@ -1,6 +1,4 @@
|
|
1
|
-
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
const evaluator_1 = require("./evaluator");
|
1
|
+
import { parse } from './evaluator';
|
4
2
|
const FIXTURE_CONTEXT = {
|
5
3
|
a: 1,
|
6
4
|
b: 1,
|
@@ -43,7 +41,7 @@ describe('Expression', () => {
|
|
43
41
|
};
|
44
42
|
for (const [expression, want] of Object.entries(TESTS)) {
|
45
43
|
test(expression, () => {
|
46
|
-
const value =
|
44
|
+
const value = parse(expression).exec(FIXTURE_CONTEXT);
|
47
45
|
console.log('--Value---', value, expression, want);
|
48
46
|
expect(value).toBe(want);
|
49
47
|
});
|