@payloadcms/codemod 4.0.0-internal.cb69780 → 4.0.0-internal.cd47d20
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/README.md +1 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +2 -0
- package/dist/registry.js.map +1 -1
- package/dist/runbook/v4.mdx +18 -0
- package/dist/transforms/remove-strict-draft-types/basic.input.js +28 -0
- package/dist/transforms/remove-strict-draft-types/basic.input.js.map +1 -0
- package/dist/transforms/remove-strict-draft-types/basic.output.js +24 -0
- package/dist/transforms/remove-strict-draft-types/basic.output.js.map +1 -0
- package/dist/transforms/remove-strict-draft-types/index.d.ts +3 -0
- package/dist/transforms/remove-strict-draft-types/index.d.ts.map +1 -0
- package/dist/transforms/remove-strict-draft-types/index.js +44 -0
- package/dist/transforms/remove-strict-draft-types/index.js.map +1 -0
- package/dist/transforms/remove-strict-draft-types/no-match.input.js +11 -0
- package/dist/transforms/remove-strict-draft-types/no-match.input.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -81,6 +81,7 @@ The tool loads your project via [ts-morph](https://ts-morph.com/), using your `t
|
|
|
81
81
|
|
|
82
82
|
## Transforms
|
|
83
83
|
|
|
84
|
+
- `remove-strict-draft-types`: removes `typescript.strictDraftTypes` from inline config objects regardless of its value. Strict draft types are always enabled in v4. Preserves other TypeScript options; indirect or spread settings must be updated manually.
|
|
84
85
|
- `migrate-list-view-select-api`: Removes `admin.enableListViewSelectAPI` from Collection Configs. The List View's Select API is the default in v4.
|
|
85
86
|
- `migrate-disabled-fields`: migrates `field.admin.disableListColumn`, `disableListFilter`, `disableGroupBy`, `disableBulkEdit` and their equivalents on `imageSize.admin` into the consolidated `disabled` object form.
|
|
86
87
|
- `globals-components-edit`: Globals: rename `admin.components.elements` to `admin.components.edit` and hoist `Description` to top-level `admin.components.Description` to match Collection conventions.
|
package/dist/registry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAoC3C,eAAO,MAAM,UAAU,EAAE,SAAS,EAkCjC,CAAA"}
|
package/dist/registry.js
CHANGED
|
@@ -26,6 +26,7 @@ import { removeGroupByTrue } from './transforms/remove-group-by-true/index.js';
|
|
|
26
26
|
import { removeLocalizeStatusConfig } from './transforms/remove-localize-status-config/index.js';
|
|
27
27
|
import { removePublishSpecificLocale } from './transforms/remove-publish-specific-locale/index.js';
|
|
28
28
|
import { removeStorageAlwaysInsertFields } from './transforms/remove-storage-always-insert-fields/index.js';
|
|
29
|
+
import { removeStrictDraftTypes } from './transforms/remove-strict-draft-types/index.js';
|
|
29
30
|
import { removeVersionsTrue } from './transforms/remove-versions-true/index.js';
|
|
30
31
|
import { renameExperimentalTableFeature } from './transforms/rename-experimental-table-feature/index.js';
|
|
31
32
|
import { renameStorageAdaptersToStorage } from './transforms/rename-storage-adapters-to-storage/index.js';
|
|
@@ -61,6 +62,7 @@ export const transforms = [
|
|
|
61
62
|
removeVersionsTrue,
|
|
62
63
|
removePublishSpecificLocale,
|
|
63
64
|
removeStorageAlwaysInsertFields,
|
|
65
|
+
removeStrictDraftTypes,
|
|
64
66
|
renameTypescriptSchemaToJsonSchema,
|
|
65
67
|
renameExperimentalTableFeature
|
|
66
68
|
];
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/registry.ts"],"sourcesContent":["import type { Transform } from './types.js'\n\nimport { addOverrideAccessTrue } from './transforms/add-override-access-true/index.js'\nimport { exampleNoop } from './transforms/example-noop/index.js'\nimport { globalsComponentsEdit } from './transforms/globals-components-edit/index.js'\nimport { migrateAfterOperationRead } from './transforms/migrate-after-operation-read/index.js'\nimport { migrateAliasedExports } from './transforms/migrate-aliased-exports/index.js'\nimport { migrateAuthorshipDefault } from './transforms/migrate-authorship-default/index.js'\nimport { migrateAzureChunkLargeFiles } from './transforms/migrate-azure-chunk-large-files/index.js'\nimport { migrateBlockReferencesToBlocks } from './transforms/migrate-block-references-to-blocks/index.js'\nimport { migrateBuildScript } from './transforms/migrate-build-script/index.js'\nimport { migrateDbTypesSubpath } from './transforms/migrate-db-types-subpath/index.js'\nimport { migrateDisabledFields } from './transforms/migrate-disabled-fields/index.js'\nimport { migrateDocumentTitleContext } from './transforms/migrate-document-title-context/index.js'\nimport { migrateFieldComponentTypes } from './transforms/migrate-field-component-types/index.js'\nimport { migrateForceSelect } from './transforms/migrate-force-select/index.js'\nimport { migrateHideAPIURL } from './transforms/migrate-hide-api-url/index.js'\nimport { migrateImportExportHooks } from './transforms/migrate-import-export-hooks/index.js'\nimport { migrateListViewSelectAPI } from './transforms/migrate-list-view-select-api/index.js'\nimport { migrateNextGenerateViewportExport } from './transforms/migrate-next-generate-viewport-export/index.js'\nimport { migrateNextSubpathExports } from './transforms/migrate-next-subpath-exports/index.js'\nimport { migratePayloadRequestCreation } from './transforms/migrate-payload-request-creation/index.js'\nimport { migrateSlugField } from './transforms/migrate-slug-field/index.js'\nimport { migrateStorageAdaptersToConfig } from './transforms/migrate-storage-adapters-to-config/index.js'\nimport { migrateVersionsDefault } from './transforms/migrate-versions-default/index.js'\nimport { removeDefaultLocalePublishOption } from './transforms/remove-default-locale-publish-option/index.js'\nimport { removeGroupByTrue } from './transforms/remove-group-by-true/index.js'\nimport { removeLocalizeStatusConfig } from './transforms/remove-localize-status-config/index.js'\nimport { removePublishSpecificLocale } from './transforms/remove-publish-specific-locale/index.js'\nimport { removeStorageAlwaysInsertFields } from './transforms/remove-storage-always-insert-fields/index.js'\nimport { removeVersionsTrue } from './transforms/remove-versions-true/index.js'\nimport { renameExperimentalTableFeature } from './transforms/rename-experimental-table-feature/index.js'\nimport { renameStorageAdaptersToStorage } from './transforms/rename-storage-adapters-to-storage/index.js'\nimport { renameTypescriptSchemaToJsonSchema } from './transforms/rename-typescript-schema-to-json-schema/index.js'\n\nexport const transforms: Transform[] = [\n exampleNoop,\n addOverrideAccessTrue,\n migrateAfterOperationRead,\n migrateHideAPIURL,\n globalsComponentsEdit,\n migrateListViewSelectAPI,\n migrateDisabledFields,\n migrateForceSelect,\n migrateFieldComponentTypes,\n migrateAliasedExports,\n migratePayloadRequestCreation,\n migrateBlockReferencesToBlocks,\n migrateBuildScript,\n migrateDocumentTitleContext,\n migrateStorageAdaptersToConfig,\n migrateAzureChunkLargeFiles,\n renameStorageAdaptersToStorage,\n migrateImportExportHooks,\n migrateDbTypesSubpath,\n migrateNextGenerateViewportExport,\n migrateNextSubpathExports,\n migrateSlugField,\n migrateVersionsDefault,\n migrateAuthorshipDefault,\n removeDefaultLocalePublishOption,\n removeGroupByTrue,\n removeLocalizeStatusConfig,\n removeVersionsTrue,\n removePublishSpecificLocale,\n removeStorageAlwaysInsertFields,\n renameTypescriptSchemaToJsonSchema,\n renameExperimentalTableFeature,\n]\n"],"names":["addOverrideAccessTrue","exampleNoop","globalsComponentsEdit","migrateAfterOperationRead","migrateAliasedExports","migrateAuthorshipDefault","migrateAzureChunkLargeFiles","migrateBlockReferencesToBlocks","migrateBuildScript","migrateDbTypesSubpath","migrateDisabledFields","migrateDocumentTitleContext","migrateFieldComponentTypes","migrateForceSelect","migrateHideAPIURL","migrateImportExportHooks","migrateListViewSelectAPI","migrateNextGenerateViewportExport","migrateNextSubpathExports","migratePayloadRequestCreation","migrateSlugField","migrateStorageAdaptersToConfig","migrateVersionsDefault","removeDefaultLocalePublishOption","removeGroupByTrue","removeLocalizeStatusConfig","removePublishSpecificLocale","removeStorageAlwaysInsertFields","removeVersionsTrue","renameExperimentalTableFeature","renameStorageAdaptersToStorage","renameTypescriptSchemaToJsonSchema","transforms"],"mappings":"AAEA,SAASA,qBAAqB,QAAQ,iDAAgD;AACtF,SAASC,WAAW,QAAQ,qCAAoC;AAChE,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,yBAAyB,QAAQ,qDAAoD;AAC9F,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,wBAAwB,QAAQ,mDAAkD;AAC3F,SAASC,2BAA2B,QAAQ,wDAAuD;AACnG,SAASC,8BAA8B,QAAQ,2DAA0D;AACzG,SAASC,kBAAkB,QAAQ,6CAA4C;AAC/E,SAASC,qBAAqB,QAAQ,iDAAgD;AACtF,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,2BAA2B,QAAQ,uDAAsD;AAClG,SAASC,0BAA0B,QAAQ,sDAAqD;AAChG,SAASC,kBAAkB,QAAQ,6CAA4C;AAC/E,SAASC,iBAAiB,QAAQ,6CAA4C;AAC9E,SAASC,wBAAwB,QAAQ,oDAAmD;AAC5F,SAASC,wBAAwB,QAAQ,qDAAoD;AAC7F,SAASC,iCAAiC,QAAQ,8DAA6D;AAC/G,SAASC,yBAAyB,QAAQ,qDAAoD;AAC9F,SAASC,6BAA6B,QAAQ,yDAAwD;AACtG,SAASC,gBAAgB,QAAQ,2CAA0C;AAC3E,SAASC,8BAA8B,QAAQ,2DAA0D;AACzG,SAASC,sBAAsB,QAAQ,iDAAgD;AACvF,SAASC,gCAAgC,QAAQ,6DAA4D;AAC7G,SAASC,iBAAiB,QAAQ,6CAA4C;AAC9E,SAASC,0BAA0B,QAAQ,sDAAqD;AAChG,SAASC,2BAA2B,QAAQ,uDAAsD;AAClG,SAASC,+BAA+B,QAAQ,4DAA2D;AAC3G,SAASC,kBAAkB,QAAQ,6CAA4C;AAC/E,SAASC,8BAA8B,QAAQ,0DAAyD;AACxG,SAASC,8BAA8B,QAAQ,2DAA0D;AACzG,SAASC,kCAAkC,QAAQ,gEAA+D;AAElH,OAAO,MAAMC,aAA0B;
|
|
1
|
+
{"version":3,"sources":["../src/registry.ts"],"sourcesContent":["import type { Transform } from './types.js'\n\nimport { addOverrideAccessTrue } from './transforms/add-override-access-true/index.js'\nimport { exampleNoop } from './transforms/example-noop/index.js'\nimport { globalsComponentsEdit } from './transforms/globals-components-edit/index.js'\nimport { migrateAfterOperationRead } from './transforms/migrate-after-operation-read/index.js'\nimport { migrateAliasedExports } from './transforms/migrate-aliased-exports/index.js'\nimport { migrateAuthorshipDefault } from './transforms/migrate-authorship-default/index.js'\nimport { migrateAzureChunkLargeFiles } from './transforms/migrate-azure-chunk-large-files/index.js'\nimport { migrateBlockReferencesToBlocks } from './transforms/migrate-block-references-to-blocks/index.js'\nimport { migrateBuildScript } from './transforms/migrate-build-script/index.js'\nimport { migrateDbTypesSubpath } from './transforms/migrate-db-types-subpath/index.js'\nimport { migrateDisabledFields } from './transforms/migrate-disabled-fields/index.js'\nimport { migrateDocumentTitleContext } from './transforms/migrate-document-title-context/index.js'\nimport { migrateFieldComponentTypes } from './transforms/migrate-field-component-types/index.js'\nimport { migrateForceSelect } from './transforms/migrate-force-select/index.js'\nimport { migrateHideAPIURL } from './transforms/migrate-hide-api-url/index.js'\nimport { migrateImportExportHooks } from './transforms/migrate-import-export-hooks/index.js'\nimport { migrateListViewSelectAPI } from './transforms/migrate-list-view-select-api/index.js'\nimport { migrateNextGenerateViewportExport } from './transforms/migrate-next-generate-viewport-export/index.js'\nimport { migrateNextSubpathExports } from './transforms/migrate-next-subpath-exports/index.js'\nimport { migratePayloadRequestCreation } from './transforms/migrate-payload-request-creation/index.js'\nimport { migrateSlugField } from './transforms/migrate-slug-field/index.js'\nimport { migrateStorageAdaptersToConfig } from './transforms/migrate-storage-adapters-to-config/index.js'\nimport { migrateVersionsDefault } from './transforms/migrate-versions-default/index.js'\nimport { removeDefaultLocalePublishOption } from './transforms/remove-default-locale-publish-option/index.js'\nimport { removeGroupByTrue } from './transforms/remove-group-by-true/index.js'\nimport { removeLocalizeStatusConfig } from './transforms/remove-localize-status-config/index.js'\nimport { removePublishSpecificLocale } from './transforms/remove-publish-specific-locale/index.js'\nimport { removeStorageAlwaysInsertFields } from './transforms/remove-storage-always-insert-fields/index.js'\nimport { removeStrictDraftTypes } from './transforms/remove-strict-draft-types/index.js'\nimport { removeVersionsTrue } from './transforms/remove-versions-true/index.js'\nimport { renameExperimentalTableFeature } from './transforms/rename-experimental-table-feature/index.js'\nimport { renameStorageAdaptersToStorage } from './transforms/rename-storage-adapters-to-storage/index.js'\nimport { renameTypescriptSchemaToJsonSchema } from './transforms/rename-typescript-schema-to-json-schema/index.js'\n\nexport const transforms: Transform[] = [\n exampleNoop,\n addOverrideAccessTrue,\n migrateAfterOperationRead,\n migrateHideAPIURL,\n globalsComponentsEdit,\n migrateListViewSelectAPI,\n migrateDisabledFields,\n migrateForceSelect,\n migrateFieldComponentTypes,\n migrateAliasedExports,\n migratePayloadRequestCreation,\n migrateBlockReferencesToBlocks,\n migrateBuildScript,\n migrateDocumentTitleContext,\n migrateStorageAdaptersToConfig,\n migrateAzureChunkLargeFiles,\n renameStorageAdaptersToStorage,\n migrateImportExportHooks,\n migrateDbTypesSubpath,\n migrateNextGenerateViewportExport,\n migrateNextSubpathExports,\n migrateSlugField,\n migrateVersionsDefault,\n migrateAuthorshipDefault,\n removeDefaultLocalePublishOption,\n removeGroupByTrue,\n removeLocalizeStatusConfig,\n removeVersionsTrue,\n removePublishSpecificLocale,\n removeStorageAlwaysInsertFields,\n removeStrictDraftTypes,\n renameTypescriptSchemaToJsonSchema,\n renameExperimentalTableFeature,\n]\n"],"names":["addOverrideAccessTrue","exampleNoop","globalsComponentsEdit","migrateAfterOperationRead","migrateAliasedExports","migrateAuthorshipDefault","migrateAzureChunkLargeFiles","migrateBlockReferencesToBlocks","migrateBuildScript","migrateDbTypesSubpath","migrateDisabledFields","migrateDocumentTitleContext","migrateFieldComponentTypes","migrateForceSelect","migrateHideAPIURL","migrateImportExportHooks","migrateListViewSelectAPI","migrateNextGenerateViewportExport","migrateNextSubpathExports","migratePayloadRequestCreation","migrateSlugField","migrateStorageAdaptersToConfig","migrateVersionsDefault","removeDefaultLocalePublishOption","removeGroupByTrue","removeLocalizeStatusConfig","removePublishSpecificLocale","removeStorageAlwaysInsertFields","removeStrictDraftTypes","removeVersionsTrue","renameExperimentalTableFeature","renameStorageAdaptersToStorage","renameTypescriptSchemaToJsonSchema","transforms"],"mappings":"AAEA,SAASA,qBAAqB,QAAQ,iDAAgD;AACtF,SAASC,WAAW,QAAQ,qCAAoC;AAChE,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,yBAAyB,QAAQ,qDAAoD;AAC9F,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,wBAAwB,QAAQ,mDAAkD;AAC3F,SAASC,2BAA2B,QAAQ,wDAAuD;AACnG,SAASC,8BAA8B,QAAQ,2DAA0D;AACzG,SAASC,kBAAkB,QAAQ,6CAA4C;AAC/E,SAASC,qBAAqB,QAAQ,iDAAgD;AACtF,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,2BAA2B,QAAQ,uDAAsD;AAClG,SAASC,0BAA0B,QAAQ,sDAAqD;AAChG,SAASC,kBAAkB,QAAQ,6CAA4C;AAC/E,SAASC,iBAAiB,QAAQ,6CAA4C;AAC9E,SAASC,wBAAwB,QAAQ,oDAAmD;AAC5F,SAASC,wBAAwB,QAAQ,qDAAoD;AAC7F,SAASC,iCAAiC,QAAQ,8DAA6D;AAC/G,SAASC,yBAAyB,QAAQ,qDAAoD;AAC9F,SAASC,6BAA6B,QAAQ,yDAAwD;AACtG,SAASC,gBAAgB,QAAQ,2CAA0C;AAC3E,SAASC,8BAA8B,QAAQ,2DAA0D;AACzG,SAASC,sBAAsB,QAAQ,iDAAgD;AACvF,SAASC,gCAAgC,QAAQ,6DAA4D;AAC7G,SAASC,iBAAiB,QAAQ,6CAA4C;AAC9E,SAASC,0BAA0B,QAAQ,sDAAqD;AAChG,SAASC,2BAA2B,QAAQ,uDAAsD;AAClG,SAASC,+BAA+B,QAAQ,4DAA2D;AAC3G,SAASC,sBAAsB,QAAQ,kDAAiD;AACxF,SAASC,kBAAkB,QAAQ,6CAA4C;AAC/E,SAASC,8BAA8B,QAAQ,0DAAyD;AACxG,SAASC,8BAA8B,QAAQ,2DAA0D;AACzG,SAASC,kCAAkC,QAAQ,gEAA+D;AAElH,OAAO,MAAMC,aAA0B;IACrChC;IACAD;IACAG;IACAW;IACAZ;IACAc;IACAN;IACAG;IACAD;IACAR;IACAe;IACAZ;IACAC;IACAG;IACAU;IACAf;IACAyB;IACAhB;IACAN;IACAQ;IACAC;IACAE;IACAE;IACAjB;IACAkB;IACAC;IACAC;IACAI;IACAH;IACAC;IACAC;IACAI;IACAF;CACD,CAAA"}
|
package/dist/runbook/v4.mdx
CHANGED
|
@@ -22,6 +22,24 @@ The codemod is idempotent and safe to run on a partially-migrated project.
|
|
|
22
22
|
|
|
23
23
|
## Breaking Changes
|
|
24
24
|
|
|
25
|
+
### Strict draft types are always enabled
|
|
26
|
+
|
|
27
|
+
The `typescript.strictDraftTypes` option has been removed. Remove it from your config and regenerate your types with `payload generate:types`. The `remove-strict-draft-types` transform in `@payloadcms/codemod` removes the option from inline config objects automatically.
|
|
28
|
+
|
|
29
|
+
Local API draft reads (`find`, `findByID`, and `findGlobal` with `draft: true`) now type required fields as optional because drafts can skip validation. Check that a field is present before using it:
|
|
30
|
+
|
|
31
|
+
```ts
|
|
32
|
+
const post = await payload.findByID({ collection: 'posts', id, draft: true })
|
|
33
|
+
|
|
34
|
+
if (post.title !== undefined) {
|
|
35
|
+
post.title.toUpperCase()
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
With generated types, the `draft` option is rejected on collections and globals without drafts enabled, including `draft: false`. Remove the option from those calls. Creating a draft still allows incomplete data; creating a published document (with `draft: false` or without the option) requires all required fields.
|
|
40
|
+
|
|
41
|
+
These changes affect TypeScript types only. Runtime behavior is unchanged.
|
|
42
|
+
|
|
25
43
|
### Payload request creation is consolidated
|
|
26
44
|
|
|
27
45
|
Payload request creation now uses `createPayloadRequest` for local contexts and `createPayloadRequestFromWebRequest` to convert a Web `Request`. Admin context setup is exposed as `initAdminContext`.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { buildConfig } from 'payload';
|
|
2
|
+
const strictDraftTypes = process.env.STRICT_DRAFT_TYPES === 'true';
|
|
3
|
+
export default buildConfig({
|
|
4
|
+
typescript: {
|
|
5
|
+
strictDraftTypes: true,
|
|
6
|
+
outputFile: './payload-types.ts'
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
export const disabled = {
|
|
10
|
+
typescript: {
|
|
11
|
+
strictDraftTypes: false,
|
|
12
|
+
autoGenerate: true
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
export const dynamic = {
|
|
16
|
+
typescript: {
|
|
17
|
+
strictDraftTypes,
|
|
18
|
+
autoGenerate: false
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
export const quoted = {
|
|
22
|
+
'typescript': {
|
|
23
|
+
'strictDraftTypes': strictDraftTypes,
|
|
24
|
+
outputFile: './custom-types.ts'
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=basic.input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/transforms/remove-strict-draft-types/basic.input.ts"],"sourcesContent":["import { buildConfig } from 'payload'\n\nconst strictDraftTypes = process.env.STRICT_DRAFT_TYPES === 'true'\n\nexport default buildConfig({\n typescript: {\n strictDraftTypes: true,\n outputFile: './payload-types.ts',\n },\n})\n\nexport const disabled = {\n typescript: {\n strictDraftTypes: false,\n autoGenerate: true,\n },\n}\n\nexport const dynamic = {\n typescript: {\n strictDraftTypes,\n autoGenerate: false,\n },\n}\n\nexport const quoted = {\n 'typescript': {\n 'strictDraftTypes': strictDraftTypes,\n outputFile: './custom-types.ts',\n },\n}\n"],"names":["buildConfig","strictDraftTypes","process","env","STRICT_DRAFT_TYPES","typescript","outputFile","disabled","autoGenerate","dynamic","quoted"],"mappings":"AAAA,SAASA,WAAW,QAAQ,UAAS;AAErC,MAAMC,mBAAmBC,QAAQC,GAAG,CAACC,kBAAkB,KAAK;AAE5D,eAAeJ,YAAY;IACzBK,YAAY;QACVJ,kBAAkB;QAClBK,YAAY;IACd;AACF,GAAE;AAEF,OAAO,MAAMC,WAAW;IACtBF,YAAY;QACVJ,kBAAkB;QAClBO,cAAc;IAChB;AACF,EAAC;AAED,OAAO,MAAMC,UAAU;IACrBJ,YAAY;QACVJ;QACAO,cAAc;IAChB;AACF,EAAC;AAED,OAAO,MAAME,SAAS;IACpB,cAAc;QACZ,oBAAoBT;QACpBK,YAAY;IACd;AACF,EAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { buildConfig } from 'payload';
|
|
2
|
+
const strictDraftTypes = process.env.STRICT_DRAFT_TYPES === 'true';
|
|
3
|
+
export default buildConfig({
|
|
4
|
+
typescript: {
|
|
5
|
+
outputFile: './payload-types.ts'
|
|
6
|
+
}
|
|
7
|
+
});
|
|
8
|
+
export const disabled = {
|
|
9
|
+
typescript: {
|
|
10
|
+
autoGenerate: true
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
export const dynamic = {
|
|
14
|
+
typescript: {
|
|
15
|
+
autoGenerate: false
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
export const quoted = {
|
|
19
|
+
'typescript': {
|
|
20
|
+
outputFile: './custom-types.ts'
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=basic.output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/transforms/remove-strict-draft-types/basic.output.ts"],"sourcesContent":["import { buildConfig } from 'payload'\n\nconst strictDraftTypes = process.env.STRICT_DRAFT_TYPES === 'true'\n\nexport default buildConfig({\n typescript: {\n outputFile: './payload-types.ts',\n },\n})\n\nexport const disabled = {\n typescript: {\n autoGenerate: true,\n },\n}\n\nexport const dynamic = {\n typescript: {\n autoGenerate: false,\n },\n}\n\nexport const quoted = {\n 'typescript': {\n outputFile: './custom-types.ts',\n },\n}\n"],"names":["buildConfig","strictDraftTypes","process","env","STRICT_DRAFT_TYPES","typescript","outputFile","disabled","autoGenerate","dynamic","quoted"],"mappings":"AAAA,SAASA,WAAW,QAAQ,UAAS;AAErC,MAAMC,mBAAmBC,QAAQC,GAAG,CAACC,kBAAkB,KAAK;AAE5D,eAAeJ,YAAY;IACzBK,YAAY;QACVC,YAAY;IACd;AACF,GAAE;AAEF,OAAO,MAAMC,WAAW;IACtBF,YAAY;QACVG,cAAc;IAChB;AACF,EAAC;AAED,OAAO,MAAMC,UAAU;IACrBJ,YAAY;QACVG,cAAc;IAChB;AACF,EAAC;AAED,OAAO,MAAME,SAAS;IACpB,cAAc;QACZJ,YAAY;IACd;AACF,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transforms/remove-strict-draft-types/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,eAAO,MAAM,sBAAsB,EAAE,SAoDpC,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Node, SyntaxKind } from 'ts-morph';
|
|
2
|
+
export const removeStrictDraftTypes = {
|
|
3
|
+
name: 'remove-strict-draft-types',
|
|
4
|
+
apply: ({ project })=>{
|
|
5
|
+
const filesChanged = [];
|
|
6
|
+
for (const file of project.getSourceFiles()){
|
|
7
|
+
let hasChanged = false;
|
|
8
|
+
for (const object of file.getDescendantsOfKind(SyntaxKind.ObjectLiteralExpression)){
|
|
9
|
+
if (object.wasForgotten()) {
|
|
10
|
+
continue;
|
|
11
|
+
}
|
|
12
|
+
const parent = object.getParent();
|
|
13
|
+
if (!Node.isPropertyAssignment(parent)) {
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
const name = parent.getNameNode();
|
|
17
|
+
const propertyName = Node.isStringLiteral(name) ? name.getLiteralText() : name.getText();
|
|
18
|
+
if (propertyName !== 'typescript') {
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
for (const property of object.getProperties()){
|
|
22
|
+
if (!Node.isPropertyAssignment(property) && !Node.isShorthandPropertyAssignment(property)) {
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
const name = property.getNameNode();
|
|
26
|
+
const propertyName = Node.isStringLiteral(name) ? name.getLiteralText() : name.getText();
|
|
27
|
+
if (propertyName === 'strictDraftTypes') {
|
|
28
|
+
property.remove();
|
|
29
|
+
hasChanged = true;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
if (hasChanged) {
|
|
34
|
+
filesChanged.push(file.getFilePath());
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return {
|
|
38
|
+
filesChanged
|
|
39
|
+
};
|
|
40
|
+
},
|
|
41
|
+
description: 'Remove `typescript.strictDraftTypes`. Strict draft types are always enabled in v4.'
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/transforms/remove-strict-draft-types/index.ts"],"sourcesContent":["import { Node, SyntaxKind } from 'ts-morph'\n\nimport type { Transform } from '../../types.js'\n\nexport const removeStrictDraftTypes: Transform = {\n name: 'remove-strict-draft-types',\n apply: ({ project }) => {\n const filesChanged: string[] = []\n\n for (const file of project.getSourceFiles()) {\n let hasChanged = false\n\n for (const object of file.getDescendantsOfKind(SyntaxKind.ObjectLiteralExpression)) {\n if (object.wasForgotten()) {\n continue\n }\n\n const parent = object.getParent()\n\n if (!Node.isPropertyAssignment(parent)) {\n continue\n }\n\n const name = parent.getNameNode()\n const propertyName = Node.isStringLiteral(name) ? name.getLiteralText() : name.getText()\n\n if (propertyName !== 'typescript') {\n continue\n }\n\n for (const property of object.getProperties()) {\n if (\n !Node.isPropertyAssignment(property) &&\n !Node.isShorthandPropertyAssignment(property)\n ) {\n continue\n }\n\n const name = property.getNameNode()\n const propertyName = Node.isStringLiteral(name) ? name.getLiteralText() : name.getText()\n\n if (propertyName === 'strictDraftTypes') {\n property.remove()\n hasChanged = true\n }\n }\n }\n\n if (hasChanged) {\n filesChanged.push(file.getFilePath())\n }\n }\n\n return { filesChanged }\n },\n description: 'Remove `typescript.strictDraftTypes`. Strict draft types are always enabled in v4.',\n}\n"],"names":["Node","SyntaxKind","removeStrictDraftTypes","name","apply","project","filesChanged","file","getSourceFiles","hasChanged","object","getDescendantsOfKind","ObjectLiteralExpression","wasForgotten","parent","getParent","isPropertyAssignment","getNameNode","propertyName","isStringLiteral","getLiteralText","getText","property","getProperties","isShorthandPropertyAssignment","remove","push","getFilePath","description"],"mappings":"AAAA,SAASA,IAAI,EAAEC,UAAU,QAAQ,WAAU;AAI3C,OAAO,MAAMC,yBAAoC;IAC/CC,MAAM;IACNC,OAAO,CAAC,EAAEC,OAAO,EAAE;QACjB,MAAMC,eAAyB,EAAE;QAEjC,KAAK,MAAMC,QAAQF,QAAQG,cAAc,GAAI;YAC3C,IAAIC,aAAa;YAEjB,KAAK,MAAMC,UAAUH,KAAKI,oBAAoB,CAACV,WAAWW,uBAAuB,EAAG;gBAClF,IAAIF,OAAOG,YAAY,IAAI;oBACzB;gBACF;gBAEA,MAAMC,SAASJ,OAAOK,SAAS;gBAE/B,IAAI,CAACf,KAAKgB,oBAAoB,CAACF,SAAS;oBACtC;gBACF;gBAEA,MAAMX,OAAOW,OAAOG,WAAW;gBAC/B,MAAMC,eAAelB,KAAKmB,eAAe,CAAChB,QAAQA,KAAKiB,cAAc,KAAKjB,KAAKkB,OAAO;gBAEtF,IAAIH,iBAAiB,cAAc;oBACjC;gBACF;gBAEA,KAAK,MAAMI,YAAYZ,OAAOa,aAAa,GAAI;oBAC7C,IACE,CAACvB,KAAKgB,oBAAoB,CAACM,aAC3B,CAACtB,KAAKwB,6BAA6B,CAACF,WACpC;wBACA;oBACF;oBAEA,MAAMnB,OAAOmB,SAASL,WAAW;oBACjC,MAAMC,eAAelB,KAAKmB,eAAe,CAAChB,QAAQA,KAAKiB,cAAc,KAAKjB,KAAKkB,OAAO;oBAEtF,IAAIH,iBAAiB,oBAAoB;wBACvCI,SAASG,MAAM;wBACfhB,aAAa;oBACf;gBACF;YACF;YAEA,IAAIA,YAAY;gBACdH,aAAaoB,IAAI,CAACnB,KAAKoB,WAAW;YACpC;QACF;QAEA,OAAO;YAAErB;QAAa;IACxB;IACAsB,aAAa;AACf,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/transforms/remove-strict-draft-types/no-match.input.ts"],"sourcesContent":["export const config = {\n strictDraftTypes: true,\n custom: {\n strictDraftTypes: false,\n },\n typescript: {\n outputFile: './payload-types.ts',\n },\n}\n"],"names":["config","strictDraftTypes","custom","typescript","outputFile"],"mappings":"AAAA,OAAO,MAAMA,SAAS;IACpBC,kBAAkB;IAClBC,QAAQ;QACND,kBAAkB;IACpB;IACAE,YAAY;QACVC,YAAY;IACd;AACF,EAAC"}
|
package/package.json
CHANGED