{"version":3,"file":"create-cli-db-project.mjs","sources":["../src/create-cli-db-project.ts"],"sourcesContent":["import { merge } from 'lodash';\n\nimport { trackUsage } from './utils/usage';\nimport defaultConfigs from './utils/db-configs';\nimport clientDependencies from './utils/db-client-dependencies';\nimport getClientName from './utils/db-client-name';\nimport createProject from './create-project';\n\nimport type { ClientName, Configuration, Scope } from './types';\n\nexport default async (scope: Scope) => {\n  console.log('Creating a project from the database CLI arguments.');\n  await trackUsage({ event: 'didChooseCustomDatabase', scope });\n\n  const { client } = scope.database ?? {};\n\n  if (!client) {\n    throw new Error('Missing client');\n  }\n\n  const configuration: Configuration = {\n    client: getClientName({ client }),\n    connection: merge(\n      {},\n      defaultConfigs[client as keyof typeof defaultConfigs] || {},\n      scope.database\n    ),\n    dependencies: {\n      ...clientDependencies({ scope, client } as { scope: Scope; client: ClientName }),\n      ...scope.additionalsDependencies,\n    },\n  };\n\n  return createProject(scope, configuration);\n};\n"],"names":[],"mappings":";;;;;;AAUA,MAAe,2BAAA,OAAO,UAAiB;AACrC,UAAQ,IAAI,qDAAqD;AACjE,QAAM,WAAW,EAAE,OAAO,2BAA2B,MAAO,CAAA;AAE5D,QAAM,EAAE,OAAW,IAAA,MAAM,YAAY,CAAA;AAErC,MAAI,CAAC,QAAQ;AACL,UAAA,IAAI,MAAM,gBAAgB;AAAA,EAClC;AAEA,QAAM,gBAA+B;AAAA,IACnC,QAAQ,cAAc,EAAE,QAAQ;AAAA,IAChC,YAAY;AAAA,MACV,CAAC;AAAA,MACD,eAAe,MAAqC,KAAK,CAAC;AAAA,MAC1D,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,GAAG,mBAAmB,EAAE,OAAO,QAAgD;AAAA,MAC/E,GAAG,MAAM;AAAA,IACX;AAAA,EAAA;AAGK,SAAA,cAAc,OAAO,aAAa;AAC3C;"}