brighterscript 0.73.0 → 0.73.1

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 (48) hide show
  1. package/dist/DiagnosticMessages.d.ts +16 -1
  2. package/dist/DiagnosticMessages.js +15 -0
  3. package/dist/DiagnosticMessages.js.map +1 -1
  4. package/dist/LanguageServer.d.ts +13 -0
  5. package/dist/LanguageServer.js +50 -4
  6. package/dist/LanguageServer.js.map +1 -1
  7. package/dist/Program.d.ts +45 -0
  8. package/dist/Program.js +111 -0
  9. package/dist/Program.js.map +1 -1
  10. package/dist/ProgramBuilder.js.map +1 -1
  11. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +7 -0
  12. package/dist/bscPlugin/validation/BrsFileValidator.js +16 -1
  13. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  14. package/dist/bscPlugin/validation/XmlFileValidator.d.ts +7 -0
  15. package/dist/bscPlugin/validation/XmlFileValidator.js +19 -0
  16. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
  17. package/dist/files/XmlFile.d.ts +45 -0
  18. package/dist/files/XmlFile.js +257 -2
  19. package/dist/files/XmlFile.js.map +1 -1
  20. package/dist/lexer/Lexer.js +4 -1
  21. package/dist/lexer/Lexer.js.map +1 -1
  22. package/dist/lsp/ProjectManager.d.ts +5 -0
  23. package/dist/lsp/ProjectManager.js.map +1 -1
  24. package/dist/lsp/worker/MessageHandler.d.ts +1 -0
  25. package/dist/lsp/worker/MessageHandler.js +9 -0
  26. package/dist/lsp/worker/MessageHandler.js.map +1 -1
  27. package/dist/lsp/worker/WorkerPool.d.ts +37 -16
  28. package/dist/lsp/worker/WorkerPool.js +87 -39
  29. package/dist/lsp/worker/WorkerPool.js.map +1 -1
  30. package/dist/lsp/worker/WorkerThreadProject.d.ts +14 -1
  31. package/dist/lsp/worker/WorkerThreadProject.js +39 -9
  32. package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
  33. package/dist/lsp/worker/WorkerThreadProjectRunner.js +6 -0
  34. package/dist/lsp/worker/WorkerThreadProjectRunner.js.map +1 -1
  35. package/dist/lsp/worker/run.js +20 -3
  36. package/dist/lsp/worker/run.js.map +1 -1
  37. package/dist/parser/Parser.js +4 -4
  38. package/dist/parser/Parser.js.map +1 -1
  39. package/dist/parser/SGParser.d.ts +6 -0
  40. package/dist/parser/SGParser.js +24 -16
  41. package/dist/parser/SGParser.js.map +1 -1
  42. package/dist/parser/SGTypes.d.ts +18 -8
  43. package/dist/parser/SGTypes.js +42 -15
  44. package/dist/parser/SGTypes.js.map +1 -1
  45. package/dist/roku-types/index.d.ts +4 -0
  46. package/dist/util.js +3 -1
  47. package/dist/util.js.map +1 -1
  48. package/package.json +8 -4
@@ -119,8 +119,9 @@ function buildAST(cst, diagnostics) {
119
119
  };
120
120
  }
