@scalar/workspace-store 0.42.0 → 0.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/events/definitions/operation.d.ts +6 -1
  3. package/dist/events/definitions/operation.d.ts.map +1 -1
  4. package/dist/events/definitions/server.d.ts +5 -1
  5. package/dist/events/definitions/server.d.ts.map +1 -1
  6. package/dist/events/definitions/ui.d.ts +5 -3
  7. package/dist/events/definitions/ui.d.ts.map +1 -1
  8. package/dist/helpers/get-resolved-ref-deep.d.ts +27 -0
  9. package/dist/helpers/get-resolved-ref-deep.d.ts.map +1 -0
  10. package/dist/helpers/get-resolved-ref-deep.js +49 -0
  11. package/dist/mutators/operation/operation.d.ts +1 -1
  12. package/dist/mutators/operation/operation.d.ts.map +1 -1
  13. package/dist/mutators/operation/operation.js +4 -4
  14. package/dist/mutators/server.d.ts +1 -1
  15. package/dist/mutators/server.d.ts.map +1 -1
  16. package/dist/mutators/server.js +5 -2
  17. package/dist/navigation/helpers/traverse-description.d.ts.map +1 -1
  18. package/dist/navigation/helpers/traverse-description.js +19 -21
  19. package/dist/navigation/helpers/utils.js +2 -2
  20. package/dist/request-example/builder/body/build-request-body.d.ts +42 -0
  21. package/dist/request-example/builder/body/build-request-body.d.ts.map +1 -0
  22. package/dist/request-example/builder/body/build-request-body.js +134 -0
  23. package/dist/request-example/builder/body/get-request-body-example.d.ts +6 -0
  24. package/dist/request-example/builder/body/get-request-body-example.d.ts.map +1 -0
  25. package/dist/request-example/builder/body/get-request-body-example.js +31 -0
  26. package/dist/request-example/builder/body/get-selected-body-content-type.d.ts +10 -0
  27. package/dist/request-example/builder/body/get-selected-body-content-type.d.ts.map +1 -0
  28. package/dist/request-example/builder/body/get-selected-body-content-type.js +10 -0
  29. package/dist/request-example/builder/build-request.d.ts +9 -0
  30. package/dist/request-example/builder/build-request.d.ts.map +1 -0
  31. package/dist/request-example/builder/build-request.js +135 -0
  32. package/dist/request-example/builder/header/build-request-cookie-header.d.ts +25 -0
  33. package/dist/request-example/builder/header/build-request-cookie-header.d.ts.map +1 -0
  34. package/dist/request-example/builder/header/build-request-cookie-header.js +39 -0
  35. package/dist/request-example/builder/header/build-request-parameters.d.ts +24 -0
  36. package/dist/request-example/builder/header/build-request-parameters.d.ts.map +1 -0
  37. package/dist/request-example/builder/header/build-request-parameters.js +215 -0
  38. package/dist/request-example/builder/header/de-serialize-parameter.d.ts +4 -0
  39. package/dist/request-example/builder/header/de-serialize-parameter.d.ts.map +1 -0
  40. package/dist/request-example/builder/header/de-serialize-parameter.js +49 -0
  41. package/dist/request-example/builder/header/filter-global-cookies.d.ts +14 -0
  42. package/dist/request-example/builder/header/filter-global-cookies.d.ts.map +1 -0
  43. package/dist/request-example/builder/header/filter-global-cookies.js +26 -0
  44. package/dist/request-example/builder/header/is-param-disabled.d.ts +13 -0
  45. package/dist/request-example/builder/header/is-param-disabled.d.ts.map +1 -0
  46. package/dist/request-example/builder/header/is-param-disabled.js +19 -0
  47. package/dist/request-example/builder/header/matches-domain.d.ts +9 -0
  48. package/dist/request-example/builder/header/matches-domain.d.ts.map +1 -0
  49. package/dist/request-example/builder/header/matches-domain.js +27 -0
  50. package/dist/request-example/builder/header/serialize-parameter.d.ts +96 -0
  51. package/dist/request-example/builder/header/serialize-parameter.d.ts.map +1 -0
  52. package/dist/request-example/builder/header/serialize-parameter.js +222 -0
  53. package/dist/request-example/builder/helpers/apply-allow-reserved-to-url.d.ts +6 -0
  54. package/dist/request-example/builder/helpers/apply-allow-reserved-to-url.d.ts.map +1 -0
  55. package/dist/request-example/builder/helpers/apply-allow-reserved-to-url.js +69 -0
  56. package/dist/request-example/builder/helpers/get-environment-variables.d.ts +9 -0
  57. package/dist/request-example/builder/helpers/get-environment-variables.d.ts.map +1 -0
  58. package/dist/request-example/builder/helpers/get-environment-variables.js +12 -0
  59. package/dist/request-example/builder/helpers/get-example-from-schema.d.ts +40 -0
  60. package/dist/request-example/builder/helpers/get-example-from-schema.d.ts.map +1 -0
  61. package/dist/request-example/builder/helpers/get-example-from-schema.js +568 -0
  62. package/dist/request-example/builder/helpers/get-example.d.ts +10 -0
  63. package/dist/request-example/builder/helpers/get-example.d.ts.map +1 -0
  64. package/dist/request-example/builder/helpers/get-example.js +66 -0
  65. package/dist/request-example/builder/helpers/get-resolved-url.d.ts +20 -0
  66. package/dist/request-example/builder/helpers/get-resolved-url.d.ts.map +1 -0
  67. package/dist/request-example/builder/helpers/get-resolved-url.js +19 -0
  68. package/dist/request-example/builder/helpers/get-server-variables.d.ts +10 -0
  69. package/dist/request-example/builder/helpers/get-server-variables.d.ts.map +1 -0
  70. package/dist/request-example/builder/helpers/get-server-variables.js +19 -0
  71. package/dist/request-example/builder/index.d.ts +15 -0
  72. package/dist/request-example/builder/index.d.ts.map +1 -0
  73. package/dist/request-example/builder/index.js +13 -0
  74. package/dist/request-example/builder/request-factory.d.ts +60 -0
  75. package/dist/request-example/builder/request-factory.d.ts.map +1 -0
  76. package/dist/request-example/builder/request-factory.js +78 -0
  77. package/dist/request-example/builder/security/build-request-security.d.ts +24 -0
  78. package/dist/request-example/builder/security/build-request-security.d.ts.map +1 -0
  79. package/dist/request-example/builder/security/build-request-security.js +79 -0
  80. package/dist/request-example/builder/security/secret-types.d.ts +25 -0
  81. package/dist/request-example/builder/security/secret-types.d.ts.map +1 -0
  82. package/dist/request-example/builder/security/secret-types.js +1 -0
  83. package/dist/request-example/context/environment.d.ts +21 -0
  84. package/dist/request-example/context/environment.d.ts.map +1 -0
  85. package/dist/request-example/context/environment.js +49 -0
  86. package/dist/request-example/context/get-request-example-context.d.ts +57 -0
  87. package/dist/request-example/context/get-request-example-context.d.ts.map +1 -0
  88. package/dist/request-example/context/get-request-example-context.js +115 -0
  89. package/dist/request-example/context/headers.d.ts +33 -0
  90. package/dist/request-example/context/headers.d.ts.map +1 -0
  91. package/dist/request-example/context/headers.js +54 -0
  92. package/dist/request-example/context/helpers/combine-params.d.ts +4 -0
  93. package/dist/request-example/context/helpers/combine-params.d.ts.map +1 -0
  94. package/dist/request-example/context/helpers/combine-params.js +21 -0
  95. package/dist/request-example/context/index.d.ts +12 -0
  96. package/dist/request-example/context/index.d.ts.map +1 -0
  97. package/dist/request-example/context/index.js +10 -0
  98. package/dist/request-example/context/proxy.d.ts +18 -0
  99. package/dist/request-example/context/proxy.d.ts.map +1 -0
  100. package/dist/request-example/context/proxy.js +26 -0
  101. package/dist/request-example/context/security/extract-security-scheme-secrets.d.ts +10 -0
  102. package/dist/request-example/context/security/extract-security-scheme-secrets.d.ts.map +1 -0
  103. package/dist/request-example/context/security/extract-security-scheme-secrets.js +167 -0
  104. package/dist/request-example/context/security/get-security-requirements.d.ts +12 -0
  105. package/dist/request-example/context/security/get-security-requirements.d.ts.map +1 -0
  106. package/dist/request-example/context/security/get-security-requirements.js +16 -0
  107. package/dist/request-example/context/security/get-security-schemes.d.ts +9 -0
  108. package/dist/request-example/context/security/get-security-schemes.d.ts.map +1 -0
  109. package/dist/request-example/context/security/get-security-schemes.js +13 -0
  110. package/dist/request-example/context/security/get-selected-security.d.ts +15 -0
  111. package/dist/request-example/context/security/get-selected-security.d.ts.map +1 -0
  112. package/dist/request-example/context/security/get-selected-security.js +49 -0
  113. package/dist/request-example/context/security/is-auth-optional.d.ts +4 -0
  114. package/dist/request-example/context/security/is-auth-optional.d.ts.map +1 -0
  115. package/dist/request-example/context/security/is-auth-optional.js +6 -0
  116. package/dist/request-example/context/security/merge-security.d.ts +9 -0
  117. package/dist/request-example/context/security/merge-security.d.ts.map +1 -0
  118. package/dist/request-example/context/security/merge-security.js +29 -0
  119. package/dist/request-example/context/servers.d.ts +26 -0
  120. package/dist/request-example/context/servers.d.ts.map +1 -0
  121. package/dist/request-example/context/servers.js +89 -0
  122. package/dist/request-example/index.d.ts +5 -0
  123. package/dist/request-example/index.d.ts.map +1 -0
  124. package/dist/request-example/index.js +2 -0
  125. package/dist/request-example/types.d.ts +14 -0
  126. package/dist/request-example/types.d.ts.map +1 -0
  127. package/dist/request-example/types.js +1 -0
  128. package/dist/schemas/extensions/operation/index.d.ts +2 -1
  129. package/dist/schemas/extensions/operation/index.d.ts.map +1 -1
  130. package/dist/schemas/extensions/operation/index.js +1 -0
  131. package/dist/schemas/extensions/tag/x-tag-groups.d.ts +8 -8
  132. package/dist/schemas/extensions/tag/x-tag-groups.d.ts.map +1 -1
  133. package/dist/schemas/v3.1/openapi/index.d.ts +110 -1
  134. package/dist/schemas/v3.1/openapi/index.d.ts.map +1 -1
  135. package/dist/schemas/v3.1/openapi/index.js +50 -66
  136. package/package.json +15 -10
