@adminide-stack/extension-api 11.0.1-alpha.7 → 12.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/lib/connections/jsonrpc2/connection.js +507 -525
  2. package/lib/connections/jsonrpc2/connection.js.map +1 -0
  3. package/lib/connections/jsonrpc2/events.js +100 -100
  4. package/lib/connections/jsonrpc2/events.js.map +1 -0
  5. package/lib/connections/jsonrpc2/linkedMap.js +248 -246
  6. package/lib/connections/jsonrpc2/linkedMap.js.map +1 -0
  7. package/lib/connections/jsonrpc2/messages.js +36 -40
  8. package/lib/connections/jsonrpc2/messages.js.map +1 -0
  9. package/lib/connections/jsonrpc2/test-helper.js +35 -21
  10. package/lib/connections/jsonrpc2/test-helper.js.map +1 -0
  11. package/lib/connections/jsonrpc2/trace.js +70 -82
  12. package/lib/connections/jsonrpc2/trace.js.map +1 -0
  13. package/lib/connections/jsonrpc2/transport.js +56 -56
  14. package/lib/connections/jsonrpc2/transport.js.map +1 -0
  15. package/lib/connections/jsonrpc2/transports/webWorker.js +80 -88
  16. package/lib/connections/jsonrpc2/transports/webWorker.js.map +1 -0
  17. package/lib/connections/proxy/proxy.js +46 -47
  18. package/lib/connections/proxy/proxy.js.map +1 -0
  19. package/lib/connections/remote-rpc/browser-remote-rpc.js +55 -54
  20. package/lib/connections/remote-rpc/browser-remote-rpc.js.map +1 -0
  21. package/lib/connections/remote-rpc/rxjs-websockets.js +68 -68
  22. package/lib/connections/remote-rpc/rxjs-websockets.js.map +1 -0
  23. package/lib/constants/action-types.js +27 -27
  24. package/lib/constants/action-types.js.map +1 -0
  25. package/lib/constants/types.js +7 -7
  26. package/lib/constants/types.js.map +1 -0
  27. package/lib/core/expr/evaluator.js +103 -104
  28. package/lib/core/expr/evaluator.js.map +1 -0
  29. package/lib/core/expr/lexer.js +366 -361
  30. package/lib/core/expr/lexer.js.map +1 -0
  31. package/lib/core/expr/parser.js +228 -217
  32. package/lib/core/expr/parser.js.map +1 -0
  33. package/lib/core/types/ext-host-types.js +53 -54
  34. package/lib/core/types/ext-host-types.js.map +1 -0
  35. package/lib/index.js +1 -1
  36. package/lib/index.js.map +1 -0
  37. package/lib/interfaces/contributions/contribution.js +40 -40
  38. package/lib/interfaces/contributions/contribution.js.map +1 -0
  39. package/lib/interfaces/ext-services/ext-services.d.ts +2 -2
  40. package/lib/interfaces/extension-manifest.d.ts +1 -1
  41. package/lib/interfaces/graphql.js +1 -1
  42. package/lib/interfaces/graphql.js.map +1 -0
  43. package/lib/interfaces/model.js +3 -3
  44. package/lib/interfaces/model.js.map +1 -0
  45. package/lib/interfaces/text-document.js +76 -77
  46. package/lib/interfaces/text-document.js.map +1 -0
  47. package/lib/interfaces/webview/webview.d.ts +1 -1
  48. package/lib/interfaces/webview/webview.js +3 -3
  49. package/lib/interfaces/webview/webview.js.map +1 -0
  50. package/lib/middlewares/extensionController.js +9 -5
  51. package/lib/middlewares/extensionController.js.map +1 -0
  52. package/lib/protocol/client.protocol.js +2 -2
  53. package/lib/protocol/client.protocol.js.map +1 -0
  54. package/lib/protocol/common.protocol.d.ts +1 -2
  55. package/lib/protocol/common.protocol.js +50 -48
  56. package/lib/protocol/common.protocol.js.map +1 -0
  57. package/lib/protocol/editor-missing-types.js +4 -4
  58. package/lib/protocol/editor-missing-types.js.map +1 -0
  59. package/lib/protocol/proxy-identifier.js +39 -39
  60. package/lib/protocol/proxy-identifier.js.map +1 -0
  61. package/lib/protocol/rpc-logger.js +39 -43
  62. package/lib/protocol/rpc-logger.js.map +1 -0
  63. package/lib/protocol/rpc-protocol.js +736 -724
  64. package/lib/protocol/rpc-protocol.js.map +1 -0
  65. package/lib/protocol/server.protocol.js +22 -22
  66. package/lib/protocol/server.protocol.js.map +1 -0
  67. package/lib/protocol/shared/editor.js +17 -17
  68. package/lib/protocol/shared/editor.js.map +1 -0
  69. package/lib/protocol/temporary-types.js +16 -16
  70. package/lib/protocol/temporary-types.js.map +1 -0
  71. package/lib/protocol/utils/lazy-promise.js +60 -61
  72. package/lib/protocol/utils/lazy-promise.js.map +1 -0
  73. package/lib/react/components/view-component/ViewComponent.js +31 -26
  74. package/lib/react/components/view-component/ViewComponent.js.map +1 -0
  75. package/lib/react/index.js +1 -1
  76. package/lib/react/index.js.map +1 -0
  77. package/lib/react/useExtensionController.js +13 -11
  78. package/lib/react/useExtensionController.js.map +1 -0
  79. package/lib/utils/abortable-rx.js +73 -70
  80. package/lib/utils/abortable-rx.js.map +1 -0
  81. package/lib/utils/errors.js +10 -10
  82. package/lib/utils/errors.js.map +1 -0
  83. package/lib/utils/extensions.js +11 -11
  84. package/lib/utils/extensions.js.map +1 -0
  85. package/lib/utils/helper.test.js +7 -4
  86. package/lib/utils/helper.test.js.map +1 -0
  87. package/lib/utils/paths-util.js +79 -82
  88. package/lib/utils/paths-util.js.map +1 -0
  89. package/lib/utils/rxjs/combineLatestOrDefault.js +72 -70
  90. package/lib/utils/rxjs/combineLatestOrDefault.js.map +1 -0
  91. package/lib/utils/util.js +24 -25
  92. package/lib/utils/util.js.map +1 -0
  93. package/package.json +6 -6
