@shawnstack/quickforge 1.3.20 → 1.3.21

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 (128) hide show
  1. package/README.md +348 -348
  2. package/dist/assets/{anthropic-Bj3HAZgj.js → anthropic--qj3xmqE.js} +1 -1
  3. package/dist/assets/{azure-openai-responses-IdZZrSrI.js → azure-openai-responses-DDRaS-MZ.js} +1 -1
  4. package/dist/assets/{google-Brt_lS1J.js → google-C-8-FIZS.js} +1 -1
  5. package/dist/assets/{google-vertex-B6HsoZ34.js → google-vertex-Dw2y_nqS.js} +1 -1
  6. package/dist/assets/{index-D0W9hAl_.css → index-B-WkttzD.css} +1 -1
  7. package/dist/assets/{index-D0CVLdX_.js → index-DRGbHzkd.js} +4 -4
  8. package/dist/assets/{mistral-CenXqwPz.js → mistral-u_5S4wj6.js} +1 -1
  9. package/dist/assets/{openai-codex-responses-D9ffGwbj.js → openai-codex-responses-CWZGpchs.js} +1 -1
  10. package/dist/assets/{openai-completions-eWdeSGBG.js → openai-completions-C_DdwPuH.js} +1 -1
  11. package/dist/assets/{openai-responses-Cavpmjeu.js → openai-responses-CMp0ziUV.js} +1 -1
  12. package/dist/assets/{openai-responses-shared-DF3ZGaUx.js → openai-responses-shared-CORWeerT.js} +1 -1
  13. package/dist/index.html +2 -2
  14. package/node_modules/@aws-sdk/client-bedrock-runtime/package.json +2 -2
  15. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/LICENSE +201 -0
  16. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/README.md +62 -0
  17. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-cjs/index.js +156 -0
  18. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/constants.js +2 -0
  19. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/fromEnvSigningName.js +16 -0
  20. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/fromSso.js +80 -0
  21. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/fromStatic.js +8 -0
  22. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/getNewSsoOidcToken.js +11 -0
  23. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/getSsoOidcClient.js +10 -0
  24. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/index.js +4 -0
  25. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/nodeProvider.js +5 -0
  26. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/validateTokenExpiry.js +7 -0
  27. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/validateTokenKey.js +7 -0
  28. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/dist-es/writeSSOTokenToFile.js +8 -0
  29. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/package.json +69 -0
  30. package/node_modules/@aws-sdk/token-providers/package.json +1 -1
  31. package/node_modules/@smithy/core/dist-cjs/index.js +3 -4
  32. package/node_modules/@smithy/core/dist-cjs/submodules/client/index.js +3 -11
  33. package/node_modules/@smithy/core/dist-cjs/submodules/config/index.browser.js +2 -2
  34. package/node_modules/@smithy/core/dist-cjs/submodules/config/index.js +2 -2
  35. package/node_modules/@smithy/core/dist-cjs/submodules/config/index.native.js +2 -2
  36. package/node_modules/@smithy/core/dist-cjs/submodules/endpoints/index.browser.js +9 -40
  37. package/node_modules/@smithy/core/dist-cjs/submodules/endpoints/index.js +9 -40
  38. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +12 -142
  39. package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +7 -9
  40. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -2
  41. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +2 -2
  42. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -2
  43. package/node_modules/@smithy/core/dist-cjs/submodules/transport/index.js +184 -0
  44. package/node_modules/@smithy/core/dist-es/index.js +6 -6
  45. package/node_modules/@smithy/core/dist-es/submodules/client/index.js +2 -2
  46. package/node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionConfig/checkRegion.js +1 -1
  47. package/node_modules/@smithy/core/dist-es/submodules/endpoints/index.browser.js +2 -2
  48. package/node_modules/@smithy/core/dist-es/submodules/endpoints/index.js +2 -2
  49. package/node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/toEndpointV1.js +1 -1
  50. package/node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/resolveEndpointConfig.js +1 -1
  51. package/node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/index.js +1 -1
  52. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +1 -1
  53. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +1 -2
  54. package/node_modules/@smithy/core/dist-es/submodules/protocols/RpcProtocol.js +1 -1
  55. package/node_modules/@smithy/core/dist-es/submodules/protocols/index.js +5 -5
  56. package/node_modules/@smithy/core/dist-es/submodules/protocols/middleware-content-length/contentLengthMiddleware.js +1 -1
  57. package/node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js +1 -1
  58. package/node_modules/@smithy/core/dist-es/submodules/schema/middleware/schemaDeserializationMiddleware.js +3 -4
  59. package/node_modules/@smithy/core/dist-es/submodules/schema/middleware/schemaSerializationMiddleware.js +1 -2
  60. package/node_modules/@smithy/core/dist-es/submodules/serde/middleware-serde/deserializerMiddleware.js +1 -1
  61. package/node_modules/@smithy/core/dist-es/submodules/transport/index.js +9 -0
  62. package/node_modules/@smithy/core/dist-es/submodules/{protocols/url-parser → transport}/parseUrl.js +1 -1
  63. package/node_modules/@smithy/core/dist-es/submodules/{endpoints → transport}/toEndpointV1.js +1 -1
  64. package/node_modules/@smithy/core/package.json +19 -10
  65. package/node_modules/@smithy/core/transport.js +5 -0
  66. package/node_modules/@smithy/credential-provider-imds/package.json +2 -2
  67. package/node_modules/@smithy/fetch-http-handler/package.json +2 -2
  68. package/node_modules/@smithy/node-http-handler/package.json +2 -2
  69. package/node_modules/@smithy/signature-v4/package.json +2 -2
  70. package/node_modules/eventsource-parser/README.md +31 -0
  71. package/node_modules/eventsource-parser/dist/index.cjs +21 -10
  72. package/node_modules/eventsource-parser/dist/index.js +21 -10
  73. package/node_modules/eventsource-parser/dist/stream.cjs +4 -3
  74. package/node_modules/eventsource-parser/dist/stream.js +4 -3
  75. package/node_modules/eventsource-parser/package.json +8 -8
  76. package/package.json +1 -1
  77. package/node_modules/@smithy/core/dist-cjs/getSmithyContext.js +0 -6
  78. package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js +0 -21
  79. package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js +0 -21
  80. package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js +0 -46
  81. package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/index.js +0 -6
  82. package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/resolveAuthOptions.js +0 -24
  83. package/node_modules/@smithy/core/dist-cjs/middleware-http-signing/getHttpSigningMiddleware.js +0 -19
  84. package/node_modules/@smithy/core/dist-cjs/middleware-http-signing/httpSigningMiddleware.js +0 -27
  85. package/node_modules/@smithy/core/dist-cjs/middleware-http-signing/index.js +0 -5
  86. package/node_modules/@smithy/core/dist-cjs/normalizeProvider.js +0 -10
  87. package/node_modules/@smithy/core/dist-cjs/pagination/createPaginator.js +0 -44
  88. package/node_modules/@smithy/core/dist-cjs/request-builder/requestBuilder.js +0 -5
  89. package/node_modules/@smithy/core/dist-cjs/setFeature.js +0 -14
  90. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/DefaultIdentityProviderConfig.js +0 -18
  91. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js +0 -38
  92. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js +0 -15
  93. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/index.js +0 -6
  94. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/noAuth.js +0 -9
  95. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/index.js +0 -6
  96. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/memoizeIdentityProvider.js +0 -61
  97. package/node_modules/@smithy/core/dist-es/request-builder/requestBuilder.js +0 -1
  98. package/node_modules/@smithy/core/dist-es/submodules/client/util-middleware/getSmithyContext.js +0 -2
  99. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/TestVectors.fixture.js +0 -146
  100. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/vectorTypes.fixture.js +0 -1
  101. package/node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/index.js +0 -2
  102. package/node_modules/@smithy/node-http-handler/dist-es/readable.mock.js +0 -21
  103. package/node_modules/@smithy/node-http-handler/dist-es/server.mock.js +0 -88
  104. package/node_modules/@smithy/node-http-handler/dist-es/stream-collector/readable.mock.js +0 -21
  105. package/node_modules/@smithy/signature-v4/dist-es/suite.fixture.js +0 -399
  106. /package/node_modules/@smithy/core/dist-es/{middleware-http-auth-scheme → legacy-root-exports/middleware-http-auth-scheme}/getHttpAuthSchemeEndpointRuleSetPlugin.js +0 -0
  107. /package/node_modules/@smithy/core/dist-es/{middleware-http-auth-scheme → legacy-root-exports/middleware-http-auth-scheme}/getHttpAuthSchemePlugin.js +0 -0
  108. /package/node_modules/@smithy/core/dist-es/{middleware-http-auth-scheme → legacy-root-exports/middleware-http-auth-scheme}/httpAuthSchemeMiddleware.js +0 -0
  109. /package/node_modules/@smithy/core/dist-es/{middleware-http-auth-scheme → legacy-root-exports/middleware-http-auth-scheme}/index.js +0 -0
  110. /package/node_modules/@smithy/core/dist-es/{middleware-http-auth-scheme → legacy-root-exports/middleware-http-auth-scheme}/resolveAuthOptions.js +0 -0
  111. /package/node_modules/@smithy/core/dist-es/{middleware-http-signing → legacy-root-exports/middleware-http-signing}/getHttpSigningMiddleware.js +0 -0
  112. /package/node_modules/@smithy/core/dist-es/{middleware-http-signing → legacy-root-exports/middleware-http-signing}/httpSigningMiddleware.js +0 -0
  113. /package/node_modules/@smithy/core/dist-es/{middleware-http-signing → legacy-root-exports/middleware-http-signing}/index.js +0 -0
  114. /package/node_modules/@smithy/core/dist-es/{pagination → legacy-root-exports/pagination}/createPaginator.js +0 -0
  115. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/DefaultIdentityProviderConfig.js +0 -0
  116. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/httpAuthSchemes/httpApiKeyAuth.js +0 -0
  117. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/httpAuthSchemes/httpBearerAuth.js +0 -0
  118. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/httpAuthSchemes/index.js +0 -0
  119. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/httpAuthSchemes/noAuth.js +0 -0
  120. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/index.js +0 -0
  121. /package/node_modules/@smithy/core/dist-es/{util-identity-and-auth → legacy-root-exports/util-identity-and-auth}/memoizeIdentityProvider.js +0 -0
  122. /package/node_modules/@smithy/core/dist-es/{getSmithyContext.js → submodules/transport/getSmithyContext.js} +0 -0
  123. /package/node_modules/@smithy/core/dist-es/submodules/{protocols/protocol-http → transport}/httpRequest.js +0 -0
  124. /package/node_modules/@smithy/core/dist-es/submodules/{protocols/protocol-http → transport}/httpResponse.js +0 -0
  125. /package/node_modules/@smithy/core/dist-es/submodules/{endpoints/util-endpoints/lib → transport}/isValidHostLabel.js +0 -0
  126. /package/node_modules/@smithy/core/dist-es/submodules/{protocols/protocol-http → transport}/isValidHostname.js +0 -0
  127. /package/node_modules/@smithy/core/dist-es/submodules/{client/util-middleware → transport}/normalizeProvider.js +0 -0
  128. /package/node_modules/@smithy/core/dist-es/submodules/{protocols/querystring-parser → transport}/parseQueryString.js +0 -0
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var config = require('@smithy/core/config');
4
- var protocols = require('@smithy/core/protocols');
4
+ var transport = require('@smithy/core/transport');
5
5
  var client = require('@smithy/core/client');
