From 45acd648f1fcd2c2668a2ac01f5663afd244d113 Mon Sep 17 00:00:00 2001 From: Charlike Mike Reagent Date: Fri, 28 Feb 2020 04:46:02 +0200 Subject: [PATCH] feat!: import @tunnckocore/package-json It's possible to not have any breaking changes, but for safety. BREAKING CHANGE: uses JSDelivr and Unpkg under the hood. Signed-off-by: Charlike Mike Reagent --- .prettierignore | 1 + @tunnckocore/package-json/.verb.md | 5 + @tunnckocore/package-json/README.md | 282 ++++++++++++++++++++ @tunnckocore/package-json/docs/src/index.md | 41 +++ @tunnckocore/package-json/package.json | 89 ++++++ @tunnckocore/package-json/src/index.js | 74 +++++ @tunnckocore/package-json/test/index.js | 30 +++ README.md | 9 +- package.json | 5 + yarn.lock | 13 + 10 files changed, 547 insertions(+), 2 deletions(-) create mode 100644 @tunnckocore/package-json/.verb.md create mode 100644 @tunnckocore/package-json/README.md create mode 100644 @tunnckocore/package-json/docs/src/index.md create mode 100644 @tunnckocore/package-json/package.json create mode 100644 @tunnckocore/package-json/src/index.js create mode 100644 @tunnckocore/package-json/test/index.js diff --git a/.prettierignore b/.prettierignore index 17e96a77..b2c92926 100644 --- a/.prettierignore +++ b/.prettierignore @@ -16,6 +16,7 @@ coverage *.svg *.jpeg *.jpg +.now # !*.*js* # !*.*ts* diff --git a/@tunnckocore/package-json/.verb.md b/@tunnckocore/package-json/.verb.md new file mode 100644 index 00000000..96d6dfde --- /dev/null +++ b/@tunnckocore/package-json/.verb.md @@ -0,0 +1,5 @@ + + +{%= include(process.cwd() + "/docs/src/index.md") %} + + diff --git a/@tunnckocore/package-json/README.md b/@tunnckocore/package-json/README.md new file mode 100644 index 00000000..310309ea --- /dev/null +++ b/@tunnckocore/package-json/README.md @@ -0,0 +1,282 @@ +# @tunnckocore/package-json [![npm version][npmv-img]][npmv-url] [![License][license-img]][license-url] [![Libera Manifesto][libera-manifesto-img]][libera-manifesto-url] + +> Get package.json metadata for npm module from JSDelivr or fallback to Unpkg, +> because the npm registry is slow and ugly + +Please consider following this project's author, +[Charlike Mike Reagent](https://github.com/tunnckoCore), and :star: the project +to show your :heart: and support. + +
+ +[![Code style][codestyle-img]][codestyle-url] +[![CircleCI linux build][linuxbuild-img]][linuxbuild-url] +[![CodeCov coverage status][codecoverage-img]][codecoverage-url] +[![Renovate App Status][renovateapp-img]][renovateapp-url] +[![Make A Pull Request][prs-welcome-img]][prs-welcome-url] +[![Time Since Last Commit][last-commit-img]][last-commit-url] + + + +If you have any _how-to_ kind of questions, please read the [Contributing +Guide][contributing-url] and [Code of Conduct][code_of_conduct-url] documents. +For bugs reports and feature requests, [please create an issue][open-issue-url] +or ping [@tunnckoCore](https://twitter.com/tunnckoCore) at Twitter. + +[![Conventional Commits][ccommits-img]][ccommits-url] +[![Minimum Required Nodejs][nodejs-img]][npmv-url] +[![NPM Downloads Monthly][downloads-monthly-img]][npmv-url] +[![NPM Downloads Total][downloads-total-img]][npmv-url] +[![Share Love Tweet][twitter-share-img]][twitter-share-url] +[![Twitter][twitter-img]][twitter-url] + +Project is [semantically](https://semver.org) versioned & automatically released +from [GitHub Actions](https://github.com/features/actions) with +[Lerna](https://github.com/lerna/lerna). + +[![Become a Patron][patreon-img]][patreon-url] +[![Buy me a Kofi][kofi-img]][kofi-url] +[![PayPal Donation][paypal-img]][paypal-url] +[![Bitcoin Coinbase][bitcoin-img]][bitcoin-url] +[![Keybase PGP][keybase-img]][keybase-url] + +| Topic | Contact | +| :--------------------------------------------------------------- | ------------------------------------------------: | +| Any legal or licensing questions, like private or commerical use | ![tunnckocore_legal][tunnckocore_legal] | +| For any critical problems and security reports | ![tunnckocore_security][tunnckocore_security] | +| Consulting, professional support, personal or team training | ![tunnckocore_consulting][tunnckocore_consulting] | +| For any questions about Open Source, partnerships and sponsoring | ![tunnckocore_opensource][tunnckocore_opensource] | + + + +## Table of Contents + +- [Install](#install) + - [packageJson](#packagejson) +- [Contributing](#contributing) + - [Guides and Community](#guides-and-community) + - [Support the project](#support-the-project) +- [Contributors](#contributors) +- [License](#license) + +_(TOC generated by [verb](https://github.com/verbose/verb) using +[markdown-toc](https://github.com/jonschlinkert/markdown-toc))_ + +## Install + +This project requires [**Node.js**](https://nodejs.org) **>=10.13** _(see +[Support & Release Policy](https://github.com/tunnckoCoreLabs/support-release-policy))_. +Install it using [**yarn**](https://yarnpkg.com) or +[**npm**](https://npmjs.com).
_We highly recommend to use Yarn when you +think to contribute to this project._ + +```bash +$ yarn add @tunnckocore/package-json +``` + + + +_Generated using [jest-runner-docs](https://ghub.now.sh/jest-runner-docs)._ + +### [packageJson](./src/index.js#L36) + +Get package metadata from the Unpkg instead of NPM registry. Optionally you can +pass `endpoint` function and return the build the registry url. + + + +#### Signature + +```ts +function(packageName, endpoint) +``` + + + +#### Params + +- `packageName` **{string}** - the package name, supports `pkg-name@1.2.2` + (version) and `pkg-name@next` (dist-tag) +- `endpoint` **{function}** - like `(name, tag) => url` +- `returns` **{object}** - package metadata object + + + +#### Examples + +```js +import packageJson from '@tunnckocore/package-json'; + +async function main() { + console.log(await packageJson('eslint')); + console.log(await packageJson('package-json@4.0.0')); + console.log(await packageJson('ava@next')); + console.log(await packageJson('@babel/core')); + console.log(await packageJson('@tunnckocore/package-json')); +} + +main().catch(console.error); +``` + + + +**[back to top](#readme)** + +## Contributing + +### Guides and Community + +Please read the [Contributing Guide][contributing-url] and [Code of +Conduct][code_of_conduct-url] documents for advices. + +For bug reports and feature requests, please join our [community][community-url] +forum and open a thread there with prefixing the title of the thread with the +name of the project if there's no separate channel for it. + +Consider reading the +[Support and Release Policy](https://github.com/tunnckoCoreLabs/support-release-policy) +guide if you are interested in what are the supported Node.js versions and how +we proceed. In short, we support latest two even-numbered Node.js release lines. + +### Support the project + +[Become a Partner or Sponsor?][kofi-url] :dollar: Check the **OpenSource** +Commision (tier). :tada: You can get your company logo, link & name on this +file. It's also rendered on package's page in [npmjs.com][npmv-url] and +[yarnpkg.com](https://yarnpkg.com/en/package/@tunnckocore/package-json) sites +too! :rocket: + +Not financial support? Okey! +[Pull requests](https://github.com/tunnckoCoreLabs/contributing#opening-a-pull-request), +stars and all kind of +[contributions](https://opensource.guide/how-to-contribute/#what-it-means-to-contribute) +are always welcome. :sparkles: + +## Contributors + +This project follows the +[all-contributors](https://github.com/all-contributors/all-contributors) +specification. Contributions of any kind are welcome! + +Thanks goes to these wonderful people +([emoji key](https://allcontributors.org/docs/en/emoji-key)), consider showing +your [support](#support-the-project) to them: + + + + + + + + +

Charlike Mike Reagent

🚇 💻 📖 🤔 🚧 ⚠️
+ + + + + + +**[back to top](#readme)** + +## License + +Copyright (c) 2018-present, [Charlike Mike Reagent](https://tunnckocore.com) +`` & [contributors](#wonderful-contributors).
+Released under the [MPL-2.0 License][license-url]. + + + + + +[contributing-url]: https://github.com/tunnckoCore/opensource/blob/master/CONTRIBUTING.md +[code_of_conduct-url]: https://github.com/tunnckoCore/opensource/blob/master/CODE_OF_CONDUCT.md + + + +[npmv-url]: https://www.npmjs.com/package/@tunnckocore/package-json +[npmv-img]: https://badgen.net/npm/v/@tunnckocore/package-json?icon=npm&cache=300 + +[license-url]: https://github.com/tunnckoCore/opensource/blob/master/@tunnckocore/package-json/LICENSE +[license-img]: https://badgen.net/npm/license/@tunnckocore/package-json?cache=300 + +[libera-manifesto-url]: https://liberamanifesto.com +[libera-manifesto-img]: https://badgen.net/badge/libera/manifesto/grey + + + +[codecoverage-img]: https://badgen.net/badge/coverage/76.73%25/EEAA22?icon=codecov&cache=300 + +[codecoverage-url]: https://codecov.io/gh/tunnckoCore/opensource + +[codestyle-url]: https://github.com/airbnb/javascript +[codestyle-img]: https://badgen.net/badge/code%20style/airbnb/ff5a5f?icon=airbnb&cache=300 + +[linuxbuild-url]: https://github.com/tunnckocore/opensource/actions +[linuxbuild-img]: https://badgen.net/github/checks/tunnckoCore/opensource/master?cache=300&label=build&icon=github + +[ccommits-url]: https://conventionalcommits.org/ +[ccommits-img]: https://badgen.net/badge/conventional%20commits/v1.0.0/green?cache=300 + +[standard-release-url]: https://github.com/standard-release/standard-release +[standard-release-img]: https://badgen.net/badge/semantically/released/05c5ff?cache=300 + +[community-img]: https://badgen.net/badge/join/community/7b16ff?cache=300 +[community-url]: https://github.com/tunnckocorehq/community + +[last-commit-img]: https://badgen.net/github/last-commit/tunnckoCore/opensource/master?cache=300 +[last-commit-url]: https://github.com/tunnckoCore/opensource/commits/master + +[nodejs-img]: https://badgen.net/badge/node/>=10.13/green?cache=300 + +[downloads-weekly-img]: https://badgen.net/npm/dw/@tunnckocore/package-json?icon=npm&cache=300 +[downloads-monthly-img]: https://badgen.net/npm/dm/@tunnckocore/package-json?icon=npm&cache=300 +[downloads-total-img]: https://badgen.net/npm/dt/@tunnckocore/package-json?icon=npm&cache=300 + +[renovateapp-url]: https://renovatebot.com +[renovateapp-img]: https://badgen.net/badge/renovate/enabled/green?cache=300 + +[prs-welcome-img]: https://badgen.net/badge/PRs/welcome/green?cache=300 +[prs-welcome-url]: http://makeapullrequest.com + + + +[paypal-url]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=HYJJEZNSGAPGC&source=url +[paypal-img]: https://badgen.net/badge/PayPal/donate/003087?cache=300&icon=https://simpleicons.now.sh/paypal/fff + + + +[kofi-url]: https://ko-fi.com/tunnckoCore +[kofi-img]: https://badgen.net/badge/Buy%20me/a%20coffee/29abe0c2?cache=300&icon=https://rawcdn.githack.com/tunnckoCore/badgen-icons/f8264c6414e0bec449dd86f2241d50a9b89a1203/icons/kofi.svg + + + +[bitcoin-url]: https://www.blockchain.com/btc/payment_request?address=3QNHKun1K1SUui1b4Z3KEGPPsWC1TgtnqA&message=Open+Source+Software&amount_local=10¤cy=USD +[bitcoin-img]: https://badgen.net/badge/Bitcoin%20tip/3QNHKun...b4Z3KEGPPsWC1TgtnqA/yellow?cache=300&icon=https://simpleicons.now.sh/bitcoin/fff +[keybase-url]: https://keybase.io/tunnckoCore +[keybase-img]: https://badgen.net/keybase/pgp/tunnckoCore?cache=300 +[twitter-url]: https://twitter.com/tunnckoCore +[twitter-img]: https://badgen.net/twitter/follow/tunnckoCore?icon=twitter&color=1da1f2&cache=300 +[patreon-url]: https://www.patreon.com/bePatron?u=5579781 +[patreon-img]: https://badgen.net/badge/Become/a%20patron/F96854?icon=patreon + + + +[patreon-sponsor-img]: https://badgen.net/badge/become/a%20sponsor/F96854?icon=patreon +[twitter-share-url]: https://twitter.com/intent/tweet?text=https://github.com/tunnckoCore/opensource/tree/master&via=tunnckoCore +[twitter-share-img]: https://badgen.net/badge/twitter/share/1da1f2?icon=twitter +[open-issue-url]: https://github.com/tunnckoCore/opensource/issues/new +[tunnckocore_legal]: https://badgen.net/https/liam-badge-daknys6gadky.runkit.sh/com/legal/tunnckocore?label&color=A56016&icon=https://svgshare.com/i/Dt6.svg +[tunnckocore_consulting]: https://badgen.net/https/liam-badge-daknys6gadky.runkit.sh/com/consulting/tunnckocore?label&color=07ba96&icon=https://svgshare.com/i/Dt6.svg +[tunnckocore_security]: https://badgen.net/https/liam-badge-daknys6gadky.runkit.sh/com/security/tunnckocore?label&color=ed1848&icon=https://svgshare.com/i/Dt6.svg +[tunnckocore_opensource]: https://badgen.net/https/liam-badge-daknys6gadky.runkit.sh/com/opensource/tunnckocore?label&color=ff7a2f&icon=https://svgshare.com/i/Dt6.svg +[tunnckocore_newsletter]: https://badgen.net/https/liam-badge-daknys6gadky.runkit.sh/com/newsletter/tunnckocore?label&color=5199FF&icon=https://svgshare.com/i/Dt6.svg + + diff --git a/@tunnckocore/package-json/docs/src/index.md b/@tunnckocore/package-json/docs/src/index.md new file mode 100644 index 00000000..d1e91e5b --- /dev/null +++ b/@tunnckocore/package-json/docs/src/index.md @@ -0,0 +1,41 @@ +_Generated using [jest-runner-docs](https://ghub.now.sh/jest-runner-docs)._ + +### [packageJson](./src/index.js#L36) + +Get package metadata from the Unpkg instead of NPM registry. Optionally you can +pass `endpoint` function and return the build the registry url. + + + +#### Signature + +```ts +function(packageName, endpoint) +``` + + + +#### Params + +- `packageName` **{string}** - the package name, supports `pkg-name@1.2.2` + (version) and `pkg-name@next` (dist-tag) +- `endpoint` **{function}** - like `(name, tag) => url` +- `returns` **{object}** - package metadata object + + + +#### Examples + +```js +import packageJson from '@tunnckocore/package-json'; + +async function main() { + console.log(await packageJson('eslint')); + console.log(await packageJson('package-json@4.0.0')); + console.log(await packageJson('ava@next')); + console.log(await packageJson('@babel/core')); + console.log(await packageJson('@tunnckocore/package-json')); +} + +main().catch(console.error); +``` diff --git a/@tunnckocore/package-json/package.json b/@tunnckocore/package-json/package.json new file mode 100644 index 00000000..0883db71 --- /dev/null +++ b/@tunnckocore/package-json/package.json @@ -0,0 +1,89 @@ +{ + "name": "@tunnckocore/package-json", + "version": "1.0.3", + "licenseStart": 2018, + "license": "MPL-2.0", + "description": "Get package.json metadata for npm module from JSDelivr or fallback to Unpkg, because the npm registry is slow and ugly", + "author": "Charlike Mike Reagent (https://tunnckocore.com)", + "homepage": "https://tunnckocore.com/opensource", + "funding": [ + "https://ko-fi.com/tunnckoCore/commissions", + "https://github.com/sponsors/tunnckoCore", + "https://patreon.com/tunnckoCore" + ], + "repository": { + "type": "git", + "url": "https://github.com/tunnckoCore/opensource.git", + "directory": "@tunnckocore/package-json" + }, + "main": "dist/cjs/index.js", + "module": "dist/esm/index.js", + "files": [ + "dist" + ], + "engines": { + "node": ">=10.13" + }, + "publishConfig": { + "access": "public", + "tag": "latest" + }, + "scripts": {}, + "dependencies": { + "ky": "^0.18.0", + "ky-universal": "^0.5.0", + "parse-package-name": "^0.1.0" + }, + "jest": { + "coverageThreshold": { + "src/**/*.js": { + "statements": 72, + "branches": 87, + "functions": 75, + "lines": 72 + } + } + }, + "cov": { + "value": 76.73, + "color": "EEAA22" + }, + "keywords": [ + "tunnckocorehq", + "tunnckocore-oss", + "hela", + "development", + "developer-experience", + "dx", + "package-json", + "pkg-json", + "package", + "json", + "get-package-json", + "get-pkg", + "metadata", + "pkg metadata", + "get package", + "package.json" + ], + "verb": { + "readme": "../../readme-template.md", + "run": true, + "toc": { + "render": true, + "method": "preWrite", + "maxdepth": 3 + }, + "layout": "empty", + "tasks": [ + "readme" + ], + "lint": { + "reflinks": true + }, + "reflinks": [], + "related": { + "list": [] + } + } +} diff --git a/@tunnckocore/package-json/src/index.js b/@tunnckocore/package-json/src/index.js new file mode 100644 index 00000000..5f99dbe3 --- /dev/null +++ b/@tunnckocore/package-json/src/index.js @@ -0,0 +1,74 @@ +import parsePkgName from 'parse-package-name'; +import ky from 'ky-universal'; + +export class PackageJsonError extends Error { + constructor(message, err) { + super(message); + this.name = 'PackageJsonError'; + this.originalError = err; + } +} + +/** + * Get package metadata from the Unpkg instead of NPM registry. + * Optionally you can pass `endpoint` function and return the build + * the registry url. + * + * @example + * import packageJson from '@tunnckocore/package-json'; + * + * async function main() { + * console.log(await packageJson('eslint')); + * console.log(await packageJson('package-json@4.0.0')); + * console.log(await packageJson('ava@next')); + * console.log(await packageJson('@babel/core')); + * console.log(await packageJson('@tunnckocore/package-json')); + * } + * + * main().catch(console.error); + * + * @name packageJson + * @param {string} packageName the package name, supports `pkg-name@1.2.2` (version) and `pkg-name@next` (dist-tag) + * @param {function} endpoint like `(name, tag) => url` + * @returns {object} package metadata object + * @public + */ +export default async function packageJson(packageName, endpoint) { + const { name, version } = parsePkgName(packageName); + const tag = version === '' ? 'latest' : version; + const uri = + typeof endpoint === 'function' + ? endpoint(name, tag) + : `https://cdn.jsdelivr.net/npm/${name}@${tag}/package.json`; + + let pkg = null; + try { + pkg = await ky + .get(uri) + .then((resp) => resp.text()) + .then(JSON.parse); + } catch (err) { + // NOTE: jsDelivr can response with 403 Forbidden, if over 50MB + if (err.response && err.response.status === 403) { + try { + // ! so, try through UNPKG.com + pkg = await packageJson( + packageName, + (x, t) => `https://unpkg.com/${x}@${t}/package.json`, + ); + } catch (error) { + throw new PackageJsonError( + `Package "${name}" not found, even through UNPKG.com!`, + error, + ); + } + return pkg; + } + + throw new PackageJsonError( + `Package "${name}" not found or loading error!`, + err, + ); + } + return pkg; +} diff --git a/@tunnckocore/package-json/test/index.js b/@tunnckocore/package-json/test/index.js new file mode 100644 index 00000000..08349f06 --- /dev/null +++ b/@tunnckocore/package-json/test/index.js @@ -0,0 +1,30 @@ +import packageJson, { PackageJsonError } from '../src/index'; + +test('return package metadata', async () => { + const pkg = await packageJson('babel-preset-optimise'); + expect(pkg.name).toStrictEqual('babel-preset-optimise'); +}); + +test('for specific version + scoped', async () => { + const pkg = await packageJson('@tunnckocore/package-json@1.0.3'); + expect(pkg.version).toStrictEqual('1.0.3'); + expect(pkg.repository).toStrictEqual('tunnckoCoreLabs/package-json'); +}); + +test('throw for not existing package', async () => { + await expect(packageJson('ksjdf4jdhfkjsd')).rejects.toThrow(Error); + await expect(packageJson('ksjdf4jdhfkjsd')).rejects.toThrow(PackageJsonError); + await expect(packageJson('ksjdf4jdhfkjsd')).rejects.toThrow( + /Package "ksjdf4jdhfkjsd" not found/, + ); +}); + +test('get package.json using custom `endpoint` option', async () => { + const pkg = await packageJson( + 'package-json@4.0.0', + (name, tag) => `https://registry.npmjs.org/${name}/${tag}`, + ); + + expect(pkg.name).toStrictEqual('package-json'); + expect(pkg.version).toStrictEqual('4.0.0'); +}); diff --git a/README.md b/README.md index 1b90ad61..eee3059e 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,7 @@ Jest and Babel. | [`@tunnckocore/execa`](https://ghub.now.sh/@tunnckocore/execa) | [![npm][npm-0ee88d61eb-img]][npm-0ee88d61eb-url] [![cov][cov-0ee88d61eb-img]][cov-0ee88d61eb-url] | | [`@tunnckocore/jest-runner-babel`](https://ghub.now.sh/@tunnckocore/jest-runner-babel) | [![npm][npm-66996266fb-img]][npm-66996266fb-url] [![cov][cov-66996266fb-img]][cov-66996266fb-url] | | [`@tunnckocore/jest-runner-eslint`](https://ghub.now.sh/@tunnckocore/jest-runner-eslint) | [![npm][npm-c7106a6fc9-img]][npm-c7106a6fc9-url] [![cov][cov-c7106a6fc9-img]][cov-c7106a6fc9-url] | +| [`@tunnckocore/package-json`](https://ghub.now.sh/@tunnckocore/package-json) | [![npm][npm-1e25d483ed-img]][npm-1e25d483ed-url] [![cov][cov-1e25d483ed-img]][cov-1e25d483ed-url] | | [`@tunnckocore/pretty-config`](https://ghub.now.sh/@tunnckocore/pretty-config) | [![npm][npm-9c57de05d6-img]][npm-9c57de05d6-url] [![cov][cov-9c57de05d6-img]][cov-9c57de05d6-url] | | [`@tunnckocore/utils`](https://ghub.now.sh/@tunnckocore/utils) | [![npm][npm-2ee61b0213-img]][npm-2ee61b0213-url] [![cov][cov-2ee61b0213-img]][cov-2ee61b0213-url] | @@ -69,7 +70,7 @@ Jest and Babel. [npm-bfbf73f3e5-url]: https://www.npmjs.com/package/jest-runner-docs [npm-bfbf73f3e5-img]: https://badgen.net/npm/v/jest-runner-docs?icon=npm [cov-bfbf73f3e5-url]: https://www.npmjs.com/package/jest-runner-docs -[cov-bfbf73f3e5-img]: https://badgen.net/badge/coverage/5.99%25/red?icon=codecov +[cov-bfbf73f3e5-img]: https://badgen.net/badge/coverage/6.11%25/red?icon=codecov [npm-13c18163b7-url]: https://www.npmjs.com/package/jest-runner-node [npm-13c18163b7-img]: https://badgen.net/npm/v/jest-runner-node?icon=npm [cov-13c18163b7-url]: https://www.npmjs.com/package/jest-runner-node @@ -101,7 +102,7 @@ Jest and Babel. [npm-76c512834b-url]: https://www.npmjs.com/package/@tunnckocore/create-jest-runner [npm-76c512834b-img]: https://badgen.net/npm/v/@tunnckocore/create-jest-runner?icon=npm [cov-76c512834b-url]: https://www.npmjs.com/package/@tunnckocore/create-jest-runner -[cov-76c512834b-img]: https://badgen.net/badge/coverage/20.38%25/red?icon=codecov +[cov-76c512834b-img]: https://badgen.net/badge/coverage/19.91%25/red?icon=codecov [npm-0ee88d61eb-url]: https://www.npmjs.com/package/@tunnckocore/execa [npm-0ee88d61eb-img]: https://badgen.net/npm/v/@tunnckocore/execa?icon=npm [cov-0ee88d61eb-url]: https://www.npmjs.com/package/@tunnckocore/execa @@ -114,6 +115,10 @@ Jest and Babel. [npm-c7106a6fc9-img]: https://badgen.net/npm/v/@tunnckocore/jest-runner-eslint?icon=npm [cov-c7106a6fc9-url]: https://www.npmjs.com/package/@tunnckocore/jest-runner-eslint [cov-c7106a6fc9-img]: https://badgen.net/badge/coverage/7.79%25/red?icon=codecov +[npm-1e25d483ed-url]: https://www.npmjs.com/package/@tunnckocore/package-json +[npm-1e25d483ed-img]: https://badgen.net/npm/v/@tunnckocore/package-json?icon=npm +[cov-1e25d483ed-url]: https://www.npmjs.com/package/@tunnckocore/package-json +[cov-1e25d483ed-img]: https://badgen.net/badge/coverage/unknown/grey?icon=codecov [npm-9c57de05d6-url]: https://www.npmjs.com/package/@tunnckocore/pretty-config [npm-9c57de05d6-img]: https://badgen.net/npm/v/@tunnckocore/pretty-config?icon=npm [cov-9c57de05d6-url]: https://www.npmjs.com/package/@tunnckocore/pretty-config diff --git a/package.json b/package.json index e34643c6..9b455612 100644 --- a/package.json +++ b/package.json @@ -89,6 +89,7 @@ "@tunnckocore/pretty-config" ], "bundle": [ + "@tunnckocore/package-json", "arr-includes", "gitclone-defaults", "stringify-github-short-url", @@ -178,6 +179,10 @@ "value": 7.79, "color": "red" }, + "@tunnckocore/package-json": { + "value": 76.73, + "color": "EEAA22" + }, "@tunnckocore/pretty-config": { "value": 6.25, "color": "red" diff --git a/yarn.lock b/yarn.lock index b9ad66a9..a0228977 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10238,11 +10238,24 @@ ky-universal@^0.3.0: abort-controller "^3.0.0" node-fetch "^2.6.0" +ky-universal@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/ky-universal/-/ky-universal-0.5.0.tgz#16d5fe881fb98e54732a4f0b7d531d44cbf701cb" + integrity sha512-O+0wjCua5i45lYBZrBy8TyRDRVodtsmzVC/MlE5FN7ZMFu/Icz7ekbZ85sdFw0F/JwGhXZTaKjXq9IgUGwGedQ== + dependencies: + abort-controller "^3.0.0" + node-fetch "^2.6.0" + ky@^0.16.2: version "0.16.2" resolved "https://registry.yarnpkg.com/ky/-/ky-0.16.2.tgz#e3652262ab659b27780dd025d1524e40572034a8" integrity sha512-4/Xcb0hqeueNX9sa+G2jREiam9yb+I2Y3p3J42lIeitAenHXUZwpyejEgeQcQsaGl+hbuA0s7c3u+nlcIYFtog== +ky@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/ky/-/ky-0.18.0.tgz#23b46f14c76b646da434b2a34a934b69e8317144" + integrity sha512-B/Gjri1BAQa1+P7jjj2FYTWIbiYwDDozNvQOv8HUq24cD+a3D3tANxLjnISrrKeiG3B2N3aVE6z9hV+o1n5JGg== + latest-version@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15"