diff --git a/package.json b/package.json index 9fd1ccf..00e1672 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,9 @@ "dependencies": { "@graphql-codegen/plugin-helpers": "^1.13.1", "casual": "^1.6.2", + "indefinite": "^2.3.2", "pascal-case": "^3.1.1", + "sentence-case": "^3.0.3", "upper-case": "^2.0.1" }, "peerDependencies": { diff --git a/src/index.ts b/src/index.ts index 5dc9a0c..4de3d04 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,8 +1,10 @@ -import { printSchema, parse, visit, ASTKindToNode, NamedTypeNode, TypeNode, VisitFn } from 'graphql'; +import { ASTKindToNode, NamedTypeNode, parse, printSchema, TypeNode, visit, VisitFn } from 'graphql'; import casual from 'casual'; import { PluginFunction } from '@graphql-codegen/plugin-helpers'; import { pascalCase } from 'pascal-case'; import { upperCase } from 'upper-case'; +import { sentenceCase } from 'sentence-case'; +import a from 'indefinite'; type NamingConvention = 'upper-case#upperCase' | 'pascal-case#pascalCase' | 'keep'; @@ -20,12 +22,12 @@ const createNameConverter = (convention: NamingConvention) => (value: string) => } }; -const toMockName = (name: string, prefix?: string) => { +const toMockName = (typedName: string, casedName: string, prefix?: string) => { if (prefix) { - return `${prefix}${name}`; + return `${prefix}${casedName}`; } - const isVowel = name.match(/^[AEIO]/); - return isVowel ? `an${name}` : `a${name}`; + const firstWord = sentenceCase(typedName).split(' ')[0]; + return `${a(firstWord, { articleOnly: true })}${casedName}`; }; const updateTextCase = (str: string, enumValuesConvention: NamingConvention) => { @@ -130,7 +132,7 @@ const getNamedType = ( throw `foundType is unknown: ${foundType.name}: ${foundType.type}`; } } - return `${toMockName(name, prefix)}()`; + return `${toMockName(name, name, prefix)}()`; } } }; @@ -194,7 +196,7 @@ const getMockString = ( const casedName = createNameConverter(typenamesConvention)(typeName); const typename = addTypename ? `\n __typename: '${casedName}',` : ''; return ` -export const ${toMockName(casedName, prefix)} = (overrides?: Partial<${casedName}>): ${casedName} => { +export const ${toMockName(typeName, casedName, prefix)} = (overrides?: Partial<${casedName}>): ${casedName} => { return {${typename} ${fields} }; diff --git a/tests/__snapshots__/typescript-mock-data.spec.ts.snap b/tests/__snapshots__/typescript-mock-data.spec.ts.snap index 696a39d..db7b643 100644 --- a/tests/__snapshots__/typescript-mock-data.spec.ts.snap +++ b/tests/__snapshots__/typescript-mock-data.spec.ts.snap @@ -52,7 +52,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -89,7 +89,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -126,7 +126,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -165,7 +165,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -202,7 +202,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -239,7 +239,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -276,7 +276,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -313,7 +313,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -350,7 +350,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -387,7 +387,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -424,7 +424,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -463,7 +463,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -501,7 +501,7 @@ export const anAvatar = (overrides?: Partial): Avatar => { }; }; -export const aUpdateUserInput = (overrides?: Partial): UpdateUserInput => { +export const anUpdateUserInput = (overrides?: Partial): UpdateUserInput => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', @@ -538,7 +538,7 @@ export const anAVATAR = (overrides?: Partial): AVATAR => { }; }; -export const aUPDATEUSERINPUT = (overrides?: Partial): UPDATEUSERINPUT => { +export const anUPDATEUSERINPUT = (overrides?: Partial): UPDATEUSERINPUT => { return { id: overrides && overrides.hasOwnProperty('id') ? overrides.id! : '1d6a9360-c92b-4660-8e5f-04155047bddc', login: overrides && overrides.hasOwnProperty('login') ? overrides.login! : 'qui', diff --git a/yarn.lock b/yarn.lock index efa0444..ad796e0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,10 +7,10 @@ resolved "https://registry.yarnpkg.com/@auto-it/bot-list/-/bot-list-9.25.0.tgz#1147225d4763282a98abf4cbbc0e324eee4b038d" integrity sha512-XUgJir4roCPdUUX/5wo26dyj1eFZbYKIjP1SuVJDskZ4x3HOwhggBK5WBKkJFv5rGrWnAtVfZpOju4Qzez7GgQ== -"@auto-it/bot-list@^9.39.0": - version "9.39.0" - resolved "https://registry.yarnpkg.com/@auto-it/bot-list/-/bot-list-9.39.0.tgz#cdfca23b47918ab988f99d08d1214d3754cd1ea5" - integrity sha512-MEEUmqi0tIR6vkvErpgEbzCKK9BHVYd4GGe9vKNxH8BffhZi2br9EOCMZTb494SdTpP8hV8e36jCMZdx1g/gZA== +"@auto-it/bot-list@^9.46.0": + version "9.46.0" + resolved "https://registry.yarnpkg.com/@auto-it/bot-list/-/bot-list-9.46.0.tgz#eef1fe0ae08673816efd3470a284c9ce7c4249c5" + integrity sha512-8qoTX5T2KCnpMzPSz9lkASmWhVI0V49UcqY8TW9mhQCnwApDi9Uy4OZ9gSApf8I/+FR3aNwmRPiZjkvLXy7Avw== "@auto-it/conventional-commits@^9.25.0": version "9.25.0" @@ -61,17 +61,17 @@ typescript-memoize "^1.0.0-alpha.3" url-join "^4.0.0" -"@auto-it/core@^9.39.0": - version "9.39.0" - resolved "https://registry.yarnpkg.com/@auto-it/core/-/core-9.39.0.tgz#41c5f4e91a556b07fe73710b7d5be3a1e65a3dde" - integrity sha512-l8dGrN58cWob6MHnnLF+iT0HYSDVJS2ZwkNsidH0NtgAQUNoU22bDpxSXxqrXCwZ9epUwI9E9BOTx8nXkUXOAw== +"@auto-it/core@^9.46.0": + version "9.46.0" + resolved "https://registry.yarnpkg.com/@auto-it/core/-/core-9.46.0.tgz#2ef366011e17e04fe424d49e0bafe6a9da3261a0" + integrity sha512-bEhFLHjilCXOlQ9zmrqZ2h+ZBgr2GKbBMViLRb2TQhDeWXOjAHJPcGKk1w9rPRDzfOkoXPKBahKQdljqzGErXA== dependencies: - "@auto-it/bot-list" "^9.39.0" + "@auto-it/bot-list" "^9.46.0" "@octokit/graphql" "^4.4.0" "@octokit/plugin-enterprise-compatibility" "^1.2.2" "@octokit/plugin-retry" "^3.0.1" "@octokit/plugin-throttling" "^3.2.0" - "@octokit/rest" "^17.9.0" + "@octokit/rest" "^18.0.0" await-to-js "^2.1.1" chalk "^4.0.0" cosmiconfig "6.0.0" @@ -91,22 +91,23 @@ lodash.chunk "^4.2.0" log-symbols "^4.0.0" node-fetch "2.6.0" + parse-author "^2.0.0" parse-github-url "1.0.2" semver "^7.0.0" signale "^1.4.0" tapable "^2.0.0-beta.2" terminal-link "^2.1.1" tinycolor2 "^1.4.1" - tslib "1.11.1" + tslib "2.0.0" typescript-memoize "^1.0.0-alpha.3" url-join "^4.0.0" -"@auto-it/npm@^9.39.0": - version "9.39.0" - resolved "https://registry.yarnpkg.com/@auto-it/npm/-/npm-9.39.0.tgz#165069c5d5942aaf126e30ce4f7e3fffca122b7f" - integrity sha512-ktjspMTnSvZThYB9m36uS4+hAkBm8FdvIQbaiCUypDduzUnWtrwnV2ZhLR3KG3GyFkCgpAzYnxKY6OugQJ/U1w== +"@auto-it/npm@^9.46.0": + version "9.46.0" + resolved "https://registry.yarnpkg.com/@auto-it/npm/-/npm-9.46.0.tgz#aa2b191e12e4caae363563343b29e2d1363fb977" + integrity sha512-8YvVDOlRLr+rff9YNb/6aJ6wGjd152mnB1icUSG/FZyf5LsdKIAGm1R2pK6M5MDDi6xD8XVT/dL5P4tLwbQJUw== dependencies: - "@auto-it/core" "^9.39.0" + "@auto-it/core" "^9.46.0" await-to-js "^2.1.1" env-ci "^5.0.1" fp-ts "^2.5.3" @@ -116,21 +117,21 @@ parse-github-url "1.0.2" registry-url "^5.1.0" semver "^7.0.0" - tslib "1.11.1" + tslib "2.0.0" typescript-memoize "^1.0.0-alpha.3" url-join "^4.0.0" user-home "^2.0.0" -"@auto-it/released@^9.39.0": - version "9.39.0" - resolved "https://registry.yarnpkg.com/@auto-it/released/-/released-9.39.0.tgz#d5502191bc7a72cee4b3fca25f37f415dec19238" - integrity sha512-5nHQ76dJV8SS1rS/Ro7R4ZVjLqwaGS/Fp2vWgd+XbgR2MGNgQwW0PsaaHHFzbxqt2Pen1EeFwB0gPVUgsH1Wtg== +"@auto-it/released@^9.46.0": + version "9.46.0" + resolved "https://registry.yarnpkg.com/@auto-it/released/-/released-9.46.0.tgz#2088a797b280528d2289133f1c5bbdc032f69b14" + integrity sha512-sQp+G/TR92xNWo4ILfD6CRVOA4uF1MjbqPTdTTFTlkDUlNZgG6fi3CbfxT0ugp5nrg+lAKLwAhoYxex8wx3daA== dependencies: - "@auto-it/core" "^9.39.0" + "@auto-it/core" "^9.46.0" deepmerge "^4.0.0" fp-ts "^2.5.3" io-ts "^2.1.2" - tslib "1.11.1" + tslib "2.0.0" "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": version "7.8.3" @@ -731,15 +732,15 @@ before-after-hook "^2.1.0" universal-user-agent "^5.0.0" -"@octokit/core@^2.4.3": - version "2.5.3" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-2.5.3.tgz#dd754e6f5ad9b15631e9b276ae4f00ac2ea2cf9b" - integrity sha512-23AHK9xBW0v79Ck8h5U+5iA4MW7aosqv+Yr6uZXolVGNzzHwryNH5wM386/6+etiKUTwLFZTqyMU9oQpIBZcFA== +"@octokit/core@^3.0.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.1.0.tgz#9c3c9b23f7504668cfa057f143ccbf0c645a0ac9" + integrity sha512-yPyQSmxIXLieEIRikk2w8AEtWkFdfG/LXcw1KvEtK3iP0ENZLW/WYQmdzOKqfSaLhooz4CJ9D+WY79C8ZliACw== dependencies: "@octokit/auth-token" "^2.4.0" "@octokit/graphql" "^4.3.1" "@octokit/request" "^5.4.0" - "@octokit/types" "^4.0.1" + "@octokit/types" "^5.0.0" before-after-hook "^2.1.0" universal-user-agent "^5.0.0" @@ -822,12 +823,12 @@ "@octokit/types" "^2.0.1" deprecation "^2.3.1" -"@octokit/plugin-rest-endpoint-methods@3.15.0": - version "3.15.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-3.15.0.tgz#2f01bf16a1fd2fb8ec8915aebc4d4b5b348ea8d6" - integrity sha512-cx4JScYv3rA7pR9gCd8SBdf8LtkIYsN6Jtl0O0pG1IrKaj/HVz1b27zFaS5gn/MI8UwdDtUuHiN3NMtkrIWoqA== +"@octokit/plugin-rest-endpoint-methods@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.0.0.tgz#b02a2006dda8e908c3f8ab381dd5475ef5a810a8" + integrity sha512-emS6gysz4E9BNi9IrCl7Pm4kR+Az3MmVB0/DoDCmF4U48NbYG3weKyDlgkrz6Jbl4Mu4nDx8YWZwC4HjoTdcCA== dependencies: - "@octokit/types" "^4.1.6" + "@octokit/types" "^5.0.0" deprecation "^2.3.1" "@octokit/plugin-retry@3.0.1": @@ -922,15 +923,15 @@ once "^1.4.0" universal-user-agent "^4.0.0" -"@octokit/rest@^17.9.0": - version "17.10.0" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-17.10.0.tgz#40d94e8abb98741aa99d0dac39a974cd257f7865" - integrity sha512-TT0rsmi/IhYDy37+roEjawvpUfXxXVLWjWfcoOByJ8eQka1N21ka7BqVCi+rWco4x7sSffXcw2QfGmmNSUb7Tw== +"@octokit/rest@^18.0.0": + version "18.0.0" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.0.0.tgz#7f401d9ce13530ad743dfd519ae62ce49bcc0358" + integrity sha512-4G/a42lry9NFGuuECnua1R1eoKkdBYJap97jYbWDNYBOUboWcM75GJ1VIcfvwDV/pW0lMPs7CEmhHoVrSV5shg== dependencies: - "@octokit/core" "^2.4.3" + "@octokit/core" "^3.0.0" "@octokit/plugin-paginate-rest" "^2.2.0" "@octokit/plugin-request-log" "^1.0.0" - "@octokit/plugin-rest-endpoint-methods" "3.15.0" + "@octokit/plugin-rest-endpoint-methods" "4.0.0" "@octokit/types@^2.0.0", "@octokit/types@^2.0.1": version "2.5.1" @@ -939,13 +940,20 @@ dependencies: "@types/node" ">= 8" -"@octokit/types@^4.0.1", "@octokit/types@^4.1.6": +"@octokit/types@^4.0.1": version "4.1.7" resolved "https://registry.yarnpkg.com/@octokit/types/-/types-4.1.7.tgz#efb1c26b6e6201b7d6e56b9a17e73d0541401567" integrity sha512-2ydXNFLsoJbm5D3zvAkbK0y9JaS4eBZ4sk0DJcOLH1sY+p3H861ysARJLLQQtztN5y5vvxKS12JRUwoLkEO4Ag== dependencies: "@types/node" ">= 8" +"@octokit/types@^5.0.0": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-5.0.1.tgz#5459e9a5e9df8565dcc62c17a34491904d71971e" + integrity sha512-GorvORVwp244fGKEt3cgt/P+M0MGy4xEDbckw+K5ojEezxyMDgCaYPKVct+/eWQfZXOT7uq0xRpmrl/+hliabA== + dependencies: + "@types/node" ">= 8" + "@samverschueren/stream-to-observable@^0.3.0": version "0.3.0" resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" @@ -1435,22 +1443,22 @@ author-regex@^1.0.0: resolved "https://registry.yarnpkg.com/author-regex/-/author-regex-1.0.0.tgz#d08885be6b9bbf9439fe087c76287245f0a81450" integrity sha1-0IiFvmubv5Q5/gh8dihyRfCoFFA= -auto@^9.26.0: - version "9.39.0" - resolved "https://registry.yarnpkg.com/auto/-/auto-9.39.0.tgz#1cf174541ea1d3a7432d315fed521fd4d15154c1" - integrity sha512-ebJXsceHcZKM3h2erTxkMnGjnypruS0xHLJEHi9GIB8+yVe/6Iwz/qeNcUelemzmJzenqv0wH+fJE2kikuQVqw== +auto@^9.46.0: + version "9.46.0" + resolved "https://registry.yarnpkg.com/auto/-/auto-9.46.0.tgz#6018864d74b9e6dcb5c37e6a31cae0d1d7d909b2" + integrity sha512-LnTbvRBZA0IxqBYVShtxgxAFWq9oVCq+h2PLYjZtpOXBJn+5LNMxNjEOv918efacRWgVE/KAaAauuIhWQagsqw== dependencies: - "@auto-it/core" "^9.39.0" - "@auto-it/npm" "^9.39.0" - "@auto-it/released" "^9.39.0" + "@auto-it/core" "^9.46.0" + "@auto-it/npm" "^9.46.0" + "@auto-it/released" "^9.46.0" await-to-js "^2.1.1" chalk "^4.0.0" - command-line-application "^0.9.3" + command-line-application "^0.10.1" endent "^2.0.1" module-alias "^2.2.2" signale "^1.4.0" terminal-link "^2.1.1" - tslib "1.11.1" + tslib "2.0.0" await-to-js@^2.1.1: version "2.1.1" @@ -1813,10 +1821,10 @@ combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -command-line-application@^0.9.3: - version "0.9.6" - resolved "https://registry.yarnpkg.com/command-line-application/-/command-line-application-0.9.6.tgz#03da3db29a0dbee1af601f03198a2f2425d67803" - integrity sha512-7wc7YX7s/hqZWKp4r37IBlW/Bhh92HWeQW2VV++Mt9x35AKFntz9f7A94Zz+AsImHZmRGHd8iNW5m0jUd4GQpg== +command-line-application@^0.10.1: + version "0.10.1" + resolved "https://registry.yarnpkg.com/command-line-application/-/command-line-application-0.10.1.tgz#9ee0db7e41fe69f532eef0747e9ae958c0d348ae" + integrity sha512-PWZ4nRkz09MbBRocqEe/Fil3RjTaMNqw0didl1n/i3flDcw/vecVfvsw3r+ZHhGs4BOuW7sk3cEYSdfM3Wv5/Q== dependencies: "@types/command-line-args" "^5.0.0" "@types/command-line-usage" "^5.0.1" @@ -3174,6 +3182,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indefinite@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/indefinite/-/indefinite-2.3.2.tgz#e3c5163ae60c2b810b3b5ffc57e8d57c52859d55" + integrity sha512-+RqxIRGrhBOfV8KONFaAuNvx1pg6Qh+Ge9w+15TI2LRfVu3aSf5bj9w3OU2GT3k8H13/7Q+C9+pek0jjYby3ZA== + indent-string@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" @@ -5330,6 +5343,15 @@ semver@^7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.1.3.tgz#e4345ce73071c53f336445cfc19efb1c311df2a6" integrity sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA== +sentence-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.3.tgz#47576e4adff7abf42c63c815b0543c9d2f85a930" + integrity sha512-ZPr4dgTcNkEfcGOMFQyDdJrTU9uQO1nb1cjf+nuzb6FxgMDgKddZOM29qEsB7jvsZSMruLRcL2KfM4ypKpa0LA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + upper-case-first "^2.0.1" + set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -5931,6 +5953,11 @@ tslib@1.11.1, tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== +tslib@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.0.tgz#18d13fc2dce04051e20f074cc8387fd8089ce4f3" + integrity sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g== + tslib@^1.11.1: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" @@ -6038,6 +6065,13 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" +upper-case-first@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.1.tgz#32ab436747d891cc20ab1e43d601cb4d0a7fbf4a" + integrity sha512-105J8XqQ+9RxW3l9gHZtgve5oaiR9TIwvmZAMAIZWRHe00T21cdvewKORTlOJf/zXW6VukuTshM+HXZNWz7N5w== + dependencies: + tslib "^1.10.0" + upper-case@2.0.1, upper-case@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.1.tgz#6214d05e235dc817822464ccbae85822b3d8665f"