@rudderstack/integrations-lib 0.2.14 → 0.2.15
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/build/sdks/customerio_audience/index.d.ts +28 -0
- package/build/sdks/customerio_audience/index.d.ts.map +1 -0
- package/build/sdks/customerio_audience/index.js +64 -0
- package/build/sdks/customerio_audience/index.test.d.ts +2 -0
- package/build/sdks/customerio_audience/index.test.d.ts.map +1 -0
- package/build/sdks/customerio_audience/index.test.js +182 -0
- package/build/sdks/customerio_audience/type.d.ts +36 -0
- package/build/sdks/customerio_audience/type.d.ts.map +1 -0
- package/build/sdks/customerio_audience/type.js +3 -0
- package/build/sdks/customerio_audience/utils.d.ts +5 -0
- package/build/sdks/customerio_audience/utils.d.ts.map +1 -0
- package/build/sdks/customerio_audience/utils.js +11 -0
- package/build/sdks/index.d.ts +2 -1
- package/build/sdks/index.d.ts.map +1 -1
- package/build/sdks/index.js +4 -2
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { AuthObject, CreateSegmentBody, CreateSegmentResponse, GetSegmentsResponse } from './type';
|
|
2
|
+
import { AxiosClient } from '../../network/clients/axios_client';
|
|
3
|
+
export default class CustomerIOSegment {
|
|
4
|
+
static readonly url: string;
|
|
5
|
+
axiosClient: AxiosClient;
|
|
6
|
+
authObject: AuthObject;
|
|
7
|
+
constructor(authObject: any);
|
|
8
|
+
private static validateAuthObject;
|
|
9
|
+
/**
|
|
10
|
+
* This function returns the app api key.
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
getAppApiKey(): string;
|
|
14
|
+
/**
|
|
15
|
+
* This method fetches the segments. If unable to fetch the segments, it returns a RestError.
|
|
16
|
+
* ref: https://docs.customer.io/api/app/#operation/listSegments
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
getSegments(): Promise<GetSegmentsResponse>;
|
|
20
|
+
/**
|
|
21
|
+
* This method creates a manual segment. It requires the segment body. The method returns the created segment. If the manual segment is not created, it returns a RestError.
|
|
22
|
+
* ref: https://docs.customer.io/api/app/#operation/createManSegment
|
|
23
|
+
* @param body CreateSegment fields
|
|
24
|
+
* @returns
|
|
25
|
+
*/
|
|
26
|
+
createSegment(body: CreateSegmentBody): Promise<CreateSegmentResponse>;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdks/customerio_audience/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAEnG,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAGjE,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAyC;IAEpE,WAAW,EAAE,WAAW,CAAC;IAEzB,UAAU,EAAE,UAAU,CAAC;gBAEX,UAAU,KAAA;IAMtB,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAOjC;;;OAGG;IACH,YAAY,IAAI,MAAM;IAItB;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAiBjD;;;;;OAKG;IACG,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAiB7E"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("./utils");
|
|
4
|
+
const axios_client_1 = require("../../network/clients/axios_client");
|
|
5
|
+
class CustomerIOSegment {
|
|
6
|
+
constructor(authObject) {
|
|
7
|
+
CustomerIOSegment.validateAuthObject(authObject);
|
|
8
|
+
this.authObject = authObject;
|
|
9
|
+
this.axiosClient = new axios_client_1.AxiosClient();
|
|
10
|
+
}
|
|
11
|
+
static validateAuthObject(authObject) {
|
|
12
|
+
if (!authObject?.appApiKey || typeof authObject.appApiKey !== 'string') {
|
|
13
|
+
throw new Error('appApiKey is required and must be a string');
|
|
14
|
+
}
|
|
15
|
+
return authObject;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* This function returns the app api key.
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
getAppApiKey() {
|
|
22
|
+
return this.authObject.appApiKey;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* This method fetches the segments. If unable to fetch the segments, it returns a RestError.
|
|
26
|
+
* ref: https://docs.customer.io/api/app/#operation/listSegments
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
async getSegments() {
|
|
30
|
+
const headers = {
|
|
31
|
+
Accept: 'application/json',
|
|
32
|
+
Authorization: `Bearer ${this.getAppApiKey()}`,
|
|
33
|
+
};
|
|
34
|
+
const resp = await this.axiosClient.get(CustomerIOSegment.url, {
|
|
35
|
+
headers,
|
|
36
|
+
});
|
|
37
|
+
if (resp.type === 'success') {
|
|
38
|
+
return resp.responseBody;
|
|
39
|
+
}
|
|
40
|
+
throw new utils_1.RestError(resp.message, resp.statusCode);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* This method creates a manual segment. It requires the segment body. The method returns the created segment. If the manual segment is not created, it returns a RestError.
|
|
44
|
+
* ref: https://docs.customer.io/api/app/#operation/createManSegment
|
|
45
|
+
* @param body CreateSegment fields
|
|
46
|
+
* @returns
|
|
47
|
+
*/
|
|
48
|
+
async createSegment(body) {
|
|
49
|
+
const headers = {
|
|
50
|
+
'Content-Type': 'application/json',
|
|
51
|
+
Authorization: `Bearer ${this.getAppApiKey()}`,
|
|
52
|
+
};
|
|
53
|
+
const resp = await this.axiosClient.post(CustomerIOSegment.url, body, {
|
|
54
|
+
headers,
|
|
55
|
+
});
|
|
56
|
+
if (resp.type === 'success') {
|
|
57
|
+
return resp.responseBody;
|
|
58
|
+
}
|
|
59
|
+
throw new utils_1.RestError(resp.message, resp.statusCode);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
CustomerIOSegment.url = 'https://api.customer.io/v1/segments';
|
|
63
|
+
exports.default = CustomerIOSegment;
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2Rrcy9jdXN0b21lcmlvX2F1ZGllbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsbUNBQW9DO0FBQ3BDLHFFQUFpRTtBQUdqRSxNQUFxQixpQkFBaUI7SUFPcEMsWUFBWSxVQUFVO1FBQ3BCLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSwwQkFBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVPLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxVQUFzQjtRQUN0RCxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsSUFBSSxPQUFPLFVBQVUsQ0FBQyxTQUFTLEtBQUssUUFBUSxFQUFFO1lBQ3RFLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztTQUMvRDtRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxXQUFXO1FBQ2YsTUFBTSxPQUFPLEdBQUc7WUFDZCxNQUFNLEVBQUUsa0JBQWtCO1lBQzFCLGFBQWEsRUFBRSxVQUFVLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRTtTQUMvQyxDQUFDO1FBQ0YsTUFBTSxJQUFJLEdBQXFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQ3ZFLGlCQUFpQixDQUFDLEdBQUcsRUFDckI7WUFDRSxPQUFPO1NBQ1IsQ0FDRixDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDMUI7UUFDRCxNQUFNLElBQUksaUJBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsYUFBYSxDQUFDLElBQXVCO1FBQ3pDLE1BQU0sT0FBTyxHQUFHO1lBQ2QsY0FBYyxFQUFFLGtCQUFrQjtZQUNsQyxhQUFhLEVBQUUsVUFBVSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUU7U0FDL0MsQ0FBQztRQUNGLE1BQU0sSUFBSSxHQUF1QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUMxRSxpQkFBaUIsQ0FBQyxHQUFHLEVBQ3JCLElBQUksRUFDSjtZQUNFLE9BQU87U0FDUixDQUNGLENBQUM7UUFDRixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQzNCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztTQUMxQjtRQUNELE1BQU0sSUFBSSxpQkFBUyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7O0FBdkVlLHFCQUFHLEdBQVcscUNBQXFDLENBQUM7a0JBRGpELGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhPYmplY3QsIENyZWF0ZVNlZ21lbnRCb2R5LCBDcmVhdGVTZWdtZW50UmVzcG9uc2UsIEdldFNlZ21lbnRzUmVzcG9uc2UgfSBmcm9tICcuL3R5cGUnO1xuaW1wb3J0IHsgUmVzdEVycm9yIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBBeGlvc0NsaWVudCB9IGZyb20gJy4uLy4uL25ldHdvcmsvY2xpZW50cy9heGlvc19jbGllbnQnO1xuaW1wb3J0IHsgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9uZXR3b3JrJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ3VzdG9tZXJJT1NlZ21lbnQge1xuICBzdGF0aWMgcmVhZG9ubHkgdXJsOiBzdHJpbmcgPSAnaHR0cHM6Ly9hcGkuY3VzdG9tZXIuaW8vdjEvc2VnbWVudHMnO1xuXG4gIGF4aW9zQ2xpZW50OiBBeGlvc0NsaWVudDtcblxuICBhdXRoT2JqZWN0OiBBdXRoT2JqZWN0O1xuXG4gIGNvbnN0cnVjdG9yKGF1dGhPYmplY3QpIHtcbiAgICBDdXN0b21lcklPU2VnbWVudC52YWxpZGF0ZUF1dGhPYmplY3QoYXV0aE9iamVjdCk7XG4gICAgdGhpcy5hdXRoT2JqZWN0ID0gYXV0aE9iamVjdDtcbiAgICB0aGlzLmF4aW9zQ2xpZW50ID0gbmV3IEF4aW9zQ2xpZW50KCk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyB2YWxpZGF0ZUF1dGhPYmplY3QoYXV0aE9iamVjdDogQXV0aE9iamVjdCk6IEF1dGhPYmplY3Qge1xuICAgIGlmICghYXV0aE9iamVjdD8uYXBwQXBpS2V5IHx8IHR5cGVvZiBhdXRoT2JqZWN0LmFwcEFwaUtleSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYXBwQXBpS2V5IGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuICAgIHJldHVybiBhdXRoT2JqZWN0O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgYXBwIGFwaSBrZXkuXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBnZXRBcHBBcGlLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoT2JqZWN0LmFwcEFwaUtleTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBmZXRjaGVzIHRoZSBzZWdtZW50cy4gSWYgdW5hYmxlIHRvIGZldGNoIHRoZSBzZWdtZW50cywgaXQgcmV0dXJucyBhIFJlc3RFcnJvci5cbiAgICogcmVmOiBodHRwczovL2RvY3MuY3VzdG9tZXIuaW8vYXBpL2FwcC8jb3BlcmF0aW9uL2xpc3RTZWdtZW50c1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgYXN5bmMgZ2V0U2VnbWVudHMoKTogUHJvbWlzZTxHZXRTZWdtZW50c1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgaGVhZGVycyA9IHtcbiAgICAgIEFjY2VwdDogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuZ2V0QXBwQXBpS2V5KCl9YCxcbiAgICB9O1xuICAgIGNvbnN0IHJlc3A6IEFwaVJlc3BvbnNlPEdldFNlZ21lbnRzUmVzcG9uc2U+ID0gYXdhaXQgdGhpcy5heGlvc0NsaWVudC5nZXQoXG4gICAgICBDdXN0b21lcklPU2VnbWVudC51cmwsXG4gICAgICB7XG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9LFxuICAgICk7XG4gICAgaWYgKHJlc3AudHlwZSA9PT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICByZXR1cm4gcmVzcC5yZXNwb25zZUJvZHk7XG4gICAgfVxuICAgIHRocm93IG5ldyBSZXN0RXJyb3IocmVzcC5tZXNzYWdlLCByZXNwLnN0YXR1c0NvZGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIGNyZWF0ZXMgYSBtYW51YWwgc2VnbWVudC4gSXQgcmVxdWlyZXMgdGhlIHNlZ21lbnQgYm9keS4gVGhlIG1ldGhvZCByZXR1cm5zIHRoZSBjcmVhdGVkIHNlZ21lbnQuIElmIHRoZSBtYW51YWwgc2VnbWVudCBpcyBub3QgY3JlYXRlZCwgaXQgcmV0dXJucyBhIFJlc3RFcnJvci5cbiAgICogcmVmOiBodHRwczovL2RvY3MuY3VzdG9tZXIuaW8vYXBpL2FwcC8jb3BlcmF0aW9uL2NyZWF0ZU1hblNlZ21lbnRcbiAgICogQHBhcmFtIGJvZHkgQ3JlYXRlU2VnbWVudCBmaWVsZHNcbiAgICogQHJldHVybnNcbiAgICovXG4gIGFzeW5jIGNyZWF0ZVNlZ21lbnQoYm9keTogQ3JlYXRlU2VnbWVudEJvZHkpOiBQcm9taXNlPENyZWF0ZVNlZ21lbnRSZXNwb25zZT4ge1xuICAgIGNvbnN0IGhlYWRlcnMgPSB7XG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuZ2V0QXBwQXBpS2V5KCl9YCxcbiAgICB9O1xuICAgIGNvbnN0IHJlc3A6IEFwaVJlc3BvbnNlPENyZWF0ZVNlZ21lbnRSZXNwb25zZT4gPSBhd2FpdCB0aGlzLmF4aW9zQ2xpZW50LnBvc3QoXG4gICAgICBDdXN0b21lcklPU2VnbWVudC51cmwsXG4gICAgICBib2R5LFxuICAgICAge1xuICAgICAgICBoZWFkZXJzLFxuICAgICAgfSxcbiAgICApO1xuICAgIGlmIChyZXNwLnR5cGUgPT09ICdzdWNjZXNzJykge1xuICAgICAgcmV0dXJuIHJlc3AucmVzcG9uc2VCb2R5O1xuICAgIH1cbiAgICB0aHJvdyBuZXcgUmVzdEVycm9yKHJlc3AubWVzc2FnZSwgcmVzcC5zdGF0dXNDb2RlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../src/sdks/customerio_audience/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const axios_1 = __importDefault(require("axios"));
|
|
7
|
+
const axios_mock_adapter_1 = __importDefault(require("axios-mock-adapter"));
|
|
8
|
+
const _1 = __importDefault(require("."));
|
|
9
|
+
const utils_1 = require("./utils");
|
|
10
|
+
describe('customerio_audience', () => {
|
|
11
|
+
let mockAxios;
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
mockAxios = new axios_mock_adapter_1.default(axios_1.default);
|
|
14
|
+
});
|
|
15
|
+
afterEach(() => {
|
|
16
|
+
mockAxios.restore();
|
|
17
|
+
});
|
|
18
|
+
describe('getAppApiKey', () => {
|
|
19
|
+
it('should return app api key', () => {
|
|
20
|
+
const validAuthObject = {
|
|
21
|
+
appApiKey: 'test-app-api-key',
|
|
22
|
+
};
|
|
23
|
+
const customerioSegmentClient = new _1.default(validAuthObject);
|
|
24
|
+
customerioSegmentClient.authObject = validAuthObject;
|
|
25
|
+
const result = customerioSegmentClient.getAppApiKey();
|
|
26
|
+
expect(result).toBe(validAuthObject.appApiKey);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
describe('validateAuthObject', () => {
|
|
30
|
+
it('should throw error when authObject has invalid appApiKey', () => {
|
|
31
|
+
const invalidAuthObject = {
|
|
32
|
+
appApiKey: 123,
|
|
33
|
+
};
|
|
34
|
+
try {
|
|
35
|
+
const customerioSegmentClient = new _1.default(invalidAuthObject);
|
|
36
|
+
customerioSegmentClient.getAppApiKey();
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
expect(e).toEqual(new Error('appApiKey is required and must be a string'));
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
describe('getSegments', () => {
|
|
44
|
+
it('should return segments', async () => {
|
|
45
|
+
const validAuthObject = {
|
|
46
|
+
appApiKey: 'test-app-api-key',
|
|
47
|
+
};
|
|
48
|
+
const customerioSegmentClient = new _1.default(validAuthObject);
|
|
49
|
+
const validResponse = {
|
|
50
|
+
segments: [
|
|
51
|
+
{
|
|
52
|
+
id: 1,
|
|
53
|
+
deduplicate_id: '1:1736933577',
|
|
54
|
+
name: 'Signed up',
|
|
55
|
+
description: 'Includes all people who have a "created_at" UNIX timestamp value.',
|
|
56
|
+
state: 'finished',
|
|
57
|
+
progress: null,
|
|
58
|
+
type: 'dynamic',
|
|
59
|
+
tags: ['Sample'],
|
|
60
|
+
conditions: {
|
|
61
|
+
and: [
|
|
62
|
+
{
|
|
63
|
+
event: {
|
|
64
|
+
filters: {
|
|
65
|
+
and: [
|
|
66
|
+
{
|
|
67
|
+
field: 'to',
|
|
68
|
+
inverse: false,
|
|
69
|
+
operator: 'timestamp',
|
|
70
|
+
value: '0',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
field: 'from',
|
|
74
|
+
inverse: true,
|
|
75
|
+
operator: 'timestamp',
|
|
76
|
+
value: '0',
|
|
77
|
+
},
|
|
78
|
+
],
|
|
79
|
+
},
|
|
80
|
+
id: 1,
|
|
81
|
+
name: 'created_at',
|
|
82
|
+
type: 'attribute_change',
|
|
83
|
+
},
|
|
84
|
+
inverse: false,
|
|
85
|
+
times: 1,
|
|
86
|
+
within: 0,
|
|
87
|
+
},
|
|
88
|
+
],
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
id: 2,
|
|
93
|
+
deduplicate_id: '10:1736958215',
|
|
94
|
+
name: 'segment-manual',
|
|
95
|
+
description: '',
|
|
96
|
+
state: 'finished',
|
|
97
|
+
progress: null,
|
|
98
|
+
type: 'manual',
|
|
99
|
+
tags: null,
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
};
|
|
103
|
+
mockAxios.onGet('https://api.customer.io/v1/segments').reply(200, validResponse);
|
|
104
|
+
const result = await customerioSegmentClient.getSegments();
|
|
105
|
+
expect(result).toStrictEqual(validResponse);
|
|
106
|
+
});
|
|
107
|
+
it('should handle failure scenario', async () => {
|
|
108
|
+
const validAuthObject = {
|
|
109
|
+
appApiKey: 'test-app-api-key',
|
|
110
|
+
};
|
|
111
|
+
const customerioSegmentClient = new _1.default(validAuthObject);
|
|
112
|
+
mockAxios.onGet('https://api.customer.io/v1/segments').reply(401, {
|
|
113
|
+
errors: [
|
|
114
|
+
{
|
|
115
|
+
detail: 'unauthorized',
|
|
116
|
+
status: '401',
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
});
|
|
120
|
+
try {
|
|
121
|
+
await customerioSegmentClient.getSegments();
|
|
122
|
+
}
|
|
123
|
+
catch (e) {
|
|
124
|
+
expect(e).toEqual(new utils_1.RestError('', 401));
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
describe('createSegment', () => {
|
|
129
|
+
it('should create new manual segment', async () => {
|
|
130
|
+
const validAuthObject = {
|
|
131
|
+
appApiKey: 'test-app-api-key',
|
|
132
|
+
};
|
|
133
|
+
const customerioSegmentClient = new _1.default(validAuthObject);
|
|
134
|
+
const validResponse = {
|
|
135
|
+
segment: {
|
|
136
|
+
id: 1,
|
|
137
|
+
deduplicate_id: '1:1737617152',
|
|
138
|
+
name: 'Create Segment',
|
|
139
|
+
description: 'From Rudderstack',
|
|
140
|
+
state: 'finished',
|
|
141
|
+
progress: null,
|
|
142
|
+
type: 'manual',
|
|
143
|
+
tags: null,
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
mockAxios.onPost('https://api.customer.io/v1/segments').reply(200, validResponse);
|
|
147
|
+
const result = await customerioSegmentClient.createSegment({
|
|
148
|
+
segment: {
|
|
149
|
+
name: 'Create Segment',
|
|
150
|
+
description: 'From Rudderstack',
|
|
151
|
+
},
|
|
152
|
+
});
|
|
153
|
+
expect(result).toStrictEqual(validResponse);
|
|
154
|
+
});
|
|
155
|
+
it('should handle failure scenario', async () => {
|
|
156
|
+
const validAuthObject = {
|
|
157
|
+
appApiKey: 'test-app-api-key',
|
|
158
|
+
};
|
|
159
|
+
const customerioSegmentClient = new _1.default(validAuthObject);
|
|
160
|
+
mockAxios.onPost('https://api.customer.io/v1/segments').reply(401, {
|
|
161
|
+
errors: [
|
|
162
|
+
{
|
|
163
|
+
detail: 'unauthorized',
|
|
164
|
+
status: '401',
|
|
165
|
+
},
|
|
166
|
+
],
|
|
167
|
+
});
|
|
168
|
+
try {
|
|
169
|
+
await customerioSegmentClient.createSegment({
|
|
170
|
+
segment: {
|
|
171
|
+
name: 'Create Segment',
|
|
172
|
+
description: 'From Rudderstack',
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
catch (e) {
|
|
177
|
+
expect(e).toEqual(new utils_1.RestError('', 401));
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
});
|
|
181
|
+
});
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZGtzL2N1c3RvbWVyaW9fYXVkaWVuY2UvaW5kZXgudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGtEQUEwQjtBQUMxQiw0RUFBNkM7QUFDN0MseUNBQWtDO0FBQ2xDLG1DQUFvQztBQUVwQyxRQUFRLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQ25DLElBQUksU0FBc0IsQ0FBQztJQUUzQixVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsU0FBUyxHQUFHLElBQUksNEJBQVcsQ0FBQyxlQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsQ0FBQztJQUVILFNBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDYixTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtRQUM1QixFQUFFLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO1lBQ25DLE1BQU0sZUFBZSxHQUFHO2dCQUN0QixTQUFTLEVBQUUsa0JBQWtCO2FBQzlCLENBQUM7WUFFRixNQUFNLHVCQUF1QixHQUFHLElBQUksVUFBaUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN2RSx1QkFBdUIsQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDO1lBRXJELE1BQU0sTUFBTSxHQUFHLHVCQUF1QixDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXRELE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO1FBQ2xDLEVBQUUsQ0FBQywwREFBMEQsRUFBRSxHQUFHLEVBQUU7WUFDbEUsTUFBTSxpQkFBaUIsR0FBRztn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QUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMsZ0NBQWdDLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDOUMsTUFBTSxlQUFlLEdBQUc7Z0JBQ3RCLFNBQVMsRUFBRSxrQkFBa0I7YUFDOUIsQ0FBQztZQUNGLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxVQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3ZFLFNBQVMsQ0FBQyxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO2dCQUNqRSxNQUFNLEVBQUU7b0JBQ047d0JBQ0UsTUFBTSxFQUFFLGNBQWM7d0JBQ3RCLE1BQU0sRUFBRSxLQUFLO3FCQUNkO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1lBQ0gsSUFBSTtnQkFDRixNQUFNLHVCQUF1QixDQUFDLGFBQWEsQ0FBQztvQkFDMUMsT0FBTyxFQUFFO3dCQUNQLElBQUksRUFBRSxnQkFBZ0I7d0JBQ3RCLFdBQVcsRUFBRSxrQkFBa0I7cUJBQ2hDO2lCQUNGLENBQUMsQ0FBQzthQUNKO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLGlCQUFTLENBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDM0M7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IE1vY2tBZGFwdGVyIGZyb20gJ2F4aW9zLW1vY2stYWRhcHRlcic7XG5pbXBvcnQgQ3VzdG9tZXJJT1NlZ21lbnQgZnJvbSAnLic7XG5pbXBvcnQgeyBSZXN0RXJyb3IgfSBmcm9tICcuL3V0aWxzJztcblxuZGVzY3JpYmUoJ2N1c3RvbWVyaW9fYXVkaWVuY2UnLCAoKSA9PiB7XG4gIGxldCBtb2NrQXhpb3M6IE1vY2tBZGFwdGVyO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIG1vY2tBeGlvcyA9IG5ldyBNb2NrQWRhcHRlcihheGlvcyk7XG4gIH0pO1xuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgbW9ja0F4aW9zLnJlc3RvcmUoKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2dldEFwcEFwaUtleScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHJldHVybiBhcHAgYXBpIGtleScsICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbGlkQXV0aE9iamVjdCA9IHtcbiAgICAgICAgYXBwQXBpS2V5OiAndGVzdC1hcHAtYXBpLWtleScsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCBjdXN0b21lcmlvU2VnbWVudENsaWVudCA9IG5ldyBDdXN0b21lcklPU2VnbWVudCh2YWxpZEF1dGhPYmplY3QpO1xuICAgICAgY3VzdG9tZXJpb1NlZ21lbnRDbGllbnQuYXV0aE9iamVjdCA9IHZhbGlkQXV0aE9iamVjdDtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gY3VzdG9tZXJpb1NlZ21lbnRDbGllbnQuZ2V0QXBwQXBpS2V5KCk7XG5cbiAgICAgIGV4cGVjdChyZXN1bHQpLnRvQmUodmFsaWRBdXRoT2JqZWN0LmFwcEFwaUtleSk7XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgndmFsaWRhdGVBdXRoT2JqZWN0JywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgdGhyb3cgZXJyb3Igd2hlbiBhdXRoT2JqZWN0IGhhcyBpbnZhbGlkIGFwcEFwaUtleScsICgpID0+IHtcbiAgICAgIGNvbnN0IGludmFsaWRBdXRoT2JqZWN0ID0ge1xuICAgICAgICBhcHBBcGlLZXk6IDEyMyxcbiAgICAgIH07XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGN1c3RvbWVyaW9TZWdtZW50Q2xpZW50ID0gbmV3IEN1c3RvbWVySU9TZWdtZW50KGludmFsaWRBdXRoT2JqZWN0KTtcbiAgICAgICAgY3VzdG9tZXJpb1NlZ21lbnRDbGllbnQuZ2V0QXBwQXBpS2V5KCk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGV4cGVjdChlKS50b0VxdWFsKG5ldyBFcnJvcignYXBwQXBpS2V5IGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGEgc3RyaW5nJykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbiAgZGVzY3JpYmUoJ2dldFNlZ21lbnRzJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgcmV0dXJuIHNlZ21lbnRzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdmFsaWRBdXRoT2JqZWN0ID0ge1xuICAgICAgICBhcHBBcGlLZXk6ICd0ZXN0LWFwcC1hcGkta2V5JyxcbiAgICAgIH07XG4gICAgICBjb25zdCBjdXN0b21lcmlvU2VnbWVudENsaWVudCA9IG5ldyBDdXN0b21lcklPU2VnbWVudCh2YWxpZEF1dGhPYmplY3QpO1xuICAgICAgY29uc3QgdmFsaWRSZXNwb25zZSA9IHtcbiAgICAgICAgc2VnbWVudHM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogMSxcbiAgICAgICAgICAgIGRlZHVwbGljYXRlX2lkOiAnMToxNzM2OTMzNTc3JyxcbiAgICAgICAgICAgIG5hbWU6ICdTaWduZWQgdXAnLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdJbmNsdWRlcyBhbGwgcGVvcGxlIHdobyBoYXZlIGEgXCJjcmVhdGVkX2F0XCIgVU5JWCB0aW1lc3RhbXAgdmFsdWUuJyxcbiAgICAgICAgICAgIHN0YXRlOiAnZmluaXNoZWQnLFxuICAgICAgICAgICAgcHJvZ3Jlc3M6IG51bGwsXG4gICAgICAgICAgICB0eXBlOiAnZHluYW1pYycsXG4gICAgICAgICAgICB0YWdzOiBbJ1NhbXBsZSddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBhbmQ6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBldmVudDoge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgYW5kOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkOiAndG8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpbnZlcnNlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6ICd0aW1lc3RhbXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQ6ICdmcm9tJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaW52ZXJzZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6ICd0aW1lc3RhbXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBpZDogMSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2NyZWF0ZWRfYXQnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYXR0cmlidXRlX2NoYW5nZScsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgaW52ZXJzZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICB0aW1lczogMSxcbiAgICAgICAgICAgICAgICAgIHdpdGhpbjogMCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAyLFxuICAgICAgICAgICAgZGVkdXBsaWNhdGVfaWQ6ICcxMDoxNzM2OTU4MjE1JyxcbiAgICAgICAgICAgIG5hbWU6ICdzZWdtZW50LW1hbnVhbCcsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogJycsXG4gICAgICAgICAgICBzdGF0ZTogJ2ZpbmlzaGVkJyxcbiAgICAgICAgICAgIHByb2dyZXNzOiBudWxsLFxuICAgICAgICAgICAgdHlwZTogJ21hbnVhbCcsXG4gICAgICAgICAgICB0YWdzOiBudWxsLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgICAgbW9ja0F4aW9zLm9uR2V0KCdodHRwczovL2FwaS5jdXN0b21lci5pby92MS9zZWdtZW50cycpLnJlcGx5KDIwMCwgdmFsaWRSZXNwb25zZSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjdXN0b21lcmlvU2VnbWVudENsaWVudC5nZXRTZWdtZW50cygpO1xuICAgICAgZXhwZWN0KHJlc3VsdCkudG9TdHJpY3RFcXVhbCh2YWxpZFJlc3BvbnNlKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIGhhbmRsZSBmYWlsdXJlIHNjZW5hcmlvJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdmFsaWRBdXRoT2JqZWN0ID0ge1xuICAgICAgICBhcHBBcGlLZXk6ICd0ZXN0LWFwcC1hcGkta2V5JyxcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IGN1c3RvbWVyaW9TZWdtZW50Q2xpZW50ID0gbmV3IEN1c3RvbWVySU9TZWdtZW50KHZhbGlkQXV0aE9iamVjdCk7XG4gICAgICBtb2NrQXhpb3Mub25HZXQoJ2h0dHBzOi8vYXBpLmN1c3RvbWVyLmlvL3YxL3NlZ21lbnRzJykucmVwbHkoNDAxLCB7XG4gICAgICAgIGVycm9yczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGRldGFpbDogJ3VuYXV0aG9yaXplZCcsXG4gICAgICAgICAgICBzdGF0dXM6ICc0MDEnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGN1c3RvbWVyaW9TZWdtZW50Q2xpZW50LmdldFNlZ21lbnRzKCk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGV4cGVjdChlKS50b0VxdWFsKG5ldyBSZXN0RXJyb3IoJycsIDQwMSkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbiAgZGVzY3JpYmUoJ2NyZWF0ZVNlZ21lbnQnLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBjcmVhdGUgbmV3IG1hbnVhbCBzZWdtZW50JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdmFsaWRBdXRoT2JqZWN0ID0ge1xuICAgICAgICBhcHBBcGlLZXk6ICd0ZXN0LWFwcC1hcGkta2V5JyxcbiAgICAgIH07XG4gICAgICBjb25zdCBjdXN0b21lcmlvU2VnbWVudENsaWVudCA9IG5ldyBDdXN0b21lcklPU2VnbWVudCh2YWxpZEF1dGhPYmplY3QpO1xuICAgICAgY29uc3QgdmFsaWRSZXNwb25zZSA9IHtcbiAgICAgICAgc2VnbWVudDoge1xuICAgICAgICAgIGlkOiAxLFxuICAgICAgICAgIGRlZHVwbGljYXRlX2lkOiAnMToxNzM3NjE3MTUyJyxcbiAgICAgICAgICBuYW1lOiAnQ3JlYXRlIFNlZ21lbnQnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRnJvbSBSdWRkZXJzdGFjaycsXG4gICAgICAgICAgc3RhdGU6ICdmaW5pc2hlZCcsXG4gICAgICAgICAgcHJvZ3Jlc3M6IG51bGwsXG4gICAgICAgICAgdHlwZTogJ21hbnVhbCcsXG4gICAgICAgICAgdGFnczogbnVsbCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgICBtb2NrQXhpb3Mub25Qb3N0KCdodHRwczovL2FwaS5jdXN0b21lci5pby92MS9zZWdtZW50cycpLnJlcGx5KDIwMCwgdmFsaWRSZXNwb25zZSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjdXN0b21lcmlvU2VnbWVudENsaWVudC5jcmVhdGVTZWdtZW50KHtcbiAgICAgICAgc2VnbWVudDoge1xuICAgICAgICAgIG5hbWU6ICdDcmVhdGUgU2VnbWVudCcsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdGcm9tIFJ1ZGRlcnN0YWNrJyxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgZXhwZWN0KHJlc3VsdCkudG9TdHJpY3RFcXVhbCh2YWxpZFJlc3BvbnNlKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIGhhbmRsZSBmYWlsdXJlIHNjZW5hcmlvJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdmFsaWRBdXRoT2JqZWN0ID0ge1xuICAgICAgICBhcHBBcGlLZXk6ICd0ZXN0LWFwcC1hcGkta2V5JyxcbiAgICAgIH07XG4gICAgICBjb25zdCBjdXN0b21lcmlvU2VnbWVudENsaWVudCA9IG5ldyBDdXN0b21lcklPU2VnbWVudCh2YWxpZEF1dGhPYmplY3QpO1xuICAgICAgbW9ja0F4aW9zLm9uUG9zdCgnaHR0cHM6Ly9hcGkuY3VzdG9tZXIuaW8vdjEvc2VnbWVudHMnKS5yZXBseSg0MDEsIHtcbiAgICAgICAgZXJyb3JzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZGV0YWlsOiAndW5hdXRob3JpemVkJyxcbiAgICAgICAgICAgIHN0YXR1czogJzQwMScsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgY3VzdG9tZXJpb1NlZ21lbnRDbGllbnQuY3JlYXRlU2VnbWVudCh7XG4gICAgICAgICAgc2VnbWVudDoge1xuICAgICAgICAgICAgbmFtZTogJ0NyZWF0ZSBTZWdtZW50JyxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRnJvbSBSdWRkZXJzdGFjaycsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGV4cGVjdChlKS50b0VxdWFsKG5ldyBSZXN0RXJyb3IoJycsIDQwMSkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface AuthObject {
|
|
2
|
+
appApiKey: string;
|
|
3
|
+
}
|
|
4
|
+
export interface CreateSegmentBody {
|
|
5
|
+
segment: {
|
|
6
|
+
name: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export interface CreateSegmentResponse {
|
|
11
|
+
segment: {
|
|
12
|
+
id: number;
|
|
13
|
+
deduplicate_id?: string;
|
|
14
|
+
name?: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
state?: string;
|
|
17
|
+
progress?: number | null;
|
|
18
|
+
type?: string;
|
|
19
|
+
tags?: string[] | null;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export interface GetSegmentsResponse {
|
|
23
|
+
segments: [
|
|
24
|
+
{
|
|
25
|
+
id: number;
|
|
26
|
+
deduplicate_id?: string;
|
|
27
|
+
name: string;
|
|
28
|
+
description?: string;
|
|
29
|
+
state?: string;
|
|
30
|
+
progress?: number | null;
|
|
31
|
+
type?: string;
|
|
32
|
+
tags?: string[] | null;
|
|
33
|
+
}
|
|
34
|
+
];
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/sdks/customerio_audience/type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE;QACR;YACE,EAAE,EAAE,MAAM,CAAC;YACX,cAAc,CAAC,EAAE,MAAM,CAAC;YACxB,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;SACxB;KACF,CAAC;CACH"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZGtzL2N1c3RvbWVyaW9fYXVkaWVuY2UvdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBBdXRoT2JqZWN0IHtcbiAgYXBwQXBpS2V5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU2VnbWVudEJvZHkge1xuICBzZWdtZW50OiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVNlZ21lbnRSZXNwb25zZSB7XG4gIHNlZ21lbnQ6IHtcbiAgICBpZDogbnVtYmVyO1xuICAgIGRlZHVwbGljYXRlX2lkPzogc3RyaW5nO1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgc3RhdGU/OiBzdHJpbmc7XG4gICAgcHJvZ3Jlc3M/OiBudW1iZXIgfCBudWxsO1xuICAgIHR5cGU/OiBzdHJpbmc7XG4gICAgdGFncz86IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRTZWdtZW50c1Jlc3BvbnNlIHtcbiAgc2VnbWVudHM6IFtcbiAgICB7XG4gICAgICBpZDogbnVtYmVyO1xuICAgICAgZGVkdXBsaWNhdGVfaWQ/OiBzdHJpbmc7XG4gICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICAgIHN0YXRlPzogc3RyaW5nO1xuICAgICAgcHJvZ3Jlc3M/OiBudW1iZXIgfCBudWxsO1xuICAgICAgdHlwZT86IHN0cmluZztcbiAgICAgIHRhZ3M/OiBzdHJpbmdbXSB8IG51bGw7XG4gICAgfSxcbiAgXTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/sdks/customerio_audience/utils.ts"],"names":[],"mappings":"AAAA,qBAAa,SAAU,SAAQ,KAAK;IAClC,UAAU,EAAE,MAAM,CAAC;gBAEP,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAIhD"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RestError = void 0;
|
|
4
|
+
class RestError extends Error {
|
|
5
|
+
constructor(message, statusCode) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.statusCode = statusCode;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.RestError = RestError;
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2Rrcy9jdXN0b21lcmlvX2F1ZGllbmNlL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQWEsU0FBVSxTQUFRLEtBQUs7SUFHbEMsWUFBWSxPQUFlLEVBQUUsVUFBa0I7UUFDN0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBUEQsOEJBT0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgUmVzdEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBzdGF0dXNDb2RlOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBzdGF0dXNDb2RlOiBudW1iZXIpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlO1xuICB9XG59XG4iXX0=
|
package/build/sdks/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdks/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdks/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,iBAAiB,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC"}
|
package/build/sdks/index.js
CHANGED
|
@@ -3,7 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.SFMC = void 0;
|
|
6
|
+
exports.CustomerIOSegment = exports.SFMC = void 0;
|
|
7
7
|
const sfmc_1 = __importDefault(require("./sfmc"));
|
|
8
8
|
exports.SFMC = sfmc_1.default;
|
|
9
|
-
|
|
9
|
+
const customerio_audience_1 = __importDefault(require("./customerio_audience"));
|
|
10
|
+
exports.CustomerIOSegment = customerio_audience_1.default;
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2Rrcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrREFBMEI7QUFHakIsZUFIRixjQUFJLENBR0U7QUFGYixnRkFBc0Q7QUFFdkMsNEJBRlIsNkJBQWlCLENBRVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU0ZNQyBmcm9tICcuL3NmbWMnO1xuaW1wb3J0IEN1c3RvbWVySU9TZWdtZW50IGZyb20gJy4vY3VzdG9tZXJpb19hdWRpZW5jZSc7XG5cbmV4cG9ydCB7IFNGTUMsIEN1c3RvbWVySU9TZWdtZW50IH07XG4iXX0=
|