@@ -0,0 +1,89 @@
1
+ import { combineUrlAndPath } from '@scalar/helpers/url/merge-urls';
2
+ /**
3
+ * Retrieves and processes servers from an OpenAPI document.
4
+ *
5
+ * This function handles several scenarios:
6
+ * 1. No servers provided - creates a default server from document URL or fallback
7
+ * 2. Invalid server configurations - filters them out with warnings
8
+ * 3. Relative URLs - resolves them to absolute URLs using available base URLs
9
+ *
10
+ * @param servers - Array of OpenAPI server objects from the document
11
+ * @param options - Configuration options for server processing
12
+ * @returns Array of validated Server entities
13
+ */
14
+ export function getServers(servers, options = {}) {
15
+ // Handle invalid server array
16
+ if (!Array.isArray(servers)) {
17
+ return [];
18
+ }
19
+ // Process each server and filter out invalid ones
20
+ const validServers = servers.map((server) => processServerObject(server, options));
21
+ return validServers;
22
+ }
23
+ /**
24
+ * Extracts the base URL (protocol + hostname) from a document URL.
25
+ * Returns undefined if the URL is invalid.
26
+ */
27
+ function extractBaseUrlFromDocumentUrl(documentUrl) {
28
+ try {
29
+ const url = new URL(documentUrl);
30
+ const port = url.port ? `:${url.port}` : '';
31
+ return `${url.protocol}//${url.hostname}${port}`;
32
+ }
33
+ catch {
34
+ return undefined;
35
+ }
36
+ }
37
+ /**
38
+ * Gets the fallback URL from window.location.origin if available.
39
+ */
40
+ function getFallbackUrl() {
41
+ if (typeof window === 'undefined' || typeof window?.location?.origin !== 'string') {
42
+ return undefined;
43
+ }
44
+ return window.location.origin;
45
+ }
46
+ /**
47
+ * Resolves a relative server URL to an absolute URL using available base URLs.
48
+ * Uses a priority system: baseServerURL > documentUrl > fallbackUrl.
49
+ */
50
+ function resolveRelativeServerUrl(serverUrl, options) {
51
+ const { baseServerUrl: baseServerURL, documentUrl } = options;
52
+ // Priority 1: Use provided base server URL
53
+ if (baseServerURL) {
54
+ return combineUrlAndPath(baseServerURL, serverUrl);
55
+ }
56
+ // Priority 2: Extract base URL from document URL
57
+ if (documentUrl) {
58
+ const baseUrl = extractBaseUrlFromDocumentUrl(documentUrl);
59
+ if (baseUrl) {
60
+ return combineUrlAndPath(baseUrl, serverUrl);
61
+ }
62
+ }
63
+ // Priority 3: Use fallback URL (window.location.origin)
64
+ const fallbackUrl = getFallbackUrl();
65
+ if (fallbackUrl) {
66
+ return combineUrlAndPath(fallbackUrl, serverUrl);
67
+ }
68
+ // If no base URL is available, return the original URL
69
+ return serverUrl;
70
+ }
71
+ /**
72
+ * Processes a single server object, handling validation and URL resolution.
73
+ */
74
+ function processServerObject(server, options) {
75
+ // Resolve relative URLs to absolute URLs
76
+ if (server.url?.startsWith('/')) {
77
+ server.url = resolveRelativeServerUrl(server.url, options);
78
+ }
79
+ return server;
80
+ }
81
+ export const getSelectedServer = (document, operation, configServers, servers) => {
82
+ const selectedServerUrl = configServers != null
83
+ ? document?.['x-scalar-selected-server']
84
+ : (operation?.['x-scalar-selected-server'] ?? document?.['x-scalar-selected-server']);
85
+ if (selectedServerUrl == null) {
86
+ return servers[0] ?? null;
87
+ }
88
+ return servers.find(({ url }) => url === selectedServerUrl) ?? null;
89
+ };
@@ -0,0 +1,5 @@
1
+ export { buildRequest, buildRequestSecurity, deSerializeParameter, filterGlobalCookie, getEnvironmentVariables, getExample, getExampleFromBody, getExampleFromSchema, getResolvedUrl, getSelectedBodyContentType, getServerVariables, requestFactory, serializeContentValue, serializeDeepObjectStyle, serializeFormStyle, serializeFormStyleForCookies, serializePipeDelimitedStyle, serializeSimpleStyle, serializeSpaceDelimitedStyle, } from './builder/index.js';
2
+ export type { ApiKeyObjectSecret, HttpObjectSecret, OAuth2ObjectSecret, OAuthFlowAuthorizationCodeSecret, OAuthFlowClientCredentialsSecret, OAuthFlowImplicitSecret, OAuthFlowPasswordSecret, OAuthFlowsObjectSecret, OpenIdConnectObjectSecret, SecuritySchemeObjectSecret, } from './builder/index.js';
3
+ export { combineParams, getActiveEnvironment, getActiveProxyUrl, getRequestExampleContext, getSecurityRequirements, getSecuritySchemes, getSelectedSecurity, getSelectedServer, getServers, isAuthOptional, mergeSecurity, } from './context/index.js';
4
+ export type { MergedSecuritySchemes } from './context/index.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/request-example/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,0BAA0B,EAC1B,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,4BAA4B,EAC5B,2BAA2B,EAC3B,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,WAAW,CAAA;AAClB,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,gCAAgC,EAChC,gCAAgC,EAChC,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,aAAa,GACd,MAAM,WAAW,CAAA;AAClB,YAAY,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { buildRequest, buildRequestSecurity, deSerializeParameter, filterGlobalCookie, getEnvironmentVariables, getExample, getExampleFromBody, getExampleFromSchema, getResolvedUrl, getSelectedBodyContentType, getServerVariables, requestFactory, serializeContentValue, serializeDeepObjectStyle, serializeFormStyle, serializeFormStyleForCookies, serializePipeDelimitedStyle, serializeSimpleStyle, serializeSpaceDelimitedStyle, } from './builder/index.js';
2
+ export { combineParams, getActiveEnvironment, getActiveProxyUrl, getRequestExampleContext, getSecurityRequirements, getSecuritySchemes, getSelectedSecurity, getSelectedServer, getServers, isAuthOptional, mergeSecurity, } from './context/index.js';
@@ -0,0 +1,14 @@
1
+ import type { HttpMethod } from '@scalar/helpers/http/http-methods';
2
+ export type Result<T> = {
3
+ ok: true;
4
+ data: T;
5
+ } | {
6
+ ok: false;
7
+ error: string;
8
+ };
9
+ export type RequestExampleMeta = {
10
+ path: string;
11
+ method: HttpMethod;
12
+ exampleName: string;
13
+ };
14
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/request-example/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAEnE,MAAM,MAAM,MAAM,CAAC,CAAC,IAChB;IACE,EAAE,EAAE,IAAI,CAAA;IACR,IAAI,EAAE,CAAC,CAAA;CACR,GACD;IACE,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAEL,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,UAAU,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,6 @@
1
1
  export { type XBadge, XBadgeSchema, type XBadges, XBadgesSchema, } from './x-badge.js';
