@saasquatch/squatch-js 2.4.2 → 2.4.3-1

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/CHANGELOG.md CHANGED
@@ -1,285 +1,267 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## [Unreleased]
9
-
10
- ## [2.4.2] - 2023-04-10
11
-
12
- ### Added
13
-
14
- - Added value to return data `squatchReferralCookie` to retrieve the encoded cookie
15
-
16
- - Example:
17
-
18
- ```js
19
- squatch
20
- .api()
21
- .squatchReferralCookie()
22
- .then(function (response) {
23
- const cookie = response.encodedCookie;
24
- });
25
- ```
26
-
27
- ## [2.4.1] - 2022-09-23
28
-
29
- ### Added
30
-
31
- - Added event idempotencyKey to types
32
-
33
- ## [2.4.0] - 2022-03-15
34
-
35
- ### Changed
36
-
37
- - EmbedWidget now supports a `container` as either a selector or an HTMLElement as a parameter
38
-
39
- - Widget contents will be loaded in a hidden widget and can be opened and closed with `widget.open()` and `widget.close()`
40
-
41
- - Example:
42
-
43
- ```js
44
- var initObj = {
45
- id: "testUser",
46
- accountId: "testUser",
47
- widgetType: "<MY_WIDGET>",
48
- user: {
49
- id: "testUser",
50
- accountId: "testUser",
51
- },
52
- jwt: "<MY_JWT>",
53
- engagementMedium: "EMBED",
54
- container: ".myContainer",
55
- };
56
-
57
- squatch
58
- .widgets()
59
- .upsertUser(initObj)
60
- .then(function (response) {
61
- widget = response.widget;
62
- widget.open();
63
- })
64
- .catch(function (error) {
65
- console.log(error);
66
- });
67
- ```
68
-
69
- - PopupWidget now supports a `trigger` as a selector
70
-
71
- - provides the ability to use a class other than `.squatchpop` for opening the widget
72
-
73
- - `sq:refresh` event is sent when `.open()` is called on EmbedWidget and PopupWidget
74
-
75
- ## [2.3.1] - 2022-01-11
76
-
77
- ### Changed
78
-
79
- - Reduced resize timeout to 500ms from 5000ms
80
-
81
- ## [2.3.0] - 2021-05-19
82
-
83
- ### Added
84
-
85
- - Typescript definitions
86
- - CommonJS/ES modules build for smaller bundle sizes when using squatch-js from NPM
87
-
88
- ### Changed
89
-
90
- - `main` is now a CommonJS build instead of a UMD build
91
-
92
- ## [2.2.1] - 2020-06-17
93
-
94
- ### Changed
95
-
96
- - Remove the need to have JS Options, so that older clients can upgrade to squatch.js v2 easily.
97
-
98
- ## [2.2.0] - 2020-06-12
99
-
100
- ### Added
101
-
102
- - Reads `_saasquatch` from the URL and stores a 1st-party cookie on the specified landing page's domain.
103
- - Sets `cookies` on users during an upsert **automatically**
104
-
105
- ```js
106
- {
107
- user: {
108
- id: "abc",
109
- accountId: "abc",
110
- cookies: "SAASQUATCHCOOKIE",
111
- ...
112
- }
113
- ```
114
-
115
- - Reads the 1st-party cookie when using `autofill`
116
-
117
- ```js
118
- squatch
119
- .api()
120
- .squatchReferralCookie()
121
- .then(function (response) {
122
- element.value = response.codes["program-id"];
123
- });
124
- ```
125
-
126
- ## [2.1.8] - 2020-05-25
127
-
128
- No release notes.
129
-
130
- ## [2.1.7] - 2020-05-21
131
-
132
- No release notes.
133
-
134
- ## [2.1.6] - 2019-04-15
135
-
136
- No release notes.
137
-
138
- ## [2.1.5] - 2019-02-19
139
-
140
- No release notes.
141
-
142
- ## [2.1.4] - 2019-01-03
143
-
144
- No release notes.
145
-
146
- ## [2.1.3] - 2018-12-05
147
-
148
- No release notes.
149
-
150
- ## [2.1.2] - 2018-10-22
151
-
152
- No release notes.
153
-
154
- ## [2.1.1] - 2018-10-19
155
-
156
- ### Fixed
157
-
158
- - POPUP Widget in iOS Safari is not clickable when is hidden anymore
159
-
160
- ## [2.1.0] - 2018-09-26
161
-
162
- No release notes.
163
-
164
- ## [2.0.17] - 2017-12-21
165
-
166
- ### Fixed
167
-
168
- - Fixed content-type detection bug
169
-
170
- ## [2.0.16] - 2017-10-24
171
-
172
- ### Fixed
173
-
174
- - Fix scrolling issue to allow scrolling within popup modal
175
-
176
- ## [2.0.15] - 2017-10-12
177
-
178
- ### Added
179
-
180
- - Support for scrolling popup in mobile
181
-
182
- ## [2.0.14] - 2017-10-11
183
-
184
- ### Fixed
185
-
186
- - Fix registration form message in popup
187
-
188
- ## [2.0.13] - 2017-08-03
189
-
190
- No release notes.
191
-
192
- ## [2.0.12] - 2017-07-18
193
-
194
- No release notes.
195
-
196
- ## [2.0.11] - 2017-07-18
197
-
198
- No release notes.
199
-
200
- ## [2.0.10] - 2017-06-30
201
-
202
- No release notes.
203
-
204
- ## [2.0.9] - 2017-06-08
205
-
206
- No release notes.
207
-
208
- ## [2.0.8] - 2017-06-08
209
-
210
- No release notes.
211
-
212
- ## [2.0.7] - 2017-04-24
213
-
214
- No release notes.
215
-
216
- ## [2.0.6] - 2017-02-14
217
-
218
- ### Fixed
219
-
220
- - Fix share tracking
221
- - Ignore CONVERSION_WIDGET widget rules when there's no referrals
222
-
223
- ### Changed
224
-
225
- - Auto-fill content type check changed to non-case sensitive
226
-
227
- ## [2.0.5] - 2016-12-07
228
-
229
- No release notes.
230
-
231
- ## [2.0.4] - 2016-12-06
232
-
233
- No release notes.
234
-
235
- ## [2.0.3] - 2016-11-30
236
-
237
- No release notes.
238
-
239
- ## [2.0.2] - 2016-11-29
240
-
241
- No release notes.
242
-
243
- ## [2.0.1] - 2016-11-25
244
-
245
- No release notes.
246
-
247
- ## [2.0.0] - 2016-11-25
248
-
249
- No release notes.
250
-
251
- [unreleased]: https://github.com/saasquatch/squatch-js/compare/@saasquatch%2Fsquatch-js@2.4.2...HEAD
252
- [2.4.2]: https://github.com/saasquatch/squatch-js/compare/@saasquatch%2Fsquatch-js@2.4.1...@saasquatch%2Fsquatch-js@2.4.2
253
- [2.4.1]: https://github.com/saasquatch/squatch-js/compare/@saasquatch%2Fsquatch-js@2.4.0...@saasquatch%2Fsquatch-js@2.4.1
254
- [2.4.0]: https://github.com/saasquatch/squatch-js/compare/v2.3.1...@saasquatch%2Fsquatch-js@2.4.0
255
- [2.3.1]: https://github.com/saasquatch/squatch-js/compare/v2.3.0...v2.3.1
256
- [2.3.0]: https://github.com/saasquatch/squatch-js/compare/v2.2.1...v2.3.0
257
- [2.2.1]: https://github.com/saasquatch/squatch-js/compare/v2.2.0...v2.2.1
258
- [2.2.0]: https://github.com/saasquatch/squatch-js/compare/v2.1.8...v2.2.0
259
- [2.1.8]: https://github.com/saasquatch/squatch-js/compare/v2.1.7...v2.1.8
260
- [2.1.7]: https://github.com/saasquatch/squatch-js/compare/v2.1.6...v2.1.7
261
- [2.1.6]: https://github.com/saasquatch/squatch-js/compare/v2.1.5...v2.1.6
262
- [2.1.5]: https://github.com/saasquatch/squatch-js/compare/v2.1.4...v2.1.5
263
- [2.1.4]: https://github.com/saasquatch/squatch-js/compare/v2.1.3...v2.1.4
264
- [2.1.3]: https://github.com/saasquatch/squatch-js/compare/v2.1.2...v2.1.3
265
- [2.1.2]: https://github.com/saasquatch/squatch-js/compare/v2.1.1...v2.1.2
266
- [2.1.1]: https://github.com/saasquatch/squatch-js/compare/v2.1.0...v2.1.1
267
- [2.1.0]: https://github.com/saasquatch/squatch-js/compare/v2.0.17...v2.1.0
268
- [2.0.17]: https://github.com/saasquatch/squatch-js/compare/v2.0.16...v2.0.17
269
- [2.0.16]: https://github.com/saasquatch/squatch-js/compare/v2.0.15...v2.0.16
270
- [2.0.15]: https://github.com/saasquatch/squatch-js/compare/v2.0.14...v2.0.15
271
- [2.0.14]: https://github.com/saasquatch/squatch-js/compare/v2.0.13...v2.0.14
272
- [2.0.13]: https://github.com/saasquatch/squatch-js/compare/v2.0.12...v2.0.13
273
- [2.0.12]: https://github.com/saasquatch/squatch-js/compare/v2.0.11...v2.0.12
274
- [2.0.11]: https://github.com/saasquatch/squatch-js/compare/v2.0.10...v2.0.11
275
- [2.0.10]: https://github.com/saasquatch/squatch-js/compare/v2.0.9...v2.0.10
276
- [2.0.9]: https://github.com/saasquatch/squatch-js/compare/v2.0.8...v2.0.9
277
- [2.0.8]: https://github.com/saasquatch/squatch-js/compare/v2.0.7...v2.0.8
278
- [2.0.7]: https://github.com/saasquatch/squatch-js/compare/v2.0.6...v2.0.7
279
- [2.0.6]: https://github.com/saasquatch/squatch-js/compare/v2.0.5...v2.0.6
280
- [2.0.5]: https://github.com/saasquatch/squatch-js/compare/v2.0.4...v2.0.5
281
- [2.0.4]: https://github.com/saasquatch/squatch-js/compare/v2.0.3...v2.0.4
282
- [2.0.3]: https://github.com/saasquatch/squatch-js/compare/v2.0.2...v2.0.3
283
- [2.0.2]: https://github.com/saasquatch/squatch-js/compare/v2.0.1...v2.0.2
284
- [2.0.1]: https://github.com/saasquatch/squatch-js/compare/v2.0.0...v2.0.1
285
- [2.0.0]: https://github.com/saasquatch/squatch-js/releases/tag/v2.0.0
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [2.4.1] - 2022-09-23
11
+
12
+ ### Added
13
+
14
+ - Added event idempotencyKey to types
15
+
16
+ ## [2.4.0] - 2022-03-15
17
+
18
+ ### Changed
19
+
20
+ - EmbedWidget now supports a `container` as either a selector or an HTMLElement as a parameter
21
+
22
+ - Widget contents will be loaded in a hidden widget and can be opened and closed with `widget.open()` and `widget.close()`
23
+
24
+ - Example:
25
+
26
+ ```js
27
+ var initObj = {
28
+ id: "testUser",
29
+ accountId: "testUser",
30
+ widgetType: "<MY_WIDGET>",
31
+ user: {
32
+ id: "testUser",
33
+ accountId: "testUser",
34
+ },
35
+ jwt: "<MY_JWT>",
36
+ engagementMedium: "EMBED",
37
+ container: ".myContainer",
38
+ };
39
+
40
+ squatch
41
+ .widgets()
42
+ .upsertUser(initObj)
43
+ .then(function (response) {
44
+ widget = response.widget;
45
+ widget.open();
46
+ })
47
+ .catch(function (error) {
48
+ console.log(error);
49
+ });
50
+ ```
51
+
52
+ - PopupWidget now supports a `trigger` as a selector
53
+
54
+ - provides the ability to use a class other than `.squatchpop` for opening the widget
55
+
56
+ - `sq:refresh` event is sent when `.open()` is called on EmbedWidget and PopupWidget
57
+
58
+ ## [2.3.1] - 2022-01-11
59
+
60
+ ### Changed
61
+
62
+ - Reduced resize timeout to 500ms from 5000ms
63
+
64
+ ## [2.3.0] - 2021-05-19
65
+
66
+ ### Added
67
+
68
+ - Typescript definitions
69
+ - CommonJS/ES modules build for smaller bundle sizes when using squatch-js from NPM
70
+
71
+ ### Changed
72
+
73
+ - `main` is now a CommonJS build instead of a UMD build
74
+
75
+ ## [2.2.1] - 2020-06-17
76
+
77
+ ### Changed
78
+
79
+ - Remove the need to have JS Options, so that older clients can upgrade to squatch.js v2 easily.
80
+
81
+ ## [2.2.0] - 2020-06-12
82
+
83
+ ### Added
84
+
85
+ - Reads `_saasquatch` from the URL and stores a 1st-party cookie on the specified landing page's domain.
86
+ - Sets `cookies` on users during an upsert **automatically**
87
+
88
+ ```js
89
+ {
90
+ user: {
91
+ id: "abc",
92
+ accountId: "abc",
93
+ cookies: "SAASQUATCHCOOKIE",
94
+ ...
95
+ }
96
+ ```
97
+
98
+ - Reads the 1st-party cookie when using `autofill`
99
+
100
+ ```js
101
+ squatch
102
+ .api()
103
+ .squatchReferralCookie()
104
+ .then(function (response) {
105
+ element.value = response.codes["program-id"];
106
+ });
107
+ ```
108
+
109
+ ## [2.1.8] - 2020-05-25
110
+
111
+ No release notes.
112
+
113
+ ## [2.1.7] - 2020-05-21
114
+
115
+ No release notes.
116
+
117
+ ## [2.1.6] - 2019-04-15
118
+
119
+ No release notes.
120
+
121
+ ## [2.1.5] - 2019-02-19
122
+
123
+ No release notes.
124
+
125
+ ## [2.1.4] - 2019-01-03
126
+
127
+ No release notes.
128
+
129
+ ## [2.1.3] - 2018-12-05
130
+
131
+ No release notes.
132
+
133
+ ## [2.1.2] - 2018-10-22
134
+
135
+ No release notes.
136
+
137
+ ## [2.1.1] - 2018-10-19
138
+
139
+ ### Fixed
140
+
141
+ - POPUP Widget in iOS Safari is not clickable when is hidden anymore
142
+
143
+ ## [2.1.0] - 2018-09-26
144
+
145
+ No release notes.
146
+
147
+ ## [2.0.17] - 2017-12-21
148
+
149
+ ### Fixed
150
+
151
+ - Fixed content-type detection bug
152
+
153
+ ## [2.0.16] - 2017-10-24
154
+
155
+ ### Fixed
156
+
157
+ - Fix scrolling issue to allow scrolling within popup modal
158
+
159
+ ## [2.0.15] - 2017-10-12
160
+
161
+ ### Added
162
+
163
+ - Support for scrolling popup in mobile
164
+
165
+ ## [2.0.14] - 2017-10-11
166
+
167
+ ### Fixed
168
+
169
+ - Fix registration form message in popup
170
+
171
+ ## [2.0.13] - 2017-08-03
172
+
173
+ No release notes.
174
+
175
+ ## [2.0.12] - 2017-07-18
176
+
177
+ No release notes.
178
+
179
+ ## [2.0.11] - 2017-07-18
180
+
181
+ No release notes.
182
+
183
+ ## [2.0.10] - 2017-06-30
184
+
185
+ No release notes.
186
+
187
+ ## [2.0.9] - 2017-06-08
188
+
189
+ No release notes.
190
+
191
+ ## [2.0.8] - 2017-06-08
192
+
193
+ No release notes.
194
+
195
+ ## [2.0.7] - 2017-04-24
196
+
197
+ No release notes.
198
+
199
+ ## [2.0.6] - 2017-02-14
200
+
201
+ ### Fixed
202
+
203
+ - Fix share tracking
204
+ - Ignore CONVERSION_WIDGET widget rules when there's no referrals
205
+
206
+ ### Changed
207
+
208
+ - Auto-fill content type check changed to non-case sensitive
209
+
210
+ ## [2.0.5] - 2016-12-07
211
+
212
+ No release notes.
213
+
214
+ ## [2.0.4] - 2016-12-06
215
+
216
+ No release notes.
217
+
218
+ ## [2.0.3] - 2016-11-30
219
+
220
+ No release notes.
221
+
222
+ ## [2.0.2] - 2016-11-29
223
+
224
+ No release notes.
225
+
226
+ ## [2.0.1] - 2016-11-25
227
+
228
+ No release notes.
229
+
230
+ ## [2.0.0] - 2016-11-25
231
+
232
+ No release notes.
233
+
234
+ [unreleased]: https://github.com/saasquatch/squatch-js/compare/@saasquatch%2Fsquatch-js@2.4.1...HEAD
235
+ [2.4.1]: https://github.com/saasquatch/squatch-js/compare/@saasquatch%2Fsquatch-js@2.4.0...@saasquatch%2Fsquatch-js@2.4.1
236
+ [2.4.0]: https://github.com/saasquatch/squatch-js/compare/v2.3.1...@saasquatch%2Fsquatch-js@2.4.0
237
+ [2.3.1]: https://github.com/saasquatch/squatch-js/compare/v2.3.0...v2.3.1
238
+ [2.3.0]: https://github.com/saasquatch/squatch-js/compare/v2.2.1...v2.3.0
239
+ [2.2.1]: https://github.com/saasquatch/squatch-js/compare/v2.2.0...v2.2.1
240
+ [2.2.0]: https://github.com/saasquatch/squatch-js/compare/v2.1.8...v2.2.0
241
+ [2.1.8]: https://github.com/saasquatch/squatch-js/compare/v2.1.7...v2.1.8
242
+ [2.1.7]: https://github.com/saasquatch/squatch-js/compare/v2.1.6...v2.1.7
243
+ [2.1.6]: https://github.com/saasquatch/squatch-js/compare/v2.1.5...v2.1.6
244
+ [2.1.5]: https://github.com/saasquatch/squatch-js/compare/v2.1.4...v2.1.5
245
+ [2.1.4]: https://github.com/saasquatch/squatch-js/compare/v2.1.3...v2.1.4
246
+ [2.1.3]: https://github.com/saasquatch/squatch-js/compare/v2.1.2...v2.1.3
247
+ [2.1.2]: https://github.com/saasquatch/squatch-js/compare/v2.1.1...v2.1.2
248
+ [2.1.1]: https://github.com/saasquatch/squatch-js/compare/v2.1.0...v2.1.1
249
+ [2.1.0]: https://github.com/saasquatch/squatch-js/compare/v2.0.17...v2.1.0
250
+ [2.0.17]: https://github.com/saasquatch/squatch-js/compare/v2.0.16...v2.0.17
251
+ [2.0.16]: https://github.com/saasquatch/squatch-js/compare/v2.0.15...v2.0.16
252
+ [2.0.15]: https://github.com/saasquatch/squatch-js/compare/v2.0.14...v2.0.15
253
+ [2.0.14]: https://github.com/saasquatch/squatch-js/compare/v2.0.13...v2.0.14
254
+ [2.0.13]: https://github.com/saasquatch/squatch-js/compare/v2.0.12...v2.0.13
255
+ [2.0.12]: https://github.com/saasquatch/squatch-js/compare/v2.0.11...v2.0.12
256
+ [2.0.11]: https://github.com/saasquatch/squatch-js/compare/v2.0.10...v2.0.11
257
+ [2.0.10]: https://github.com/saasquatch/squatch-js/compare/v2.0.9...v2.0.10
258
+ [2.0.9]: https://github.com/saasquatch/squatch-js/compare/v2.0.8...v2.0.9
259
+ [2.0.8]: https://github.com/saasquatch/squatch-js/compare/v2.0.7...v2.0.8
260
+ [2.0.7]: https://github.com/saasquatch/squatch-js/compare/v2.0.6...v2.0.7
261
+ [2.0.6]: https://github.com/saasquatch/squatch-js/compare/v2.0.5...v2.0.6
262
+ [2.0.5]: https://github.com/saasquatch/squatch-js/compare/v2.0.4...v2.0.5
263
+ [2.0.4]: https://github.com/saasquatch/squatch-js/compare/v2.0.3...v2.0.4
264
+ [2.0.3]: https://github.com/saasquatch/squatch-js/compare/v2.0.2...v2.0.3
265
+ [2.0.2]: https://github.com/saasquatch/squatch-js/compare/v2.0.1...v2.0.2
266
+ [2.0.1]: https://github.com/saasquatch/squatch-js/compare/v2.0.0...v2.0.1
267
+ [2.0.0]: https://github.com/saasquatch/squatch-js/releases/tag/v2.0.0
package/README.md CHANGED
@@ -45,7 +45,6 @@ Note: `engagementMedium` is required in the `squatch.widgets()` functions if you
45
45
  widgetType: 'p/PROGRAM-ID/w/referrerWidget', // Update PROGRAM-ID
