create-payload-app 3.8.0 → 3.9.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"manage-env-files.d.ts","sourceRoot":"","sources":["../../src/lib/manage-env-files.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AA0CnE,wDAAwD;AACxD,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,eAAe,CAAA;CAC3B,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDhB"}
1
+ {"version":3,"file":"manage-env-files.d.ts","sourceRoot":"","sources":["../../src/lib/manage-env-files.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAkEnE,wDAAwD;AACxD,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,eAAe,CAAA;CAC3B,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDhB"}
@@ -1,25 +1,42 @@
1
1
  import fs from 'fs-extra';
2
2
  import path from 'path';
3
3
  import { debug, error } from '../utils/log.js';
4
- const updateEnvVariables = (contents, databaseType, databaseUri, payloadSecret)=>{
5
- return contents.split('\n').filter((e)=>e).map((line)=>{
4
+ import { dbChoiceRecord } from './select-db.js';
5
+ const updateEnvExampleVariables = (contents, databaseType)=>{
6
+ return contents.split('\n').map((line)=>{
6
7
  if (line.startsWith('#') || !line.includes('=')) {
7
- return line;
8
+ return line // Preserve comments and unrelated lines
9
+ ;
8
10
  }
9
- const [key, ...valueParts] = line.split('=');
10
- let value = valueParts.join('=');
11
- if (key === 'MONGODB_URI' || key === 'MONGO_URL' || key === 'DATABASE_URI' || key === 'POSTGRES_URL') {
12
- value = databaseUri;
13
- if (databaseType === 'vercel-postgres') {
14
- value = databaseUri;
11
+ const [key] = line.split('=');
12
+ if (key === 'DATABASE_URI' || key === 'POSTGRES_URL' || key === 'MONGODB_URI') {
13
+ const dbChoice = databaseType ? dbChoiceRecord[databaseType] : null;
14
+ if (dbChoice) {
15
+ const placeholderUri = `${dbChoice.dbConnectionPrefix}your-database-name${dbChoice.dbConnectionSuffix || ''}`;
16
+ return databaseType === 'vercel-postgres' ? `POSTGRES_URL=${placeholderUri}` : `DATABASE_URI=${placeholderUri}`;
15
17
  }
18
+ return `DATABASE_URI=your-database-connection-here` // Fallback
19
+ ;
16
20
  }
17
21
  if (key === 'PAYLOAD_SECRET' || key === 'PAYLOAD_SECRET_KEY') {
18
- value = payloadSecret;
22
+ return `PAYLOAD_SECRET=YOUR_SECRET_HERE`;
19
23
  }
20
- return `${key}=${value}`;
24
+ return line;
21
25
  }).join('\n');
22
26
  };
27
+ const generateEnvContent = (existingEnv, databaseType, databaseUri, payloadSecret)=>{
28
+ const dbKey = databaseType === 'vercel-postgres' ? 'POSTGRES_URL' : 'DATABASE_URI';
29
+ const envVars = {};
30
+ existingEnv.split('\n').filter((line)=>line.includes('=') && !line.startsWith('#')).forEach((line)=>{
31
+ const [key, value] = line.split('=');
32
+ envVars[key] = value;
33
+ });
34
+ // Override specific keys
35
+ envVars[dbKey] = databaseUri;
36
+ envVars['PAYLOAD_SECRET'] = payloadSecret;
37
+ // Rebuild content
38
+ return Object.entries(envVars).map(([key, value])=>`${key}=${value}`).join('\n');
39
+ };
23
40
  /** Parse and swap .env.example values and write .env */ export async function manageEnvFiles(args) {
24
41
  const { cliArgs, databaseType, databaseUri, payloadSecret, projectDir, template } = args;
25
42
  if (cliArgs['--dry-run']) {
@@ -30,21 +47,24 @@ const updateEnvVariables = (contents, databaseType, databaseUri, payloadSecret)=
30
47
  const envPath = path.join(projectDir, '.env');
31
48
  try {
32
49
  let updatedExampleContents;
50
+ // Update .env.example
33
51
  if (template?.type === 'starter') {
34
52
  if (!fs.existsSync(envExamplePath)) {
35
53
  error(`.env.example file not found at ${envExamplePath}`);
36
54
  process.exit(1);
37
55
  }
38
56
  const envExampleContents = await fs.readFile(envExamplePath, 'utf8');
39
- updatedExampleContents = updateEnvVariables(envExampleContents, databaseType, databaseUri, payloadSecret);
40
- await fs.writeFile(envExamplePath, updatedExampleContents);
57
+ updatedExampleContents = updateEnvExampleVariables(envExampleContents, databaseType);
58
+ await fs.writeFile(envExamplePath, updatedExampleContents.trimEnd() + '\n');
41
59
  debug(`.env.example file successfully updated`);
42
60
  } else {
43
- updatedExampleContents = `# Added by Payload\nDATABASE_URI=${databaseUri}\nPAYLOAD_SECRET=${payloadSecret}\n`;
61
+ updatedExampleContents = `# Added by Payload\nDATABASE_URI=your-connection-string-here\nPAYLOAD_SECRET=YOUR_SECRET_HERE\n`;
62
+ await fs.writeFile(envExamplePath, updatedExampleContents.trimEnd() + '\n');
44
63
  }
45
- const existingEnvContents = fs.existsSync(envPath) ? await fs.readFile(envPath, 'utf8') : '';
46
- const updatedEnvContents = existingEnvContents ? `${existingEnvContents}\n# Added by Payload\n${updatedExampleContents}` : `# Added by Payload\n${updatedExampleContents}`;
47
- await fs.writeFile(envPath, updatedEnvContents);
64
+ // Merge existing variables and create or update .env
65
+ const envExampleContents = await fs.readFile(envExamplePath, 'utf8');
66
+ const envContent = generateEnvContent(envExampleContents, databaseType, databaseUri, payloadSecret);
67
+ await fs.writeFile(envPath, `# Added by Payload\n${envContent.trimEnd()}\n`);
48
68
  debug(`.env file successfully created or updated`);
49
69
  } catch (err) {
50
70
  error('Unable to manage environment files');
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/manage-env-files.ts"],"sourcesContent":["import fs from 'fs-extra'\nimport path from 'path'\n\nimport type { CliArgs, DbType, ProjectTemplate } from '../types.js'\n\nimport { debug, error } from '../utils/log.js'\n\nconst updateEnvVariables = (\n contents: string,\n databaseType: DbType | undefined,\n databaseUri: string,\n payloadSecret: string,\n): string => {\n return contents\n .split('\\n')\n .filter((e) => e)\n .map((line) => {\n if (line.startsWith('#') || !line.includes('=')) {\n return line\n }\n\n const [key, ...valueParts] = line.split('=')\n let value = valueParts.join('=')\n\n if (\n key === 'MONGODB_URI' ||\n key === 'MONGO_URL' ||\n key === 'DATABASE_URI' ||\n key === 'POSTGRES_URL'\n ) {\n value = databaseUri\n if (databaseType === 'vercel-postgres') {\n value = databaseUri\n }\n }\n\n if (key === 'PAYLOAD_SECRET' || key === 'PAYLOAD_SECRET_KEY') {\n value = payloadSecret\n }\n\n return `${key}=${value}`\n })\n .join('\\n')\n}\n\n/** Parse and swap .env.example values and write .env */\nexport async function manageEnvFiles(args: {\n cliArgs: CliArgs\n databaseType?: DbType\n databaseUri: string\n payloadSecret: string\n projectDir: string\n template?: ProjectTemplate\n}): Promise<void> {\n const { cliArgs, databaseType, databaseUri, payloadSecret, projectDir, template } = args\n\n if (cliArgs['--dry-run']) {\n debug(`DRY RUN: Environment files managed`)\n return\n }\n\n const envExamplePath = path.join(projectDir, '.env.example')\n const envPath = path.join(projectDir, '.env')\n\n try {\n let updatedExampleContents: string\n\n if (template?.type === 'starter') {\n if (!fs.existsSync(envExamplePath)) {\n error(`.env.example file not found at ${envExamplePath}`)\n process.exit(1)\n }\n\n const envExampleContents = await fs.readFile(envExamplePath, 'utf8')\n updatedExampleContents = updateEnvVariables(\n envExampleContents,\n databaseType,\n databaseUri,\n payloadSecret,\n )\n\n await fs.writeFile(envExamplePath, updatedExampleContents)\n debug(`.env.example file successfully updated`)\n } else {\n updatedExampleContents = `# Added by Payload\\nDATABASE_URI=${databaseUri}\\nPAYLOAD_SECRET=${payloadSecret}\\n`\n }\n\n const existingEnvContents = fs.existsSync(envPath) ? await fs.readFile(envPath, 'utf8') : ''\n const updatedEnvContents = existingEnvContents\n ? `${existingEnvContents}\\n# Added by Payload\\n${updatedExampleContents}`\n : `# Added by Payload\\n${updatedExampleContents}`\n\n await fs.writeFile(envPath, updatedEnvContents)\n debug(`.env file successfully created or updated`)\n } catch (err: unknown) {\n error('Unable to manage environment files')\n if (err instanceof Error) {\n error(err.message)\n }\n process.exit(1)\n }\n}\n"],"names":["fs","path","debug","error","updateEnvVariables","contents","databaseType","databaseUri","payloadSecret","split","filter","e","map","line","startsWith","includes","key","valueParts","value","join","manageEnvFiles","args","cliArgs","projectDir","template","envExamplePath","envPath","updatedExampleContents","type","existsSync","process","exit","envExampleContents","readFile","writeFile","existingEnvContents","updatedEnvContents","err","Error","message"],"mappings":"AAAA,OAAOA,QAAQ,WAAU;AACzB,OAAOC,UAAU,OAAM;AAIvB,SAASC,KAAK,EAAEC,KAAK,QAAQ,kBAAiB;AAE9C,MAAMC,qBAAqB,CACzBC,UACAC,cACAC,aACAC;IAEA,OAAOH,SACJI,KAAK,CAAC,MACNC,MAAM,CAAC,CAACC,IAAMA,GACdC,GAAG,CAAC,CAACC;QACJ,IAAIA,KAAKC,UAAU,CAAC,QAAQ,CAACD,KAAKE,QAAQ,CAAC,MAAM;YAC/C,OAAOF;QACT;QAEA,MAAM,CAACG,KAAK,GAAGC,WAAW,GAAGJ,KAAKJ,KAAK,CAAC;QACxC,IAAIS,QAAQD,WAAWE,IAAI,CAAC;QAE5B,IACEH,QAAQ,iBACRA,QAAQ,eACRA,QAAQ,kBACRA,QAAQ,gBACR;YACAE,QAAQX;YACR,IAAID,iBAAiB,mBAAmB;gBACtCY,QAAQX;YACV;QACF;QAEA,IAAIS,QAAQ,oBAAoBA,QAAQ,sBAAsB;YAC5DE,QAAQV;QACV;QAEA,OAAO,GAAGQ,IAAI,CAAC,EAAEE,OAAO;IAC1B,GACCC,IAAI,CAAC;AACV;AAEA,sDAAsD,GACtD,OAAO,eAAeC,eAAeC,IAOpC;IACC,MAAM,EAAEC,OAAO,EAAEhB,YAAY,EAAEC,WAAW,EAAEC,aAAa,EAAEe,UAAU,EAAEC,QAAQ,EAAE,GAAGH;IAEpF,IAAIC,OAAO,CAAC,YAAY,EAAE;QACxBpB,MAAM,CAAC,kCAAkC,CAAC;QAC1C;IACF;IAEA,MAAMuB,iBAAiBxB,KAAKkB,IAAI,CAACI,YAAY;IAC7C,MAAMG,UAAUzB,KAAKkB,IAAI,CAACI,YAAY;IAEtC,IAAI;QACF,IAAII;QAEJ,IAAIH,UAAUI,SAAS,WAAW;YAChC,IAAI,CAAC5B,GAAG6B,UAAU,CAACJ,iBAAiB;gBAClCtB,MAAM,CAAC,+BAA+B,EAAEsB,gBAAgB;gBACxDK,QAAQC,IAAI,CAAC;YACf;YAEA,MAAMC,qBAAqB,MAAMhC,GAAGiC,QAAQ,CAACR,gBAAgB;YAC7DE,yBAAyBvB,mBACvB4B,oBACA1B,cACAC,aACAC;YAGF,MAAMR,GAAGkC,SAAS,CAACT,gBAAgBE;YACnCzB,MAAM,CAAC,sCAAsC,CAAC;QAChD,OAAO;YACLyB,yBAAyB,CAAC,iCAAiC,EAAEpB,YAAY,iBAAiB,EAAEC,cAAc,EAAE,CAAC;QAC/G;QAEA,MAAM2B,sBAAsBnC,GAAG6B,UAAU,CAACH,WAAW,MAAM1B,GAAGiC,QAAQ,CAACP,SAAS,UAAU;QAC1F,MAAMU,qBAAqBD,sBACvB,GAAGA,oBAAoB,sBAAsB,EAAER,wBAAwB,GACvE,CAAC,oBAAoB,EAAEA,wBAAwB;QAEnD,MAAM3B,GAAGkC,SAAS,CAACR,SAASU;QAC5BlC,MAAM,CAAC,yCAAyC,CAAC;IACnD,EAAE,OAAOmC,KAAc;QACrBlC,MAAM;QACN,IAAIkC,eAAeC,OAAO;YACxBnC,MAAMkC,IAAIE,OAAO;QACnB;QACAT,QAAQC,IAAI,CAAC;IACf;AACF"}
1
+ {"version":3,"sources":["../../src/lib/manage-env-files.ts"],"sourcesContent":["import fs from 'fs-extra'\nimport path from 'path'\n\nimport type { CliArgs, DbType, ProjectTemplate } from '../types.js'\n\nimport { debug, error } from '../utils/log.js'\nimport { dbChoiceRecord } from './select-db.js'\n\nconst updateEnvExampleVariables = (contents: string, databaseType: DbType | undefined): string => {\n return contents\n .split('\\n')\n .map((line) => {\n if (line.startsWith('#') || !line.includes('=')) {\n return line // Preserve comments and unrelated lines\n }\n\n const [key] = line.split('=')\n\n if (key === 'DATABASE_URI' || key === 'POSTGRES_URL' || key === 'MONGODB_URI') {\n const dbChoice = databaseType ? dbChoiceRecord[databaseType] : null\n\n if (dbChoice) {\n const placeholderUri = `${dbChoice.dbConnectionPrefix}your-database-name${\n dbChoice.dbConnectionSuffix || ''\n }`\n return databaseType === 'vercel-postgres'\n ? `POSTGRES_URL=${placeholderUri}`\n : `DATABASE_URI=${placeholderUri}`\n }\n\n return `DATABASE_URI=your-database-connection-here` // Fallback\n }\n\n if (key === 'PAYLOAD_SECRET' || key === 'PAYLOAD_SECRET_KEY') {\n return `PAYLOAD_SECRET=YOUR_SECRET_HERE`\n }\n\n return line\n })\n .join('\\n')\n}\n\nconst generateEnvContent = (\n existingEnv: string,\n databaseType: DbType | undefined,\n databaseUri: string,\n payloadSecret: string,\n): string => {\n const dbKey = databaseType === 'vercel-postgres' ? 'POSTGRES_URL' : 'DATABASE_URI'\n\n const envVars: Record<string, string> = {}\n existingEnv\n .split('\\n')\n .filter((line) => line.includes('=') && !line.startsWith('#'))\n .forEach((line) => {\n const [key, value] = line.split('=')\n envVars[key] = value\n })\n\n // Override specific keys\n envVars[dbKey] = databaseUri\n envVars['PAYLOAD_SECRET'] = payloadSecret\n\n // Rebuild content\n return Object.entries(envVars)\n .map(([key, value]) => `${key}=${value}`)\n .join('\\n')\n}\n\n/** Parse and swap .env.example values and write .env */\nexport async function manageEnvFiles(args: {\n cliArgs: CliArgs\n databaseType?: DbType\n databaseUri: string\n payloadSecret: string\n projectDir: string\n template?: ProjectTemplate\n}): Promise<void> {\n const { cliArgs, databaseType, databaseUri, payloadSecret, projectDir, template } = args\n\n if (cliArgs['--dry-run']) {\n debug(`DRY RUN: Environment files managed`)\n return\n }\n\n const envExamplePath = path.join(projectDir, '.env.example')\n const envPath = path.join(projectDir, '.env')\n\n try {\n let updatedExampleContents: string\n\n // Update .env.example\n if (template?.type === 'starter') {\n if (!fs.existsSync(envExamplePath)) {\n error(`.env.example file not found at ${envExamplePath}`)\n process.exit(1)\n }\n\n const envExampleContents = await fs.readFile(envExamplePath, 'utf8')\n updatedExampleContents = updateEnvExampleVariables(envExampleContents, databaseType)\n\n await fs.writeFile(envExamplePath, updatedExampleContents.trimEnd() + '\\n')\n debug(`.env.example file successfully updated`)\n } else {\n updatedExampleContents = `# Added by Payload\\nDATABASE_URI=your-connection-string-here\\nPAYLOAD_SECRET=YOUR_SECRET_HERE\\n`\n await fs.writeFile(envExamplePath, updatedExampleContents.trimEnd() + '\\n')\n }\n\n // Merge existing variables and create or update .env\n const envExampleContents = await fs.readFile(envExamplePath, 'utf8')\n const envContent = generateEnvContent(\n envExampleContents,\n databaseType,\n databaseUri,\n payloadSecret,\n )\n await fs.writeFile(envPath, `# Added by Payload\\n${envContent.trimEnd()}\\n`)\n\n debug(`.env file successfully created or updated`)\n } catch (err: unknown) {\n error('Unable to manage environment files')\n if (err instanceof Error) {\n error(err.message)\n }\n process.exit(1)\n }\n}\n"],"names":["fs","path","debug","error","dbChoiceRecord","updateEnvExampleVariables","contents","databaseType","split","map","line","startsWith","includes","key","dbChoice","placeholderUri","dbConnectionPrefix","dbConnectionSuffix","join","generateEnvContent","existingEnv","databaseUri","payloadSecret","dbKey","envVars","filter","forEach","value","Object","entries","manageEnvFiles","args","cliArgs","projectDir","template","envExamplePath","envPath","updatedExampleContents","type","existsSync","process","exit","envExampleContents","readFile","writeFile","trimEnd","envContent","err","Error","message"],"mappings":"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"}
@@ -1,3 +1,11 @@
1
- import type { CliArgs, DbDetails } from '../types.js';
1
+ import type { CliArgs, DbDetails, DbType } from '../types.js';
2
+ type DbChoice = {
3
+ dbConnectionPrefix: `${string}/`;
4
+ dbConnectionSuffix?: string;
5
+ title: string;
6
+ value: DbType;
7
+ };
8
+ export declare const dbChoiceRecord: Record<DbType, DbChoice>;
2
9
  export declare function selectDb(args: CliArgs, projectName: string): Promise<DbDetails>;
10
+ export {};
3
11
  //# sourceMappingURL=select-db.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select-db.d.ts","sourceRoot":"","sources":["../../src/lib/select-db.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAU,MAAM,aAAa,CAAA;AAiC7D,wBAAsB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAkDrF"}
1
+ {"version":3,"file":"select-db.d.ts","sourceRoot":"","sources":["../../src/lib/select-db.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAE7D,KAAK,QAAQ,GAAG;IACd,kBAAkB,EAAE,GAAG,MAAM,GAAG,CAAA;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAsBnD,CAAA;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAkDrF"}
@@ -1,6 +1,6 @@
1
1
  import * as p from '@clack/prompts';
2
2
  import slugify from '@sindresorhus/slugify';
3
- const dbChoiceRecord = {
3
+ export const dbChoiceRecord = {
4
4
  mongodb: {
5
5
  dbConnectionPrefix: 'mongodb://127.0.0.1/',
6
6
  title: 'MongoDB',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/select-db.ts"],"sourcesContent":["import * as p from '@clack/prompts'\nimport slugify from '@sindresorhus/slugify'\n\nimport type { CliArgs, DbDetails, DbType } from '../types.js'\n\ntype DbChoice = {\n dbConnectionPrefix: `${string}/`\n dbConnectionSuffix?: string\n title: string\n value: DbType\n}\n\nconst dbChoiceRecord: Record<DbType, DbChoice> = {\n mongodb: {\n dbConnectionPrefix: 'mongodb://127.0.0.1/',\n title: 'MongoDB',\n value: 'mongodb',\n },\n postgres: {\n dbConnectionPrefix: 'postgres://postgres:<password>@127.0.0.1:5432/',\n title: 'PostgreSQL',\n value: 'postgres',\n },\n sqlite: {\n dbConnectionPrefix: 'file:./',\n dbConnectionSuffix: '.db',\n title: 'SQLite',\n value: 'sqlite',\n },\n 'vercel-postgres': {\n dbConnectionPrefix: 'postgres://postgres:<password>@127.0.0.1:5432/',\n title: 'Vercel Postgres',\n value: 'vercel-postgres',\n },\n}\n\nexport async function selectDb(args: CliArgs, projectName: string): Promise<DbDetails> {\n let dbType: DbType | symbol | undefined = undefined\n if (args['--db']) {\n if (!Object.values(dbChoiceRecord).some((dbChoice) => dbChoice.value === args['--db'])) {\n throw new Error(\n `Invalid database type given. Valid types are: ${Object.values(dbChoiceRecord)\n .map((dbChoice) => dbChoice.value)\n .join(', ')}`,\n )\n }\n dbType = args['--db'] as DbType\n } else {\n dbType = await p.select<{ label: string; value: DbType }[], DbType>({\n initialValue: 'mongodb',\n message: `Select a database`,\n options: Object.values(dbChoiceRecord).map((dbChoice) => ({\n label: dbChoice.title,\n value: dbChoice.value,\n })),\n })\n if (p.isCancel(dbType)) {\n process.exit(0)\n }\n }\n\n const dbChoice = dbChoiceRecord[dbType]\n\n let dbUri: string | symbol | undefined = undefined\n const initialDbUri = `${dbChoice.dbConnectionPrefix}${\n projectName === '.' ? `payload-${getRandomDigitSuffix()}` : slugify(projectName)\n }${dbChoice.dbConnectionSuffix || ''}`\n\n if (args['--db-accept-recommended']) {\n dbUri = initialDbUri\n } else if (args['--db-connection-string']) {\n dbUri = args['--db-connection-string']\n } else {\n dbUri = await p.text({\n initialValue: initialDbUri,\n message: `Enter ${dbChoice.title.split(' ')[0]} connection string`, // strip beta from title\n })\n if (p.isCancel(dbUri)) {\n process.exit(0)\n }\n }\n\n return {\n type: dbChoice.value,\n dbUri,\n }\n}\n\nfunction getRandomDigitSuffix(): string {\n return (Math.random() * Math.pow(10, 6)).toFixed(0)\n}\n"],"names":["p","slugify","dbChoiceRecord","mongodb","dbConnectionPrefix","title","value","postgres","sqlite","dbConnectionSuffix","selectDb","args","projectName","dbType","undefined","Object","values","some","dbChoice","Error","map","join","select","initialValue","message","options","label","isCancel","process","exit","dbUri","initialDbUri","getRandomDigitSuffix","text","split","type","Math","random","pow","toFixed"],"mappings":"AAAA,YAAYA,OAAO,iBAAgB;AACnC,OAAOC,aAAa,wBAAuB;AAW3C,MAAMC,iBAA2C;IAC/CC,SAAS;QACPC,oBAAoB;QACpBC,OAAO;QACPC,OAAO;IACT;IACAC,UAAU;QACRH,oBAAoB;QACpBC,OAAO;QACPC,OAAO;IACT;IACAE,QAAQ;QACNJ,oBAAoB;QACpBK,oBAAoB;QACpBJ,OAAO;QACPC,OAAO;IACT;IACA,mBAAmB;QACjBF,oBAAoB;QACpBC,OAAO;QACPC,OAAO;IACT;AACF;AAEA,OAAO,eAAeI,SAASC,IAAa,EAAEC,WAAmB;IAC/D,IAAIC,SAAsCC;IAC1C,IAAIH,IAAI,CAAC,OAAO,EAAE;QAChB,IAAI,CAACI,OAAOC,MAAM,CAACd,gBAAgBe,IAAI,CAAC,CAACC,WAAaA,SAASZ,KAAK,KAAKK,IAAI,CAAC,OAAO,GAAG;YACtF,MAAM,IAAIQ,MACR,CAAC,8CAA8C,EAAEJ,OAAOC,MAAM,CAACd,gBAC5DkB,GAAG,CAAC,CAACF,WAAaA,SAASZ,KAAK,EAChCe,IAAI,CAAC,OAAO;QAEnB;QACAR,SAASF,IAAI,CAAC,OAAO;IACvB,OAAO;QACLE,SAAS,MAAMb,EAAEsB,MAAM,CAA6C;YAClEC,cAAc;YACdC,SAAS,CAAC,iBAAiB,CAAC;YAC5BC,SAASV,OAAOC,MAAM,CAACd,gBAAgBkB,GAAG,CAAC,CAACF,WAAc,CAAA;oBACxDQ,OAAOR,SAASb,KAAK;oBACrBC,OAAOY,SAASZ,KAAK;gBACvB,CAAA;QACF;QACA,IAAIN,EAAE2B,QAAQ,CAACd,SAAS;YACtBe,QAAQC,IAAI,CAAC;QACf;IACF;IAEA,MAAMX,WAAWhB,cAAc,CAACW,OAAO;IAEvC,IAAIiB,QAAqChB;IACzC,MAAMiB,eAAe,GAAGb,SAASd,kBAAkB,GACjDQ,gBAAgB,MAAM,CAAC,QAAQ,EAAEoB,wBAAwB,GAAG/B,QAAQW,eACnEM,SAAST,kBAAkB,IAAI,IAAI;IAEtC,IAAIE,IAAI,CAAC,0BAA0B,EAAE;QACnCmB,QAAQC;IACV,OAAO,IAAIpB,IAAI,CAAC,yBAAyB,EAAE;QACzCmB,QAAQnB,IAAI,CAAC,yBAAyB;IACxC,OAAO;QACLmB,QAAQ,MAAM9B,EAAEiC,IAAI,CAAC;YACnBV,cAAcQ;YACdP,SAAS,CAAC,MAAM,EAAEN,SAASb,KAAK,CAAC6B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC;QACpE;QACA,IAAIlC,EAAE2B,QAAQ,CAACG,QAAQ;YACrBF,QAAQC,IAAI,CAAC;QACf;IACF;IAEA,OAAO;QACLM,MAAMjB,SAASZ,KAAK;QACpBwB;IACF;AACF;AAEA,SAASE;IACP,OAAO,AAACI,CAAAA,KAAKC,MAAM,KAAKD,KAAKE,GAAG,CAAC,IAAI,EAAC,EAAGC,OAAO,CAAC;AACnD"}
1
+ {"version":3,"sources":["../../src/lib/select-db.ts"],"sourcesContent":["import * as p from '@clack/prompts'\nimport slugify from '@sindresorhus/slugify'\n\nimport type { CliArgs, DbDetails, DbType } from '../types.js'\n\ntype DbChoice = {\n dbConnectionPrefix: `${string}/`\n dbConnectionSuffix?: string\n title: string\n value: DbType\n}\n\nexport const dbChoiceRecord: Record<DbType, DbChoice> = {\n mongodb: {\n dbConnectionPrefix: 'mongodb://127.0.0.1/',\n title: 'MongoDB',\n value: 'mongodb',\n },\n postgres: {\n dbConnectionPrefix: 'postgres://postgres:<password>@127.0.0.1:5432/',\n title: 'PostgreSQL',\n value: 'postgres',\n },\n sqlite: {\n dbConnectionPrefix: 'file:./',\n dbConnectionSuffix: '.db',\n title: 'SQLite',\n value: 'sqlite',\n },\n 'vercel-postgres': {\n dbConnectionPrefix: 'postgres://postgres:<password>@127.0.0.1:5432/',\n title: 'Vercel Postgres',\n value: 'vercel-postgres',\n },\n}\n\nexport async function selectDb(args: CliArgs, projectName: string): Promise<DbDetails> {\n let dbType: DbType | symbol | undefined = undefined\n if (args['--db']) {\n if (!Object.values(dbChoiceRecord).some((dbChoice) => dbChoice.value === args['--db'])) {\n throw new Error(\n `Invalid database type given. Valid types are: ${Object.values(dbChoiceRecord)\n .map((dbChoice) => dbChoice.value)\n .join(', ')}`,\n )\n }\n dbType = args['--db'] as DbType\n } else {\n dbType = await p.select<{ label: string; value: DbType }[], DbType>({\n initialValue: 'mongodb',\n message: `Select a database`,\n options: Object.values(dbChoiceRecord).map((dbChoice) => ({\n label: dbChoice.title,\n value: dbChoice.value,\n })),\n })\n if (p.isCancel(dbType)) {\n process.exit(0)\n }\n }\n\n const dbChoice = dbChoiceRecord[dbType]\n\n let dbUri: string | symbol | undefined = undefined\n const initialDbUri = `${dbChoice.dbConnectionPrefix}${\n projectName === '.' ? `payload-${getRandomDigitSuffix()}` : slugify(projectName)\n }${dbChoice.dbConnectionSuffix || ''}`\n\n if (args['--db-accept-recommended']) {\n dbUri = initialDbUri\n } else if (args['--db-connection-string']) {\n dbUri = args['--db-connection-string']\n } else {\n dbUri = await p.text({\n initialValue: initialDbUri,\n message: `Enter ${dbChoice.title.split(' ')[0]} connection string`, // strip beta from title\n })\n if (p.isCancel(dbUri)) {\n process.exit(0)\n }\n }\n\n return {\n type: dbChoice.value,\n dbUri,\n }\n}\n\nfunction getRandomDigitSuffix(): string {\n return (Math.random() * Math.pow(10, 6)).toFixed(0)\n}\n"],"names":["p","slugify","dbChoiceRecord","mongodb","dbConnectionPrefix","title","value","postgres","sqlite","dbConnectionSuffix","selectDb","args","projectName","dbType","undefined","Object","values","some","dbChoice","Error","map","join","select","initialValue","message","options","label","isCancel","process","exit","dbUri","initialDbUri","getRandomDigitSuffix","text","split","type","Math","random","pow","toFixed"],"mappings":"AAAA,YAAYA,OAAO,iBAAgB;AACnC,OAAOC,aAAa,wBAAuB;AAW3C,OAAO,MAAMC,iBAA2C;IACtDC,SAAS;QACPC,oBAAoB;QACpBC,OAAO;QACPC,OAAO;IACT;IACAC,UAAU;QACRH,oBAAoB;QACpBC,OAAO;QACPC,OAAO;IACT;IACAE,QAAQ;QACNJ,oBAAoB;QACpBK,oBAAoB;QACpBJ,OAAO;QACPC,OAAO;IACT;IACA,mBAAmB;QACjBF,oBAAoB;QACpBC,OAAO;QACPC,OAAO;IACT;AACF,EAAC;AAED,OAAO,eAAeI,SAASC,IAAa,EAAEC,WAAmB;IAC/D,IAAIC,SAAsCC;IAC1C,IAAIH,IAAI,CAAC,OAAO,EAAE;QAChB,IAAI,CAACI,OAAOC,MAAM,CAACd,gBAAgBe,IAAI,CAAC,CAACC,WAAaA,SAASZ,KAAK,KAAKK,IAAI,CAAC,OAAO,GAAG;YACtF,MAAM,IAAIQ,MACR,CAAC,8CAA8C,EAAEJ,OAAOC,MAAM,CAACd,gBAC5DkB,GAAG,CAAC,CAACF,WAAaA,SAASZ,KAAK,EAChCe,IAAI,CAAC,OAAO;QAEnB;QACAR,SAASF,IAAI,CAAC,OAAO;IACvB,OAAO;QACLE,SAAS,MAAMb,EAAEsB,MAAM,CAA6C;YAClEC,cAAc;YACdC,SAAS,CAAC,iBAAiB,CAAC;YAC5BC,SAASV,OAAOC,MAAM,CAACd,gBAAgBkB,GAAG,CAAC,CAACF,WAAc,CAAA;oBACxDQ,OAAOR,SAASb,KAAK;oBACrBC,OAAOY,SAASZ,KAAK;gBACvB,CAAA;QACF;QACA,IAAIN,EAAE2B,QAAQ,CAACd,SAAS;YACtBe,QAAQC,IAAI,CAAC;QACf;IACF;IAEA,MAAMX,WAAWhB,cAAc,CAACW,OAAO;IAEvC,IAAIiB,QAAqChB;IACzC,MAAMiB,eAAe,GAAGb,SAASd,kBAAkB,GACjDQ,gBAAgB,MAAM,CAAC,QAAQ,EAAEoB,wBAAwB,GAAG/B,QAAQW,eACnEM,SAAST,kBAAkB,IAAI,IAAI;IAEtC,IAAIE,IAAI,CAAC,0BAA0B,EAAE;QACnCmB,QAAQC;IACV,OAAO,IAAIpB,IAAI,CAAC,yBAAyB,EAAE;QACzCmB,QAAQnB,IAAI,CAAC,yBAAyB;IACxC,OAAO;QACLmB,QAAQ,MAAM9B,EAAEiC,IAAI,CAAC;YACnBV,cAAcQ;YACdP,SAAS,CAAC,MAAM,EAAEN,SAASb,KAAK,CAAC6B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC;QACpE;QACA,IAAIlC,EAAE2B,QAAQ,CAACG,QAAQ;YACrBF,QAAQC,IAAI,CAAC;QACf;IACF;IAEA,OAAO;QACLM,MAAMjB,SAASZ,KAAK;QACpBwB;IACF;AACF;AAEA,SAASE;IACP,OAAO,AAACI,CAAAA,KAAKC,MAAM,KAAKD,KAAKE,GAAG,CAAC,IAAI,EAAC,EAAGC,OAAO,CAAC;AACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"copy-recursive-sync.d.ts","sourceRoot":"","sources":["../../src/utils/copy-recursive-sync.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAezF"}
1
+ {"version":3,"file":"copy-recursive-sync.d.ts","sourceRoot":"","sources":["../../src/utils/copy-recursive-sync.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAqBzF"}
@@ -13,10 +13,13 @@ import path from 'path';
13
13
  recursive: true
14
14
  });
15
15
  fs.readdirSync(src).forEach((childItemName)=>{
16
- if (ignoreRegex && ignoreRegex.some((regex)=>new RegExp(regex).test(childItemName))) {
16
+ if (ignoreRegex && ignoreRegex.some((regex)=>{
17
+ return new RegExp(regex).test(childItemName);
18
+ })) {
19
+ console.log(`Ignoring ${childItemName} due to regex: ${ignoreRegex}`);
17
20
  return;
18
21
  }
19
- copyRecursiveSync(path.join(src, childItemName), path.join(dest, childItemName));
22
+ copyRecursiveSync(path.join(src, childItemName), path.join(dest, childItemName), ignoreRegex);
20
23
  });
21
24
  } else {
22
25
  fs.copyFileSync(src, dest);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/copy-recursive-sync.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\n\n/**\n * Recursively copy files from src to dest\n *\n * @internal\n */\nexport function copyRecursiveSync(src: string, dest: string, ignoreRegex?: string[]): void {\n const exists = fs.existsSync(src)\n const stats = exists && fs.statSync(src)\n const isDirectory = exists && stats !== false && stats.isDirectory()\n if (isDirectory) {\n fs.mkdirSync(dest, { recursive: true })\n fs.readdirSync(src).forEach((childItemName) => {\n if (ignoreRegex && ignoreRegex.some((regex) => new RegExp(regex).test(childItemName))) {\n return\n }\n copyRecursiveSync(path.join(src, childItemName), path.join(dest, childItemName))\n })\n } else {\n fs.copyFileSync(src, dest)\n }\n}\n"],"names":["fs","path","copyRecursiveSync","src","dest","ignoreRegex","exists","existsSync","stats","statSync","isDirectory","mkdirSync","recursive","readdirSync","forEach","childItemName","some","regex","RegExp","test","join","copyFileSync"],"mappings":"AAAA,OAAOA,QAAQ,KAAI;AACnB,OAAOC,UAAU,OAAM;AAEvB;;;;CAIC,GACD,OAAO,SAASC,kBAAkBC,GAAW,EAAEC,IAAY,EAAEC,WAAsB;IACjF,MAAMC,SAASN,GAAGO,UAAU,CAACJ;IAC7B,MAAMK,QAAQF,UAAUN,GAAGS,QAAQ,CAACN;IACpC,MAAMO,cAAcJ,UAAUE,UAAU,SAASA,MAAME,WAAW;IAClE,IAAIA,aAAa;QACfV,GAAGW,SAAS,CAACP,MAAM;YAAEQ,WAAW;QAAK;QACrCZ,GAAGa,WAAW,CAACV,KAAKW,OAAO,CAAC,CAACC;YAC3B,IAAIV,eAAeA,YAAYW,IAAI,CAAC,CAACC,QAAU,IAAIC,OAAOD,OAAOE,IAAI,CAACJ,iBAAiB;gBACrF;YACF;YACAb,kBAAkBD,KAAKmB,IAAI,CAACjB,KAAKY,gBAAgBd,KAAKmB,IAAI,CAAChB,MAAMW;QACnE;IACF,OAAO;QACLf,GAAGqB,YAAY,CAAClB,KAAKC;IACvB;AACF"}
1
+ {"version":3,"sources":["../../src/utils/copy-recursive-sync.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\n\n/**\n * Recursively copy files from src to dest\n *\n * @internal\n */\nexport function copyRecursiveSync(src: string, dest: string, ignoreRegex?: string[]): void {\n const exists = fs.existsSync(src)\n const stats = exists && fs.statSync(src)\n const isDirectory = exists && stats !== false && stats.isDirectory()\n if (isDirectory) {\n fs.mkdirSync(dest, { recursive: true })\n fs.readdirSync(src).forEach((childItemName) => {\n if (\n ignoreRegex &&\n ignoreRegex.some((regex) => {\n return new RegExp(regex).test(childItemName)\n })\n ) {\n console.log(`Ignoring ${childItemName} due to regex: ${ignoreRegex}`)\n return\n }\n copyRecursiveSync(path.join(src, childItemName), path.join(dest, childItemName), ignoreRegex)\n })\n } else {\n fs.copyFileSync(src, dest)\n }\n}\n"],"names":["fs","path","copyRecursiveSync","src","dest","ignoreRegex","exists","existsSync","stats","statSync","isDirectory","mkdirSync","recursive","readdirSync","forEach","childItemName","some","regex","RegExp","test","console","log","join","copyFileSync"],"mappings":"AAAA,OAAOA,QAAQ,KAAI;AACnB,OAAOC,UAAU,OAAM;AAEvB;;;;CAIC,GACD,OAAO,SAASC,kBAAkBC,GAAW,EAAEC,IAAY,EAAEC,WAAsB;IACjF,MAAMC,SAASN,GAAGO,UAAU,CAACJ;IAC7B,MAAMK,QAAQF,UAAUN,GAAGS,QAAQ,CAACN;IACpC,MAAMO,cAAcJ,UAAUE,UAAU,SAASA,MAAME,WAAW;IAClE,IAAIA,aAAa;QACfV,GAAGW,SAAS,CAACP,MAAM;YAAEQ,WAAW;QAAK;QACrCZ,GAAGa,WAAW,CAACV,KAAKW,OAAO,CAAC,CAACC;YAC3B,IACEV,eACAA,YAAYW,IAAI,CAAC,CAACC;gBAChB,OAAO,IAAIC,OAAOD,OAAOE,IAAI,CAACJ;YAChC,IACA;gBACAK,QAAQC,GAAG,CAAC,CAAC,SAAS,EAAEN,cAAc,eAAe,EAAEV,aAAa;gBACpE;YACF;YACAH,kBAAkBD,KAAKqB,IAAI,CAACnB,KAAKY,gBAAgBd,KAAKqB,IAAI,CAAClB,MAAMW,gBAAgBV;QACnF;IACF,OAAO;QACLL,GAAGuB,YAAY,CAACpB,KAAKC;IACvB;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-payload-app",
3
- "version": "3.8.0",
3
+ "version": "3.9.0",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=create-project.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-project.spec.d.ts","sourceRoot":"","sources":["../../src/lib/create-project.spec.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=wrap-next-config.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrap-next-config.spec.d.ts","sourceRoot":"","sources":["../../src/lib/wrap-next-config.spec.ts"],"names":[],"mappings":""}
File without changes