@qraft/asyncapi-plugin 1.0.0-beta.7 → 1.0.0-beta.8
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 +6 -0
- package/dist/_vendor/@stoplight/json-ref-resolver/crawler.js +1 -1
- package/dist/_vendor/@stoplight/json-ref-resolver/index.js +1 -1
- package/dist/_vendor/@stoplight/json-ref-resolver/runner.js +2 -2
- package/dist/_vendor/@stoplight/spectral-core/dist/document.js +2 -2
- package/dist/_vendor/@stoplight/spectral-core/dist/documentInventory.js +2 -2
- package/dist/_vendor/@stoplight/spectral-core/dist/ruleset/rule.js +2 -2
- package/dist/_vendor/@stoplight/spectral-core/dist/ruleset/ruleset.js +2 -2
- package/dist/_vendor/@stoplight/spectral-core/dist/ruleset/utils/guards.js +1 -1
- package/dist/_vendor/@stoplight/spectral-core/dist/ruleset/validation/assertions.js +1 -1
- package/dist/_vendor/@stoplight/spectral-core/dist/ruleset/validation/validators/alias.js +1 -1
- package/dist/_vendor/@stoplight/spectral-core/dist/runner/index.js +1 -1
- package/dist/_vendor/@stoplight/spectral-core/dist/runner/runner.js +1 -1
- package/dist/_vendor/@stoplight/spectral-core/dist/spectral.js +1 -1
- package/dist/_vendor/@stoplight/spectral-core/dist/types/index.js +1 -1
- package/dist/_vendor/@stoplight/spectral-formats/dist/arazzo.js +1 -1
- package/dist/_vendor/@stoplight/spectral-formats/dist/asyncapi.js +1 -1
- package/dist/_vendor/@stoplight/spectral-formats/dist/jsonSchema.js +1 -1
- package/dist/_vendor/@stoplight/spectral-formats/dist/openapi.js +1 -1
- package/dist/_vendor/@stoplight/spectral-functions/dist/index.js +1 -1
- package/dist/_vendor/@stoplight/spectral-functions/dist/length.js +1 -1
- package/dist/_vendor/@stoplight/spectral-functions/dist/unreferencedReusableObject.js +1 -1
- package/dist/_vendor/@stoplight/spectral-parsers/dist/json.js +1 -1
- package/dist/_vendor/@stoplight/spectral-runtime/dist/reader.js +1 -1
- package/dist/_vendor/@stoplight/spectral-runtime/dist/utils/decodeSegmentFragment.js +1 -1
- package/dist/_vendor/@stoplight/spectral-runtime/dist/utils/printPath.js +1 -1
- package/dist/_vendor/@stoplight/spectral-runtime/dist/utils/printValue.js +1 -1
- package/dist/_vendor/@stoplight/spectral-runtime/dist/utils/refs.js +2 -2
- package/dist/_vendor/ajv/dist/refs/json-schema-2019-09/index.js +1 -1
- package/dist/_vendor/ajv/dist/refs/json-schema-2020-12/index.js +1 -1
- package/dist/_vendor/ajv/dist/vocabularies/applicator/index.js +1 -1
- package/dist/_vendor/ajv/dist/vocabularies/core/index.js +1 -1
- package/dist/_vendor/ajv/dist/vocabularies/dynamic/index.js +1 -1
- package/dist/_vendor/ajv/dist/vocabularies/format/index.js +1 -1
- package/dist/_vendor/ajv/dist/vocabularies/unevaluated/index.js +1 -1
- package/dist/_vendor/ajv/dist/vocabularies/validation/index.js +1 -1
- package/dist/_vendor/fast-uri/index.js +180 -83
- package/dist/_vendor/fast-uri/index.js.map +1 -1
- package/dist/_vendor/fast-uri/lib/schemes.js +163 -82
- package/dist/_vendor/fast-uri/lib/schemes.js.map +1 -1
- package/dist/_vendor/fast-uri/lib/utils.js +327 -128
- package/dist/_vendor/fast-uri/lib/utils.js.map +1 -1
- package/dist/_vendor/json-schema-traverse/index.js +1 -1
- package/dist/_vendor/nimma/dist/legacy/cjs/codegen/fast-paths/index.js +1 -1
- package/dist/_vendor/nimma/dist/legacy/cjs/codegen/optimizer/index.js +1 -1
- package/dist/_virtual/index.es.js +3 -3
- package/dist/_virtual/index.es2.js +3 -3
- package/dist/_virtual/index16.js +2 -2
- package/dist/_virtual/index17.js +2 -2
- package/dist/_virtual/index25.js +2 -2
- package/dist/_virtual/index26.js +2 -2
- package/dist/_virtual/index27.js +2 -2
- package/dist/_virtual/index28.js +2 -2
- package/dist/_virtual/index31.js +2 -2
- package/dist/_virtual/index32.js +2 -2
- package/dist/_virtual/index34.js +2 -2
- package/dist/_virtual/index35.js +2 -2
- package/dist/_virtual/index54.js +2 -2
- package/dist/_virtual/index55.js +2 -2
- package/dist/_virtual/index56.js +2 -2
- package/dist/_virtual/index57.js +2 -2
- package/dist/_virtual/index58.js +2 -2
- package/dist/_virtual/index59.js +2 -2
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/package.json +2 -2
- package/src/packageVersion.ts +1 -1
- package/dist/_vendor/fast-uri/lib/scopedChars.js +0 -40
- package/dist/_vendor/fast-uri/lib/scopedChars.js.map +0 -1
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { __require as requireUtils } from './utils.js';
|
|
2
|
+
|
|
1
3
|
var schemes;
|
|
2
4
|
var hasRequiredSchemes;
|
|
3
5
|
|
|
@@ -5,192 +7,271 @@ function requireSchemes () {
|
|
|
5
7
|
if (hasRequiredSchemes) return schemes;
|
|
6
8
|
hasRequiredSchemes = 1;
|
|
7
9
|
|
|
8
|
-
const
|
|
10
|
+
const { isUUID } = /*@__PURE__*/ requireUtils();
|
|
9
11
|
const URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
const supportedSchemeNames = /** @type {const} */ (['http', 'https', 'ws',
|
|
14
|
+
'wss', 'urn', 'urn:uuid']);
|
|
15
|
+
|
|
16
|
+
/** @typedef {supportedSchemeNames[number]} SchemeName */
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @param {string} name
|
|
20
|
+
* @returns {name is SchemeName}
|
|
21
|
+
*/
|
|
22
|
+
function isValidSchemeName (name) {
|
|
23
|
+
return supportedSchemeNames.indexOf(/** @type {*} */ (name)) !== -1
|
|
13
24
|
}
|
|
14
25
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
26
|
+
/**
|
|
27
|
+
* @callback SchemeFn
|
|
28
|
+
* @param {import('../types/index').URIComponent} component
|
|
29
|
+
* @param {import('../types/index').Options} options
|
|
30
|
+
* @returns {import('../types/index').URIComponent}
|
|
31
|
+
*/
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* @typedef {Object} SchemeHandler
|
|
35
|
+
* @property {SchemeName} scheme - The scheme name.
|
|
36
|
+
* @property {boolean} [domainHost] - Indicates if the scheme supports domain hosts.
|
|
37
|
+
* @property {SchemeFn} parse - Function to parse the URI component for this scheme.
|
|
38
|
+
* @property {SchemeFn} serialize - Function to serialize the URI component for this scheme.
|
|
39
|
+
* @property {boolean} [skipNormalize] - Indicates if normalization should be skipped for this scheme.
|
|
40
|
+
* @property {boolean} [absolutePath] - Indicates if the scheme uses absolute paths.
|
|
41
|
+
* @property {boolean} [unicodeSupport] - Indicates if the scheme supports Unicode.
|
|
42
|
+
*/
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @param {import('../types/index').URIComponent} wsComponent
|
|
46
|
+
* @returns {boolean}
|
|
47
|
+
*/
|
|
48
|
+
function wsIsSecure (wsComponent) {
|
|
49
|
+
if (wsComponent.secure === true) {
|
|
50
|
+
return true
|
|
51
|
+
} else if (wsComponent.secure === false) {
|
|
52
|
+
return false
|
|
53
|
+
} else if (wsComponent.scheme) {
|
|
54
|
+
return (
|
|
55
|
+
wsComponent.scheme.length === 3 &&
|
|
56
|
+
(wsComponent.scheme[0] === 'w' || wsComponent.scheme[0] === 'W') &&
|
|
57
|
+
(wsComponent.scheme[1] === 's' || wsComponent.scheme[1] === 'S') &&
|
|
58
|
+
(wsComponent.scheme[2] === 's' || wsComponent.scheme[2] === 'S')
|
|
59
|
+
)
|
|
60
|
+
} else {
|
|
61
|
+
return false
|
|
18
62
|
}
|
|
63
|
+
}
|
|
19
64
|
|
|
20
|
-
|
|
65
|
+
/** @type {SchemeFn} */
|
|
66
|
+
function httpParse (component) {
|
|
67
|
+
if (!component.host) {
|
|
68
|
+
component.error = component.error || 'HTTP URIs must have a host.';
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return component
|
|
21
72
|
}
|
|
22
73
|
|
|
23
|
-
|
|
24
|
-
|
|
74
|
+
/** @type {SchemeFn} */
|
|
75
|
+
function httpSerialize (component) {
|
|
76
|
+
const secure = String(component.scheme).toLowerCase() === 'https';
|
|
25
77
|
|
|
26
78
|
// normalize the default port
|
|
27
|
-
if (
|
|
28
|
-
|
|
79
|
+
if (component.port === (secure ? 443 : 80) || component.port === '') {
|
|
80
|
+
component.port = undefined;
|
|
29
81
|
}
|
|
30
82
|
|
|
31
83
|
// normalize the empty path
|
|
32
|
-
if (!
|
|
33
|
-
|
|
84
|
+
if (!component.path) {
|
|
85
|
+
component.path = '/';
|
|
34
86
|
}
|
|
35
87
|
|
|
36
88
|
// NOTE: We do not parse query strings for HTTP URIs
|
|
37
89
|
// as WWW Form Url Encoded query strings are part of the HTML4+ spec,
|
|
38
90
|
// and not the HTTP spec.
|
|
39
91
|
|
|
40
|
-
return
|
|
92
|
+
return component
|
|
41
93
|
}
|
|
42
94
|
|
|
43
|
-
|
|
95
|
+
/** @type {SchemeFn} */
|
|
96
|
+
function wsParse (wsComponent) {
|
|
44
97
|
// indicate if the secure flag is set
|
|
45
|
-
|
|
98
|
+
wsComponent.secure = wsIsSecure(wsComponent);
|
|
46
99
|
|
|
47
100
|
// construct resouce name
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
101
|
+
wsComponent.resourceName = (wsComponent.path || '/') + (wsComponent.query ? '?' + wsComponent.query : '');
|
|
102
|
+
wsComponent.path = undefined;
|
|
103
|
+
wsComponent.query = undefined;
|
|
51
104
|
|
|
52
|
-
return
|
|
105
|
+
return wsComponent
|
|
53
106
|
}
|
|
54
107
|
|
|
55
|
-
|
|
108
|
+
/** @type {SchemeFn} */
|
|
109
|
+
function wsSerialize (wsComponent) {
|
|
56
110
|
// normalize the default port
|
|
57
|
-
if (
|
|
58
|
-
|
|
111
|
+
if (wsComponent.port === (wsIsSecure(wsComponent) ? 443 : 80) || wsComponent.port === '') {
|
|
112
|
+
wsComponent.port = undefined;
|
|
59
113
|
}
|
|
60
114
|
|
|
61
115
|
// ensure scheme matches secure flag
|
|
62
|
-
if (typeof
|
|
63
|
-
|
|
64
|
-
|
|
116
|
+
if (typeof wsComponent.secure === 'boolean') {
|
|
117
|
+
wsComponent.scheme = (wsComponent.secure ? 'wss' : 'ws');
|
|
118
|
+
wsComponent.secure = undefined;
|
|
65
119
|
}
|
|
66
120
|
|
|
67
121
|
// reconstruct path from resource name
|
|
68
|
-
if (
|
|
69
|
-
const [path, query] =
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
122
|
+
if (wsComponent.resourceName) {
|
|
123
|
+
const [path, query] = wsComponent.resourceName.split('?');
|
|
124
|
+
wsComponent.path = (path && path !== '/' ? path : undefined);
|
|
125
|
+
wsComponent.query = query;
|
|
126
|
+
wsComponent.resourceName = undefined;
|
|
73
127
|
}
|
|
74
128
|
|
|
75
129
|
// forbid fragment component
|
|
76
|
-
|
|
130
|
+
wsComponent.fragment = undefined;
|
|
77
131
|
|
|
78
|
-
return
|
|
132
|
+
return wsComponent
|
|
79
133
|
}
|
|
80
134
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
135
|
+
/** @type {SchemeFn} */
|
|
136
|
+
function urnParse (urnComponent, options) {
|
|
137
|
+
if (!urnComponent.path) {
|
|
138
|
+
urnComponent.error = 'URN can not be parsed';
|
|
139
|
+
return urnComponent
|
|
85
140
|
}
|
|
86
|
-
const matches =
|
|
141
|
+
const matches = urnComponent.path.match(URN_REG);
|
|
87
142
|
if (matches) {
|
|
88
|
-
const scheme = options.scheme ||
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
const urnScheme = `${scheme}:${options.nid ||
|
|
92
|
-
const schemeHandler =
|
|
93
|
-
|
|
143
|
+
const scheme = options.scheme || urnComponent.scheme || 'urn';
|
|
144
|
+
urnComponent.nid = matches[1].toLowerCase();
|
|
145
|
+
urnComponent.nss = matches[2];
|
|
146
|
+
const urnScheme = `${scheme}:${options.nid || urnComponent.nid}`;
|
|
147
|
+
const schemeHandler = getSchemeHandler(urnScheme);
|
|
148
|
+
urnComponent.path = undefined;
|
|
94
149
|
|
|
95
150
|
if (schemeHandler) {
|
|
96
|
-
|
|
151
|
+
urnComponent = schemeHandler.parse(urnComponent, options);
|
|
97
152
|
}
|
|
98
153
|
} else {
|
|
99
|
-
|
|
154
|
+
urnComponent.error = urnComponent.error || 'URN can not be parsed.';
|
|
100
155
|
}
|
|
101
156
|
|
|
102
|
-
return
|
|
157
|
+
return urnComponent
|
|
103
158
|
}
|
|
104
159
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
160
|
+
/** @type {SchemeFn} */
|
|
161
|
+
function urnSerialize (urnComponent, options) {
|
|
162
|
+
if (urnComponent.nid === undefined) {
|
|
163
|
+
throw new Error('URN without nid cannot be serialized')
|
|
164
|
+
}
|
|
165
|
+
const scheme = options.scheme || urnComponent.scheme || 'urn';
|
|
166
|
+
const nid = urnComponent.nid.toLowerCase();
|
|
108
167
|
const urnScheme = `${scheme}:${options.nid || nid}`;
|
|
109
|
-
const schemeHandler =
|
|
168
|
+
const schemeHandler = getSchemeHandler(urnScheme);
|
|
110
169
|
|
|
111
170
|
if (schemeHandler) {
|
|
112
|
-
|
|
171
|
+
urnComponent = schemeHandler.serialize(urnComponent, options);
|
|
113
172
|
}
|
|
114
173
|
|
|
115
|
-
const
|
|
116
|
-
const nss =
|
|
117
|
-
|
|
174
|
+
const uriComponent = urnComponent;
|
|
175
|
+
const nss = urnComponent.nss;
|
|
176
|
+
uriComponent.path = `${nid || options.nid}:${nss}`;
|
|
118
177
|
|
|
119
178
|
options.skipEscape = true;
|
|
120
|
-
return
|
|
179
|
+
return uriComponent
|
|
121
180
|
}
|
|
122
181
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
182
|
+
/** @type {SchemeFn} */
|
|
183
|
+
function urnuuidParse (urnComponent, options) {
|
|
184
|
+
const uuidComponent = urnComponent;
|
|
185
|
+
uuidComponent.uuid = uuidComponent.nss;
|
|
186
|
+
uuidComponent.nss = undefined;
|
|
127
187
|
|
|
128
|
-
if (!options.tolerant && (!
|
|
129
|
-
|
|
188
|
+
if (!options.tolerant && (!uuidComponent.uuid || !isUUID(uuidComponent.uuid))) {
|
|
189
|
+
uuidComponent.error = uuidComponent.error || 'UUID is not valid.';
|
|
130
190
|
}
|
|
131
191
|
|
|
132
|
-
return
|
|
192
|
+
return uuidComponent
|
|
133
193
|
}
|
|
134
194
|
|
|
135
|
-
|
|
136
|
-
|
|
195
|
+
/** @type {SchemeFn} */
|
|
196
|
+
function urnuuidSerialize (uuidComponent) {
|
|
197
|
+
const urnComponent = uuidComponent;
|
|
137
198
|
// normalize UUID
|
|
138
|
-
|
|
139
|
-
return
|
|
199
|
+
urnComponent.nss = (uuidComponent.uuid || '').toLowerCase();
|
|
200
|
+
return urnComponent
|
|
140
201
|
}
|
|
141
202
|
|
|
142
|
-
const http = {
|
|
203
|
+
const http = /** @type {SchemeHandler} */ ({
|
|
143
204
|
scheme: 'http',
|
|
144
205
|
domainHost: true,
|
|
145
206
|
parse: httpParse,
|
|
146
207
|
serialize: httpSerialize
|
|
147
|
-
};
|
|
208
|
+
});
|
|
148
209
|
|
|
149
|
-
const https = {
|
|
210
|
+
const https = /** @type {SchemeHandler} */ ({
|
|
150
211
|
scheme: 'https',
|
|
151
212
|
domainHost: http.domainHost,
|
|
152
213
|
parse: httpParse,
|
|
153
214
|
serialize: httpSerialize
|
|
154
|
-
};
|
|
215
|
+
});
|
|
155
216
|
|
|
156
|
-
const ws = {
|
|
217
|
+
const ws = /** @type {SchemeHandler} */ ({
|
|
157
218
|
scheme: 'ws',
|
|
158
219
|
domainHost: true,
|
|
159
220
|
parse: wsParse,
|
|
160
221
|
serialize: wsSerialize
|
|
161
|
-
};
|
|
222
|
+
});
|
|
162
223
|
|
|
163
|
-
const wss = {
|
|
224
|
+
const wss = /** @type {SchemeHandler} */ ({
|
|
164
225
|
scheme: 'wss',
|
|
165
226
|
domainHost: ws.domainHost,
|
|
166
227
|
parse: ws.parse,
|
|
167
228
|
serialize: ws.serialize
|
|
168
|
-
};
|
|
229
|
+
});
|
|
169
230
|
|
|
170
|
-
const urn = {
|
|
231
|
+
const urn = /** @type {SchemeHandler} */ ({
|
|
171
232
|
scheme: 'urn',
|
|
172
233
|
parse: urnParse,
|
|
173
234
|
serialize: urnSerialize,
|
|
174
235
|
skipNormalize: true
|
|
175
|
-
};
|
|
236
|
+
});
|
|
176
237
|
|
|
177
|
-
const urnuuid = {
|
|
238
|
+
const urnuuid = /** @type {SchemeHandler} */ ({
|
|
178
239
|
scheme: 'urn:uuid',
|
|
179
240
|
parse: urnuuidParse,
|
|
180
241
|
serialize: urnuuidSerialize,
|
|
181
242
|
skipNormalize: true
|
|
182
|
-
};
|
|
243
|
+
});
|
|
183
244
|
|
|
184
|
-
const SCHEMES = {
|
|
245
|
+
const SCHEMES = /** @type {Record<SchemeName, SchemeHandler>} */ ({
|
|
185
246
|
http,
|
|
186
247
|
https,
|
|
187
248
|
ws,
|
|
188
249
|
wss,
|
|
189
250
|
urn,
|
|
190
251
|
'urn:uuid': urnuuid
|
|
191
|
-
};
|
|
252
|
+
});
|
|
253
|
+
|
|
254
|
+
Object.setPrototypeOf(SCHEMES, null);
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* @param {string|undefined} scheme
|
|
258
|
+
* @returns {SchemeHandler|undefined}
|
|
259
|
+
*/
|
|
260
|
+
function getSchemeHandler (scheme) {
|
|
261
|
+
return (
|
|
262
|
+
scheme && (
|
|
263
|
+
SCHEMES[/** @type {SchemeName} */ (scheme)] ||
|
|
264
|
+
SCHEMES[/** @type {SchemeName} */(scheme.toLowerCase())])
|
|
265
|
+
) ||
|
|
266
|
+
undefined
|
|
267
|
+
}
|
|
192
268
|
|
|
193
|
-
schemes =
|
|
269
|
+
schemes = {
|
|
270
|
+
wsIsSecure,
|
|
271
|
+
SCHEMES,
|
|
272
|
+
isValidSchemeName,
|
|
273
|
+
getSchemeHandler,
|
|
274
|
+
};
|
|
194
275
|
return schemes;
|
|
195
276
|
}
|
|
196
277
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemes.js","sources":["../../../../../../node_modules/fast-uri/lib/schemes.js"],"sourcesContent":["'use strict'\n\nconst UUID_REG = /^[\\da-f]{8}\\b-[\\da-f]{4}\\b-[\\da-f]{4}\\b-[\\da-f]{4}\\b-[\\da-f]{12}$/iu\nconst URN_REG = /([\\da-z][\\d\\-a-z]{0,31}):((?:[\\w!$'()*+,\\-.:;=@]|%[\\da-f]{2})+)/iu\n\nfunction isSecure (wsComponents) {\n return typeof wsComponents.secure === 'boolean' ? wsComponents.secure : String(wsComponents.scheme).toLowerCase() === 'wss'\n}\n\nfunction httpParse (components) {\n if (!components.host) {\n components.error = components.error || 'HTTP URIs must have a host.'\n }\n\n return components\n}\n\nfunction httpSerialize (components) {\n const secure = String(components.scheme).toLowerCase() === 'https'\n\n // normalize the default port\n if (components.port === (secure ? 443 : 80) || components.port === '') {\n components.port = undefined\n }\n\n // normalize the empty path\n if (!components.path) {\n components.path = '/'\n }\n\n // NOTE: We do not parse query strings for HTTP URIs\n // as WWW Form Url Encoded query strings are part of the HTML4+ spec,\n // and not the HTTP spec.\n\n return components\n}\n\nfunction wsParse (wsComponents) {\n// indicate if the secure flag is set\n wsComponents.secure = isSecure(wsComponents)\n\n // construct resouce name\n wsComponents.resourceName = (wsComponents.path || '/') + (wsComponents.query ? '?' + wsComponents.query : '')\n wsComponents.path = undefined\n wsComponents.query = undefined\n\n return wsComponents\n}\n\nfunction wsSerialize (wsComponents) {\n// normalize the default port\n if (wsComponents.port === (isSecure(wsComponents) ? 443 : 80) || wsComponents.port === '') {\n wsComponents.port = undefined\n }\n\n // ensure scheme matches secure flag\n if (typeof wsComponents.secure === 'boolean') {\n wsComponents.scheme = (wsComponents.secure ? 'wss' : 'ws')\n wsComponents.secure = undefined\n }\n\n // reconstruct path from resource name\n if (wsComponents.resourceName) {\n const [path, query] = wsComponents.resourceName.split('?')\n wsComponents.path = (path && path !== '/' ? path : undefined)\n wsComponents.query = query\n wsComponents.resourceName = undefined\n }\n\n // forbid fragment component\n wsComponents.fragment = undefined\n\n return wsComponents\n}\n\nfunction urnParse (urnComponents, options) {\n if (!urnComponents.path) {\n urnComponents.error = 'URN can not be parsed'\n return urnComponents\n }\n const matches = urnComponents.path.match(URN_REG)\n if (matches) {\n const scheme = options.scheme || urnComponents.scheme || 'urn'\n urnComponents.nid = matches[1].toLowerCase()\n urnComponents.nss = matches[2]\n const urnScheme = `${scheme}:${options.nid || urnComponents.nid}`\n const schemeHandler = SCHEMES[urnScheme]\n urnComponents.path = undefined\n\n if (schemeHandler) {\n urnComponents = schemeHandler.parse(urnComponents, options)\n }\n } else {\n urnComponents.error = urnComponents.error || 'URN can not be parsed.'\n }\n\n return urnComponents\n}\n\nfunction urnSerialize (urnComponents, options) {\n const scheme = options.scheme || urnComponents.scheme || 'urn'\n const nid = urnComponents.nid.toLowerCase()\n const urnScheme = `${scheme}:${options.nid || nid}`\n const schemeHandler = SCHEMES[urnScheme]\n\n if (schemeHandler) {\n urnComponents = schemeHandler.serialize(urnComponents, options)\n }\n\n const uriComponents = urnComponents\n const nss = urnComponents.nss\n uriComponents.path = `${nid || options.nid}:${nss}`\n\n options.skipEscape = true\n return uriComponents\n}\n\nfunction urnuuidParse (urnComponents, options) {\n const uuidComponents = urnComponents\n uuidComponents.uuid = uuidComponents.nss\n uuidComponents.nss = undefined\n\n if (!options.tolerant && (!uuidComponents.uuid || !UUID_REG.test(uuidComponents.uuid))) {\n uuidComponents.error = uuidComponents.error || 'UUID is not valid.'\n }\n\n return uuidComponents\n}\n\nfunction urnuuidSerialize (uuidComponents) {\n const urnComponents = uuidComponents\n // normalize UUID\n urnComponents.nss = (uuidComponents.uuid || '').toLowerCase()\n return urnComponents\n}\n\nconst http = {\n scheme: 'http',\n domainHost: true,\n parse: httpParse,\n serialize: httpSerialize\n}\n\nconst https = {\n scheme: 'https',\n domainHost: http.domainHost,\n parse: httpParse,\n serialize: httpSerialize\n}\n\nconst ws = {\n scheme: 'ws',\n domainHost: true,\n parse: wsParse,\n serialize: wsSerialize\n}\n\nconst wss = {\n scheme: 'wss',\n domainHost: ws.domainHost,\n parse: ws.parse,\n serialize: ws.serialize\n}\n\nconst urn = {\n scheme: 'urn',\n parse: urnParse,\n serialize: urnSerialize,\n skipNormalize: true\n}\n\nconst urnuuid = {\n scheme: 'urn:uuid',\n parse: urnuuidParse,\n serialize: urnuuidSerialize,\n skipNormalize: true\n}\n\nconst SCHEMES = {\n http,\n https,\n ws,\n wss,\n urn,\n 'urn:uuid': urnuuid\n}\n\nmodule.exports = SCHEMES\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"schemes.js","sources":["../../../../../../node_modules/fast-uri/lib/schemes.js"],"sourcesContent":["'use strict'\n\nconst { isUUID } = require('./utils')\nconst URN_REG = /([\\da-z][\\d\\-a-z]{0,31}):((?:[\\w!$'()*+,\\-.:;=@]|%[\\da-f]{2})+)/iu\n\nconst supportedSchemeNames = /** @type {const} */ (['http', 'https', 'ws',\n 'wss', 'urn', 'urn:uuid'])\n\n/** @typedef {supportedSchemeNames[number]} SchemeName */\n\n/**\n * @param {string} name\n * @returns {name is SchemeName}\n */\nfunction isValidSchemeName (name) {\n return supportedSchemeNames.indexOf(/** @type {*} */ (name)) !== -1\n}\n\n/**\n * @callback SchemeFn\n * @param {import('../types/index').URIComponent} component\n * @param {import('../types/index').Options} options\n * @returns {import('../types/index').URIComponent}\n */\n\n/**\n * @typedef {Object} SchemeHandler\n * @property {SchemeName} scheme - The scheme name.\n * @property {boolean} [domainHost] - Indicates if the scheme supports domain hosts.\n * @property {SchemeFn} parse - Function to parse the URI component for this scheme.\n * @property {SchemeFn} serialize - Function to serialize the URI component for this scheme.\n * @property {boolean} [skipNormalize] - Indicates if normalization should be skipped for this scheme.\n * @property {boolean} [absolutePath] - Indicates if the scheme uses absolute paths.\n * @property {boolean} [unicodeSupport] - Indicates if the scheme supports Unicode.\n */\n\n/**\n * @param {import('../types/index').URIComponent} wsComponent\n * @returns {boolean}\n */\nfunction wsIsSecure (wsComponent) {\n if (wsComponent.secure === true) {\n return true\n } else if (wsComponent.secure === false) {\n return false\n } else if (wsComponent.scheme) {\n return (\n wsComponent.scheme.length === 3 &&\n (wsComponent.scheme[0] === 'w' || wsComponent.scheme[0] === 'W') &&\n (wsComponent.scheme[1] === 's' || wsComponent.scheme[1] === 'S') &&\n (wsComponent.scheme[2] === 's' || wsComponent.scheme[2] === 'S')\n )\n } else {\n return false\n }\n}\n\n/** @type {SchemeFn} */\nfunction httpParse (component) {\n if (!component.host) {\n component.error = component.error || 'HTTP URIs must have a host.'\n }\n\n return component\n}\n\n/** @type {SchemeFn} */\nfunction httpSerialize (component) {\n const secure = String(component.scheme).toLowerCase() === 'https'\n\n // normalize the default port\n if (component.port === (secure ? 443 : 80) || component.port === '') {\n component.port = undefined\n }\n\n // normalize the empty path\n if (!component.path) {\n component.path = '/'\n }\n\n // NOTE: We do not parse query strings for HTTP URIs\n // as WWW Form Url Encoded query strings are part of the HTML4+ spec,\n // and not the HTTP spec.\n\n return component\n}\n\n/** @type {SchemeFn} */\nfunction wsParse (wsComponent) {\n// indicate if the secure flag is set\n wsComponent.secure = wsIsSecure(wsComponent)\n\n // construct resouce name\n wsComponent.resourceName = (wsComponent.path || '/') + (wsComponent.query ? '?' + wsComponent.query : '')\n wsComponent.path = undefined\n wsComponent.query = undefined\n\n return wsComponent\n}\n\n/** @type {SchemeFn} */\nfunction wsSerialize (wsComponent) {\n// normalize the default port\n if (wsComponent.port === (wsIsSecure(wsComponent) ? 443 : 80) || wsComponent.port === '') {\n wsComponent.port = undefined\n }\n\n // ensure scheme matches secure flag\n if (typeof wsComponent.secure === 'boolean') {\n wsComponent.scheme = (wsComponent.secure ? 'wss' : 'ws')\n wsComponent.secure = undefined\n }\n\n // reconstruct path from resource name\n if (wsComponent.resourceName) {\n const [path, query] = wsComponent.resourceName.split('?')\n wsComponent.path = (path && path !== '/' ? path : undefined)\n wsComponent.query = query\n wsComponent.resourceName = undefined\n }\n\n // forbid fragment component\n wsComponent.fragment = undefined\n\n return wsComponent\n}\n\n/** @type {SchemeFn} */\nfunction urnParse (urnComponent, options) {\n if (!urnComponent.path) {\n urnComponent.error = 'URN can not be parsed'\n return urnComponent\n }\n const matches = urnComponent.path.match(URN_REG)\n if (matches) {\n const scheme = options.scheme || urnComponent.scheme || 'urn'\n urnComponent.nid = matches[1].toLowerCase()\n urnComponent.nss = matches[2]\n const urnScheme = `${scheme}:${options.nid || urnComponent.nid}`\n const schemeHandler = getSchemeHandler(urnScheme)\n urnComponent.path = undefined\n\n if (schemeHandler) {\n urnComponent = schemeHandler.parse(urnComponent, options)\n }\n } else {\n urnComponent.error = urnComponent.error || 'URN can not be parsed.'\n }\n\n return urnComponent\n}\n\n/** @type {SchemeFn} */\nfunction urnSerialize (urnComponent, options) {\n if (urnComponent.nid === undefined) {\n throw new Error('URN without nid cannot be serialized')\n }\n const scheme = options.scheme || urnComponent.scheme || 'urn'\n const nid = urnComponent.nid.toLowerCase()\n const urnScheme = `${scheme}:${options.nid || nid}`\n const schemeHandler = getSchemeHandler(urnScheme)\n\n if (schemeHandler) {\n urnComponent = schemeHandler.serialize(urnComponent, options)\n }\n\n const uriComponent = urnComponent\n const nss = urnComponent.nss\n uriComponent.path = `${nid || options.nid}:${nss}`\n\n options.skipEscape = true\n return uriComponent\n}\n\n/** @type {SchemeFn} */\nfunction urnuuidParse (urnComponent, options) {\n const uuidComponent = urnComponent\n uuidComponent.uuid = uuidComponent.nss\n uuidComponent.nss = undefined\n\n if (!options.tolerant && (!uuidComponent.uuid || !isUUID(uuidComponent.uuid))) {\n uuidComponent.error = uuidComponent.error || 'UUID is not valid.'\n }\n\n return uuidComponent\n}\n\n/** @type {SchemeFn} */\nfunction urnuuidSerialize (uuidComponent) {\n const urnComponent = uuidComponent\n // normalize UUID\n urnComponent.nss = (uuidComponent.uuid || '').toLowerCase()\n return urnComponent\n}\n\nconst http = /** @type {SchemeHandler} */ ({\n scheme: 'http',\n domainHost: true,\n parse: httpParse,\n serialize: httpSerialize\n})\n\nconst https = /** @type {SchemeHandler} */ ({\n scheme: 'https',\n domainHost: http.domainHost,\n parse: httpParse,\n serialize: httpSerialize\n})\n\nconst ws = /** @type {SchemeHandler} */ ({\n scheme: 'ws',\n domainHost: true,\n parse: wsParse,\n serialize: wsSerialize\n})\n\nconst wss = /** @type {SchemeHandler} */ ({\n scheme: 'wss',\n domainHost: ws.domainHost,\n parse: ws.parse,\n serialize: ws.serialize\n})\n\nconst urn = /** @type {SchemeHandler} */ ({\n scheme: 'urn',\n parse: urnParse,\n serialize: urnSerialize,\n skipNormalize: true\n})\n\nconst urnuuid = /** @type {SchemeHandler} */ ({\n scheme: 'urn:uuid',\n parse: urnuuidParse,\n serialize: urnuuidSerialize,\n skipNormalize: true\n})\n\nconst SCHEMES = /** @type {Record<SchemeName, SchemeHandler>} */ ({\n http,\n https,\n ws,\n wss,\n urn,\n 'urn:uuid': urnuuid\n})\n\nObject.setPrototypeOf(SCHEMES, null)\n\n/**\n * @param {string|undefined} scheme\n * @returns {SchemeHandler|undefined}\n */\nfunction getSchemeHandler (scheme) {\n return (\n scheme && (\n SCHEMES[/** @type {SchemeName} */ (scheme)] ||\n SCHEMES[/** @type {SchemeName} */(scheme.toLowerCase())])\n ) ||\n undefined\n}\n\nmodule.exports = {\n wsIsSecure,\n SCHEMES,\n isValidSchemeName,\n getSchemeHandler,\n}\n"],"names":["require$$0"],"mappings":"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","x_google_ignoreList":[0]}
|