diff --git a/.husky/pre-commit b/.husky/pre-commit index e6a875c..4015ac2 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,6 +1,8 @@ #!/bin/sh . "$(dirname "$0")/_/husky.sh" +node sort-vendors.js node create-typings.js git add index.d.ts +git add vendors.json diff --git a/index.d.ts b/index.d.ts index 816d63a..6d48115 100644 --- a/index.d.ts +++ b/index.d.ts @@ -43,15 +43,15 @@ export const CODESHIP: boolean; export const DRONE: boolean; export const DSARI: boolean; export const EAS: boolean; +export const GERRIT: boolean; export const GITHUB_ACTIONS: boolean; export const GITLAB: boolean; export const GOCD: boolean; export const GOOGLE_CLOUD_BUILD: boolean; -export const LAYERCI: boolean; -export const GERRIT: boolean; export const HEROKU: boolean; export const HUDSON: boolean; export const JENKINS: boolean; +export const LAYERCI: boolean; export const MAGNUM: boolean; export const NETLIFY: boolean; export const NEVERCODE: boolean; diff --git a/sort-vendors.js b/sort-vendors.js new file mode 100644 index 0000000..8e2bec2 --- /dev/null +++ b/sort-vendors.js @@ -0,0 +1,20 @@ +const fs = require('fs/promises') +const path = require('path') +const vendorsJson = require('./vendors.json') + +// Sort the vendors by name +const sortedVendors = vendorsJson.map(item => item).sort((a, b) => a.name.localeCompare(b.name)) + +// Get the full path to the vendors file +const vendorsFilePath = path.join(__dirname, 'vendors.json') + +const sort = async () => { + try { + const vendorsString = JSON.stringify(sortedVendors, null, 2) + '\n' + await fs.writeFile(vendorsFilePath, vendorsString, 'utf-8') + } catch (error) { + console.error(`Error writing to file: ${error}`) + } +} + +sort() diff --git a/vendors.json b/vendors.json index 00c1601..9fc7a0b 100644 --- a/vendors.json +++ b/vendors.json @@ -48,7 +48,10 @@ "name": "Buildkite", "constant": "BUILDKITE", "env": "BUILDKITE", - "pr": { "env": "BUILDKITE_PULL_REQUEST", "ne": "false" } + "pr": { + "env": "BUILDKITE_PULL_REQUEST", + "ne": "false" + } }, { "name": "CircleCI", @@ -66,7 +69,12 @@ "name": "Codefresh", "constant": "CODEFRESH", "env": "CF_BUILD_ID", - "pr": { "any": ["CF_PULL_REQUEST_NUMBER", "CF_PULL_REQUEST_ID"] } + "pr": { + "any": [ + "CF_PULL_REQUEST_NUMBER", + "CF_PULL_REQUEST_ID" + ] + } }, { "name": "Codemagic", @@ -77,13 +85,17 @@ { "name": "Codeship", "constant": "CODESHIP", - "env": { "CI_NAME": "codeship" } + "env": { + "CI_NAME": "codeship" + } }, { "name": "Drone", "constant": "DRONE", "env": "DRONE", - "pr": { "DRONE_BUILD_EVENT": "pull_request" } + "pr": { + "DRONE_BUILD_EVENT": "pull_request" + } }, { "name": "dsari", @@ -95,11 +107,18 @@ "constant": "EAS", "env": "EAS_BUILD" }, + { + "name": "Gerrit", + "constant": "GERRIT", + "env": "GERRIT_PROJECT" + }, { "name": "GitHub Actions", "constant": "GITHUB_ACTIONS", "env": "GITHUB_ACTIONS", - "pr": { "GITHUB_EVENT_NAME": "pull_request" } + "pr": { + "GITHUB_EVENT_NAME": "pull_request" + } }, { "name": "GitLab CI", @@ -117,21 +136,13 @@ "constant": "GOOGLE_CLOUD_BUILD", "env": "BUILDER_OUTPUT" }, - { - "name": "LayerCI", - "constant": "LAYERCI", - "env": "LAYERCI", - "pr": "LAYERCI_PULL_REQUEST" - }, - { - "name": "Gerrit", - "constant": "GERRIT", - "env": "GERRIT_PROJECT" - }, { "name": "Heroku", "constant": "HEROKU", - "env": { "env": "NODE", "includes": "/app/.heroku/node/bin/node" } + "env": { + "env": "NODE", + "includes": "/app/.heroku/node/bin/node" + } }, { "name": "Hudson", @@ -141,8 +152,22 @@ { "name": "Jenkins", "constant": "JENKINS", - "env": ["JENKINS_URL", "BUILD_ID"], - "pr": { "any": ["ghprbPullId", "CHANGE_ID"] } + "env": [ + "JENKINS_URL", + "BUILD_ID" + ], + "pr": { + "any": [ + "ghprbPullId", + "CHANGE_ID" + ] + } + }, + { + "name": "LayerCI", + "constant": "LAYERCI", + "env": "LAYERCI", + "pr": "LAYERCI_PULL_REQUEST" }, { "name": "Magnum CI", @@ -153,13 +178,19 @@ "name": "Netlify CI", "constant": "NETLIFY", "env": "NETLIFY", - "pr": { "env": "PULL_REQUEST", "ne": "false" } + "pr": { + "env": "PULL_REQUEST", + "ne": "false" + } }, { "name": "Nevercode", "constant": "NEVERCODE", "env": "NEVERCODE", - "pr": { "env": "NEVERCODE_PULL_REQUEST", "ne": "false" } + "pr": { + "env": "NEVERCODE_PULL_REQUEST", + "ne": "false" + } }, { "name": "ReleaseHub", @@ -170,7 +201,9 @@ "name": "Render", "constant": "RENDER", "env": "RENDER", - "pr": { "IS_PULL_REQUEST": "true" } + "pr": { + "IS_PULL_REQUEST": "true" + } }, { "name": "Sail CI", @@ -182,7 +215,10 @@ "name": "Screwdriver", "constant": "SCREWDRIVER", "env": "SCREWDRIVER", - "pr": { "env": "SD_PULL_REQUEST", "ne": "false" } + "pr": { + "env": "SD_PULL_REQUEST", + "ne": "false" + } }, { "name": "Semaphore", @@ -194,7 +230,9 @@ "name": "Shippable", "constant": "SHIPPABLE", "env": "SHIPPABLE", - "pr": { "IS_PULL_REQUEST": "true" } + "pr": { + "IS_PULL_REQUEST": "true" + } }, { "name": "Solano CI", @@ -205,7 +243,9 @@ { "name": "Sourcehut", "constant": "SOURCEHUT", - "env": { "CI_NAME": "sourcehut" } + "env": { + "CI_NAME": "sourcehut" + } }, { "name": "Strider CD", @@ -215,7 +255,10 @@ { "name": "TaskCluster", "constant": "TASKCLUSTER", - "env": ["TASK_ID", "RUN_ID"] + "env": [ + "TASK_ID", + "RUN_ID" + ] }, { "name": "TeamCity", @@ -226,12 +269,20 @@ "name": "Travis CI", "constant": "TRAVIS", "env": "TRAVIS", - "pr": { "env": "TRAVIS_PULL_REQUEST", "ne": "false" } + "pr": { + "env": "TRAVIS_PULL_REQUEST", + "ne": "false" + } }, { "name": "Vercel", "constant": "VERCEL", - "env": { "any": ["NOW_BUILDER", "VERCEL"] } + "env": { + "any": [ + "NOW_BUILDER", + "VERCEL" + ] + } }, { "name": "Visual Studio App Center", @@ -241,8 +292,12 @@ { "name": "Woodpecker", "constant": "WOODPECKER", - "env": { "CI": "woodpecker" }, - "pr": { "CI_BUILD_EVENT": "pull_request" } + "env": { + "CI": "woodpecker" + }, + "pr": { + "CI_BUILD_EVENT": "pull_request" + } }, { "name": "Xcode Cloud",