121
121
  function mapElement({ children }, diagnostics) {
122
- var _a, _b;
122
+ var _a, _b, _c;
123
123
  const nameToken = children.Name[0];
124
+ const closingNameToken = (_a = children.END_NAME) === null || _a === void 0 ? void 0 : _a[0];
124
125
  let range;
125
126
  const selfClosing = !!children.SLASH_CLOSE;
126
127
  if (selfClosing) {
@@ -128,49 +129,55 @@ function mapElement({ children }, diagnostics) {
128
129
  range = rangeFromTokens(nameToken, scToken);
129
130
  }
130
131
  else {
131
- const endToken = (_a = children.END) === null || _a === void 0 ? void 0 : _a[0];
132
+ const endToken = (_b = children.END) === null || _b === void 0 ? void 0 : _b[0];
132
133
  range = rangeFromTokens(nameToken, endToken);
133
134
  }
134
135
  const name = mapToken(nameToken);
136
+ const closingName = closingNameToken ? mapToken(closingNameToken) : undefined;
135
137
  const attributes = mapAttributes(children.attribute);
136
- const content = (_b = children.content) === null || _b === void 0 ? void 0 : _b[0];
138
+ const content = (_c = children.content) === null || _c === void 0 ? void 0 : _c[0];
137
139
  switch (name.text) {
138
140
  case 'component':
139
141
  const componentContent = mapElements(content, ['interface', 'script', 'children', 'customization'], diagnostics);
140
- return new SGTypes_1.SGComponent(name, attributes, componentContent, range);
142
+ return new SGTypes_1.SGComponent(name, attributes, componentContent, range, closingName);
141
143
  case 'interface':
142
144
  const interfaceContent = mapElements(content, ['field', 'function'], diagnostics);
143
- return new SGTypes_1.SGInterface(name, interfaceContent, range);
145
+ return new SGTypes_1.SGInterface(name, interfaceContent, range, closingName);
144
146
  case 'field':
145
147
  if (hasElements(content)) {
146
148
  reportUnexpectedChildren(name, diagnostics);
147
149
  }
148
- return new SGTypes_1.SGField(name, attributes, range);
150
+ return new SGTypes_1.SGField(name, attributes, range, closingName);
149
151
  case 'function':
150
152
  if (hasElements(content)) {
151
153
  reportUnexpectedChildren(name, diagnostics);
152
154
  }
153
- return new SGTypes_1.SGFunction(name, attributes, range);
155
+ return new SGTypes_1.SGFunction(name, attributes, range, closingName);
154
156
  case 'script':
155
157
  if (hasElements(content)) {
156
158
  reportUnexpectedChildren(name, diagnostics);
157
159
  }
158
160
  const cdata = getCdata(content);
159
- return new SGTypes_1.SGScript(name, attributes, cdata, range);
161
+ return new SGTypes_1.SGScript(name, attributes, cdata, range, closingName);
160
162
  case 'children':
161
163
  const childrenContent = mapNodes(content);
162
- return new SGTypes_1.SGChildren(name, childrenContent, range);
164
+ return new SGTypes_1.SGChildren(name, childrenContent, range, closingName);
163
165
  default:
164
166
  const nodeContent = mapNodes(content);
165
- return new SGTypes_1.SGNode(name, attributes, nodeContent, range);
167
+ return new SGTypes_1.SGNode(name, attributes, nodeContent, range, closingName);
166
168
  }
167
169
  }
168
170
  function reportUnexpectedChildren(name, diagnostics) {
169
171
  diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.xmlUnexpectedChildren(name.text)), { range: name.range }));
170
172
  }