@@ -2,25 +2,24 @@ import {TokenType}from'./lexer.js';import {Parser,TemplateParser}from'./parser.j
2
2
  * A parsed context expression (that can evaluate to anything)
3
3
  */
4
4
  class Expression {
5
- root;
6
- constructor(root) {
7
- this.root = root;
8
- }
9
- exec(context) {
10
- return exec(this.root, context);
11
- }
5
+ root;
6
+ constructor(root) {
7
+ this.root = root;
8
+ }
9
+ exec(context) {
10
+ return exec(this.root, context);
11
+ }
12
12
  }
13
13
  /**
14
14
  * A parsed template string that can contain `${contextKey}` interpolations.
15
15
  * Always evaluates to a string.
16
16
  */
17
- class TemplateExpression extends Expression {
18
- }
17
+ class TemplateExpression extends Expression {}
19
18
  /**
20
19
  * Evaluates an expression with the given context and returns the result.
21
20
  */
22
21
  function parse(expression) {
23
- return new Expression(new Parser().parse(expression));
22
+ return new Expression(new Parser().parse(expression));
24
23
  }
25
24
  /**
26
25
  * Evaluates a template with the given context and returns the result.
@@ -29,107 +28,107 @@ function parse(expression) {
29
28
  * JavaScript templates.
30
29
  */
31
30
  function parseTemplate(template) {
32
- return new TemplateExpression(new TemplateParser().parse(template));
31
+ return new TemplateExpression(new TemplateParser().parse(template));
33
32
  }
34
33
  const FUNCS = {
35
- get: (object, key) => object?.[key] ?? undefined,
36
- json: (object) => JSON.stringify(object),
34
+ get: (object, key) => object?.[key] ?? undefined,
35
+ json: object => JSON.stringify(object)
37
36
  };
