How to use the @prisma/sdk.getDMMF function in @prisma/sdk

To help you get started, we’ve selected a few @prisma/sdk examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github prisma / prisma2 / cli / introspection / src / commands / Introspect.ts View on Github external
const datasourceString = printDatasources([
      {
        config: {},
        connectorType,
        name: 'db',
        url,
      },
    ])

    introspectionSchema = datasourceString + '\n' + introspectionSchema

    debug('introspectionSchema:')
    debug(introspectionSchema)

    try {
      const dmmf = await getDMMF({ datamodel: introspectionSchema })

      // add the datasource itself to the schema in case no schema.prisma exists yet
      const datasources: DataSource[] = [
        {
          name: 'db',
          config: {},
          connectorType,
          url: {
            value: url,
            fromEnvVar: null,
          },
        },
      ]
      const schema = await dmmfToDml({
        config: config || {
          datasources,
github prisma / prisma2 / cli / introspection / src / prompt / utils / replaceDatasource.ts View on Github external
export async function replaceGenerator(datamodel: string, generator: GeneratorConfig): Promise {
  const [dmmf, config] = await Promise.all([getDMMF({ datamodel }), getConfig({ datamodel })])

  config.generators = [generator]

  return dmmfToDml({
    config,
    dmmf: dmmf.datamodel,
  })
}
github prisma / prisma2 / cli / introspection / src / prompt / utils / replaceDatasource.ts View on Github external
export async function replaceDatasource(datamodel: string, datasource: DataSource): Promise {
  const [dmmf, config] = await Promise.all([getDMMF({ datamodel }), getConfig({ datamodel })])

  config.datasources = [datasource]

  return dmmfToDml({
    config,
    dmmf: dmmf.datamodel,
  })
}
github prisma / photonjs / packages / photon / src / utils / generateInFolder.ts View on Github external
useLocalRuntime = false,
  transpile = true,
}: GenerateInFolderOptions): Promise {
  const before = performance.now()
  if (!projectDir) {
    throw new Error(
      `Project dir missing. Usage: ts-node examples/generate.ts examples/accounts`,
    )
  }
  if (!fs.existsSync(projectDir)) {
    throw new Error(`Path ${projectDir} does not exist`)
  }
  const schemaPath = getSchemaPath(projectDir)
  const datamodel = fs.readFileSync(schemaPath, 'utf-8')

  const dmmf = await getDMMF({ datamodel })
  const config = await getConfig({ datamodel })

  const outputDir = path.join(projectDir, 'node_modules/@prisma/photon')
  await getPackedPackage('@prisma/photon', outputDir)

  const platform = await getPlatform()

  await generateClient({
    binaryPaths: {
      queryEngine: {
        [platform]: path.join(
          __dirname,
          `../../query-engine-${platform}${
            platform === 'windows' ? '.exe' : ''
          }`,
        ),
github prisma / photonjs / packages / photon / src / runtime / getDMMF.ts View on Github external
export async function getDMMF(
  options: GetDMMFOptions,
): Promise {
  const dmmf = await getRawDMMF(options)
  return getPhotonDMMF(dmmf)
}