Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

all-versions.js 2.1 KB

You have to be logged in to leave a comment. Sign In
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
  1. const enterpriseServerReleases = require('./enterprise-server-releases')
  2. // version = "plan"@"release"
  3. // example: enterprise-server@2.21
  4. // where "enterprise-server" is the plan and "2.21" is the release
  5. const versionDelimiter = '@'
  6. const latestNonNumberedRelease = 'latest'
  7. const plans = [
  8. { // free-pro-team is **not** a user-facing version and is stripped from URLs.
  9. // See lib/remove-fpt-from-path.js for details.
  10. plan: 'free-pro-team',
  11. planTitle: 'GitHub.com',
  12. releases: [latestNonNumberedRelease],
  13. latestRelease: latestNonNumberedRelease,
  14. nonEnterpriseDefault: true, // permanent way to refer to this plan if the name changes
  15. openApiBaseName: 'api.github.com', // used for REST
  16. miscBaseName: 'dotcom' // used for GraphQL and webhooks
  17. },
  18. {
  19. plan: 'enterprise-server',
  20. planTitle: 'Enterprise Server',
  21. releases: enterpriseServerReleases.supported,
  22. latestRelease: enterpriseServerReleases.latest,
  23. hasNumberedReleases: true,
  24. openApiBaseName: 'ghes-',
  25. miscBaseName: 'ghes-'
  26. },
  27. {
  28. plan: 'github-ae',
  29. planTitle: 'GitHub AE',
  30. releases: [latestNonNumberedRelease],
  31. latestRelease: latestNonNumberedRelease,
  32. openApiBaseName: 'github.ae',
  33. miscBaseName: 'ghae'
  34. }
  35. ]
  36. const allVersions = {}
  37. // combine the plans and releases to get allVersions object
  38. // e.g. free-pro-team@latest, enterprise-server@2.21, enterprise-server@2.20, etc.
  39. plans.forEach(planObj => {
  40. planObj.releases.forEach(release => {
  41. const version = `${planObj.plan}${versionDelimiter}${release}`
  42. const versionObj = {
  43. version,
  44. versionTitle: planObj.hasNumberedReleases ? `${planObj.planTitle} ${release}` : planObj.planTitle,
  45. latestVersion: `${planObj.plan}${versionDelimiter}${planObj.latestRelease}`,
  46. currentRelease: release,
  47. openApiVersionName: planObj.hasNumberedReleases ? `${planObj.openApiBaseName}${release}` : planObj.openApiBaseName,
  48. miscVersionName: planObj.hasNumberedReleases ? `${planObj.miscBaseName}${release}` : planObj.miscBaseName
  49. }
  50. allVersions[version] = Object.assign(versionObj, planObj)
  51. })
  52. })
  53. module.exports = allVersions
Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...