46
46
  jwt: 'TOKEN' // String (required by default, or disable Security in the portal)
47
47
 
48
- });
49
48
  });
50
49
  </script>
51
50
  ```
package/demo/sandbox.ts CHANGED
@@ -36,8 +36,7 @@ export const popup: Sandbox = {
36
36
  widgetType: "REFERRER_WIDGET",
37
37
  engagementMedium: "POPUP",
38
38
  user: user,
39
- jwt:
40
- "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiNWI5ODBkMzRlNGIwY2FiZWUwN2YyY2IwIiwiYWNjb3VudElkIjoiQVpKWlNWRzBMUzFMQjE5UiIsImVtYWlsIjoiY2hlc3RlcnNjb3R0LnVleHdsdGdoQG1haWxvc2F1ci5pbyJ9fQ.MkrO7-980M7NRJcOUcdqCO1JftqmynLMK8bTEB3WObo",
39
+ jwt: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiNWI5ODBkMzRlNGIwY2FiZWUwN2YyY2IwIiwiYWNjb3VudElkIjoiQVpKWlNWRzBMUzFMQjE5UiIsImVtYWlsIjoiY2hlc3RlcnNjb3R0LnVleHdsdGdoQG1haWxvc2F1ci5pbyJ9fQ.MkrO7-980M7NRJcOUcdqCO1JftqmynLMK8bTEB3WObo",
41
40
  },
42
41
  };
43
42
 
@@ -53,8 +52,7 @@ export const embed: Sandbox = {
53
52
  accountId: "AZJZSVG0LS1LB19R",
54
53
  email: "chesterscott.uexwltgh@mailosaur.io",
55
54
  },
56
- jwt:
57
- "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiNWI5ODBkMzRlNGIwY2FiZWUwN2YyY2IwIiwiYWNjb3VudElkIjoiQVpKWlNWRzBMUzFMQjE5UiIsImVtYWlsIjoiY2hlc3RlcnNjb3R0LnVleHdsdGdoQG1haWxvc2F1ci5pbyJ9fQ.MkrO7-980M7NRJcOUcdqCO1JftqmynLMK8bTEB3WObo",
55
+ jwt: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiNWI5ODBkMzRlNGIwY2FiZWUwN2YyY2IwIiwiYWNjb3VudElkIjoiQVpKWlNWRzBMUzFMQjE5UiIsImVtYWlsIjoiY2hlc3RlcnNjb3R0LnVleHdsdGdoQG1haWxvc2F1ci5pbyJ9fQ.MkrO7-980M7NRJcOUcdqCO1JftqmynLMK8bTEB3WObo",
58
56
  },
59
57
  };
60
58
 
@@ -112,11 +110,15 @@ export function toURL(sandbox: Sandbox) {
112
110
  }
113
111
 
114
112
  export function href(sandbox: Sandbox) {
113
+ const urlParams = new URLSearchParams(window.location.search);
115
114
  const param = window.btoa(JSON.stringify(sandbox));
116
115
  var url = window.location.href;
117
116
  if (url.indexOf("?") > 0) {
118
117
  url = url.substring(0, url.indexOf("?"));
119
118
  }
120
- url += `?sandbox=${encodeURIComponent(param)}`;
119
+
120
+ urlParams.delete("sandbox");
121
+
122
+ url += `?sandbox=${encodeURIComponent(param)}&${urlParams.toString()}`;
121
123
  return url;
122
124
  }
package/demo/toolbar.tsx CHANGED
@@ -245,7 +245,7 @@ function ModeList(props) {
245
245
  function UserList(props) {
246
246
  return (
247
247
  <details
248
- title={"User: " + window["sandbox"].initObj.user.firstName}
248
+ title={"User: " + window["sandbox"].initObj.user?.firstName}
249
249
  key={0}
250
250
  id={`dropdown-basic-1`}
251
251
  >
@@ -1,4 +1,4 @@
1
- import { ConfigOptions, CookieUser, WidgetConfig, ReferralCookie } from "../types";
1
+ import { ConfigOptions, CookieUser, WidgetConfig, WithRequired } from "../types";
2
2
  /**
3
3
  *
4
4
  * The WidgetApi class is a wrapper around the Widget Endpoints of the SaaSquatch REST API.
@@ -52,7 +52,7 @@ export default class WidgetApi {
52
52
  *
53
53
  * @return {Promise} string if true, with the widget template, jsOptions and user details.
54
54
  */
55
- upsertUser(params: WidgetConfig): Promise<any>;
55
+ upsertUser(params: WithRequired<WidgetConfig, "user">): Promise<any>;
56
56
  /**
57
57
  * Description here.
58
58
  *
@@ -87,7 +87,7 @@ export default class WidgetApi {
87
87
  /**
88
88
  * Looks up the referral code of the current user, if there is any.
89
89
  *
90
- * @return {Promise<ReferralCookie>} code referral code if true.
90
+ * @return {Promise<Object>} code referral code if true.
91
91
  */
92
- squatchReferralCookie(): Promise<ReferralCookie>;
92
+ squatchReferralCookie(): Promise<object>;
93
93
  }
package/dist/squatch.d.ts CHANGED
@@ -4,7 +4,7 @@ import PopupWidget from "./widgets/PopupWidget";
4
4
  import CtaWidget from "./widgets/CtaWidget";
5
5
  import WidgetApi from "./api/WidgetApi";
6
6
  import EventsApi from "./api/EventsApi";
7
- import { ConfigOptions } from "./types";
7
+ import { ConfigOptions, WidgetConfig, WidgetResult } from "./types";
8
8
  export * from "./types";
9
9
  export * from "./docs";
10
10
  export { Widgets, EmbedWidget, PopupWidget, CtaWidget, WidgetApi };
@@ -32,6 +32,16 @@ export declare function widgets(): Widgets | null;
32
32
  * @returns EventsApi static instance
33
33
  */
34
34
  export declare function events(): EventsApi | null;
35
+ /**
36
+ * Entry-point for high level API to render a widget using the instance of {@link Widgets} created when you call {@link #init init}.
37
+ */
38
+ export declare function widget(widgetConfig: WidgetConfig): Promise<WidgetResult | undefined> | undefined;
39
+ /**
40
+ * Initial concept for automatic widget rendering
41
+ *
42
+ * - `saasquatchExtra` utm param carries widgetIdent
43
+ */
44
+ export declare function auto(configIn: ConfigOptions): Promise<WidgetResult | undefined> | undefined;
35
45
  /**
36
46
  * Initializes the static `squatch` global. This sets up:
37
47
  *