generator-langium
Advanced tools
Comparing version 1.0.0 to 1.1.0
@@ -6,2 +6,3 @@ /****************************************************************************** | ||
******************************************************************************/ | ||
/// <reference types="node" /> | ||
import Generator from 'yeoman-generator'; | ||
@@ -14,4 +15,8 @@ declare class LangiumGenerator extends Generator { | ||
install(): void; | ||
end(): Promise<void>; | ||
_extensionPath(...path: string[]): string; | ||
_replaceTemplateWords(fileExtensionGlob: string, languageName: string, languageId: string, content: Buffer): string; | ||
_replaceTemplateNames(languageId: string, path: string): string; | ||
} | ||
export = LangiumGenerator; | ||
//# sourceMappingURL=index.d.ts.map |
@@ -14,12 +14,12 @@ "use strict"; | ||
const path_1 = __importDefault(require("path")); | ||
const which_1 = __importDefault(require("which")); | ||
const TEMPLATE_DIR = '../langium-template'; | ||
const USER_DIR = '.'; | ||
const OPEN = '<%= '; | ||
const CLOSE = ' %>'; | ||
const EXTENSION_NAME = 'extension-name'; | ||
const RAW_LANGUAGE_NAME = 'RawLanguageName'; | ||
const FILE_EXTENSION = 'file-extension'; | ||
const FILE_EXTENSION_GLOB = 'file-glob-extension'; | ||
const LANGUAGE_NAME = 'LanguageName'; | ||
const LANGUAGE_ID = 'language-id'; | ||
const EXTENSION_NAME = /<%= extension-name %>/g; | ||
const RAW_LANGUAGE_NAME = /<%= RawLanguageName %>/g; | ||
const FILE_EXTENSION = /<%= file-extension %>/g; | ||
const FILE_EXTENSION_GLOB = /<%= file-glob-extension %>/g; | ||
const LANGUAGE_NAME = /<%= LanguageName %>/g; | ||
const LANGUAGE_ID = /<%= language-id %>/g; | ||
const LANGUAGE_PATH_ID = /language-id/g; | ||
function printLogo(log) { | ||
@@ -73,5 +73,5 @@ log('\u001b[36m┌─────┐ ─┐'); | ||
writing() { | ||
const fileExtensions = [...new Set(this.answers.fileExtensions.split(',').map(ext => { | ||
return ext.trim().replace('.', ''); | ||
}))]; | ||
const fileExtensions = Array.from(new Set(this.answers.fileExtensions | ||
.split(',') | ||
.map(ext => ext.replace(/\./g, '').trim()))); | ||
this.answers.fileExtensions = `[${fileExtensions.map(ext => `".${ext}"`).join(', ')}]`; | ||
@@ -83,20 +83,11 @@ const fileExtensionGlob = fileExtensions.length > 1 ? `{${fileExtensions.join(',')}}` : fileExtensions[0]; | ||
this.sourceRoot(path_1.default.join(__dirname, TEMPLATE_DIR)); | ||
['.', '.vscode', '.eslintrc.json', '.vscodeignore'].forEach((path) => { | ||
const replaceTemplateWords = (answers, content) => [ | ||
[EXTENSION_NAME, this.answers.extensionName], | ||
[RAW_LANGUAGE_NAME, this.answers.rawLanguageName], | ||
[FILE_EXTENSION, this.answers.fileExtensions], | ||
[FILE_EXTENSION_GLOB, fileExtensionGlob], | ||
[LANGUAGE_NAME, languageName], | ||
[LANGUAGE_ID, languageId], | ||
].reduce((acc, [templateWord, userAnswer]) => acc.replace(new RegExp(`${OPEN}${templateWord}${CLOSE}`, 'g'), userAnswer), content.toString()); | ||
const replaceTemplateNames = (answers, path) => path.replace(new RegExp(LANGUAGE_ID, 'g'), languageId); | ||
this.fs.copy(this.templatePath(path), this.destinationPath(USER_DIR, this.answers.extensionName, path), { | ||
process: (content) => replaceTemplateWords(this.answers, content), | ||
processDestinationPath: (path) => replaceTemplateNames(this.answers, path), | ||
for (const path of ['.', '.vscode', '.eslintrc.json', '.vscodeignore']) { | ||
this.fs.copy(this.templatePath(path), this._extensionPath(path), { | ||
process: content => this._replaceTemplateWords(fileExtensionGlob, languageName, languageId, content), | ||
processDestinationPath: path => this._replaceTemplateNames(languageId, path), | ||
}); | ||
}); | ||
} | ||
} | ||
install() { | ||
const extensionPath = this.destinationPath(USER_DIR, this.answers.extensionName); | ||
const extensionPath = this._extensionPath(); | ||
const opts = { cwd: extensionPath }; | ||
@@ -107,4 +98,42 @@ this.spawnCommandSync('npm', ['install'], opts); | ||
} | ||
async end() { | ||
const code = await (0, which_1.default)('code').catch(() => undefined); | ||
if (code) { | ||
const answer = await this.prompt({ | ||
type: 'list', | ||
name: 'openWith', | ||
message: 'Do you want to open the new folder with Visual Studio Code?', | ||
choices: [ | ||
{ | ||
name: 'Open with `code`', | ||
value: code | ||
}, | ||
{ | ||
name: 'Skip', | ||
value: false | ||
} | ||
] | ||
}); | ||
if (answer === null || answer === void 0 ? void 0 : answer.openWith) { | ||
this.spawnCommand(answer.openWith, [this._extensionPath()]); | ||
} | ||
} | ||
} | ||
_extensionPath(...path) { | ||
return this.destinationPath(USER_DIR, this.answers.extensionName, ...path); | ||
} | ||
_replaceTemplateWords(fileExtensionGlob, languageName, languageId, content) { | ||
return content.toString() | ||
.replace(EXTENSION_NAME, this.answers.extensionName) | ||
.replace(RAW_LANGUAGE_NAME, this.answers.rawLanguageName) | ||
.replace(FILE_EXTENSION, this.answers.fileExtensions) | ||
.replace(FILE_EXTENSION_GLOB, fileExtensionGlob) | ||
.replace(LANGUAGE_NAME, languageName) | ||
.replace(LANGUAGE_ID, languageId); | ||
} | ||
_replaceTemplateNames(languageId, path) { | ||
return path.replace(LANGUAGE_PATH_ID, languageId); | ||
} | ||
} | ||
module.exports = LangiumGenerator; | ||
//# sourceMappingURL=index.js.map |
@@ -0,0 +0,0 @@ { |
@@ -0,0 +0,0 @@ { |
@@ -0,0 +0,0 @@ // A launch configuration that launches the extension inside a new window |
@@ -0,0 +0,0 @@ { |
@@ -0,0 +0,0 @@ # Welcome to your Langium VS Code Extension |
@@ -0,0 +0,0 @@ { |
@@ -7,3 +7,3 @@ { | ||
"engines": { | ||
"vscode": "^1.56.0" | ||
"vscode": "^1.67.0" | ||
}, | ||
@@ -47,19 +47,19 @@ "categories": [ | ||
"dependencies": { | ||
"chevrotain": "^10.4.1", | ||
"chalk": "^4.1.2", | ||
"commander": "^8.0.0", | ||
"langium": "~1.0.0", | ||
"vscode-languageclient": "^8.0.2", | ||
"vscode-languageserver": "^8.0.2", | ||
"vscode-uri": "^3.0.2" | ||
"chevrotain": "~10.4.2", | ||
"chalk": "~4.1.2", | ||
"commander": "~10.0.0", | ||
"langium": "~1.1.0", | ||
"vscode-languageclient": "~8.0.2", | ||
"vscode-languageserver": "~8.0.2", | ||
"vscode-uri": "~3.0.7" | ||
}, | ||
"devDependencies": { | ||
"@types/node": "^14.17.3", | ||
"@types/vscode": "^1.56.0", | ||
"@typescript-eslint/eslint-plugin": "^5.28.0", | ||
"@typescript-eslint/parser": "^5.28.0", | ||
"eslint": "^8.17.0", | ||
"langium-cli": "~1.0.0", | ||
"typescript": "^4.9.4" | ||
"@types/node": "~16.18.11", | ||
"@types/vscode": "~1.67.0", | ||
"@typescript-eslint/eslint-plugin": "~5.51.0", | ||
"@typescript-eslint/parser": "~5.51.0", | ||
"eslint": "~8.33.0", | ||
"langium-cli": "~1.1.0", | ||
"typescript": "~4.9.5" | ||
} | ||
} |
@@ -0,0 +0,0 @@ import chalk from 'chalk'; |
@@ -0,0 +0,0 @@ import fs from 'fs'; |
@@ -0,0 +0,0 @@ import chalk from 'chalk'; |
@@ -0,0 +0,0 @@ import * as vscode from 'vscode'; |
@@ -0,0 +0,0 @@ import { |
@@ -0,0 +0,0 @@ import { ValidationAcceptor, ValidationChecks } from 'langium'; |
@@ -0,0 +0,0 @@ import { startLanguageServer } from 'langium'; |
@@ -0,0 +0,0 @@ { |
{ | ||
"name": "generator-langium", | ||
"version": "1.0.0", | ||
"version": "1.1.0", | ||
"description": "Yeoman generator for Langium - the language engineering tool", | ||
"homepage": "https://langium.org", | ||
"engines": { | ||
"node": ">=12.10.0" | ||
"node": ">=14.0.0" | ||
}, | ||
@@ -28,4 +28,5 @@ "keywords": [ | ||
"watch": "tsc --watch", | ||
"lint": "eslint src --ext .ts", | ||
"lint": "eslint src test --ext .ts", | ||
"run": "yo langium", | ||
"test": "vitest run", | ||
"debug": "npx --node-arg=--inspect yo langium", | ||
@@ -36,10 +37,18 @@ "publish:next": "npm --no-git-tag-version version \"$(semver $npm_package_version -i minor)-next.$(git rev-parse --short HEAD)\" && npm publish --tag next", | ||
"dependencies": { | ||
"chalk": "^4.1.2", | ||
"lodash": "^4.17.21", | ||
"yeoman-generator": "^5.5.2" | ||
"chalk": "~4.1.2", | ||
"lodash": "~4.17.21", | ||
"which": "~2.0.2", | ||
"yeoman-generator": "~5.7.0" | ||
}, | ||
"devDependencies": { | ||
"@types/lodash": "^4.14.170", | ||
"@types/yeoman-generator": "^5.0.0" | ||
"@types/lodash": "~4.14.191", | ||
"@types/which": "~2.0.1", | ||
"@types/yeoman-generator": "~5.2.11", | ||
"@types/yeoman-test": "~4.0.3", | ||
"yeoman-test": "~7.3.0" | ||
}, | ||
"volta": { | ||
"node": "16.19.0", | ||
"npm": "8.19.3" | ||
}, | ||
"repository": { | ||
@@ -46,0 +55,0 @@ "type": "git", |
@@ -0,0 +0,0 @@ # Langium Package Generator |
133
src/index.ts
@@ -11,2 +11,3 @@ /****************************************************************************** | ||
import path from 'path'; | ||
import which from 'which'; | ||
@@ -16,13 +17,11 @@ const TEMPLATE_DIR = '../langium-template'; | ||
const OPEN = '<%= '; | ||
const CLOSE = ' %>'; | ||
const EXTENSION_NAME = /<%= extension-name %>/g; | ||
const RAW_LANGUAGE_NAME = /<%= RawLanguageName %>/g; | ||
const FILE_EXTENSION = /<%= file-extension %>/g; | ||
const FILE_EXTENSION_GLOB = /<%= file-glob-extension %>/g; | ||
const EXTENSION_NAME = 'extension-name'; | ||
const RAW_LANGUAGE_NAME = 'RawLanguageName'; | ||
const FILE_EXTENSION = 'file-extension'; | ||
const FILE_EXTENSION_GLOB = 'file-glob-extension'; | ||
const LANGUAGE_NAME = /<%= LanguageName %>/g; | ||
const LANGUAGE_ID = /<%= language-id %>/g; | ||
const LANGUAGE_PATH_ID = /language-id/g; | ||
const LANGUAGE_NAME = 'LanguageName'; | ||
const LANGUAGE_ID = 'language-id'; | ||
interface Answers { | ||
@@ -101,5 +100,9 @@ extensionName: string; | ||
writing(): void { | ||
const fileExtensions = [...new Set(this.answers.fileExtensions.split(',').map(ext => { | ||
return ext.trim().replace('.', ''); | ||
}))]; | ||
const fileExtensions = Array.from( | ||
new Set( | ||
this.answers.fileExtensions | ||
.split(',') | ||
.map(ext => ext.replace(/\./g, '').trim()) | ||
) | ||
); | ||
this.answers.fileExtensions = `[${fileExtensions.map(ext => `".${ext}"`).join(', ')}]`; | ||
@@ -119,56 +122,19 @@ | ||
this.sourceRoot(path.join(__dirname, TEMPLATE_DIR)); | ||
['.', '.vscode', '.eslintrc.json', '.vscodeignore'].forEach( | ||
(path: string) => { | ||
const replaceTemplateWords = ( | ||
answers: Answers, | ||
content: Buffer | ||
): string => | ||
[ | ||
[EXTENSION_NAME, this.answers.extensionName], | ||
[RAW_LANGUAGE_NAME, this.answers.rawLanguageName], | ||
[FILE_EXTENSION, this.answers.fileExtensions], | ||
[FILE_EXTENSION_GLOB, fileExtensionGlob], | ||
[LANGUAGE_NAME, languageName], | ||
[LANGUAGE_ID, languageId], | ||
].reduce( | ||
(acc: string, [templateWord, userAnswer]) => | ||
acc.replace( | ||
new RegExp( | ||
`${OPEN}${templateWord}${CLOSE}`, | ||
'g' | ||
), | ||
userAnswer | ||
), | ||
content.toString() | ||
); | ||
const replaceTemplateNames = ( | ||
answers: Answers, | ||
path: string | ||
): string => | ||
path.replace(new RegExp(LANGUAGE_ID, 'g'), languageId); | ||
this.fs.copy( | ||
this.templatePath(path), | ||
this.destinationPath( | ||
USER_DIR, | ||
this.answers.extensionName, | ||
path | ||
), | ||
{ | ||
process: (content: Buffer) => | ||
replaceTemplateWords(this.answers, content), | ||
processDestinationPath: (path: string) => | ||
replaceTemplateNames(this.answers, path), | ||
} | ||
); | ||
} | ||
); | ||
for (const path of ['.', '.vscode', '.eslintrc.json', '.vscodeignore']) { | ||
this.fs.copy( | ||
this.templatePath(path), | ||
this._extensionPath(path), | ||
{ | ||
process: content => | ||
this._replaceTemplateWords(fileExtensionGlob, languageName, languageId, content), | ||
processDestinationPath: path => | ||
this._replaceTemplateNames(languageId, path), | ||
} | ||
); | ||
} | ||
} | ||
install(): void { | ||
const extensionPath = this.destinationPath( | ||
USER_DIR, | ||
this.answers.extensionName | ||
); | ||
const extensionPath = this._extensionPath(); | ||
@@ -180,4 +146,47 @@ const opts = { cwd: extensionPath }; | ||
} | ||
async end(): Promise<void> { | ||
const code = await which('code').catch(() => undefined); | ||
if (code) { | ||
const answer = await this.prompt({ | ||
type: 'list', | ||
name: 'openWith', | ||
message: 'Do you want to open the new folder with Visual Studio Code?', | ||
choices: [ | ||
{ | ||
name: 'Open with `code`', | ||
value: code | ||
}, | ||
{ | ||
name: 'Skip', | ||
value: false | ||
} | ||
] | ||
}); | ||
if (answer?.openWith) { | ||
this.spawnCommand(answer.openWith, [this._extensionPath()]); | ||
} | ||
} | ||
} | ||
_extensionPath(...path: string[]): string { | ||
return this.destinationPath(USER_DIR, this.answers.extensionName, ...path); | ||
} | ||
_replaceTemplateWords(fileExtensionGlob: string, languageName: string, languageId: string, content: Buffer): string { | ||
return content.toString() | ||
.replace(EXTENSION_NAME, this.answers.extensionName) | ||
.replace(RAW_LANGUAGE_NAME, this.answers.rawLanguageName) | ||
.replace(FILE_EXTENSION, this.answers.fileExtensions) | ||
.replace(FILE_EXTENSION_GLOB, fileExtensionGlob) | ||
.replace(LANGUAGE_NAME, languageName) | ||
.replace(LANGUAGE_ID, languageId); | ||
} | ||
_replaceTemplateNames(languageId: string, path: string): string { | ||
return path.replace(LANGUAGE_PATH_ID, languageId); | ||
} | ||
} | ||
export = LangiumGenerator; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Unidentified License
License(Experimental) Something that seems like a license was found, but its contents could not be matched with a known license.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Unidentified License
License(Experimental) Something that seems like a license was found, but its contents could not be matched with a known license.
Found 1 instance in 1 package
42480
672
4
5
1
+ Addedwhich@~2.0.2
+ Addedyeoman-generator@5.7.1(transitive)
- Removed@gar/promisify@1.1.3(transitive)
- Removed@isaacs/cliui@8.0.2(transitive)
- Removed@nodelib/fs.scandir@2.1.5(transitive)
- Removed@nodelib/fs.stat@2.0.5(transitive)
- Removed@nodelib/fs.walk@1.2.8(transitive)
- Removed@npmcli/fs@2.1.23.1.1(transitive)
- Removed@npmcli/git@4.1.0(transitive)
- Removed@npmcli/installed-package-contents@2.1.0(transitive)
- Removed@npmcli/move-file@2.0.1(transitive)
- Removed@npmcli/node-gyp@3.0.0(transitive)
- Removed@npmcli/promise-spawn@6.0.2(transitive)
- Removed@npmcli/run-script@6.0.2(transitive)
- Removed@pkgjs/parseargs@0.11.0(transitive)
- Removed@sigstore/bundle@1.1.0(transitive)
- Removed@sigstore/protobuf-specs@0.2.1(transitive)
- Removed@sigstore/sign@1.0.0(transitive)
- Removed@sigstore/tuf@1.0.3(transitive)
- Removed@tootallnate/once@2.0.0(transitive)
- Removed@tufjs/canonical-json@1.0.0(transitive)
- Removed@tufjs/models@1.0.4(transitive)
- Removed@types/minimatch@3.0.5(transitive)
- Removedabbrev@1.1.1(transitive)
- Removedagent-base@6.0.2(transitive)
- Removedagentkeepalive@4.5.0(transitive)
- Removedaggregate-error@3.1.0(transitive)
- Removedansi-regex@5.0.16.1.0(transitive)
- Removedansi-styles@6.2.1(transitive)
- Removedaproba@2.0.0(transitive)
- Removedare-we-there-yet@3.0.1(transitive)
- Removedarray-differ@3.0.0(transitive)
- Removedarray-union@2.1.0(transitive)
- Removedarrify@2.0.1(transitive)
- Removedasync@3.2.6(transitive)
- Removedbinaryextensions@4.19.0(transitive)
- Removedbrace-expansion@2.0.1(transitive)
- Removedbraces@3.0.3(transitive)
- Removedcacache@16.1.317.1.4(transitive)
- Removedchownr@2.0.0(transitive)
- Removedclean-stack@2.2.0(transitive)
- Removedcolor-support@1.1.3(transitive)
- Removedcommondir@1.0.1(transitive)
- Removedconsole-control-strings@1.1.0(transitive)
- Removeddeep-extend@0.6.0(transitive)
- Removeddelegates@1.0.0(transitive)
- Removeddir-glob@3.0.1(transitive)
- Removedeastasianwidth@0.2.0(transitive)
- Removedejs@3.1.10(transitive)
- Removedemoji-regex@8.0.09.2.2(transitive)
- Removedencoding@0.1.13(transitive)
- Removedenv-paths@2.2.1(transitive)
- Removederr-code@2.0.3(transitive)
- Removedexponential-backoff@3.1.1(transitive)
- Removedfast-glob@3.3.2(transitive)
- Removedfastq@1.17.1(transitive)
- Removedfilelist@1.0.4(transitive)
- Removedfill-range@7.1.1(transitive)
- Removedforeground-child@3.3.0(transitive)
- Removedfs-minipass@2.1.03.0.3(transitive)
- Removedgauge@4.0.4(transitive)
- Removedglob@10.4.58.1.0(transitive)
- Removedglob-parent@5.1.2(transitive)
- Removedglobby@11.1.0(transitive)
- Removedgraceful-fs@4.2.11(transitive)
- Removedhas-unicode@2.0.1(transitive)
- Removedhosted-git-info@6.1.1(transitive)
- Removedhttp-cache-semantics@4.1.1(transitive)
- Removedhttp-proxy-agent@5.0.0(transitive)
- Removedhttps-proxy-agent@5.0.1(transitive)
- Removedhumanize-ms@1.2.1(transitive)
- Removediconv-lite@0.6.3(transitive)
- Removedignore@5.3.2(transitive)
- Removedignore-walk@6.0.5(transitive)
- Removedimurmurhash@0.1.4(transitive)
- Removedindent-string@4.0.0(transitive)
- Removedinfer-owner@1.0.4(transitive)
- Removedip-address@9.0.5(transitive)
- Removedis-extglob@2.1.1(transitive)
- Removedis-fullwidth-code-point@3.0.0(transitive)
- Removedis-glob@4.0.3(transitive)
- Removedis-lambda@1.0.1(transitive)
- Removedis-number@7.0.0(transitive)
- Removedisbinaryfile@5.0.4(transitive)
- Removedjackspeak@3.4.3(transitive)
- Removedjake@10.9.2(transitive)
- Removedjsbn@1.1.0(transitive)
- Removedjson-parse-even-better-errors@3.0.2(transitive)
- Removedjsonparse@1.3.1(transitive)
- Removedlru-cache@10.4.37.18.3(transitive)
- Removedmake-fetch-happen@10.2.111.1.1(transitive)
- Removedmem-fs-editor@9.7.0(transitive)
- Removedmerge2@1.4.1(transitive)
- Removedmicromatch@4.0.8(transitive)
- Removedminimatch@5.1.67.4.69.0.5(transitive)
- Removedminipass@3.3.65.0.07.1.2(transitive)
- Removedminipass-collect@1.0.2(transitive)
- Removedminipass-fetch@2.1.23.0.5(transitive)
- Removedminipass-flush@1.0.5(transitive)
- Removedminipass-json-stream@1.0.2(transitive)
- Removedminipass-pipeline@1.2.4(transitive)
- Removedminipass-sized@1.0.3(transitive)
- Removedminizlib@2.1.2(transitive)
- Removedmkdirp@1.0.4(transitive)
- Removedmultimatch@5.0.0(transitive)
- Removednegotiator@0.6.4(transitive)
- Removednode-gyp@9.4.1(transitive)
- Removednopt@6.0.0(transitive)
- Removednormalize-package-data@5.0.0(transitive)
- Removednormalize-path@3.0.0(transitive)
- Removednpm-bundled@3.0.1(transitive)
- Removednpm-install-checks@6.3.0(transitive)
- Removednpm-normalize-package-bin@3.0.1(transitive)
- Removednpm-package-arg@10.1.0(transitive)
- Removednpm-packlist@7.0.4(transitive)
- Removednpm-pick-manifest@8.0.2(transitive)
- Removednpm-registry-fetch@14.0.5(transitive)
- Removednpmlog@6.0.2(transitive)
- Removedp-map@4.0.0(transitive)
- Removedpackage-json-from-dist@1.0.1(transitive)
- Removedpacote@15.2.0(transitive)
- Removedpath-scurry@1.11.1(transitive)
- Removedpath-type@4.0.0(transitive)
- Removedpicomatch@2.3.1(transitive)
- Removedproc-log@3.0.0(transitive)
- Removedpromise-inflight@1.0.1(transitive)
- Removedpromise-retry@2.0.1(transitive)
- Removedqueue-microtask@1.2.3(transitive)
- Removedread-package-json@6.0.4(transitive)
- Removedread-package-json-fast@3.0.2(transitive)
- Removedreadable-stream@3.6.2(transitive)
- Removedretry@0.12.0(transitive)
- Removedreusify@1.0.4(transitive)
- Removedrimraf@3.0.2(transitive)
- Removedrun-parallel@1.2.0(transitive)
- Removedsafe-buffer@5.2.1(transitive)
- Removedsafer-buffer@2.1.2(transitive)
- Removedset-blocking@2.0.0(transitive)
- Removedsignal-exit@4.1.0(transitive)
- Removedsigstore@1.9.0(transitive)
- Removedslash@3.0.0(transitive)
- Removedsmart-buffer@4.2.0(transitive)
- Removedsocks@2.8.3(transitive)
- Removedsocks-proxy-agent@7.0.0(transitive)
- Removedsprintf-js@1.1.3(transitive)
- Removedssri@10.0.69.0.1(transitive)
- Removedstring-width@4.2.35.1.2(transitive)
- Removedstring_decoder@1.3.0(transitive)
- Removedstrip-ansi@6.0.17.1.0(transitive)
- Removedtar@6.2.1(transitive)
- Removedtextextensions@5.16.0(transitive)
- Removedto-regex-range@5.0.1(transitive)
- Removedtuf-js@1.1.7(transitive)
- Removedunique-filename@2.0.13.0.0(transitive)
- Removedunique-slug@3.0.04.0.0(transitive)
- Removedutil-deprecate@1.0.2(transitive)
- Removedvalidate-npm-package-name@5.0.1(transitive)
- Removedwhich@3.0.1(transitive)
- Removedwide-align@1.1.5(transitive)
- Removedwrap-ansi@7.0.08.1.0(transitive)
- Removedyallist@4.0.0(transitive)
- Removedyeoman-generator@5.10.0(transitive)
Updatedchalk@~4.1.2
Updatedlodash@~4.17.21
Updatedyeoman-generator@~5.7.0