2
- export { type XCodeSample, XCodeSamplesSchema, } from './x-code-samples.js';
2
+ export { type XCodeSample, type XCodeSamples, XCodeSamplesSchema, } from './x-code-samples.js';
3
+ export { type XPostResponse, XPostResponseSchema, } from './x-post-response.js';
3
4
  export { type XScalarSelectedContentType, XScalarSelectedContentTypeSchema, } from './x-scalar-selected-content-type.js';
4
5
  export { XScalarStabilitySchema, XScalarStabilityValues, } from './x-scalar-stability.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schemas/extensions/operation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EACX,YAAY,EACZ,KAAK,OAAO,EACZ,aAAa,GACd,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,WAAW,EAChB,kBAAkB,GACnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,KAAK,0BAA0B,EAC/B,gCAAgC,GACjC,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schemas/extensions/operation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EACX,YAAY,EACZ,KAAK,OAAO,EACZ,aAAa,GACd,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,kBAAkB,GACnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,KAAK,aAAa,EAClB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,KAAK,0BAA0B,EAC/B,gCAAgC,GACjC,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,sBAAsB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export { XBadgeSchema, XBadgesSchema, } from './x-badge.js';
2
2
  export { XCodeSamplesSchema, } from './x-code-samples.js';
3
+ export { XPostResponseSchema, } from './x-post-response.js';
3
4
  export { XScalarSelectedContentTypeSchema, } from './x-scalar-selected-content-type.js';
