@saasquatch/squatch-js 2.6.0-4 → 2.6.0-6
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/coverage/clover.xml +849 -64
- package/coverage/coverage-final.json +19 -1
- package/coverage/lcov-report/DeclarativeWidget.ts.html +298 -118
- package/coverage/lcov-report/Widgets.ts.html +70 -22
- package/coverage/lcov-report/api/AnalyticsApi.ts.html +38 -38
- package/coverage/lcov-report/api/EventsApi.ts.html +352 -0
- package/coverage/lcov-report/api/WidgetApi.ts.html +57 -30
- package/coverage/lcov-report/api/graphql.ts.html +1 -1
- package/coverage/lcov-report/squatch.ts.html +721 -0
- package/coverage/lcov-report/utils/cookieUtils.ts.html +10 -10
- package/coverage/lcov-report/utils/decodeUserJwt.ts.html +19 -19
- package/coverage/lcov-report/utils/domready.ts.html +1 -1
- package/coverage/lcov-report/utils/io.ts.html +7 -7
- package/coverage/lcov-report/utils/utmUtils.ts.html +1 -1
- package/coverage/lcov-report/utils/validate.ts.html +37 -37
- package/coverage/lcov-report/validate.ts.html +1 -1
- package/coverage/lcov-report/widgets/EmbedWidget.ts.html +67 -19
- package/coverage/lcov-report/widgets/PopupWidget.ts.html +23 -8
- package/coverage/lcov-report/widgets/Widget.ts.html +7 -16
- package/coverage/lcov-report/widgets/Widgets.ts.html +61 -16
- package/coverage/lcov-report/widgets/declarative/DeclarativeWidget.ts.html +373 -82
- package/coverage/lcov-report/widgets/declarative/DeclarativeWidgets.ts.html +388 -0
- package/coverage/lcov.info +1559 -125
- package/dist/api/WidgetApi.d.ts +2 -2
- package/dist/squatch.d.ts +28 -1
- package/dist/squatch.esm.js +274 -121
- package/dist/squatch.esm.js.map +1 -1
- package/dist/squatch.js +274 -121
- package/dist/squatch.js.map +1 -1
- package/dist/squatch.min.js +1 -1
- package/dist/types.d.ts +8 -6
- package/dist/widgets/EmbedWidget.d.ts +6 -0
- package/dist/widgets/PopupWidget.d.ts +6 -1
- package/dist/widgets/Widgets.d.ts +15 -2
- package/dist/widgets/declarative/DeclarativeWidget.d.ts +57 -1
- package/dist/widgets/declarative/DeclarativeWidgets.d.ts +22 -0
- package/package.json +1 -1
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">16% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>8/50</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -37,16 +37,16 @@
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">11.11% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>1/9</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">16% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>8/50</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
<span class="cline-any cline-neutral"> </span>
|
|
206
206
|
<span class="cline-any cline-neutral"> </span>
|
|
207
207
|
<span class="cline-any cline-yes">1x</span>
|
|
208
|
-
<span class="cline-any cline-
|
|
208
|
+
<span class="cline-any cline-yes">1x</span>
|
|
209
209
|
<span class="cline-any cline-neutral"> </span>
|
|
210
210
|
<span class="cline-any cline-neutral"> </span>
|
|
211
211
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -314,8 +314,8 @@ const deepMerge = <span class="fstat-no" title="function not covered" ><A = O
|
|
|
314
314
|
} as A & B;
|
|
315
315
|
};
|
|
316
316
|
|
|
317
|
-
export function
|
|
318
|
-
|
|
317
|
+
export function b64decode(input) {
|
|
318
|
+
return atob(input.replace(/_/g, "/").replace(/-/g, "+"));
|
|
319
319
|
}
|
|
320
320
|
|
|
321
321
|
function <span class="fstat-no" title="function not covered" >b64encode(</span>input) {
|
|
@@ -400,7 +400,7 @@ export function <span class="fstat-no" title="function not covered" >_pushCookie
|
|
|
400
400
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
401
401
|
Code coverage generated by
|
|
402
402
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
403
|
-
at 2023-07-
|
|
403
|
+
at 2023-07-24T22:01:41.987Z
|
|
404
404
|
</div>
|
|
405
405
|
<script src="../prettify.js"></script>
|
|
406
406
|
<script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">75% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>9/12</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -37,16 +37,16 @@
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>1/1</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">81.81% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>9/11</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
64
|
-
<div class='status-line
|
|
64
|
+
<div class='status-line medium'></div>
|
|
65
65
|
<pre><table class="coverage">
|
|
66
66
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -85,11 +85,11 @@
|
|
|
85
85
|
<span class="cline-any cline-yes">1x</span>
|
|
86
86
|
<span class="cline-any cline-neutral"> </span>
|
|
87
87
|
<span class="cline-any cline-yes">1x</span>
|
|
88
|
-
<span class="cline-any cline-
|
|
89
|
-
<span class="cline-any cline-
|
|
90
|
-
<span class="cline-any cline-
|
|
91
|
-
<span class="cline-any cline-
|
|
92
|
-
<span class="cline-any cline-
|
|
88
|
+
<span class="cline-any cline-yes">1x</span>
|
|
89
|
+
<span class="cline-any cline-yes">1x</span>
|
|
90
|
+
<span class="cline-any cline-yes">1x</span>
|
|
91
|
+
<span class="cline-any cline-yes">1x</span>
|
|
92
|
+
<span class="cline-any cline-yes">1x</span>
|
|
93
93
|
<span class="cline-any cline-neutral"> </span>
|
|
94
94
|
<span class="cline-any cline-no"> </span>
|
|
95
95
|
<span class="cline-any cline-no"> </span>
|
|
@@ -100,12 +100,12 @@ import { User } from "../types";
|
|
|
100
100
|
import { b64decode } from "./cookieUtils";
|
|
101
101
|
const _log = debug("squatch-js:decodeJwt");
|
|
102
102
|
|
|
103
|
-
export function
|
|
104
|
-
|
|
105
|
-
const base64Url =
|
|
106
|
-
|
|
107
|
-
const jsonStr =
|
|
108
|
-
|
|
103
|
+
export function decodeUserJwt(tokenStr: string): User | null {
|
|
104
|
+
try {
|
|
105
|
+
const base64Url = tokenStr.split(".")[1];
|
|
106
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (base64Url === undefined) <span class="cstat-no" title="statement not covered" >return null;</span>
|
|
107
|
+
const jsonStr = b64decode(base64Url);
|
|
108
|
+
return JSON.parse(jsonStr)?.user;
|
|
109
109
|
} catch (e) {
|
|
110
110
|
<span class="cstat-no" title="statement not covered" > _log(e);</span>
|
|
111
111
|
<span class="cstat-no" title="statement not covered" > return null;</span>
|
|
@@ -118,7 +118,7 @@ export function <span class="fstat-no" title="function not covered" >decodeUserJ
|
|
|
118
118
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
119
119
|
Code coverage generated by
|
|
120
120
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
121
|
-
at 2023-07-
|
|
121
|
+
at 2023-07-24T22:01:41.987Z
|
|
122
122
|
</div>
|
|
123
123
|
<script src="../prettify.js"></script>
|
|
124
124
|
<script>
|
|
@@ -145,7 +145,7 @@ export function <span class="fstat-no" title="function not covered" >domready(</
|
|
|
145
145
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
146
146
|
Code coverage generated by
|
|
147
147
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
148
|
-
at 2023-07-
|
|
148
|
+
at 2023-07-24T22:01:41.987Z
|
|
149
149
|
</div>
|
|
150
150
|
<script src="../prettify.js"></script>
|
|
151
151
|
<script>
|
|
@@ -168,12 +168,12 @@
|
|
|
168
168
|
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
169
|
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
170
|
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
171
|
+
<a name='L106'></a><a href='#L106'>106</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
|
|
172
172
|
<span class="cline-any cline-neutral"> </span>
|
|
173
173
|
<span class="cline-any cline-neutral"> </span>
|
|
174
|
-
<span class="cline-any cline-yes">
|
|
174
|
+
<span class="cline-any cline-yes">2x</span>
|
|
175
175
|
<span class="cline-any cline-neutral"> </span>
|
|
176
|
-
<span class="cline-any cline-yes">
|
|
176
|
+
<span class="cline-any cline-yes">2x</span>
|
|
177
177
|
<span class="cline-any cline-neutral"> </span>
|
|
178
178
|
<span class="cline-any cline-neutral"> </span>
|
|
179
179
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -200,7 +200,7 @@
|
|
|
200
200
|
<span class="cline-any cline-neutral"> </span>
|
|
201
201
|
<span class="cline-any cline-neutral"> </span>
|
|
202
202
|
<span class="cline-any cline-neutral"> </span>
|
|
203
|
-
<span class="cline-any cline-yes">
|
|
203
|
+
<span class="cline-any cline-yes">2x</span>
|
|
204
204
|
<span class="cline-any cline-no"> </span>
|
|
205
205
|
<span class="cline-any cline-neutral"> </span>
|
|
206
206
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -223,7 +223,7 @@
|
|
|
223
223
|
<span class="cline-any cline-no"> </span>
|
|
224
224
|
<span class="cline-any cline-neutral"> </span>
|
|
225
225
|
<span class="cline-any cline-neutral"> </span>
|
|
226
|
-
<span class="cline-any cline-yes">
|
|
226
|
+
<span class="cline-any cline-yes">2x</span>
|
|
227
227
|
<span class="cline-any cline-no"> </span>
|
|
228
228
|
<span class="cline-any cline-neutral"> </span>
|
|
229
229
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -248,7 +248,7 @@
|
|
|
248
248
|
<span class="cline-any cline-neutral"> </span>
|
|
249
249
|
<span class="cline-any cline-neutral"> </span>
|
|
250
250
|
<span class="cline-any cline-neutral"> </span>
|
|
251
|
-
<span class="cline-any cline-yes">
|
|
251
|
+
<span class="cline-any cline-yes">2x</span>
|
|
252
252
|
<span class="cline-any cline-no"> </span>
|
|
253
253
|
<span class="cline-any cline-neutral"> </span>
|
|
254
254
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -385,7 +385,7 @@ export async function <span class="fstat-no" title="function not covered" >doPut
|
|
|
385
385
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
386
386
|
Code coverage generated by
|
|
387
387
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
388
|
-
at 2023-07-
|
|
388
|
+
at 2023-07-24T22:01:41.987Z
|
|
389
389
|
</div>
|
|
390
390
|
<script src="../prettify.js"></script>
|
|
391
391
|
<script>
|
|
@@ -262,7 +262,7 @@ export function <span class="fstat-no" title="function not covered" >convertExtr
|
|
|
262
262
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
263
263
|
Code coverage generated by
|
|
264
264
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
265
|
-
at 2023-07-
|
|
265
|
+
at 2023-07-24T22:01:41.987Z
|
|
266
266
|
</div>
|
|
267
267
|
<script src="../prettify.js"></script>
|
|
268
268
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">57.14% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>16/28</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">53.57% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>15/28</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">40% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>2/5</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">66.66% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>16/24</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -126,34 +126,34 @@
|
|
|
126
126
|
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
127
|
<a name='L62'></a><a href='#L62'>62</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
128
128
|
<span class="cline-any cline-neutral"> </span>
|
|
129
|
-
<span class="cline-any cline-yes">
|
|
130
|
-
<span class="cline-any cline-yes">
|
|
129
|
+
<span class="cline-any cline-yes">2x</span>
|
|
130
|
+
<span class="cline-any cline-yes">2x</span>
|
|
131
131
|
<span class="cline-any cline-neutral"> </span>
|
|
132
132
|
<span class="cline-any cline-neutral"> </span>
|
|
133
133
|
<span class="cline-any cline-neutral"> </span>
|
|
134
134
|
<span class="cline-any cline-neutral"> </span>
|
|
135
135
|
<span class="cline-any cline-neutral"> </span>
|
|
136
|
-
<span class="cline-any cline-yes">
|
|
136
|
+
<span class="cline-any cline-yes">2x</span>
|
|
137
137
|
<span class="cline-any cline-neutral"> </span>
|
|
138
138
|
<span class="cline-any cline-neutral"> </span>
|
|
139
|
-
<span class="cline-any cline-yes">
|
|
139
|
+
<span class="cline-any cline-yes">5x</span>
|
|
140
140
|
<span class="cline-any cline-neutral"> </span>
|
|
141
|
-
<span class="cline-any cline-yes">
|
|
141
|
+
<span class="cline-any cline-yes">5x</span>
|
|
142
142
|
<span class="cline-any cline-neutral"> </span>
|
|
143
143
|
<span class="cline-any cline-neutral"> </span>
|
|
144
144
|
<span class="cline-any cline-neutral"> </span>
|
|
145
145
|
<span class="cline-any cline-neutral"> </span>
|
|
146
146
|
<span class="cline-any cline-neutral"> </span>
|
|
147
147
|
<span class="cline-any cline-neutral"> </span>
|
|
148
|
-
<span class="cline-any cline-yes">
|
|
148
|
+
<span class="cline-any cline-yes">5x</span>
|
|
149
149
|
<span class="cline-any cline-no"> </span>
|
|
150
|
-
<span class="cline-any cline-yes">
|
|
150
|
+
<span class="cline-any cline-yes">5x</span>
|
|
151
151
|
<span class="cline-any cline-neutral"> </span>
|
|
152
|
-
<span class="cline-any cline-yes">
|
|
153
|
-
<span class="cline-any cline-yes">
|
|
152
|
+
<span class="cline-any cline-yes">5x</span>
|
|
153
|
+
<span class="cline-any cline-yes">5x</span>
|
|
154
154
|
<span class="cline-any cline-neutral"> </span>
|
|
155
|
-
<span class="cline-any cline-yes">
|
|
156
|
-
<span class="cline-any cline-yes">
|
|
155
|
+
<span class="cline-any cline-yes">5x</span>
|
|
156
|
+
<span class="cline-any cline-yes">5x</span>
|
|
157
157
|
<span class="cline-any cline-neutral"> </span>
|
|
158
158
|
<span class="cline-any cline-neutral"> </span>
|
|
159
159
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -161,29 +161,29 @@
|
|
|
161
161
|
<span class="cline-any cline-neutral"> </span>
|
|
162
162
|
<span class="cline-any cline-neutral"> </span>
|
|
163
163
|
<span class="cline-any cline-neutral"> </span>
|
|
164
|
-
<span class="cline-any cline-yes">
|
|
164
|
+
<span class="cline-any cline-yes">2x</span>
|
|
165
165
|
<span class="cline-any cline-yes">5x</span>
|
|
166
166
|
<span class="cline-any cline-neutral"> </span>
|
|
167
167
|
<span class="cline-any cline-neutral"> </span>
|
|
168
|
-
<span class="cline-any cline-yes">
|
|
168
|
+
<span class="cline-any cline-yes">2x</span>
|
|
169
169
|
<span class="cline-any cline-no"> </span>
|
|
170
170
|
<span class="cline-any cline-no"> </span>
|
|
171
171
|
<span class="cline-any cline-neutral"> </span>
|
|
172
172
|
<span class="cline-any cline-neutral"> </span>
|
|
173
173
|
<span class="cline-any cline-neutral"> </span>
|
|
174
|
-
<span class="cline-any cline-yes">3x</span>
|
|
175
|
-
<span class="cline-any cline-yes">2x</span>
|
|
176
174
|
<span class="cline-any cline-yes">2x</span>
|
|
175
|
+
<span class="cline-any cline-no"> </span>
|
|
176
|
+
<span class="cline-any cline-no"> </span>
|
|
177
177
|
<span class="cline-any cline-neutral"> </span>
|
|
178
|
-
<span class="cline-any cline-
|
|
178
|
+
<span class="cline-any cline-no"> </span>
|
|
179
179
|
<span class="cline-any cline-neutral"> </span>
|
|
180
180
|
<span class="cline-any cline-neutral"> </span>
|
|
181
|
-
<span class="cline-any cline-yes">
|
|
181
|
+
<span class="cline-any cline-yes">2x</span>
|
|
182
182
|
<span class="cline-any cline-neutral"> </span>
|
|
183
183
|
<span class="cline-any cline-neutral"> </span>
|
|
184
|
-
<span class="cline-any cline-
|
|
184
|
+
<span class="cline-any cline-no"> </span>
|
|
185
185
|
<span class="cline-any cline-neutral"> </span>
|
|
186
|
-
<span class="cline-any cline-
|
|
186
|
+
<span class="cline-any cline-no"> </span>
|
|
187
187
|
<span class="cline-any cline-neutral"> </span>
|
|
188
188
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { ConfigOptions, WidgetConfig } from "../types";
|
|
189
189
|
|
|
@@ -202,7 +202,7 @@ export function validateConfig(
|
|
|
202
202
|
const raw = {
|
|
203
203
|
tenantAlias: _raw?.["tenantAlias"] || <span class="branch-1 cbranch-no" title="branch not covered" >window.squatchTenant,</span>
|
|
204
204
|
domain: _raw?.["domain"] || <span class="branch-1 cbranch-no" title="branch not covered" >window.squatchConfig?.domain,</span>
|
|
205
|
-
npmCdn: _raw?.["npmCdn"] ||
|
|
205
|
+
npmCdn: _raw?.["npmCdn"] || window.squatchConfig?.npmCdn,
|
|
206
206
|
debug: _raw?.["debug"] || window.squatchConfig?.debug,
|
|
207
207
|
};
|
|
208
208
|
|
|
@@ -213,7 +213,7 @@ export function validateConfig(
|
|
|
213
213
|
(typeof raw.domain === "string" && raw.domain) || <span class="branch-2 cbranch-no" title="branch not covered" >DEFAULT_DOMAIN;</span>
|
|
214
214
|
const debug = (typeof raw.debug === "boolean" && <span class="branch-1 cbranch-no" title="branch not covered" >raw.debug)</span> || false;
|
|
215
215
|
const npmCdn =
|
|
216
|
-
(typeof raw.npmCdn === "string" &&
|
|
216
|
+
(typeof raw.npmCdn === "string" && <span class="branch-1 cbranch-no" title="branch not covered" >raw.npmCdn)</span> || DEFAULT_NPM_CDN;
|
|
217
217
|
return {
|
|
218
218
|
tenantAlias,
|
|
219
219
|
domain,
|
|
@@ -232,19 +232,19 @@ export function <span class="fstat-no" title="function not covered" >validateLoc
|
|
|
232
232
|
}
|
|
233
233
|
}
|
|
234
234
|
|
|
235
|
-
export function validateWidgetConfig(raw: unknown | undefined): WidgetConfig {
|
|
236
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!isObject(raw)) <span class="cstat-no" title="statement not covered" >throw new Error("Widget properties must be an object");</span>
|
|
237
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!raw?.["user"]) <span class="cstat-no" title="statement not covered" >throw new Error("Required properties missing.");</span>
|
|
235
|
+
export function <span class="fstat-no" title="function not covered" >validateWidgetConfig(</span>raw: unknown | undefined): WidgetConfig {
|
|
236
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!isObject(raw)) <span class="cstat-no" title="statement not covered" >throw new Error("Widget properties must be an object");</span></span>
|
|
237
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!raw?.["user"]) <span class="cstat-no" title="statement not covered" >throw new Error("Required properties missing.");</span></span>
|
|
238
238
|
|
|
239
|
-
return raw as WidgetConfig
|
|
239
|
+
<span class="cstat-no" title="statement not covered" > return raw as WidgetConfig;</span>
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
-
export function validatePasswordlessConfig(
|
|
242
|
+
export function <span class="fstat-no" title="function not covered" >validatePasswordlessConfig(</span>
|
|
243
243
|
raw: unknown | undefined
|
|
244
244
|
): WidgetConfig {
|
|
245
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!isObject(raw)) <span class="cstat-no" title="statement not covered" >throw new Error("Widget properties must be an object");</span>
|
|
245
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!isObject(raw)) <span class="cstat-no" title="statement not covered" >throw new Error("Widget properties must be an object");</span></span>
|
|
246
246
|
|
|
247
|
-
return raw as WidgetConfig
|
|
247
|
+
<span class="cstat-no" title="statement not covered" > return raw as WidgetConfig;</span>
|
|
248
248
|
}
|
|
249
249
|
</pre></td></tr></table></pre>
|
|
250
250
|
|
|
@@ -253,7 +253,7 @@ export function validatePasswordlessConfig(
|
|
|
253
253
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
254
254
|
Code coverage generated by
|
|
255
255
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
256
|
-
at 2023-07-
|
|
256
|
+
at 2023-07-24T22:01:41.987Z
|
|
257
257
|
</div>
|
|
258
258
|
<script src="../prettify.js"></script>
|
|
259
259
|
<script>
|
|
@@ -253,7 +253,7 @@ export function validatePasswordlessConfig(
|
|
|
253
253
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
254
254
|
Code coverage generated by
|
|
255
255
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
256
|
-
at 2023-07-
|
|
256
|
+
at 2023-07-21T18:46:53.502Z
|
|
257
257
|
</div>
|
|
258
258
|
<script src="prettify.js"></script>
|
|
259
259
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">8.
|
|
26
|
+
<span class="strong">8.62% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>5/
|
|
28
|
+
<span class='fraction'>5/58</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
33
|
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/
|
|
35
|
+
<span class='fraction'>0/25</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/
|
|
42
|
+
<span class='fraction'>0/6</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">9.09% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>5/
|
|
49
|
+
<span class='fraction'>5/55</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -179,7 +179,23 @@
|
|
|
179
179
|
<a name='L114'></a><a href='#L114'>114</a>
|
|
180
180
|
<a name='L115'></a><a href='#L115'>115</a>
|
|
181
181
|
<a name='L116'></a><a href='#L116'>116</a>
|
|
182
|
-
<a name='L117'></a><a href='#L117'>117</a
|
|
182
|
+
<a name='L117'></a><a href='#L117'>117</a>
|
|
183
|
+
<a name='L118'></a><a href='#L118'>118</a>
|
|
184
|
+
<a name='L119'></a><a href='#L119'>119</a>
|
|
185
|
+
<a name='L120'></a><a href='#L120'>120</a>
|
|
186
|
+
<a name='L121'></a><a href='#L121'>121</a>
|
|
187
|
+
<a name='L122'></a><a href='#L122'>122</a>
|
|
188
|
+
<a name='L123'></a><a href='#L123'>123</a>
|
|
189
|
+
<a name='L124'></a><a href='#L124'>124</a>
|
|
190
|
+
<a name='L125'></a><a href='#L125'>125</a>
|
|
191
|
+
<a name='L126'></a><a href='#L126'>126</a>
|
|
192
|
+
<a name='L127'></a><a href='#L127'>127</a>
|
|
193
|
+
<a name='L128'></a><a href='#L128'>128</a>
|
|
194
|
+
<a name='L129'></a><a href='#L129'>129</a>
|
|
195
|
+
<a name='L130'></a><a href='#L130'>130</a>
|
|
196
|
+
<a name='L131'></a><a href='#L131'>131</a>
|
|
197
|
+
<a name='L132'></a><a href='#L132'>132</a>
|
|
198
|
+
<a name='L133'></a><a href='#L133'>133</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
183
199
|
<span class="cline-any cline-neutral"> </span>
|
|
184
200
|
<span class="cline-any cline-yes">1x</span>
|
|
185
201
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -193,11 +209,19 @@
|
|
|
193
209
|
<span class="cline-any cline-neutral"> </span>
|
|
194
210
|
<span class="cline-any cline-neutral"> </span>
|
|
195
211
|
<span class="cline-any cline-neutral"> </span>
|
|
212
|
+
<span class="cline-any cline-neutral"> </span>
|
|
213
|
+
<span class="cline-any cline-neutral"> </span>
|
|
214
|
+
<span class="cline-any cline-neutral"> </span>
|
|
215
|
+
<span class="cline-any cline-neutral"> </span>
|
|
216
|
+
<span class="cline-any cline-neutral"> </span>
|
|
196
217
|
<span class="cline-any cline-yes">1x</span>
|
|
197
218
|
<span class="cline-any cline-neutral"> </span>
|
|
198
219
|
<span class="cline-any cline-no"> </span>
|
|
199
220
|
<span class="cline-any cline-neutral"> </span>
|
|
200
221
|
<span class="cline-any cline-neutral"> </span>
|
|
222
|
+
<span class="cline-any cline-no"> </span>
|
|
223
|
+
<span class="cline-any cline-neutral"> </span>
|
|
224
|
+
<span class="cline-any cline-neutral"> </span>
|
|
201
225
|
<span class="cline-any cline-neutral"> </span>
|
|
202
226
|
<span class="cline-any cline-no"> </span>
|
|
203
227
|
<span class="cline-any cline-no"> </span>
|
|
@@ -240,18 +264,24 @@
|
|
|
240
264
|
<span class="cline-any cline-no"> </span>
|
|
241
265
|
<span class="cline-any cline-neutral"> </span>
|
|
242
266
|
<span class="cline-any cline-neutral"> </span>
|
|
243
|
-
<span class="cline-any cline-no"> </span>
|
|
244
|
-
<span class="cline-any cline-no"> </span>
|
|
245
|
-
<span class="cline-any cline-no"> </span>
|
|
246
267
|
<span class="cline-any cline-neutral"> </span>
|
|
247
|
-
<span class="cline-any cline-no"> </span>
|
|
248
268
|
<span class="cline-any cline-neutral"> </span>
|
|
249
269
|
<span class="cline-any cline-neutral"> </span>
|
|
250
270
|
<span class="cline-any cline-neutral"> </span>
|
|
271
|
+
<span class="cline-any cline-neutral"> </span>
|
|
272
|
+
<span class="cline-any cline-neutral"> </span>
|
|
273
|
+
<span class="cline-any cline-neutral"> </span>
|
|
274
|
+
<span class="cline-any cline-neutral"> </span>
|
|
275
|
+
<span class="cline-any cline-neutral"> </span>
|
|
276
|
+
<span class="cline-any cline-no"> </span>
|
|
251
277
|
<span class="cline-any cline-no"> </span>
|
|
252
278
|
<span class="cline-any cline-neutral"> </span>
|
|
253
279
|
<span class="cline-any cline-neutral"> </span>
|
|
254
280
|
<span class="cline-any cline-no"> </span>
|
|
281
|
+
<span class="cline-any cline-neutral"> </span>
|
|
282
|
+
<span class="cline-any cline-neutral"> </span>
|
|
283
|
+
<span class="cline-any cline-neutral"> </span>
|
|
284
|
+
<span class="cline-any cline-neutral"> </span>
|
|
255
285
|
<span class="cline-any cline-no"> </span>
|
|
256
286
|
<span class="cline-any cline-no"> </span>
|
|
257
287
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -260,6 +290,8 @@
|
|
|
260
290
|
<span class="cline-any cline-neutral"> </span>
|
|
261
291
|
<span class="cline-any cline-neutral"> </span>
|
|
262
292
|
<span class="cline-any cline-neutral"> </span>
|
|
293
|
+
<span class="cline-any cline-neutral"> </span>
|
|
294
|
+
<span class="cline-any cline-neutral"> </span>
|
|
263
295
|
<span class="cline-any cline-no"> </span>
|
|
264
296
|
<span class="cline-any cline-no"> </span>
|
|
265
297
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -308,10 +340,18 @@ const _log = debug("squatch-js:EMBEDwidget");
|
|
|
308
340
|
*
|
|
309
341
|
* To create an EmbedWidget use {@link Widgets}
|
|
310
342
|
*
|
|
343
|
+
* @example
|
|
344
|
+
* const widget = new EmbedWidget({ ... })
|
|
345
|
+
* widget.load() // Loads widget into the DOM
|
|
346
|
+
* widget.open() // Makes the iframe container visible
|
|
347
|
+
* widget.close() // Hides the iframe container
|
|
311
348
|
*/
|
|
312
349
|
export default class EmbedWidget extends Widget {
|
|
313
350
|
<span class="fstat-no" title="function not covered" > constructor(p</span>arams: Params, container?: HTMLElement | string) {
|
|
314
351
|
<span class="cstat-no" title="statement not covered" > super(params);</span>
|
|
352
|
+
|
|
353
|
+
// If container was passed in, override container in context
|
|
354
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (container) <span class="cstat-no" title="statement not covered" >this.container = container;</span></span>
|
|
315
355
|
}
|
|
316
356
|
|
|
317
357
|
<span class="fstat-no" title="function not covered" > async </span>load() {
|
|
@@ -356,25 +396,33 @@ export default class EmbedWidget extends Widget {
|
|
|
356
396
|
<span class="cstat-no" title="statement not covered" > frame.height = frameDoc.body.scrollHeight;</span>
|
|
357
397
|
|
|
358
398
|
// Adjust frame height when size of body changes
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
399
|
+
/* istanbul ignore next: hard to test */
|
|
400
|
+
const ro = new contentWindow["ResizeObserver"]((entries) => {
|
|
401
|
+
for (const entry of entries) {
|
|
402
|
+
const { height } = entry.contentRect;
|
|
362
403
|
// @ts-ignore -- number will be cast to string by browsers
|
|
363
|
-
|
|
404
|
+
frame.height = height;
|
|
364
405
|
}
|
|
365
406
|
});
|
|
366
407
|
|
|
367
|
-
<span class="cstat-no" title="statement not covered" >
|
|
408
|
+
const container = <span class="cstat-no" title="statement not covered" >await this._findInnerContainer(frame);</span>
|
|
409
|
+
<span class="cstat-no" title="statement not covered" > ro.observe(container);</span>
|
|
368
410
|
|
|
369
411
|
// Regular load - trigger event
|
|
370
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
412
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
|
|
413
|
+
!this.container ||
|
|
414
|
+
(this.container instanceof HTMLElement &&
|
|
415
|
+
this.container.tagName.startsWith("SQUATCH-"))
|
|
416
|
+
) {
|
|
371
417
|
<span class="cstat-no" title="statement not covered" > this._loadEvent(_sqh);</span>
|
|
372
418
|
<span class="cstat-no" title="statement not covered" > _log("loaded");</span>
|
|
373
419
|
}
|
|
374
420
|
});
|
|
375
421
|
}
|
|
376
422
|
|
|
377
|
-
|
|
423
|
+
/**
|
|
424
|
+
* Un-hide if element is available and refresh data
|
|
425
|
+
*/
|
|
378
426
|
<span class="fstat-no" title="function not covered" > open(</span>) {
|
|
379
427
|
const frame = <span class="cstat-no" title="statement not covered" >this._findFrame();</span>
|
|
380
428
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!frame) <span class="cstat-no" title="statement not covered" >return _log("no target element to open");</span></span>
|
|
@@ -418,7 +466,7 @@ export default class EmbedWidget extends Widget {
|
|
|
418
466
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
419
467
|
Code coverage generated by
|
|
420
468
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
421
|
-
at 2023-07-
|
|
469
|
+
at 2023-07-24T22:01:41.987Z
|
|
422
470
|
</div>
|
|
423
471
|
<script src="../prettify.js"></script>
|
|
424
472
|
<script>
|