@scalar/workspace-store 0.65.0 → 0.67.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.
- package/CHANGELOG.md +55 -0
- package/dist/client.js +1 -1
- package/dist/entities/auth/schema.d.ts +115 -20
- package/dist/entities/auth/schema.d.ts.map +1 -1
- package/dist/events/definitions/auth.d.ts +1 -2
- package/dist/events/definitions/auth.d.ts.map +1 -1
- package/dist/events/definitions/operation.d.ts +5 -4
- package/dist/events/definitions/operation.d.ts.map +1 -1
- package/dist/events/definitions/server.d.ts +1 -2
- package/dist/events/definitions/server.d.ts.map +1 -1
- package/dist/events/definitions/ui.d.ts +3 -4
- package/dist/events/definitions/ui.d.ts.map +1 -1
- package/dist/events/old-definitions.d.ts +1 -2
- package/dist/events/old-definitions.d.ts.map +1 -1
- package/dist/helpers/encode-chunk-name.d.ts.map +1 -1
- package/dist/helpers/encode-chunk-name.js +6 -1
- package/dist/helpers/for-each-path-item-operation.d.ts +6 -5
- package/dist/helpers/for-each-path-item-operation.d.ts.map +1 -1
- package/dist/helpers/for-each-path-item-operation.js +36 -10
- package/dist/helpers/get-parameter-example.d.ts +14 -0
- package/dist/helpers/get-parameter-example.d.ts.map +1 -0
- package/dist/helpers/get-parameter-example.js +19 -0
- package/dist/helpers/merge-object.d.ts.map +1 -1
- package/dist/helpers/merge-object.js +9 -3
- package/dist/helpers/querystring-parameter.d.ts +21 -0
- package/dist/helpers/querystring-parameter.d.ts.map +1 -0
- package/dist/helpers/querystring-parameter.js +108 -0
- package/dist/mutators/operation/operation.d.ts.map +1 -1
- package/dist/mutators/operation/operation.js +4 -7
- package/dist/mutators/operation/parameters.d.ts.map +1 -1
- package/dist/mutators/operation/parameters.js +43 -3
- package/dist/navigation/get-navigation-options.d.ts.map +1 -1
- package/dist/navigation/get-navigation-options.js +19 -4
- package/dist/navigation/helpers/traverse-paths.d.ts.map +1 -1
- package/dist/navigation/helpers/traverse-paths.js +2 -2
- package/dist/navigation/helpers/traverse-webhooks.d.ts.map +1 -1
- package/dist/navigation/helpers/traverse-webhooks.js +2 -2
- package/dist/navigation/helpers/update-order-ids.d.ts +1 -2
- package/dist/navigation/helpers/update-order-ids.d.ts.map +1 -1
- package/dist/plugins/bundler/index.d.ts.map +1 -1
- package/dist/plugins/bundler/index.js +3 -2
- package/dist/request-example/builder/body/build-request-body.d.ts +1 -1
- package/dist/request-example/builder/body/build-request-body.d.ts.map +1 -1
- package/dist/request-example/builder/body/build-request-body.js +2 -2
- package/dist/request-example/builder/body/get-request-body-example.d.ts +4 -4
- package/dist/request-example/builder/body/get-request-body-example.d.ts.map +1 -1
- package/dist/request-example/builder/body/get-request-body-example.js +29 -5
- package/dist/request-example/builder/build-request.d.ts.map +1 -1
- package/dist/request-example/builder/build-request.js +2 -1
- package/dist/request-example/builder/header/build-request-parameters.d.ts +2 -0
- package/dist/request-example/builder/header/build-request-parameters.d.ts.map +1 -1
- package/dist/request-example/builder/header/build-request-parameters.js +49 -10
- package/dist/request-example/builder/header/is-param-disabled.d.ts.map +1 -1
- package/dist/request-example/builder/header/is-param-disabled.js +3 -1
- package/dist/request-example/builder/helpers/example-evaluation.d.ts +19 -0
- package/dist/request-example/builder/helpers/example-evaluation.d.ts.map +1 -0
- package/dist/request-example/builder/helpers/example-evaluation.js +2 -0
- package/dist/request-example/builder/helpers/get-example-from-schema.d.ts +11 -3
- package/dist/request-example/builder/helpers/get-example-from-schema.d.ts.map +1 -1
- package/dist/request-example/builder/helpers/get-example-from-schema.js +66 -17
- package/dist/request-example/builder/request-factory.d.ts +10 -1
- package/dist/request-example/builder/request-factory.d.ts.map +1 -1
- package/dist/request-example/builder/request-factory.js +12 -3
- package/dist/request-example/builder/resolve-request-factory-url.d.ts.map +1 -1
- package/dist/request-example/builder/resolve-request-factory-url.js +18 -2
- package/dist/request-example/context/headers.d.ts +1 -2
- package/dist/request-example/context/headers.d.ts.map +1 -1
- package/dist/request-example/index.d.ts +4 -0
- package/dist/request-example/index.d.ts.map +1 -1
- package/dist/request-example/index.js +3 -0
- package/dist/request-example/types.d.ts +1 -2
- package/dist/request-example/types.d.ts.map +1 -1
- package/dist/request-example/xml/get-xml-body-example.d.ts +8 -0
- package/dist/request-example/xml/get-xml-body-example.d.ts.map +1 -0
- package/dist/request-example/xml/get-xml-body-example.js +21 -0
- package/dist/request-example/xml/get-xml-example.d.ts +21 -0
- package/dist/request-example/xml/get-xml-example.d.ts.map +1 -0
- package/dist/request-example/xml/get-xml-example.js +352 -0
- package/dist/request-example/xml/match-xml-property-pattern.d.ts +10 -0
- package/dist/request-example/xml/match-xml-property-pattern.d.ts.map +1 -0
- package/dist/request-example/xml/match-xml-property-pattern.js +48 -0
- package/dist/request-example/xml/serialize-xml-part.d.ts +4 -5
- package/dist/request-example/xml/serialize-xml-part.d.ts.map +1 -1
- package/dist/request-example/xml/serialize-xml-part.js +14 -8
- package/dist/request-example/xml/write-xml.d.ts +9 -0
- package/dist/request-example/xml/write-xml.d.ts.map +1 -0
- package/dist/request-example/xml/write-xml.js +119 -0
- package/dist/request-example/xml/xml-node.d.ts +32 -0
- package/dist/request-example/xml/xml-node.d.ts.map +1 -0
- package/dist/request-example/xml/xml-node.js +1 -0
- package/dist/schemas/extensions/operation/x-code-samples.d.ts +22 -0
- package/dist/schemas/extensions/operation/x-code-samples.d.ts.map +1 -1
- package/dist/schemas/extensions/operation/x-code-samples.js +4 -0
- package/dist/schemas/navigation.d.ts +40 -34
- package/dist/schemas/navigation.d.ts.map +1 -1
- package/dist/schemas/navigation.js +2 -3
- package/dist/schemas/reference-config/index.d.ts +23 -4
- package/dist/schemas/reference-config/index.d.ts.map +1 -1
- package/dist/schemas/reference-config/settings.d.ts +23 -4
- package/dist/schemas/reference-config/settings.d.ts.map +1 -1
- package/dist/schemas/v3.1/strict/openapi-document.d.ts +770 -140
- package/dist/schemas/v3.1/strict/openapi-document.d.ts.map +1 -1
- package/dist/schemas/v3.1/strict/operation.d.ts +8 -0
- package/dist/schemas/v3.1/strict/operation.d.ts.map +1 -1
- package/dist/schemas/v3.1/strict/path-item.d.ts +19 -0
- package/dist/schemas/v3.1/strict/path-item.d.ts.map +1 -1
- package/dist/schemas/v3.1/strict/path-item.js +5 -0
- package/dist/schemas/v3.2/openapi/index.d.ts.map +1 -1
- package/dist/schemas/v3.2/openapi/index.js +2 -0
- package/dist/schemas/v3.2/openapi/reference.d.ts.map +1 -1
- package/dist/schemas/v3.2/openapi/reference.js +11 -3
- package/dist/schemas/v3.2/strict/openapi-document.d.ts +805 -140
- package/dist/schemas/v3.2/strict/openapi-document.d.ts.map +1 -1
- package/dist/schemas/v3.2/strict/operation.d.ts +8 -0
- package/dist/schemas/v3.2/strict/operation.d.ts.map +1 -1
- package/dist/schemas/v3.2/strict/parameter.d.ts +14 -0
- package/dist/schemas/v3.2/strict/parameter.d.ts.map +1 -1
- package/dist/schemas/v3.2/strict/parameter.js +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +34 -13
- package/package.json +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { HttpMethod } from '@scalar/helpers/http/http-methods';
|
|
2
1
|
import type { OperationObject, ParameterObject } from '../../schemas/v3.2/strict/openapi-document.js';
|
|
3
2
|
/**
|
|
4
3
|
* Describes the minimal identity for an operation in the workspace document.
|
|
@@ -10,7 +9,7 @@ import type { OperationObject, ParameterObject } from '../../schemas/v3.2/strict
|
|
|
10
9
|
* ```
|
|
11
10
|
*/
|
|
12
11
|
export type OperationMeta = {
|
|
13
|
-
method:
|
|
12
|
+
method: string;
|
|
14
13
|
path: string;
|
|
15
14
|
};
|
|
16
15
|
/**
|
|
@@ -50,7 +49,7 @@ export type OperationEvents = {
|
|
|
50
49
|
/** The path for the new operation (will be normalized to start with /) */
|
|
51
50
|
path: string;
|
|
52
51
|
/** The HTTP method for the operation */
|
|
53
|
-
method:
|
|
52
|
+
method: string;
|
|
54
53
|
/** The operation object to create */
|
|
55
54
|
operation: OperationObject;
|
|
56
55
|
/** The callback to call when the operation is created */
|
|
@@ -75,7 +74,7 @@ export type OperationEvents = {
|
|
|
75
74
|
'operation:update:pathMethod': {
|
|
76
75
|
payload: {
|
|
77
76
|
/** The new or old method for the operation */
|
|
78
|
-
method:
|
|
77
|
+
method: string;
|
|
79
78
|
/** The new or old path for the operation */
|
|
80
79
|
path: string;
|
|
81
80
|
};
|
|
@@ -258,6 +257,8 @@ export type OperationEvents = {
|
|
|
258
257
|
name: string;
|
|
259
258
|
value: string | File | unknown[] | undefined;
|
|
260
259
|
isDisabled: boolean;
|
|
260
|
+
/** Distinguishes untouched optional fields from deliberate checkbox choices. */
|
|
261
|
+
isDisabledByDefault?: boolean;
|
|
261
262
|
isArray?: boolean;
|
|
262
263
|
}[];
|
|
263
264
|
/** The content type of the request body */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import type { HttpMethod } from '@scalar/helpers/http/http-methods';
|
|
2
1
|
import type { ServerObject } from '../../schemas/v3.2/strict/openapi-document.js';
|
|
3
2
|
export type ServerMeta = {
|
|
4
3
|
type: 'document';
|
|
5
4
|
} | {
|
|
6
5
|
type: 'operation';
|
|
7
6
|
path: string;
|
|
8
|
-
method:
|
|
7
|
+
method: string;
|
|
9
8
|
};
|
|
10
9
|
export type ServerEvents = {
|
|
11
10
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAE1E,MAAM,MAAM,UAAU,GAClB;IACE,IAAI,EAAE,UAAU,CAAA;CACjB,GACD;IACE,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAEL,MAAM,MAAM,YAAY,GAAG;IACzB;;OAEG;IACH,2BAA2B,EAAE;QAC3B,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;OAEG;IACH,mBAAmB,EAAE;QACnB,8CAA8C;QAC9C,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,kEAAkE;QAClE,MAAM,CAAC,EAAE,OAAO,CAAA;QAChB,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;OAEG;IACH,sBAAsB,EAAE;QACtB,wCAAwC;QACxC,KAAK,EAAE,MAAM,CAAA;QACb,uCAAuC;QACvC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;QAC7B,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;OAEG;IACH,yBAAyB,EAAE;QACzB,wCAAwC;QACxC,KAAK,EAAE,MAAM,CAAA;QACb,wCAAwC;QACxC,GAAG,EAAE,MAAM,CAAA;QACX,oCAAoC;QACpC,KAAK,EAAE,MAAM,CAAA;QACb,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;OAEG;IACH,wBAAwB,EAAE;QACxB,sCAAsC;QACtC,GAAG,EAAE,MAAM,CAAA;QACX,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;OAEG;IACH,sBAAsB,EAAE;QACtB,wCAAwC;QACxC,KAAK,EAAE,MAAM,CAAA;QACb,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;OAEG;IACH,sBAAsB,EAAE;QACtB,0CAA0C;QAC1C,IAAI,EAAE,UAAU,CAAA;KACjB,CAAA;IACD;;;;;OAKG;IACH,iCAAiC,EAAE;QACjC,mEAAmE;QACnE,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD;;OAEG;IACH,kCAAkC,EAAE;QAClC,mEAAmE;QACnE,IAAI,EAAE,MAAM,CAAA;QACZ,wCAAwC;QACxC,GAAG,EAAE,MAAM,CAAA;QACX,oCAAoC;QACpC,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;CACF,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { HttpMethod } from '@scalar/helpers/http/http-methods';
|
|
2
1
|
import type { TraversedExample, TraversedTag } from '../../schemas/navigation.js';
|
|
3
2
|
/**
|
|
4
3
|
* Available actions that can be triggered from the command palette.
|
|
@@ -166,7 +165,7 @@ export type UIEvents = {
|
|
|
166
165
|
requestBodyCompositionSelection?: Record<string, number>;
|
|
167
166
|
} | {
|
|
168
167
|
/** The HTTP method of the operation to load (e.g., GET, POST) */
|
|
169
|
-
method:
|
|
168
|
+
method: string;
|
|
170
169
|
/** The path of the operation to load (e.g., /users/{id}) */
|
|
171
170
|
path: string;
|
|
172
171
|
/** Optional example name to load for this operation */
|
|
@@ -265,13 +264,13 @@ export type UIEvents = {
|
|
|
265
264
|
page: 'example';
|
|
266
265
|
documentSlug?: string;
|
|
267
266
|
path: string;
|
|
268
|
-
method:
|
|
267
|
+
method: string;
|
|
269
268
|
exampleName: string;
|
|
270
269
|
} | {
|
|
271
270
|
page: 'operation';
|
|
272
271
|
path: 'overview' | 'servers' | 'authentication' | 'editor';
|
|
273
272
|
operationPath: string;
|
|
274
|
-
method:
|
|
273
|
+
method: string;
|
|
275
274
|
documentSlug?: string;
|
|
276
275
|
});
|
|
277
276
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../src/events/definitions/ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { HttpMethod } from '@scalar/helpers/http/http-methods';
|
|
2
1
|
import type { AvailableClients } from '@scalar/snippetz';
|
|
3
2
|
import type { Simplify } from 'type-fest';
|
|
4
3
|
import type { ServerObject } from '../schemas/v3.2/strict/openapi-document.js';
|
|
@@ -148,7 +147,7 @@ export type ApiReferenceEvents<T extends keyof ServerObject = keyof ServerObject
|
|
|
148
147
|
/** Add a new document to the store */
|
|
149
148
|
'scalar-open-client': {
|
|
150
149
|
detail: {
|
|
151
|
-
method:
|
|
150
|
+
method: string;
|
|
152
151
|
path: string;
|
|
153
152
|
};
|
|
154
153
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"old-definitions.d.ts","sourceRoot":"","sources":["../../src/events/old-definitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"old-definitions.d.ts","sourceRoot":"","sources":["../../src/events/old-definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode-chunk-name.d.ts","sourceRoot":"","sources":["../../src/helpers/encode-chunk-name.ts"],"names":[],"mappings":"AAEA,qEAAqE;AACrE,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,
|
|
1
|
+
{"version":3,"file":"encode-chunk-name.d.ts","sourceRoot":"","sources":["../../src/helpers/encode-chunk-name.ts"],"names":[],"mappings":"AAEA,qEAAqE;AACrE,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MAe9C,CAAA"}
|
|
@@ -3,7 +3,12 @@ import { escapeJsonPointer } from '@scalar/json-magic/helpers/escape-json-pointe
|
|
|
3
3
|
export const encodeChunkName = (name) => {
|
|
4
4
|
// JSON Pointer escaping preserves existing names and reserves ~x for filesystem escapes.
|
|
5
5
|
const escaped = escapeJsonPointer(name).replace(/[^a-zA-Z0-9_.~{}-]/gu, (character) => `~x${character.codePointAt(0)?.toString(16)}~`);
|
|
6
|
-
|
|
6
|
+
// Scan once from the end to avoid regex backtracking over long runs of interior dots.
|
|
7
|
+
let trailingDotsStart = escaped.length;
|
|
8
|
+
while (trailingDotsStart > 0 && escaped[trailingDotsStart - 1] === '.') {
|
|
9
|
+
trailingDotsStart--;
|
|
10
|
+
}
|
|
11
|
+
const portable = escaped.slice(0, trailingDotsStart) + '~x2e~'.repeat(escaped.length - trailingDotsStart);
|
|
7
12
|
// Windows device names remain reserved even when followed by a file extension.
|
|
8
13
|
return /^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\.|$)/i.test(portable) || portable === '' ? `~x~${portable}` : portable;
|
|
9
14
|
};
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { HttpMethod } from '@scalar/helpers/http/http-methods';
|
|
2
1
|
import { type NodeInput } from '../helpers/get-resolved-ref.js';
|
|
3
2
|
import type { OperationObject } from '../schemas/v3.2/strict/operation.js';
|
|
4
3
|
import type { PathItemObject } from '../schemas/v3.2/strict/path-item.js';
|
|
@@ -15,11 +14,11 @@ export declare const getResolvedPathItem: (pathItem: NodeInput<PathItemObject> |
|
|
|
15
14
|
/**
|
|
16
15
|
* Returns an operation from a path item, resolving $ref wrappers on the path item first.
|
|
17
16
|
*/
|
|
18
|
-
export declare const getPathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, method:
|
|
17
|
+
export declare const getPathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, method: string) => NodeInput<OperationObject> | undefined;
|
|
19
18
|
/**
|
|
20
19
|
* Assigns an operation on a path item, including when the path item is a $ref wrapper.
|
|
21
20
|
*/
|
|
22
|
-
export declare const setPathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, method:
|
|
21
|
+
export declare const setPathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, method: string, operation: OperationObject) => void;
|
|
23
22
|
/**
|
|
24
23
|
* Deletes an operation from a path item, including when the path item is a $ref wrapper.
|
|
25
24
|
*
|
|
@@ -27,11 +26,11 @@ export declare const setPathItemOperation: (pathItem: NodeInput<PathItemObject>
|
|
|
27
26
|
* bundling a split-file document produces — and gives a sibling precedence over the value it
|
|
28
27
|
* resolves to, so a copy left anywhere along the chain keeps surfacing after the delete.
|
|
29
28
|
*/
|
|
30
|
-
export declare const deletePathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, method:
|
|
29
|
+
export declare const deletePathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, method: string) => void;
|
|
31
30
|
/**
|
|
32
31
|
* Invokes a callback for each HTTP method operation on a path item, resolving $ref wrappers first.
|
|
33
32
|
*/
|
|
34
|
-
export declare const forEachPathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, callback: (method:
|
|
33
|
+
export declare const forEachPathItemOperation: (pathItem: NodeInput<PathItemObject> | undefined, callback: (method: string, operation: NodeInput<OperationObject>) => void) => void;
|
|
35
34
|
/**
|
|
36
35
|
* Returns whether a path item has no remaining keys after resolving $ref wrappers.
|
|
37
36
|
*
|
|
@@ -40,4 +39,6 @@ export declare const forEachPathItemOperation: (pathItem: NodeInput<PathItemObje
|
|
|
40
39
|
* even when every HTTP method has been removed.
|
|
41
40
|
*/
|
|
42
41
|
export declare const pathItemIsEmpty: (pathItem: NodeInput<PathItemObject> | undefined) => boolean;
|
|
42
|
+
/** JSON pointer suffix for an operation within its Path Item Object. */
|
|
43
|
+
export declare const getPathItemOperationKey: (method: string) => string;
|
|
43
44
|
//# sourceMappingURL=for-each-path-item-operation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-each-path-item-operation.d.ts","sourceRoot":"","sources":["../../src/helpers/for-each-path-item-operation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"for-each-path-item-operation.d.ts","sourceRoot":"","sources":["../../src/helpers/for-each-path-item-operation.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAA0C,MAAM,4BAA4B,CAAA;AACnG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAyBrE;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,SAAS,CAAC,cAAc,CAAC,GAAG,SAAS,KAAG,cAAc,GAAG,SA+BtG,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,SAAS,CAAC,cAAc,CAAC,GAAG,SAAS,EAC/C,QAAQ,MAAM,KACb,SAAS,CAAC,eAAe,CAAC,GAAG,SAW/B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,SAAS,CAAC,cAAc,CAAC,GAAG,SAAS,EAC/C,QAAQ,MAAM,EACd,WAAW,eAAe,KACzB,IAcF,CAAA;AA0BD;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,SAAS,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,QAAQ,MAAM,KAAG,IAezG,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,SAAS,CAAC,cAAc,CAAC,GAAG,SAAS,EAC/C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,eAAe,CAAC,KAAK,IAAI,KACxE,IAqBF,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,UAAU,SAAS,CAAC,cAAc,CAAC,GAAG,SAAS,KAAG,OAIjF,CAAA;AAED,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,GAAI,QAAQ,MAAM,KAAG,MACmC,CAAA"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { isHttpMethod } from '@scalar/helpers/http/is-http-method';
|
|
2
2
|
import { isObjectLike } from '@scalar/helpers/object/is-object';
|
|
3
|
+
import { preventPollution } from '@scalar/helpers/object/prevent-pollution';
|
|
4
|
+
import { escapeJsonPointer } from '@scalar/json-magic/helpers/escape-json-pointer';
|
|
3
5
|
import { getResolvedRef, mergeSiblingReferences } from '../helpers/get-resolved-ref.js';
|
|
4
6
|
/**
|
|
5
7
|
* How many `$ref` hops to follow before treating a chain as circular.
|
|
@@ -8,6 +10,8 @@ import { getResolvedRef, mergeSiblingReferences } from '../helpers/get-resolved-
|
|
|
8
10
|
* cycle rather than a deep chain, and following it would never terminate.
|
|
9
11
|
*/
|
|
10
12
|
const MAX_REF_HOPS = 10;
|
|
13
|
+
/** Fixed OpenAPI fields use lowercase keys; mixed-case wire methods belong in additionalOperations. */
|
|
14
|
+
const isFixedOperationKey = (method) => method === method.toLowerCase() && isHttpMethod(method);
|
|
11
15
|
/**
|
|
12
16
|
* Whether a merged path item still carries an unfollowed hop.
|
|
13
17
|
*
|
|
@@ -58,7 +62,11 @@ export const getPathItemOperation = (pathItem, method) => {
|
|
|
58
62
|
if (!resolvedPathItem) {
|
|
59
63
|
return undefined;
|
|
60
64
|
}
|
|
61
|
-
|
|
65
|
+
if (isFixedOperationKey(method)) {
|
|
66
|
+
return resolvedPathItem[method];
|
|
67
|
+
}
|
|
68
|
+
const operations = resolvedPathItem.additionalOperations;
|
|
69
|
+
return operations && Object.hasOwn(operations, method) ? operations[method] : undefined;
|
|
62
70
|
};
|
|
63
71
|
/**
|
|
64
72
|
* Assigns an operation on a path item, including when the path item is a $ref wrapper.
|
|
@@ -67,14 +75,15 @@ export const setPathItemOperation = (pathItem, method, operation) => {
|
|
|
67
75
|
if (!pathItem || typeof pathItem !== 'object') {
|
|
68
76
|
return;
|
|
69
77
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
78
|
+
const target = '$ref' in pathItem && '$ref-value' in pathItem ? (pathItem['$ref-value'] ?? pathItem) : pathItem;
|
|
79
|
+
if (isFixedOperationKey(method)) {
|
|
80
|
+
target[method] = operation;
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
preventPollution(method);
|
|
84
|
+
target.additionalOperations ??= {};
|
|
85
|
+
target.additionalOperations[method] = operation;
|
|
76
86
|
}
|
|
77
|
-
pathItem[method] = operation;
|
|
78
87
|
};
|
|
79
88
|
/**
|
|
80
89
|
* Every node a path item's operations can live on, following the `$ref` chain.
|
|
@@ -107,7 +116,15 @@ export const deletePathItemOperation = (pathItem, method) => {
|
|
|
107
116
|
return;
|
|
108
117
|
}
|
|
109
118
|
for (const node of pathItemRefChain(pathItem)) {
|
|
110
|
-
|
|
119
|
+
if (isFixedOperationKey(method)) {
|
|
120
|
+
delete node[method];
|
|
121
|
+
}
|
|
122
|
+
else if (isObjectLike(node.additionalOperations)) {
|
|
123
|
+
delete node.additionalOperations[method];
|
|
124
|
+
if (Object.keys(node.additionalOperations).length === 0) {
|
|
125
|
+
delete node.additionalOperations;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
111
128
|
}
|
|
112
129
|
};
|
|
113
130
|
/**
|
|
@@ -119,11 +136,18 @@ export const forEachPathItemOperation = (pathItem, callback) => {
|
|
|
119
136
|
return;
|
|
120
137
|
}
|
|
121
138
|
for (const [key, operation] of Object.entries(resolvedPathItem)) {
|
|
122
|
-
if (!
|
|
139
|
+
if (!isFixedOperationKey(key) || operation === undefined) {
|
|
123
140
|
continue;
|
|
124
141
|
}
|
|
125
142
|
callback(key, operation);
|
|
126
143
|
}
|
|
144
|
+
// Preserve explicitly authored wire methods, including uppercase standard names.
|
|
145
|
+
// Schema validation can flag their placement without silently removing them from navigation.
|
|
146
|
+
for (const [method, operation] of Object.entries(resolvedPathItem.additionalOperations ?? {})) {
|
|
147
|
+
if (operation !== undefined && !isFixedOperationKey(method)) {
|
|
148
|
+
callback(method, operation);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
127
151
|
};
|
|
128
152
|
/**
|
|
129
153
|
* Returns whether a path item has no remaining keys after resolving $ref wrappers.
|
|
@@ -136,3 +160,5 @@ export const pathItemIsEmpty = (pathItem) => {
|
|
|
136
160
|
const resolvedPathItem = getResolvedPathItem(pathItem);
|
|
137
161
|
return !resolvedPathItem || Object.keys(resolvedPathItem).length === 0;
|
|
138
162
|
};
|
|
163
|
+
/** JSON pointer suffix for an operation within its Path Item Object. */
|
|
164
|
+
export const getPathItemOperationKey = (method) => isFixedOperationKey(method) ? method : `additionalOperations/${escapeJsonPointer(method)}`;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ExampleObject, ParameterObject } from '../schemas/v3.2/strict/openapi-document.js';
|
|
2
|
+
/** A parameter example with its wire representation kept distinct from data. */
|
|
3
|
+
type ParameterExample = {
|
|
4
|
+
example: ExampleObject | undefined;
|
|
5
|
+
value: unknown;
|
|
6
|
+
/** Parameter-level serialized text already includes URI encoding and query/cookie names. */
|
|
7
|
+
serialized: boolean;
|
|
8
|
+
/** Media-level text still needs the parameter name and URI encoding. */
|
|
9
|
+
mediaSerialized: boolean;
|
|
10
|
+
};
|
|
11
|
+
/** Resolve new and legacy example fields without serializing parameter-level wire text again. */
|
|
12
|
+
export declare const getParameterExample: (parameter: ParameterObject, exampleName?: string) => ParameterExample;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=get-parameter-example.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-parameter-example.d.ts","sourceRoot":"","sources":["../../src/helpers/get-parameter-example.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAE5F,gFAAgF;AAChF,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,aAAa,GAAG,SAAS,CAAA;IAClC,KAAK,EAAE,OAAO,CAAA;IACd,4FAA4F;IAC5F,UAAU,EAAE,OAAO,CAAA;IACnB,wEAAwE;IACxE,eAAe,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,iGAAiG;AACjG,eAAO,MAAM,mBAAmB,GAAI,WAAW,eAAe,EAAE,cAAc,MAAM,KAAG,gBAgBtF,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { getFirstMediaType } from '@scalar/helpers/http/get-first-media-type';
|
|
2
|
+
import { getExampleValue, getExplicitExampleText } from '../helpers/get-example-value.js';
|
|
3
|
+
import { getExample } from '../request-example/builder/helpers/get-example.js';
|
|
4
|
+
/** Resolve new and legacy example fields without serializing parameter-level wire text again. */
|
|
5
|
+
export const getParameterExample = (parameter, exampleName) => {
|
|
6
|
+
const authored = getExample({ ...parameter, content: undefined, schema: undefined }, exampleName, undefined);
|
|
7
|
+
const example = authored ?? getExample(parameter, exampleName, undefined);
|
|
8
|
+
const selected = getExampleValue(example);
|
|
9
|
+
const contentType = 'content' in parameter ? getFirstMediaType(parameter.content)?.[0] : undefined;
|
|
10
|
+
const mediaText = contentType ? getExplicitExampleText(selected, contentType) : undefined;
|
|
11
|
+
return {
|
|
12
|
+
example,
|
|
13
|
+
value: contentType && selected && !(authored && selected.source === 'serialized')
|
|
14
|
+
? (mediaText ?? selected.value)
|
|
15
|
+
: selected?.value,
|
|
16
|
+
mediaSerialized: contentType !== undefined && mediaText !== undefined && !(authored && selected?.source === 'serialized'),
|
|
17
|
+
serialized: authored !== undefined && selected?.source === 'serialized',
|
|
18
|
+
};
|
|
19
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-object.d.ts","sourceRoot":"","sources":["../../src/helpers/merge-object.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,YAAY,GACvB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;AAC1B;;;GAGG;AACH,uBAAqB,EACrB,QAAO,GAAG,CAAC,OAAO,CAAa,KAC9B,MAAM,CAAC,MAAM,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"merge-object.d.ts","sourceRoot":"","sources":["../../src/helpers/merge-object.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,YAAY,GACvB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;AAC1B;;;GAGG;AACH,uBAAqB,EACrB,QAAO,GAAG,CAAC,OAAO,CAAa,KAC9B,MAAM,CAAC,MAAM,EAAE,OAAO,CA2CxB,CAAA"}
|
|
@@ -35,9 +35,15 @@ export const mergeObjects = (a, b,
|
|
|
35
35
|
* Alternatively we may want to prevent this behaviour when merging with defaults and replace the whole array instead
|
|
36
36
|
*/
|
|
37
37
|
replaceArrays = false, cache = new Set()) => {
|
|
38
|
-
for (const key
|
|
39
|
-
if (!(key
|
|
40
|
-
|
|
38
|
+
for (const key of Object.keys(b)) {
|
|
39
|
+
if (!Object.hasOwn(a, key)) {
|
|
40
|
+
// A JSON property named __proto__ is data, not an instruction to replace the prototype.
|
|
41
|
+
if (key === '__proto__') {
|
|
42
|
+
Object.defineProperty(a, key, { value: b[key], enumerable: true, configurable: true, writable: true });
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
a[key] = b[key];
|
|
46
|
+
}
|
|
41
47
|
}
|
|
42
48
|
else {
|
|
43
49
|
const aValue = a[key];
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { EncodingObject, ParameterObject } from '../schemas/v3.2/strict/openapi-document.js';
|
|
2
|
+
/** A whole query string, kept separate from named parameters until URL serialization. */
|
|
3
|
+
export type QuerystringParameter = {
|
|
4
|
+
value: unknown;
|
|
5
|
+
contentType: string;
|
|
6
|
+
encoding?: Record<string, EncodingObject>;
|
|
7
|
+
/** URI-ready parameter examples, serialized media examples, or data requiring media serialization. */
|
|
8
|
+
kind: 'uri-ready' | 'serialized' | 'data';
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Resolve the selected whole-query example, including content-schema defaults.
|
|
12
|
+
* This module serializes outgoing queries; mock-server/src/utils/querystring-parameter.ts decodes incoming ones.
|
|
13
|
+
*/
|
|
14
|
+
export declare const getQuerystringParameter: (parameter: ParameterObject, exampleName?: string, { defaultDisabled, includeDisabled, }?: {
|
|
15
|
+
defaultDisabled?: boolean;
|
|
16
|
+
/** Editors must retain the value when its checkbox is off. */
|
|
17
|
+
includeDisabled?: boolean;
|
|
18
|
+
}) => QuerystringParameter | undefined;
|
|
19
|
+
/** Serialize without introducing a parameter name or re-encoding URI-ready examples. */
|
|
20
|
+
export declare const serializeQuerystringParameter: (parameter: QuerystringParameter, variables?: Record<string, string> | ((value: string) => string | null)) => string;
|
|
21
|
+
//# sourceMappingURL=querystring-parameter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"querystring-parameter.d.ts","sourceRoot":"","sources":["../../src/helpers/querystring-parameter.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAiB,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAE5G,yFAAyF;AACzF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,OAAO,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACzC,sGAAsG;IACtG,IAAI,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,CAAA;CAC1C,CAAA;AAmBD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAClC,WAAW,eAAe,EAC1B,cAAc,MAAM,EACpB,wCAGG;IACD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,OAAO,CAAA;CACrB,KACL,oBAAoB,GAAG,SAwBzB,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,6BAA6B,GACxC,WAAW,oBAAoB,EAC/B,YAAW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAM,KAC1E,MA6DF,CAAA"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { getFirstMediaType } from '@scalar/helpers/http/get-first-media-type';
|
|
2
|
+
import { isJsonMediaType } from '@scalar/helpers/http/is-json-media-type';
|
|
3
|
+
import { parseMimeType } from '@scalar/helpers/http/mime-type';
|
|
4
|
+
import { isObject } from '@scalar/helpers/object/is-object';
|
|
5
|
+
import { replaceEnvVariables } from '@scalar/helpers/regex/replace-variables';
|
|
6
|
+
import { getResolvedRef } from '../helpers/get-resolved-ref.js';
|
|
7
|
+
import { serializeFormPropertyWithEncoding } from '../request-example/builder/body/serialize-form-property.js';
|
|
8
|
+
import { isParamDisabled } from '../request-example/builder/header/is-param-disabled.js';
|
|
9
|
+
import { applyAllowReservedToUrl } from '../request-example/builder/helpers/apply-allow-reserved-to-url.js';
|
|
10
|
+
import { getExample } from '../request-example/builder/helpers/get-example.js';
|
|
11
|
+
import { getExampleFromSchema } from '../request-example/builder/helpers/get-example-from-schema.js';
|
|
12
|
+
/** Classify provenance before serialization so generated strings remain data, not pre-serialized media. */
|
|
13
|
+
const getQuerystringValueKind = (example, source) => {
|
|
14
|
+
if (example?.serializedValue !== undefined) {
|
|
15
|
+
return source === 'parameter' ? 'uri-ready' : 'serialized';
|
|
16
|
+
}
|
|
17
|
+
if (example?.dataValue !== undefined) {
|
|
18
|
+
return 'data';
|
|
19
|
+
}
|
|
20
|
+
if (typeof example?.value === 'string') {
|
|
21
|
+
return 'serialized';
|
|
22
|
+
}
|
|
23
|
+
return 'data';
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Resolve the selected whole-query example, including content-schema defaults.
|
|
27
|
+
* This module serializes outgoing queries; mock-server/src/utils/querystring-parameter.ts decodes incoming ones.
|
|
28
|
+
*/
|
|
29
|
+
export const getQuerystringParameter = (parameter, exampleName, { defaultDisabled = true, includeDisabled = false, } = {}) => {
|
|
30
|
+
if (parameter.in !== 'querystring' || !('content' in parameter) || !parameter.content) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const [contentType, media] = getFirstMediaType(parameter.content) ?? [];
|
|
34
|
+
if (!contentType) {
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
const mediaType = getResolvedRef(media);
|
|
38
|
+
// Resolve parameter examples first rather than probing their identity after media selection.
|
|
39
|
+
const parameterExample = getExample({ ...parameter, content: undefined }, exampleName, undefined);
|
|
40
|
+
// Schema-generated strings are data, so only authored media examples participate here.
|
|
41
|
+
const example = parameterExample ?? getExample({ ...mediaType, schema: undefined }, exampleName, contentType);
|
|
42
|
+
if (!includeDisabled && isParamDisabled(parameter, example, defaultDisabled)) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
const value = example?.serializedValue ?? (example?.dataValue !== undefined ? example.dataValue : example?.value);
|
|
46
|
+
const schema = getResolvedRef(mediaType?.schema);
|
|
47
|
+
return {
|
|
48
|
+
value: value !== undefined ? value : schema ? getExampleFromSchema(schema) : '',
|
|
49
|
+
contentType,
|
|
50
|
+
encoding: mediaType?.encoding,
|
|
51
|
+
kind: getQuerystringValueKind(example, parameterExample === undefined ? 'media' : 'parameter'),
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
/** Serialize without introducing a parameter name or re-encoding URI-ready examples. */
|
|
55
|
+
export const serializeQuerystringParameter = (parameter, variables = {}) => {
|
|
56
|
+
const replace = (value) => {
|
|
57
|
+
if (typeof value === 'string') {
|
|
58
|
+
return replaceEnvVariables(value, variables);
|
|
59
|
+
}
|
|
60
|
+
if (Array.isArray(value)) {
|
|
61
|
+
return value.map(replace);
|
|
62
|
+
}
|
|
63
|
+
if (isObject(value)) {
|
|
64
|
+
return Object.fromEntries(Object.entries(value).map(([key, item]) => [replaceEnvVariables(key, variables), replace(item)]));
|
|
65
|
+
}
|
|
66
|
+
return value;
|
|
67
|
+
};
|
|
68
|
+
const value = replace(parameter.value);
|
|
69
|
+
if (parameter.kind === 'uri-ready') {
|
|
70
|
+
return String(value);
|
|
71
|
+
}
|
|
72
|
+
const contentType = parseMimeType(parameter.contentType).essence;
|
|
73
|
+
if (contentType === 'application/x-www-form-urlencoded') {
|
|
74
|
+
if (typeof value === 'string') {
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
const params = new URLSearchParams();
|
|
78
|
+
const reservedKeys = new Set();
|
|
79
|
+
for (const [key, item] of Object.entries(isObject(value) ? value : {})) {
|
|
80
|
+
const encoding = parameter.encoding?.[key];
|
|
81
|
+
const entries = serializeFormPropertyWithEncoding(key, item, encoding);
|
|
82
|
+
if (entries) {
|
|
83
|
+
for (const entry of entries) {
|
|
84
|
+
params.append(entry.key, entry.value);
|
|
85
|
+
if (encoding?.allowReserved) {
|
|
86
|
+
reservedKeys.add(entry.key);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
const styleBased = encoding?.style !== undefined || encoding?.explode !== undefined || encoding?.allowReserved !== undefined;
|
|
92
|
+
for (const part of Array.isArray(item) ? item : [item]) {
|
|
93
|
+
const json = !styleBased && (isJsonMediaType(encoding?.contentType) || (part !== null && typeof part === 'object'));
|
|
94
|
+
params.append(key, json ? JSON.stringify(part) : String(part ?? ''));
|
|
95
|
+
}
|
|
96
|
+
if (encoding?.allowReserved) {
|
|
97
|
+
reservedKeys.add(key);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return applyAllowReservedToUrl(`?${params}`, reservedKeys).slice(1);
|
|
101
|
+
}
|
|
102
|
+
const serialized = parameter.kind === 'serialized'
|
|
103
|
+
? String(value)
|
|
104
|
+
: isJsonMediaType(contentType)
|
|
105
|
+
? JSON.stringify(value)
|
|
106
|
+
: String(value);
|
|
107
|
+
return encodeURIComponent(serialized).replace(/[!'()*]/g, (char) => `%${char.charCodeAt(0).toString(16).toUpperCase()}`);
|
|
108
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../src/mutators/operation/operation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../src/mutators/operation/operation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAarE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAGlD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,GAC1B,gBAAgB,cAAc,GAAG,IAAI,EACrC,SAAS,eAAe,CAAC,4BAA4B,CAAC,KACrD,MAAM,GAAG,SA0DX,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,GAC9B,OAAO,cAAc,GAAG,IAAI,EAC5B,UAAU,iBAAiB,GAAG,IAAI,EAClC,mBAAmB,eAAe,CAAC,uBAAuB,CAAC,SAsB5D,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,yBAAyB,GACpC,UAAU,iBAAiB,GAAG,IAAI,EAClC,OAAO,cAAc,GAAG,IAAI,EAC5B,mEAAmE,eAAe,CAAC,6BAA6B,CAAC,KAChH,IAkGF,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,GAC1B,WAAW,cAAc,GAAG,IAAI,EAChC,wBAAwB,eAAe,CAAC,4BAA4B,CAAC,SAgBtE,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GACtC,WAAW,cAAc,GAAG,IAAI,EAChC,uDAAuD,eAAe,CAAC,gCAAgC,CAAC,SAuBzG,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GACjC,WAAW,cAAc,GAAG,IAAI,EAChC,sDAAsD,eAAe,CAAC,0BAA0B,CAAC,SAkDlG,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,GACjC,WAAW,cAAc,GAAG,IAAI,EAChC,+DAA+D,eAAe,CAAC,0BAA0B,CAAC,SAwE3G,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { isHttpMethod } from '@scalar/helpers/http/is-http-method';
|
|
2
1
|
import { preventPollution } from '@scalar/helpers/object/prevent-pollution';
|
|
3
2
|
import { findVariables } from '@scalar/helpers/regex/find-variables';
|
|
4
3
|
import { deletePathItemOperation, getPathItemOperation, pathItemIsEmpty, setPathItemOperation, } from '../../helpers/for-each-path-item-operation.js';
|
|
@@ -188,12 +187,10 @@ export const updateOperationPathMethod = (document, store, { meta, payload: { me
|
|
|
188
187
|
// Move the operation to the new location
|
|
189
188
|
setPathItemOperation(document.paths[finalPath], finalMethod, unpackProxyObject(operation));
|
|
190
189
|
// Remove the operation from the old location
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
delete document.paths[meta.path];
|
|
196
|
-
}
|
|
190
|
+
deletePathItemOperation(document.paths[meta.path], meta.method);
|
|
191
|
+
// If the old path is now empty, remove the path entry (path-level metadata is kept otherwise)
|
|
192
|
+
if (pathItemIsEmpty(document.paths[meta.path])) {
|
|
193
|
+
delete document.paths[meta.path];
|
|
197
194
|
}
|
|
198
195
|
// We need to reset the history for the operation when the path or method changes
|
|
199
196
|
store.history.clearOperationHistory(document['x-scalar-navigation']?.name ?? '', meta.path, meta.method);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/mutators/operation/parameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/mutators/operation/parameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAMrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAmClD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,iBAAiB,GAAG,IAAI,EAClC,4CAA4C,eAAe,CAAC,4BAA4B,CAAC,SAyG1F,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,8BAA8B,GACzC,UAAU,iBAAiB,GAAG,IAAI,EAClC,uCAAuC,eAAe,CAAC,mCAAmC,CAAC,SA8C5F,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,iBAAiB,GAAG,IAAI,EAClC,6BAA6B,eAAe,CAAC,4BAA4B,CAAC,SAkC3E,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,4BAA4B,GACvC,UAAU,iBAAiB,GAAG,IAAI,EAClC,gBAAgB,eAAe,CAAC,iCAAiC,CAAC,SAgBnE,CAAA"}
|