@elliemae/pui-app-sdk 5.11.3 → 5.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/utils/micro-frontend/host.js +1 -0
- package/dist/cjs/utils/micro-frontend/scripting-objects/analytics.js +14 -6
- package/dist/esm/utils/micro-frontend/host.js +1 -0
- package/dist/esm/utils/micro-frontend/scripting-objects/analytics.js +14 -6
- package/dist/types/docusaurus.config.d.ts +2 -0
- package/dist/types/lib/utils/micro-frontend/scripting-objects/analytics.d.ts +2 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +41 -42
|
@@ -75,6 +75,7 @@ class CMicroAppHost {
|
|
|
75
75
|
this.getObject = this.getObject.bind(this);
|
|
76
76
|
this.renewSessionTimer = this.renewSessionTimer.bind(this);
|
|
77
77
|
this.setSystemVersion = this.setSystemVersion.bind(this);
|
|
78
|
+
this.sendBAEvent = this.sendBAEvent.bind(this);
|
|
78
79
|
(0, import_app_config.loadAppConfig)().then(() => {
|
|
79
80
|
if (this.onInit) this.onInit(this.props);
|
|
80
81
|
}).catch(() => {
|
|
@@ -55,17 +55,20 @@ class Analytics extends import_em_ssf_host.default.ScriptingObject {
|
|
|
55
55
|
const po = new PerformanceObserver((list) => {
|
|
56
56
|
for (const entry of list.getEntries()) {
|
|
57
57
|
switch (entry.entryType) {
|
|
58
|
-
case "measure":
|
|
58
|
+
case "measure": {
|
|
59
|
+
const detail = entry.detail ?? {};
|
|
59
60
|
this.sendBAEvent({
|
|
60
|
-
event: "
|
|
61
|
+
event: "timing",
|
|
61
62
|
name: entry.name,
|
|
62
63
|
duration: entry.duration.toString(),
|
|
63
64
|
startTime: new Date(
|
|
64
65
|
performance.timeOrigin + entry.startTime
|
|
65
|
-
).toISOString()
|
|
66
|
+
).toISOString(),
|
|
67
|
+
...detail
|
|
66
68
|
}).catch(() => {
|
|
67
69
|
});
|
|
68
70
|
break;
|
|
71
|
+
}
|
|
69
72
|
default:
|
|
70
73
|
break;
|
|
71
74
|
}
|
|
@@ -104,6 +107,7 @@ class Analytics extends import_em_ssf_host.default.ScriptingObject {
|
|
|
104
107
|
/**
|
|
105
108
|
* end a performance mark
|
|
106
109
|
* @param startMarkNameorMark start mark name or start PerformanceMeasure object
|
|
110
|
+
* @param detail
|
|
107
111
|
* @returns a promise that resolves when the mark is ended
|
|
108
112
|
* @example
|
|
109
113
|
* ```typescript
|
|
@@ -117,20 +121,24 @@ class Analytics extends import_em_ssf_host.default.ScriptingObject {
|
|
|
117
121
|
* await analytics.perfMarkEnd('LongTask');
|
|
118
122
|
* ```
|
|
119
123
|
*/
|
|
120
|
-
perfMarkEnd = (startMarkNameorMark) => {
|
|
124
|
+
perfMarkEnd = (startMarkNameorMark, detail) => {
|
|
121
125
|
if (!startMarkNameorMark)
|
|
122
126
|
throw new Error("startMarkNameorMark is required");
|
|
123
127
|
const markName = startMarkNameorMark.name ?? startMarkNameorMark;
|
|
124
128
|
if (performance.getEntriesByName(markName, "mark").length) {
|
|
125
129
|
if (typeof startMarkNameorMark === "string")
|
|
126
|
-
performance.measure(markName,
|
|
130
|
+
performance.measure(markName, {
|
|
131
|
+
detail,
|
|
132
|
+
start: markName
|
|
133
|
+
});
|
|
127
134
|
else
|
|
128
135
|
performance.measure(markName, {
|
|
136
|
+
detail,
|
|
129
137
|
start: startMarkNameorMark.startTime
|
|
130
138
|
});
|
|
131
139
|
performance.clearMarks(markName);
|
|
132
140
|
} else {
|
|
133
|
-
performance.measure(markName);
|
|
141
|
+
performance.measure(markName, { detail });
|
|
134
142
|
}
|
|
135
143
|
return Promise.resolve();
|
|
136
144
|
};
|
|
@@ -59,6 +59,7 @@ class CMicroAppHost {
|
|
|
59
59
|
this.getObject = this.getObject.bind(this);
|
|
60
60
|
this.renewSessionTimer = this.renewSessionTimer.bind(this);
|
|
61
61
|
this.setSystemVersion = this.setSystemVersion.bind(this);
|
|
62
|
+
this.sendBAEvent = this.sendBAEvent.bind(this);
|
|
62
63
|
loadAppConfig().then(() => {
|
|
63
64
|
if (this.onInit) this.onInit(this.props);
|
|
64
65
|
}).catch(() => {
|
|
@@ -22,17 +22,20 @@ class Analytics extends ssfHost.ScriptingObject {
|
|
|
22
22
|
const po = new PerformanceObserver((list) => {
|
|
23
23
|
for (const entry of list.getEntries()) {
|
|
24
24
|
switch (entry.entryType) {
|
|
25
|
-
case "measure":
|
|
25
|
+
case "measure": {
|
|
26
|
+
const detail = entry.detail ?? {};
|
|
26
27
|
this.sendBAEvent({
|
|
27
|
-
event: "
|
|
28
|
+
event: "timing",
|
|
28
29
|
name: entry.name,
|
|
29
30
|
duration: entry.duration.toString(),
|
|
30
31
|
startTime: new Date(
|
|
31
32
|
performance.timeOrigin + entry.startTime
|
|
32
|
-
).toISOString()
|
|
33
|
+
).toISOString(),
|
|
34
|
+
...detail
|
|
33
35
|
}).catch(() => {
|
|
34
36
|
});
|
|
35
37
|
break;
|
|
38
|
+
}
|
|
36
39
|
default:
|
|
37
40
|
break;
|
|
38
41
|
}
|
|
@@ -71,6 +74,7 @@ class Analytics extends ssfHost.ScriptingObject {
|
|
|
71
74
|
/**
|
|
72
75
|
* end a performance mark
|
|
73
76
|
* @param startMarkNameorMark start mark name or start PerformanceMeasure object
|
|
77
|
+
* @param detail
|
|
74
78
|
* @returns a promise that resolves when the mark is ended
|
|
75
79
|
* @example
|
|
76
80
|
* ```typescript
|
|
@@ -84,20 +88,24 @@ class Analytics extends ssfHost.ScriptingObject {
|
|
|
84
88
|
* await analytics.perfMarkEnd('LongTask');
|
|
85
89
|
* ```
|
|
86
90
|
*/
|
|
87
|
-
perfMarkEnd = (startMarkNameorMark) => {
|
|
91
|
+
perfMarkEnd = (startMarkNameorMark, detail) => {
|
|
88
92
|
if (!startMarkNameorMark)
|
|
89
93
|
throw new Error("startMarkNameorMark is required");
|
|
90
94
|
const markName = startMarkNameorMark.name ?? startMarkNameorMark;
|
|
91
95
|
if (performance.getEntriesByName(markName, "mark").length) {
|
|
92
96
|
if (typeof startMarkNameorMark === "string")
|
|
93
|
-
performance.measure(markName,
|
|
97
|
+
performance.measure(markName, {
|
|
98
|
+
detail,
|
|
99
|
+
start: markName
|
|
100
|
+
});
|
|
94
101
|
else
|
|
95
102
|
performance.measure(markName, {
|
|
103
|
+
detail,
|
|
96
104
|
start: startMarkNameorMark.startTime
|
|
97
105
|
});
|
|
98
106
|
performance.clearMarks(markName);
|
|
99
107
|
} else {
|
|
100
|
-
performance.measure(markName);
|
|
108
|
+
performance.measure(markName, { detail });
|
|
101
109
|
}
|
|
102
110
|
return Promise.resolve();
|
|
103
111
|
};
|
|
@@ -27,6 +27,7 @@ export declare class Analytics extends ssfHost.ScriptingObject implements IAnaly
|
|
|
27
27
|
/**
|
|
28
28
|
* end a performance mark
|
|
29
29
|
* @param startMarkNameorMark start mark name or start PerformanceMeasure object
|
|
30
|
+
* @param detail
|
|
30
31
|
* @returns a promise that resolves when the mark is ended
|
|
31
32
|
* @example
|
|
32
33
|
* ```typescript
|
|
@@ -40,5 +41,5 @@ export declare class Analytics extends ssfHost.ScriptingObject implements IAnaly
|
|
|
40
41
|
* await analytics.perfMarkEnd('LongTask');
|
|
41
42
|
* ```
|
|
42
43
|
*/
|
|
43
|
-
perfMarkEnd: (startMarkNameorMark: string | PerformanceMeasure) => Promise<void>;
|
|
44
|
+
perfMarkEnd: (startMarkNameorMark: string | PerformanceMeasure, detail?: Record<string, unknown>) => Promise<void>;
|
|
44
45
|
}
|