@missioncontrolio/client 0.0.9 → 0.0.11
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/README.md +31 -0
- package/dist/client/autoCancelOrderHandler.d.ts +7 -0
- package/dist/client/autoCancelOrderHandler.js +95 -0
- package/dist/client/clientBuilder.d.ts +22 -0
- package/dist/client/clientBuilder.js +74 -0
- package/dist/client/generated/client.d.ts +20 -0
- package/{src/client/generated/client.ts → dist/client/generated/client.js} +14 -79
- package/dist/client/generated/models/index.d.ts +282 -0
- package/dist/client/generated/models/index.js +625 -0
- package/dist/client/generated/order/cancelOrder/index.d.ts +8 -0
- package/dist/client/generated/order/cancelOrder/index.js +17 -0
- package/dist/client/generated/order/claimReservation/index.d.ts +7 -0
- package/dist/client/generated/order/claimReservation/index.js +8 -0
- package/dist/client/generated/order/claimReservation/item/index.d.ts +8 -0
- package/dist/client/generated/order/claimReservation/item/index.js +17 -0
- package/dist/client/generated/order/createOrder/index.d.ts +8 -0
- package/dist/client/generated/order/createOrder/index.js +17 -0
- package/dist/client/generated/order/index.d.ts +25 -0
- package/dist/client/generated/order/index.js +32 -0
- package/dist/client/generated/order/reportOrder/index.d.ts +8 -0
- package/dist/client/generated/order/reportOrder/index.js +17 -0
- package/dist/client/generated/partner/index.d.ts +12 -0
- package/dist/client/generated/partner/index.js +14 -0
- package/dist/client/generated/priceList/index.d.ts +12 -0
- package/dist/client/generated/priceList/index.js +14 -0
- package/dist/client/generated/product/hasStock/index.d.ts +8 -0
- package/dist/client/generated/product/hasStock/index.js +17 -0
- package/dist/client/generated/product/index.d.ts +35 -0
- package/dist/client/generated/product/index.js +42 -0
- package/dist/client/generated/product/item/index.d.ts +7 -0
- package/dist/client/generated/product/item/index.js +7 -0
- package/dist/client/generated/product/item/redemptionInstructions/index.d.ts +8 -0
- package/dist/client/generated/product/item/redemptionInstructions/index.js +15 -0
- package/dist/client/generated/publisher/index.d.ts +12 -0
- package/dist/client/generated/publisher/index.js +14 -0
- package/dist/client/generated/region/index.d.ts +14 -0
- package/dist/client/generated/region/index.js +14 -0
- package/dist/client/generated/reservation/index.d.ts +11 -0
- package/dist/client/generated/reservation/index.js +25 -0
- package/dist/client/generated/reservation/item/cancel/index.d.ts +8 -0
- package/dist/client/generated/reservation/item/cancel/index.js +14 -0
- package/dist/client/generated/reservation/item/index.d.ts +11 -0
- package/dist/client/generated/reservation/item/index.js +20 -0
- package/dist/client/generatedAssets/assetPack/index.d.ts +7 -0
- package/dist/client/generatedAssets/assetPack/index.js +8 -0
- package/dist/client/generatedAssets/assetPack/item/index.d.ts +7 -0
- package/dist/client/generatedAssets/assetPack/item/index.js +9 -0
- package/dist/client/generatedAssets/assetPack/item/item/index.d.ts +11 -0
- package/dist/client/generatedAssets/assetPack/item/item/index.js +21 -0
- package/dist/client/generatedAssets/assetPack/item/item/item/index.d.ts +8 -0
- package/dist/client/generatedAssets/assetPack/item/item/item/index.js +14 -0
- package/dist/client/generatedAssets/assetsClient.d.ts +8 -0
- package/dist/client/generatedAssets/assetsClient.js +38 -0
- package/dist/client/generatedAssets/models/index.d.ts +54 -0
- package/dist/client/generatedAssets/models/index.js +117 -0
- package/dist/client/missionControlEnvironment.d.ts +7 -0
- package/dist/client/missionControlEnvironment.js +26 -0
- package/dist/client/missionControlHandlers.d.ts +2 -0
- package/dist/client/missionControlHandlers.js +34 -0
- package/dist/client/missionControlHeaders.d.ts +3 -0
- package/dist/client/missionControlHeaders.js +3 -0
- package/dist/client/nonIdempotentPaths.d.ts +1 -0
- package/dist/client/nonIdempotentPaths.js +5 -0
- package/dist/client/partnerIdHandler.d.ts +8 -0
- package/dist/client/partnerIdHandler.js +14 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +3 -0
- package/package.json +15 -3
- package/.env.local.example +0 -9
- package/src/client/autoCancelOrderHandler.ts +0 -135
- package/src/client/clientBuilder.ts +0 -139
- package/src/client/generated/kiota-lock.json +0 -34
- package/src/client/generated/models/index.ts +0 -1723
- package/src/client/generated/order/cancelOrder/index.ts +0 -53
- package/src/client/generated/order/claimReservation/index.ts +0 -34
- package/src/client/generated/order/claimReservation/item/index.ts +0 -53
- package/src/client/generated/order/createOrder/index.ts +0 -53
- package/src/client/generated/order/index.ts +0 -112
- package/src/client/generated/order/reportOrder/index.ts +0 -53
- package/src/client/generated/partner/index.ts +0 -55
- package/src/client/generated/priceList/index.ts +0 -55
- package/src/client/generated/product/hasStock/index.ts +0 -53
- package/src/client/generated/product/index.ts +0 -119
- package/src/client/generated/publisher/index.ts +0 -55
- package/src/client/generated/region/index.ts +0 -63
- package/src/client/generated/reservation/index.ts +0 -71
- package/src/client/generated/reservation/item/cancel/index.ts +0 -48
- package/src/client/generated/reservation/item/index.ts +0 -62
- package/src/client/missionControlEnvironment.ts +0 -32
- package/src/client/missionControlHandlers.ts +0 -61
- package/src/client/missionControlHeaders.ts +0 -10
- package/src/client/nonIdempotentPaths.ts +0 -9
- package/src/client/partnerIdHandler.ts +0 -33
- package/tests/autoCancelOrderHandler.test.ts +0 -263
- package/tests/clientBuilder.test.ts +0 -154
- package/tests/integration/fixture.ts +0 -50
- package/tests/integration/partner.test.ts +0 -32
- package/tests/integration/priceList.test.ts +0 -28
- package/tests/integration/product.test.ts +0 -30
- package/tests/integration/publisher.test.ts +0 -30
- package/tests/integration/region.test.ts +0 -36
- package/tests/integration/setup.ts +0 -22
- package/tests/missionControlEnvironment.test.ts +0 -66
- package/tests/missionControlHeaders.test.ts +0 -20
- package/tsconfig.json +0 -18
- package/vitest.config.ts +0 -8
- package/vitest.integration.config.ts +0 -9
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { ClientSecretCredential } from "@azure/identity";
|
|
2
|
-
import { AzureIdentityAuthenticationProvider } from "@microsoft/kiota-authentication-azure";
|
|
3
|
-
import {
|
|
4
|
-
FetchRequestAdapter,
|
|
5
|
-
KiotaClientFactory,
|
|
6
|
-
} from "@microsoft/kiota-http-fetchlibrary";
|
|
7
|
-
import { createClient, type Client } from "./generated/client";
|
|
8
|
-
import {
|
|
9
|
-
getBaseUrl,
|
|
10
|
-
getScope,
|
|
11
|
-
MissionControlEnvironment,
|
|
12
|
-
} from "./missionControlEnvironment";
|
|
13
|
-
import { createHandlers } from "./missionControlHandlers";
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Fluent builder for creating a configured {@link Client} instance.
|
|
17
|
-
*/
|
|
18
|
-
export class ClientBuilder {
|
|
19
|
-
private _baseUrl: string = getBaseUrl(MissionControlEnvironment.Production);
|
|
20
|
-
private _scope: string = getScope(MissionControlEnvironment.Production);
|
|
21
|
-
private _tenantId: string = "13d084c1-d072-41f2-878b-c45ca721c9f6";
|
|
22
|
-
private _clientId?: string;
|
|
23
|
-
private _clientSecret?: string;
|
|
24
|
-
private _defaultPartnerId?: string;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Sets the default `X-Partner-Id` header value sent with every request.
|
|
28
|
-
*
|
|
29
|
-
* Most partners operate under a single partner identity, so setting this once on the
|
|
30
|
-
* builder means you never have to specify it per-request. When a request explicitly sets
|
|
31
|
-
* the header that value takes precedence over the default configured here.
|
|
32
|
-
*
|
|
33
|
-
* @param partnerId The partner ID shown on the client credentials page in the portal.
|
|
34
|
-
*/
|
|
35
|
-
withDefaultPartnerId(partnerId: string): this {
|
|
36
|
-
if (!partnerId?.trim())
|
|
37
|
-
throw new Error("partnerId must not be null or whitespace.");
|
|
38
|
-
this._defaultPartnerId = partnerId;
|
|
39
|
-
return this;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Overrides the base URL used for all API requests.
|
|
44
|
-
* Useful for pointing at a local development server or a custom endpoint.
|
|
45
|
-
* When combined with {@link forEnvironment}, the last call wins.
|
|
46
|
-
*
|
|
47
|
-
* @param baseUrl The base URL, e.g. `http://localhost:5000`.
|
|
48
|
-
*/
|
|
49
|
-
withBaseUrl(baseUrl: string): this {
|
|
50
|
-
if (!baseUrl?.trim())
|
|
51
|
-
throw new Error("baseUrl must not be null or whitespace.");
|
|
52
|
-
this._baseUrl = baseUrl;
|
|
53
|
-
return this;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Overrides the OAuth scope used when acquiring tokens.
|
|
58
|
-
* Useful when running against a local or custom environment whose app registration
|
|
59
|
-
* differs from the well-known environments.
|
|
60
|
-
* When combined with {@link forEnvironment}, the last call wins.
|
|
61
|
-
*
|
|
62
|
-
* @param scope The full scope URI, e.g. `api://<app-id>/.default`.
|
|
63
|
-
*/
|
|
64
|
-
withScope(scope: string): this {
|
|
65
|
-
if (!scope?.trim())
|
|
66
|
-
throw new Error("scope must not be null or whitespace.");
|
|
67
|
-
this._scope = scope;
|
|
68
|
-
return this;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Targets a well-known MissionControl environment. Sets the matching base URL and API scope together.
|
|
73
|
-
* Defaults to {@link MissionControlEnvironment.Production} when not called.
|
|
74
|
-
*
|
|
75
|
-
* @param environment The target environment.
|
|
76
|
-
*/
|
|
77
|
-
forEnvironment(environment: MissionControlEnvironment): this {
|
|
78
|
-
this._baseUrl = getBaseUrl(environment);
|
|
79
|
-
this._scope = getScope(environment);
|
|
80
|
-
return this;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Configures the client to authenticate using Azure AD client credentials (client secret flow).
|
|
85
|
-
* The API scope is derived from the configured environment unless overridden by {@link withScope}.
|
|
86
|
-
*
|
|
87
|
-
* @param clientId The application (client) ID of the app registration.
|
|
88
|
-
* @param clientSecret The client secret of the app registration.
|
|
89
|
-
* @param tenantId The Azure AD tenant ID. Uses the PandoMC tenant when omitted.
|
|
90
|
-
*/
|
|
91
|
-
withAzureAdClientCredentials(
|
|
92
|
-
clientId: string,
|
|
93
|
-
clientSecret: string,
|
|
94
|
-
tenantId?: string,
|
|
95
|
-
): this {
|
|
96
|
-
this._clientId = clientId;
|
|
97
|
-
this._clientSecret = clientSecret;
|
|
98
|
-
if (tenantId) this._tenantId = tenantId;
|
|
99
|
-
return this;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Builds and returns the configured {@link Client}.
|
|
104
|
-
*
|
|
105
|
-
* @throws {Error} When credentials have not been configured via {@link withAzureAdClientCredentials}.
|
|
106
|
-
*/
|
|
107
|
-
build(): Client {
|
|
108
|
-
if (!this._clientId || !this._clientSecret) {
|
|
109
|
-
throw new Error(
|
|
110
|
-
"No credentials configured. " +
|
|
111
|
-
"Call withAzureAdClientCredentials() before calling build().",
|
|
112
|
-
);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
const credential = new ClientSecretCredential(
|
|
116
|
-
this._tenantId,
|
|
117
|
-
this._clientId,
|
|
118
|
-
this._clientSecret,
|
|
119
|
-
);
|
|
120
|
-
const allowedHosts = new Set([new URL(this._baseUrl).host]);
|
|
121
|
-
const authProvider = new AzureIdentityAuthenticationProvider(
|
|
122
|
-
credential,
|
|
123
|
-
[this._scope],
|
|
124
|
-
undefined,
|
|
125
|
-
allowedHosts,
|
|
126
|
-
);
|
|
127
|
-
|
|
128
|
-
const middlewares = createHandlers(this._defaultPartnerId);
|
|
129
|
-
const httpClient = KiotaClientFactory.create(undefined, middlewares);
|
|
130
|
-
const adapter = new FetchRequestAdapter(
|
|
131
|
-
authProvider,
|
|
132
|
-
undefined,
|
|
133
|
-
undefined,
|
|
134
|
-
httpClient,
|
|
135
|
-
);
|
|
136
|
-
adapter.baseUrl = this._baseUrl;
|
|
137
|
-
return createClient(adapter);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"descriptionHash": "BAA14736D92DDDCC5514AEDDA4CBB363BD631F11F8F866137B467426B28CA83515C4F363D45106D48863C937E2D12297A0B4BB74245583675637DE9C235216EB",
|
|
3
|
-
"descriptionLocation": "../../../../swagger.json",
|
|
4
|
-
"lockFileVersion": "1.0.0",
|
|
5
|
-
"kiotaVersion": "1.32.3",
|
|
6
|
-
"clientClassName": "client",
|
|
7
|
-
"typeAccessModifier": "Public",
|
|
8
|
-
"clientNamespaceName": "missioncontrol.client",
|
|
9
|
-
"language": "TypeScript",
|
|
10
|
-
"usesBackingStore": false,
|
|
11
|
-
"excludeBackwardCompatible": false,
|
|
12
|
-
"includeAdditionalData": true,
|
|
13
|
-
"disableSSLValidation": false,
|
|
14
|
-
"serializers": [
|
|
15
|
-
"Microsoft.Kiota.Serialization.Json.JsonSerializationWriterFactory",
|
|
16
|
-
"Microsoft.Kiota.Serialization.Text.TextSerializationWriterFactory",
|
|
17
|
-
"Microsoft.Kiota.Serialization.Form.FormSerializationWriterFactory",
|
|
18
|
-
"Microsoft.Kiota.Serialization.Multipart.MultipartSerializationWriterFactory"
|
|
19
|
-
],
|
|
20
|
-
"deserializers": [
|
|
21
|
-
"Microsoft.Kiota.Serialization.Json.JsonParseNodeFactory",
|
|
22
|
-
"Microsoft.Kiota.Serialization.Text.TextParseNodeFactory",
|
|
23
|
-
"Microsoft.Kiota.Serialization.Form.FormParseNodeFactory"
|
|
24
|
-
],
|
|
25
|
-
"structuredMimeTypes": [
|
|
26
|
-
"application/json",
|
|
27
|
-
"text/plain;q=0.9",
|
|
28
|
-
"application/x-www-form-urlencoded;q=0.2",
|
|
29
|
-
"multipart/form-data;q=0.1"
|
|
30
|
-
],
|
|
31
|
-
"includePatterns": [],
|
|
32
|
-
"excludePatterns": [],
|
|
33
|
-
"disabledValidationRules": []
|
|
34
|
-
}
|