react-native-sdk-pianoio 0.3.1 → 0.3.2
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/lib/commonjs/NativeSdkPianoio.ts +9 -20
- package/lib/commonjs/PianoComposer.js +35 -96
- package/lib/commonjs/PianoComposer.js.map +1 -1
- package/lib/module/NativeSdkPianoio.ts +9 -20
- package/lib/module/PianoComposer.js +35 -96
- package/lib/module/PianoComposer.js.map +1 -1
- package/lib/typescript/commonjs/src/NativeSdkPianoio.d.ts +9 -20
- package/lib/typescript/commonjs/src/NativeSdkPianoio.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/PianoComposer.d.ts +25 -28
- package/lib/typescript/commonjs/src/PianoComposer.d.ts.map +1 -1
- package/lib/typescript/module/src/NativeSdkPianoio.d.ts +9 -20
- package/lib/typescript/module/src/NativeSdkPianoio.d.ts.map +1 -1
- package/lib/typescript/module/src/PianoComposer.d.ts +25 -28
- package/lib/typescript/module/src/PianoComposer.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/NativeSdkPianoio.ts +9 -20
- package/src/PianoComposer.tsx +35 -115
@@ -1,28 +1,17 @@
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
2
2
|
|
3
3
|
interface SdkPianoioType {
|
4
|
-
initializeComposer(aid: string): Promise<
|
4
|
+
initializeComposer(aid: string): Promise<boolean>;
|
5
|
+
executeExperience(): Promise<any>;
|
5
6
|
getComposer(): Promise<any>;
|
6
|
-
addComposerTag(tag: string): Promise<any>;
|
7
|
-
addComposerTags(tags: string[]): Promise<any>;
|
8
|
-
setComposerZoneId(zoneId: string): Promise<any>;
|
9
|
-
setComposerReferrer(referrer: string): Promise<any>;
|
10
|
-
setComposerUrl(url: string): Promise<any>;
|
11
|
-
setComposerCustomVariable(name: string, value: string): Promise<any>;
|
12
|
-
setComposerUserToken(token: string): Promise<any>;
|
13
|
-
executeComposer(): Promise<void>;
|
14
7
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
userSegmentFalse(): Promise<boolean>;
|
23
|
-
meterActive(): Promise<boolean>;
|
24
|
-
meterExpired(): Promise<boolean>;
|
25
|
-
composerExecutionCompleted(): Promise<boolean>;
|
8
|
+
addComposerTag(tag: string): Promise<void>;
|
9
|
+
addComposerTags(tags: string[]): Promise<void>;
|
10
|
+
setComposerZoneId(zoneId: string): Promise<void>;
|
11
|
+
setComposerReferrer(referrer: string): Promise<void>;
|
12
|
+
setComposerUrl(url: string): Promise<void>;
|
13
|
+
setComposerCustomVariable(name: string, value: string): Promise<void>;
|
14
|
+
setComposerUserToken(token: string): Promise<void>;
|
26
15
|
}
|
27
16
|
|
28
17
|
const SdkPianoio = NativeModules.SdkPianoio;
|
@@ -7,135 +7,75 @@ exports.default = void 0;
|
|
7
7
|
var _NativeSdkPianoio = _interopRequireDefault(require("./NativeSdkPianoio"));
|
8
8
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
9
9
|
class PianoComposer {
|
10
|
+
// --- Properties to hold configuration state ---
|
11
|
+
|
10
12
|
tags = [];
|
11
13
|
zoneId = null;
|
12
14
|
referrer = null;
|
13
15
|
customVariables = {};
|
14
16
|
userToken = null;
|
15
17
|
url = null;
|
18
|
+
|
19
|
+
// The constructor is private to force users to use the async `create` method.
|
16
20
|
constructor(aid) {
|
17
21
|
this.aid = aid;
|
18
22
|
}
|
23
|
+
|
24
|
+
/**
|
25
|
+
* Creates and initializes a new PianoComposer instance.
|
26
|
+
* This is the entry point for using the library.
|
27
|
+
* @param aid Your Application ID from Piano.io
|
28
|
+
*/
|
19
29
|
static async create(aid) {
|
20
30
|
await _NativeSdkPianoio.default.initializeComposer(aid);
|
21
31
|
return new PianoComposer(aid);
|
22
32
|
}
|
33
|
+
|
34
|
+
// --- Configuration Methods ---
|
35
|
+
|
23
36
|
async addTag(tag) {
|
24
|
-
this.tags.push(tag);
|
37
|
+
this.tags.push(tag); // Store state locally
|
25
38
|
return _NativeSdkPianoio.default.addComposerTag(tag);
|
26
39
|
}
|
27
40
|
async addTags(tags) {
|
28
|
-
this.tags.push(...tags);
|
41
|
+
this.tags.push(...tags); // Store state locally
|
29
42
|
return _NativeSdkPianoio.default.addComposerTags(tags);
|
30
43
|
}
|
31
44
|
async setZoneId(zoneId) {
|
32
|
-
this.zoneId = zoneId;
|
45
|
+
this.zoneId = zoneId; // Store state locally
|
33
46
|
return _NativeSdkPianoio.default.setComposerZoneId(zoneId);
|
34
47
|
}
|
35
48
|
async setReferrer(referrer) {
|
36
|
-
this.referrer = referrer;
|
49
|
+
this.referrer = referrer; // Store state locally
|
37
50
|
return _NativeSdkPianoio.default.setComposerReferrer(referrer);
|
38
51
|
}
|
39
52
|
async setCustomVariable(name, value) {
|
40
|
-
this.customVariables[name] = value;
|
53
|
+
this.customVariables[name] = value; // Store state locally
|
41
54
|
return _NativeSdkPianoio.default.setComposerCustomVariable(name, value);
|
42
55
|
}
|
43
56
|
async setUserToken(token) {
|
44
|
-
this.userToken = token;
|
57
|
+
this.userToken = token; // Store state locally
|
45
58
|
return _NativeSdkPianoio.default.setComposerUserToken(token);
|
46
59
|
}
|
47
60
|
async setUrl(url) {
|
48
|
-
this.url = url;
|
61
|
+
this.url = url; // Store state locally
|
49
62
|
return _NativeSdkPianoio.default.setComposerUrl(url);
|
50
63
|
}
|
51
|
-
|
52
|
-
|
53
|
-
|
64
|
+
|
65
|
+
// --- Core Execution Method ---
|
66
|
+
|
67
|
+
/**
|
68
|
+
* Executes the Piano experience with the current configuration.
|
69
|
+
* This is the primary method to get a decision from the Piano backend.
|
70
|
+
* @returns A promise that resolves with the event data object from the native SDK.
|
71
|
+
*/
|
54
72
|
async executeExperience() {
|
55
|
-
|
56
|
-
|
57
|
-
console.log('executeExperience triggered');
|
58
|
-
console.log('Experience executed:', r);
|
59
|
-
} catch (e) {
|
60
|
-
console.error('Errore nel executeExperience:', e);
|
61
|
-
}
|
62
|
-
}
|
63
|
-
async composerExecutionCompleted() {
|
64
|
-
try {
|
65
|
-
let r = await _NativeSdkPianoio.default.composerExecutionCompleted();
|
66
|
-
console.log('composerExecutionCompleted triggered');
|
67
|
-
console.log('Composer execution completed:', r);
|
68
|
-
} catch (e) {
|
69
|
-
console.error('Errore nel composerExecutionCompleted:', e);
|
70
|
-
}
|
71
|
-
}
|
72
|
-
async showForm() {
|
73
|
-
return _NativeSdkPianoio.default.showForm();
|
74
|
-
}
|
75
|
-
async showLogin() {
|
76
|
-
try {
|
77
|
-
await _NativeSdkPianoio.default.showLogin();
|
78
|
-
console.log('Login triggered');
|
79
|
-
} catch (e) {
|
80
|
-
console.error('Errore nel login:', e);
|
81
|
-
}
|
82
|
-
}
|
83
|
-
async showTemplate() {
|
84
|
-
try {
|
85
|
-
await _NativeSdkPianoio.default.showTemplate();
|
86
|
-
console.log('Template triggered');
|
87
|
-
} catch (e) {
|
88
|
-
console.error('Errore nel Template:', e);
|
89
|
-
}
|
90
|
-
}
|
91
|
-
async showRecommendations() {
|
92
|
-
try {
|
93
|
-
await _NativeSdkPianoio.default.showRecommendations();
|
94
|
-
console.log('showRecommendations triggered');
|
95
|
-
} catch (e) {
|
96
|
-
console.error('Errore nel Template:', e);
|
97
|
-
}
|
98
|
-
}
|
99
|
-
async nonSite() {
|
100
|
-
try {
|
101
|
-
await _NativeSdkPianoio.default.nonSite();
|
102
|
-
console.log('nonSite triggered');
|
103
|
-
} catch (e) {
|
104
|
-
console.error('Errore nel Template:', e);
|
105
|
-
}
|
106
|
-
}
|
107
|
-
async userSegmentTrue() {
|
108
|
-
try {
|
109
|
-
await _NativeSdkPianoio.default.userSegmentTrue();
|
110
|
-
console.log('userSegmentTrue triggered');
|
111
|
-
} catch (e) {
|
112
|
-
console.error('Errore nel userSegmentTrue:', e);
|
113
|
-
}
|
114
|
-
}
|
115
|
-
async userSegmentFalse() {
|
116
|
-
try {
|
117
|
-
await _NativeSdkPianoio.default.userSegmentFalse();
|
118
|
-
console.log('userSegmentFalse triggered');
|
119
|
-
} catch (e) {
|
120
|
-
console.error('Errore nel userSegmentFalse:', e);
|
121
|
-
}
|
122
|
-
}
|
123
|
-
async meterActive() {
|
124
|
-
try {
|
125
|
-
await _NativeSdkPianoio.default.meterActive();
|
126
|
-
console.log('Template meterActive');
|
127
|
-
} catch (e) {
|
128
|
-
console.error('Errore nel meterActive:', e);
|
129
|
-
}
|
130
|
-
}
|
131
|
-
async meterExpired() {
|
132
|
-
try {
|
133
|
-
await _NativeSdkPianoio.default.meterExpired();
|
134
|
-
console.log('meterExpired triggered');
|
135
|
-
} catch (e) {
|
136
|
-
console.error('Errore nel meterExpired:', e);
|
137
|
-
}
|
73
|
+
// This now correctly calls the native method AND returns the result.
|
74
|
+
return _NativeSdkPianoio.default.executeExperience();
|
138
75
|
}
|
76
|
+
|
77
|
+
// --- Static Helper Methods ---
|
78
|
+
|
139
79
|
static async isInitialized() {
|
140
80
|
try {
|
141
81
|
const result = await _NativeSdkPianoio.default.getComposer();
|
@@ -145,13 +85,12 @@ class PianoComposer {
|
|
145
85
|
}
|
146
86
|
}
|
147
87
|
static async getComposerFromSdkIOS() {
|
148
|
-
|
149
|
-
return result;
|
88
|
+
return _NativeSdkPianoio.default.getComposer();
|
150
89
|
}
|
151
90
|
async toString() {
|
152
91
|
return `PianoComposer {
|
153
92
|
aid: ${this.aid},
|
154
|
-
tags: ${this.tags},
|
93
|
+
tags: ${this.tags.join(',')},
|
155
94
|
zoneId: ${this.zoneId},
|
156
95
|
referrer: ${this.referrer},
|
157
96
|
customVariables: ${JSON.stringify(this.customVariables)},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_NativeSdkPianoio","_interopRequireDefault","require","e","__esModule","default","PianoComposer","tags","zoneId","referrer","customVariables","userToken","url","constructor","aid","create","SdkPianoio","initializeComposer","addTag","tag","push","addComposerTag","addTags","addComposerTags","setZoneId","setComposerZoneId","setReferrer","setComposerReferrer","setCustomVariable","name","value","setComposerCustomVariable","setUserToken","token","setComposerUserToken","setUrl","setComposerUrl","
|
1
|
+
{"version":3,"names":["_NativeSdkPianoio","_interopRequireDefault","require","e","__esModule","default","PianoComposer","tags","zoneId","referrer","customVariables","userToken","url","constructor","aid","create","SdkPianoio","initializeComposer","addTag","tag","push","addComposerTag","addTags","addComposerTags","setZoneId","setComposerZoneId","setReferrer","setComposerReferrer","setCustomVariable","name","value","setComposerCustomVariable","setUserToken","token","setComposerUserToken","setUrl","setComposerUrl","executeExperience","isInitialized","result","getComposer","getComposerFromSdkIOS","toString","join","JSON","stringify","_default","exports"],"sourceRoot":"../../src","sources":["PianoComposer.tsx"],"mappings":"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","ignoreList":[]}
|
@@ -1,28 +1,17 @@
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
2
2
|
|
3
3
|
interface SdkPianoioType {
|
4
|
-
initializeComposer(aid: string): Promise<
|
4
|
+
initializeComposer(aid: string): Promise<boolean>;
|
5
|
+
executeExperience(): Promise<any>;
|
5
6
|
getComposer(): Promise<any>;
|
6
|
-
addComposerTag(tag: string): Promise<any>;
|
7
|
-
addComposerTags(tags: string[]): Promise<any>;
|
8
|
-
setComposerZoneId(zoneId: string): Promise<any>;
|
9
|
-
setComposerReferrer(referrer: string): Promise<any>;
|
10
|
-
setComposerUrl(url: string): Promise<any>;
|
11
|
-
setComposerCustomVariable(name: string, value: string): Promise<any>;
|
12
|
-
setComposerUserToken(token: string): Promise<any>;
|
13
|
-
executeComposer(): Promise<void>;
|
14
7
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
userSegmentFalse(): Promise<boolean>;
|
23
|
-
meterActive(): Promise<boolean>;
|
24
|
-
meterExpired(): Promise<boolean>;
|
25
|
-
composerExecutionCompleted(): Promise<boolean>;
|
8
|
+
addComposerTag(tag: string): Promise<void>;
|
9
|
+
addComposerTags(tags: string[]): Promise<void>;
|
10
|
+
setComposerZoneId(zoneId: string): Promise<void>;
|
11
|
+
setComposerReferrer(referrer: string): Promise<void>;
|
12
|
+
setComposerUrl(url: string): Promise<void>;
|
13
|
+
setComposerCustomVariable(name: string, value: string): Promise<void>;
|
14
|
+
setComposerUserToken(token: string): Promise<void>;
|
26
15
|
}
|
27
16
|
|
28
17
|
const SdkPianoio = NativeModules.SdkPianoio;
|
@@ -2,135 +2,75 @@
|
|
2
2
|
|
3
3
|
import SdkPianoio from './NativeSdkPianoio';
|
4
4
|
class PianoComposer {
|
5
|
+
// --- Properties to hold configuration state ---
|
6
|
+
|
5
7
|
tags = [];
|
6
8
|
zoneId = null;
|
7
9
|
referrer = null;
|
8
10
|
customVariables = {};
|
9
11
|
userToken = null;
|
10
12
|
url = null;
|
13
|
+
|
14
|
+
// The constructor is private to force users to use the async `create` method.
|
11
15
|
constructor(aid) {
|
12
16
|
this.aid = aid;
|
13
17
|
}
|
18
|
+
|
19
|
+
/**
|
20
|
+
* Creates and initializes a new PianoComposer instance.
|
21
|
+
* This is the entry point for using the library.
|
22
|
+
* @param aid Your Application ID from Piano.io
|
23
|
+
*/
|
14
24
|
static async create(aid) {
|
15
25
|
await SdkPianoio.initializeComposer(aid);
|
16
26
|
return new PianoComposer(aid);
|
17
27
|
}
|
28
|
+
|
29
|
+
// --- Configuration Methods ---
|
30
|
+
|
18
31
|
async addTag(tag) {
|
19
|
-
this.tags.push(tag);
|
32
|
+
this.tags.push(tag); // Store state locally
|
20
33
|
return SdkPianoio.addComposerTag(tag);
|
21
34
|
}
|
22
35
|
async addTags(tags) {
|
23
|
-
this.tags.push(...tags);
|
36
|
+
this.tags.push(...tags); // Store state locally
|
24
37
|
return SdkPianoio.addComposerTags(tags);
|
25
38
|
}
|
26
39
|
async setZoneId(zoneId) {
|
27
|
-
this.zoneId = zoneId;
|
40
|
+
this.zoneId = zoneId; // Store state locally
|
28
41
|
return SdkPianoio.setComposerZoneId(zoneId);
|
29
42
|
}
|
30
43
|
async setReferrer(referrer) {
|
31
|
-
this.referrer = referrer;
|
44
|
+
this.referrer = referrer; // Store state locally
|
32
45
|
return SdkPianoio.setComposerReferrer(referrer);
|
33
46
|
}
|
34
47
|
async setCustomVariable(name, value) {
|
35
|
-
this.customVariables[name] = value;
|
48
|
+
this.customVariables[name] = value; // Store state locally
|
36
49
|
return SdkPianoio.setComposerCustomVariable(name, value);
|
37
50
|
}
|
38
51
|
async setUserToken(token) {
|
39
|
-
this.userToken = token;
|
52
|
+
this.userToken = token; // Store state locally
|
40
53
|
return SdkPianoio.setComposerUserToken(token);
|
41
54
|
}
|
42
55
|
async setUrl(url) {
|
43
|
-
this.url = url;
|
56
|
+
this.url = url; // Store state locally
|
44
57
|
return SdkPianoio.setComposerUrl(url);
|
45
58
|
}
|
46
|
-
|
47
|
-
|
48
|
-
|
59
|
+
|
60
|
+
// --- Core Execution Method ---
|
61
|
+
|
62
|
+
/**
|
63
|
+
* Executes the Piano experience with the current configuration.
|
64
|
+
* This is the primary method to get a decision from the Piano backend.
|
65
|
+
* @returns A promise that resolves with the event data object from the native SDK.
|
66
|
+
*/
|
49
67
|
async executeExperience() {
|
50
|
-
|
51
|
-
|
52
|
-
console.log('executeExperience triggered');
|
53
|
-
console.log('Experience executed:', r);
|
54
|
-
} catch (e) {
|
55
|
-
console.error('Errore nel executeExperience:', e);
|
56
|
-
}
|
57
|
-
}
|
58
|
-
async composerExecutionCompleted() {
|
59
|
-
try {
|
60
|
-
let r = await SdkPianoio.composerExecutionCompleted();
|
61
|
-
console.log('composerExecutionCompleted triggered');
|
62
|
-
console.log('Composer execution completed:', r);
|
63
|
-
} catch (e) {
|
64
|
-
console.error('Errore nel composerExecutionCompleted:', e);
|
65
|
-
}
|
66
|
-
}
|
67
|
-
async showForm() {
|
68
|
-
return SdkPianoio.showForm();
|
69
|
-
}
|
70
|
-
async showLogin() {
|
71
|
-
try {
|
72
|
-
await SdkPianoio.showLogin();
|
73
|
-
console.log('Login triggered');
|
74
|
-
} catch (e) {
|
75
|
-
console.error('Errore nel login:', e);
|
76
|
-
}
|
77
|
-
}
|
78
|
-
async showTemplate() {
|
79
|
-
try {
|
80
|
-
await SdkPianoio.showTemplate();
|
81
|
-
console.log('Template triggered');
|
82
|
-
} catch (e) {
|
83
|
-
console.error('Errore nel Template:', e);
|
84
|
-
}
|
85
|
-
}
|
86
|
-
async showRecommendations() {
|
87
|
-
try {
|
88
|
-
await SdkPianoio.showRecommendations();
|
89
|
-
console.log('showRecommendations triggered');
|
90
|
-
} catch (e) {
|
91
|
-
console.error('Errore nel Template:', e);
|
92
|
-
}
|
93
|
-
}
|
94
|
-
async nonSite() {
|
95
|
-
try {
|
96
|
-
await SdkPianoio.nonSite();
|
97
|
-
console.log('nonSite triggered');
|
98
|
-
} catch (e) {
|
99
|
-
console.error('Errore nel Template:', e);
|
100
|
-
}
|
101
|
-
}
|
102
|
-
async userSegmentTrue() {
|
103
|
-
try {
|
104
|
-
await SdkPianoio.userSegmentTrue();
|
105
|
-
console.log('userSegmentTrue triggered');
|
106
|
-
} catch (e) {
|
107
|
-
console.error('Errore nel userSegmentTrue:', e);
|
108
|
-
}
|
109
|
-
}
|
110
|
-
async userSegmentFalse() {
|
111
|
-
try {
|
112
|
-
await SdkPianoio.userSegmentFalse();
|
113
|
-
console.log('userSegmentFalse triggered');
|
114
|
-
} catch (e) {
|
115
|
-
console.error('Errore nel userSegmentFalse:', e);
|
116
|
-
}
|
117
|
-
}
|
118
|
-
async meterActive() {
|
119
|
-
try {
|
120
|
-
await SdkPianoio.meterActive();
|
121
|
-
console.log('Template meterActive');
|
122
|
-
} catch (e) {
|
123
|
-
console.error('Errore nel meterActive:', e);
|
124
|
-
}
|
125
|
-
}
|
126
|
-
async meterExpired() {
|
127
|
-
try {
|
128
|
-
await SdkPianoio.meterExpired();
|
129
|
-
console.log('meterExpired triggered');
|
130
|
-
} catch (e) {
|
131
|
-
console.error('Errore nel meterExpired:', e);
|
132
|
-
}
|
68
|
+
// This now correctly calls the native method AND returns the result.
|
69
|
+
return SdkPianoio.executeExperience();
|
133
70
|
}
|
71
|
+
|
72
|
+
// --- Static Helper Methods ---
|
73
|
+
|
134
74
|
static async isInitialized() {
|
135
75
|
try {
|
136
76
|
const result = await SdkPianoio.getComposer();
|
@@ -140,13 +80,12 @@ class PianoComposer {
|
|
140
80
|
}
|
141
81
|
}
|
142
82
|
static async getComposerFromSdkIOS() {
|
143
|
-
|
144
|
-
return result;
|
83
|
+
return SdkPianoio.getComposer();
|
145
84
|
}
|
146
85
|
async toString() {
|
147
86
|
return `PianoComposer {
|
148
87
|
aid: ${this.aid},
|
149
|
-
tags: ${this.tags},
|
88
|
+
tags: ${this.tags.join(',')},
|
150
89
|
zoneId: ${this.zoneId},
|
151
90
|
referrer: ${this.referrer},
|
152
91
|
customVariables: ${JSON.stringify(this.customVariables)},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["SdkPianoio","PianoComposer","tags","zoneId","referrer","customVariables","userToken","url","constructor","aid","create","initializeComposer","addTag","tag","push","addComposerTag","addTags","addComposerTags","setZoneId","setComposerZoneId","setReferrer","setComposerReferrer","setCustomVariable","name","value","setComposerCustomVariable","setUserToken","token","setComposerUserToken","setUrl","setComposerUrl","
|
1
|
+
{"version":3,"names":["SdkPianoio","PianoComposer","tags","zoneId","referrer","customVariables","userToken","url","constructor","aid","create","initializeComposer","addTag","tag","push","addComposerTag","addTags","addComposerTags","setZoneId","setComposerZoneId","setReferrer","setComposerReferrer","setCustomVariable","name","value","setComposerCustomVariable","setUserToken","token","setComposerUserToken","setUrl","setComposerUrl","executeExperience","isInitialized","result","getComposer","e","getComposerFromSdkIOS","toString","join","JSON","stringify"],"sourceRoot":"../../src","sources":["PianoComposer.tsx"],"mappings":"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","ignoreList":[]}
|
@@ -1,25 +1,14 @@
|
|
1
1
|
interface SdkPianoioType {
|
2
|
-
initializeComposer(aid: string): Promise<
|
2
|
+
initializeComposer(aid: string): Promise<boolean>;
|
3
|
+
executeExperience(): Promise<any>;
|
3
4
|
getComposer(): Promise<any>;
|
4
|
-
addComposerTag(tag: string): Promise<
|
5
|
-
addComposerTags(tags: string[]): Promise<
|
6
|
-
setComposerZoneId(zoneId: string): Promise<
|
7
|
-
setComposerReferrer(referrer: string): Promise<
|
8
|
-
setComposerUrl(url: string): Promise<
|
9
|
-
setComposerCustomVariable(name: string, value: string): Promise<
|
10
|
-
setComposerUserToken(token: string): Promise<
|
11
|
-
executeComposer(): Promise<void>;
|
12
|
-
executeExperience(): Promise<boolean>;
|
13
|
-
showLogin(): Promise<boolean>;
|
14
|
-
showTemplate(): Promise<boolean>;
|
15
|
-
showForm(): Promise<boolean>;
|
16
|
-
showRecommendations(): Promise<boolean>;
|
17
|
-
nonSite(): Promise<boolean>;
|
18
|
-
userSegmentTrue(): Promise<boolean>;
|
19
|
-
userSegmentFalse(): Promise<boolean>;
|
20
|
-
meterActive(): Promise<boolean>;
|
21
|
-
meterExpired(): Promise<boolean>;
|
22
|
-
composerExecutionCompleted(): Promise<boolean>;
|
5
|
+
addComposerTag(tag: string): Promise<void>;
|
6
|
+
addComposerTags(tags: string[]): Promise<void>;
|
7
|
+
setComposerZoneId(zoneId: string): Promise<void>;
|
8
|
+
setComposerReferrer(referrer: string): Promise<void>;
|
9
|
+
setComposerUrl(url: string): Promise<void>;
|
10
|
+
setComposerCustomVariable(name: string, value: string): Promise<void>;
|
11
|
+
setComposerUserToken(token: string): Promise<void>;
|
23
12
|
}
|
24
13
|
declare const _default: SdkPianoioType;
|
25
14
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NativeSdkPianoio.d.ts","sourceRoot":"","sources":["../../../../src/NativeSdkPianoio.ts"],"names":[],"mappings":"AAEA,UAAU,cAAc;IACtB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"NativeSdkPianoio.d.ts","sourceRoot":"","sources":["../../../../src/NativeSdkPianoio.ts"],"names":[],"mappings":"AAEA,UAAU,cAAc;IACtB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClD,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAE5B,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;wBAW4B,cAAc;AAA3C,wBAA4C"}
|
@@ -1,34 +1,31 @@
|
|
1
1
|
declare class PianoComposer {
|
2
|
-
aid
|
3
|
-
tags
|
4
|
-
zoneId
|
5
|
-
referrer
|
6
|
-
customVariables
|
7
|
-
|
8
|
-
|
9
|
-
userToken: string | null;
|
10
|
-
url: string | null;
|
2
|
+
private aid;
|
3
|
+
private tags;
|
4
|
+
private zoneId;
|
5
|
+
private referrer;
|
6
|
+
private customVariables;
|
7
|
+
private userToken;
|
8
|
+
private url;
|
11
9
|
private constructor();
|
10
|
+
/**
|
11
|
+
* Creates and initializes a new PianoComposer instance.
|
12
|
+
* This is the entry point for using the library.
|
13
|
+
* @param aid Your Application ID from Piano.io
|
14
|
+
*/
|
12
15
|
static create(aid: string): Promise<PianoComposer>;
|
13
|
-
addTag(tag: string): Promise<
|
14
|
-
addTags(tags: string[]): Promise<
|
15
|
-
setZoneId(zoneId: string): Promise<
|
16
|
-
setReferrer(referrer: string): Promise<
|
17
|
-
setCustomVariable(name: string, value: string): Promise<
|
18
|
-
setUserToken(token: string): Promise<
|
19
|
-
setUrl(url: string): Promise<
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
showRecommendations(): Promise<void>;
|
27
|
-
nonSite(): Promise<void>;
|
28
|
-
userSegmentTrue(): Promise<void>;
|
29
|
-
userSegmentFalse(): Promise<void>;
|
30
|
-
meterActive(): Promise<void>;
|
31
|
-
meterExpired(): Promise<void>;
|
16
|
+
addTag(tag: string): Promise<void>;
|
17
|
+
addTags(tags: string[]): Promise<void>;
|
18
|
+
setZoneId(zoneId: string): Promise<void>;
|
19
|
+
setReferrer(referrer: string): Promise<void>;
|
20
|
+
setCustomVariable(name: string, value: string): Promise<void>;
|
21
|
+
setUserToken(token: string): Promise<void>;
|
22
|
+
setUrl(url: string): Promise<void>;
|
23
|
+
/**
|
24
|
+
* Executes the Piano experience with the current configuration.
|
25
|
+
* This is the primary method to get a decision from the Piano backend.
|
26
|
+
* @returns A promise that resolves with the event data object from the native SDK.
|
27
|
+
*/
|
28
|
+
executeExperience(): Promise<any>;
|
32
29
|
static isInitialized(): Promise<boolean>;
|
33
30
|
static getComposerFromSdkIOS(): Promise<any>;
|
34
31
|
toString(): Promise<string>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PianoComposer.d.ts","sourceRoot":"","sources":["../../../../src/PianoComposer.tsx"],"names":[],"mappings":"AAEA,cAAM,aAAa;
|
1
|
+
{"version":3,"file":"PianoComposer.d.ts","sourceRoot":"","sources":["../../../../src/PianoComposer.tsx"],"names":[],"mappings":"AAEA,cAAM,aAAa;IAEjB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,eAAe,CAAiC;IACxD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,GAAG,CAAuB;IAGlC,OAAO;IAIP;;;;OAIG;WACU,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAOlD,MAAM,CAAC,GAAG,EAAE,MAAM;IAKlB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE;IAKtB,SAAS,CAAC,MAAM,EAAE,MAAM;IAKxB,WAAW,CAAC,QAAQ,EAAE,MAAM;IAK5B,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAK7C,YAAY,CAAC,KAAK,EAAE,MAAM;IAK1B,MAAM,CAAC,GAAG,EAAE,MAAM;IAOxB;;;;OAIG;IACG,iBAAiB;WAOV,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;WASjC,qBAAqB;IAI5B,QAAQ;CAWf;AAED,eAAe,aAAa,CAAC"}
|
@@ -1,25 +1,14 @@
|
|
1
1
|
interface SdkPianoioType {
|
2
|
-
initializeComposer(aid: string): Promise<
|
2
|
+
initializeComposer(aid: string): Promise<boolean>;
|
3
|
+
executeExperience(): Promise<any>;
|
3
4
|
getComposer(): Promise<any>;
|
4
|
-
addComposerTag(tag: string): Promise<
|
5
|
-
addComposerTags(tags: string[]): Promise<
|
6
|
-
setComposerZoneId(zoneId: string): Promise<
|
7
|
-
setComposerReferrer(referrer: string): Promise<
|
8
|
-
setComposerUrl(url: string): Promise<
|
9
|
-
setComposerCustomVariable(name: string, value: string): Promise<
|
10
|
-
setComposerUserToken(token: string): Promise<
|
11
|
-
executeComposer(): Promise<void>;
|
12
|
-
executeExperience(): Promise<boolean>;
|
13
|
-
showLogin(): Promise<boolean>;
|
14
|
-
showTemplate(): Promise<boolean>;
|
15
|
-
showForm(): Promise<boolean>;
|
16
|
-
showRecommendations(): Promise<boolean>;
|
17
|
-
nonSite(): Promise<boolean>;
|
18
|
-
userSegmentTrue(): Promise<boolean>;
|
19
|
-
userSegmentFalse(): Promise<boolean>;
|
20
|
-
meterActive(): Promise<boolean>;
|
21
|
-
meterExpired(): Promise<boolean>;
|
22
|
-
composerExecutionCompleted(): Promise<boolean>;
|
5
|
+
addComposerTag(tag: string): Promise<void>;
|
6
|
+
addComposerTags(tags: string[]): Promise<void>;
|
7
|
+
setComposerZoneId(zoneId: string): Promise<void>;
|
8
|
+
setComposerReferrer(referrer: string): Promise<void>;
|
9
|
+
setComposerUrl(url: string): Promise<void>;
|
10
|
+
setComposerCustomVariable(name: string, value: string): Promise<void>;
|
11
|
+
setComposerUserToken(token: string): Promise<void>;
|
23
12
|
}
|
24
13
|
declare const _default: SdkPianoioType;
|
25
14
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NativeSdkPianoio.d.ts","sourceRoot":"","sources":["../../../../src/NativeSdkPianoio.ts"],"names":[],"mappings":"AAEA,UAAU,cAAc;IACtB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"NativeSdkPianoio.d.ts","sourceRoot":"","sources":["../../../../src/NativeSdkPianoio.ts"],"names":[],"mappings":"AAEA,UAAU,cAAc;IACtB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClD,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAE5B,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;wBAW4B,cAAc;AAA3C,wBAA4C"}
|
@@ -1,34 +1,31 @@
|
|
1
1
|
declare class PianoComposer {
|
2
|
-
aid
|
3
|
-
tags
|
4
|
-
zoneId
|
5
|
-
referrer
|
6
|
-
customVariables
|
7
|
-
|
8
|
-
|
9
|
-
userToken: string | null;
|
10
|
-
url: string | null;
|
2
|
+
private aid;
|
3
|
+
private tags;
|
4
|
+
private zoneId;
|
5
|
+
private referrer;
|
6
|
+
private customVariables;
|
7
|
+
private userToken;
|
8
|
+
private url;
|
11
9
|
private constructor();
|
10
|
+
/**
|
11
|
+
* Creates and initializes a new PianoComposer instance.
|
12
|
+
* This is the entry point for using the library.
|
13
|
+
* @param aid Your Application ID from Piano.io
|
14
|
+
*/
|
12
15
|
static create(aid: string): Promise<PianoComposer>;
|
13
|
-
addTag(tag: string): Promise<
|
14
|
-
addTags(tags: string[]): Promise<
|
15
|
-
setZoneId(zoneId: string): Promise<
|
16
|
-
setReferrer(referrer: string): Promise<
|
17
|
-
setCustomVariable(name: string, value: string): Promise<
|
18
|
-
setUserToken(token: string): Promise<
|
19
|
-
setUrl(url: string): Promise<
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
showRecommendations(): Promise<void>;
|
27
|
-
nonSite(): Promise<void>;
|
28
|
-
userSegmentTrue(): Promise<void>;
|
29
|
-
userSegmentFalse(): Promise<void>;
|
30
|
-
meterActive(): Promise<void>;
|
31
|
-
meterExpired(): Promise<void>;
|
16
|
+
addTag(tag: string): Promise<void>;
|
17
|
+
addTags(tags: string[]): Promise<void>;
|
18
|
+
setZoneId(zoneId: string): Promise<void>;
|
19
|
+
setReferrer(referrer: string): Promise<void>;
|
20
|
+
setCustomVariable(name: string, value: string): Promise<void>;
|
21
|
+
setUserToken(token: string): Promise<void>;
|
22
|
+
setUrl(url: string): Promise<void>;
|
23
|
+
/**
|
24
|
+
* Executes the Piano experience with the current configuration.
|
25
|
+
* This is the primary method to get a decision from the Piano backend.
|
26
|
+
* @returns A promise that resolves with the event data object from the native SDK.
|
27
|
+
*/
|
28
|
+
executeExperience(): Promise<any>;
|
32
29
|
static isInitialized(): Promise<boolean>;
|
33
30
|
static getComposerFromSdkIOS(): Promise<any>;
|
34
31
|
toString(): Promise<string>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PianoComposer.d.ts","sourceRoot":"","sources":["../../../../src/PianoComposer.tsx"],"names":[],"mappings":"AAEA,cAAM,aAAa;
|
1
|
+
{"version":3,"file":"PianoComposer.d.ts","sourceRoot":"","sources":["../../../../src/PianoComposer.tsx"],"names":[],"mappings":"AAEA,cAAM,aAAa;IAEjB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,eAAe,CAAiC;IACxD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,GAAG,CAAuB;IAGlC,OAAO;IAIP;;;;OAIG;WACU,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAOlD,MAAM,CAAC,GAAG,EAAE,MAAM;IAKlB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE;IAKtB,SAAS,CAAC,MAAM,EAAE,MAAM;IAKxB,WAAW,CAAC,QAAQ,EAAE,MAAM;IAK5B,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAK7C,YAAY,CAAC,KAAK,EAAE,MAAM;IAK1B,MAAM,CAAC,GAAG,EAAE,MAAM;IAOxB;;;;OAIG;IACG,iBAAiB;WAOV,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;WASjC,qBAAqB;IAI5B,QAAQ;CAWf;AAED,eAAe,aAAa,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "react-native-sdk-pianoio",
|
3
|
-
"version": "0.3.
|
3
|
+
"version": "0.3.2",
|
4
4
|
"description": "Piano io sdk integration",
|
5
5
|
"source": "./src/index.tsx",
|
6
6
|
"main": "./lib/commonjs/index.js",
|
@@ -215,4 +215,4 @@
|
|
215
215
|
"languages": "kotlin-objc",
|
216
216
|
"version": "0.48.9"
|
217
217
|
}
|
218
|
-
}
|
218
|
+
}
|
package/src/NativeSdkPianoio.ts
CHANGED
@@ -1,28 +1,17 @@
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
2
2
|
|
3
3
|
interface SdkPianoioType {
|
4
|
-
initializeComposer(aid: string): Promise<
|
4
|
+
initializeComposer(aid: string): Promise<boolean>;
|
5
|
+
executeExperience(): Promise<any>;
|
5
6
|
getComposer(): Promise<any>;
|
6
|
-
addComposerTag(tag: string): Promise<any>;
|
7
|
-
addComposerTags(tags: string[]): Promise<any>;
|
8
|
-
setComposerZoneId(zoneId: string): Promise<any>;
|
9
|
-
setComposerReferrer(referrer: string): Promise<any>;
|
10
|
-
setComposerUrl(url: string): Promise<any>;
|
11
|
-
setComposerCustomVariable(name: string, value: string): Promise<any>;
|
12
|
-
setComposerUserToken(token: string): Promise<any>;
|
13
|
-
executeComposer(): Promise<void>;
|
14
7
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
userSegmentFalse(): Promise<boolean>;
|
23
|
-
meterActive(): Promise<boolean>;
|
24
|
-
meterExpired(): Promise<boolean>;
|
25
|
-
composerExecutionCompleted(): Promise<boolean>;
|
8
|
+
addComposerTag(tag: string): Promise<void>;
|
9
|
+
addComposerTags(tags: string[]): Promise<void>;
|
10
|
+
setComposerZoneId(zoneId: string): Promise<void>;
|
11
|
+
setComposerReferrer(referrer: string): Promise<void>;
|
12
|
+
setComposerUrl(url: string): Promise<void>;
|
13
|
+
setComposerCustomVariable(name: string, value: string): Promise<void>;
|
14
|
+
setComposerUserToken(token: string): Promise<void>;
|
26
15
|
}
|
27
16
|
|
28
17
|
const SdkPianoio = NativeModules.SdkPianoio;
|
package/src/PianoComposer.tsx
CHANGED
@@ -1,158 +1,80 @@
|
|
1
1
|
import SdkPianoio from './NativeSdkPianoio';
|
2
2
|
|
3
3
|
class PianoComposer {
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
4
|
+
// --- Properties to hold configuration state ---
|
5
|
+
private aid: string;
|
6
|
+
private tags: string[] = [];
|
7
|
+
private zoneId: string | null = null;
|
8
|
+
private referrer: string | null = null;
|
9
|
+
private customVariables: { [key: string]: string } = {};
|
10
|
+
private userToken: string | null = null;
|
11
|
+
private url: string | null = null;
|
12
|
+
|
13
|
+
// The constructor is private to force users to use the async `create` method.
|
12
14
|
private constructor(aid: string) {
|
13
15
|
this.aid = aid;
|
14
16
|
}
|
15
17
|
|
18
|
+
/**
|
19
|
+
* Creates and initializes a new PianoComposer instance.
|
20
|
+
* This is the entry point for using the library.
|
21
|
+
* @param aid Your Application ID from Piano.io
|
22
|
+
*/
|
16
23
|
static async create(aid: string): Promise<PianoComposer> {
|
17
24
|
await SdkPianoio.initializeComposer(aid);
|
18
25
|
return new PianoComposer(aid);
|
19
26
|
}
|
20
27
|
|
28
|
+
// --- Configuration Methods ---
|
29
|
+
|
21
30
|
async addTag(tag: string) {
|
22
|
-
this.tags.push(tag);
|
31
|
+
this.tags.push(tag); // Store state locally
|
23
32
|
return SdkPianoio.addComposerTag(tag);
|
24
33
|
}
|
25
34
|
|
26
35
|
async addTags(tags: string[]) {
|
27
|
-
this.tags.push(...tags);
|
36
|
+
this.tags.push(...tags); // Store state locally
|
28
37
|
return SdkPianoio.addComposerTags(tags);
|
29
38
|
}
|
30
39
|
|
31
40
|
async setZoneId(zoneId: string) {
|
32
|
-
this.zoneId = zoneId;
|
41
|
+
this.zoneId = zoneId; // Store state locally
|
33
42
|
return SdkPianoio.setComposerZoneId(zoneId);
|
34
43
|
}
|
35
44
|
|
36
45
|
async setReferrer(referrer: string) {
|
37
|
-
this.referrer = referrer;
|
46
|
+
this.referrer = referrer; // Store state locally
|
38
47
|
return SdkPianoio.setComposerReferrer(referrer);
|
39
48
|
}
|
40
49
|
|
41
50
|
async setCustomVariable(name: string, value: string) {
|
42
|
-
this.customVariables[name] = value;
|
43
|
-
|
51
|
+
this.customVariables[name] = value; // Store state locally
|
44
52
|
return SdkPianoio.setComposerCustomVariable(name, value);
|
45
53
|
}
|
46
54
|
|
47
55
|
async setUserToken(token: string) {
|
48
|
-
this.userToken = token;
|
56
|
+
this.userToken = token; // Store state locally
|
49
57
|
return SdkPianoio.setComposerUserToken(token);
|
50
58
|
}
|
51
59
|
|
52
60
|
async setUrl(url: string) {
|
53
|
-
this.url = url;
|
61
|
+
this.url = url; // Store state locally
|
54
62
|
return SdkPianoio.setComposerUrl(url);
|
55
63
|
}
|
56
64
|
|
57
|
-
|
58
|
-
return SdkPianoio.executeComposer();
|
59
|
-
}
|
65
|
+
// --- Core Execution Method ---
|
60
66
|
|
67
|
+
/**
|
68
|
+
* Executes the Piano experience with the current configuration.
|
69
|
+
* This is the primary method to get a decision from the Piano backend.
|
70
|
+
* @returns A promise that resolves with the event data object from the native SDK.
|
71
|
+
*/
|
61
72
|
async executeExperience() {
|
62
|
-
|
63
|
-
|
64
|
-
console.log('executeExperience triggered');
|
65
|
-
console.log('Experience executed:', r);
|
66
|
-
} catch (e) {
|
67
|
-
console.error('Errore nel executeExperience:', e);
|
68
|
-
}
|
69
|
-
}
|
70
|
-
|
71
|
-
async composerExecutionCompleted() {
|
72
|
-
try {
|
73
|
-
let r = await SdkPianoio.composerExecutionCompleted();
|
74
|
-
console.log('composerExecutionCompleted triggered');
|
75
|
-
console.log('Composer execution completed:', r);
|
76
|
-
} catch (e) {
|
77
|
-
console.error('Errore nel composerExecutionCompleted:', e);
|
78
|
-
}
|
79
|
-
}
|
80
|
-
|
81
|
-
async showForm() {
|
82
|
-
return SdkPianoio.showForm();
|
83
|
-
}
|
84
|
-
|
85
|
-
async showLogin() {
|
86
|
-
try {
|
87
|
-
await SdkPianoio.showLogin();
|
88
|
-
console.log('Login triggered');
|
89
|
-
} catch (e) {
|
90
|
-
console.error('Errore nel login:', e);
|
91
|
-
}
|
92
|
-
}
|
93
|
-
|
94
|
-
async showTemplate() {
|
95
|
-
try {
|
96
|
-
await SdkPianoio.showTemplate();
|
97
|
-
console.log('Template triggered');
|
98
|
-
} catch (e) {
|
99
|
-
console.error('Errore nel Template:', e);
|
100
|
-
}
|
101
|
-
}
|
102
|
-
|
103
|
-
async showRecommendations() {
|
104
|
-
try {
|
105
|
-
await SdkPianoio.showRecommendations();
|
106
|
-
console.log('showRecommendations triggered');
|
107
|
-
} catch (e) {
|
108
|
-
console.error('Errore nel Template:', e);
|
109
|
-
}
|
110
|
-
}
|
111
|
-
|
112
|
-
async nonSite() {
|
113
|
-
try {
|
114
|
-
await SdkPianoio.nonSite();
|
115
|
-
console.log('nonSite triggered');
|
116
|
-
} catch (e) {
|
117
|
-
console.error('Errore nel Template:', e);
|
118
|
-
}
|
73
|
+
// This now correctly calls the native method AND returns the result.
|
74
|
+
return SdkPianoio.executeExperience();
|
119
75
|
}
|
120
76
|
|
121
|
-
|
122
|
-
try {
|
123
|
-
await SdkPianoio.userSegmentTrue();
|
124
|
-
console.log('userSegmentTrue triggered');
|
125
|
-
} catch (e) {
|
126
|
-
console.error('Errore nel userSegmentTrue:', e);
|
127
|
-
}
|
128
|
-
}
|
129
|
-
|
130
|
-
async userSegmentFalse() {
|
131
|
-
try {
|
132
|
-
await SdkPianoio.userSegmentFalse();
|
133
|
-
console.log('userSegmentFalse triggered');
|
134
|
-
} catch (e) {
|
135
|
-
console.error('Errore nel userSegmentFalse:', e);
|
136
|
-
}
|
137
|
-
}
|
138
|
-
|
139
|
-
async meterActive() {
|
140
|
-
try {
|
141
|
-
await SdkPianoio.meterActive();
|
142
|
-
console.log('Template meterActive');
|
143
|
-
} catch (e) {
|
144
|
-
console.error('Errore nel meterActive:', e);
|
145
|
-
}
|
146
|
-
}
|
147
|
-
|
148
|
-
async meterExpired() {
|
149
|
-
try {
|
150
|
-
await SdkPianoio.meterExpired();
|
151
|
-
console.log('meterExpired triggered');
|
152
|
-
} catch (e) {
|
153
|
-
console.error('Errore nel meterExpired:', e);
|
154
|
-
}
|
155
|
-
}
|
77
|
+
// --- Static Helper Methods ---
|
156
78
|
|
157
79
|
static async isInitialized(): Promise<boolean> {
|
158
80
|
try {
|
@@ -164,15 +86,13 @@ class PianoComposer {
|
|
164
86
|
}
|
165
87
|
|
166
88
|
static async getComposerFromSdkIOS() {
|
167
|
-
|
168
|
-
|
169
|
-
return result;
|
89
|
+
return SdkPianoio.getComposer();
|
170
90
|
}
|
171
91
|
|
172
92
|
async toString() {
|
173
93
|
return `PianoComposer {
|
174
94
|
aid: ${this.aid},
|
175
|
-
tags: ${this.tags},
|
95
|
+
tags: ${this.tags.join(',')},
|
176
96
|
zoneId: ${this.zoneId},
|
177
97
|
referrer: ${this.referrer},
|
178
98
|
customVariables: ${JSON.stringify(this.customVariables)},
|