6
6
  var types = require('@smithy/types');
7
7
 
@@ -125,23 +125,6 @@ const createConfigValueProvider = (configKey, canonicalEndpointParamKey, config,
125
125
  return configProvider;
126
126
  };
127
127
 
128
- const toEndpointV1 = (endpoint) => {
129
- if (typeof endpoint === "object") {
130
- if ("url" in endpoint) {
131
- const v1Endpoint = protocols.parseUrl(endpoint.url);
132
- if (endpoint.headers) {
133
- v1Endpoint.headers = {};
134
- for (const name in endpoint.headers) {
135
- v1Endpoint.headers[name.toLowerCase()] = endpoint.headers[name].join(", ");
136
- }
137
- }
138
- return v1Endpoint;
139
- }
140
- return endpoint;
141
- }
142
- return protocols.parseUrl(endpoint);
143
- };
144
-
145
128
  function bindGetEndpointFromInstructions(getEndpointFromConfig) {
146
129
  return async (commandInput, instructionsSupplier, clientConfig, context) => {
147
130
  if (!clientConfig.isCustomEndpoint) {
@@ -153,7 +136,7 @@ function bindGetEndpointFromInstructions(getEndpointFromConfig) {
153
136
  endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId);
154
137
  }
155
138
  if (endpointFromConfig) {
156
- clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));
139
+ clientConfig.endpoint = () => Promise.resolve(transport.toEndpointV1(endpointFromConfig));
157
140
  clientConfig.isCustomEndpoint = true;
158
141
  }
