@typeorm/codemod 1.0.2 → 1.0.3-nightly.20261009

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2015-2025 TypeORM. http://typeorm.github.io
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
package/README.md CHANGED
@@ -53,7 +53,7 @@ npx prettier --write src/ # or: npx eslint --fix src/
53
53
 
54
54
  ### Scoping
55
55
 
56
- Transforms that rename properties or methods (e.g. `.connection` to `.dataSource`) rely on type annotations to identify TypeORM instances. Code that uses TypeORM APIs without type annotations may not be transformed automatically — review `git diff` after running.
56
+ Transforms that rename properties or methods (e.g. `.connection` to `.dataSource`) identify TypeORM instances through type annotations. They also recognize untyped class fields whose initializer is a known accessor chain (e.g. `private manager = this.dataSource.manager`). Code with no typing signal at all may not be transformed automatically — review `git diff` after running.
57
57
 
58
58
  ## Documentation
59
59
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isRepositoryReceiver = exports.collectRepositoryBindings = exports.TYPEORM_DATASOURCE_TYPES = exports.TYPEORM_REPOSITORY_TYPES = exports.getTypeReferenceRootName = exports.renameMemberMethod = exports.renameReExportSpecifiers = exports.removeReExportSpecifiers = exports.removeImportSpecifiers = exports.removeObjectPropertiesWhere = exports.removeObjectProperties = exports.unwrapTsExpression = exports.isFindMethodCallArgument = exports.isObjectFromEntriesCall = exports.TYPEORM_FIND_OPTIONS_METHODS = exports.getObjectPropertyKeyName = exports.forEachDecoratorObjectArg = exports.expandLocalNamesForImports = exports.TYPEORM_COLUMN_DECORATORS = exports.forEachIdentifierParam = exports.getNamespaceLocalNames = exports.getLocalNamesForImport = exports.fileImportsFrom = exports.isIdentifier = exports.setStringValue = exports.getStringValue = void 0;
3
+ exports.isRepositoryReceiver = exports.collectRepositoryBindings = exports.TYPEORM_DATASOURCE_TYPES = exports.TYPEORM_REPOSITORY_TYPES = exports.getTypeReferenceRootName = exports.renameMemberMethod = exports.renameReExportSpecifiers = exports.removeReExportSpecifiers = exports.removeImportSpecifiers = exports.removeObjectPropertiesWhere = exports.removeObjectProperties = exports.unwrapTsExpression = exports.isFindMethodCallArgument = exports.isObjectFromEntriesCall = exports.TYPEORM_FIND_OPTIONS_METHODS = exports.forEachColumnMetadataOptionsArg = exports.getObjectPropertyKeyName = exports.forEachDecoratorObjectArg = exports.expandLocalNamesForImports = exports.TYPEORM_COLUMN_DECORATORS = exports.forEachIdentifierParam = exports.getNamespaceLocalNames = exports.getLocalNamesForImport = exports.fileImportsFrom = exports.isIdentifier = exports.setStringValue = exports.getStringValue = void 0;
4
4
  /**
5
5
  * Extracts a string value from a StringLiteral or Literal node.
6
6
  * Returns null if the node is not a string literal.
@@ -87,31 +87,69 @@ exports.fileImportsFrom = fileImportsFrom;
87
87
  * import { RelationCount as RC } from "typeorm" → { "RC" }
88
88
  * const { RelationCount } = require("typeorm") → { "RelationCount" }
89
89
  * const { RelationCount: RC } = require("typeorm")→ { "RC" }
90
+ *
91
+ * Matches both the exact module name and any sub-path — e.g. when moduleName
92
+ * is `"typeorm"`, imports from `"typeorm/metadata/ColumnMetadata"` are also
93
+ * recognised. TypeORM users reach internal types through deep imports, and
94
+ * the codemod must rewrite them regardless of import shape.
95
+ *
96
+ * CommonJS `require` destructures are collected from module scope only; an
97
+ * inside-function `require` would sit in an inner scope where the call-site
98
+ * shadow guards reject rewrites, so collecting it would silently mislead
99
+ * callers. See the inline comment on the CJS branch for details.
100
+ *
101
+ * @param opts.valueOnly When true, skip ESM type-only imports — both the
102
+ * declaration-level `import type { X }` and the per-specifier
103
+ * `import { type X }` form. Use this when the local is going to appear as
104
+ * a *value* in the rewritten code (e.g. callee of `new X(...)` or
105
+ * `X.method()`); a type-only import creates no runtime binding and must
106
+ * not influence value-level matching. CommonJS `require` destructures and
107
+ * TS `import = require` forms always produce value bindings so they are
108
+ * included regardless.
90
109
  */
