@elliemae/pui-app-sdk 5.11.4 → 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.
@@ -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: "performance",
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, 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
  };
@@ -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: "performance",
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, 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
  };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("@docusaurus/types").Config;
2
+ export default _default;
@@ -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
  }