171
173
  function mapNode({ children }) {
172
- var _a, _b;
173
- const nameToken = children.Name[0];
174
+ var _a, _b, _c, _d;
175
+ const nameToken = (_a = children.Name) === null || _a === void 0 ? void 0 : _a[0];
176
+ //skip malformed elements that have no tag name (e.g. a lone `<` while the user is still typing)
177
+ if (!nameToken) {
178
+ return undefined;
179
+ }
180
+ const closingNameToken = (_b = children.END_NAME) === null || _b === void 0 ? void 0 : _b[0];
174
181
  let range;
175
182
  const selfClosing = !!children.SLASH_CLOSE;
176
183
  if (selfClosing) {
@@ -178,14 +185,15 @@ function mapNode({ children }) {
178
185
  range = rangeFromTokens(nameToken, scToken);
179
186
  }
180
187
  else {
181
- const endToken = (_a = children.END) === null || _a === void 0 ? void 0 : _a[0];
188
+ const endToken = (_c = children.END) === null || _c === void 0 ? void 0 : _c[0];
182
189
  range = rangeFromTokens(nameToken, endToken);
183
190
  }
184
191
  const name = mapToken(nameToken);
192
+ const closingName = closingNameToken ? mapToken(closingNameToken) : undefined;
185
193
  const attributes = mapAttributes(children.attribute);
186
- const content = (_b = children.content) === null || _b === void 0 ? void 0 : _b[0];
194
+ const content = (_d = children.content) === null || _d === void 0 ? void 0 : _d[0];
187
195
  const nodeContent = mapNodes(content);
188
- return new SGTypes_1.SGNode(name, attributes, nodeContent, range);
196
+ return new SGTypes_1.SGNode(name, attributes, nodeContent, range, closingName);
189
197
  }
190
198
  function mapElements(content, allow, diagnostics) {
191
199
  var _a;
@@ -218,7 +226,7 @@ function mapNodes(content) {
218
226
  return [];
219
227
  }
220
228
  const { element } = content.children;
221
- return element === null || element === void 0 ? void 0 : element.map(element => mapNode(element));
229
+ return element === null || element === void 0 ? void 0 : element.map(element => mapNode(element)).filter((node) => !!node);
222
230
  }
223
231
  function hasElements(content) {
224
232
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"SGParser.js","sourceRoot":"","sources":["../../src/parser/SGParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SGParser.js","sourceRoot":"","sources":["../../src/parser/SGParser.ts"],"names":[],"mappings":"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"}
@@ -17,12 +17,19 @@ export declare class SGTag {
17
17
  tag: SGToken;
18
18
  attributes: SGAttribute[];
19
19
  range?: Range;
20
- constructor(tag: SGToken, attributes?: SGAttribute[], range?: Range);
20
+ closingTag?: SGToken;
21
+ constructor(tag: SGToken, attributes?: SGAttribute[], range?: Range, closingTag?: SGToken);
21
22
  get id(): string;
22
23
  set id(value: string);
23
24
  getAttribute(name: string): SGAttribute | undefined;
24
25
  getAttributeValue(name: string): string | undefined;
25
26
  setAttribute(name: string, value: string): void;
27
+ /**
28
+ * The nested tags directly contained by this tag. Base tags have no children;
29
+ * subclasses that contain other tags override this. Used for AST traversal
30
+ * (e.g. validation) so it works regardless of how the AST was constructed.
31
+ */
32
+ getChildren(): SGTag[];
26
33
  transpile(state: TranspileState): SourceNode;
27
34
  protected transpileBody(state: TranspileState): (string | SourceNode)[];
28
35
  protected transpileAttributes(state: TranspileState, attributes: SGAttribute[]): (string | SourceNode)[];
@@ -32,15 +39,16 @@ export declare class SGProlog extends SGTag {
32
39
  }
33
40
  export declare class SGNode extends SGTag {
34
41
  children: SGNode[];
35
- constructor(tag: SGToken, attributes?: SGAttribute[], children?: SGNode[], range?: Range);
42
+ constructor(tag: SGToken, attributes?: SGAttribute[], children?: SGNode[], range?: Range, closingTag?: SGToken);
43
+ getChildren(): SGTag[];
36
44
  protected transpileBody(state: TranspileState): (string | SourceNode)[];
37
45
  }
38
46
  export declare class SGChildren extends SGNode {
39
- constructor(tag?: SGToken, children?: SGNode[], range?: Range);
47
+ constructor(tag?: SGToken, children?: SGNode[], range?: Range, closingTag?: SGToken);
40
48
  }
41
49
  export declare class SGScript extends SGTag {
42
50
  cdata?: SGToken;
43
- constructor(tag?: SGToken, attributes?: SGAttribute[], cdata?: SGToken, range?: Range);
51
+ constructor(tag?: SGToken, attributes?: SGAttribute[], cdata?: SGToken, range?: Range, closingTag?: SGToken);
44
52
  get type(): string;
45
53
  set type(value: string);
46
54
  get uri(): string;
@@ -49,7 +57,7 @@ export declare class SGScript extends SGTag {
49
57
  protected transpileAttributes(state: TranspileState, attributes: SGAttribute[]): (string | SourceNode)[];
50
58
  }
51
59
  export declare class SGField extends SGTag {
52
- constructor(tag?: SGToken, attributes?: SGAttribute[], range?: Range);
60
+ constructor(tag?: SGToken, attributes?: SGAttribute[], range?: Range, closingTag?: SGToken);
53
61
  get type(): string;
54
62
  set type(value: string);
55
63
  get alias(): string;
@@ -63,22 +71,23 @@ export declare class SGField extends SGTag {
63
71
  }
64
72
  export declare const SGFieldTypes: string[];
65
73
  export declare class SGFunction extends SGTag {
66
- constructor(tag?: SGToken, attributes?: SGAttribute[], range?: Range);
74
+ constructor(tag?: SGToken, attributes?: SGAttribute[], range?: Range, closingTag?: SGToken);
67
75
  get name(): string;
68
76
  set name(value: string);
69
77
  }
70
78
  export declare class SGInterface extends SGTag {
71
79
  fields: SGField[];
72
80
  functions: SGFunction[];
73
- constructor(tag?: SGToken, content?: SGTag[], range?: Range);
81
+ constructor(tag?: SGToken, content?: SGTag[], range?: Range, closingTag?: SGToken);
74
82
  getField(id: string): SGField;
75
83
  setField(id: string, type: string, onChange?: string, alwaysNotify?: boolean, alias?: string): void;
76
84
  getFunction(name: string): SGFunction;
77
85
  setFunction(name: string): void;
86
+ getChildren(): SGTag[];
78
87
  protected transpileBody(state: TranspileState): (string | SourceNode)[];
79
88
  }
80
89
  export declare class SGComponent extends SGTag {
81
- constructor(tag?: SGToken, attributes?: SGAttribute[], content?: SGTag[], range?: Range);
90
+ constructor(tag?: SGToken, attributes?: SGAttribute[], content?: SGTag[], range?: Range, closingTag?: SGToken);
82
91
  api: SGInterface;
83
92
  scripts: SGScript[];
84
93
  children: SGChildren;
@@ -87,6 +96,7 @@ export declare class SGComponent extends SGTag {
87
96
  set name(value: string);
88
97
  get extends(): string;
89
98
  set extends(value: string);
99
+ getChildren(): SGTag[];
90
100
  protected transpileBody(state: TranspileState): (string | SourceNode)[];
91
101
  }
92
102
  export interface SGReferences {
@@ -6,10 +6,11 @@ const creators_1 = require("../astUtils/creators");
6
6
  const xml_1 = require("../astUtils/xml");
7
7
  const util_1 = require("../util");
8
8
  class SGTag {
9
- constructor(tag, attributes = [], range) {
9
+ constructor(tag, attributes = [], range, closingTag) {
10
10
  this.tag = tag;
11
11
  this.attributes = attributes;
12
12
  this.range = range;
13
+ this.closingTag = closingTag;
13
14
  }
14
15
  get id() {
15
16
  return this.getAttributeValue('id');
@@ -42,6 +43,14 @@ class SGTag {
42
43
  });
43
44
  }
44
45
  }
46
+ /**
47
+ * The nested tags directly contained by this tag. Base tags have no children;
48
+ * subclasses that contain other tags override this. Used for AST traversal
49
+ * (e.g. validation) so it works regardless of how the AST was constructed.
50
+ */
51
+ getChildren() {
52
+ return [];
53
+ }
45
54
  transpile(state) {
46
55
  return new source_map_1.SourceNode(null, null, state.srcPath, [
47
56
  state.indentText,
@@ -75,10 +84,13 @@ class SGProlog extends SGTag {
75
84
  }
76
85
  exports.SGProlog = SGProlog;
77
86
  class SGNode extends SGTag {
78
- constructor(tag, attributes, children = [], range) {
79
- super(tag, attributes, range);
87
+ constructor(tag, attributes, children = [], range, closingTag) {
88
+ super(tag, attributes, range, closingTag);
80
89
  this.children = children;
81
90
  }
91
+ getChildren() {
92
+ return this.children;
93
+ }
82
94
  transpileBody(state) {
83
95
  if (this.children.length > 0) {
84
96
  const body = ['>\n'];
@@ -95,14 +107,14 @@ class SGNode extends SGTag {
95
107
  }
96
108
  exports.SGNode = SGNode;
97
109
  class SGChildren extends SGNode {
98
- constructor(tag = { text: 'children' }, children = [], range) {
99
- super(tag, [], children, range);
110
+ constructor(tag = { text: 'children' }, children = [], range, closingTag) {
111
+ super(tag, [], children, range, closingTag);
100
112
  }
101
113
  }
102
114
  exports.SGChildren = SGChildren;
103
115
  class SGScript extends SGTag {
104
- constructor(tag = { text: 'script' }, attributes, cdata, range) {
105
- super(tag, attributes, range);
116
+ constructor(tag = { text: 'script' }, attributes, cdata, range, closingTag) {
117
+ super(tag, attributes, range, closingTag);
106
118
  this.cdata = cdata;
107
119
  if (!attributes) {
108
120
  this.type = 'text/brightscript';
@@ -164,8 +176,8 @@ class SGScript extends SGTag {
164
176
  }
165
177
  exports.SGScript = SGScript;
166
178
  class SGField extends SGTag {
167
- constructor(tag = { text: 'field' }, attributes = [], range) {
168
- super(tag, attributes, range);
179
+ constructor(tag = { text: 'field' }, attributes = [], range, closingTag) {
180
+ super(tag, attributes, range, closingTag);
169
181
  }
170
182
  get type() {
171
183
  return this.getAttributeValue('type');
@@ -206,8 +218,8 @@ exports.SGFieldTypes = [
206
218
  'array', 'roarray', 'rect2d', 'rect2darray'
207
219
  ];
208
220
  class SGFunction extends SGTag {
209
- constructor(tag = { text: 'function' }, attributes = [], range) {
210
- super(tag, attributes, range);
221
+ constructor(tag = { text: 'function' }, attributes = [], range, closingTag) {
222
+ super(tag, attributes, range, closingTag);
211
223
  }
212
224
  get name() {
213
225
  return this.getAttributeValue('name');
@@ -218,8 +230,8 @@ class SGFunction extends SGTag {
218
230
  }
219
231
  exports.SGFunction = SGFunction;
220
232
  class SGInterface extends SGTag {
221
- constructor(tag = { text: 'interface' }, content, range) {
222
- super(tag, [], range);
233
+ constructor(tag = { text: 'interface' }, content, range, closingTag) {
234
+ super(tag, [], range, closingTag);
223
235
  this.fields = [];
224
236
  this.functions = [];
225
237
  if (content) {
@@ -264,6 +276,9 @@ class SGInterface extends SGTag {
264
276
  this.functions.push(func);
265
277
  }
266
278
  }
279
+ getChildren() {
280
+ return [...this.fields, ...this.functions];
281
+ }
267
282
  transpileBody(state) {
268
283
  const body = ['>\n'];
269
284
  state.blockDepth++;
@@ -280,8 +295,8 @@ class SGInterface extends SGTag {
280
295
  }
281
296
  exports.SGInterface = SGInterface;
282
297
  class SGComponent extends SGTag {
283
- constructor(tag = { text: 'component' }, attributes, content, range) {
284
- super(tag, attributes, range);
298
+ constructor(tag = { text: 'component' }, attributes, content, range, closingTag) {
299
+ super(tag, attributes, range, closingTag);
285
300
  this.scripts = [];
286
301
  this.customizations = [];
287
302
  if (content) {
@@ -313,6 +328,18 @@ class SGComponent extends SGTag {
313
328
  set extends(value) {
314
329
  this.setAttribute('extends', value);
315
330
  }
331
+ getChildren() {
332
+ const result = [];
333
+ if (this.api) {
334
+ result.push(this.api);
335
+ }
336
+ result.push(...this.scripts);
337
+ if (this.children) {
338
+ result.push(this.children);
339
+ }
340
+ result.push(...this.customizations);
341
+ return result;
342
+ }
316
343
  transpileBody(state) {
317
344
  const body = ['>\n'];
318
345
  state.blockDepth++;
@@ -1 +1 @@
1
- {"version":3,"file":"SGTypes.js","sourceRoot":"","sources":["../../src/parser/SGTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SGTypes.js","sourceRoot":"","sources":["../../src/parser/SGTypes.ts"],"names":[],"mappings":"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"}
@@ -5607,6 +5607,10 @@ export interface SGNodeData extends BrightScriptDocLookup {
5607
5607
  fields: BRSFieldData[];
5608
5608
  events: BrightScriptDocLookup[];
5609
5609
  interfaces: BrightScriptDocLookup[];
5610
+ /**
5611
+ * The node this node extends. Absent on the root `Node` type.
5612
+ */
5613
+ extends?: BrightScriptDocLookup;
5610
5614
  }
5611
5615
  export interface BRSComponentData extends BrightScriptDocLookup, PossiblyDeprecated {
5612
5616
  interfaces: BrightScriptDocLookup[];
package/dist/util.js CHANGED
@@ -1114,11 +1114,13 @@ class Util {
1114
1114
  */
1115
1115
  cloneToken(token) {
1116
1116
  if (token) {
1117
+ //keep this field order identical to `Lexer.addToken` so cloned tokens
1118
+ //share the same V8 hidden class as lexer-produced tokens
1117
1119
  const result = {
1118
1120
  kind: token.kind,
1119
- range: this.cloneRange(token.range),
1120
1121
  text: token.text,
1121
1122
  isReserved: token.isReserved,
1123
+ range: this.cloneRange(token.range),
1122
1124
  leadingWhitespace: token.leadingWhitespace
1123
1125
  };
1124
1126
  //handle those tokens that have charCode