From 5da65e9209b311c83ead359a76de254d6f2cdaea Mon Sep 17 00:00:00 2001 From: Jason Kuhrt Date: Thu, 20 May 2021 17:36:53 -0400 Subject: [PATCH] fix: endent introduces unexpected newlines closes #50 --- package.json | 2 +- src/generator/helpers/JSDocTemplates.ts | 28 ++++++++-------- src/generator/models/declaration.ts | 32 +++++++++---------- src/generator/models/javascript.ts | 4 +-- src/helpers/prisma.ts | 8 ++--- src/lib/peerDepValidator.ts | 4 +-- tests/__helpers__/testers.ts | 8 ++--- tests/e2e/e2e.test.ts | 14 ++++---- tests/integration/json.test.ts | 4 +-- tests/lib/peerDepValidator.test.ts | 8 ++--- tests/unit/graphqlSchema/enum.test.ts | 8 ++--- tests/unit/graphqlSchema/json.test.ts | 4 +-- .../typescriptDeclarationFile/enum.test.ts | 6 ++-- .../typescriptDeclarationFile/enumDoc.test.ts | 6 ++-- yarn.lock | 29 +++-------------- 15 files changed, 73 insertions(+), 92 deletions(-) diff --git a/package.json b/package.json index 39238bbc8..4a087f2c4 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,6 @@ "dependencies": { "@prisma/generator-helper": "^2.22.1", "debug": "^4.3.1", - "endent": "^2.0.1", "fs-jetpack": "^4.1.0", "graphql-scalars": "^1.9.3", "kleur": "^4.1.4", @@ -96,6 +95,7 @@ "pluralize": "^8.0.0", "semver": "^7.3.5", "setset": "^0.0.7", + "ts-dedent": "^2.1.1", "tslib": "^2.2.0" }, "nodemonConfig": { diff --git a/src/generator/helpers/JSDocTemplates.ts b/src/generator/helpers/JSDocTemplates.ts index f19303a7a..d6f5bb831 100644 --- a/src/generator/helpers/JSDocTemplates.ts +++ b/src/generator/helpers/JSDocTemplates.ts @@ -1,6 +1,6 @@ import { DMMF } from '@prisma/client/runtime' -import endent from 'endent' import { upperFirst } from 'lodash' +import dedent from 'ts-dedent' type JSDoc = string @@ -15,7 +15,7 @@ type FieldModelParams = { export function jsDocForEnum(enum_: DMMF.DatamodelEnum): JSDoc { const enumDoc = enum_.documentation ? `* ${enum_.documentation}` : enumMissingDoc(enum_) - return endent` + return dedent` /** ${enumIntro(enum_)} * @@ -27,13 +27,13 @@ export function jsDocForEnum(enum_: DMMF.DatamodelEnum): JSDoc { } function enumIntro(enum_: DMMF.DatamodelEnum): string { - return endent` + return dedent` * Nexus \`enumType\` configuration based on the \`${enum_.name}\` enum in your Prisma schema. ` } function enumExample(enum_: DMMF.DatamodelEnum): string { - return endent` + return dedent` * @example * * import { enumType } from 'nexus' @@ -44,7 +44,7 @@ function enumExample(enum_: DMMF.DatamodelEnum): string { } function enumMissingDoc(enum_: DMMF.DatamodelEnum): string { - return endent` + return dedent` ${missingDocsIntro('enum')} * * \`\`\`prisma @@ -64,7 +64,7 @@ function enumMissingDoc(enum_: DMMF.DatamodelEnum): string { export function jsDocForModel(model: DMMF.Model): JSDoc { const modelDoc = model.documentation ? `* ${model.documentation}` : modelMissingDoc(model) - return endent` + return dedent` /** ${modelIntro(model)} * @@ -76,7 +76,7 @@ export function jsDocForModel(model: DMMF.Model): JSDoc { } function modelIntro(model: DMMF.Model): string { - return endent` + return dedent` * Nexus \`objectType\` related configuration based on the \`${model.name}\` model in your Prisma schema. ` } @@ -84,7 +84,7 @@ function modelIntro(model: DMMF.Model): string { function modelMissingDoc(model: DMMF.Model): string { // TODO once https://stackoverflow.com/questions/61893953/how-to-escape-symbol-in-jsdoc-for-vscode // is resolved then we can write better examples below like: id String @id - return endent` + return dedent` ${missingDocsIntro('model')} * * \`\`\`prisma @@ -99,7 +99,7 @@ function modelMissingDoc(model: DMMF.Model): string { } function modelExample(model: DMMF.Model): string { - return endent` + return dedent` * @example * * import { objectType } from 'nexus' @@ -121,7 +121,7 @@ function modelExample(model: DMMF.Model): string { export function jsDocForField({ field, model }: FieldModelParams): JSDoc { const fieldDocs = field.documentation ? `* ${field.documentation}` : fieldMissingDoc({ field, model }) - return endent` + return dedent` /** ${fieldIntro({ field, model })} * @@ -133,13 +133,13 @@ export function jsDocForField({ field, model }: FieldModelParams): JSDoc { } function fieldIntro({ model, field }: FieldModelParams): string { - return endent` + return dedent` * Nexus \`t.field\` related configuration based on the \`${model.name}.${field.name}\` field in your Prisma schema. ` } function fieldMissingDoc({ model, field }: FieldModelParams): string { - return endent` + return dedent` ${missingDocsIntro('model')} * \`\`\`prisma * model ${model.name} { @@ -153,7 +153,7 @@ function fieldMissingDoc({ model, field }: FieldModelParams): string { } function fieldExample({ model, field }: FieldModelParams): string { - return endent` + return dedent` * @example * * import { objectType } from 'nexus' @@ -174,7 +174,7 @@ function fieldExample({ model, field }: FieldModelParams): string { */ function missingDocsIntro(kind: 'model' | 'enum' | 'field'): string { - return endent` + return dedent` * ### ️⚠️ Missing Documentation for this ${upperFirst(kind)} * * Automatically ✨ enrich this JSDoc with information about your enum diff --git a/src/generator/models/declaration.ts b/src/generator/models/declaration.ts index f6cb01fcf..b23e26e0f 100644 --- a/src/generator/models/declaration.ts +++ b/src/generator/models/declaration.ts @@ -1,5 +1,5 @@ import { DMMF } from '@prisma/generator-helper' -import endent from 'endent' +import dedent from 'ts-dedent' import { LiteralUnion } from 'type-fest' import { StandardGraphQLScalarType, StandardgraphQLScalarTypes } from '../../helpers/graphql' import { PrismaScalarType } from '../../helpers/prisma' @@ -11,17 +11,17 @@ import { ModuleSpec } from '../types' export function createModuleSpec(dmmf: DMMF.Document, settings: Gentime.Settings): ModuleSpec { return { fileName: 'index.d.ts', - content: endent` - ${renderTypeScriptDeclarationForDocumentModels(dmmf, settings)} - `, + content: dedent` + ${renderTypeScriptDeclarationForDocumentModels(dmmf, settings)} + `, } } -const NO_ENUMS_DEFINED_COMMENT = endent` +const NO_ENUMS_DEFINED_COMMENT = dedent` // N/A –– You have not defined any models in your Prisma schema file. ` -const NO_MODELS_DEFINED_COMMENT = endent` +const NO_MODELS_DEFINED_COMMENT = dedent` // N/A –– You have not defined any enums in your Prisma schema file. ` @@ -32,7 +32,7 @@ export function renderTypeScriptDeclarationForDocumentModels( const models = dmmf.datamodel.models const enums = dmmf.datamodel.enums - return endent` + return dedent` import * as Nexus from 'nexus' import * as NexusCore from 'nexus/dist/core' @@ -88,7 +88,7 @@ export function renderTypeScriptDeclarationForDocumentModels( : models .map((model) => { const jsdoc = settings.data.docPropagation.JSDoc ? jsDocForModel(model) + '\n' : '' - return endent` + return dedent` ${jsdoc}export const ${model.name}: $Types.${model.name} ` }) @@ -110,7 +110,7 @@ export function renderTypeScriptDeclarationForDocumentModels( : enums .map((enum_) => { const jsdoc = settings.data.docPropagation.JSDoc ? jsDocForEnum(enum_) + '\n' : '' - return endent` + return dedent` ${jsdoc}export const ${enum_.name}: $Types.${enum_.name} ` }) @@ -124,7 +124,7 @@ function renderTypeScriptDeclarationForEnum(enum_: DMMF.DatamodelEnum, settings: const description = `${ enum_.documentation && settings.data.docPropagation.GraphQLDocs ? `'${enum_.documentation}'` : 'undefined' }` - return endent` + return dedent` ${jsdoc}interface ${enum_.name} { name: '${enum_.name}' description: ${description} @@ -138,7 +138,7 @@ function renderTypeScriptDeclarationForModel(model: DMMF.Model, settings: Gentim const description = `${ model.documentation && settings.data.docPropagation.GraphQLDocs ? `'${model.documentation}'` : 'undefined' }` - return endent` + return dedent` ${jsdoc}interface ${model.name} { $name: '${model.name}' $description: ${description} @@ -166,7 +166,7 @@ function renderTypeScriptDeclarationForField({ const description = `${ field.documentation && settings.data.docPropagation.GraphQLDocs ? `string` : `undefined` }` - return endent` + return dedent` ${jsdoc}${field.name}: { /** * The name of this field. @@ -195,19 +195,19 @@ function renderNexusType2(field: DMMF.Field, settings: Gentime.Settings): string const graphqlType = fieldTypeToGraphQLType(field, settings.data) if (field.isList && field.isRequired) { - return endent` + return dedent` NexusCore.ListDef<${graphqlType}> | NexusCore.NexusNonNullDef<${graphqlType}> ` } else if (field.isList && !field.isRequired) { - return endent` + return dedent` NexusCore.ListDef<${graphqlType}> | NexusCore.NexusNullDef<${graphqlType}> ` } else if (field.isRequired) { - return endent` + return dedent` NexusCore.NexusNonNullDef<'${graphqlType}'> ` } else { - return endent` + return dedent` NexusCore.NexusNullDef<'${graphqlType}'> ` } diff --git a/src/generator/models/javascript.ts b/src/generator/models/javascript.ts index 06ba3f824..11dc1e1df 100644 --- a/src/generator/models/javascript.ts +++ b/src/generator/models/javascript.ts @@ -1,8 +1,8 @@ import { DMMF } from '@prisma/client/runtime' -import endent from 'endent' import { chain, lowerFirst } from 'lodash' import * as Nexus from 'nexus' import { NexusEnumTypeConfig, NexusListDef, NexusNonNullDef, NexusNullDef } from 'nexus/dist/core' +import dedent from 'ts-dedent' import { MaybePromise, RecordUnknown, Resolver } from '../../helpers/utils' import { Gentime } from '../gentime/settingsSingleton' import { @@ -49,7 +49,7 @@ export type Settings = { export function createModuleSpec(gentimeSettings: Gentime.Settings): ModuleSpec { return { fileName: 'index.js', - content: endent` + content: dedent` const { getPrismaClientDmmf } = require('../helpers/prisma') const ModelsGenerator = require('../generator/models') const { Runtime } = require('../generator/runtime/settingsSingleton') diff --git a/src/helpers/prisma.ts b/src/helpers/prisma.ts index 0714c5279..730cadfc0 100644 --- a/src/helpers/prisma.ts +++ b/src/helpers/prisma.ts @@ -1,6 +1,6 @@ import { DMMF } from '@prisma/client/runtime' -import endent from 'endent' import ono from 'ono' +import dedent from 'ts-dedent' import { detectProjectPackageManager, renderRunBin } from '../lib/packageManager' import { d } from './debugNexusPrisma' import { GITHUB_NEW_DISCUSSION_LINK } from './errorMessages' @@ -17,14 +17,14 @@ export const getPrismaClientDmmf = (importId = '@prisma/client'): DMMF.Document maybeDmmf = require(importId).dmmf } catch (error) { // prettier-ignore - throw ono(error, endent` + throw ono(error, dedent` Failed to get Prisma Client DMMF. An error occured while trying to import it from ${kleur.yellow(importId)}. `) } if (maybeDmmf === undefined) { // prettier-ignore - throw new Error(endent` + throw new Error(dedent` Failed to get Prisma Client DMMF. It was imported from ${kleur.yellow(importId)} but was \`undefined\`. This usually means that you need to run Prisma Client generation. Please run ${renderRunBin(detectProjectPackageManager(), `prisma generate`)}. If that does not solve your problem, you can get community help by opening a discussion at ${kleur.yellow(GITHUB_NEW_DISCUSSION_LINK)}. @@ -37,7 +37,7 @@ export const getPrismaClientDmmf = (importId = '@prisma/client'): DMMF.Document const expectedFields = ['datamodel', 'schema', 'mappings'] as const if (expectedFields.find((fieldName) => dmmf[fieldName] && typeof dmmf[fieldName] !== 'object')) { - throw new Error(endent` + throw new Error(dedent` The DMMF imported from ${importId} appears to be invalid. Missing one/all of expected fields: `) } diff --git a/src/lib/peerDepValidator.ts b/src/lib/peerDepValidator.ts index 2c26a39d1..8fd7373c2 100644 --- a/src/lib/peerDepValidator.ts +++ b/src/lib/peerDepValidator.ts @@ -1,5 +1,5 @@ -import endent from 'endent' import * as Semver from 'semver' +import dedent from 'ts-dedent' import { PackageJson } from 'type-fest' import { d } from '../helpers/debugNexusPrisma' import { detectProjectPackageManager, renderAddDeps } from './packageManager' @@ -95,7 +95,7 @@ export function validatePeerDependencyRangeSatisfied({ kind: 'peer_dep_not_installed', message: renderError( // prettier-ignore - endent` + dedent` ${kleur.green(peerDependencyName)} is a peer dependency required by ${renderPackageJsonField(requireer,'name')}. But you have not installed it into this project yet. Please run \`${kleur.green(renderAddDeps(detectProjectPackageManager(),[peerDependencyName]))}\`. ` ), diff --git a/tests/__helpers__/testers.ts b/tests/__helpers__/testers.ts index 158e1ab43..0ab357c9b 100644 --- a/tests/__helpers__/testers.ts +++ b/tests/__helpers__/testers.ts @@ -1,5 +1,5 @@ import * as PrismaSDK from '@prisma/sdk' -import endent from 'endent' +import dedent from 'dedent' import execa from 'execa' import * as fs from 'fs-jetpack' import { DocumentNode, execute, printSchema } from 'graphql' @@ -120,7 +120,7 @@ export function createPrismaSchema({ clientOutput?: string nexusPrisma?: boolean }): string { - return endent` + return dedent` datasource db { provider = "${datasourceProvider.provider}" url = ${datasourceProvider.url} @@ -132,7 +132,7 @@ export function createPrismaSchema({ ${ nexusPrisma - ? endent` + ? dedent` generator nexusPrisma { provider = "nexus-prisma" } @@ -216,7 +216,7 @@ function prepareGraphQLSDLForSnapshot(sdl: string): string { function stripNexusQueryOk(sdl: string): string { return sdl.replace( - endent` + dedent` type Query { ok: Boolean! } diff --git a/tests/e2e/e2e.test.ts b/tests/e2e/e2e.test.ts index c670bf4a4..e794a3ecd 100644 --- a/tests/e2e/e2e.test.ts +++ b/tests/e2e/e2e.test.ts @@ -1,5 +1,5 @@ import debug from 'debug' -import endent from 'endent' +import dedent from 'dedent' import * as Execa from 'execa' import { gql } from 'graphql-request' import stripAnsi from 'strip-ansi' @@ -114,7 +114,7 @@ it('When bundled custom scalars are used the project type checks and generates e { filePath: `prisma/schema.prisma`, content: createPrismaSchema({ - content: endent` + content: dedent` model Foo { id String @id someJsonField Json @@ -139,7 +139,7 @@ it('When bundled custom scalars are used the project type checks and generates e }, { filePath: `prisma/seed.ts`, - content: endent/*ts*/ ` + content: dedent/*ts*/ ` import { PrismaClient } from '@prisma/client' main() @@ -168,7 +168,7 @@ it('When bundled custom scalars are used the project type checks and generates e }, { filePath: `src/schema.ts`, - content: endent/*ts*/ ` + content: dedent/*ts*/ ` require('dotenv').config() import { makeSchema, objectType, enumType, queryType } from 'nexus' @@ -227,7 +227,7 @@ it('When bundled custom scalars are used the project type checks and generates e }, { filePath: `src/context.ts`, - content: endent/*ts*/ ` + content: dedent/*ts*/ ` import { PrismaClient } from '@prisma/client' const prisma = new PrismaClient() @@ -248,7 +248,7 @@ it('When bundled custom scalars are used the project type checks and generates e }, { filePath: `src/server.ts`, - content: endent/*ts*/ ` + content: dedent/*ts*/ ` require('dotenv').config() import { ApolloServer } from 'apollo-server' @@ -267,7 +267,7 @@ it('When bundled custom scalars are used the project type checks and generates e }, { filePath: `.env`, - content: endent` + content: dedent` DB_URL="postgres://bcnfshogmxsukp:e31b6ddc8b9d85f8964b6671e4b578c58f0d13e15f637513207d44268eabc950@ec2-54-196-33-23.compute-1.amazonaws.com:5432/d17vadgam0dtao?schema=${ process.env.E2E_DB_SCHEMA ?? 'local' }" diff --git a/tests/integration/json.test.ts b/tests/integration/json.test.ts index da1fea878..60e422a36 100644 --- a/tests/integration/json.test.ts +++ b/tests/integration/json.test.ts @@ -1,4 +1,4 @@ -import endent from 'endent' +import dedent from 'dedent' import gql from 'graphql-tag' import { list, objectType, queryType } from 'nexus' import NexusPrismaScalars from '../../scalars' @@ -7,7 +7,7 @@ import { testIntegration } from '../__helpers__/testers' testIntegration({ skip: true, // integration test currently only works against SQLite which doesn't support JSON description: 'When a JSON field is defined in the Prisma schema it can be projected into the GraphQL API', - datasourceSchema: endent` + datasourceSchema: dedent` model Foo { id String @id json Json diff --git a/tests/lib/peerDepValidator.test.ts b/tests/lib/peerDepValidator.test.ts index 1456a6a95..b8ef53768 100644 --- a/tests/lib/peerDepValidator.test.ts +++ b/tests/lib/peerDepValidator.test.ts @@ -1,4 +1,4 @@ -import endent from 'endent' +import dedent from 'dedent' import * as Execa from 'execa' import { merge, omit } from 'lodash' import { PackageJson } from 'type-fest' @@ -25,7 +25,7 @@ beforeAll(() => { // setup alpha dep that has peer dep requirements - Execa.commandSync(`yarn add kleur semver tslib endent debug fs-jetpack --production`, { + Execa.commandSync(`yarn add kleur semver tslib dedent debug fs-jetpack --production`, { cwd: testProject.fs.cwd(), }) @@ -39,7 +39,7 @@ beforeAll(() => { testProject.fs.write( 'validatePeerDependencies.js', - endent` + dedent` const assert = require('assert') const { validatePeerDependencies } = require('${requireer.name}/dist/lib/peerDepValidator') @@ -56,7 +56,7 @@ beforeAll(() => { testProject.fs.write( 'enforceValidPeerDependencies.js', - endent` + dedent` const assert = require('assert') const { enforceValidPeerDependencies } = require('${requireer.name}/dist/lib/peerDepValidator') diff --git a/tests/unit/graphqlSchema/enum.test.ts b/tests/unit/graphqlSchema/enum.test.ts index 566db545e..086761384 100644 --- a/tests/unit/graphqlSchema/enum.test.ts +++ b/tests/unit/graphqlSchema/enum.test.ts @@ -1,10 +1,10 @@ -import endent from 'endent' +import dedent from 'dedent' import { enumType } from 'nexus' import { testGraphqlSchema } from '../../__helpers__/testers' testGraphqlSchema({ description: 'When an enum is defined in the Prisma schema it can be projected into the GraphQL API', - datasourceSchema: endent` + datasourceSchema: dedent` enum Foo { a } @@ -17,7 +17,7 @@ testGraphqlSchema({ testGraphqlSchema({ description: 'When an enum with multiple members is defined in the Prisma schema it and all its members can be projected into the GraphQL API', - datasourceSchema: endent` + datasourceSchema: dedent` enum Foo { a b @@ -32,7 +32,7 @@ testGraphqlSchema({ testGraphqlSchema({ description: 'When an enum is defined with documentation in the Prisma schema it can be projected into the GraphQL API with that documentation', - datasourceSchema: endent` + datasourceSchema: dedent` /// Some documentation enum Foo { a diff --git a/tests/unit/graphqlSchema/json.test.ts b/tests/unit/graphqlSchema/json.test.ts index 820a6e345..24fd8b2e3 100644 --- a/tests/unit/graphqlSchema/json.test.ts +++ b/tests/unit/graphqlSchema/json.test.ts @@ -1,11 +1,11 @@ -import endent from 'endent' +import dedent from 'dedent' import { objectType } from 'nexus' import NexusPrismaScalars from '../../../scalars' import { testGraphqlSchema } from '../../__helpers__/testers' testGraphqlSchema({ description: 'When a JSON field is defined in the Prisma schema it can be projected into the GraphQL API', - datasourceSchema: endent` + datasourceSchema: dedent` model Foo { id String @id json Json diff --git a/tests/unit/typescriptDeclarationFile/enum.test.ts b/tests/unit/typescriptDeclarationFile/enum.test.ts index e2a58a9f3..c3a2092a9 100644 --- a/tests/unit/typescriptDeclarationFile/enum.test.ts +++ b/tests/unit/typescriptDeclarationFile/enum.test.ts @@ -1,9 +1,9 @@ -import endent from 'endent' +import dedent from 'dedent' import { testGeneratedModules } from '../../__helpers__/testers' testGeneratedModules({ description: 'An enum maps to a Nexus enum type definition', - databaseSchema: endent` + databaseSchema: dedent` enum Foo { a } @@ -12,7 +12,7 @@ testGeneratedModules({ testGeneratedModules({ description: 'When prisma enum has documentation then it is used for JSDoc and GraphQL enum description', - databaseSchema: endent` + databaseSchema: dedent` /// Some documentation enum Foo { a diff --git a/tests/unit/typescriptDeclarationFile/enumDoc.test.ts b/tests/unit/typescriptDeclarationFile/enumDoc.test.ts index 6df077907..fd5376e52 100644 --- a/tests/unit/typescriptDeclarationFile/enumDoc.test.ts +++ b/tests/unit/typescriptDeclarationFile/enumDoc.test.ts @@ -1,10 +1,10 @@ -import endent from 'endent' +import dedent from 'dedent' import { testGeneratedModules } from '../../__helpers__/testers' testGeneratedModules({ description: 'When an enum has no documentation comment, then it gets the default JSDoc and its description field is null', - databaseSchema: endent` + databaseSchema: dedent` enum Foo { a } @@ -14,7 +14,7 @@ testGeneratedModules({ testGeneratedModules({ description: 'When an enum has a documentation comment, then it is used for the JSDoc of that enum and its $description field', - databaseSchema: endent` + databaseSchema: dedent` /// Some documentation enum Foo { a diff --git a/yarn.lock b/yarn.lock index 8a4266561..4ba9c07f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2111,11 +2111,6 @@ decompress-response@^4.2.0: dependencies: mimic-response "^2.0.0" -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= - deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -2303,15 +2298,6 @@ end-of-stream@^1.1.0, end-of-stream@^1.4.1: dependencies: once "^1.4.0" -endent@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/endent/-/endent-2.0.1.tgz#fb18383a3f37ae3213a5d9f6c4a880d1061eb4c5" - integrity sha512-mADztvcC+vCk4XEZaCz6xIPO2NHQuprv5CAEjuVAu6aZwqAj7nVNlMyl1goPFYqCCpS2OJV9jwpumJLkotZrNw== - dependencies: - dedent "^0.7.0" - fast-json-parse "^1.0.3" - objectorarray "^1.0.4" - enquirer@^2.3.5: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" @@ -2645,11 +2631,6 @@ fast-glob@^3.1.1: micromatch "^4.0.2" picomatch "^2.2.1" -fast-json-parse@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d" - integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== - fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" @@ -4639,11 +4620,6 @@ object.pick@^1.2.0, object.pick@^1.3.0: dependencies: isobject "^3.0.1" -objectorarray@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/objectorarray/-/objectorarray-1.0.4.tgz#d69b2f0ff7dc2701903d308bb85882f4ddb49483" - integrity sha512-91k8bjcldstRz1bG6zJo8lWD7c6QXcB4nTDUqiEvIL1xAsLoZlOOZZG+nd6YPz+V7zY1580J4Xxh1vZtyv4i/w== - once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -5959,6 +5935,11 @@ tr46@^2.0.2: dependencies: punycode "^2.1.1" +ts-dedent@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.1.1.tgz#6dd56870bb5493895171334fa5d7e929107e5bbc" + integrity sha512-riHuwnzAUCfdIeTBNUq7+Yj+ANnrMXo/7+Z74dIdudS7ys2k8aSGMzpJRMFDF7CLwUTbtvi1ZZff/Wl+XxmqIA== + ts-jest@26.5.6: version "26.5.6" resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.6.tgz#c32e0746425274e1dfe333f43cd3c800e014ec35"