91
- const getLocalNamesForImport = (root, j, moduleName, importedName) => {
110
+ const getLocalNamesForImport = (root, j, moduleName, importedName, opts = {}) => {
92
111
  const localNames = new Set();
93
- // ESM: `import { X [as Y] } from "moduleName"`
94
- root.find(j.ImportDeclaration, {
95
- source: { value: moduleName },
96
- }).forEach((importPath) => {
112
+ const { valueOnly = false } = opts;
113
+ const prefix = `${moduleName}/`;
114
+ const matchesModule = (source) => typeof source === "string" &&
115
+ (source === moduleName || source.startsWith(prefix));
116
+ // ESM: `import { X [as Y] } from "moduleName[/subpath]"`
117
+ root.find(j.ImportDeclaration).forEach((importPath) => {
118
+ if (!matchesModule(importPath.node.source.value))
119
+ return;
120
+ const declKind = importPath.node.importKind;
121
+ if (valueOnly && declKind === "type")
122
+ return;
97
123
  for (const spec of importPath.node.specifiers ?? []) {
98
124
  if (spec.type !== "ImportSpecifier" ||
99
125
  spec.imported.type !== "Identifier" ||
100
126
  spec.imported.name !== importedName) {
101
127
  continue;
102
128
  }
129
+ const specKind = spec.importKind;
130
+ if (valueOnly && specKind === "type")
131
+ continue;
103
132
  const local = spec.local ?? spec.imported;
104
133
  if (local.type === "Identifier") {
105
134
  localNames.add(local.name);
106
135
  }
107
136
  }
108
137
  });
109
- // CommonJS: `const { X [: Y] } = require("moduleName")`
138
+ // CommonJS: `const { X [: Y] } = require("moduleName[/subpath]")`
139
+ // Only top-level requires are collected. An inside-function require
140
+ // creates a binding at non-module scope, and the call-site scope guard
141
+ // in `forEachColumnMetadataOptionsArg` rejects callees whose declaration
142
+ // lives in any inner scope (shadow guard). Collecting inner-scope
143
+ // requires here would make the collector and the guard disagree — the
144
+ // name would be in `classLocalNames` but the rewrite would never fire.
145
+ // Users with inside-function requires can hoist them to module scope.
110
146
  root.find(j.CallExpression, {
111
147
  callee: { type: "Identifier", name: "require" },
112
148
  }).forEach((callPath) => {
113
149
  const [arg] = callPath.node.arguments;
114
- if (!arg || (0, exports.getStringValue)(arg) !== moduleName)
150
+ if (!arg || !matchesModule((0, exports.getStringValue)(arg)))
151
+ return;
152
+ if (callPath.scope?.isGlobal !== true)
115
153
  return;
116
154
  const parent = callPath.parent.node;
117
155
  if (parent.type !== "VariableDeclarator")
@@ -155,13 +193,31 @@ exports.getLocalNamesForImport = getLocalNamesForImport;
155
193
  *
156
194
  * Useful when a transform needs to recognise `typeorm.Foo` member-expression
157
195
  * references alongside named `Foo` imports handled by `getLocalNamesForImport`.
196
+ *
197
+ * CJS namespace `require` bindings are collected from module scope only,
198
+ * matching the module-scope guard that `getLocalNamesForImport` applies for
199
+ * destructured requires — same reasoning, see the CJS branch comment there.
200
+ *
201
+ * @param opts.valueOnly When true, skip ESM type-only namespace imports
202
+ * (`import type * as ns from "..."`). Use this when the local name is
203
+ * going to appear as a *value* in the rewritten code (e.g. callee of
204
+ * `new ns.X(...)`); a type-only import creates no runtime binding. CJS
205
+ * `require` and TS `import = require` forms are always value bindings and
206
+ * remain included regardless.
158
207
  */
159
- const getNamespaceLocalNames = (root, j, moduleName) => {
208
+ const getNamespaceLocalNames = (root, j, moduleName, opts = {}) => {
160
209
  const localNames = new Set();
161
- // ESM: `import * as ns from "moduleName"`
162
- root.find(j.ImportDeclaration, {
163
- source: { value: moduleName },
164
- }).forEach((importPath) => {
210
+ const { valueOnly = false } = opts;
211
+ const prefix = `${moduleName}/`;
212
+ const matchesModule = (source) => typeof source === "string" &&
213
+ (source === moduleName || source.startsWith(prefix));
214
+ // ESM: `import * as ns from "moduleName[/subpath]"`
215
+ root.find(j.ImportDeclaration).forEach((importPath) => {
216
+ if (!matchesModule(importPath.node.source.value))
217
+ return;
218
+ const declKind = importPath.node.importKind;
219
+ if (valueOnly && declKind === "type")
220
+ return;
165
221
  for (const spec of importPath.node.specifiers ?? []) {
166
222
  if (spec.type === "ImportNamespaceSpecifier" &&
167
223
  spec.local?.type === "Identifier") {
@@ -169,23 +225,27 @@ const getNamespaceLocalNames = (root, j, moduleName) => {
169
225
  }
170
226
  }
171
227
  });
172
- // TypeScript: `import ns = require("moduleName")`
228
+ // TypeScript: `import ns = require("moduleName[/subpath]")`
173
229
  root.find(j.TSImportEqualsDeclaration).forEach((importPath) => {
174
230
  const ref = importPath.node.moduleReference;
175
231
  if (ref.type !== "TSExternalModuleReference")
176
232
  return;
177
- if ((0, exports.getStringValue)(ref.expression) !== moduleName)
233
+ if (!matchesModule((0, exports.getStringValue)(ref.expression)))
178
234
  return;
179
235
  if (importPath.node.id?.type === "Identifier") {
180
236
  localNames.add(importPath.node.id.name);
181
237
  }
182
238
  });
183
- // CommonJS: `const ns = require("moduleName")`
239
+ // CommonJS: `const ns = require("moduleName[/subpath]")`
240
+ // Top-level only — see the note in `getLocalNamesForImport` for why the
241
+ // collector and the call-site scope guard must agree on module scope.
184
242
  root.find(j.CallExpression, {
185
243
  callee: { type: "Identifier", name: "require" },
186
244
  }).forEach((callPath) => {
187
245
  const [arg] = callPath.node.arguments;
188
- if (!arg || (0, exports.getStringValue)(arg) !== moduleName)
246
+ if (!arg || !matchesModule((0, exports.getStringValue)(arg)))
247
+ return;
248
+ if (callPath.scope?.isGlobal !== true)
189
249
  return;
190
250
  const parent = callPath.parent.node;
191
251
  if (parent.type !== "VariableDeclarator" ||
@@ -239,11 +299,16 @@ exports.TYPEORM_COLUMN_DECORATORS = new Set([
239
299
  * the file — covers ESM aliases (`import { Column as C }`) and CJS aliases
240
300
  * (`const { Column: C } = require(...)`). Returns a union set suitable for
241
301
  * alias-aware identifier matching.
302
+ *
303
+ * @param opts.valueOnly Forwarded to `getLocalNamesForImport` — see there
304
+ * for semantics. Use when the expanded names will be matched against
305
+ * value-level usages (callees, method receivers) rather than type
306
+ * annotations.
242
307
  */
243
- const expandLocalNamesForImports = (root, j, moduleName, importedNames) => {
308
+ const expandLocalNamesForImports = (root, j, moduleName, importedNames, opts = {}) => {
244
309
  const expanded = new Set();
245
310
  for (const name of importedNames) {
246
- for (const local of (0, exports.getLocalNamesForImport)(root, j, moduleName, name)) {
311
+ for (const local of (0, exports.getLocalNamesForImport)(root, j, moduleName, name, opts)) {
247
312
  expanded.add(local);
248
313
  }
249
314
  }
@@ -284,27 +349,131 @@ const forEachDecoratorObjectArg = (root, j, callback, decoratorNames) => {
284
349
  exports.forEachDecoratorObjectArg = forEachDecoratorObjectArg;
285
350
  /**
286
351
  * Returns the key name for an `ObjectProperty` / `Property` node. Handles
287
- * both identifier keys (`name`) and string-literal keys (`"name"`); returns
288
- * null for computed, numeric, or otherwise non-string keys, and for node
289
- * types that don't carry a key at all (spread elements, etc.).
352
+ * both identifier keys (`name`) and string-literal keys (`"name"`), including
353
+ * the computed-string form (`['name']: …`) whose runtime key is still
354
+ * statically knowable. Returns null for dynamic computed keys (`[someVar]`,
355
+ * `[expr]`), numeric keys, and for node types that don't carry a key at all
356
+ * (spread elements, etc.).
290
357
  */
291
358
  const getObjectPropertyKeyName = (prop) => {
292
359
  if (prop.type !== "Property" && prop.type !== "ObjectProperty")
293
360
  return null;
361
+ // Computed keys whose expression is a string literal (`['foo']`) are
362
+ // equivalent at runtime to the plain-identifier form (`foo`), so match
363
+ // them. Dynamic computed keys (`[variable]`, `[fn()]`) stay opaque.
364
+ if (prop.computed)
365
+ return (0, exports.getStringValue)(prop.key);
294
366
  if (prop.key.type === "Identifier")
295
367
  return prop.key.name;
296
368
  return (0, exports.getStringValue)(prop.key);
297
369
  };
298
370
  exports.getObjectPropertyKeyName = getObjectPropertyKeyName;
371
+ /**
372
+ * Walks `new ColumnMetadata({ args: { options: {...} } })` constructor calls
373
+ * and invokes `callback` with the inner `options` ObjectExpression. Mirrors
374
+ * `forEachDecoratorObjectArg` but for the ColumnMetadata class constructor:
375
+ * its `args.options` object is typed `ColumnOptions`, so transforms that
376
+ * rewrite `ColumnOptions` fields (`readonly` → `update`, `width`/`zerofill`
377
+ * removal) must also cover this path. Rare in user code but shows up in
378
+ * multi-tenant / metadata-manipulation patterns.
379
+ *
380
+ * Recognised import / binding shapes, all via
381
+ * `expandLocalNamesForImports` / `getNamespaceLocalNames`:
382
+ *
383
+ * import { ColumnMetadata } from "typeorm"
384
+ * import { ColumnMetadata as CM } from "typeorm"
385
+ * import { ColumnMetadata } from "typeorm/metadata/ColumnMetadata" // sub-path
386
+ * import * as typeorm from "typeorm" // namespace
387
+ * import typeorm = require("typeorm") // TS import-equals
388
+ * const { ColumnMetadata } = require("typeorm") // CJS destructure
389
+ * const typeorm = require("typeorm") // CJS namespace
390
+ *
391
+ * Type-only imports (declaration-level `import type { X }` and per-specifier
392
+ * `import { type X }`, same for `import type * as`) are filtered via
393
+ * `valueOnly: true` — `new X(...)` needs a runtime binding, and a type-only
394
+ * import creates none.
395
+ *
396
+ * Name-level matches are further gated by a scope check: the callee
397
+ * identifier must resolve to the module-level import binding and not a
398
+ * shadowing declaration in an inner scope (function parameter, nested
399
+ * `const`/`let`/`var`, class declaration, catch binding).
400
+ */
401
+ const forEachColumnMetadataOptionsArg = (root, j, target, callback) => {
402
+ const classLocalNames = (0, exports.expandLocalNamesForImports)(root, j, target.moduleName, new Set([target.className]), { valueOnly: true });
403
+ const namespaceLocalNames = (0, exports.getNamespaceLocalNames)(root, j, target.moduleName, { valueOnly: true });
404
+ if (classLocalNames.size === 0 && namespaceLocalNames.size === 0)
405
+ return;
406
+ const resolvesToModuleScope = (path, name) => {
407
+ let scope = path.scope;
408
+ while (scope) {
409
+ if (scope.isGlobal === true || !scope.parent)
410
+ return true;
411
+ if (scope.declares(name))
412
+ return false;
413
+ scope = scope.parent;
414
+ }
415
+ return true;
416
+ };
417
+ const matchesCallee = (callee, path) => {
418
+ if (callee.type === "Identifier") {
419
+ if (!classLocalNames.has(callee.name))
420
+ return false;
421
+ return resolvesToModuleScope(path, callee.name);
422
+ }
423
+ if ((callee.type === "MemberExpression" ||
424
+ callee.type === "OptionalMemberExpression") &&
425
+ callee.computed !== true) {
426
+ const obj = callee.object;
427
+ const prop = callee.property;
428
+ if ((0, exports.isIdentifier)(obj) &&
429
+ (0, exports.isIdentifier)(prop) &&
430
+ prop.name === target.className) {
431
+ if (!namespaceLocalNames.has(obj.name))
432
+ return false;
433
+ return resolvesToModuleScope(path, obj.name);
434
+ }
435
+ }
436
+ return false;
437
+ };
438
+ // Returns the property value as an ObjectExpression if the property with
439
+ // the given key exists and its value is an ObjectExpression (after peeling
440
+ // TS wrappers like `as` / `satisfies` / `!` / parens). Uses `findLast` so
441
+ // duplicate keys match JS object-literal semantics (last occurrence wins).
442
+ const findObjectPropertyValue = (obj, keyName) => {
443
+ const prop = obj.properties.findLast((p) => (0, exports.getObjectPropertyKeyName)(p) === keyName);
444
+ if (!prop ||
445
+ (prop.type !== "Property" && prop.type !== "ObjectProperty")) {
446
+ return null;
447
+ }
448
+ const value = (0, exports.unwrapTsExpression)(prop.value);
449
+ return value.type === "ObjectExpression" ? value : null;
450
+ };
451
+ root.find(j.NewExpression).forEach((path) => {
452
+ if (!matchesCallee(path.node.callee, path))
453
+ return;
454
+ const [firstArg] = path.node.arguments;
455
+ const arg = firstArg ? (0, exports.unwrapTsExpression)(firstArg) : undefined;
456
+ if (arg?.type !== "ObjectExpression")
457
+ return;
458
+ const argsValue = findObjectPropertyValue(arg, "args");
459
+ if (!argsValue)
460
+ return;
461
+ const optionsValue = findObjectPropertyValue(argsValue, "options");
462
+ if (!optionsValue)
463
+ return;
464
+ callback(optionsValue, path);
465
+ });
466
+ };
467
+ exports.forEachColumnMetadataOptionsArg = forEachColumnMetadataOptionsArg;
299
468
  /**
300
469
  * TypeORM `Repository` / `EntityManager` methods that accept a FindOptions
301
470
  * object (with `select`/`relations`/`where`/…). Used to scope the
302
471
  * `select: [...]` / `relations: [...]` → object-form transforms to
303
472
  * arguments passed into these methods. Deliberately excludes the
304
473
  * `*By` variants (`findBy`, `findOneBy`, `findOneByOrFail`,
305
- * `findAndCountBy`, `countBy`) — those accept a plain WHERE object, so
306
- * rewriting a top-level `select` or `relations` key there would mangle
307
- * matches against entity fields of those names.
474
+ * `findAndCountBy`, `countBy`, `existsBy`) — those accept a plain WHERE
475
+ * object, so rewriting a top-level `select` or `relations` key there would
476
+ * mangle matches against entity fields of those names.
308
477
  *
309
478
  * The method-name check (rather than a file-level typeorm import gate)
310
479
  * lets the transforms fire in NestJS-style service files that only pull
@@ -316,6 +485,7 @@ exports.TYPEORM_FIND_OPTIONS_METHODS = new Set([
316
485
  "findOne",
317
486
  "findOneOrFail",
318
487
  "count",
488
+ "exists",
319
489
  ]);
320
490
  /**
321
491
  * Returns true when `node` is a call of shape `Object.fromEntries(...)`.
@@ -1 +1 @@
1
- {"version":3,"file":"ast-helpers.js","sourceRoot":"","sources":["../../src/transforms/ast-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast-helpers.js","sourceRoot":"","sources":["../../src/transforms/ast-helpers.ts"],"names":[],"mappings":"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"}
@@ -12,20 +12,33 @@ const columnReadonly = (file, api) => {
12
12
  const j = api.jscodeshift;
13
13
  const root = j(file.source);
14
14
  let hasChanges = false;
15
- const decoratorLocalNames = (0, ast_helpers_1.expandLocalNamesForImports)(root, j, "typeorm", ast_helpers_1.TYPEORM_COLUMN_DECORATORS);
16
- (0, ast_helpers_1.forEachDecoratorObjectArg)(root, j, (obj) => {
15
+ const rewriteReadonlyInObject = (obj) => {
17
16
  for (const prop of obj.properties) {
18
- if (prop.type !== "ObjectProperty")
17
+ // `getObjectPropertyKeyName` returns null for dynamic computed
18
+ // keys (`{[readonlyVar]: …}`), but recognises constant computed
19
+ // string literals (`{['readonly']: …}`) as statically knowable.
20
+ if ((0, ast_helpers_1.getObjectPropertyKeyName)(prop) !== "readonly")
19
21
  continue;
20
- const keyName = prop.key.type === "Identifier"
21
- ? prop.key.name
22
- : (0, ast_helpers_1.getStringValue)(prop.key);
23
- if (keyName !== "readonly")
22
+ if (prop.type !== "ObjectProperty" && prop.type !== "Property") {
24
23
  continue;
24
+ }
25
25
  // readonly: true → update: false
26
26
  // readonly: false → update: true
27
27
  // readonly: <expr> → update: !<expr>
28
28
  prop.key = j.identifier("update");
29
+ // The identifier replacement doesn't need brackets, so drop the
30
+ // computed flag in case the input was `['readonly']: …`.
31
+ prop.computed = false;
32
+ // Shorthand (`{ readonly }`) folds key and value into one
33
+ // Identifier node. After replacing the key we also replace the
34
+ // value — with the negated boolean / stripped `!` / wrapped
35
+ // negation — so the node is no longer shorthand. Clear the flag
36
+ // so the printer doesn't emit `{ update }` with `value === key`
37
+ // mismatch. Other codemods in this repo follow the same pattern.
38
+ if (prop.shorthand) {
39
+ ;
40
+ prop.shorthand = false;
41
+ }
29
42
  if (prop.value.type === "BooleanLiteral" ||
30
43
  (prop.value.type === "Literal" &&
31
44
  typeof prop.value.value === "boolean")) {
@@ -43,7 +56,14 @@ const columnReadonly = (file, api) => {
43
56
  }
44
57
  hasChanges = true;
45
58
  }
46
- }, decoratorLocalNames);
59
+ };
60
+ const decoratorLocalNames = (0, ast_helpers_1.expandLocalNamesForImports)(root, j, "typeorm", ast_helpers_1.TYPEORM_COLUMN_DECORATORS, { valueOnly: true });
61
+ (0, ast_helpers_1.forEachDecoratorObjectArg)(root, j, rewriteReadonlyInObject, decoratorLocalNames);
62
+ // Also rewrite `new ColumnMetadata({ args: { options: { readonly, … } } })`.
63
+ // `ColumnMetadataArgs.options` is typed `ColumnOptions`, so the same
64
+ // `readonly` → `update` rename applies. Covers both direct and namespace-
65
+ // qualified imports; type-only imports are skipped by the helper.
66
+ (0, ast_helpers_1.forEachColumnMetadataOptionsArg)(root, j, { moduleName: "typeorm", className: "ColumnMetadata" }, rewriteReadonlyInObject);
47
67
  return hasChanges ? root.toSource() : undefined;
48
68
  };
49
69
  exports.columnReadonly = columnReadonly;
@@ -1 +1 @@
1
- {"version":3,"file":"column-readonly.js","sourceRoot":"","sources":["../../../src/transforms/v1/column-readonly.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,gDAKuB;AAEV,QAAA,IAAI,GAAG,mBAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;AAC1D,QAAA,WAAW,GAAG,gDAAgD,CAAA;AAEpE,MAAM,cAAc,GAAG,CAAC,IAAc,EAAE,GAAQ,EAAE,EAAE;IACvD,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAA;IACzB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC3B,IAAI,UAAU,GAAG,KAAK,CAAA;IAEtB,MAAM,mBAAmB,GAAG,IAAA,wCAA0B,EAClD,IAAI,EACJ,CAAC,EACD,SAAS,EACT,uCAAyB,CAC5B,CAAA;IACD,IAAA,uCAAyB,EACrB,IAAI,EACJ,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;QACJ,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB;gBAAE,SAAQ;YAE5C,MAAM,OAAO,GACT,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,YAAY;gBAC1B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;gBACf,CAAC,CAAC,IAAA,4BAAc,EAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAClC,IAAI,OAAO,KAAK,UAAU;gBAAE,SAAQ;YAEpC,mCAAmC;YACnC,kCAAkC;YAClC,qCAAqC;YACrC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YACjC,IACI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB;gBACpC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;oBAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,EAC5C,CAAC;gBACC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;YACxC,CAAC;iBAAM,IACH,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB;gBACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,GAAG,EAC7B,CAAC;gBACC,yDAAyD;gBACzD,oCAAoC;gBACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;YACpC,CAAC;iBAAM,CAAC;gBACJ,8DAA8D;gBAC9D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,eAAe,CAC1B,GAAG,EACH,IAAI,CAAC,KAAoC,EACzC,IAAI,CACP,CAAA;YACL,CAAC;YACD,UAAU,GAAG,IAAI,CAAA;QACrB,CAAC;IACL,CAAC,EACD,mBAAmB,CACtB,CAAA;IAED,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AACnD,CAAC,CAAA;AAxDY,QAAA,cAAc,kBAwD1B;AAEY,QAAA,EAAE,GAAG,sBAAc,CAAA;AAChC,kBAAe,UAAE,CAAA"}
1
+ {"version":3,"file":"column-readonly.js","sourceRoot":"","sources":["../../../src/transforms/v1/column-readonly.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,18 @@ const columnWidthZerofill = (file, api) => {
13
13
  const j = api.jscodeshift;
14
14
  const root = j(file.source);
15
15
  let hasChanges = false;
16
- const decoratorLocalNames = (0, ast_helpers_1.expandLocalNamesForImports)(root, j, "typeorm", ast_helpers_1.TYPEORM_COLUMN_DECORATORS);
17
- (0, ast_helpers_1.forEachDecoratorObjectArg)(root, j, (obj) => {
16
+ const stripWidthAndZerofill = (obj) => {
18
17
  if ((0, ast_helpers_1.removeObjectProperties)(obj, propsToRemove)) {
19
18
  hasChanges = true;
20
19
  }
21
- }, decoratorLocalNames);
20
+ };
21
+ const decoratorLocalNames = (0, ast_helpers_1.expandLocalNamesForImports)(root, j, "typeorm", ast_helpers_1.TYPEORM_COLUMN_DECORATORS, { valueOnly: true });
22
+ (0, ast_helpers_1.forEachDecoratorObjectArg)(root, j, stripWidthAndZerofill, decoratorLocalNames);
23
+ // Also strip from `new ColumnMetadata({ args: { options: { width, zerofill, … } } })`.
24
+ // `ColumnMetadataArgs.options` is typed `ColumnOptions`, which no longer
25
+ // has `width` or `zerofill` in v1. Covers both direct and namespace-
26
+ // qualified imports; type-only imports are skipped by the helper.
27
+ (0, ast_helpers_1.forEachColumnMetadataOptionsArg)(root, j, { moduleName: "typeorm", className: "ColumnMetadata" }, stripWidthAndZerofill);
22
28
  return hasChanges ? root.toSource() : undefined;
23
29
  };
24
30
  exports.columnWidthZerofill = columnWidthZerofill;
@@ -1 +1 @@
1
- {"version":3,"file":"column-width-zerofill.js","sourceRoot":"","sources":["../../../src/transforms/v1/column-width-zerofill.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,gDAKuB;AAEV,QAAA,IAAI,GAAG,mBAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;AAC1D,QAAA,WAAW,GACpB,sDAAsD,CAAA;AAE1D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAE7C,MAAM,mBAAmB,GAAG,CAAC,IAAc,EAAE,GAAQ,EAAE,EAAE;IAC5D,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAA;IACzB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC3B,IAAI,UAAU,GAAG,KAAK,CAAA;IAEtB,MAAM,mBAAmB,GAAG,IAAA,wCAA0B,EAClD,IAAI,EACJ,CAAC,EACD,SAAS,EACT,uCAAyB,CAC5B,CAAA;IACD,IAAA,uCAAyB,EACrB,IAAI,EACJ,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;QACJ,IAAI,IAAA,oCAAsB,EAAC,GAAG,EAAE,aAAa,CAAC,EAAE,CAAC;YAC7C,UAAU,GAAG,IAAI,CAAA;QACrB,CAAC;IACL,CAAC,EACD,mBAAmB,CACtB,CAAA;IAED,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AACnD,CAAC,CAAA;AAvBY,QAAA,mBAAmB,uBAuB/B;AAEY,QAAA,EAAE,GAAG,2BAAmB,CAAA;AACrC,kBAAe,UAAE,CAAA"}
1
+ {"version":3,"file":"column-width-zerofill.js","sourceRoot":"","sources":["../../../src/transforms/v1/column-width-zerofill.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,gDAMuB;AAEV,QAAA,IAAI,GAAG,mBAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;AAC1D,QAAA,WAAW,GACpB,sDAAsD,CAAA;AAE1D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAE7C,MAAM,mBAAmB,GAAG,CAAC,IAAc,EAAE,GAAQ,EAAE,EAAE;IAC5D,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAA;IACzB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC3B,IAAI,UAAU,GAAG,KAAK,CAAA;IAEtB,MAAM,qBAAqB,GAAG,CAAC,GAAqB,EAAQ,EAAE;QAC1D,IAAI,IAAA,oCAAsB,EAAC,GAAG,EAAE,aAAa,CAAC,EAAE,CAAC;YAC7C,UAAU,GAAG,IAAI,CAAA;QACrB,CAAC;IACL,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,IAAA,wCAA0B,EAClD,IAAI,EACJ,CAAC,EACD,SAAS,EACT,uCAAyB,EACzB,EAAE,SAAS,EAAE,IAAI,EAAE,CACtB,CAAA;IACD,IAAA,uCAAyB,EACrB,IAAI,EACJ,CAAC,EACD,qBAAqB,EACrB,mBAAmB,CACtB,CAAA;IAED,uFAAuF;IACvF,yEAAyE;IACzE,qEAAqE;IACrE,kEAAkE;IAClE,IAAA,6CAA+B,EAC3B,IAAI,EACJ,CAAC,EACD,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,EACtD,qBAAqB,CACxB,CAAA;IAED,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AACnD,CAAC,CAAA;AArCY,QAAA,mBAAmB,uBAqC/B;AAEY,QAAA,EAAE,GAAG,2BAAmB,CAAA;AACrC,kBAAe,UAAE,CAAA"}