@kameleoon/javascript-sdk 0.0.2 → 1.1.0
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/LICENSE.md +6 -0
- package/README.md +49 -3
- package/dist/eventSource.d.ts +4 -0
- package/dist/eventSource.js +33 -0
- package/dist/eventSource.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +18 -1
- package/dist/index.js.map +1 -1
- package/dist/kameleoonClient.d.ts +7 -102
- package/dist/kameleoonClient.js +21 -641
- package/dist/kameleoonClient.js.map +1 -1
- package/dist/kameleoonUtils.d.ts +12 -10
- package/dist/kameleoonUtils.js +44 -103
- package/dist/kameleoonUtils.js.map +1 -1
- package/dist/storage.d.ts +4 -0
- package/dist/storage.js +36 -0
- package/dist/storage.js.map +1 -0
- package/package.json +22 -11
- package/dist/configurations/configuration.d.ts +0 -15
- package/dist/configurations/configuration.js +0 -31
- package/dist/configurations/configuration.js.map +0 -1
- package/dist/configurations/experiment.d.ts +0 -13
- package/dist/configurations/experiment.js +0 -54
- package/dist/configurations/experiment.js.map +0 -1
- package/dist/configurations/featureFlag.d.ts +0 -23
- package/dist/configurations/featureFlag.js +0 -105
- package/dist/configurations/featureFlag.js.map +0 -1
- package/dist/configurations/variation.d.ts +0 -15
- package/dist/configurations/variation.js +0 -14
- package/dist/configurations/variation.js.map +0 -1
- package/dist/constants.d.ts +0 -17
- package/dist/constants.js +0 -23
- package/dist/constants.js.map +0 -1
- package/dist/data.d.ts +0 -67
- package/dist/data.js +0 -127
- package/dist/data.js.map +0 -1
- package/dist/exceptions/credentialsNotFound.d.ts +0 -6
- package/dist/exceptions/credentialsNotFound.js +0 -29
- package/dist/exceptions/credentialsNotFound.js.map +0 -1
- package/dist/exceptions/experimentConfigurationNotFound.d.ts +0 -6
- package/dist/exceptions/experimentConfigurationNotFound.js +0 -29
- package/dist/exceptions/experimentConfigurationNotFound.js.map +0 -1
- package/dist/exceptions/featureConfigurationNotFound.d.ts +0 -6
- package/dist/exceptions/featureConfigurationNotFound.js +0 -29
- package/dist/exceptions/featureConfigurationNotFound.js.map +0 -1
- package/dist/exceptions/notActivated.d.ts +0 -6
- package/dist/exceptions/notActivated.js +0 -29
- package/dist/exceptions/notActivated.js.map +0 -1
- package/dist/exceptions/notTargeted.d.ts +0 -6
- package/dist/exceptions/notTargeted.js +0 -29
- package/dist/exceptions/notTargeted.js.map +0 -1
- package/dist/exceptions/siteCodeDisabled.d.ts +0 -5
- package/dist/exceptions/siteCodeDisabled.js +0 -30
- package/dist/exceptions/siteCodeDisabled.js.map +0 -1
- package/dist/exceptions/variationConfigurationNotFound.d.ts +0 -6
- package/dist/exceptions/variationConfigurationNotFound.js +0 -29
- package/dist/exceptions/variationConfigurationNotFound.js.map +0 -1
- package/dist/exceptions/visitorCodeNotValid.d.ts +0 -5
- package/dist/exceptions/visitorCodeNotValid.js +0 -30
- package/dist/exceptions/visitorCodeNotValid.js.map +0 -1
- package/dist/interfaces/interfaces.d.ts +0 -81
- package/dist/interfaces/interfaces.js +0 -3
- package/dist/interfaces/interfaces.js.map +0 -1
- package/dist/nonce.d.ts +0 -1
- package/dist/nonce.js +0 -16
- package/dist/nonce.js.map +0 -1
- package/dist/realTimeConfigurationService.d.ts +0 -12
- package/dist/realTimeConfigurationService.js +0 -24
- package/dist/realTimeConfigurationService.js.map +0 -1
- package/dist/storage/types.d.ts +0 -13
- package/dist/storage/types.js +0 -3
- package/dist/storage/types.js.map +0 -1
- package/dist/storage/variationStorage.d.ts +0 -11
- package/dist/storage/variationStorage.js +0 -87
- package/dist/storage/variationStorage.js.map +0 -1
- package/dist/storage/visitorVariation.d.ts +0 -9
- package/dist/storage/visitorVariation.js +0 -22
- package/dist/storage/visitorVariation.js.map +0 -1
- package/dist/targeting/conditions/customDatum.d.ts +0 -12
- package/dist/targeting/conditions/customDatum.js +0 -129
- package/dist/targeting/conditions/customDatum.js.map +0 -1
- package/dist/targeting/conditions/exclusiveExperiment.d.ts +0 -9
- package/dist/targeting/conditions/exclusiveExperiment.js +0 -45
- package/dist/targeting/conditions/exclusiveExperiment.js.map +0 -1
- package/dist/targeting/conditions/targetExperiment.d.ts +0 -14
- package/dist/targeting/conditions/targetExperiment.js +0 -57
- package/dist/targeting/conditions/targetExperiment.js.map +0 -1
- package/dist/targeting/conditions/types.d.ts +0 -12
- package/dist/targeting/conditions/types.js +0 -3
- package/dist/targeting/conditions/types.js.map +0 -1
- package/dist/targeting/targetingCondition.d.ts +0 -7
- package/dist/targeting/targetingCondition.js +0 -9
- package/dist/targeting/targetingCondition.js.map +0 -1
- package/dist/targeting/targetingConditionsFactory.d.ts +0 -7
- package/dist/targeting/targetingConditionsFactory.js +0 -30
- package/dist/targeting/targetingConditionsFactory.js.map +0 -1
- package/dist/targeting/targetingData.d.ts +0 -7
- package/dist/targeting/targetingData.js +0 -11
- package/dist/targeting/targetingData.js.map +0 -1
- package/dist/targeting/targetingEngine.d.ts +0 -6
- package/dist/targeting/targetingEngine.js +0 -130
- package/dist/targeting/targetingEngine.js.map +0 -1
- package/dist/targeting/targetingSegment.d.ts +0 -5
- package/dist/targeting/targetingSegment.js +0 -9
- package/dist/targeting/targetingSegment.js.map +0 -1
- package/dist/targeting/targetingTree.d.ts +0 -9
- package/dist/targeting/targetingTree.js +0 -13
- package/dist/targeting/targetingTree.js.map +0 -1
- package/dist/targeting/targetingTreeBuilder.d.ts +0 -8
- package/dist/targeting/targetingTreeBuilder.js +0 -127
- package/dist/targeting/targetingTreeBuilder.js.map +0 -1
- package/dist/types.d.ts +0 -5
- package/dist/types.js +0 -3
- package/dist/types.js.map +0 -1
package/LICENSE.md
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
Copyright 2023 Kameleoon
|
|
2
|
+
|
|
3
|
+
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
|
|
4
|
+
|
|
5
|
+
THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
6
|
+
|
package/README.md
CHANGED
|
@@ -1,8 +1,54 @@
|
|
|
1
1
|
# Kameleoon JavaScript SDK
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
## Introduction
|
|
4
|
+
Kameleoon JavaScript SDK is used to work with Kameleoon Feature Flags and Experiments using native JavaScript api.
|
|
5
|
+
Integration of this SDK into web application is easy, and its footprint is low.
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
This page describes the most basic `KameleoonClient` configuration, for more in-depth review of all the methods and configuration options follow [Official Kameleoon Documentation](https://developers.kameleoon.com/javascript-sdk.html)
|
|
8
|
+
|
|
9
|
+
## Contents
|
|
10
|
+
- [Installation](#installation)
|
|
11
|
+
- [Configuration](#configuration)
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
- **npm** - `npm install @kameleoon/javascript-sdk`
|
|
15
|
+
- **yarn** - `yarn add @kameleoon/javascript-sdk`
|
|
16
|
+
- **pnpm** - `pnpm add @kameleoon/javascript-sdk`
|
|
17
|
+
|
|
18
|
+
## Configuration
|
|
19
|
+
|
|
20
|
+
1. Obtain your site code from [Kameleoon Platform](https://app.kameleoon.com/)
|
|
21
|
+
2. Create client instance
|
|
22
|
+
```ts
|
|
23
|
+
import { KameleoonClient } from '@kameleoon/javascript-sdk';
|
|
24
|
+
|
|
25
|
+
const client = new KameleoonClient('my_site_code');
|
|
26
|
+
```
|
|
27
|
+
3. Asynchronously initialize client to fetch the configuration from remote server and handle possible errors
|
|
28
|
+
```ts
|
|
29
|
+
try {
|
|
30
|
+
await client.initialize();
|
|
31
|
+
} catch (error) {
|
|
32
|
+
// Handle error
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
4. `KameleoonClient` is ready to go!
|
|
36
|
+
```ts
|
|
37
|
+
const visitorCode = KameleoonUtils.getVisitorCode('www.example.com');
|
|
38
|
+
const experimentId = 100;
|
|
39
|
+
const customDataIndex = 0;
|
|
40
|
+
|
|
41
|
+
// -- Get variation id
|
|
42
|
+
const variationId = client.triggerExperiment('my_visitor_code', experimentId);
|
|
43
|
+
|
|
44
|
+
// -- Add targeting data
|
|
45
|
+
client.addData(visitorCode, new CustomData(customDataIndex, 'my_data'));
|
|
46
|
+
|
|
47
|
+
// -- Check if the feature is active for visitor
|
|
48
|
+
const isMyFeatureActive = client.isFeatureFlagActive(
|
|
49
|
+
visitorCode,
|
|
50
|
+
'my_feature_key',
|
|
51
|
+
);
|
|
52
|
+
```
|
|
6
53
|
|
|
7
|
-
You can refer to the [SDK reference](https://developers.kameleoon.com/javascript-sdk.html#reference) to check out all possible features of the SDK. Also make sure you check out our [Getting started tutorial](https://developers.kameleoon.com/javascript-sdk.html#getting-started) which we have prepared to walk you through the installation and implementation.
|
|
8
54
|
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EventSourceConstructor = void 0;
|
|
4
|
+
class EventSourceConstructor {
|
|
5
|
+
initialize(url) {
|
|
6
|
+
return new ExternalEventSource(url);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.EventSourceConstructor = EventSourceConstructor;
|
|
10
|
+
// --- Note ---
|
|
11
|
+
// - `EventSource` has no dedicated tests because same browser instance
|
|
12
|
+
// is tested thoroughly inside core and would just duplicate tests
|
|
13
|
+
// - Moreover we would have to import some unexposed details like constructed url
|
|
14
|
+
// or the `eventType` from the core
|
|
15
|
+
class ExternalEventSource {
|
|
16
|
+
constructor(url) {
|
|
17
|
+
const eventSource = new EventSource(url);
|
|
18
|
+
this.eventSource = eventSource;
|
|
19
|
+
}
|
|
20
|
+
open({ siteCode, eventType, onEvent, }) {
|
|
21
|
+
this.eventSource.addEventListener(eventType, (message) => {
|
|
22
|
+
const event = JSON.parse(message.data);
|
|
23
|
+
const { siteCode: eventSiteCode, ts } = event;
|
|
24
|
+
if (siteCode === eventSiteCode) {
|
|
25
|
+
onEvent(ts);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
close() {
|
|
30
|
+
this.eventSource.close();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=eventSource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventSource.js","sourceRoot":"","sources":["../src/eventSource.ts"],"names":[],"mappings":";;;AAOA,MAAa,sBAAsB;IAC1B,UAAU,CAAC,GAAW;QAC3B,OAAO,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;CACF;AAJD,wDAIC;AAED,eAAe;AACf,uEAAuE;AACvE,kEAAkE;AAClE,iFAAiF;AACjF,mCAAmC;AACnC,MAAM,mBAAmB;IAGvB,YAAY,GAAW;QACrB,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;QAEzC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEM,IAAI,CAAC,EACV,QAAQ,EACR,SAAS,EACT,OAAO,GACuB;QAC9B,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACvD,MAAM,KAAK,GAAsB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;YAE9C,IAAI,QAAQ,KAAK,aAAa,EAAE;gBAC9B,OAAO,CAAC,EAAE,CAAC,CAAC;aACb;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.KameleoonClient = void 0;
|
|
17
|
+
exports.KameleoonUtils = exports.KameleoonClient = void 0;
|
|
18
|
+
__exportStar(require("@kameleoon/javascript-sdk-core"), exports);
|
|
4
19
|
var kameleoonClient_1 = require("./kameleoonClient");
|
|
5
20
|
Object.defineProperty(exports, "KameleoonClient", { enumerable: true, get: function () { return kameleoonClient_1.KameleoonClient; } });
|
|
21
|
+
var kameleoonUtils_1 = require("./kameleoonUtils");
|
|
22
|
+
Object.defineProperty(exports, "KameleoonUtils", { enumerable: true, get: function () { return kameleoonUtils_1.KameleoonUtils; } });
|
|
6
23
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iEAA+C;AAC/C,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA"}
|
|
@@ -1,103 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import NotActivated from './exceptions/notActivated';
|
|
9
|
-
import NotTargeted from './exceptions/notTargeted';
|
|
10
|
-
import VariationConfigurationNotFound from './exceptions/variationConfigurationNotFound';
|
|
11
|
-
import CredentialsNotFound from './exceptions/credentialsNotFound';
|
|
12
|
-
import { CallbackInterface, DataInterface, SDKConfiguration } from './interfaces/interfaces';
|
|
13
|
-
declare class KameleoonClient {
|
|
14
|
-
static readonly VISITOR_CODE_MAX_LENGTH = 255;
|
|
15
|
-
configurations?: Configuration;
|
|
16
|
-
ready: boolean;
|
|
17
|
-
readyCallbacks: CallbackInterface[];
|
|
18
|
-
minutesBetweenConfigurationUpdate: number;
|
|
19
|
-
siteCode: string;
|
|
20
|
-
targetingData: {
|
|
21
|
-
[visitorCode: string]: TargetingData[];
|
|
22
|
-
};
|
|
23
|
-
targetingDataNumberEntriesAuthorized: number;
|
|
24
|
-
unsentData: {
|
|
25
|
-
[visitorCode: string]: DataInterface[];
|
|
26
|
-
};
|
|
27
|
-
visitorDataMaximumSize: number;
|
|
28
|
-
environment: string | null;
|
|
29
|
-
private realTimeConfigurationService;
|
|
30
|
-
private handlerUpdateConfiguration;
|
|
31
|
-
private variationStorage;
|
|
32
|
-
constructor(siteCode: string, configuration?: SDKConfiguration);
|
|
33
|
-
private updateCampaignConfiguration;
|
|
34
|
-
runWhenReady: (successCallback: () => void, errorCallback: () => void, timeout: number) => void;
|
|
35
|
-
clearCallbacks: (success: boolean, errorCallback?: (() => void) | undefined) => void;
|
|
36
|
-
trackConversion: (visitorCode: string, goalId: number, revenue?: number | undefined) => void;
|
|
37
|
-
flush: (visitorCode?: string | undefined) => void;
|
|
38
|
-
triggerExperiment: (visitorCode: string, experimentId: number) => number;
|
|
39
|
-
activateFeature: (visitorCode: string, featureIdOrName: number | string) => boolean;
|
|
40
|
-
generateRandomString: () => string;
|
|
41
|
-
obtainVisitorCode: (domain: string, defaultVisitorCode?: string | undefined) => string;
|
|
42
|
-
obtainHashDouble: (containerId: number, visitorCode: string, xpConf: Experiment | FeatureFlag) => number;
|
|
43
|
-
private getCommonSSXParameters;
|
|
44
|
-
private getDataTrackingURL;
|
|
45
|
-
private getAPIDataRequestURL;
|
|
46
|
-
private getEventsRequestURL;
|
|
47
|
-
getExperimentRegisterURL: (visitorCode: string, experimentId: number, variationId?: number | undefined, noneVariation?: boolean | undefined) => string;
|
|
48
|
-
getUnsentUsers: () => string[];
|
|
49
|
-
getUnsentData: (visitorCode: string) => DataInterface[];
|
|
50
|
-
getTargetingData: (visitorCode: string) => TargetingData[];
|
|
51
|
-
emptyUnsentData: (visitorCode: string) => void;
|
|
52
|
-
emptyTargetingData: () => void;
|
|
53
|
-
addData: (visitorCode: string, ...data: DataInterface[]) => void;
|
|
54
|
-
checkTargeting: (visitorCode: string, campaignId: number, isFF: boolean) => boolean | null;
|
|
55
|
-
private getConditionData;
|
|
56
|
-
obtainVariationAssociatedData: (variationId: number) => Record<string | number | symbol, string | number | boolean | {
|
|
57
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
58
|
-
} | (string | number | boolean | {
|
|
59
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
60
|
-
} | (string | number | boolean | {
|
|
61
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
62
|
-
} | (string | number | boolean | {
|
|
63
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
64
|
-
} | (string | number | boolean | {
|
|
65
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
66
|
-
} | (string | number | boolean | {
|
|
67
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
68
|
-
} | (string | number | boolean | {
|
|
69
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
70
|
-
} | (string | number | boolean | {
|
|
71
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
72
|
-
} | (string | number | boolean | {
|
|
73
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
74
|
-
} | (string | number | boolean | {
|
|
75
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
76
|
-
} | (string | number | boolean | {
|
|
77
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
78
|
-
} | (string | number | boolean | {
|
|
79
|
-
[x: string]: string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any)[])[])[])[])[])[])[])[])[])[])[];
|
|
80
|
-
} | any)[])[])[])[])[])[])[])[])[])[])[]>;
|
|
81
|
-
obtainFeatureVariable: (featureIdOrName: number | string, variable: string) => any;
|
|
82
|
-
retrieveDataFromRemoteSource: (key: string) => Promise<any>;
|
|
83
|
-
private _parseJsonValue;
|
|
84
|
-
private saveConfiguration;
|
|
85
|
-
private validateVisitorCode;
|
|
86
|
-
private checkSiteEnabled;
|
|
87
|
-
private checkFeatureKeyOrId;
|
|
88
|
-
private getAndClearUnsentData;
|
|
89
|
-
onUpdateConfiguration: (handler: () => void) => void;
|
|
90
|
-
private manageConfiguraitonUpdate;
|
|
91
|
-
private fireUpdateConfigurationHandler;
|
|
1
|
+
import { KameleoonCore, SDKConfigurationType } from '@kameleoon/javascript-sdk-core';
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* KameleoonClient - a class for creating kameleoon client instance
|
|
5
|
+
* */
|
|
6
|
+
export declare class KameleoonClient extends KameleoonCore {
|
|
7
|
+
constructor(siteCode: string, configuration?: Partial<SDKConfigurationType>);
|
|
92
8
|
}
|
|
93
|
-
declare const KameleoonException: {
|
|
94
|
-
ExperimentConfigurationNotFound: typeof ExperimentConfigurationNotFound;
|
|
95
|
-
FeatureConfigurationNotFound: typeof FeatureConfigurationNotFound;
|
|
96
|
-
VariationConfigurationNotFound: typeof VariationConfigurationNotFound;
|
|
97
|
-
NotTargeted: typeof NotTargeted;
|
|
98
|
-
NotActivated: typeof NotActivated;
|
|
99
|
-
CredentialsNotFound: typeof CredentialsNotFound;
|
|
100
|
-
};
|
|
101
|
-
export { KameleoonClient };
|
|
102
|
-
export { Data as KameleoonData };
|
|
103
|
-
export { KameleoonException };
|