4
5
  export { XScalarStabilitySchema, XScalarStabilityValues, } from './x-scalar-stability.js';
@@ -9,12 +9,12 @@ export type XTagGroup = {
9
9
  */
10
10
  tags: string[];
11
11
  } & XScalarOrder;
12
- export declare const XTagGroup: import("@scalar/validation").IntersectionSchema<(import("@scalar/validation").ObjectSchema<{
13
- 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
14
- }> | import("@scalar/validation").ObjectSchema<{
12
+ export declare const XTagGroup: import("@scalar/validation").IntersectionSchema<readonly [import("@scalar/validation").ObjectSchema<{
15
13
  name: import("@scalar/validation").StringSchema;
16
14
  tags: import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>;
17
- }>)[]>;
15
+ }>, import("@scalar/validation").ObjectSchema<{
16
+ 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
17
+ }>]>;
18
18
  /**
19
19
  * x-tagGroups
20
20
  *
@@ -43,11 +43,11 @@ export type XTagGroups = {
43
43
  'x-tagGroups'?: XTagGroup[];
44
44
  };
45
45
  export declare const XTagGroups: import("@scalar/validation").ObjectSchema<{
46
- 'x-tagGroups': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").IntersectionSchema<(import("@scalar/validation").ObjectSchema<{
47
- 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
48
- }> | import("@scalar/validation").ObjectSchema<{
46
+ 'x-tagGroups': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").IntersectionSchema<readonly [import("@scalar/validation").ObjectSchema<{
49
47
  name: import("@scalar/validation").StringSchema;
50
48
  tags: import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>;
51
- }>)[]>>>;
49
+ }>, import("@scalar/validation").ObjectSchema<{
50
+ 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
51
+ }>]>>>;
52
52
  }>;
53
53
  //# sourceMappingURL=x-tag-groups.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"x-tag-groups.d.ts","sourceRoot":"","sources":["../../../../src/schemas/extensions/tag/x-tag-groups.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,6CAA6C,CAAA;AAgBpD,MAAM,MAAM,SAAS,GAAG;IACtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE,CAAA;CACf,GAAG,YAAY,CAAA;AAEhB,eAAO,MAAM,SAAS;;;;;MAiBrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;QA/CzB;;WAEG;;QAEH;;WAEG;;;;;EA2CL,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,SAAS,EAAE,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,UAAU;;;;;;;EAYtB,CAAA"}
1
+ {"version":3,"file":"x-tag-groups.d.ts","sourceRoot":"","sources":["../../../../src/schemas/extensions/tag/x-tag-groups.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,6CAA6C,CAAA;AAgBpD,MAAM,MAAM,SAAS,GAAG;IACtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE,CAAA;CACf,GAAG,YAAY,CAAA;AAEhB,eAAO,MAAM,SAAS;;;;;IAiBrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;QA/CzB;;WAEG;;QAEH;;WAEG;;;;;EA2CL,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,SAAS,EAAE,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,UAAU;;;;;;;EAYtB,CAAA"}
@@ -1,3 +1,112 @@
1
1
  import { type Schema } from '@scalar/validation';
2
- export declare const generateSchema: (maybeRef: (inner: Schema) => Schema) => import("@scalar/validation").IntersectionSchema<readonly import("@scalar/validation").ObjectSchema<any>[]>;
2
+ export declare const generateSchema: (maybeRef: (inner: Schema) => Schema) => import("@scalar/validation").IntersectionSchema<readonly [import("@scalar/validation").ObjectSchema<{
3
+ openapi: import("@scalar/validation").StringSchema;
4
+ info: import("@scalar/validation").IntersectionSchema<readonly [import("@scalar/validation").ObjectSchema<{
5
+ title: import("@scalar/validation").StringSchema;
6
+ version: import("@scalar/validation").StringSchema;
7
+ summary: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
8
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
9
+ termsOfService: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
10
+ contact: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ObjectSchema<{
11
+ name: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
12
+ url: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
13
+ email: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
14
+ }>>;
15
+ license: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ObjectSchema<{
16
+ name: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
17
+ identifier: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
18
+ url: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
19
+ }>>;
20
+ }>, import("@scalar/validation").ObjectSchema<{
21
+ 'x-scalar-sdk-installation': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").ObjectSchema<{
22
+ lang: import("@scalar/validation").StringSchema;
23
+ source: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
24
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
25
+ }>>>;
26
+ }>]>;
27
+ jsonSchemaDialect: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
28
+ servers: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").ObjectSchema<{
29
+ url: import("@scalar/validation").StringSchema;
30
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
31
+ variables: import("@scalar/validation").OptionalSchema<import("@scalar/validation").RecordSchema<import("@scalar/validation").StringSchema, import("@scalar/validation").ObjectSchema<{
32
+ enum: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
33
+ default: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
34
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
35
+ }>>>;
36
+ }>>>;
37
+ paths: import("@scalar/validation").OptionalSchema<import("@scalar/validation").RecordSchema<import("@scalar/validation").StringSchema, import("@scalar/validation").ObjectSchema<Record<string, any>>>>;
38
+ webhooks: import("@scalar/validation").OptionalSchema<import("@scalar/validation").RecordSchema<import("@scalar/validation").StringSchema, import("@scalar/validation").ObjectSchema<Record<string, any>>>>;
39
+ components: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ObjectSchema<Record<string, any>>>;
40
+ security: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").RecordSchema<import("@scalar/validation").StringSchema, import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>>>;
41
+ tags: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").IntersectionSchema<readonly [import("@scalar/validation").ObjectSchema<{
42
+ name: import("@scalar/validation").StringSchema;
43
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
44
+ externalDocs: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ObjectSchema<{
45
+ url: import("@scalar/validation").StringSchema;
46
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
47
+ }>>;
48
+ }>, import("@scalar/validation").ObjectSchema<{
49
+ 'x-displayName': import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
50
+ }>, import("@scalar/validation").ObjectSchema<{
51
+ 'x-internal': import("@scalar/validation").OptionalSchema<import("@scalar/validation").BooleanSchema>;
52
+ }>, import("@scalar/validation").ObjectSchema<{
53
+ 'x-scalar-ignore': import("@scalar/validation").OptionalSchema<import("@scalar/validation").BooleanSchema>;
54
+ }>, import("@scalar/validation").ObjectSchema<{
55
+ 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
56
+ }>]>>>;
57
+ externalDocs: import("@scalar/validation").OptionalSchema<import("@scalar/validation").ObjectSchema<{
58
+ url: import("@scalar/validation").StringSchema;
59
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
60
+ }>>;
61
+ }>, import("@scalar/validation").ObjectSchema<{
62
+ 'x-original-oas-version': import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
63
+ 'x-scalar-original-source-url': import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
64
+ "x-scalar-navigation": import("@scalar/validation").OptionalSchema<import("@scalar/validation").AnySchema>;
65
+ }>, import("@scalar/validation").ObjectSchema<{
66
+ 'x-tagGroups': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").IntersectionSchema<readonly [import("@scalar/validation").ObjectSchema<{
67
+ name: import("@scalar/validation").StringSchema;
68
+ tags: import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>;
69
+ }>, import("@scalar/validation").ObjectSchema<{
70
+ 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
71
+ }>]>>>;
72
+ }>, import("@scalar/validation").ObjectSchema<{
73
+ 'x-scalar-environments': import("@scalar/validation").OptionalSchema<import("@scalar/validation").RecordSchema<import("@scalar/validation").StringSchema, import("@scalar/validation").ObjectSchema<{
74
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
75
+ color: import("@scalar/validation").StringSchema;
76
+ variables: import("@scalar/validation").ArraySchema<import("@scalar/validation").ObjectSchema<{
77
+ name: import("@scalar/validation").StringSchema;
78
+ value: import("@scalar/validation").UnionSchema<(import("@scalar/validation").StringSchema | import("@scalar/validation").ObjectSchema<{
79
+ description: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
80
+ default: import("@scalar/validation").StringSchema;
81
+ }>)[]>;
82
+ }>>;
83
+ }>>>;
84
+ }>, import("@scalar/validation").ObjectSchema<{
85
+ 'x-scalar-selected-server': import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
86
+ }>, import("@scalar/validation").ObjectSchema<{
87
+ 'x-scalar-icon': import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
88
+ }>, import("@scalar/validation").ObjectSchema<{
89
+ 'x-scalar-order': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").StringSchema>>;
90
+ }>, import("@scalar/validation").ObjectSchema<{
91
+ 'x-scalar-cookies': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ArraySchema<import("@scalar/validation").ObjectSchema<{
92
+ name: import("@scalar/validation").StringSchema;
93
+ value: import("@scalar/validation").StringSchema;
94
+ domain: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
95
+ path: import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
96
+ isDisabled: import("@scalar/validation").OptionalSchema<import("@scalar/validation").BooleanSchema>;
97
+ }>>>;
98
+ }>, import("@scalar/validation").ObjectSchema<{
99
+ 'x-scalar-original-document-hash': import("@scalar/validation").StringSchema;
100
+ }>, import("@scalar/validation").ObjectSchema<{
101
+ 'x-scalar-is-dirty': import("@scalar/validation").OptionalSchema<import("@scalar/validation").BooleanSchema>;
102
+ }>, import("@scalar/validation").ObjectSchema<{
103
+ 'x-scalar-active-environment': import("@scalar/validation").OptionalSchema<import("@scalar/validation").StringSchema>;
104
+ }>, import("@scalar/validation").ObjectSchema<{
105
+ 'x-scalar-watch-mode': import("@scalar/validation").OptionalSchema<import("@scalar/validation").BooleanSchema>;
106
+ }>, import("@scalar/validation").ObjectSchema<{
107
+ 'x-scalar-registry-meta': import("@scalar/validation").OptionalSchema<import("@scalar/validation").ObjectSchema<{
108
+ namespace: import("@scalar/validation").StringSchema;
109
+ slug: import("@scalar/validation").StringSchema;
110
+ }>>;
111
+ }>]>;
3
112
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schemas/v3.1/openapi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAaZ,MAAM,oBAAoB,CAAA;AAyC3B,eAAO,MAAM,cAAc,GAAI,UAAU,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,+GAgiCjE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schemas/v3.1/openapi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAaZ,MAAM,oBAAoB,CAAA;AAyC3B,eAAO,MAAM,cAAc,GAAI,UAAU,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6gCjE,CAAA"}
@@ -150,7 +150,7 @@ export const generateSchema = (maybeRef) => {
150
150
  XAdditionalPropertiesName,
151
151
  XTags,
152
152
  ];
153
- const coreSchemaProperties = {
153
+ const coreSchemaProperties = object({
154
154
  name: optional(string({ typeComment: 'Schema name (extension).' })),
155
155
  title: optional(string({ typeComment: 'A title for the schema.' })),
156
156
  description: optional(string({ typeComment: 'A description of the schema.' })),
@@ -177,64 +177,46 @@ export const generateSchema = (maybeRef) => {
177
177
  oneOf: optional(array(maybeRef(lazy(() => schema)), { typeName: 'SchemaObjectOneOf' })),
178
178
  anyOf: optional(array(maybeRef(lazy(() => schema)), { typeName: 'SchemaObjectAnyOf' })),
179
179
  not: optional(maybeRef(lazy(() => schema))),
180
- };
181
- const schemaScalarMarker = intersection([
182
- object({ __scalar_: string({ typeComment: 'Internal marker for schema object disambiguation.' }) }),
183
- object(coreSchemaProperties, { typeName: 'JsonSchemaCoreMarked' }),
184
- ...schemaExtensionObjects,
185
- ]);
186
- const numericSchema = intersection([
187
- object({
188
- ...coreSchemaProperties,
189
- type: union([literal('number'), literal('integer')]),
190
- format: optional(string({ typeComment: 'Different subtypes.' })),
191
- multipleOf: optional(number({ typeComment: 'Number must be a multiple of this value.' })),
192
- maximum: optional(number({ typeComment: 'Maximum value (inclusive).' })),
193
- exclusiveMaximum: optional(number({ typeComment: 'Maximum value (exclusive).' })),
194
- minimum: optional(number({ typeComment: 'Minimum value (inclusive).' })),
195
- exclusiveMinimum: optional(number({ typeComment: 'Minimum value (exclusive).' })),
196
- }, { typeName: 'NumberSchemaObject' }),
197
- ...schemaExtensionObjects,
198
- ]);
199
- const stringSchema = intersection([
200
- object({
201
- ...coreSchemaProperties,
202
- type: literal('string'),
203
- format: optional(string({ typeComment: 'Different subtypes.' })),
204
- maxLength: optional(number({ typeComment: 'Maximum string length.' })),
205
- minLength: optional(number({ typeComment: 'Minimum string length.' })),
206
- pattern: optional(string({ typeComment: 'Regular expression pattern.' })),
207
- }, { typeName: 'StringSchemaObject' }),
208
- ...schemaExtensionObjects,
209
- ]);
210
- const objectSchema = intersection([
211
- object({
212
- ...coreSchemaProperties,
213
- type: literal('object'),
214
- maxProperties: optional(number({ typeComment: 'Maximum number of properties.' })),
215
- minProperties: optional(number({ typeComment: 'Minimum number of properties.' })),
216
- properties: optional(record(string(), maybeRef(lazy(() => schema)), { typeName: 'SchemaObjectProperties' })),
217
- required: optional(array(string(), { typeName: 'SchemaObjectRequired' })),
218
- additionalProperties: optional(union([boolean(), maybeRef(lazy(() => schema))], {
219
- typeName: 'SchemaObjectAdditionalProperties',
220
- })),
221
- patternProperties: optional(record(string(), maybeRef(lazy(() => schema)), { typeName: 'SchemaObjectPatternProperties' })),
222
- propertyNames: optional(maybeRef(lazy(() => schema))),
223
- }, { typeName: 'ObjectSchemaObject' }),
224
- ...schemaExtensionObjects,
225
- ]);
226
- const arraySchema = intersection([
227
- object({
228
- ...coreSchemaProperties,
229
- type: literal('array'),
230
- maxItems: optional(number({ typeComment: 'Maximum number of items in array.' })),
231
- minItems: optional(number({ typeComment: 'Minimum number of items in array.' })),
232
- uniqueItems: optional(boolean({ typeComment: 'Whether array items must be unique.' })),
233
- items: optional(maybeRef(lazy(() => schema))),
234
- prefixItems: optional(array(maybeRef(lazy(() => schema)), { typeComment: 'Schema for tuple validation.' })),
235
- }, { typeName: 'ArraySchemaObject' }),
236
- ...schemaExtensionObjects,
237
- ]);
180
+ });
181
+ const schemaScalarMarker = object({
182
+ __scalar_: string({ typeComment: 'Internal marker for schema object disambiguation.' }),
183
+ });
184
+ const numericSchema = object({
185
+ type: union([literal('number'), literal('integer')]),
186
+ format: optional(string({ typeComment: 'Different subtypes.' })),
187
+ multipleOf: optional(number({ typeComment: 'Number must be a multiple of this value.' })),
188
+ maximum: optional(number({ typeComment: 'Maximum value (inclusive).' })),
189
+ exclusiveMaximum: optional(number({ typeComment: 'Maximum value (exclusive).' })),
190
+ minimum: optional(number({ typeComment: 'Minimum value (inclusive).' })),
191
+ exclusiveMinimum: optional(number({ typeComment: 'Minimum value (exclusive).' })),
192
+ }, { typeName: 'NumberSchemaObject' });
193
+ const stringSchema = object({
194
+ type: literal('string'),
195
+ format: optional(string({ typeComment: 'Different subtypes.' })),
196
+ maxLength: optional(number({ typeComment: 'Maximum string length.' })),
197
+ minLength: optional(number({ typeComment: 'Minimum string length.' })),
198
+ pattern: optional(string({ typeComment: 'Regular expression pattern.' })),
199
+ }, { typeName: 'StringSchemaObject' });
200
+ const objectSchema = object({
201
+ type: literal('object'),
202
+ maxProperties: optional(number({ typeComment: 'Maximum number of properties.' })),
203
+ minProperties: optional(number({ typeComment: 'Minimum number of properties.' })),
204
+ properties: optional(record(string(), maybeRef(lazy(() => schema)), { typeName: 'SchemaObjectProperties' })),
205
+ required: optional(array(string(), { typeName: 'SchemaObjectRequired' })),
206
+ additionalProperties: optional(union([boolean(), maybeRef(lazy(() => schema))], {
207
+ typeName: 'SchemaObjectAdditionalProperties',
208
+ })),
209
+ patternProperties: optional(record(string(), maybeRef(lazy(() => schema)), { typeName: 'SchemaObjectPatternProperties' })),
210
+ propertyNames: optional(maybeRef(lazy(() => schema))),
211
+ }, { typeName: 'ObjectSchemaObject' });
212
+ const arraySchema = object({
213
+ type: literal('array'),
214
+ maxItems: optional(number({ typeComment: 'Maximum number of items in array.' })),
215
+ minItems: optional(number({ typeComment: 'Minimum number of items in array.' })),
216
+ uniqueItems: optional(boolean({ typeComment: 'Whether array items must be unique.' })),
217
+ items: optional(maybeRef(lazy(() => schema))),
218
+ prefixItems: optional(array(maybeRef(lazy(() => schema)), { typeComment: 'Schema for tuple validation.' })),
219
+ }, { typeName: 'ArraySchemaObject' });
238
220
  const schemaTypeMulti = union([
239
221
  literal('null'),
240
222
  literal('boolean'),
@@ -244,14 +226,16 @@ export const generateSchema = (maybeRef) => {
244
226
  literal('object'),
245
227
  literal('array'),
246
228
  ], { typeName: 'SchemaObjectMultiTypeKeywords' });
247
- const otherTypeSchema = intersection([
248
- object({
249
- ...coreSchemaProperties,
250
- type: union([literal('null'), literal('boolean'), array(schemaTypeMulti, { typeName: 'SchemaObjectTypeKeywordList' })], { typeName: 'SchemaObjectOtherTypeKeyword' }),
251
- }, { typeName: 'MultiTypeSchemaObject' }),
229
+ const otherTypeSchema = object({
230
+ type: union([literal('null'), literal('boolean'), array(schemaTypeMulti)], {
231
+ typeName: 'SchemaObjectOtherTypeKeyword',
232
+ }),
233
+ }, { typeName: 'MultiTypeSchemaObject' });
234
+ const schema = intersection([
235
+ coreSchemaProperties,
252
236
  ...schemaExtensionObjects,
253
- ]);
254
- const schema = union([schemaScalarMarker, otherTypeSchema, numericSchema, stringSchema, objectSchema, arraySchema], { typeName: 'SchemaObject' });
237
+ union([schemaScalarMarker, otherTypeSchema, numericSchema, stringSchema, objectSchema, arraySchema]),
238
+ ], { typeName: 'SchemaObject' });
255
239
  const securitySchemeBase = object({
256
240
  description: optional(string({
257
241
  typeComment: 'A description for security scheme. CommonMark syntax MAY be used for rich text representation.',
package/package.json CHANGED
@@ -16,7 +16,7 @@
16
16
  "openapi",
17
17
  "scalar"
18
18
  ],
19
- "version": "0.42.0",
19
+ "version": "0.43.0",
20
20
  "engines": {
21
21
  "node": ">=22"
22
22
  },
@@ -72,6 +72,11 @@
72
72
  "types": "./dist/plugins/client/index.d.ts",
73
73
  "default": "./dist/plugins/client/index.js"
74
74
  },
75
+ "./request-example": {
76
+ "import": "./dist/request-example/index.js",
77
+ "types": "./dist/request-example/index.d.ts",
78
+ "default": "./dist/request-example/index.js"
79
+ },
75
80
  "./resolve": {
76
81
  "import": "./dist/resolve.js",
77
82
  "types": "./dist/resolve.d.ts",
@@ -135,21 +140,21 @@
135
140
  "dependencies": {
136
141
  "@scalar/typebox": "0.1.3",
137
142
  "github-slugger": "2.0.0",
143
+ "js-base64": "^3.7.8",
138
144
  "type-fest": "^5.3.1",
139
- "vue": "^3.5.26",
145
+ "vue": "^3.5.30",
140
146
  "yaml": "^2.8.0",
141
- "@scalar/code-highlight": "0.3.1",
142
- "@scalar/helpers": "0.4.2",
143
- "@scalar/json-magic": "0.12.4",
144
- "@scalar/openapi-upgrader": "0.2.3",
145
- "@scalar/snippetz": "0.7.7",
146
- "@scalar/types": "0.7.5",
147
- "@scalar/validation": "0.2.0"
147
+ "@scalar/helpers": "0.4.3",
148
+ "@scalar/json-magic": "0.12.5",
149
+ "@scalar/openapi-upgrader": "0.2.4",
150
+ "@scalar/types": "0.7.6",
151
+ "@scalar/snippetz": "0.7.8",
152
+ "@scalar/validation": "0.3.0"
148
153
  },
149
154
  "devDependencies": {
150
155
  "@google-cloud/storage": "7.16.0",
151
156
  "fake-indexeddb": "6.2.3",
152
- "fastify": "^5.3.3",
157
+ "fastify": "^5.8.1",
153
158
  "vite": "8.0.0",
154
159
  "vitest": "4.1.0"
155
160
  },