From b84fa58c85c6cb4e6bbe7a6b22851646dae20402 Mon Sep 17 00:00:00 2001 From: "Marcus R. Brown" Date: Tue, 9 Apr 2024 23:58:28 -0700 Subject: [PATCH] feat(prettier-plugins): switch to `sort-package-json` (#192) --- .changeset/stupid-eels-argue.md | 5 + .changeset/tall-carrots-unite.md | 8 + package.json | 34 ++--- packages/prettier-config/package.json | 34 ++--- packages/prettier-plugins/package.json | 38 ++--- packages/prettier-plugins/src/package-json.ts | 62 +++++--- packages/semantic-release/package.json | 32 ++-- packages/tsconfig/package.json | 32 ++-- pnpm-lock.yaml | 143 +++++++----------- 9 files changed, 201 insertions(+), 187 deletions(-) create mode 100644 .changeset/stupid-eels-argue.md create mode 100644 .changeset/tall-carrots-unite.md diff --git a/.changeset/stupid-eels-argue.md b/.changeset/stupid-eels-argue.md new file mode 100644 index 00000000..becd888c --- /dev/null +++ b/.changeset/stupid-eels-argue.md @@ -0,0 +1,5 @@ +--- +"@bfra.me/prettier-plugins": minor +--- + +Switch to [`sort-package-json`](https://github.com/keithamus/sort-package-json) in the `package-json` plugin diff --git a/.changeset/tall-carrots-unite.md b/.changeset/tall-carrots-unite.md new file mode 100644 index 00000000..bfe9bf86 --- /dev/null +++ b/.changeset/tall-carrots-unite.md @@ -0,0 +1,8 @@ +--- +"@bfra.me/prettier-plugins": patch +"@bfra.me/semantic-release": patch +"@bfra.me/prettier-config": patch +"@bfra.me/tsconfig": patch +--- + +Format `package.json` with latest `@bfra.me/prettier-plugins` diff --git a/package.json b/package.json index ee47ee7e..2e70876e 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,15 @@ { - "private": true, "name": "@bfra.me/works", "version": "0.0.0", + "private": true, "description": "bfra.me tools and components", + "keywords": [ + "Build Frameworks", + "CLI", + "Components", + "Tools", + "bfra.me" + ], "license": "MIT", "author": "Marcus R. Brown ", "type": "module", @@ -19,6 +26,14 @@ "version-changesets": "changeset version", "watch": "pnpm run build --watch" }, + "prettier": "@bfra.me/prettier-config", + "eslintConfig": { + "ignorePatterns": [ + "lib", + "dist", + "node_modules" + ] + }, "dependencies": { "@bfra.me/prettier-config": "workspace:*", "@bfra.me/tsconfig": "workspace:*", @@ -32,25 +47,10 @@ "rimraf": "5.0.5", "typescript": "5.4.4" }, - "keywords": [ - "Build Frameworks", - "CLI", - "Components", - "Tools", - "bfra.me" - ], - "eslintConfig": { - "ignorePatterns": [ - "lib", - "dist", - "node_modules" - ] - }, "packageManager": "pnpm@8.15.6", "pnpm": { "overrides": { "read-pkg-up@^11": "npm:read-package-up" } - }, - "prettier": "@bfra.me/prettier-config" + } } diff --git a/packages/prettier-config/package.json b/packages/prettier-config/package.json index fd192143..f78ea4b7 100644 --- a/packages/prettier-config/package.json +++ b/packages/prettier-config/package.json @@ -2,15 +2,23 @@ "name": "@bfra.me/prettier-config", "version": "0.3.1", "description": "Shared Prettier configuration for bfra.me", - "license": "MIT", - "author": "Marcus R. Brown ", + "keywords": [ + "bfra.me", + "config", + "prettier", + "prettier-config", + "shared", + "works" + ], "homepage": "https://github.com/bfra-me/works/tree/main/packages/prettier-config#readme", + "bugs": "https://github.com/bfra-me/works/issues", "repository": { - "directory": "packages/prettier-config", "type": "git", - "url": "https://github.com/bfra-me/works.git" + "url": "https://github.com/bfra-me/works.git", + "directory": "packages/prettier-config" }, - "bugs": "https://github.com/bfra-me/works/issues", + "license": "MIT", + "author": "Marcus R. Brown ", "type": "module", "exports": { ".": { @@ -20,6 +28,7 @@ "./package.json": "./package.json" }, "main": "prettier.config.js", + "types": "prettier.config.d.ts", "files": [ "prettier.config.*", "!*.map" @@ -28,26 +37,17 @@ "build": "tsc --build && pnpm run format", "format": "prettier --log-level error --ignore-unknown --write prettier.config.*" }, - "types": "prettier.config.d.ts", "dependencies": { "@bfra.me/prettier-plugins": "workspace:*" }, - "peerDependencies": { - "prettier": "^3.0.0" - }, "devDependencies": { "@bfra.me/prettier-config": "workspace:*", "@bfra.me/tsconfig": "workspace:*", "prettier": "3.2.5" }, - "keywords": [ - "bfra.me", - "config", - "prettier", - "prettier-config", - "shared", - "works" - ], + "peerDependencies": { + "prettier": "^3.0.0" + }, "publishConfig": { "access": "public", "provenance": true diff --git a/packages/prettier-plugins/package.json b/packages/prettier-plugins/package.json index 54ebb131..5cff40a8 100644 --- a/packages/prettier-plugins/package.json +++ b/packages/prettier-plugins/package.json @@ -2,15 +2,24 @@ "name": "@bfra.me/prettier-plugins", "version": "0.1.1", "description": "Plugins for Prettier used across bfra.me.", - "license": "MIT", - "author": "Marcus R. Brown ", + "keywords": [ + "bfra.me", + "plugins", + "prettier", + "prettier-plugins", + "shared", + "works" + ], "homepage": "https://github.com/bfra-me/works/tree/main/packages/prettier-plugins#readme", + "bugs": "https://github.com/bfra-me/works/issues", "repository": { - "directory": "packages/prettier-plugins", "type": "git", - "url": "https://github.com/bfra-me/works.git" + "url": "https://github.com/bfra-me/works.git", + "directory": "packages/prettier-plugins" }, - "bugs": "https://github.com/bfra-me/works/issues", + "license": "MIT", + "author": "Marcus R. Brown ", + "sideEffects": false, "type": "module", "exports": { "./*": { @@ -19,6 +28,7 @@ }, "./package.json": "./package.json" }, + "types": "lib/index.d.ts", "files": [ "lib", "!**/*.map" @@ -26,13 +36,8 @@ "scripts": { "build": "tsup" }, - "sideEffects": false, - "types": "lib/index.d.ts", "dependencies": { - "prettier-package-json": "2.8.0" - }, - "peerDependencies": { - "prettier": "^3.0.0" + "sort-package-json": "2.10.0" }, "devDependencies": { "@bfra.me/prettier-plugins": "workspace:*", @@ -40,14 +45,9 @@ "prettier": "3.2.5", "tsup": "8.0.2" }, - "keywords": [ - "bfra.me", - "plugins", - "prettier", - "prettier-plugins", - "shared", - "works" - ], + "peerDependencies": { + "prettier": "^3.0.0" + }, "publishConfig": { "access": "public", "provenance": true diff --git a/packages/prettier-plugins/src/package-json.ts b/packages/prettier-plugins/src/package-json.ts index 0f8f96c9..aa20b749 100644 --- a/packages/prettier-plugins/src/package-json.ts +++ b/packages/prettier-plugins/src/package-json.ts @@ -1,25 +1,53 @@ -import type {Parser, ParserOptions} from 'prettier' +import type {Parser, SupportOption} from 'prettier' +import prettier from 'prettier' import {parsers as babelParsers} from 'prettier/plugins/babel' -import {format, type Options as PrettierPackageJsonOptions} from 'prettier-package-json' +import {sortPackageJson} from 'sort-package-json' -const jsonStringifyParser = babelParsers['json-stringify'] +type SortPackageJsonOptions = NonNullable[1]> -export const parsers = { +interface PluginOptions { + /** Custom ordering array or comparator function. */ + sortPackageJsonSortOrder: SortPackageJsonOptions['sortOrder'] +} + +declare module 'prettier' { + interface RequiredOptions extends PluginOptions {} +} + +export const options: Record = { + sortPackageJsonSortOrder: { + category: 'Format', + type: 'string', + description: 'Custom ordering array.', + default: [{value: []}], + array: true, + }, +} + +const parser = babelParsers['json-stringify'] + +export const parsers: Record = { 'json-stringify': { - ...jsonStringifyParser, + ...parser, - preprocess(text: string, options: ParserOptions) { - if (jsonStringifyParser.preprocess) { - text = jsonStringifyParser.preprocess(text, options) - } - if (/package.*json$/u.test(options.filepath)) { - text = format(JSON.parse(text), { - tabWidth: options.tabWidth, - useTabs: options.useTabs === true, - ...((options['prettier-package-json'] ?? {}) as Partial), - }) + async parse(text, options) { + const {filepath} = options + if (/package.*json$/u.test(filepath)) { + // Format the text with prettier to avoid any parsing errors + text = await prettier.format(text, {filepath}) + + if (parser.preprocess) { + text = parser.preprocess(text, options) + } + + const sortOrder = options?.sortPackageJsonSortOrder + text = sortPackageJson( + text, + (sortOrder && sortOrder.length > 0 ? {sortOrder} : {}) as SortPackageJsonOptions, + ) } - return text + + return parser.parse(text, options) }, }, -} satisfies Record +} diff --git a/packages/semantic-release/package.json b/packages/semantic-release/package.json index 8987c66f..2200f8b5 100644 --- a/packages/semantic-release/package.json +++ b/packages/semantic-release/package.json @@ -2,15 +2,22 @@ "name": "@bfra.me/semantic-release", "version": "0.1.2", "description": "Semantic Release shareable configuration and plugins for bfra.me.", - "license": "MIT", - "author": "Marcus R. Brown ", + "keywords": [ + "bfra.me", + "config", + "semantic-release", + "shared", + "typescript" + ], "homepage": "https://github.com/bfra-me/works/tree/main/packages/semantic-release#readme", + "bugs": "https://github.com/bfra-me/works/issues", "repository": { - "directory": "packages/semantic-release", "type": "git", - "url": "https://github.com/bfra-me/works.git" + "url": "https://github.com/bfra-me/works.git", + "directory": "packages/semantic-release" }, - "bugs": "https://github.com/bfra-me/works/issues", + "license": "MIT", + "author": "Marcus R. Brown ", "type": "module", "exports": { ".": { @@ -22,6 +29,7 @@ "./package.json": "./package.json" }, "main": "lib/index.js", + "types": "lib/index.d.ts", "files": [ "lib", "tsconfig.json", @@ -31,10 +39,6 @@ "build": "tsup-node", "test": "pnpm build && vitest --typecheck" }, - "types": "lib/index.d.ts", - "peerDependencies": { - "semantic-release": ">=23" - }, "devDependencies": { "@bfra.me/semantic-release": "workspace:*", "@bfra.me/tsconfig": "workspace:*", @@ -44,13 +48,9 @@ "type-fest": "4.15.0", "vitest": "1.4.0" }, - "keywords": [ - "bfra.me", - "config", - "semantic-release", - "shared", - "typescript" - ], + "peerDependencies": { + "semantic-release": ">=23" + }, "publishConfig": { "access": "public", "provenance": true diff --git a/packages/tsconfig/package.json b/packages/tsconfig/package.json index 03f80c59..06e1a70d 100644 --- a/packages/tsconfig/package.json +++ b/packages/tsconfig/package.json @@ -2,15 +2,23 @@ "name": "@bfra.me/tsconfig", "version": "0.4.0", "description": "Shared TypeScript configuration for bfra.me", - "license": "MIT", - "author": "Marcus R. Brown ", + "keywords": [ + "bfra.me", + "config", + "shared", + "tsconfig", + "typescript", + "works" + ], "homepage": "https://github.com/bfra-me/works/tree/main/packages/tsconfig#readme", + "bugs": "https://github.com/bfra-me/works/issues", "repository": { - "directory": "packages/tsconfig", "type": "git", - "url": "https://github.com/bfra-me/works.git" + "url": "https://github.com/bfra-me/works.git", + "directory": "packages/tsconfig" }, - "bugs": "https://github.com/bfra-me/works/issues", + "license": "MIT", + "author": "Marcus R. Brown ", "type": "module", "exports": { ".": "./tsconfig.json", @@ -26,9 +34,6 @@ "run-tests": "node --test ./test/lib/*.test.js", "test": "pnpm compile-tests && pnpm run-tests" }, - "peerDependencies": { - "@tsconfig/strictest": "*" - }, "devDependencies": { "@bfra.me/tsconfig": "workspace:*", "@tsconfig/strictest": "2.0.5", @@ -36,14 +41,9 @@ "ajv-draft-04": "1.0.0", "type-fest": "4.15.0" }, - "keywords": [ - "bfra.me", - "config", - "shared", - "tsconfig", - "typescript", - "works" - ], + "peerDependencies": { + "@tsconfig/strictest": "*" + }, "publishConfig": { "access": "public", "provenance": true diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 43c40a69..a4bea578 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -63,9 +63,9 @@ importers: packages/prettier-plugins: dependencies: - prettier-package-json: - specifier: 2.8.0 - version: 2.8.0 + sort-package-json: + specifier: 2.10.0 + version: 2.10.0 devDependencies: '@bfra.me/prettier-plugins': specifier: workspace:* @@ -1494,14 +1494,6 @@ packages: /@types/normalize-package-data@2.4.4: resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} - /@types/parse-author@2.0.3: - resolution: {integrity: sha512-pgRW2K/GVQoogylrGJXDl7PBLW9A6T4OOc9Hy9MLT5f7vgufK2GQ8FcfAbjFHR5HjcN9ByzuCczAORk49REqoA==} - dev: false - - /@types/parse-json@4.0.2: - resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} - dev: false - /@types/semver@6.2.7: resolution: {integrity: sha512-blctEWbzUFzQx799RZjzzIdBJOXmE37YYEyDtKkx5Dg+V7o/zyyAxLPiI98A2jdTtDgxZleMdfV+7p8WbRJ1OQ==} dev: false @@ -1738,11 +1730,6 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /author-regex@1.0.0: - resolution: {integrity: sha512-KbWgR8wOYRAPekEmMXrYYdc7BRyhn2Ftk7KWfMUnQ43hFdojWEFRxhhRUm3/OFEdPa1r0KAvTTg9YQK57xTe0g==} - engines: {node: '>=0.8'} - dev: false - /available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} @@ -2009,6 +1996,7 @@ packages: /commander@4.1.1: resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} engines: {node: '>= 6'} + dev: true /compare-func@2.0.0: resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} @@ -2072,17 +2060,6 @@ packages: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: true - /cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - dependencies: - '@types/parse-json': 4.0.2 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - dev: false - /cosmiconfig@9.0.0(typescript@5.4.4): resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} engines: {node: '>=14'} @@ -2255,6 +2232,16 @@ packages: engines: {node: '>=8'} dev: false + /detect-indent@7.0.1: + resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} + engines: {node: '>=12.20'} + dev: false + + /detect-newline@4.0.1: + resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false + /diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2787,15 +2774,6 @@ packages: readable-stream: 2.3.8 dev: true - /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - dev: false - /fs-extra@11.2.0: resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} engines: {node: '>=14.14'} @@ -2876,6 +2854,11 @@ packages: hasown: 2.0.2 dev: false + /get-stdin@9.0.0: + resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} + engines: {node: '>=12'} + dev: false + /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -2899,6 +2882,10 @@ packages: get-intrinsic: 1.2.4 dev: false + /git-hooks-list@3.1.0: + resolution: {integrity: sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==} + dev: false + /git-log-parser@1.2.0: resolution: {integrity: sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==} dependencies: @@ -2981,6 +2968,17 @@ packages: merge2: 1.4.1 slash: 3.0.0 + /globby@13.2.2: + resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + dir-glob: 3.0.1 + fast-glob: 3.3.2 + ignore: 5.3.1 + merge2: 1.4.1 + slash: 4.0.0 + dev: false + /globby@14.0.1: resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==} engines: {node: '>=18'} @@ -3345,6 +3343,11 @@ packages: engines: {node: '>=0.10.0'} dev: false + /is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + dev: false + /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} @@ -3529,6 +3532,7 @@ packages: universalify: 2.0.1 optionalDependencies: graceful-fs: 4.2.11 + dev: true /jsonparse@1.3.1: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} @@ -4223,13 +4227,6 @@ packages: dependencies: callsites: 3.1.0 - /parse-author@2.0.0: - resolution: {integrity: sha512-yx5DfvkN8JsHL2xk2Os9oTia467qnvRgey4ahSm2X8epehBLx/gWLcy5KI+Y36ful5DzGbCS6RazqZGgy1gHNw==} - engines: {node: '>=0.10.0'} - dependencies: - author-regex: 1.0.0 - dev: false - /parse-github-url@1.0.2: resolution: {integrity: sha512-kgBf6avCbO3Cn6+RnzRGLkUsv4ZVqv/VfAYkRsyBcgkshNvVBkRn1FEZcW0Jb+npXQWm2vHPnnOqFteZxRRGNw==} engines: {node: '>=0.10.0'} @@ -4418,21 +4415,6 @@ packages: engines: {node: '>= 0.8.0'} dev: false - /prettier-package-json@2.8.0: - resolution: {integrity: sha512-WxtodH/wWavfw3MR7yK/GrS4pASEQ+iSTkdtSxPJWvqzG55ir5nvbLt9rw5AOiEcqqPCRM92WCtR1rk3TG3JSQ==} - hasBin: true - dependencies: - '@types/parse-author': 2.0.3 - commander: 4.1.1 - cosmiconfig: 7.1.0 - fs-extra: 10.1.0 - glob: 7.2.3 - minimatch: 3.1.2 - parse-author: 2.0.0 - sort-object-keys: 1.1.3 - sort-order: 1.1.2 - dev: false - /prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} @@ -4895,6 +4877,11 @@ packages: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} + /slash@4.0.0: + resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} + engines: {node: '>=12'} + dev: false + /slash@5.1.0: resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} @@ -4917,8 +4904,18 @@ packages: resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} dev: false - /sort-order@1.1.2: - resolution: {integrity: sha512-Q8tOrwB1TSv9fNUXym9st3TZJODtmcOIi2JWCkVNQPrRg17KPwlpwweTEb7pMwUIFMTAgx2/JsQQXEPFzYQj3A==} + /sort-package-json@2.10.0: + resolution: {integrity: sha512-MYecfvObMwJjjJskhxYfuOADkXp1ZMMnCFC8yhp+9HDsk7HhR336hd7eiBs96lTXfiqmUNI+WQCeCMRBhl251g==} + hasBin: true + dependencies: + detect-indent: 7.0.1 + detect-newline: 4.0.1 + get-stdin: 9.0.0 + git-hooks-list: 3.1.0 + globby: 13.2.2 + is-plain-obj: 4.1.0 + semver: 7.6.0 + sort-object-keys: 1.1.3 dev: false /source-map-js@1.2.0: @@ -5466,6 +5463,7 @@ packages: /universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + dev: true /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -5744,11 +5742,6 @@ packages: /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - /yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - dev: false - /yaml@2.4.1: resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} engines: {node: '>= 14'} @@ -5823,23 +5816,3 @@ packages: resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} engines: {node: '>=12.20'} dev: true - -time: - /@changesets/cli@2.27.1: '2023-11-28T11:18:23.079Z' - /@manypkg/cli@0.21.3: '2024-03-15T00:57:45.583Z' - /@swc/core@1.4.13: '2024-04-09T07:53:49.068Z' - /@swisspost/design-system-changelog-github@1.0.2: '2022-11-22T09:41:10.082Z' - /@tsconfig/strictest@2.0.5: '2024-03-27T04:14:45.977Z' - /@types/node@20.12.7: '2024-04-09T21:07:26.258Z' - /ajv-draft-04@1.0.0: '2021-05-23T15:48:18.254Z' - /ajv@8.12.0: '2023-01-03T14:19:23.766Z' - /eslint@8.57.0: '2024-02-23T20:39:43.282Z' - /prettier-package-json@2.8.0: '2022-12-23T23:32:54.272Z' - /prettier@3.2.5: '2024-02-04T05:38:11.623Z' - /publint@0.2.7: '2023-12-23T05:31:00.940Z' - /rimraf@5.0.5: '2023-09-27T06:04:07.772Z' - /semantic-release@23.0.8: '2024-04-09T21:14:10.911Z' - /tsup@8.0.2: '2024-02-10T07:03:10.525Z' - /type-fest@4.15.0: '2024-04-03T06:22:34.950Z' - /typescript@5.4.4: '2024-04-04T18:00:15.661Z' - /vitest@1.4.0: '2024-03-15T10:31:19.381Z'