@payloadcms/codemod 4.0.0-internal.d1cc1d3 → 4.0.0-internal.d21c039
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 +3 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +7 -1
- package/dist/registry.js.map +1 -1
- package/dist/transforms/remove-default-locale-publish-option/all-value.input.js +13 -0
- package/dist/transforms/remove-default-locale-publish-option/all-value.input.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/basic.input.js +13 -0
- package/dist/transforms/remove-default-locale-publish-option/basic.input.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/basic.output.js +12 -0
- package/dist/transforms/remove-default-locale-publish-option/basic.output.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/dynamic.input.js +17 -0
- package/dist/transforms/remove-default-locale-publish-option/dynamic.input.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/index.d.ts +10 -0
- package/dist/transforms/remove-default-locale-publish-option/index.d.ts.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/index.js +103 -0
- package/dist/transforms/remove-default-locale-publish-option/index.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/no-match.input.js +10 -0
- package/dist/transforms/remove-default-locale-publish-option/no-match.input.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/no-match.output.js +10 -0
- package/dist/transforms/remove-default-locale-publish-option/no-match.output.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/reassigned.input.js +22 -0
- package/dist/transforms/remove-default-locale-publish-option/reassigned.input.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/shorthand.input.js +14 -0
- package/dist/transforms/remove-default-locale-publish-option/shorthand.input.js.map +1 -0
- package/dist/transforms/remove-default-locale-publish-option/shorthand.output.js +13 -0
- package/dist/transforms/remove-default-locale-publish-option/shorthand.output.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/aliased.input.js +11 -0
- package/dist/transforms/remove-storage-always-insert-fields/aliased.input.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/aliased.output.js +10 -0
- package/dist/transforms/remove-storage-always-insert-fields/aliased.output.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/basic.input.js +54 -0
- package/dist/transforms/remove-storage-always-insert-fields/basic.input.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/basic.output.js +48 -0
- package/dist/transforms/remove-storage-always-insert-fields/basic.output.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/index.d.ts +3 -0
- package/dist/transforms/remove-storage-always-insert-fields/index.d.ts.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/index.js +71 -0
- package/dist/transforms/remove-storage-always-insert-fields/index.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/no-match.input.js +27 -0
- package/dist/transforms/remove-storage-always-insert-fields/no-match.input.js.map +1 -0
- package/dist/transforms/remove-storage-always-insert-fields/no-match.output.js +27 -0
- package/dist/transforms/remove-storage-always-insert-fields/no-match.output.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/alias.input.js +6 -0
- package/dist/transforms/rename-experimental-table-feature/alias.input.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/alias.output.js +6 -0
- package/dist/transforms/rename-experimental-table-feature/alias.output.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/basic.input.js +19 -0
- package/dist/transforms/rename-experimental-table-feature/basic.input.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/basic.output.js +19 -0
- package/dist/transforms/rename-experimental-table-feature/basic.output.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/collision.input.js +7 -0
- package/dist/transforms/rename-experimental-table-feature/collision.input.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/index.d.ts +3 -0
- package/dist/transforms/rename-experimental-table-feature/index.d.ts.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/index.js +44 -0
- package/dist/transforms/rename-experimental-table-feature/index.js.map +1 -0
- package/dist/transforms/rename-experimental-table-feature/no-match.input.js +9 -0
- package/dist/transforms/rename-experimental-table-feature/no-match.input.js.map +1 -0
- package/package.json +3 -3
- package/dist/cli.parseFlags.spec.d.ts +0 -2
- package/dist/cli.parseFlags.spec.d.ts.map +0 -1
- package/dist/cli.parseFlags.spec.js +0 -49
- package/dist/cli.parseFlags.spec.js.map +0 -1
- package/dist/runner.spec.d.ts +0 -2
- package/dist/runner.spec.d.ts.map +0 -1
- package/dist/runner.spec.js +0 -88
- package/dist/runner.spec.js.map +0 -1
- package/dist/transforms/example-noop/index.spec.d.ts +0 -2
- package/dist/transforms/example-noop/index.spec.d.ts.map +0 -1
- package/dist/transforms/example-noop/index.spec.js +0 -29
- package/dist/transforms/example-noop/index.spec.js.map +0 -1
- package/dist/transforms/globals-components-edit/index.spec.d.ts +0 -2
- package/dist/transforms/globals-components-edit/index.spec.d.ts.map +0 -1
- package/dist/transforms/globals-components-edit/index.spec.js +0 -37
- package/dist/transforms/globals-components-edit/index.spec.js.map +0 -1
- package/dist/transforms/migrate-after-operation-read/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-after-operation-read/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-after-operation-read/index.spec.js +0 -62
- package/dist/transforms/migrate-after-operation-read/index.spec.js.map +0 -1
- package/dist/transforms/migrate-aliased-exports/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-aliased-exports/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-aliased-exports/index.spec.js +0 -55
- package/dist/transforms/migrate-aliased-exports/index.spec.js.map +0 -1
- package/dist/transforms/migrate-azure-chunk-large-files/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-azure-chunk-large-files/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-azure-chunk-large-files/index.spec.js +0 -67
- package/dist/transforms/migrate-azure-chunk-large-files/index.spec.js.map +0 -1
- package/dist/transforms/migrate-block-references-to-blocks/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-block-references-to-blocks/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-block-references-to-blocks/index.spec.js +0 -45
- package/dist/transforms/migrate-block-references-to-blocks/index.spec.js.map +0 -1
- package/dist/transforms/migrate-build-script/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-build-script/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-build-script/index.spec.js +0 -81
- package/dist/transforms/migrate-build-script/index.spec.js.map +0 -1
- package/dist/transforms/migrate-db-types-subpath/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-db-types-subpath/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-db-types-subpath/index.spec.js +0 -46
- package/dist/transforms/migrate-db-types-subpath/index.spec.js.map +0 -1
- package/dist/transforms/migrate-disabled-fields/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-disabled-fields/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-disabled-fields/index.spec.js +0 -73
- package/dist/transforms/migrate-disabled-fields/index.spec.js.map +0 -1
- package/dist/transforms/migrate-document-title-context/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-document-title-context/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-document-title-context/index.spec.js +0 -86
- package/dist/transforms/migrate-document-title-context/index.spec.js.map +0 -1
- package/dist/transforms/migrate-force-select/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-force-select/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-force-select/index.spec.js +0 -107
- package/dist/transforms/migrate-force-select/index.spec.js.map +0 -1
- package/dist/transforms/migrate-hide-api-url/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-hide-api-url/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-hide-api-url/index.spec.js +0 -118
- package/dist/transforms/migrate-hide-api-url/index.spec.js.map +0 -1
- package/dist/transforms/migrate-import-export-hooks/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-import-export-hooks/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-import-export-hooks/index.spec.js +0 -65
- package/dist/transforms/migrate-import-export-hooks/index.spec.js.map +0 -1
- package/dist/transforms/migrate-list-view-select-api/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-list-view-select-api/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-list-view-select-api/index.spec.js +0 -37
- package/dist/transforms/migrate-list-view-select-api/index.spec.js.map +0 -1
- package/dist/transforms/migrate-next-generate-viewport-export/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-next-generate-viewport-export/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-next-generate-viewport-export/index.spec.js +0 -41
- package/dist/transforms/migrate-next-generate-viewport-export/index.spec.js.map +0 -1
- package/dist/transforms/migrate-next-subpath-exports/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-next-subpath-exports/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-next-subpath-exports/index.spec.js +0 -46
- package/dist/transforms/migrate-next-subpath-exports/index.spec.js.map +0 -1
- package/dist/transforms/migrate-slug-field/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-slug-field/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-slug-field/index.spec.js +0 -47
- package/dist/transforms/migrate-slug-field/index.spec.js.map +0 -1
- package/dist/transforms/migrate-storage-adapters-to-config/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-storage-adapters-to-config/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-storage-adapters-to-config/index.spec.js +0 -85
- package/dist/transforms/migrate-storage-adapters-to-config/index.spec.js.map +0 -1
- package/dist/transforms/migrate-versions-default/index.spec.d.ts +0 -2
- package/dist/transforms/migrate-versions-default/index.spec.d.ts.map +0 -1
- package/dist/transforms/migrate-versions-default/index.spec.js +0 -81
- package/dist/transforms/migrate-versions-default/index.spec.js.map +0 -1
- package/dist/transforms/remove-group-by-true/index.spec.d.ts +0 -2
- package/dist/transforms/remove-group-by-true/index.spec.d.ts.map +0 -1
- package/dist/transforms/remove-group-by-true/index.spec.js +0 -47
- package/dist/transforms/remove-group-by-true/index.spec.js.map +0 -1
- package/dist/transforms/remove-localize-status-config/index.spec.d.ts +0 -2
- package/dist/transforms/remove-localize-status-config/index.spec.d.ts.map +0 -1
- package/dist/transforms/remove-localize-status-config/index.spec.js +0 -38
- package/dist/transforms/remove-localize-status-config/index.spec.js.map +0 -1
- package/dist/transforms/remove-publish-specific-locale/index.spec.d.ts +0 -2
- package/dist/transforms/remove-publish-specific-locale/index.spec.d.ts.map +0 -1
- package/dist/transforms/remove-publish-specific-locale/index.spec.js +0 -47
- package/dist/transforms/remove-publish-specific-locale/index.spec.js.map +0 -1
- package/dist/transforms/remove-versions-true/index.spec.d.ts +0 -2
- package/dist/transforms/remove-versions-true/index.spec.d.ts.map +0 -1
- package/dist/transforms/remove-versions-true/index.spec.js +0 -38
- package/dist/transforms/remove-versions-true/index.spec.js.map +0 -1
- package/dist/transforms/rename-storage-adapters-to-storage/index.spec.d.ts +0 -2
- package/dist/transforms/rename-storage-adapters-to-storage/index.spec.d.ts.map +0 -1
- package/dist/transforms/rename-storage-adapters-to-storage/index.spec.js +0 -55
- package/dist/transforms/rename-storage-adapters-to-storage/index.spec.js.map +0 -1
- package/dist/transforms/rename-typescript-schema-to-json-schema/index.spec.d.ts +0 -2
- package/dist/transforms/rename-typescript-schema-to-json-schema/index.spec.d.ts.map +0 -1
- package/dist/transforms/rename-typescript-schema-to-json-schema/index.spec.js +0 -45
- package/dist/transforms/rename-typescript-schema-to-json-schema/index.spec.js.map +0 -1
- package/dist/utils/packageJson.spec.d.ts +0 -2
- package/dist/utils/packageJson.spec.d.ts.map +0 -1
- package/dist/utils/packageJson.spec.js +0 -41
- package/dist/utils/packageJson.spec.js.map +0 -1
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateDocumentTitleContext } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-document-title-context', ()=>{
|
|
10
|
-
it('migrates title and setDocumentTitle to useDocumentTitle()', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
source: input,
|
|
15
|
-
transform: migrateDocumentTitleContext
|
|
16
|
-
});
|
|
17
|
-
expect(result).toBe(output);
|
|
18
|
-
});
|
|
19
|
-
it('is idempotent', async ()=>{
|
|
20
|
-
const output = await fixture('basic.output.ts');
|
|
21
|
-
const result = await runTransform({
|
|
22
|
-
source: output,
|
|
23
|
-
transform: migrateDocumentTitleContext
|
|
24
|
-
});
|
|
25
|
-
expect(result).toBe(output);
|
|
26
|
-
});
|
|
27
|
-
it('no-ops on unrelated code', async ()=>{
|
|
28
|
-
const input = await fixture('no-match.input.ts');
|
|
29
|
-
const output = await fixture('no-match.output.ts');
|
|
30
|
-
const result = await runTransform({
|
|
31
|
-
source: input,
|
|
32
|
-
transform: migrateDocumentTitleContext
|
|
33
|
-
});
|
|
34
|
-
expect(result).toBe(output);
|
|
35
|
-
});
|
|
36
|
-
it('removes useDocumentInfo import when no other properties are used', async ()=>{
|
|
37
|
-
const input = `import { useDocumentInfo } from '@payloadcms/ui'
|
|
38
|
-
|
|
39
|
-
export const C = () => {
|
|
40
|
-
const { title, setDocumentTitle } = useDocumentInfo()
|
|
41
|
-
return { title, setDocumentTitle }
|
|
42
|
-
}
|
|
43
|
-
`;
|
|
44
|
-
const result = await runTransform({
|
|
45
|
-
source: input,
|
|
46
|
-
transform: migrateDocumentTitleContext
|
|
47
|
-
});
|
|
48
|
-
expect(result).not.toContain('useDocumentInfo');
|
|
49
|
-
expect(result).toContain("import { useDocumentTitle } from '@payloadcms/ui'");
|
|
50
|
-
expect(result).toContain('const { title, setDocumentTitle } = useDocumentTitle()');
|
|
51
|
-
});
|
|
52
|
-
it('reuses an existing @payloadcms/ui import for useDocumentTitle', async ()=>{
|
|
53
|
-
const input = `import { useDocumentInfo, useTranslation } from '@payloadcms/ui'
|
|
54
|
-
|
|
55
|
-
export const C = () => {
|
|
56
|
-
const { id, title } = useDocumentInfo()
|
|
57
|
-
useTranslation()
|
|
58
|
-
return { id, title }
|
|
59
|
-
}
|
|
60
|
-
`;
|
|
61
|
-
const result = await runTransform({
|
|
62
|
-
source: input,
|
|
63
|
-
transform: migrateDocumentTitleContext
|
|
64
|
-
});
|
|
65
|
-
const importMatches = result.match(/from '@payloadcms\/ui'/g) ?? [];
|
|
66
|
-
expect(importMatches.length).toBe(1);
|
|
67
|
-
expect(result).toContain('useDocumentTitle');
|
|
68
|
-
expect(result).toContain('useDocumentInfo');
|
|
69
|
-
});
|
|
70
|
-
it('skips destructure with default value and emits a note', async ()=>{
|
|
71
|
-
const input = `import { useDocumentInfo } from '@payloadcms/ui'
|
|
72
|
-
|
|
73
|
-
export const C = () => {
|
|
74
|
-
const { title = 'fallback' } = useDocumentInfo()
|
|
75
|
-
return title
|
|
76
|
-
}
|
|
77
|
-
`;
|
|
78
|
-
const result = await runTransform({
|
|
79
|
-
source: input,
|
|
80
|
-
transform: migrateDocumentTitleContext
|
|
81
|
-
});
|
|
82
|
-
expect(result).toBe(input);
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-document-title-context/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateDocumentTitleContext } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-document-title-context', () => {\n it('migrates title and setDocumentTitle to useDocumentTitle()', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateDocumentTitleContext })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: output, transform: migrateDocumentTitleContext })\n\n expect(result).toBe(output)\n })\n\n it('no-ops on unrelated code', async () => {\n const input = await fixture('no-match.input.ts')\n const output = await fixture('no-match.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateDocumentTitleContext })\n\n expect(result).toBe(output)\n })\n\n it('removes useDocumentInfo import when no other properties are used', async () => {\n const input = `import { useDocumentInfo } from '@payloadcms/ui'\n\nexport const C = () => {\n const { title, setDocumentTitle } = useDocumentInfo()\n return { title, setDocumentTitle }\n}\n`\n\n const result = await runTransform({\n source: input,\n transform: migrateDocumentTitleContext,\n })\n\n expect(result).not.toContain('useDocumentInfo')\n expect(result).toContain(\"import { useDocumentTitle } from '@payloadcms/ui'\")\n expect(result).toContain('const { title, setDocumentTitle } = useDocumentTitle()')\n })\n\n it('reuses an existing @payloadcms/ui import for useDocumentTitle', async () => {\n const input = `import { useDocumentInfo, useTranslation } from '@payloadcms/ui'\n\nexport const C = () => {\n const { id, title } = useDocumentInfo()\n useTranslation()\n return { id, title }\n}\n`\n\n const result = await runTransform({\n source: input,\n transform: migrateDocumentTitleContext,\n })\n\n const importMatches = result.match(/from '@payloadcms\\/ui'/g) ?? []\n expect(importMatches.length).toBe(1)\n expect(result).toContain('useDocumentTitle')\n expect(result).toContain('useDocumentInfo')\n })\n\n it('skips destructure with default value and emits a note', async () => {\n const input = `import { useDocumentInfo } from '@payloadcms/ui'\n\nexport const C = () => {\n const { title = 'fallback' } = useDocumentInfo()\n return title\n}\n`\n\n const result = await runTransform({\n source: input,\n transform: migrateDocumentTitleContext,\n })\n\n expect(result).toBe(input)\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateDocumentTitleContext","here","url","fixture","name","input","output","result","source","transform","toBe","not","toContain","importMatches","match","length"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,2BAA2B,QAAQ,aAAY;AAExD,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,kCAAkC;IACzCE,GAAG,6DAA6D;QAC9D,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAA4B;QAE1FH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,iBAAiB;QAClB,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQF;YAAQG,WAAWT;QAA4B;QAE3FH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,4BAA4B;QAC7B,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAA4B;QAE1FH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,oEAAoE;QACrE,MAAMO,QAAQ,CAAC;;;;;;AAMnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAChCS,QAAQH;YACRI,WAAWT;QACb;QAEAH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;QAC7Bf,OAAOU,QAAQK,SAAS,CAAC;QACzBf,OAAOU,QAAQK,SAAS,CAAC;IAC3B;IAEAd,GAAG,iEAAiE;QAClE,MAAMO,QAAQ,CAAC;;;;;;;AAOnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAChCS,QAAQH;YACRI,WAAWT;QACb;QAEA,MAAMa,gBAAgBN,OAAOO,KAAK,CAAC,8BAA8B,EAAE;QACnEjB,OAAOgB,cAAcE,MAAM,EAAEL,IAAI,CAAC;QAClCb,OAAOU,QAAQK,SAAS,CAAC;QACzBf,OAAOU,QAAQK,SAAS,CAAC;IAC3B;IAEAd,GAAG,yDAAyD;QAC1D,MAAMO,QAAQ,CAAC;;;;;;AAMnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAChCS,QAAQH;YACRI,WAAWT;QACb;QAEAH,OAAOU,QAAQG,IAAI,CAACL;IACtB;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-force-select/index.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateForceSelect } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-force-select', ()=>{
|
|
10
|
-
it('migrates forceSelect object literal to a select function', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
source: input,
|
|
15
|
-
transform: migrateForceSelect
|
|
16
|
-
});
|
|
17
|
-
expect(result).toBe(output);
|
|
18
|
-
});
|
|
19
|
-
it('is idempotent', async ()=>{
|
|
20
|
-
const output = await fixture('basic.output.ts');
|
|
21
|
-
const result = await runTransform({
|
|
22
|
-
source: output,
|
|
23
|
-
transform: migrateForceSelect
|
|
24
|
-
});
|
|
25
|
-
expect(result).toBe(output);
|
|
26
|
-
});
|
|
27
|
-
it('no-ops on unrelated code', async ()=>{
|
|
28
|
-
const input = await fixture('no-match.input.ts');
|
|
29
|
-
const output = await fixture('no-match.output.ts');
|
|
30
|
-
const result = await runTransform({
|
|
31
|
-
source: input,
|
|
32
|
-
transform: migrateForceSelect
|
|
33
|
-
});
|
|
34
|
-
expect(result).toBe(output);
|
|
35
|
-
});
|
|
36
|
-
it('removes forceSelect when sibling select already present', async ()=>{
|
|
37
|
-
const input = `export const Pages = {
|
|
38
|
-
slug: 'pages',
|
|
39
|
-
select: ({ select }) => select,
|
|
40
|
-
forceSelect: {
|
|
41
|
-
title: true,
|
|
42
|
-
},
|
|
43
|
-
fields: [],
|
|
44
|
-
}
|
|
45
|
-
`;
|
|
46
|
-
const result = await runTransform({
|
|
47
|
-
source: input,
|
|
48
|
-
transform: migrateForceSelect
|
|
49
|
-
});
|
|
50
|
-
expect(result).not.toContain('forceSelect');
|
|
51
|
-
expect(result).toContain('select: ({ select }) => select');
|
|
52
|
-
});
|
|
53
|
-
it('removes non-literal forceSelect and emits a manual-migration note', async ()=>{
|
|
54
|
-
const input = `const forced = { title: true }
|
|
55
|
-
export const Pages = {
|
|
56
|
-
slug: 'pages',
|
|
57
|
-
forceSelect: forced,
|
|
58
|
-
fields: [],
|
|
59
|
-
}
|
|
60
|
-
`;
|
|
61
|
-
const result = await runTransform({
|
|
62
|
-
source: input,
|
|
63
|
-
transform: migrateForceSelect
|
|
64
|
-
});
|
|
65
|
-
expect(result).not.toContain('forceSelect');
|
|
66
|
-
});
|
|
67
|
-
it('migrates nested forceSelect using deepMergeSimple', async ()=>{
|
|
68
|
-
const input = `export const Pages = {
|
|
69
|
-
slug: 'pages',
|
|
70
|
-
forceSelect: {
|
|
71
|
-
group: {
|
|
72
|
-
sub: true,
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
fields: [],
|
|
76
|
-
}
|
|
77
|
-
`;
|
|
78
|
-
const result = await runTransform({
|
|
79
|
-
source: input,
|
|
80
|
-
transform: migrateForceSelect
|
|
81
|
-
});
|
|
82
|
-
expect(result).not.toContain('forceSelect');
|
|
83
|
-
expect(result).toContain(`import { deepMergeSimple } from 'payload/shared'`);
|
|
84
|
-
expect(result).toMatch(/select:\s*\(\{\s*select\s*\}\)\s*=>\s*\(select\s*\?\s*deepMergeSimple\(select,\s*\{[\s\S]*group:[\s\S]*sub:\s*true[\s\S]*\}\)\s*:\s*undefined\)/);
|
|
85
|
-
});
|
|
86
|
-
it('does not duplicate the deepMergeSimple import on rerun', async ()=>{
|
|
87
|
-
const input = `import { deepMergeSimple } from 'payload/shared'
|
|
88
|
-
|
|
89
|
-
export const Pages = {
|
|
90
|
-
slug: 'pages',
|
|
91
|
-
forceSelect: {
|
|
92
|
-
group: {
|
|
93
|
-
sub: true,
|
|
94
|
-
},
|
|
95
|
-
},
|
|
96
|
-
fields: [],
|
|
97
|
-
}
|
|
98
|
-
`;
|
|
99
|
-
const result = await runTransform({
|
|
100
|
-
source: input,
|
|
101
|
-
transform: migrateForceSelect
|
|
102
|
-
});
|
|
103
|
-
expect(result.match(/from 'payload\/shared'/g)?.length).toBe(1);
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-force-select/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateForceSelect } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-force-select', () => {\n it('migrates forceSelect object literal to a select function', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateForceSelect })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: output, transform: migrateForceSelect })\n\n expect(result).toBe(output)\n })\n\n it('no-ops on unrelated code', async () => {\n const input = await fixture('no-match.input.ts')\n const output = await fixture('no-match.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateForceSelect })\n\n expect(result).toBe(output)\n })\n\n it('removes forceSelect when sibling select already present', async () => {\n const input = `export const Pages = {\n slug: 'pages',\n select: ({ select }) => select,\n forceSelect: {\n title: true,\n },\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateForceSelect })\n\n expect(result).not.toContain('forceSelect')\n expect(result).toContain('select: ({ select }) => select')\n })\n\n it('removes non-literal forceSelect and emits a manual-migration note', async () => {\n const input = `const forced = { title: true }\nexport const Pages = {\n slug: 'pages',\n forceSelect: forced,\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateForceSelect })\n\n expect(result).not.toContain('forceSelect')\n })\n\n it('migrates nested forceSelect using deepMergeSimple', async () => {\n const input = `export const Pages = {\n slug: 'pages',\n forceSelect: {\n group: {\n sub: true,\n },\n },\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateForceSelect })\n\n expect(result).not.toContain('forceSelect')\n expect(result).toContain(`import { deepMergeSimple } from 'payload/shared'`)\n expect(result).toMatch(\n /select:\\s*\\(\\{\\s*select\\s*\\}\\)\\s*=>\\s*\\(select\\s*\\?\\s*deepMergeSimple\\(select,\\s*\\{[\\s\\S]*group:[\\s\\S]*sub:\\s*true[\\s\\S]*\\}\\)\\s*:\\s*undefined\\)/,\n )\n })\n\n it('does not duplicate the deepMergeSimple import on rerun', async () => {\n const input = `import { deepMergeSimple } from 'payload/shared'\n\nexport const Pages = {\n slug: 'pages',\n forceSelect: {\n group: {\n sub: true,\n },\n },\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateForceSelect })\n\n expect(result.match(/from 'payload\\/shared'/g)?.length).toBe(1)\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateForceSelect","here","url","fixture","name","input","output","result","source","transform","toBe","not","toContain","toMatch","match","length"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,kBAAkB,QAAQ,aAAY;AAE/C,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,wBAAwB;IAC/BE,GAAG,4DAA4D;QAC7D,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAmB;QAEjFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,iBAAiB;QAClB,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQF;YAAQG,WAAWT;QAAmB;QAElFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,4BAA4B;QAC7B,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAmB;QAEjFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,2DAA2D;QAC5D,MAAMO,QAAQ,CAAC;;;;;;;;AAQnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAmB;QAEjFH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;QAC7Bf,OAAOU,QAAQK,SAAS,CAAC;IAC3B;IAEAd,GAAG,qEAAqE;QACtE,MAAMO,QAAQ,CAAC;;;;;;AAMnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAmB;QAEjFH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;IAC/B;IAEAd,GAAG,qDAAqD;QACtD,MAAMO,QAAQ,CAAC;;;;;;;;;AASnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAmB;QAEjFH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;QAC7Bf,OAAOU,QAAQK,SAAS,CAAC,CAAC,gDAAgD,CAAC;QAC3Ef,OAAOU,QAAQM,OAAO,CACpB;IAEJ;IAEAf,GAAG,0DAA0D;QAC3D,MAAMO,QAAQ,CAAC;;;;;;;;;;;AAWnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAmB;QAEjFH,OAAOU,OAAOO,KAAK,CAAC,4BAA4BC,QAAQL,IAAI,CAAC;IAC/D;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-hide-api-url/index.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateHideAPIURL } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-hide-api-url', ()=>{
|
|
10
|
-
it('migrates admin.hideAPIURL: true to nested condition', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
source: input,
|
|
15
|
-
transform: migrateHideAPIURL
|
|
16
|
-
});
|
|
17
|
-
expect(result).toBe(output);
|
|
18
|
-
});
|
|
19
|
-
it('is idempotent', async ()=>{
|
|
20
|
-
const output = await fixture('basic.output.ts');
|
|
21
|
-
const result = await runTransform({
|
|
22
|
-
source: output,
|
|
23
|
-
transform: migrateHideAPIURL
|
|
24
|
-
});
|
|
25
|
-
expect(result).toBe(output);
|
|
26
|
-
});
|
|
27
|
-
it('no-ops on unrelated code', async ()=>{
|
|
28
|
-
const input = await fixture('no-match.input.ts');
|
|
29
|
-
const output = await fixture('no-match.output.ts');
|
|
30
|
-
const result = await runTransform({
|
|
31
|
-
source: input,
|
|
32
|
-
transform: migrateHideAPIURL
|
|
33
|
-
});
|
|
34
|
-
expect(result).toBe(output);
|
|
35
|
-
});
|
|
36
|
-
it('plugs condition into existing admin.components.views.edit.api.tab', async ()=>{
|
|
37
|
-
const input = `export const Pages = {
|
|
38
|
-
slug: 'pages',
|
|
39
|
-
admin: {
|
|
40
|
-
hideAPIURL: true,
|
|
41
|
-
components: {
|
|
42
|
-
views: {
|
|
43
|
-
edit: {
|
|
44
|
-
api: {
|
|
45
|
-
tab: {
|
|
46
|
-
label: 'Custom API',
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
fields: [],
|
|
54
|
-
}
|
|
55
|
-
`;
|
|
56
|
-
const result = await runTransform({
|
|
57
|
-
source: input,
|
|
58
|
-
transform: migrateHideAPIURL
|
|
59
|
-
});
|
|
60
|
-
expect(result).not.toContain('hideAPIURL');
|
|
61
|
-
expect(result).toContain("label: 'Custom API'");
|
|
62
|
-
expect(result).toContain('condition: () => false');
|
|
63
|
-
});
|
|
64
|
-
it('adds missing tab segment when partial path exists', async ()=>{
|
|
65
|
-
const input = `export const Pages = {
|
|
66
|
-
slug: 'pages',
|
|
67
|
-
admin: {
|
|
68
|
-
hideAPIURL: true,
|
|
69
|
-
components: {
|
|
70
|
-
views: {
|
|
71
|
-
edit: {
|
|
72
|
-
api: {},
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
|
-
fields: [],
|
|
78
|
-
}
|
|
79
|
-
`;
|
|
80
|
-
const result = await runTransform({
|
|
81
|
-
source: input,
|
|
82
|
-
transform: migrateHideAPIURL
|
|
83
|
-
});
|
|
84
|
-
expect(result).not.toContain('hideAPIURL');
|
|
85
|
-
expect(result).toContain('tab:');
|
|
86
|
-
expect(result).toContain('condition: () => false');
|
|
87
|
-
});
|
|
88
|
-
it('preserves existing condition and removes hideAPIURL', async ()=>{
|
|
89
|
-
const input = `export const Pages = {
|
|
90
|
-
slug: 'pages',
|
|
91
|
-
admin: {
|
|
92
|
-
hideAPIURL: true,
|
|
93
|
-
components: {
|
|
94
|
-
views: {
|
|
95
|
-
edit: {
|
|
96
|
-
api: {
|
|
97
|
-
tab: {
|
|
98
|
-
condition: () => true,
|
|
99
|
-
},
|
|
100
|
-
},
|
|
101
|
-
},
|
|
102
|
-
},
|
|
103
|
-
},
|
|
104
|
-
},
|
|
105
|
-
fields: [],
|
|
106
|
-
}
|
|
107
|
-
`;
|
|
108
|
-
const result = await runTransform({
|
|
109
|
-
source: input,
|
|
110
|
-
transform: migrateHideAPIURL
|
|
111
|
-
});
|
|
112
|
-
expect(result).not.toContain('hideAPIURL');
|
|
113
|
-
expect(result).toContain('condition: () => true');
|
|
114
|
-
expect(result).not.toContain('condition: () => false');
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
|
|
118
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-hide-api-url/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateHideAPIURL } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-hide-api-url', () => {\n it('migrates admin.hideAPIURL: true to nested condition', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateHideAPIURL })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: output, transform: migrateHideAPIURL })\n\n expect(result).toBe(output)\n })\n\n it('no-ops on unrelated code', async () => {\n const input = await fixture('no-match.input.ts')\n const output = await fixture('no-match.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateHideAPIURL })\n\n expect(result).toBe(output)\n })\n\n it('plugs condition into existing admin.components.views.edit.api.tab', async () => {\n const input = `export const Pages = {\n slug: 'pages',\n admin: {\n hideAPIURL: true,\n components: {\n views: {\n edit: {\n api: {\n tab: {\n label: 'Custom API',\n },\n },\n },\n },\n },\n },\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateHideAPIURL })\n\n expect(result).not.toContain('hideAPIURL')\n expect(result).toContain(\"label: 'Custom API'\")\n expect(result).toContain('condition: () => false')\n })\n\n it('adds missing tab segment when partial path exists', async () => {\n const input = `export const Pages = {\n slug: 'pages',\n admin: {\n hideAPIURL: true,\n components: {\n views: {\n edit: {\n api: {},\n },\n },\n },\n },\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateHideAPIURL })\n\n expect(result).not.toContain('hideAPIURL')\n expect(result).toContain('tab:')\n expect(result).toContain('condition: () => false')\n })\n\n it('preserves existing condition and removes hideAPIURL', async () => {\n const input = `export const Pages = {\n slug: 'pages',\n admin: {\n hideAPIURL: true,\n components: {\n views: {\n edit: {\n api: {\n tab: {\n condition: () => true,\n },\n },\n },\n },\n },\n },\n fields: [],\n}\n`\n\n const result = await runTransform({ source: input, transform: migrateHideAPIURL })\n\n expect(result).not.toContain('hideAPIURL')\n expect(result).toContain('condition: () => true')\n expect(result).not.toContain('condition: () => false')\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateHideAPIURL","here","url","fixture","name","input","output","result","source","transform","toBe","not","toContain"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,iBAAiB,QAAQ,aAAY;AAE9C,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,wBAAwB;IAC/BE,GAAG,uDAAuD;QACxD,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAkB;QAEhFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,iBAAiB;QAClB,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQF;YAAQG,WAAWT;QAAkB;QAEjFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,4BAA4B;QAC7B,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAkB;QAEhFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,qEAAqE;QACtE,MAAMO,QAAQ,CAAC;;;;;;;;;;;;;;;;;;AAkBnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAkB;QAEhFH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;QAC7Bf,OAAOU,QAAQK,SAAS,CAAC;QACzBf,OAAOU,QAAQK,SAAS,CAAC;IAC3B;IAEAd,GAAG,qDAAqD;QACtD,MAAMO,QAAQ,CAAC;;;;;;;;;;;;;;AAcnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAkB;QAEhFH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;QAC7Bf,OAAOU,QAAQK,SAAS,CAAC;QACzBf,OAAOU,QAAQK,SAAS,CAAC;IAC3B;IAEAd,GAAG,uDAAuD;QACxD,MAAMO,QAAQ,CAAC;;;;;;;;;;;;;;;;;;AAkBnB,CAAC;QAEG,MAAME,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAkB;QAEhFH,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;QAC7Bf,OAAOU,QAAQK,SAAS,CAAC;QACzBf,OAAOU,QAAQI,GAAG,CAACC,SAAS,CAAC;IAC/B;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-import-export-hooks/index.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateImportExportHooks } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-import-export-hooks', ()=>{
|
|
10
|
-
it('migrates toCSV to hooks.beforeExport', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
source: input,
|
|
15
|
-
transform: migrateImportExportHooks
|
|
16
|
-
});
|
|
17
|
-
expect(result).toBe(output);
|
|
18
|
-
});
|
|
19
|
-
it('is idempotent', async ()=>{
|
|
20
|
-
const output = await fixture('basic.output.ts');
|
|
21
|
-
const result = await runTransform({
|
|
22
|
-
source: output,
|
|
23
|
-
transform: migrateImportExportHooks
|
|
24
|
-
});
|
|
25
|
-
expect(result).toBe(output);
|
|
26
|
-
});
|
|
27
|
-
it('migrates both toCSV and fromCSV together', async ()=>{
|
|
28
|
-
const input = await fixture('both.input.ts');
|
|
29
|
-
const output = await fixture('both.output.ts');
|
|
30
|
-
const result = await runTransform({
|
|
31
|
-
source: input,
|
|
32
|
-
transform: migrateImportExportHooks
|
|
33
|
-
});
|
|
34
|
-
expect(result).toBe(output);
|
|
35
|
-
});
|
|
36
|
-
it('merges into existing hooks object when present', async ()=>{
|
|
37
|
-
const input = await fixture('existing-hooks.input.ts');
|
|
38
|
-
const output = await fixture('existing-hooks.output.ts');
|
|
39
|
-
const result = await runTransform({
|
|
40
|
-
source: input,
|
|
41
|
-
transform: migrateImportExportHooks
|
|
42
|
-
});
|
|
43
|
-
expect(result).toBe(output);
|
|
44
|
-
});
|
|
45
|
-
it('drops toCSV when hooks.beforeExport already exists', async ()=>{
|
|
46
|
-
const input = await fixture('hooks-priority.input.ts');
|
|
47
|
-
const output = await fixture('hooks-priority.output.ts');
|
|
48
|
-
const result = await runTransform({
|
|
49
|
-
source: input,
|
|
50
|
-
transform: migrateImportExportHooks
|
|
51
|
-
});
|
|
52
|
-
expect(result).toBe(output);
|
|
53
|
-
});
|
|
54
|
-
it('no-ops on code without toCSV or fromCSV', async ()=>{
|
|
55
|
-
const input = await fixture('non-matching.input.ts');
|
|
56
|
-
const output = await fixture('non-matching.output.ts');
|
|
57
|
-
const result = await runTransform({
|
|
58
|
-
source: input,
|
|
59
|
-
transform: migrateImportExportHooks
|
|
60
|
-
});
|
|
61
|
-
expect(result).toBe(output);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-import-export-hooks/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateImportExportHooks } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-import-export-hooks', () => {\n it('migrates toCSV to hooks.beforeExport', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateImportExportHooks })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: output, transform: migrateImportExportHooks })\n\n expect(result).toBe(output)\n })\n\n it('migrates both toCSV and fromCSV together', async () => {\n const input = await fixture('both.input.ts')\n const output = await fixture('both.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateImportExportHooks })\n\n expect(result).toBe(output)\n })\n\n it('merges into existing hooks object when present', async () => {\n const input = await fixture('existing-hooks.input.ts')\n const output = await fixture('existing-hooks.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateImportExportHooks })\n\n expect(result).toBe(output)\n })\n\n it('drops toCSV when hooks.beforeExport already exists', async () => {\n const input = await fixture('hooks-priority.input.ts')\n const output = await fixture('hooks-priority.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateImportExportHooks })\n\n expect(result).toBe(output)\n })\n\n it('no-ops on code without toCSV or fromCSV', async () => {\n const input = await fixture('non-matching.input.ts')\n const output = await fixture('non-matching.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateImportExportHooks })\n\n expect(result).toBe(output)\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateImportExportHooks","here","url","fixture","name","input","output","result","source","transform","toBe"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,wBAAwB,QAAQ,aAAY;AAErD,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,+BAA+B;IACtCE,GAAG,wCAAwC;QACzC,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,iBAAiB;QAClB,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQF;YAAQG,WAAWT;QAAyB;QAExFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,4CAA4C;QAC7C,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,kDAAkD;QACnD,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,sDAAsD;QACvD,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,2CAA2C;QAC5C,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-list-view-select-api/index.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateListViewSelectAPI } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-list-view-select-api', ()=>{
|
|
10
|
-
it('removes admin.enableListViewSelectAPI', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
source: input,
|
|
15
|
-
transform: migrateListViewSelectAPI
|
|
16
|
-
});
|
|
17
|
-
expect(result).toBe(output);
|
|
18
|
-
});
|
|
19
|
-
it('is idempotent', async ()=>{
|
|
20
|
-
const output = await fixture('basic.output.ts');
|
|
21
|
-
const result = await runTransform({
|
|
22
|
-
source: output,
|
|
23
|
-
transform: migrateListViewSelectAPI
|
|
24
|
-
});
|
|
25
|
-
expect(result).toBe(output);
|
|
26
|
-
});
|
|
27
|
-
it('leaves unrelated `enableListViewSelectAPI` keys untouched', async ()=>{
|
|
28
|
-
const input = await fixture('no-match.input.ts');
|
|
29
|
-
const result = await runTransform({
|
|
30
|
-
source: input,
|
|
31
|
-
transform: migrateListViewSelectAPI
|
|
32
|
-
});
|
|
33
|
-
expect(result).toBe(input);
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-list-view-select-api/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateListViewSelectAPI } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-list-view-select-api', () => {\n it('removes admin.enableListViewSelectAPI', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateListViewSelectAPI })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: output, transform: migrateListViewSelectAPI })\n\n expect(result).toBe(output)\n })\n\n it('leaves unrelated `enableListViewSelectAPI` keys untouched', async () => {\n const input = await fixture('no-match.input.ts')\n\n const result = await runTransform({ source: input, transform: migrateListViewSelectAPI })\n\n expect(result).toBe(input)\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateListViewSelectAPI","here","url","fixture","name","input","output","result","source","transform","toBe"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,wBAAwB,QAAQ,aAAY;AAErD,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,gCAAgC;IACvCE,GAAG,yCAAyC;QAC1C,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,iBAAiB;QAClB,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQF;YAAQG,WAAWT;QAAyB;QAExFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,6DAA6D;QAC9D,MAAMO,QAAQ,MAAMF,QAAQ;QAE5B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAAyB;QAEvFH,OAAOU,QAAQG,IAAI,CAACL;IACtB;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-next-generate-viewport-export/index.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateNextGenerateViewportExport } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-next-generate-viewport-export', ()=>{
|
|
10
|
-
it('adds generateViewport re-export to app layouts that use Payloads shared viewport helper', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
filename: '/project/app/(payload)/layout.tsx',
|
|
15
|
-
source: input,
|
|
16
|
-
transform: migrateNextGenerateViewportExport
|
|
17
|
-
});
|
|
18
|
-
expect(result).toBe(output);
|
|
19
|
-
});
|
|
20
|
-
it('is idempotent', async ()=>{
|
|
21
|
-
const output = await fixture('basic.output.ts');
|
|
22
|
-
const result = await runTransform({
|
|
23
|
-
filename: '/project/app/(payload)/layout.tsx',
|
|
24
|
-
source: output,
|
|
25
|
-
transform: migrateNextGenerateViewportExport
|
|
26
|
-
});
|
|
27
|
-
expect(result).toBe(output);
|
|
28
|
-
});
|
|
29
|
-
it('no-ops when the layout defines a custom generateViewport export', async ()=>{
|
|
30
|
-
const input = await fixture('non-matching.input.ts');
|
|
31
|
-
const output = await fixture('non-matching.output.ts');
|
|
32
|
-
const result = await runTransform({
|
|
33
|
-
filename: '/project/app/(payload)/layout.tsx',
|
|
34
|
-
source: input,
|
|
35
|
-
transform: migrateNextGenerateViewportExport
|
|
36
|
-
});
|
|
37
|
-
expect(result).toBe(output);
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-next-generate-viewport-export/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateNextGenerateViewportExport } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-next-generate-viewport-export', () => {\n it('adds generateViewport re-export to app layouts that use Payloads shared viewport helper', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({\n filename: '/project/app/(payload)/layout.tsx',\n source: input,\n transform: migrateNextGenerateViewportExport,\n })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({\n filename: '/project/app/(payload)/layout.tsx',\n source: output,\n transform: migrateNextGenerateViewportExport,\n })\n\n expect(result).toBe(output)\n })\n\n it('no-ops when the layout defines a custom generateViewport export', async () => {\n const input = await fixture('non-matching.input.ts')\n const output = await fixture('non-matching.output.ts')\n\n const result = await runTransform({\n filename: '/project/app/(payload)/layout.tsx',\n source: input,\n transform: migrateNextGenerateViewportExport,\n })\n\n expect(result).toBe(output)\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateNextGenerateViewportExport","here","url","fixture","name","input","output","result","filename","source","transform","toBe"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,iCAAiC,QAAQ,aAAY;AAE9D,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,yCAAyC;IAChDE,GAAG,2FAA2F;QAC5F,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAChCS,UAAU;YACVC,QAAQJ;YACRK,WAAWV;QACb;QAEAH,OAAOU,QAAQI,IAAI,CAACL;IACtB;IAEAR,GAAG,iBAAiB;QAClB,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAChCS,UAAU;YACVC,QAAQH;YACRI,WAAWV;QACb;QAEAH,OAAOU,QAAQI,IAAI,CAACL;IACtB;IAEAR,GAAG,mEAAmE;QACpE,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAChCS,UAAU;YACVC,QAAQJ;YACRK,WAAWV;QACb;QAEAH,OAAOU,QAAQI,IAAI,CAACL;IACtB;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-next-subpath-exports/index.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { dirname, join } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { describe, expect, it } from 'vitest';
|
|
5
|
-
import { runTransform } from '../../utils/test-helpers.js';
|
|
6
|
-
import { migrateNextSubpathExports } from './index.js';
|
|
7
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const fixture = (name)=>readFile(join(here, name), 'utf8');
|
|
9
|
-
describe('migrate-next-subpath-exports', ()=>{
|
|
10
|
-
it('rewrites import declarations and string component paths', async ()=>{
|
|
11
|
-
const input = await fixture('basic.input.ts');
|
|
12
|
-
const output = await fixture('basic.output.ts');
|
|
13
|
-
const result = await runTransform({
|
|
14
|
-
source: input,
|
|
15
|
-
transform: migrateNextSubpathExports
|
|
16
|
-
});
|
|
17
|
-
expect(result).toBe(output);
|
|
18
|
-
});
|
|
19
|
-
it('rewrites re-export declarations from the removed subpaths', async ()=>{
|
|
20
|
-
const input = await fixture('re-export.input.ts');
|
|
21
|
-
const output = await fixture('re-export.output.ts');
|
|
22
|
-
const result = await runTransform({
|
|
23
|
-
source: input,
|
|
24
|
-
transform: migrateNextSubpathExports
|
|
25
|
-
});
|
|
26
|
-
expect(result).toBe(output);
|
|
27
|
-
});
|
|
28
|
-
it('is idempotent on already-migrated source', async ()=>{
|
|
29
|
-
const output = await fixture('basic.output.ts');
|
|
30
|
-
const result = await runTransform({
|
|
31
|
-
source: output,
|
|
32
|
-
transform: migrateNextSubpathExports
|
|
33
|
-
});
|
|
34
|
-
expect(result).toBe(output);
|
|
35
|
-
});
|
|
36
|
-
it('leaves unrelated imports and plain prose strings untouched', async ()=>{
|
|
37
|
-
const input = await fixture('non-matching.input.ts');
|
|
38
|
-
const result = await runTransform({
|
|
39
|
-
source: input,
|
|
40
|
-
transform: migrateNextSubpathExports
|
|
41
|
-
});
|
|
42
|
-
expect(result).toBe(input);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transforms/migrate-next-subpath-exports/index.spec.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { describe, expect, it } from 'vitest'\n\nimport { runTransform } from '../../utils/test-helpers.js'\nimport { migrateNextSubpathExports } from './index.js'\n\nconst here = dirname(fileURLToPath(import.meta.url))\nconst fixture = (name: string) => readFile(join(here, name), 'utf8')\n\ndescribe('migrate-next-subpath-exports', () => {\n it('rewrites import declarations and string component paths', async () => {\n const input = await fixture('basic.input.ts')\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateNextSubpathExports })\n\n expect(result).toBe(output)\n })\n\n it('rewrites re-export declarations from the removed subpaths', async () => {\n const input = await fixture('re-export.input.ts')\n const output = await fixture('re-export.output.ts')\n\n const result = await runTransform({ source: input, transform: migrateNextSubpathExports })\n\n expect(result).toBe(output)\n })\n\n it('is idempotent on already-migrated source', async () => {\n const output = await fixture('basic.output.ts')\n\n const result = await runTransform({ source: output, transform: migrateNextSubpathExports })\n\n expect(result).toBe(output)\n })\n\n it('leaves unrelated imports and plain prose strings untouched', async () => {\n const input = await fixture('non-matching.input.ts')\n\n const result = await runTransform({ source: input, transform: migrateNextSubpathExports })\n\n expect(result).toBe(input)\n })\n})\n"],"names":["readFile","dirname","join","fileURLToPath","describe","expect","it","runTransform","migrateNextSubpathExports","here","url","fixture","name","input","output","result","source","transform","toBe"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,OAAO,EAAEC,IAAI,QAAQ,YAAW;AACzC,SAASC,aAAa,QAAQ,WAAU;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,yBAAyB,QAAQ,aAAY;AAEtD,MAAMC,OAAOR,QAAQE,cAAc,YAAYO,GAAG;AAClD,MAAMC,UAAU,CAACC,OAAiBZ,SAASE,KAAKO,MAAMG,OAAO;AAE7DR,SAAS,gCAAgC;IACvCE,GAAG,2DAA2D;QAC5D,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAA0B;QAExFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,6DAA6D;QAC9D,MAAMO,QAAQ,MAAMF,QAAQ;QAC5B,MAAMG,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAA0B;QAExFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,4CAA4C;QAC7C,MAAMQ,SAAS,MAAMH,QAAQ;QAE7B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQF;YAAQG,WAAWT;QAA0B;QAEzFH,OAAOU,QAAQG,IAAI,CAACJ;IACtB;IAEAR,GAAG,8DAA8D;QAC/D,MAAMO,QAAQ,MAAMF,QAAQ;QAE5B,MAAMI,SAAS,MAAMR,aAAa;YAAES,QAAQH;YAAOI,WAAWT;QAA0B;QAExFH,OAAOU,QAAQG,IAAI,CAACL;IACtB;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.d.ts","sourceRoot":"","sources":["../../../src/transforms/migrate-slug-field/index.spec.ts"],"names":[],"mappings":""}
|