@novu/api 0.0.1-alpha.161 → 0.0.1-alpha.173
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/hooks/novu-custom-hook.d.ts +3 -0
- package/hooks/novu-custom-hook.d.ts.map +1 -1
- package/hooks/novu-custom-hook.js +17 -1
- package/hooks/novu-custom-hook.js.map +1 -1
- package/lib/config.d.ts +3 -3
- package/lib/config.js +3 -3
- package/lib/security.js +1 -1
- package/lib/security.js.map +1 -1
- package/models/components/idempotencyresponse.d.ts +9 -2
- package/models/components/idempotencyresponse.d.ts.map +1 -1
- package/models/components/idempotencyresponse.js +6 -2
- package/models/components/idempotencyresponse.js.map +1 -1
- package/package.json +1 -1
- package/src/hooks/novu-custom-hook.ts +18 -2
- package/src/lib/config.ts +3 -3
- package/src/lib/security.ts +1 -1
- package/src/models/components/idempotencyresponse.ts +15 -4
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { AfterSuccessContext, AfterSuccessHook, BeforeRequestContext, BeforeRequestHook } from "./types";
|
|
2
2
|
export declare class NovuCustomHook implements BeforeRequestHook, AfterSuccessHook {
|
|
3
3
|
beforeRequest(_hookCtx: BeforeRequestContext, request: Request): Request;
|
|
4
|
+
private addIdempotencyHeader;
|
|
5
|
+
private generateIdempotencyKey;
|
|
6
|
+
private addAuthHeader;
|
|
4
7
|
afterSuccess(_hookCtx: AfterSuccessContext, response: Response): Promise<Response>;
|
|
5
8
|
}
|
|
6
9
|
//# sourceMappingURL=novu-custom-hook.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novu-custom-hook.d.ts","sourceRoot":"","sources":["../src/hooks/novu-custom-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAEvG,qBAAa,cACT,YAAY,iBAAiB,EAAE,gBAAgB;IAE/C,aAAa,CAAC,QAAQ,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"novu-custom-hook.d.ts","sourceRoot":"","sources":["../src/hooks/novu-custom-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAEvG,qBAAa,cACT,YAAY,iBAAiB,EAAE,gBAAgB;IAE/C,aAAa,CAAC,QAAQ,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAKxE,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,aAAa;IAaf,YAAY,CAAC,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CAkB3F"}
|
|
@@ -3,6 +3,23 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.NovuCustomHook = void 0;
|
|
4
4
|
class NovuCustomHook {
|
|
5
5
|
beforeRequest(_hookCtx, request) {
|
|
6
|
+
this.addAuthHeader(request);
|
|
7
|
+
this.addIdempotencyHeader(request);
|
|
8
|
+
return request;
|
|
9
|
+
}
|
|
10
|
+
addIdempotencyHeader(request) {
|
|
11
|
+
const idempotencyKey = 'Idempotency-Key';
|
|
12
|
+
const keyValue = request.headers.get(idempotencyKey);
|
|
13
|
+
if (!keyValue || keyValue === '') {
|
|
14
|
+
request.headers.set(idempotencyKey, this.generateIdempotencyKey());
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
generateIdempotencyKey() {
|
|
18
|
+
const timestamp = Date.now();
|
|
19
|
+
const randomString = Math.random().toString(36).substr(2, 9); // Generates a random alphanumeric string
|
|
20
|
+
return `${timestamp}-${randomString}`;
|
|
21
|
+
}
|
|
22
|
+
addAuthHeader(request) {
|
|
6
23
|
const authKey = 'authorization';
|
|
7
24
|
const hasAuthorization = request.headers.has(authKey);
|
|
8
25
|
const apiKeyPrefix = 'ApiKey';
|
|
@@ -12,7 +29,6 @@ class NovuCustomHook {
|
|
|
12
29
|
request.headers.set(authKey, `${apiKeyPrefix} ${key}`);
|
|
13
30
|
}
|
|
14
31
|
}
|
|
15
|
-
return request;
|
|
16
32
|
}
|
|
17
33
|
async afterSuccess(_hookCtx, response) {
|
|
18
34
|
const responseAsText = await response.clone().text();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novu-custom-hook.js","sourceRoot":"","sources":["../src/hooks/novu-custom-hook.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IAGvB,aAAa,CAAC,QAA8B,EAAE,OAAgB;QAC1D,MAAM,OAAO,GAAG,eAAe,CAAC;QAChC,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,QAAQ,CAAC;QAC9B,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEzC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"novu-custom-hook.js","sourceRoot":"","sources":["../src/hooks/novu-custom-hook.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IAGvB,aAAa,CAAC,QAA8B,EAAE,OAAgB;QAC1D,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAClC,OAAO,OAAO,CAAC;IACnB,CAAC;IACO,oBAAoB,CAAC,OAAgB;QACzC,MAAM,cAAc,GAAG,iBAAiB,CAAC;QACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,IAAK,QAAQ,KAAG,EAAE,EAAG,CAAC;YAC/B,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAA;QACtE,CAAC;IACT,CAAC;IACO,sBAAsB;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,yCAAyC;QACnG,OAAO,GAAG,SAAS,IAAI,YAAY,EAAE,CAAC;IAC9C,CAAC;IACW,aAAa,CAAC,OAAgB;QAClC,MAAM,OAAO,GAAG,eAAe,CAAC;QAChC,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,QAAQ,CAAC;QAC9B,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEzC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,YAAY,IAAI,GAAG,EAAE,CAAC,CAAA;YAC1D,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAA6B,EAAE,QAAkB;QAChE,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;QACrD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC/D,IAAI,CAAC,cAAc,IAAI,cAAc,IAAG,EAAE,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9E,OAAO,QAAQ,CAAC;QACpB,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;QAEnD,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;YACnF,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;gBACnD,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC5B,CAAC,CAAC,CAAC,iCAAiC;QACzC,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ;AAnDD,wCAmDC"}
|
package/lib/config.d.ts
CHANGED
|
@@ -27,8 +27,8 @@ export declare function serverURLFromOptions(options: SDKOptions): URL | null;
|
|
|
27
27
|
export declare const SDK_METADATA: {
|
|
28
28
|
readonly language: "typescript";
|
|
29
29
|
readonly openapiDocVersion: "1.0";
|
|
30
|
-
readonly sdkVersion: "0.0.1-alpha.
|
|
31
|
-
readonly genVersion: "2.
|
|
32
|
-
readonly userAgent: "speakeasy-sdk/typescript 0.0.1-alpha.
|
|
30
|
+
readonly sdkVersion: "0.0.1-alpha.173";
|
|
31
|
+
readonly genVersion: "2.484.0";
|
|
32
|
+
readonly userAgent: "speakeasy-sdk/typescript 0.0.1-alpha.173 2.484.0 1.0 @novu/api";
|
|
33
33
|
};
|
|
34
34
|
//# sourceMappingURL=config.d.ts.map
|
package/lib/config.js
CHANGED
|
@@ -29,8 +29,8 @@ exports.serverURLFromOptions = serverURLFromOptions;
|
|
|
29
29
|
exports.SDK_METADATA = {
|
|
30
30
|
language: "typescript",
|
|
31
31
|
openapiDocVersion: "1.0",
|
|
32
|
-
sdkVersion: "0.0.1-alpha.
|
|
33
|
-
genVersion: "2.
|
|
34
|
-
userAgent: "speakeasy-sdk/typescript 0.0.1-alpha.
|
|
32
|
+
sdkVersion: "0.0.1-alpha.173",
|
|
33
|
+
genVersion: "2.484.0",
|
|
34
|
+
userAgent: "speakeasy-sdk/typescript 0.0.1-alpha.173 2.484.0 1.0 @novu/api",
|
|
35
35
|
};
|
|
36
36
|
//# sourceMappingURL=config.js.map
|
package/lib/security.js
CHANGED
package/lib/security.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.js","sourceRoot":"","sources":["../src/lib/security.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAYH,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,8CAAyB,CAAA;IACzB,4EAAuD,CAAA;AACzD,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B;AAED,MAAa,aAAc,SAAQ,KAAK;IACtC,YACS,IAAuB,EAC9B,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,SAAI,GAAJ,IAAI,CAAmB;QAI9B,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,UAAU;QACf,OAAO,IAAI,aAAa,CACtB,iBAAiB,CAAC,UAAU,EAC5B,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,gBAAgB,CAAC,IAAY;QAClC,OAAO,IAAI,aAAa,CACtB,iBAAiB,CAAC,wBAAwB,EAC1C,+BAA+B,IAAI,EAAE,CACtC,CAAC;IACJ,CAAC;CACF;AArBD,sCAqBC;AA2ED,SAAgB,eAAe,CAC7B,GAAG,OAA0B;IAE7B,MAAM,KAAK,GAAkB;QAC3B,KAAK,EAAE,EAAE
|
|
1
|
+
{"version":3,"file":"security.js","sourceRoot":"","sources":["../src/lib/security.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import * as z from "zod";
|
|
2
2
|
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
3
3
|
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
4
|
-
export type IdempotencyResponse = {
|
|
4
|
+
export type IdempotencyResponse = {
|
|
5
|
+
/**
|
|
6
|
+
* A unique identifier for the idempotency response
|
|
7
|
+
*/
|
|
8
|
+
number: number;
|
|
9
|
+
};
|
|
5
10
|
/** @internal */
|
|
6
11
|
export declare const IdempotencyResponse$inboundSchema: z.ZodType<IdempotencyResponse, z.ZodTypeDef, unknown>;
|
|
7
12
|
/** @internal */
|
|
8
|
-
export type IdempotencyResponse$Outbound = {
|
|
13
|
+
export type IdempotencyResponse$Outbound = {
|
|
14
|
+
number: number;
|
|
15
|
+
};
|
|
9
16
|
/** @internal */
|
|
10
17
|
export declare const IdempotencyResponse$outboundSchema: z.ZodType<IdempotencyResponse$Outbound, z.ZodTypeDef, IdempotencyResponse>;
|
|
11
18
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idempotencyresponse.d.ts","sourceRoot":"","sources":["../../src/models/components/idempotencyresponse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,MAAM,mBAAmB,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"idempotencyresponse.d.ts","sourceRoot":"","sources":["../../src/models/components/idempotencyresponse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,iCAAiC,EAAE,CAAC,CAAC,OAAO,CACvD,mBAAmB,EACnB,CAAC,CAAC,UAAU,EACZ,OAAO,CAGP,CAAC;AAEH,gBAAgB;AAChB,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,kCAAkC,EAAE,CAAC,CAAC,OAAO,CACxD,4BAA4B,EAC5B,CAAC,CAAC,UAAU,EACZ,mBAAmB,CAGnB,CAAC;AAEH;;;GAGG;AACH,yBAAiB,oBAAoB,CAAC;IACpC,mEAAmE;IAC5D,MAAM,aAAa,uDAAoC,CAAC;IAC/D,oEAAoE;IAC7D,MAAM,cAAc,4EAAqC,CAAC;IACjE,8DAA8D;IAC9D,KAAY,QAAQ,GAAG,4BAA4B,CAAC;CACrD;AAED,wBAAgB,yBAAyB,CACvC,mBAAmB,EAAE,mBAAmB,GACvC,MAAM,CAIR;AAED,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAM1D"}
|
|
@@ -30,9 +30,13 @@ exports.idempotencyResponseFromJSON = exports.idempotencyResponseToJSON = export
|
|
|
30
30
|
const z = __importStar(require("zod"));
|
|
31
31
|
const schemas_js_1 = require("../../lib/schemas.js");
|
|
32
32
|
/** @internal */
|
|
33
|
-
exports.IdempotencyResponse$inboundSchema = z.object({
|
|
33
|
+
exports.IdempotencyResponse$inboundSchema = z.object({
|
|
34
|
+
number: z.number(),
|
|
35
|
+
});
|
|
34
36
|
/** @internal */
|
|
35
|
-
exports.IdempotencyResponse$outboundSchema = z.object({
|
|
37
|
+
exports.IdempotencyResponse$outboundSchema = z.object({
|
|
38
|
+
number: z.number(),
|
|
39
|
+
});
|
|
36
40
|
/**
|
|
37
41
|
* @internal
|
|
38
42
|
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idempotencyresponse.js","sourceRoot":"","sources":["../../src/models/components/idempotencyresponse.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,qDAAiD;
|
|
1
|
+
{"version":3,"file":"idempotencyresponse.js","sourceRoot":"","sources":["../../src/models/components/idempotencyresponse.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,qDAAiD;AAWjD,gBAAgB;AACH,QAAA,iCAAiC,GAI1C,CAAC,CAAC,MAAM,CAAC;IACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAOH,gBAAgB;AACH,QAAA,kCAAkC,GAI3C,CAAC,CAAC,MAAM,CAAC;IACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAEH;;;GAGG;AACH,IAAiB,oBAAoB,CAOpC;AAPD,WAAiB,oBAAoB;IACnC,mEAAmE;IACtD,kCAAa,GAAG,yCAAiC,CAAC;IAC/D,oEAAoE;IACvD,mCAAc,GAAG,0CAAkC,CAAC;AAGnE,CAAC,EAPgB,oBAAoB,oCAApB,oBAAoB,QAOpC;AAED,SAAgB,yBAAyB,CACvC,mBAAwC;IAExC,OAAO,IAAI,CAAC,SAAS,CACnB,0CAAkC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAC9D,CAAC;AACJ,CAAC;AAND,8DAMC;AAED,SAAgB,2BAA2B,CACzC,UAAkB;IAElB,OAAO,IAAA,sBAAS,EACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,yCAAiC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC7D,iDAAiD,CAClD,CAAC;AACJ,CAAC;AARD,kEAQC"}
|
package/package.json
CHANGED
|
@@ -4,6 +4,23 @@ export class NovuCustomHook
|
|
|
4
4
|
implements BeforeRequestHook, AfterSuccessHook
|
|
5
5
|
{
|
|
6
6
|
beforeRequest(_hookCtx: BeforeRequestContext, request: Request): Request {
|
|
7
|
+
this.addAuthHeader(request);
|
|
8
|
+
this.addIdempotencyHeader(request)
|
|
9
|
+
return request;
|
|
10
|
+
}
|
|
11
|
+
private addIdempotencyHeader(request: Request) {
|
|
12
|
+
const idempotencyKey = 'Idempotency-Key';
|
|
13
|
+
const keyValue = request.headers.get(idempotencyKey);
|
|
14
|
+
if (!keyValue || keyValue==='' ) {
|
|
15
|
+
request.headers.set(idempotencyKey, this.generateIdempotencyKey())
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
private generateIdempotencyKey(): string {
|
|
19
|
+
const timestamp = Date.now();
|
|
20
|
+
const randomString = Math.random().toString(36).substr(2, 9); // Generates a random alphanumeric string
|
|
21
|
+
return `${timestamp}-${randomString}`;
|
|
22
|
+
}
|
|
23
|
+
private addAuthHeader(request: Request) {
|
|
7
24
|
const authKey = 'authorization';
|
|
8
25
|
const hasAuthorization = request.headers.has(authKey);
|
|
9
26
|
const apiKeyPrefix = 'ApiKey';
|
|
@@ -11,10 +28,9 @@ export class NovuCustomHook
|
|
|
11
28
|
const key = request.headers.get(authKey);
|
|
12
29
|
|
|
13
30
|
if (key && !key.includes(apiKeyPrefix)) {
|
|
14
|
-
request.headers.set(authKey
|
|
31
|
+
request.headers.set(authKey, `${apiKeyPrefix} ${key}`)
|
|
15
32
|
}
|
|
16
33
|
}
|
|
17
|
-
return request;
|
|
18
34
|
}
|
|
19
35
|
|
|
20
36
|
async afterSuccess(_hookCtx: AfterSuccessContext, response: Response): Promise<Response> {
|
package/src/lib/config.ts
CHANGED
|
@@ -55,7 +55,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
|
|
55
55
|
export const SDK_METADATA = {
|
|
56
56
|
language: "typescript",
|
|
57
57
|
openapiDocVersion: "1.0",
|
|
58
|
-
sdkVersion: "0.0.1-alpha.
|
|
59
|
-
genVersion: "2.
|
|
60
|
-
userAgent: "speakeasy-sdk/typescript 0.0.1-alpha.
|
|
58
|
+
sdkVersion: "0.0.1-alpha.173",
|
|
59
|
+
genVersion: "2.484.0",
|
|
60
|
+
userAgent: "speakeasy-sdk/typescript 0.0.1-alpha.173 2.484.0 1.0 @novu/api",
|
|
61
61
|
} as const;
|
package/src/lib/security.ts
CHANGED
|
@@ -7,24 +7,35 @@ import { safeParse } from "../../lib/schemas.js";
|
|
|
7
7
|
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
8
8
|
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
9
9
|
|
|
10
|
-
export type IdempotencyResponse = {
|
|
10
|
+
export type IdempotencyResponse = {
|
|
11
|
+
/**
|
|
12
|
+
* A unique identifier for the idempotency response
|
|
13
|
+
*/
|
|
14
|
+
number: number;
|
|
15
|
+
};
|
|
11
16
|
|
|
12
17
|
/** @internal */
|
|
13
18
|
export const IdempotencyResponse$inboundSchema: z.ZodType<
|
|
14
19
|
IdempotencyResponse,
|
|
15
20
|
z.ZodTypeDef,
|
|
16
21
|
unknown
|
|
17
|
-
> = z.object({
|
|
22
|
+
> = z.object({
|
|
23
|
+
number: z.number(),
|
|
24
|
+
});
|
|
18
25
|
|
|
19
26
|
/** @internal */
|
|
20
|
-
export type IdempotencyResponse$Outbound = {
|
|
27
|
+
export type IdempotencyResponse$Outbound = {
|
|
28
|
+
number: number;
|
|
29
|
+
};
|
|
21
30
|
|
|
22
31
|
/** @internal */
|
|
23
32
|
export const IdempotencyResponse$outboundSchema: z.ZodType<
|
|
24
33
|
IdempotencyResponse$Outbound,
|
|
25
34
|
z.ZodTypeDef,
|
|
26
35
|
IdempotencyResponse
|
|
27
|
-
> = z.object({
|
|
36
|
+
> = z.object({
|
|
37
|
+
number: z.number(),
|
|
38
|
+
});
|
|
28
39
|
|
|
29
40
|
/**
|
|
30
41
|
* @internal
|