From 1e07bb2aed14e7a9ad1616bdb7b02a552423934f Mon Sep 17 00:00:00 2001 From: Simon Ramzi Date: Tue, 15 Aug 2023 15:08:00 +0100 Subject: [PATCH] [sc-48140] Added @adzerk/api-decision-js package and updated decision elements to use that rather than a generated folder. --- package-lock.json | 11 + package.json | 1 + src/client.ts | 6 +- src/generated/.openapi-generator-ignore | 23 -- src/generated/.openapi-generator/FILES | 18 - src/generated/.openapi-generator/VERSION | 1 - src/generated/apis/DecisionApi.ts | 64 --- src/generated/apis/UserdbApi.ts | 471 ----------------------- src/generated/apis/index.ts | 2 - src/generated/index.ts | 3 - src/generated/models/ConsentRequest.ts | 65 ---- src/generated/models/Content.ts | 89 ----- src/generated/models/Decision.ts | 164 -------- src/generated/models/DecisionRequest.ts | 212 ---------- src/generated/models/DecisionResponse.ts | 80 ---- src/generated/models/Event.ts | 65 ---- src/generated/models/MatchedPoint.ts | 65 ---- src/generated/models/Placement.ts | 240 ------------ src/generated/models/PricingData.ts | 89 ----- src/generated/models/SkipFilters.ts | 57 --- src/generated/models/User.ts | 57 --- src/generated/models/index.ts | 11 - src/generated/runtime.ts | 319 --------------- src/models.ts | 2 +- 24 files changed, 16 insertions(+), 2099 deletions(-) delete mode 100644 src/generated/.openapi-generator-ignore delete mode 100644 src/generated/.openapi-generator/FILES delete mode 100644 src/generated/.openapi-generator/VERSION delete mode 100644 src/generated/apis/DecisionApi.ts delete mode 100644 src/generated/apis/UserdbApi.ts delete mode 100644 src/generated/apis/index.ts delete mode 100644 src/generated/index.ts delete mode 100644 src/generated/models/ConsentRequest.ts delete mode 100644 src/generated/models/Content.ts delete mode 100644 src/generated/models/Decision.ts delete mode 100644 src/generated/models/DecisionRequest.ts delete mode 100644 src/generated/models/DecisionResponse.ts delete mode 100644 src/generated/models/Event.ts delete mode 100644 src/generated/models/MatchedPoint.ts delete mode 100644 src/generated/models/Placement.ts delete mode 100644 src/generated/models/PricingData.ts delete mode 100644 src/generated/models/SkipFilters.ts delete mode 100644 src/generated/models/User.ts delete mode 100644 src/generated/models/index.ts delete mode 100644 src/generated/runtime.ts diff --git a/package-lock.json b/package-lock.json index 53be13d..5089843 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0-beta.22", "license": "Apache-2.0", "dependencies": { + "@adzerk/api-decision-js": "^1.0.9", "debug": "^4.1.1", "form-data": "^2.5.1", "isomorphic-unfetch": "^3.1.0" @@ -35,6 +36,11 @@ "typescript": "^3.6.4" } }, + "node_modules/@adzerk/api-decision-js": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@adzerk/api-decision-js/-/api-decision-js-1.0.9.tgz", + "integrity": "sha512-wlyOpk4lIW0l2XBfbqI1XKWjKx5fO1QPMfR7kMlMS02HmAD2BdkFT6yd8Cu/tuSGpdKHFuAsj2mauyRBSgQCmg==" + }, "node_modules/@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -11680,6 +11686,11 @@ } }, "dependencies": { + "@adzerk/api-decision-js": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@adzerk/api-decision-js/-/api-decision-js-1.0.9.tgz", + "integrity": "sha512-wlyOpk4lIW0l2XBfbqI1XKWjKx5fO1QPMfR7kMlMS02HmAD2BdkFT6yd8Cu/tuSGpdKHFuAsj2mauyRBSgQCmg==" + }, "@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", diff --git a/package.json b/package.json index 5737999..792da4e 100644 --- a/package.json +++ b/package.json @@ -59,6 +59,7 @@ ] }, "dependencies": { + "@adzerk/api-decision-js": "^1.0.9", "debug": "^4.1.1", "form-data": "^2.5.1", "isomorphic-unfetch": "^3.1.0" diff --git a/src/client.ts b/src/client.ts index 8e2d153..edf0baf 100644 --- a/src/client.ts +++ b/src/client.ts @@ -13,11 +13,11 @@ import { RequestContext, ResponseContext, Placement, -} from './generated'; + RequiredError, + UserdbApi +} from '@adzerk/api-decision-js'; import { DecisionRequest, DecisionResponse } from './models'; import { removeUndefinedAndBlocklisted } from './utils'; -import { UserdbApi } from './generated/apis/UserdbApi'; -import { RequiredError } from './generated/runtime'; import { LoggerFunc } from '.'; (global as any).FormData = (global as any).FormData || FormData; diff --git a/src/generated/.openapi-generator-ignore b/src/generated/.openapi-generator-ignore deleted file mode 100644 index 7484ee5..0000000 --- a/src/generated/.openapi-generator-ignore +++ /dev/null @@ -1,23 +0,0 @@ -# OpenAPI Generator Ignore -# Generated by openapi-generator https://github.com/openapitools/openapi-generator - -# Use this file to prevent files from being overwritten by the generator. -# The patterns follow closely to .gitignore or .dockerignore. - -# As an example, the C# client generator defines ApiClient.cs. -# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line: -#ApiClient.cs - -# You can match any string of characters against a directory, file or extension with a single asterisk (*): -#foo/*/qux -# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux - -# You can recursively match patterns against a directory, file or extension with a double asterisk (**): -#foo/**/qux -# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux - -# You can also negate patterns with an exclamation (!). -# For example, you can ignore all files in a docs folder with the file extension .md: -#docs/*.md -# Then explicitly reverse the ignore rule for a single file: -#!docs/README.md diff --git a/src/generated/.openapi-generator/FILES b/src/generated/.openapi-generator/FILES deleted file mode 100644 index a6d1e98..0000000 --- a/src/generated/.openapi-generator/FILES +++ /dev/null @@ -1,18 +0,0 @@ -.openapi-generator-ignore -apis/DecisionApi.ts -apis/UserdbApi.ts -apis/index.ts -index.ts -models/ConsentRequest.ts -models/Content.ts -models/Decision.ts -models/DecisionRequest.ts -models/DecisionResponse.ts -models/Event.ts -models/MatchedPoint.ts -models/Placement.ts -models/PricingData.ts -models/SkipFilters.ts -models/User.ts -models/index.ts -runtime.ts diff --git a/src/generated/.openapi-generator/VERSION b/src/generated/.openapi-generator/VERSION deleted file mode 100644 index acf69b4..0000000 --- a/src/generated/.openapi-generator/VERSION +++ /dev/null @@ -1 +0,0 @@ -5.1.0 \ No newline at end of file diff --git a/src/generated/apis/DecisionApi.ts b/src/generated/apis/DecisionApi.ts deleted file mode 100644 index af467d4..0000000 --- a/src/generated/apis/DecisionApi.ts +++ /dev/null @@ -1,64 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -import * as runtime from '../runtime'; -import { - DecisionRequest, - DecisionRequestFromJSON, - DecisionRequestToJSON, - DecisionResponse, - DecisionResponseFromJSON, - DecisionResponseToJSON, -} from '../models'; - -export interface GetDecisionsRequest { - decisionRequest?: DecisionRequest; -} - -/** - * - */ -export class DecisionApi extends runtime.BaseAPI { - - /** - * Request Decision(s) - */ - async getDecisionsRaw(requestParameters: GetDecisionsRequest): Promise> { - const queryParameters: any = {}; - - const headerParameters: runtime.HTTPHeaders = {}; - - headerParameters['Content-Type'] = 'application/json'; - - const response = await this.request({ - path: `/api/v2`, - method: 'POST', - headers: headerParameters, - query: queryParameters, - body: DecisionRequestToJSON(requestParameters.decisionRequest), - }); - - return new runtime.JSONApiResponse(response, (jsonValue) => DecisionResponseFromJSON(jsonValue)); - } - - /** - * Request Decision(s) - */ - async getDecisions(decisionRequest?: DecisionRequest): Promise { - const response = await this.getDecisionsRaw({ decisionRequest: decisionRequest }); - return await response.value(); - } - -} diff --git a/src/generated/apis/UserdbApi.ts b/src/generated/apis/UserdbApi.ts deleted file mode 100644 index b1599c7..0000000 --- a/src/generated/apis/UserdbApi.ts +++ /dev/null @@ -1,471 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -import * as runtime from '../runtime'; -import { - ConsentRequest, - ConsentRequestFromJSON, - ConsentRequestToJSON, -} from '../models'; - -export interface AddCustomPropertiesRequest { - networkId: number; - userKey: string; - body?: object; -} - -export interface AddInterestsRequest { - networkId: number; - userKey: string; - interest: string; -} - -export interface AddRetargetingSegmentRequest { - networkId: number; - advertiserId: number; - retargetingSegmentId: number; - userKey: string; -} - -export interface ForgetRequest { - networkId: number; - userKey: string; -} - -export interface GdprConsentRequest { - networkId: number; - consentRequest?: ConsentRequest; -} - -export interface IpOverrideRequest { - networkId: number; - userKey: string; - ip: string; -} - -export interface MatchUserRequest { - networkId: number; - userKey: string; - partnerId: number; - userId: number; -} - -export interface OptOutRequest { - networkId: number; - userKey: string; -} - -export interface ReadRequest { - networkId: number; - userKey: string; -} - -/** - * - */ -export class UserdbApi extends runtime.BaseAPI { - - /** - * Add Custom Properties to a User - */ - async addCustomPropertiesRaw(requestParameters: AddCustomPropertiesRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling addCustomProperties.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling addCustomProperties.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - headerParameters['Content-Type'] = 'application/json'; - - if (this.configuration && this.configuration.apiKey) { - headerParameters["X-Adzerk-ApiKey"] = this.configuration.apiKey("X-Adzerk-ApiKey"); // ApiKeyAuth authentication - } - - const response = await this.request({ - path: `/udb/{networkId}/custom`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'POST', - headers: headerParameters, - query: queryParameters, - body: requestParameters.body as any, - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * Add Custom Properties to a User - */ - async addCustomProperties(networkId: number, userKey: string, body?: object): Promise { - const response = await this.addCustomPropertiesRaw({ networkId: networkId, userKey: userKey, body: body }); - return await response.value(); - } - - /** - * Add Interests to a User - */ - async addInterestsRaw(requestParameters: AddInterestsRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling addInterests.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling addInterests.'); - } - - if (requestParameters.interest === null || requestParameters.interest === undefined) { - throw new runtime.RequiredError('interest','Required parameter requestParameters.interest was null or undefined when calling addInterests.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - if (requestParameters.interest !== undefined) { - queryParameters['interest'] = requestParameters.interest; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/udb/{networkId}/interest/i.gif`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'GET', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * Add Interests to a User - */ - async addInterests(networkId: number, userKey: string, interest: string): Promise { - const response = await this.addInterestsRaw({ networkId: networkId, userKey: userKey, interest: interest }); - return await response.value(); - } - - /** - * Add User to a Retargeting Segment - */ - async addRetargetingSegmentRaw(requestParameters: AddRetargetingSegmentRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling addRetargetingSegment.'); - } - - if (requestParameters.advertiserId === null || requestParameters.advertiserId === undefined) { - throw new runtime.RequiredError('advertiserId','Required parameter requestParameters.advertiserId was null or undefined when calling addRetargetingSegment.'); - } - - if (requestParameters.retargetingSegmentId === null || requestParameters.retargetingSegmentId === undefined) { - throw new runtime.RequiredError('retargetingSegmentId','Required parameter requestParameters.retargetingSegmentId was null or undefined when calling addRetargetingSegment.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling addRetargetingSegment.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/udb/{networkId}/rt/{advertiserId}/{retargetingSegmentId}/i.gif`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))).replace(`{${"advertiserId"}}`, encodeURIComponent(String(requestParameters.advertiserId))).replace(`{${"retargetingSegmentId"}}`, encodeURIComponent(String(requestParameters.retargetingSegmentId))), - method: 'GET', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * Add User to a Retargeting Segment - */ - async addRetargetingSegment(networkId: number, advertiserId: number, retargetingSegmentId: number, userKey: string): Promise { - const response = await this.addRetargetingSegmentRaw({ networkId: networkId, advertiserId: advertiserId, retargetingSegmentId: retargetingSegmentId, userKey: userKey }); - return await response.value(); - } - - /** - * Forget User - */ - async forgetRaw(requestParameters: ForgetRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling forget.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling forget.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - if (this.configuration && this.configuration.apiKey) { - headerParameters["X-Adzerk-ApiKey"] = this.configuration.apiKey("X-Adzerk-ApiKey"); // ApiKeyAuth authentication - } - - const response = await this.request({ - path: `/udb/{networkId}`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'DELETE', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.VoidApiResponse(response); - } - - /** - * Forget User - */ - async forget(networkId: number, userKey: string): Promise { - await this.forgetRaw({ networkId: networkId, userKey: userKey }); - } - - /** - * GDPR Consent - */ - async gdprConsentRaw(requestParameters: GdprConsentRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling gdprConsent.'); - } - - const queryParameters: any = {}; - - const headerParameters: runtime.HTTPHeaders = {}; - - headerParameters['Content-Type'] = 'application/json'; - - if (this.configuration && this.configuration.apiKey) { - headerParameters["X-Adzerk-ApiKey"] = this.configuration.apiKey("X-Adzerk-ApiKey"); // ApiKeyAuth authentication - } - - const response = await this.request({ - path: `/udb/{networkId}/consent`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'POST', - headers: headerParameters, - query: queryParameters, - body: ConsentRequestToJSON(requestParameters.consentRequest), - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * GDPR Consent - */ - async gdprConsent(networkId: number, consentRequest?: ConsentRequest): Promise { - const response = await this.gdprConsentRaw({ networkId: networkId, consentRequest: consentRequest }); - return await response.value(); - } - - /** - * IP Address Override - */ - async ipOverrideRaw(requestParameters: IpOverrideRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling ipOverride.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling ipOverride.'); - } - - if (requestParameters.ip === null || requestParameters.ip === undefined) { - throw new runtime.RequiredError('ip','Required parameter requestParameters.ip was null or undefined when calling ipOverride.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - if (requestParameters.ip !== undefined) { - queryParameters['ip'] = requestParameters.ip; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/udb/{networkId}/ip/i.gif`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'GET', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * IP Address Override - */ - async ipOverride(networkId: number, userKey: string, ip: string): Promise { - const response = await this.ipOverrideRaw({ networkId: networkId, userKey: userKey, ip: ip }); - return await response.value(); - } - - /** - * User Matching - */ - async matchUserRaw(requestParameters: MatchUserRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling matchUser.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling matchUser.'); - } - - if (requestParameters.partnerId === null || requestParameters.partnerId === undefined) { - throw new runtime.RequiredError('partnerId','Required parameter requestParameters.partnerId was null or undefined when calling matchUser.'); - } - - if (requestParameters.userId === null || requestParameters.userId === undefined) { - throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling matchUser.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - if (requestParameters.partnerId !== undefined) { - queryParameters['partnerId'] = requestParameters.partnerId; - } - - if (requestParameters.userId !== undefined) { - queryParameters['userId'] = requestParameters.userId; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/udb/{networkId}/sync/i.gif`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'GET', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * User Matching - */ - async matchUser(networkId: number, userKey: string, partnerId: number, userId: number): Promise { - const response = await this.matchUserRaw({ networkId: networkId, userKey: userKey, partnerId: partnerId, userId: userId }); - return await response.value(); - } - - /** - * Opt-Out a User - */ - async optOutRaw(requestParameters: OptOutRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling optOut.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling optOut.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/udb/{networkId}/optout/i.gif`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'GET', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.BlobApiResponse(response); - } - - /** - * Opt-Out a User - */ - async optOut(networkId: number, userKey: string): Promise { - const response = await this.optOutRaw({ networkId: networkId, userKey: userKey }); - return await response.value(); - } - - /** - * Read a User\'s UserDB Record - */ - async readRaw(requestParameters: ReadRequest): Promise> { - if (requestParameters.networkId === null || requestParameters.networkId === undefined) { - throw new runtime.RequiredError('networkId','Required parameter requestParameters.networkId was null or undefined when calling read.'); - } - - if (requestParameters.userKey === null || requestParameters.userKey === undefined) { - throw new runtime.RequiredError('userKey','Required parameter requestParameters.userKey was null or undefined when calling read.'); - } - - const queryParameters: any = {}; - - if (requestParameters.userKey !== undefined) { - queryParameters['userKey'] = requestParameters.userKey; - } - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/udb/{networkId}/read`.replace(`{${"networkId"}}`, encodeURIComponent(String(requestParameters.networkId))), - method: 'GET', - headers: headerParameters, - query: queryParameters, - }); - - return new runtime.JSONApiResponse(response); - } - - /** - * Read a User\'s UserDB Record - */ - async read(networkId: number, userKey: string): Promise { - const response = await this.readRaw({ networkId: networkId, userKey: userKey }); - return await response.value(); - } - -} diff --git a/src/generated/apis/index.ts b/src/generated/apis/index.ts deleted file mode 100644 index 3f08876..0000000 --- a/src/generated/apis/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './DecisionApi'; -export * from './UserdbApi'; diff --git a/src/generated/index.ts b/src/generated/index.ts deleted file mode 100644 index 848ecfa..0000000 --- a/src/generated/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './runtime'; -export * from './apis'; -export * from './models'; diff --git a/src/generated/models/ConsentRequest.ts b/src/generated/models/ConsentRequest.ts deleted file mode 100644 index ee8acb8..0000000 --- a/src/generated/models/ConsentRequest.ts +++ /dev/null @@ -1,65 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * - * @export - * @interface ConsentRequest - */ -export interface ConsentRequest { - /** - * - * @type {string} - * @memberof ConsentRequest - */ - userKey?: string; - /** - * - * @type {object} - * @memberof ConsentRequest - */ - consent?: object; -} - -export function ConsentRequestFromJSON(json: any): ConsentRequest { - return ConsentRequestFromJSONTyped(json, false); -} - -export function ConsentRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ConsentRequest { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'userKey': !exists(json, 'userKey') ? undefined : json['userKey'], - 'consent': !exists(json, 'consent') ? undefined : json['consent'], - }; -} - -export function ConsentRequestToJSON(value?: ConsentRequest | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'userKey': value.userKey, - 'consent': value.consent, - }; -} - - diff --git a/src/generated/models/Content.ts b/src/generated/models/Content.ts deleted file mode 100644 index ac8861d..0000000 --- a/src/generated/models/Content.ts +++ /dev/null @@ -1,89 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * - * @export - * @interface Content - */ -export interface Content { - /** - * - * @type {string} - * @memberof Content - */ - type?: string; - /** - * - * @type {string} - * @memberof Content - */ - template?: string; - /** - * - * @type {string} - * @memberof Content - */ - customTemplate?: string; - /** - * - * @type {object} - * @memberof Content - */ - data?: object; - /** - * - * @type {string} - * @memberof Content - */ - body?: string; -} - -export function ContentFromJSON(json: any): Content { - return ContentFromJSONTyped(json, false); -} - -export function ContentFromJSONTyped(json: any, ignoreDiscriminator: boolean): Content { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'type': !exists(json, 'type') ? undefined : json['type'], - 'template': !exists(json, 'template') ? undefined : json['template'], - 'customTemplate': !exists(json, 'customTemplate') ? undefined : json['customTemplate'], - 'data': !exists(json, 'data') ? undefined : json['data'], - 'body': !exists(json, 'body') ? undefined : json['body'], - }; -} - -export function ContentToJSON(value?: Content | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'type': value.type, - 'template': value.template, - 'customTemplate': value.customTemplate, - 'data': value.data, - 'body': value.body, - }; -} - - diff --git a/src/generated/models/Decision.ts b/src/generated/models/Decision.ts deleted file mode 100644 index bc0a8a9..0000000 --- a/src/generated/models/Decision.ts +++ /dev/null @@ -1,164 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -import { - Content, - ContentFromJSON, - ContentFromJSONTyped, - ContentToJSON, - Event, - EventFromJSON, - EventFromJSONTyped, - EventToJSON, - MatchedPoint, - MatchedPointFromJSON, - MatchedPointFromJSONTyped, - MatchedPointToJSON, - PricingData, - PricingDataFromJSON, - PricingDataFromJSONTyped, - PricingDataToJSON, -} from './'; - -/** - * - * @export - * @interface Decision - */ -export interface Decision { - /** - * - * @type {number} - * @memberof Decision - */ - adId?: number; - /** - * - * @type {number} - * @memberof Decision - */ - advertiserId?: number; - /** - * - * @type {number} - * @memberof Decision - */ - creativeId?: number; - /** - * - * @type {number} - * @memberof Decision - */ - flightId?: number; - /** - * - * @type {number} - * @memberof Decision - */ - campaignId?: number; - /** - * - * @type {number} - * @memberof Decision - */ - priorityId?: number; - /** - * - * @type {string} - * @memberof Decision - */ - clickUrl?: string; - /** - * - * @type {Array} - * @memberof Decision - */ - contents?: Array; - /** - * - * @type {string} - * @memberof Decision - */ - impressionUrl?: string; - /** - * - * @type {Array} - * @memberof Decision - */ - events?: Array; - /** - * - * @type {Array} - * @memberof Decision - */ - matchedPoints?: Array; - /** - * - * @type {PricingData} - * @memberof Decision - */ - pricing?: PricingData; -} - -export function DecisionFromJSON(json: any): Decision { - return DecisionFromJSONTyped(json, false); -} - -export function DecisionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Decision { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'adId': !exists(json, 'adId') ? undefined : json['adId'], - 'advertiserId': !exists(json, 'advertiserId') ? undefined : json['advertiserId'], - 'creativeId': !exists(json, 'creativeId') ? undefined : json['creativeId'], - 'flightId': !exists(json, 'flightId') ? undefined : json['flightId'], - 'campaignId': !exists(json, 'campaignId') ? undefined : json['campaignId'], - 'priorityId': !exists(json, 'priorityId') ? undefined : json['priorityId'], - 'clickUrl': !exists(json, 'clickUrl') ? undefined : json['clickUrl'], - 'contents': !exists(json, 'contents') ? undefined : ((json['contents'] as Array).map(ContentFromJSON)), - 'impressionUrl': !exists(json, 'impressionUrl') ? undefined : json['impressionUrl'], - 'events': !exists(json, 'events') ? undefined : ((json['events'] as Array).map(EventFromJSON)), - 'matchedPoints': !exists(json, 'matchedPoints') ? undefined : ((json['matchedPoints'] as Array).map(MatchedPointFromJSON)), - 'pricing': !exists(json, 'pricing') ? undefined : PricingDataFromJSON(json['pricing']), - }; -} - -export function DecisionToJSON(value?: Decision | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'adId': value.adId, - 'advertiserId': value.advertiserId, - 'creativeId': value.creativeId, - 'flightId': value.flightId, - 'campaignId': value.campaignId, - 'priorityId': value.priorityId, - 'clickUrl': value.clickUrl, - 'contents': value.contents === undefined ? undefined : ((value.contents as Array).map(ContentToJSON)), - 'impressionUrl': value.impressionUrl, - 'events': value.events === undefined ? undefined : ((value.events as Array).map(EventToJSON)), - 'matchedPoints': value.matchedPoints === undefined ? undefined : ((value.matchedPoints as Array).map(MatchedPointToJSON)), - 'pricing': PricingDataToJSON(value.pricing), - }; -} - - diff --git a/src/generated/models/DecisionRequest.ts b/src/generated/models/DecisionRequest.ts deleted file mode 100644 index 1e2e5c8..0000000 --- a/src/generated/models/DecisionRequest.ts +++ /dev/null @@ -1,212 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -import { - Placement, - PlacementFromJSON, - PlacementFromJSONTyped, - PlacementToJSON, - User, - UserFromJSON, - UserFromJSONTyped, - UserToJSON, -} from './'; - -/** - * - * @export - * @interface DecisionRequest - */ -export interface DecisionRequest { - /** - * One or more Placement objects - * @type {Array} - * @memberof DecisionRequest - */ - placements: Array; - /** - * - * @type {User} - * @memberof DecisionRequest - */ - user?: User; - /** - * Keywords for keyword Targeting. Such as `"keywords": ["foo", "bar", "baz"]`. - * @type {Array} - * @memberof DecisionRequest - */ - keywords?: Array | null; - /** - * The current page URL - * @type {string} - * @memberof DecisionRequest - */ - url?: string | null; - /** - * The referrer URL - * @type {string} - * @memberof DecisionRequest - */ - referrer?: string | null; - /** - * The IP address. Required for [Geo-Targeting](https://dev.adzerk.com/docs/geo-location) - * @type {string} - * @memberof DecisionRequest - */ - ip?: string | null; - /** - * Numeric creative ids to disregard for ad selection - * @type {Array} - * @memberof DecisionRequest - */ - blockedCreatives?: Array | null; - /** - * If true, only ads containing a single image will be returned - * @type {boolean} - * @memberof DecisionRequest - */ - isMobile?: boolean | null; - /** - * If true, return pricing data for the decision in the response - * @type {boolean} - * @memberof DecisionRequest - */ - includePricingData?: boolean | null; - /** - * If true, only return ads that are set to honor Do Not Track - * @type {boolean} - * @memberof DecisionRequest - */ - notrack?: boolean | null; - /** - * If making a client-side request, set to true. Defaults to false to ensure a server isn't seen as a bot. See [here](https://dev.adzerk.com/docs/tracking-overview#section-bot-filtering) for more info - * @type {boolean} - * @memberof DecisionRequest - */ - enableBotFiltering?: boolean | null; - /** - * If true, override the IP address of the request with the IP address supplied on the UserKey. If no IP address is found on the UserKey, this will fall back to the IP address on the request. Requires UserDB - * @type {boolean} - * @memberof DecisionRequest - */ - enableUserDBIP?: boolean | null; - /** - * Object that sets the data consent preferences. Other consent settings are available in the GDPR settings documentation. - * @type {object} - * @memberof DecisionRequest - */ - consent?: object | null; - /** - * RTB requests only - sets an Identifier for Advertisers (IFA or IDFA) - * @type {string} - * @memberof DecisionRequest - */ - deviceID?: string | null; - /** - * - * @type {boolean} - * @memberof DecisionRequest - */ - parallel?: boolean | null; - /** - * - * @type {number} - * @memberof DecisionRequest - */ - intendedLatitude?: number | null; - /** - * - * @type {number} - * @memberof DecisionRequest - */ - intendedLongitude?: number | null; - /** - * - * @type {number} - * @memberof DecisionRequest - */ - radius?: number | null; - /** - * - * @type {boolean} - * @memberof DecisionRequest - */ - includeMatchedPoints?: boolean | null; -} - -export function DecisionRequestFromJSON(json: any): DecisionRequest { - return DecisionRequestFromJSONTyped(json, false); -} - -export function DecisionRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): DecisionRequest { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'placements': ((json['placements'] as Array).map(PlacementFromJSON)), - 'user': !exists(json, 'user') ? undefined : UserFromJSON(json['user']), - 'keywords': !exists(json, 'keywords') ? undefined : json['keywords'], - 'url': !exists(json, 'url') ? undefined : json['url'], - 'referrer': !exists(json, 'referrer') ? undefined : json['referrer'], - 'ip': !exists(json, 'ip') ? undefined : json['ip'], - 'blockedCreatives': !exists(json, 'blockedCreatives') ? undefined : json['blockedCreatives'], - 'isMobile': !exists(json, 'isMobile') ? undefined : json['isMobile'], - 'includePricingData': !exists(json, 'includePricingData') ? undefined : json['includePricingData'], - 'notrack': !exists(json, 'notrack') ? undefined : json['notrack'], - 'enableBotFiltering': !exists(json, 'enableBotFiltering') ? undefined : json['enableBotFiltering'], - 'enableUserDBIP': !exists(json, 'enableUserDBIP') ? undefined : json['enableUserDBIP'], - 'consent': !exists(json, 'consent') ? undefined : json['consent'], - 'deviceID': !exists(json, 'deviceID') ? undefined : json['deviceID'], - 'parallel': !exists(json, 'parallel') ? undefined : json['parallel'], - 'intendedLatitude': !exists(json, 'intendedLatitude') ? undefined : json['intendedLatitude'], - 'intendedLongitude': !exists(json, 'intendedLongitude') ? undefined : json['intendedLongitude'], - 'radius': !exists(json, 'radius') ? undefined : json['radius'], - 'includeMatchedPoints': !exists(json, 'includeMatchedPoints') ? undefined : json['includeMatchedPoints'], - }; -} - -export function DecisionRequestToJSON(value?: DecisionRequest | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'placements': ((value.placements as Array).map(PlacementToJSON)), - 'user': UserToJSON(value.user), - 'keywords': value.keywords, - 'url': value.url, - 'referrer': value.referrer, - 'ip': value.ip, - 'blockedCreatives': value.blockedCreatives, - 'isMobile': value.isMobile, - 'includePricingData': value.includePricingData, - 'notrack': value.notrack, - 'enableBotFiltering': value.enableBotFiltering, - 'enableUserDBIP': value.enableUserDBIP, - 'consent': value.consent, - 'deviceID': value.deviceID, - 'parallel': value.parallel, - 'intendedLatitude': value.intendedLatitude, - 'intendedLongitude': value.intendedLongitude, - 'radius': value.radius, - 'includeMatchedPoints': value.includeMatchedPoints, - }; -} - - diff --git a/src/generated/models/DecisionResponse.ts b/src/generated/models/DecisionResponse.ts deleted file mode 100644 index 420935b..0000000 --- a/src/generated/models/DecisionResponse.ts +++ /dev/null @@ -1,80 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -import { - User, - UserFromJSON, - UserFromJSONTyped, - UserToJSON, -} from './'; - -/** - * - * @export - * @interface DecisionResponse - */ -export interface DecisionResponse { - /** - * - * @type {User} - * @memberof DecisionResponse - */ - user?: User; - /** - * - * @type {object} - * @memberof DecisionResponse - */ - decisions?: object; - /** - * - * @type {object} - * @memberof DecisionResponse - */ - explain?: object; -} - -export function DecisionResponseFromJSON(json: any): DecisionResponse { - return DecisionResponseFromJSONTyped(json, false); -} - -export function DecisionResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): DecisionResponse { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'user': !exists(json, 'user') ? undefined : UserFromJSON(json['user']), - 'decisions': !exists(json, 'decisions') ? undefined : json['decisions'], - 'explain': !exists(json, 'explain') ? undefined : json['explain'], - }; -} - -export function DecisionResponseToJSON(value?: DecisionResponse | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'user': UserToJSON(value.user), - 'decisions': value.decisions, - 'explain': value.explain, - }; -} - - diff --git a/src/generated/models/Event.ts b/src/generated/models/Event.ts deleted file mode 100644 index ab4fa40..0000000 --- a/src/generated/models/Event.ts +++ /dev/null @@ -1,65 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * - * @export - * @interface Event - */ -export interface Event { - /** - * - * @type {number} - * @memberof Event - */ - id?: number; - /** - * - * @type {string} - * @memberof Event - */ - url?: string; -} - -export function EventFromJSON(json: any): Event { - return EventFromJSONTyped(json, false); -} - -export function EventFromJSONTyped(json: any, ignoreDiscriminator: boolean): Event { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'id': !exists(json, 'id') ? undefined : json['id'], - 'url': !exists(json, 'url') ? undefined : json['url'], - }; -} - -export function EventToJSON(value?: Event | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'id': value.id, - 'url': value.url, - }; -} - - diff --git a/src/generated/models/MatchedPoint.ts b/src/generated/models/MatchedPoint.ts deleted file mode 100644 index eefa4bc..0000000 --- a/src/generated/models/MatchedPoint.ts +++ /dev/null @@ -1,65 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * - * @export - * @interface MatchedPoint - */ -export interface MatchedPoint { - /** - * - * @type {string} - * @memberof MatchedPoint - */ - lat?: string; - /** - * - * @type {string} - * @memberof MatchedPoint - */ - lon?: string; -} - -export function MatchedPointFromJSON(json: any): MatchedPoint { - return MatchedPointFromJSONTyped(json, false); -} - -export function MatchedPointFromJSONTyped(json: any, ignoreDiscriminator: boolean): MatchedPoint { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'lat': !exists(json, 'lat') ? undefined : json['lat'], - 'lon': !exists(json, 'lon') ? undefined : json['lon'], - }; -} - -export function MatchedPointToJSON(value?: MatchedPoint | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'lat': value.lat, - 'lon': value.lon, - }; -} - - diff --git a/src/generated/models/Placement.ts b/src/generated/models/Placement.ts deleted file mode 100644 index 44d4048..0000000 --- a/src/generated/models/Placement.ts +++ /dev/null @@ -1,240 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -import { - SkipFilters, - SkipFiltersFromJSON, - SkipFiltersFromJSONTyped, - SkipFiltersToJSON, -} from './'; - -/** - * - * @export - * @interface Placement - */ -export interface Placement { - /** - * A unique name for the placement defined by you - * @type {string} - * @memberof Placement - */ - divName?: string; - /** - * The numeric network id - * @type {number} - * @memberof Placement - */ - networkId?: number; - /** - * The numeric site id - * @type {number} - * @memberof Placement - */ - siteId?: number; - /** - * One or more integer ad types. More info [here](https://dev.adzerk.com/docs/ad-sizes) - * @type {Array} - * @memberof Placement - */ - adTypes?: Array; - /** - * Zone IDs to use - * @type {Array} - * @memberof Placement - */ - zoneIds?: Array | null; - /** - * A numeric campaign id; if specified, only consider ads in that campaign - * @type {number} - * @memberof Placement - */ - campaignId?: number | null; - /** - * A numeric ad (flight-creative map) id; if specified, only serve that ad if possible - * @type {number} - * @memberof Placement - */ - flightId?: number | null; - /** - * A numeric ad (flight-creative map) id; if specified, only serve that ad if possible - * @type {number} - * @memberof Placement - */ - adId?: number | null; - /** - * The ad's click-through URL - * @type {string} - * @memberof Placement - */ - clickUrl?: string | null; - /** - * A map of key/value pairs used for [Custom Targeting](https://dev.adzerk.com/docs/custom-targeting) - * @type {object} - * @memberof Placement - */ - properties?: object | null; - /** - * An array of numeric event types. Requests tracking URLs for custom events. See here for [Event Tracking IDs](https://dev.adzerk.com/v1.0/docs/custom-event-tracking) - * @type {Array} - * @memberof Placement - */ - eventIds?: Array | null; - /** - * An object that overrides values for an advertiser, campaign, flight or ad. Used especially for header bidding - * @type {object} - * @memberof Placement - */ - overrides?: object | null; - /** - * A map of key/value pairs used with [ContentDB](https://dev.adzerk.com/docs/contentdb-1). The format is `"contentKeys": {"schema": "contentKey"}` - * @type {{ [key: string]: string; }} - * @memberof Placement - */ - contentKeys?: { [key: string]: string; } | null; - /** - * (BETA) The number of ads to return per placement. Integer between 1 and 20 - * @type {number} - * @memberof Placement - */ - count?: number | null; - /** - * (BETA) If true, fills ads in a multi-winner placement in proportion to the flight's goals - * @type {boolean} - * @memberof Placement - */ - proportionality?: boolean | null; - /** - * (BETA) The name of the eCPM Partition that should be used to source eCPM data for auctions - * @type {string} - * @memberof Placement - */ - ecpmPartition?: string | null; - /** - * (BETA) The names of the eCPM Partitions that should be used to source eCPM data for auctions - * @type {Array} - * @memberof Placement - */ - ecpmPartitions?: Array | null; - /** - * - * @type {number} - * @memberof Placement - */ - eventMultiplier?: number | null; - /** - * - * @type {boolean} - * @memberof Placement - */ - skipSelection?: boolean | null; - /** - * - * @type {object} - * @memberof Placement - */ - adQuery?: object | null; - /** - * - * @type {number} - * @memberof Placement - */ - floorPrice?: number | null; - /** - * - * @type {number} - * @memberof Placement - */ - floorCpc?: number | null; - /** - * - * @type {SkipFilters} - * @memberof Placement - */ - skipFilters?: SkipFilters; -} - -export function PlacementFromJSON(json: any): Placement { - return PlacementFromJSONTyped(json, false); -} - -export function PlacementFromJSONTyped(json: any, ignoreDiscriminator: boolean): Placement { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'divName': !exists(json, 'divName') ? undefined : json['divName'], - 'networkId': !exists(json, 'networkId') ? undefined : json['networkId'], - 'siteId': !exists(json, 'siteId') ? undefined : json['siteId'], - 'adTypes': !exists(json, 'adTypes') ? undefined : json['adTypes'], - 'zoneIds': !exists(json, 'zoneIds') ? undefined : json['zoneIds'], - 'campaignId': !exists(json, 'campaignId') ? undefined : json['campaignId'], - 'flightId': !exists(json, 'flightId') ? undefined : json['flightId'], - 'adId': !exists(json, 'adId') ? undefined : json['adId'], - 'clickUrl': !exists(json, 'clickUrl') ? undefined : json['clickUrl'], - 'properties': !exists(json, 'properties') ? undefined : json['properties'], - 'eventIds': !exists(json, 'eventIds') ? undefined : json['eventIds'], - 'overrides': !exists(json, 'overrides') ? undefined : json['overrides'], - 'contentKeys': !exists(json, 'contentKeys') ? undefined : json['contentKeys'], - 'count': !exists(json, 'count') ? undefined : json['count'], - 'proportionality': !exists(json, 'proportionality') ? undefined : json['proportionality'], - 'ecpmPartition': !exists(json, 'ecpmPartition') ? undefined : json['ecpmPartition'], - 'ecpmPartitions': !exists(json, 'ecpmPartitions') ? undefined : json['ecpmPartitions'], - 'eventMultiplier': !exists(json, 'eventMultiplier') ? undefined : json['eventMultiplier'], - 'skipSelection': !exists(json, 'skipSelection') ? undefined : json['skipSelection'], - 'adQuery': !exists(json, 'adQuery') ? undefined : json['adQuery'], - 'floorPrice': !exists(json, 'floorPrice') ? undefined : json['floorPrice'], - 'floorCpc': !exists(json, 'floorCpc') ? undefined : json['floorCpc'], - 'skipFilters': !exists(json, 'skipFilters') ? undefined : SkipFiltersFromJSON(json['skipFilters']), - }; -} - -export function PlacementToJSON(value?: Placement | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'divName': value.divName, - 'networkId': value.networkId, - 'siteId': value.siteId, - 'adTypes': value.adTypes, - 'zoneIds': value.zoneIds, - 'campaignId': value.campaignId, - 'flightId': value.flightId, - 'adId': value.adId, - 'clickUrl': value.clickUrl, - 'properties': value.properties, - 'eventIds': value.eventIds, - 'overrides': value.overrides, - 'contentKeys': value.contentKeys, - 'count': value.count, - 'proportionality': value.proportionality, - 'ecpmPartition': value.ecpmPartition, - 'ecpmPartitions': value.ecpmPartitions, - 'eventMultiplier': value.eventMultiplier, - 'skipSelection': value.skipSelection, - 'adQuery': value.adQuery, - 'floorPrice': value.floorPrice, - 'floorCpc': value.floorCpc, - 'skipFilters': SkipFiltersToJSON(value.skipFilters), - }; -} - - diff --git a/src/generated/models/PricingData.ts b/src/generated/models/PricingData.ts deleted file mode 100644 index 5bce5d1..0000000 --- a/src/generated/models/PricingData.ts +++ /dev/null @@ -1,89 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * - * @export - * @interface PricingData - */ -export interface PricingData { - /** - * - * @type {number} - * @memberof PricingData - */ - price?: number; - /** - * - * @type {number} - * @memberof PricingData - */ - clearPrice?: number; - /** - * - * @type {number} - * @memberof PricingData - */ - revenue?: number; - /** - * - * @type {number} - * @memberof PricingData - */ - rateType?: number; - /** - * - * @type {number} - * @memberof PricingData - */ - eCPM?: number; -} - -export function PricingDataFromJSON(json: any): PricingData { - return PricingDataFromJSONTyped(json, false); -} - -export function PricingDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): PricingData { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'price': !exists(json, 'price') ? undefined : json['price'], - 'clearPrice': !exists(json, 'clearPrice') ? undefined : json['clearPrice'], - 'revenue': !exists(json, 'revenue') ? undefined : json['revenue'], - 'rateType': !exists(json, 'rateType') ? undefined : json['rateType'], - 'eCPM': !exists(json, 'eCPM') ? undefined : json['eCPM'], - }; -} - -export function PricingDataToJSON(value?: PricingData | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'price': value.price, - 'clearPrice': value.clearPrice, - 'revenue': value.revenue, - 'rateType': value.rateType, - 'eCPM': value.eCPM, - }; -} - - diff --git a/src/generated/models/SkipFilters.ts b/src/generated/models/SkipFilters.ts deleted file mode 100644 index 3995fa8..0000000 --- a/src/generated/models/SkipFilters.ts +++ /dev/null @@ -1,57 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * - * @export - * @interface SkipFilters - */ -export interface SkipFilters { - /** - * Geolocation skip filter. - * @type {boolean} - * @memberof SkipFilters - */ - geolocation?: boolean; -} - -export function SkipFiltersFromJSON(json: any): SkipFilters { - return SkipFiltersFromJSONTyped(json, false); -} - -export function SkipFiltersFromJSONTyped(json: any, ignoreDiscriminator: boolean): SkipFilters { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'geolocation': !exists(json, 'geolocation') ? undefined : json['geolocation'], - }; -} - -export function SkipFiltersToJSON(value?: SkipFilters | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'geolocation': value.geolocation, - }; -} - - diff --git a/src/generated/models/User.ts b/src/generated/models/User.ts deleted file mode 100644 index a7c28f1..0000000 --- a/src/generated/models/User.ts +++ /dev/null @@ -1,57 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -import { exists, mapValues } from '../runtime'; -/** - * Object containing the UserKey used for [UserDB targeting](https://dev.adzerk.com/docs/userdb-1) - * @export - * @interface User - */ -export interface User { - /** - * The UserKey used for UserDB Targeting - * @type {string} - * @memberof User - */ - key?: string; -} - -export function UserFromJSON(json: any): User { - return UserFromJSONTyped(json, false); -} - -export function UserFromJSONTyped(json: any, ignoreDiscriminator: boolean): User { - if ((json === undefined) || (json === null)) { - return json; - } - return { - - 'key': !exists(json, 'key') ? undefined : json['key'], - }; -} - -export function UserToJSON(value?: User | null): any { - if (value === undefined) { - return undefined; - } - if (value === null) { - return null; - } - return { - - 'key': value.key, - }; -} - - diff --git a/src/generated/models/index.ts b/src/generated/models/index.ts deleted file mode 100644 index f59735d..0000000 --- a/src/generated/models/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -export * from './ConsentRequest'; -export * from './Content'; -export * from './Decision'; -export * from './DecisionRequest'; -export * from './DecisionResponse'; -export * from './Event'; -export * from './MatchedPoint'; -export * from './Placement'; -export * from './PricingData'; -export * from './SkipFilters'; -export * from './User'; diff --git a/src/generated/runtime.ts b/src/generated/runtime.ts deleted file mode 100644 index ccb0719..0000000 --- a/src/generated/runtime.ts +++ /dev/null @@ -1,319 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * Adzerk Decision API - * Adzerk Decision API - * - * The version of the OpenAPI document: 1.0 - * - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export const BASE_PATH = "https://e-23.adzerk.net".replace(/\/+$/, ""); - -const isBlob = (value: any) => typeof Blob !== 'undefined' && value instanceof Blob; - -/** - * This is the base class for all generated API classes. - */ -export class BaseAPI { - - private middleware: Middleware[]; - - constructor(protected configuration = new Configuration()) { - this.middleware = configuration.middleware; - } - - withMiddleware(this: T, ...middlewares: Middleware[]) { - const next = this.clone(); - next.middleware = next.middleware.concat(...middlewares); - return next; - } - - withPreMiddleware(this: T, ...preMiddlewares: Array) { - const middlewares = preMiddlewares.map((pre) => ({ pre })); - return this.withMiddleware(...middlewares); - } - - withPostMiddleware(this: T, ...postMiddlewares: Array) { - const middlewares = postMiddlewares.map((post) => ({ post })); - return this.withMiddleware(...middlewares); - } - - protected async request(context: RequestOpts): Promise { - const { url, init } = this.createFetchParams(context); - const response = await this.fetchApi(url, init); - if (response.status >= 200 && response.status < 300) { - return response; - } - throw response; - } - - private createFetchParams(context: RequestOpts) { - let url = this.configuration.basePath + context.path; - if (context.query !== undefined && Object.keys(context.query).length !== 0) { - // only add the querystring to the URL if there are query parameters. - // this is done to avoid urls ending with a "?" character which buggy webservers - // do not handle correctly sometimes. - url += '?' + this.configuration.queryParamsStringify(context.query); - } - const body = ((typeof FormData !== "undefined" && context.body instanceof FormData) || context.body instanceof URLSearchParams || isBlob(context.body)) - ? context.body - : JSON.stringify(context.body); - - const headers = Object.assign({}, this.configuration.headers, context.headers); - const init = { - method: context.method, - headers: headers, - body, - credentials: this.configuration.credentials - }; - return { url, init }; - } - - private fetchApi = async (url: string, init: RequestInit) => { - let fetchParams = { url, init }; - for (const middleware of this.middleware) { - if (middleware.pre) { - fetchParams = await middleware.pre({ - fetch: this.fetchApi, - ...fetchParams, - }) || fetchParams; - } - } - let response = await this.configuration.fetchApi(fetchParams.url, fetchParams.init); - for (const middleware of this.middleware) { - if (middleware.post) { - response = await middleware.post({ - fetch: this.fetchApi, - url, - init, - response: response.clone(), - }) || response; - } - } - return response; - } - - /** - * Create a shallow clone of `this` by constructing a new instance - * and then shallow cloning data members. - */ - private clone(this: T): T { - const constructor = this.constructor as any; - const next = new constructor(this.configuration); - next.middleware = this.middleware.slice(); - return next; - } -}; - -export class RequiredError extends Error { - name: "RequiredError" = "RequiredError"; - constructor(public field: string, msg?: string) { - super(msg); - } -} - -export const COLLECTION_FORMATS = { - csv: ",", - ssv: " ", - tsv: "\t", - pipes: "|", -}; - -export type FetchAPI = WindowOrWorkerGlobalScope['fetch']; - -export interface ConfigurationParameters { - basePath?: string; // override base path - fetchApi?: FetchAPI; // override for fetch implementation - middleware?: Middleware[]; // middleware to apply before/after fetch requests - queryParamsStringify?: (params: HTTPQuery) => string; // stringify function for query strings - username?: string; // parameter for basic security - password?: string; // parameter for basic security - apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security - headers?: HTTPHeaders; //header params we want to use on every request - credentials?: RequestCredentials; //value for the credentials param we want to use on each request -} - -export class Configuration { - constructor(private configuration: ConfigurationParameters = {}) {} - - get basePath(): string { - return this.configuration.basePath != null ? this.configuration.basePath : BASE_PATH; - } - - get fetchApi(): FetchAPI { - return this.configuration.fetchApi || window.fetch.bind(window); - } - - get middleware(): Middleware[] { - return this.configuration.middleware || []; - } - - get queryParamsStringify(): (params: HTTPQuery) => string { - return this.configuration.queryParamsStringify || querystring; - } - - get username(): string | undefined { - return this.configuration.username; - } - - get password(): string | undefined { - return this.configuration.password; - } - - get apiKey(): ((name: string) => string) | undefined { - const apiKey = this.configuration.apiKey; - if (apiKey) { - return typeof apiKey === 'function' ? apiKey : () => apiKey; - } - return undefined; - } - - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { - const accessToken = this.configuration.accessToken; - if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; - } - return undefined; - } - - get headers(): HTTPHeaders | undefined { - return this.configuration.headers; - } - - get credentials(): RequestCredentials | undefined { - return this.configuration.credentials; - } -} - -export type Json = any; -export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD'; -export type HTTPHeaders = { [key: string]: string }; -export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData | URLSearchParams; -export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; - -export interface FetchParams { - url: string; - init: RequestInit; -} - -export interface RequestOpts { - path: string; - method: HTTPMethod; - headers: HTTPHeaders; - query?: HTTPQuery; - body?: HTTPBody; -} - -export function exists(json: any, key: string) { - const value = json[key]; - return value !== null && value !== undefined; -} - -export function querystring(params: HTTPQuery, prefix: string = ''): string { - return Object.keys(params) - .map((key) => { - const fullKey = prefix + (prefix.length ? `[${key}]` : key); - const value = params[key]; - if (value instanceof Array) { - const multiValue = value.map(singleValue => encodeURIComponent(String(singleValue))) - .join(`&${encodeURIComponent(fullKey)}=`); - return `${encodeURIComponent(fullKey)}=${multiValue}`; - } - if (value instanceof Date) { - return `${encodeURIComponent(fullKey)}=${encodeURIComponent(value.toISOString())}`; - } - if (value instanceof Object) { - return querystring(value as HTTPQuery, fullKey); - } - return `${encodeURIComponent(fullKey)}=${encodeURIComponent(String(value))}`; - }) - .filter(part => part.length > 0) - .join('&'); -} - -export function mapValues(data: any, fn: (item: any) => any) { - return Object.keys(data).reduce( - (acc, key) => ({ ...acc, [key]: fn(data[key]) }), - {} - ); -} - -export function canConsumeForm(consumes: Consume[]): boolean { - for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { - return true; - } - } - return false; -} - -export interface Consume { - contentType: string -} - -export interface RequestContext { - fetch: FetchAPI; - url: string; - init: RequestInit; -} - -export interface ResponseContext { - fetch: FetchAPI; - url: string; - init: RequestInit; - response: Response; -} - -export interface Middleware { - pre?(context: RequestContext): Promise; - post?(context: ResponseContext): Promise; -} - -export interface ApiResponse { - raw: Response; - value(): Promise; -} - -export interface ResponseTransformer { - (json: any): T; -} - -export class JSONApiResponse { - constructor(public raw: Response, private transformer: ResponseTransformer = (jsonValue: any) => jsonValue) {} - - async value(): Promise { - return this.transformer(await this.raw.json()); - } -} - -export class VoidApiResponse { - constructor(public raw: Response) {} - - async value(): Promise { - return undefined; - } -} - -export class BlobApiResponse { - constructor(public raw: Response) {} - - async value(): Promise { - return await this.raw.blob(); - }; -} - -export class TextApiResponse { - constructor(public raw: Response) {} - - async value(): Promise { - return await this.raw.text(); - }; -} diff --git a/src/models.ts b/src/models.ts index 510ba28..cf398cd 100644 --- a/src/models.ts +++ b/src/models.ts @@ -7,7 +7,7 @@ import { User, DecisionResponse, DecisionRequest, -} from './generated/models'; +} from '@adzerk/api-decision-js'; interface Decisions { [placementName: string]: Array;