@openrewrite/rewrite 8.91.0 → 8.91.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.
- package/dist/java/formatting-utils.d.ts +8 -5
- package/dist/java/formatting-utils.d.ts.map +1 -1
- package/dist/java/formatting-utils.js +14 -10
- package/dist/java/formatting-utils.js.map +1 -1
- package/dist/java/type.d.ts +2 -0
- package/dist/java/type.d.ts.map +1 -1
- package/dist/java/type.js +5 -0
- package/dist/java/type.js.map +1 -1
- package/dist/javascript/add-import.d.ts +39 -20
- package/dist/javascript/add-import.d.ts.map +1 -1
- package/dist/javascript/add-import.js +513 -243
- package/dist/javascript/add-import.js.map +1 -1
- package/dist/javascript/assertions.d.ts +7 -0
- package/dist/javascript/assertions.d.ts.map +1 -1
- package/dist/javascript/assertions.js +31 -5
- package/dist/javascript/assertions.js.map +1 -1
- package/dist/javascript/comparator.d.ts +5 -0
- package/dist/javascript/comparator.d.ts.map +1 -1
- package/dist/javascript/comparator.js +34 -9
- package/dist/javascript/comparator.js.map +1 -1
- package/dist/javascript/format/format.d.ts.map +1 -1
- package/dist/javascript/format/format.js +8 -9
- package/dist/javascript/format/format.js.map +1 -1
- package/dist/javascript/format/tabs-and-indents-visitor.d.ts +2 -0
- package/dist/javascript/format/tabs-and-indents-visitor.d.ts.map +1 -1
- package/dist/javascript/format/tabs-and-indents-visitor.js +17 -11
- package/dist/javascript/format/tabs-and-indents-visitor.js.map +1 -1
- package/dist/javascript/node-resolution-result.d.ts +19 -1
- package/dist/javascript/node-resolution-result.d.ts.map +1 -1
- package/dist/javascript/node-resolution-result.js +37 -2
- package/dist/javascript/node-resolution-result.js.map +1 -1
- package/dist/javascript/package-exported-types.d.ts.map +1 -1
- package/dist/javascript/package-exported-types.js +56 -72
- package/dist/javascript/package-exported-types.js.map +1 -1
- package/dist/javascript/parser.d.ts.map +1 -1
- package/dist/javascript/parser.js +10 -3
- package/dist/javascript/parser.js.map +1 -1
- package/dist/javascript/recipes/change-import.d.ts.map +1 -1
- package/dist/javascript/recipes/change-import.js +4 -8
- package/dist/javascript/recipes/change-import.js.map +1 -1
- package/dist/javascript/style.d.ts.map +1 -1
- package/dist/javascript/style.js +3 -10
- package/dist/javascript/style.js.map +1 -1
- package/dist/javascript/templating/bindings.d.ts +19 -0
- package/dist/javascript/templating/bindings.d.ts.map +1 -0
- package/dist/javascript/templating/bindings.js +121 -0
- package/dist/javascript/templating/bindings.js.map +1 -0
- package/dist/javascript/templating/comparator.d.ts.map +1 -1
- package/dist/javascript/templating/comparator.js +5 -6
- package/dist/javascript/templating/comparator.js.map +1 -1
- package/dist/javascript/templating/engine.d.ts +18 -7
- package/dist/javascript/templating/engine.d.ts.map +1 -1
- package/dist/javascript/templating/engine.js +70 -42
- package/dist/javascript/templating/engine.js.map +1 -1
- package/dist/javascript/templating/index.d.ts +1 -1
- package/dist/javascript/templating/index.d.ts.map +1 -1
- package/dist/javascript/templating/index.js.map +1 -1
- package/dist/javascript/templating/pattern.d.ts.map +1 -1
- package/dist/javascript/templating/pattern.js +13 -10
- package/dist/javascript/templating/pattern.js.map +1 -1
- package/dist/javascript/templating/placeholder-replacement.d.ts +2 -0
- package/dist/javascript/templating/placeholder-replacement.d.ts.map +1 -1
- package/dist/javascript/templating/placeholder-replacement.js +14 -5
- package/dist/javascript/templating/placeholder-replacement.js.map +1 -1
- package/dist/javascript/templating/rewrite.d.ts.map +1 -1
- package/dist/javascript/templating/rewrite.js +14 -18
- package/dist/javascript/templating/rewrite.js.map +1 -1
- package/dist/javascript/templating/template.d.ts +8 -0
- package/dist/javascript/templating/template.d.ts.map +1 -1
- package/dist/javascript/templating/template.js +43 -3
- package/dist/javascript/templating/template.js.map +1 -1
- package/dist/javascript/templating/types.d.ts +47 -1
- package/dist/javascript/templating/types.d.ts.map +1 -1
- package/dist/javascript/templating/utils.d.ts +5 -0
- package/dist/javascript/templating/utils.d.ts.map +1 -1
- package/dist/javascript/templating/utils.js +17 -0
- package/dist/javascript/templating/utils.js.map +1 -1
- package/dist/javascript/type-mapping.d.ts +1 -0
- package/dist/javascript/type-mapping.d.ts.map +1 -1
- package/dist/javascript/type-mapping.js +52 -2
- package/dist/javascript/type-mapping.js.map +1 -1
- package/dist/rewrite-javascript-version.txt +1 -1
- package/dist/style.d.ts +2 -0
- package/dist/style.d.ts.map +1 -1
- package/dist/style.js +5 -0
- package/dist/style.js.map +1 -1
- package/dist/test/rewrite-test.d.ts +12 -0
- package/dist/test/rewrite-test.d.ts.map +1 -1
- package/dist/test/rewrite-test.js +40 -3
- package/dist/test/rewrite-test.js.map +1 -1
- package/package.json +1 -1
- package/src/java/formatting-utils.ts +14 -10
- package/src/java/type.ts +5 -0
- package/src/javascript/add-import.ts +590 -230
- package/src/javascript/assertions.ts +33 -5
- package/src/javascript/comparator.ts +39 -10
- package/src/javascript/format/format.ts +9 -10
- package/src/javascript/format/tabs-and-indents-visitor.ts +18 -12
- package/src/javascript/node-resolution-result.ts +59 -4
- package/src/javascript/package-exported-types.ts +60 -74
- package/src/javascript/parser.ts +10 -3
- package/src/javascript/recipes/change-import.ts +4 -7
- package/src/javascript/style.ts +3 -11
- package/src/javascript/templating/bindings.ts +129 -0
- package/src/javascript/templating/comparator.ts +5 -6
- package/src/javascript/templating/engine.ts +82 -44
- package/src/javascript/templating/index.ts +2 -0
- package/src/javascript/templating/pattern.ts +16 -15
- package/src/javascript/templating/placeholder-replacement.ts +16 -5
- package/src/javascript/templating/rewrite.ts +16 -18
- package/src/javascript/templating/template.ts +45 -3
- package/src/javascript/templating/types.ts +53 -1
- package/src/javascript/templating/utils.ts +17 -0
- package/src/javascript/type-mapping.ts +54 -2
- package/src/style.ts +5 -0
- package/src/test/rewrite-test.ts +61 -3
|
@@ -3,6 +3,8 @@ import { J, Type } from '../../java';
|
|
|
3
3
|
import type { Pattern } from "./pattern";
|
|
4
4
|
import type { Template } from "./template";
|
|
5
5
|
import type { CaptureValue, RawCode } from "./capture";
|
|
6
|
+
import type { AddImportOptions } from "../add-import";
|
|
7
|
+
import type { JavaScriptVisitor } from "../visitor";
|
|
6
8
|
/**
|
|
7
9
|
* Options for variadic captures that match zero or more nodes in a sequence.
|
|
8
10
|
*/
|
|
@@ -428,7 +430,27 @@ export interface TemplateOptions {
|
|
|
428
430
|
* The template engine will create a package.json with these dependencies.
|
|
429
431
|
*/
|
|
430
432
|
dependencies?: Record<string, string>;
|
|
433
|
+
/**
|
|
434
|
+
* Modules the template's code refers to, keyed by the identifier its source uses for each.
|
|
435
|
+
* The key is a preferred name: {@link Template.resolveBindings} deconflicts it against the
|
|
436
|
+
* file, and applying the template rewrites the template's references to whatever it settled on.
|
|
437
|
+
*
|
|
438
|
+
* @example
|
|
439
|
+
* ```typescript
|
|
440
|
+
* template`Theming.setTheme(${capture('theme')})`
|
|
441
|
+
* .configure({bindings: {Theming: {module: 'sap/ui/core/Theming', member: 'default'}}})
|
|
442
|
+
* ```
|
|
443
|
+
*/
|
|
444
|
+
bindings?: Record<string, ModuleBinding>;
|
|
431
445
|
}
|
|
446
|
+
/**
|
|
447
|
+
* A module a template's code depends on. The local name comes from the key it is declared under,
|
|
448
|
+
* and {@link Template.resolveBindings} settles the rest. `member` and `typeOnly` shape the import
|
|
449
|
+
* it creates, so a caller passing {@link ApplyOptions.bindings} of its own reads neither.
|
|
450
|
+
*/
|
|
451
|
+
export type ModuleBinding = Omit<AddImportOptions, 'module' | 'alias' | 'preferredName' | 'onlyIfReferenced' | 'sideEffectOnly'> & {
|
|
452
|
+
module: string;
|
|
453
|
+
};
|
|
432
454
|
/**
|
|
433
455
|
* Options for template application.
|
|
434
456
|
*/
|
|
@@ -455,6 +477,28 @@ export interface ApplyOptions {
|
|
|
455
477
|
* ```
|
|
456
478
|
*/
|
|
457
479
|
values?: Map<Capture | string, J> | MatchResult | Record<string, J>;
|
|
480
|
+
/**
|
|
481
|
+
* Whether the result is fitted to where it lands. Defaults to `true`; pass `false` to assemble
|
|
482
|
+
* several results into one subtree and format that subtree once, rather than once per application.
|
|
483
|
+
* The anchor supplies the result's prefix either way.
|
|
484
|
+
*/
|
|
485
|
+
format?: boolean;
|
|
486
|
+
/**
|
|
487
|
+
* Local names for the bindings the template declares, keyed as they are declared — normally
|
|
488
|
+
* {@link Template.resolveBindings}. Every declared binding needs one.
|
|
489
|
+
*/
|
|
490
|
+
bindings?: Record<string, string>;
|
|
491
|
+
}
|
|
492
|
+
/** Options a caller supplies per node, as against the ones {@link RewriteConfig} fixes for the rule. */
|
|
493
|
+
export interface TryOnOptions {
|
|
494
|
+
/**
|
|
495
|
+
* The visitor to bind the applied template's declared modules in. The rule holds that template,
|
|
496
|
+
* so it resolves them itself, and only once a pattern has matched — a rule that does not fire
|
|
497
|
+
* leaves the file's imports alone. {@link TryOnOptions.bindings} overrides this.
|
|
498
|
+
*/
|
|
499
|
+
visitor?: JavaScriptVisitor<any>;
|
|
500
|
+
/** As {@link ApplyOptions.bindings}, for a caller that resolves the modules some other way. */
|
|
501
|
+
bindings?: Record<string, string>;
|
|
458
502
|
}
|
|
459
503
|
/**
|
|
460
504
|
* Represents a replacement rule that can match a pattern and apply a template.
|
|
@@ -469,7 +513,7 @@ export interface RewriteRule {
|
|
|
469
513
|
* When using in a visitor, always use the `|| node` pattern to return the original
|
|
470
514
|
* node when there's no match: `return await rule.tryOn(this.cursor, node) || node;`
|
|
471
515
|
*/
|
|
472
|
-
tryOn(cursor: Cursor, node: J): Promise<J | undefined>;
|
|
516
|
+
tryOn(cursor: Cursor, node: J, options?: TryOnOptions): Promise<J | undefined>;
|
|
473
517
|
/**
|
|
474
518
|
* Chains this rule with another rule, creating a composite rule that applies both transformations sequentially.
|
|
475
519
|
*
|
|
@@ -562,6 +606,8 @@ export interface PostMatchContext {
|
|
|
562
606
|
export interface RewriteConfig {
|
|
563
607
|
before: Pattern | Pattern[];
|
|
564
608
|
after: Template | ((match: MatchResult) => Template);
|
|
609
|
+
/** As {@link ApplyOptions.format}, applied to every node the rule rewrites. */
|
|
610
|
+
format?: boolean;
|
|
565
611
|
/**
|
|
566
612
|
* Optional predicate evaluated BEFORE pattern matching.
|
|
567
613
|
* Use for efficient early filtering based on AST context when captures aren't needed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/types.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,OAAO,CAAC;AACnC,OAAO,EAAC,CAAC,EAAE,IAAI,EAAC,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAE,OAAO,EAAC,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,6 +62,11 @@ export declare function randomizeIds<T extends J>(tree: T): Promise<{
|
|
|
62
62
|
export declare function treeIds(tree: J): Promise<ReadonlySet<string>>;
|
|
63
63
|
/** Copy of `tree` in which an `id` survives only where it is `retainable` and unused so far. */
|
|
64
64
|
export declare function retainIds<T extends J>(tree: T, retainable: ReadonlySet<string>): Promise<T>;
|
|
65
|
+
/**
|
|
66
|
+
* Strips the indentation a template carries from the recipe source it was written in. Its first
|
|
67
|
+
* line starts at the opening backtick, so the common indent is the one shared by the lines below.
|
|
68
|
+
*/
|
|
69
|
+
export declare function dedentTemplate(code: string): string;
|
|
65
70
|
/**
|
|
66
71
|
* Marker that stores capture metadata on pattern AST nodes.
|
|
67
72
|
* This avoids the need to parse capture names from identifiers during matching.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ exports.generateCacheKey = generateCacheKey;
|
|
|
5
5
|
exports.randomizeIds = randomizeIds;
|
|
6
6
|
exports.treeIds = treeIds;
|
|
7
7
|
exports.retainIds = retainIds;
|
|
8
|
+
exports.dedentTemplate = dedentTemplate;
|
|
8
9
|
const java_1 = require("../../java");
|
|
9
10
|
const index_1 = require("../index");
|
|
10
11
|
const visitor_1 = require("../visitor");
|
|
@@ -143,6 +144,22 @@ async function treeIds(tree) {
|
|
|
143
144
|
function retainIds(tree, retainable) {
|
|
144
145
|
return new RetainIdVisitor(retainable).visit(tree, null);
|
|
145
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Strips the indentation a template carries from the recipe source it was written in. Its first
|
|
149
|
+
* line starts at the opening backtick, so the common indent is the one shared by the lines below.
|
|
150
|
+
*/
|
|
151
|
+
function dedentTemplate(code) {
|
|
152
|
+
const lines = code.split("\n");
|
|
153
|
+
let indent = Infinity;
|
|
154
|
+
for (const line of lines.slice(1)) {
|
|
155
|
+
if (line.trim().length > 0) {
|
|
156
|
+
indent = Math.min(indent, line.length - line.trimStart().length);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return indent === Infinity || indent === 0 ?
|
|
160
|
+
code :
|
|
161
|
+
[lines[0], ...lines.slice(1).map(line => line.slice(indent))].join("\n");
|
|
162
|
+
}
|
|
146
163
|
/**
|
|
147
164
|
* Marker that stores capture metadata on pattern AST nodes.
|
|
148
165
|
* This avoids the need to parse capture names from identifiers during matching.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/javascript/templating/utils.ts"],"names":[],"mappings":";;;AAyGA,4CAYC;AAkDD,oCAGC;AAGD,0BAIC;AAGD,8BAEC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/javascript/templating/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -128,6 +128,7 @@ export declare class JavaScriptTypeMapping {
|
|
|
128
128
|
* Note: Cache check is done in getType() before calling this method
|
|
129
129
|
*/
|
|
130
130
|
private createGenericTypeVariable;
|
|
131
|
+
private createEmptyObjectType;
|
|
131
132
|
/**
|
|
132
133
|
* Create an empty function type shell with FQN 𝑓.
|
|
133
134
|
* The shell will be populated later to handle circular references.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-mapping.d.ts","sourceRoot":"","sources":["../../src/javascript/type-mapping.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"type-mapping.d.ts","sourceRoot":"","sources":["../../src/javascript/type-mapping.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAI7B,qBAAa,qBAAqB;IAa1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAXhC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyC;IACnE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuC;IAEnE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAsB;IACxD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAsB;IACxD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAsB;gBAIpC,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,CAAC,EAAE,MAAM,YAAA;IA4BxC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS;IAuBrC;;;;;;;;OAQG;IACH,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS;IAyB9D;;;;;;;;;;;;;;;OAeG;IACH,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,GAAG,EAAE,CAAC,eAAe,GAAG,EAAE,CAAC,oBAAoB,GAAG,EAAE,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS;IAgE/I;;;;OAIG;IACH,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS;IAWjD,OAAO,CAAC,OAAO;IAmRf,OAAO,CAAC,YAAY;IA4BpB,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS;IAQ5C,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,GAAG,SAAS;IAoKtD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,yBAAyB;IAmCjC;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmDxB,OAAO,CAAC,WAAW;IAanB,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,SAAS;IAqXlD;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,+BAA+B;IA4IvC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAkC5B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA6HzB;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IA4CpC;;;OAGG;IACH,OAAO,CAAC,eAAe;IAqBvB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAqB9B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;IAmCjC,OAAO,CAAC,qBAAqB;IAiB7B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAiB/B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CA8D/B"}
|
|
@@ -56,6 +56,7 @@ const typescript_1 = __importDefault(require("typescript"));
|
|
|
56
56
|
const path = __importStar(require("path"));
|
|
57
57
|
const java_1 = require("../java");
|
|
58
58
|
var FUNCTION_TYPE_NAME = java_1.Type.FUNCTION_TYPE_NAME;
|
|
59
|
+
var OBJECT_TYPE_NAME = java_1.Type.OBJECT_TYPE_NAME;
|
|
59
60
|
class JavaScriptTypeMapping {
|
|
60
61
|
constructor(checker, sourceRoot) {
|
|
61
62
|
this.checker = checker;
|
|
@@ -447,13 +448,23 @@ class JavaScriptTypeMapping {
|
|
|
447
448
|
this.populateFunctionType(functionType, callSignatures[0]);
|
|
448
449
|
return functionType;
|
|
449
450
|
}
|
|
450
|
-
//
|
|
451
|
+
// A structural type has no nominal name, so every object literal `{a: 1}` and type
|
|
452
|
+
// literal `{a: number}` shares the synthetic FQN `{}`, with `members` carrying the shape.
|
|
451
453
|
if (type.flags & typescript_1.default.TypeFlags.Object) {
|
|
452
454
|
const objectFlags = type.objectFlags;
|
|
453
455
|
if (objectFlags & typescript_1.default.ObjectFlags.Anonymous) {
|
|
454
|
-
|
|
456
|
+
const objectType = this.createEmptyObjectType();
|
|
457
|
+
this.typeCache.set(signature, objectType);
|
|
458
|
+
this.populateClassType(objectType, type);
|
|
459
|
+
return objectType;
|
|
455
460
|
}
|
|
456
461
|
}
|
|
462
|
+
// The `object` keyword: an object of unknown shape.
|
|
463
|
+
if (type.flags & typescript_1.default.TypeFlags.NonPrimitive) {
|
|
464
|
+
const objectType = this.createEmptyObjectType();
|
|
465
|
+
this.typeCache.set(signature, objectType);
|
|
466
|
+
return objectType;
|
|
467
|
+
}
|
|
457
468
|
// Pre-cache as unknownType before resolving type aliases to prevent infinite
|
|
458
469
|
// recursion when alias resolution cycles back through getType with different type.ids
|
|
459
470
|
this.typeCache.set(signature, java_1.Type.unknownType);
|
|
@@ -770,6 +781,29 @@ class JavaScriptTypeMapping {
|
|
|
770
781
|
}
|
|
771
782
|
methodType(node) {
|
|
772
783
|
var _a, _b, _c;
|
|
784
|
+
// An object literal is a `J.NewClass`, and `J.NewClass.getType()` reads
|
|
785
|
+
// `constructorType.returnType`, as it does for a Java anonymous class.
|
|
786
|
+
if (typescript_1.default.isObjectLiteralExpression(node)) {
|
|
787
|
+
const objectType = this.type(node);
|
|
788
|
+
if (!java_1.Type.isFullyQualified(objectType)) {
|
|
789
|
+
return undefined;
|
|
790
|
+
}
|
|
791
|
+
return {
|
|
792
|
+
kind: java_1.Type.Kind.Method,
|
|
793
|
+
flags: 0,
|
|
794
|
+
declaringType: objectType,
|
|
795
|
+
name: '<constructor>',
|
|
796
|
+
returnType: objectType,
|
|
797
|
+
parameterNames: [],
|
|
798
|
+
parameterTypes: [],
|
|
799
|
+
thrownExceptions: [],
|
|
800
|
+
annotations: [],
|
|
801
|
+
declaredFormalTypeNames: [],
|
|
802
|
+
toJSON: function () {
|
|
803
|
+
return java_1.Type.signature(this);
|
|
804
|
+
}
|
|
805
|
+
};
|
|
806
|
+
}
|
|
773
807
|
let signature;
|
|
774
808
|
let methodName;
|
|
775
809
|
let declaringType;
|
|
@@ -1555,6 +1589,22 @@ class JavaScriptTypeMapping {
|
|
|
1555
1589
|
gtv.bounds = bounds;
|
|
1556
1590
|
return gtv;
|
|
1557
1591
|
}
|
|
1592
|
+
createEmptyObjectType() {
|
|
1593
|
+
return {
|
|
1594
|
+
kind: java_1.Type.Kind.Class,
|
|
1595
|
+
flags: 0,
|
|
1596
|
+
classKind: java_1.Type.Class.Kind.Interface,
|
|
1597
|
+
fullyQualifiedName: OBJECT_TYPE_NAME,
|
|
1598
|
+
typeParameters: [],
|
|
1599
|
+
annotations: [],
|
|
1600
|
+
interfaces: [],
|
|
1601
|
+
members: [],
|
|
1602
|
+
methods: [],
|
|
1603
|
+
toJSON: function () {
|
|
1604
|
+
return java_1.Type.signature(this);
|
|
1605
|
+
}
|
|
1606
|
+
};
|
|
1607
|
+
}
|
|
1558
1608
|
/**
|
|
1559
1609
|
* Create an empty function type shell with FQN 𝑓.
|
|
1560
1610
|
* The shell will be populated later to handle circular references.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-mapping.js","sourceRoot":"","sources":["../../src/javascript/type-mapping.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"type-mapping.js","sourceRoot":"","sources":["../../src/javascript/type-mapping.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
8.91.
|
|
1
|
+
8.91.1
|
package/dist/style.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ import { Marker, MarkersKind } from "./markers";
|
|
|
2
2
|
export interface Style {
|
|
3
3
|
readonly kind: string;
|
|
4
4
|
}
|
|
5
|
+
/** Style markers carry their own kind (e.g. Autodetect, PrettierStyle), so `styles` is what identifies one. */
|
|
6
|
+
export declare function isNamedStyles(marker: Marker): marker is NamedStyles<string>;
|
|
5
7
|
export interface NamedStyles<K extends string = typeof MarkersKind.NamedStyles> extends Marker {
|
|
6
8
|
readonly kind: K;
|
|
7
9
|
readonly name: string;
|
package/dist/style.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,WAAW,CAAC;AAG9C,MAAM,WAAW,KAAK;IAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,OAAO,WAAW,CAAC,WAAW,CAAE,SAAQ,MAAM;IAC1F,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;CAC5B"}
|
|
1
|
+
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,WAAW,CAAC;AAG9C,MAAM,WAAW,KAAK;IAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACxB;AAED,+GAA+G;AAC/G,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC,MAAM,CAAC,CAE3E;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,OAAO,WAAW,CAAC,WAAW,CAAE,SAAQ,MAAM;IAC1F,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;CAC5B"}
|
package/dist/style.js
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isNamedStyles = isNamedStyles;
|
|
4
|
+
/** Style markers carry their own kind (e.g. Autodetect, PrettierStyle), so `styles` is what identifies one. */
|
|
5
|
+
function isNamedStyles(marker) {
|
|
6
|
+
return Array.isArray(marker.styles);
|
|
7
|
+
}
|
|
3
8
|
//# sourceMappingURL=style.js.map
|
package/dist/style.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.js","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"style.js","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":";;AAuBA,sCAEC;AAHD,+GAA+G;AAC/G,SAAgB,aAAa,CAAC,MAAc;IACxC,OAAO,KAAK,CAAC,OAAO,CAAE,MAAuC,CAAC,MAAM,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -27,7 +27,19 @@ export declare class RecipeSpec {
|
|
|
27
27
|
*/
|
|
28
28
|
recipeExecutionContext: ExecutionContext;
|
|
29
29
|
private dataTableAssertions;
|
|
30
|
+
private static live?;
|
|
31
|
+
private suiteConfiguration?;
|
|
32
|
+
constructor();
|
|
30
33
|
dataTable<Row>(name: string, allRows: (rows: Row[]) => void): void;
|
|
34
|
+
private configuration;
|
|
35
|
+
/** Starts recording specs, so that the calls below have something to act on. */
|
|
36
|
+
static trackSuiteConfiguration(): void;
|
|
37
|
+
/** Records the configuration each test in the current suite starts from. */
|
|
38
|
+
static captureSuiteConfiguration(): void;
|
|
39
|
+
/** Undoes whatever the previous test configured. */
|
|
40
|
+
static restoreSuiteConfiguration(): void;
|
|
41
|
+
/** Bounds the registry to the suite that is running, which is all it has to span. */
|
|
42
|
+
static forgetSuiteSpecs(): void;
|
|
31
43
|
rewriteRun(...sourceSpecs: (SourceSpec<any> | Generator<SourceSpec<any>, void, unknown> | AsyncGenerator<SourceSpec<any>, void, unknown>)[]): Promise<void>;
|
|
32
44
|
private expectNoParseFailures;
|
|
33
45
|
private expectParsePrintIdempotence;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite-test.d.ts","sourceRoot":"","sources":["../../src/test/rewrite-test.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAc,WAAW,EAAC,MAAM,YAAY,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"rewrite-test.d.ts","sourceRoot":"","sources":["../../src/test/rewrite-test.ts"],"names":[],"mappings":"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"}
|