159
142
  }
@@ -277,14 +260,14 @@ function bindResolveEndpointConfig(getEndpointFromConfig) {
277
260
  return (input) => {
278
261
  const tls = input.tls ?? true;
279
262
  const { endpoint, useDualstackEndpoint, useFipsEndpoint } = input;
280
- const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await client.normalizeProvider(endpoint)()) : undefined;
263
+ const customEndpointProvider = endpoint != null ? async () => transport.toEndpointV1(await transport.normalizeProvider(endpoint)()) : undefined;
281
264
  const isCustomEndpoint = !!endpoint;
282
265
  const resolvedConfig = Object.assign(input, {
283
266
  endpoint: customEndpointProvider,
284
267
  tls,
285
268
  isCustomEndpoint,
286
- useDualstackEndpoint: client.normalizeProvider(useDualstackEndpoint ?? false),
287
- useFipsEndpoint: client.normalizeProvider(useFipsEndpoint ?? false),
269
+ useDualstackEndpoint: transport.normalizeProvider(useDualstackEndpoint ?? false),
270
+ useFipsEndpoint: transport.normalizeProvider(useFipsEndpoint ?? false),
288
271
  });
289
272
  let configuredEndpointPromise = undefined;
290
273
  resolvedConfig.serviceConfiguredEndpoint = async () => {
@@ -437,20 +420,6 @@ const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {
437
420
 
438
421
  const isSet = (value) => value != null;
439
422
 
440
- const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
441
- const isValidHostLabel = (value, allowSubDomains = false) => {
442
- if (!allowSubDomains) {
443
- return VALID_HOST_LABEL_REGEX.test(value);
444
- }
445
- const labels = value.split(".");
446
- for (const label of labels) {
447
- if (!isValidHostLabel(label)) {
448
- return false;
449
- }
450
- }
451
- return true;
452
- };
453
-
454
423
  function ite(condition, trueValue, falseValue) {
455
424
  return condition ? trueValue : falseValue;
456
425
  }
@@ -543,7 +512,7 @@ const endpointFunctions = {
543
512
  coalesce,
544
513
  getAttr,
545
514
  isSet,
546
- isValidHostLabel,
515
+ isValidHostLabel: transport.isValidHostLabel,
547
516
  ite,
548
517
  not,
549
518
  parseURL,
@@ -873,6 +842,9 @@ const resolveEndpointConfig = bindResolveEndpointConfig(getEndpointFromConfig);
873
842
  const endpointMiddleware = bindEndpointMiddleware(getEndpointFromConfig);
874
843
  const getEndpointPlugin = bindGetEndpointPlugin(getEndpointFromConfig);
875
844
 
845
+ exports.isValidHostLabel = transport.isValidHostLabel;
846
+ exports.middlewareEndpointToEndpointV1 = transport.toEndpointV1;
847
+ exports.toEndpointV1 = transport.toEndpointV1;
876
848
  exports.BinaryDecisionDiagram = BinaryDecisionDiagram;
877
849
  exports.EndpointCache = EndpointCache;
878
850
  exports.EndpointError = EndpointError;
@@ -883,10 +855,7 @@ exports.endpointMiddlewareOptions = endpointMiddlewareOptions;
883
855
  exports.getEndpointFromInstructions = getEndpointFromInstructions;
884
856
  exports.getEndpointPlugin = getEndpointPlugin;
885
857
  exports.isIpAddress = isIpAddress;
886
- exports.isValidHostLabel = isValidHostLabel;
887
- exports.middlewareEndpointToEndpointV1 = toEndpointV1;
888
858
  exports.resolveEndpoint = resolveEndpoint;
889
859
  exports.resolveEndpointConfig = resolveEndpointConfig;
890
860
  exports.resolveEndpointRequiredConfig = resolveEndpointRequiredConfig;
891
861
  exports.resolveParams = resolveParams;
892
- exports.toEndpointV1 = toEndpointV1;
@@ -2,6 +2,7 @@
2
2
 
3
3
  var serde = require('@smithy/core/serde');
4
4
  var schema = require('@smithy/core/schema');
5
+ var transport = require('@smithy/core/transport');
5
6
  var types = require('@smithy/types');
6
7
 
7
8
  const collectBody = async (streamBody = new Uint8Array(), context) => {
@@ -28,90 +29,6 @@ class SerdeContext {
28
29
  }
29
30
  }
30
31
 
31
- class HttpRequest {
32
- method;
33
- protocol;
34
- hostname;
35
- port;
36
- path;
37
- query;
38
- headers;
39
- username;
40
- password;
41
- fragment;
42
- body;
43
- constructor(options) {
44
- this.method = options.method || "GET";
45
- this.hostname = options.hostname || "localhost";
46
- this.port = options.port;
47
- this.query = options.query || {};
48
- this.headers = options.headers || {};
49
- this.body = options.body;
50
- this.protocol = options.protocol
51
- ? options.protocol.slice(-1) !== ":"
52
- ? `${options.protocol}:`
53
- : options.protocol
54
- : "https:";
55
- this.path = options.path ? (options.path.charAt(0) !== "/" ? `/${options.path}` : options.path) : "/";
56
- this.username = options.username;
57
- this.password = options.password;
58
- this.fragment = options.fragment;
59
- }
60
- static clone(request) {
61
- const cloned = new HttpRequest({
62
- ...request,
63
- headers: { ...request.headers },
64
- });
65
- if (cloned.query) {
66
- cloned.query = cloneQuery(cloned.query);
67
- }
68
- return cloned;
69
- }
70
- static isInstance(request) {
71
- if (!request) {
72
- return false;
73
- }
74
- const req = request;
75
- return ("method" in req &&
76
- "protocol" in req &&
77
- "hostname" in req &&
78
- "path" in req &&
79
- typeof req["query"] === "object" &&
80
- typeof req["headers"] === "object");
81
- }
82
- clone() {
83
- return HttpRequest.clone(this);
84
- }
85
- }
86
- function cloneQuery(query) {
87
- return Object.keys(query).reduce((carry, paramName) => {
88
- const param = query[paramName];
89
- return {
90
- ...carry,
91
- [paramName]: Array.isArray(param) ? [...param] : param,
92
- };
93
- }, {});
94
- }
95
-
96
- class HttpResponse {
97
- statusCode;
98
- reason;
99
- headers;
100
- body;
101
- constructor(options) {
102
- this.statusCode = options.statusCode;
103
- this.reason = options.reason;
104
- this.headers = options.headers || {};
105
- this.body = options.body;
106
- }
107
- static isInstance(response) {
108
- if (!response)
109
- return false;
110
- const resp = response;
111
- return typeof resp.statusCode === "number" && typeof resp.headers === "object";
112
- }
113
- }
114
-
115
32
  class HttpProtocol extends SerdeContext {
116
33
  options;
117
34
  compositeErrorRegistry;
@@ -124,10 +41,10 @@ class HttpProtocol extends SerdeContext {
124
41
  }
125
42
  }
126
43
  getRequestType() {
127
- return HttpRequest;
44
+ return transport.HttpRequest;
128
45
  }
129
46
  getResponseType() {
130
- return HttpResponse;
47
+ return transport.HttpResponse;
131
48
  }
132
49
  setSerdeContext(serdeContext) {
133
50
  this.serdeContext = serdeContext;
@@ -259,7 +176,7 @@ class HttpBindingProtocol extends HttpProtocol {
259
176
  const payloadMemberSchemas = [];
260
177
  let hasNonHttpBindingMember = false;
261
178
  let payload;
262
- const request = new HttpRequest({
179
+ const request = new transport.HttpRequest({
263
180
  protocol: "",
264
181
  hostname: "",
265
182
  port: undefined,
@@ -542,7 +459,7 @@ class RpcProtocol extends HttpProtocol {
542
459
  const schema$1 = ns.getSchema();
543
460
  let payload;
544
461
  const input = _input && typeof _input === "object" ? _input : {};
545
- const request = new HttpRequest({
462
+ const request = new transport.HttpRequest({
546
463
  protocol: "",
547
464
  hostname: "",
548
465
  port: undefined,
@@ -663,7 +580,7 @@ class RequestBuilder {
663
580
  for (const resolvePath of this.resolvePathStack) {
664
581
  resolvePath(this.path);
665
582
  }
666
- return new HttpRequest({
583
+ return new transport.HttpRequest({
667
584
  protocol,
668
585
  hostname: this.hostname || hostname,
669
586
  port,
@@ -994,11 +911,6 @@ class Fields {
994
911
  }
995
912
  }
996
913
 
997
- function isValidHostname(hostname) {
998
- const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
999
- return hostPattern.test(hostname);
1000
- }
1001
-
1002
914
  const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {
1003
915
  return {
1004
916
  setHttpHandler(handler) {
@@ -1025,7 +937,7 @@ const CONTENT_LENGTH_HEADER = "content-length";
1025
937
  function contentLengthMiddleware(bodyLengthChecker) {
1026
938
  return (next) => async (args) => {
1027
939
  const request = args.request;
1028
- if (HttpRequest.isInstance(request)) {
940
+ if (transport.HttpRequest.isInstance(request)) {
1029
941
  const { body, headers } = request;
1030
942
  if (body &&
1031
943
  Object.keys(headers)
@@ -1086,48 +998,11 @@ function buildQueryString(query) {
1086
998
  return parts.join("&");
1087
999
  }
1088
1000
 
1089
- function parseQueryString(querystring) {
1090
- const query = {};
1091
- querystring = querystring.replace(/^\?/, "");
1092
- if (querystring) {
1093
- for (const pair of querystring.split("&")) {
1094
- let [key, value = null] = pair.split("=");
1095
- key = decodeURIComponent(key);
1096
- if (value) {
1097
- value = decodeURIComponent(value);
1098
- }
1099
- if (!(key in query)) {
1100
- query[key] = value;
1101
- }
1102
- else if (Array.isArray(query[key])) {
1103
- query[key].push(value);
1104
- }
1105
- else {
1106
- query[key] = [query[key], value];
1107
- }
1108
- }
1109
- }
1110
- return query;
1111
- }
1112
-
1113
- const parseUrl = (url) => {
1114
- if (typeof url === "string") {
1115
- return parseUrl(new URL(url));
1116
- }
1117
- const { hostname, pathname, port, protocol, search } = url;
1118
- let query;
1119
- if (search) {
1120
- query = parseQueryString(search);
1121
- }
1122
- return {
1123
- hostname,
1124
- port: port ? parseInt(port) : undefined,
1125
- protocol,
1126
- path: pathname,
1127
- query,
1128
- };
1129
- };
1130
-
1001
+ exports.HttpRequest = transport.HttpRequest;
1002
+ exports.HttpResponse = transport.HttpResponse;
1003
+ exports.isValidHostname = transport.isValidHostname;
1004
+ exports.parseQueryString = transport.parseQueryString;
1005
+ exports.parseUrl = transport.parseUrl;
1131
1006
  exports.Field = Field;
1132
1007
  exports.Fields = Fields;
1133
1008
  exports.FromStringShapeDeserializer = FromStringShapeDeserializer;
@@ -1135,8 +1010,6 @@ exports.HttpBindingProtocol = HttpBindingProtocol;
1135
1010
  exports.HttpInterceptingShapeDeserializer = HttpInterceptingShapeDeserializer;
1136
1011
  exports.HttpInterceptingShapeSerializer = HttpInterceptingShapeSerializer;
1137
1012
  exports.HttpProtocol = HttpProtocol;
1138
- exports.HttpRequest = HttpRequest;
1139
- exports.HttpResponse = HttpResponse;
1140
1013
  exports.RequestBuilder = RequestBuilder;
1141
1014
  exports.RpcProtocol = RpcProtocol;
1142
1015
  exports.SerdeContext = SerdeContext;
@@ -1151,9 +1024,6 @@ exports.escapeUriPath = escapeUriPath;
1151
1024
  exports.extendedEncodeURIComponent = extendedEncodeURIComponent;
1152
1025
  exports.getContentLengthPlugin = getContentLengthPlugin;
1153
1026
  exports.getHttpHandlerExtensionConfiguration = getHttpHandlerExtensionConfiguration;
1154
- exports.isValidHostname = isValidHostname;
1155
- exports.parseQueryString = parseQueryString;
1156
- exports.parseUrl = parseUrl;
1157
1027
  exports.requestBuilder = requestBuilder;
1158
1028
  exports.resolveHttpHandlerRuntimeConfig = resolveHttpHandlerRuntimeConfig;
1159
1029
  exports.resolvedPath = resolvedPath;
@@ -1,8 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var client = require('@smithy/core/client');
4
- var protocols = require('@smithy/core/protocols');
5
- var endpoints = require('@smithy/core/endpoints');
3
+ var transport = require('@smithy/core/transport');
6
4
 
7
5
  const deref = (schemaRef) => {
8
6
  if (typeof schemaRef === "function") {
@@ -21,7 +19,7 @@ const operation = (namespace, name, traits, input, output) => ({
21
19
 
22
20
  const schemaDeserializationMiddleware = (config) => (next, context) => async (args) => {
23
21
  const { response } = await next(args);
24
- const { operationSchema } = client.getSmithyContext(context);
22
+ const { operationSchema } = transport.getSmithyContext(context);
25
23
  const [, ns, n, t, i, o] = operationSchema ?? [];
26
24
  try {
27
25
  const parsed = await config.protocol.deserializeResponse(operation(ns, n, t, i, o), {
@@ -59,11 +57,11 @@ const schemaDeserializationMiddleware = (config) => (next, context) => async (ar
59
57
  }
60
58
  }
61
59
  try {
62
- if (protocols.HttpResponse.isInstance(response)) {
63
- const { headers = {} } = response;
60
+ if (transport.HttpResponse.isInstance(response)) {
61
+ const { headers = {}, statusCode } = response;
64
62
  const headerEntries = Object.entries(headers);
65
63
  error.$metadata = {
66
- httpStatusCode: response.statusCode,
64
+ httpStatusCode: statusCode,
67
65
  requestId: findHeader(/^x-[\w-]+-request-?id$/, headerEntries),
68
66
  extendedRequestId: findHeader(/^x-[\w-]+-id-2$/, headerEntries),
69
67
  cfId: findHeader(/^x-[\w-]+-cf-id$/, headerEntries),
@@ -83,10 +81,10 @@ const findHeader = (pattern, headers) => {
83
81
  };
84
82
 
85
83
  const schemaSerializationMiddleware = (config) => (next, context) => async (args) => {
86
- const { operationSchema } = client.getSmithyContext(context);
84
+ const { operationSchema } = transport.getSmithyContext(context);
87
85
  const [, ns, n, t, i, o] = operationSchema ?? [];
88
86
  const endpoint = context.endpointV2
89
- ? async () => endpoints.toEndpointV1(context.endpointV2)
87
+ ? async () => transport.toEndpointV1(context.endpointV2)
90
88
  : config.endpoint;
91
89
  const request = await config.protocol.serializeRequest(operation(ns, n, t, i, o), args.input, {
92
90
  ...config,
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var protocols = require('@smithy/core/protocols');
3
+ var transport = require('@smithy/core/transport');
4
4
  var endpoints = require('@smithy/core/endpoints');
5
5
 
6
6
  const chars = `ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;
@@ -912,7 +912,7 @@ const deserializerMiddleware = (options, deserializer) => (next, context) => asy
912
912
  }
913
913
  }
914
914
  try {
915
- if (protocols.HttpResponse.isInstance(response)) {
915
+ if (transport.HttpResponse.isInstance(response)) {
916
916
  const { headers = {} } = response;
917
917
  const headerEntries = Object.entries(headers);
918
918
  error.$metadata = {
@@ -2,7 +2,7 @@
2
2
 
3
3
  var node_crypto = require('node:crypto');
4
4
  var node_fs = require('node:fs');
5
- var protocols = require('@smithy/core/protocols');
5
+ var transport = require('@smithy/core/transport');
6
6
  var endpoints = require('@smithy/core/endpoints');
7
7
  var node_stream = require('node:stream');
8
8
 
@@ -877,7 +877,7 @@ const deserializerMiddleware = (options, deserializer) => (next, context) => asy
877
877
  }
878
878
  }
879
879
  try {
880
- if (protocols.HttpResponse.isInstance(response)) {
880
+ if (transport.HttpResponse.isInstance(response)) {
881
881
  const { headers = {} } = response;
882
882
  const headerEntries = Object.entries(headers);
883
883
  error.$metadata = {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var protocols = require('@smithy/core/protocols');
3
+ var transport = require('@smithy/core/transport');
4
4
  var endpoints = require('@smithy/core/endpoints');
5
5
 
6
6
  const chars = `ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;
@@ -912,7 +912,7 @@ const deserializerMiddleware = (options, deserializer) => (next, context) => asy
912
912
  }
913
913
  }
914
914
  try {
915
- if (protocols.HttpResponse.isInstance(response)) {
915
+ if (transport.HttpResponse.isInstance(response)) {
916
916
  const { headers = {} } = response;
917
917
  const headerEntries = Object.entries(headers);
918
918
  error.$metadata = {
@@ -0,0 +1,184 @@
1
+ 'use strict';
2
+
3
+ var types = require('@smithy/types');
4
+
5
+ const getSmithyContext = (context) => context[types.SMITHY_CONTEXT_KEY] || (context[types.SMITHY_CONTEXT_KEY] = {});
6
+
7
+ class HttpRequest {
8
+ method;
9
+ protocol;
10
+ hostname;
11
+ port;
12
+ path;
13
+ query;
14
+ headers;
15
+ username;
16
+ password;
17
+ fragment;
18
+ body;
19
+ constructor(options) {
20
+ this.method = options.method || "GET";
21
+ this.hostname = options.hostname || "localhost";
22
+ this.port = options.port;
23
+ this.query = options.query || {};
24
+ this.headers = options.headers || {};
25
+ this.body = options.body;
26
+ this.protocol = options.protocol
27
+ ? options.protocol.slice(-1) !== ":"
28
+ ? `${options.protocol}:`
29
+ : options.protocol
30
+ : "https:";
31
+ this.path = options.path ? (options.path.charAt(0) !== "/" ? `/${options.path}` : options.path) : "/";
32
+ this.username = options.username;
33
+ this.password = options.password;
34
+ this.fragment = options.fragment;
35
+ }
36
+ static clone(request) {
37
+ const cloned = new HttpRequest({
38
+ ...request,
39
+ headers: { ...request.headers },
40
+ });
41
+ if (cloned.query) {
42
+ cloned.query = cloneQuery(cloned.query);
43
+ }
44
+ return cloned;
45
+ }
46
+ static isInstance(request) {
47
+ if (!request) {
48
+ return false;
49
+ }
50
+ const req = request;
51
+ return ("method" in req &&
52
+ "protocol" in req &&
53
+ "hostname" in req &&
54
+ "path" in req &&
55
+ typeof req["query"] === "object" &&
56
+ typeof req["headers"] === "object");
57
+ }
58
+ clone() {
59
+ return HttpRequest.clone(this);
60
+ }
61
+ }
62
+ function cloneQuery(query) {
63
+ return Object.keys(query).reduce((carry, paramName) => {
64
+ const param = query[paramName];
65
+ return {
66
+ ...carry,
67
+ [paramName]: Array.isArray(param) ? [...param] : param,
68
+ };
69
+ }, {});
70
+ }
71
+
72
+ class HttpResponse {
73
+ statusCode;
74
+ reason;
75
+ headers;
76
+ body;
77
+ constructor(options) {
78
+ this.statusCode = options.statusCode;
79
+ this.reason = options.reason;
80
+ this.headers = options.headers || {};
81
+ this.body = options.body;
82
+ }
83
+ static isInstance(response) {
84
+ if (!response)
85
+ return false;
86
+ const resp = response;
87
+ return typeof resp.statusCode === "number" && typeof resp.headers === "object";
88
+ }
89
+ }
90
+
91
+ const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
92
+ const isValidHostLabel = (value, allowSubDomains = false) => {
93
+ if (!allowSubDomains) {
94
+ return VALID_HOST_LABEL_REGEX.test(value);
95
+ }
96
+ const labels = value.split(".");
97
+ for (const label of labels) {
98
+ if (!isValidHostLabel(label)) {
99
+ return false;
100
+ }
101
+ }
102
+ return true;
103
+ };
104
+
105
+ function isValidHostname(hostname) {
106
+ const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
107
+ return hostPattern.test(hostname);
108
+ }
109
+
110
+ const normalizeProvider = (input) => {
111
+ if (typeof input === "function")
112
+ return input;
113
+ const promisified = Promise.resolve(input);
114
+ return () => promisified;
115
+ };
116
+
117
+ function parseQueryString(querystring) {
118
+ const query = {};
119
+ querystring = querystring.replace(/^\?/, "");
120
+ if (querystring) {
121
+ for (const pair of querystring.split("&")) {
122
+ let [key, value = null] = pair.split("=");
123
+ key = decodeURIComponent(key);
124
+ if (value) {
125
+ value = decodeURIComponent(value);
126
+ }
127
+ if (!(key in query)) {
128
+ query[key] = value;
129
+ }
130
+ else if (Array.isArray(query[key])) {
131
+ query[key].push(value);
132
+ }
133
+ else {
134
+ query[key] = [query[key], value];
135
+ }
136
+ }
137
+ }
138
+ return query;
139
+ }
140
+
141
+ const parseUrl = (url) => {
142
+ if (typeof url === "string") {
143
+ return parseUrl(new URL(url));
144
+ }
145
+ const { hostname, pathname, port, protocol, search } = url;
146
+ let query;
147
+ if (search) {
148
+ query = parseQueryString(search);
149
+ }
150
+ return {
151
+ hostname,
152
+ port: port ? parseInt(port) : undefined,
153
+ protocol,
154
+ path: pathname,
155
+ query,
156
+ };
157
+ };
158
+
159
+ const toEndpointV1 = (endpoint) => {
160
+ if (typeof endpoint === "object") {
161
+ if ("url" in endpoint) {
162
+ const v1Endpoint = parseUrl(endpoint.url);
163
+ if (endpoint.headers) {
164
+ v1Endpoint.headers = {};
165
+ for (const name in endpoint.headers) {
166
+ v1Endpoint.headers[name.toLowerCase()] = endpoint.headers[name].join(", ");
167
+ }
168
+ }
169
+ return v1Endpoint;
170
+ }
171
+ return endpoint;
172
+ }
173
+ return parseUrl(endpoint);
174
+ };
175
+
176
+ exports.HttpRequest = HttpRequest;
177
+ exports.HttpResponse = HttpResponse;
178
+ exports.getSmithyContext = getSmithyContext;
179
+ exports.isValidHostLabel = isValidHostLabel;
180
+ exports.isValidHostname = isValidHostname;
181
+ exports.normalizeProvider = normalizeProvider;
182
+ exports.parseQueryString = parseQueryString;
183
+ exports.parseUrl = parseUrl;
184
+ exports.toEndpointV1 = toEndpointV1;
@@ -1,8 +1,8 @@
1
- export * from "./getSmithyContext";
2
- export * from "./middleware-http-auth-scheme";
3
- export * from "./middleware-http-signing";
1
+ export { getSmithyContext } from "@smithy/core/transport";
2
+ export * from "./legacy-root-exports/middleware-http-auth-scheme";
3
+ export * from "./legacy-root-exports/middleware-http-signing";
4
4
  export * from "./normalizeProvider";
5
- export { createPaginator } from "./pagination/createPaginator";
6
- export * from "./request-builder/requestBuilder";
5
+ export { createPaginator } from "./legacy-root-exports/pagination/createPaginator";
6
+ export { requestBuilder } from "@smithy/core/protocols";
7
7
  export * from "./setFeature";
8
- export * from "./util-identity-and-auth";
8
+ export * from "./legacy-root-exports/util-identity-and-auth";
@@ -1,6 +1,6 @@
1
1
  export { constructStack } from "./middleware-stack/MiddlewareStack";
2
- export { getSmithyContext } from "./util-middleware/getSmithyContext";
3
- export { normalizeProvider } from "./util-middleware/normalizeProvider";
2
+ export { getSmithyContext } from "@smithy/core/transport";
3
+ export { normalizeProvider } from "@smithy/core/transport";
4
4
  export { invalidFunction } from "./invalid-dependency/invalidFunction";
5
5
  export { invalidProvider } from "./invalid-dependency/invalidProvider";
6
6
  export { createWaiter } from "./util-waiter/createWaiter";
@@ -1,4 +1,4 @@
1
- import { isValidHostLabel } from "@smithy/core/endpoints";
1
+ import { isValidHostLabel } from "@smithy/core/transport";
2
2
  const validRegions = new Set();
3
3
  export const checkRegion = (region, check = isValidHostLabel) => {
4
4
  if (!validRegions.has(region) && !check(region)) {
@@ -3,12 +3,12 @@ import { bindGetEndpointFromInstructions } from "./middleware-endpoint/adaptors/
3
3
  import { bindEndpointMiddleware } from "./middleware-endpoint/endpointMiddleware";
4
4
  import { bindGetEndpointPlugin } from "./middleware-endpoint/getEndpointPlugin";
5
5
  import { bindResolveEndpointConfig } from "./middleware-endpoint/resolveEndpointConfig";
6
- export * from "./toEndpointV1";
6
+ export { toEndpointV1 } from "@smithy/core/transport";
7
7
  export { BinaryDecisionDiagram } from "./util-endpoints/bdd/BinaryDecisionDiagram";
8
8
  export { EndpointCache } from "./util-endpoints/cache/EndpointCache";
9
9
  export { decideEndpoint } from "./util-endpoints/decideEndpoint";
10
10
  export { isIpAddress } from "./util-endpoints/lib/isIpAddress";
11
- export { isValidHostLabel } from "./util-endpoints/lib/isValidHostLabel";
11
+ export { isValidHostLabel } from "@smithy/core/transport";
12
12
  export { customEndpointFunctions } from "./util-endpoints/utils/customEndpointFunctions";
13
13
  export { resolveEndpoint } from "./util-endpoints/resolveEndpoint";
14
14
  export * from "./util-endpoints/types";