38
37
  function exec(node, context) {
39
- if ('Literal' in node) {
40
- switch (node.Literal.type) {
41
- case TokenType.String:
42
- return node.Literal.value;
43
- case TokenType.Number:
44
- return parseFloat(node.Literal.value);
45
- default:
46
- throw new SyntaxError(`Unrecognized literal of type ${TokenType[node.Literal.type]}`);
47
- }
38
+ if ('Literal' in node) {
39
+ switch (node.Literal.type) {
40
+ case TokenType.String:
41
+ return node.Literal.value;
42
+ case TokenType.Number:
43
+ return parseFloat(node.Literal.value);
44
+ default:
45
+ throw new SyntaxError(`Unrecognized literal of type ${TokenType[node.Literal.type]}`);
48
46
  }
49
- if ('Template' in node) {
50
- const parts = [];
51
- for (const expression of node.Template.parts) {
52
- parts.push(exec(expression, context));
53
- }
54
- return parts.join('');
47
+ }
48
+ if ('Template' in node) {
49
+ const parts = [];
50
+ for (const expression of node.Template.parts) {
51
+ parts.push(exec(expression, context));
55
52
  }
56
- if ('Binary' in node) {
57
- const left = exec(node.Binary.left, context);
58
- const right = () => exec(node.Binary.right, context); // lazy evaluation
59
- switch (node.Binary.operator) {
60
- case '&&':
61
- return left && right();
62
- case '||':
63
- return left || right();
64
- case '==':
65
- // eslint-disable-next-line eqeqeq
66
- return left == right();
67
- case '!=':
68
- // eslint-disable-next-line eqeqeq
69
- return left != right();
70
- case '===':
71
- return left === right();
72
- case '!==':
73
- return left !== right();
74
- case '<':
75
- return left < right();
76
- case '>':
77
- return left > right();
78
- case '<=':
79
- return left <= right();
80
- case '>=':
81
- return left >= right();
82
- case '+':
83
- // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
84
- return left + right();
85
- case '-':
86
- return left - right();
87
- case '*':
88
- return left * right();
89
- case '/':
90
- return left / right();
91
- case '^':
92
- return left ^ right();
93
- case '%':
94
- return left % right();
95
- default:
96
- throw new SyntaxError(`Invalid operator: ${node.Binary.operator}`);
97
- }
53
+ return parts.join('');
54
+ }
55
+ if ('Binary' in node) {
56
+ const left = exec(node.Binary.left, context);
57
+ const right = () => exec(node.Binary.right, context); // lazy evaluation
58
+ switch (node.Binary.operator) {
59
+ case '&&':
60
+ return left && right();
61
+ case '||':
62
+ return left || right();
63
+ case '==':
64
+ // eslint-disable-next-line eqeqeq
65
+ return left == right();
66
+ case '!=':
67
+ // eslint-disable-next-line eqeqeq
68
+ return left != right();
69
+ case '===':
70
+ return left === right();
71
+ case '!==':
72
+ return left !== right();
73
+ case '<':
74
+ return left < right();
75
+ case '>':
76
+ return left > right();
77
+ case '<=':
78
+ return left <= right();
79
+ case '>=':
80
+ return left >= right();
81
+ case '+':
82
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
83
+ return left + right();
84
+ case '-':
85
+ return left - right();
86
+ case '*':
87
+ return left * right();
88
+ case '/':
89
+ return left / right();
90
+ case '^':
91
+ return left ^ right();
92
+ case '%':
93
+ return left % right();
94
+ default:
95
+ throw new SyntaxError(`Invalid operator: ${node.Binary.operator}`);
98
96
  }
99
- if ('Unary' in node) {
100
- const expression = exec(node.Unary.expression, context);
101
- switch (node.Unary.operator) {
102
- case '!':
103
- return !expression;
104
- case '+':
105
- return expression;
106
- case '-':
107
- return -expression;
108
- default:
109
- throw new SyntaxError(`Invalid operator: ${node.Unary.operator}`);
110
- }
97
+ }
98
+ if ('Unary' in node) {
99
+ const expression = exec(node.Unary.expression, context);
100
+ switch (node.Unary.operator) {
101
+ case '!':
102
+ return !expression;
103
+ case '+':
104
+ return expression;
105
+ case '-':
106
+ return -expression;
107
+ default:
108
+ throw new SyntaxError(`Invalid operator: ${node.Unary.operator}`);
111
109
  }
112
- if ('Identifier' in node) {
113
- switch (node.Identifier) {
114
- case 'true':
115
- return true;
116
- case 'false':
117
- return false;
118
- case 'undefined':
119
- return undefined;
120
- case 'null':
121
- return null;
122
- }
123
- return context[node.Identifier];
110
+ }
111
+ if ('Identifier' in node) {
112
+ switch (node.Identifier) {
113
+ case 'true':
114
+ return true;
115
+ case 'false':
116
+ return false;
117
+ case 'undefined':
118
+ return undefined;
119
+ case 'null':
120
+ return null;
124
121
  }
125
- if ('FunctionCall' in node) {
126
- const expression = node.FunctionCall;
127
- const func = FUNCS[expression.name];
128
- if (typeof func === 'function') {
129
- const args = expression.args.map((argument) => exec(argument, context));
130
- return func(...args);
131
- }
132
- throw new SyntaxError(`Undefined function: ${expression.name}`);
122
+ return context[node.Identifier];
123
+ }
124
+ if ('FunctionCall' in node) {
125
+ const expression = node.FunctionCall;
126
+ const func = FUNCS[expression.name];
127
+ if (typeof func === 'function') {
128
+ const args = expression.args.map(argument => exec(argument, context));
129
+ return func(...args);
133
130
  }
134
- throw new SyntaxError('Unrecognized syntax node');
135
- }export{Expression,TemplateExpression,parse,parseTemplate};
131
+ throw new SyntaxError(`Undefined function: ${expression.name}`);
132
+ }
133
+ throw new SyntaxError('Unrecognized syntax node');
134
+ }export{Expression,TemplateExpression,parse,parseTemplate};//# sourceMappingURL=evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluator.js","sources":["../../../src/core/expr/evaluator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}