document-specification.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. // OpenApi version 3.1.0
  2. // https://spec.openapis.org/oas/v3.1.0
  3. /**
  4. * OpenAPI version.
  5. */
  6. export const OPENAPI_VERSION = '3.1.0';
  7. /**
  8. * Operation Method.
  9. * https://spec.openapis.org/oas/v3.1.0#path-item-object
  10. */
  11. export const OAOperationMethod = {
  12. GET: 'get',
  13. PUT: 'put',
  14. POST: 'post',
  15. DELETE: 'delete',
  16. OPTIONS: 'options',
  17. HEAD: 'head',
  18. PATCH: 'patch',
  19. TRACE: 'trace',
  20. };
  21. /**
  22. * Parameter Location.
  23. * https://spec.openapis.org/oas/v3.1.0#parameter-locations
  24. */
  25. export const OAParameterLocation = {
  26. QUERY: 'query',
  27. HEADER: 'header',
  28. PATH: 'path',
  29. COOKIE: 'cookie',
  30. };
  31. /**
  32. * Parameter Style.
  33. * https://spec.openapis.org/oas/v3.1.0#style-values
  34. */
  35. export const OAParameterStyle = {
  36. MATRIX: 'matrix',
  37. LABEL: 'label',
  38. FORM: 'form',
  39. SIMPLE: 'simple',
  40. SPACE_DELIMITED: 'spaceDelimited',
  41. PIPE_DELIMITED: 'pipeDelimited',
  42. DEEP_OBJECT: 'deepObject',
  43. };
  44. /**
  45. * Data type.
  46. * https://datatracker.ietf.org/doc/html/draft-bhutton-json-schema-00#section-4.2.1
  47. */
  48. export const OADataType = {
  49. STRING: 'string',
  50. NUMBER: 'number',
  51. INTEGER: 'integer',
  52. BOOLEAN: 'boolean',
  53. OBJECT: 'object',
  54. ARRAY: 'array',
  55. NULL: 'null',
  56. };
  57. /**
  58. * Data format.
  59. * https://spec.openapis.org/oas/v3.1.0#dataTypeFormat
  60. */
  61. export const OADataFormat = {
  62. INT32: 'int32',
  63. INT64: 'int64',
  64. FLOAT: 'float',
  65. DOUBLE: 'double',
  66. PASSWORD: 'password',
  67. BINARY: 'binary',
  68. };
  69. /**
  70. * Media type.
  71. * https://spec.openapis.org/oas/v3.1.0#media-types
  72. */
  73. export const OAMediaType = {
  74. TEXT_PLAIN: 'text/plain',
  75. TEXT_HTML: 'text/html',
  76. APPLICATION_XML: 'application/xml',
  77. APPLICATION_JSON: 'application/json',
  78. MULTIPART_FORM_DATA: 'multipart/form-data',
  79. };
  80. /**
  81. * Security Scheme Type.
  82. * https://spec.openapis.org/oas/v3.1.0#security-scheme-object
  83. */
  84. export const OASecuritySchemeType = {
  85. API_KEY: 'apiKey',
  86. HTTP: 'http',
  87. MUTUAL_TLS: 'mutualTLS',
  88. OAUTH_2: 'oauth2',
  89. OPEN_ID_CONNECT: 'openIdConnect',
  90. };
  91. /**
  92. * Api Key Location.
  93. * https://spec.openapis.org/oas/v3.1.0#security-scheme-object
  94. */
  95. export const OAApiKeyLocation = {
  96. QUERY: 'query',
  97. HEADER: 'header',
  98. COOKIE: 'cookie',
  99. };