@atlaskit/react-ufo 3.13.25 → 3.13.26

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,5 +1,16 @@
1
1
  # @atlaskit/ufo-interaction-ignore
2
2
 
3
+ ## 3.13.26
4
+
5
+ ### Patch Changes
6
+
7
+ - [#175577](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/175577)
8
+ [`ab132e5fd6642`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/ab132e5fd6642) -
9
+ ensure post-interaction-log events are only for page_load and transition events
10
+ - [#175545](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/175545)
11
+ [`b16b0a70a3516`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b16b0a70a3516) -
12
+ bugfix: correctly layout shift entry sources being undefined in TTVC v3 logic
13
+
3
14
  ## 3.13.25
4
15
 
5
16
  ### Patch Changes
@@ -177,6 +177,9 @@ function getPostInteractionRate(name, interactionType) {
177
177
  if (!(postInteractionLog !== null && postInteractionLog !== void 0 && postInteractionLog.enabled)) {
178
178
  return 0;
179
179
  }
180
+ if (interactionType !== 'page_load' && interactionType !== 'transition') {
181
+ return 0;
182
+ }
180
183
  if (postInteractionLog.rates && typeof postInteractionLog.rates[name] === 'number') {
181
184
  return postInteractionLog.rates[name];
182
185
  }
@@ -124,6 +124,9 @@ function createPostInteractionLogPayload(_ref2) {
124
124
  if (!config) {
125
125
  throw Error('UFO Configuration not provided');
126
126
  }
127
+ if (!lastInteractionFinish) {
128
+ return null;
129
+ }
127
130
  var ufoName = (0, _utils.sanitizeUfoName)(lastInteractionFinish.ufoName);
128
131
  var rate = (0, _config.getPostInteractionRate)(ufoName, lastInteractionFinish.type);
129
132
  if (!(0, _coinflip.default)(rate)) {
@@ -45,6 +45,6 @@ function getActiveTraceHttpRequestHeaders(_url) {
45
45
  return (0, _makeTraceHttpRequestHeaders.makeTraceHttpRequestHeaders)(traceId, spanId);
46
46
  }
47
47
  function getActiveTraceAsQueryParams(_url) {
48
- var traceHeaders = getActiveTraceHttpRequestHeaders(_url);
48
+ var traceHeaders = getActiveTraceHttpRequestHeaders();
49
49
  return traceHeaders ? new URLSearchParams(traceHeaders).toString().toLowerCase() : null;
50
50
  }
@@ -31,9 +31,8 @@ function createPerformanceObserver(_ref) {
31
31
  try {
32
32
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
33
33
  var entry = _step.value;
34
- if (entry.entryType === 'layout-shift') {
35
- // Ignored via go/ees005
36
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
34
+ if (entry.entryType === 'layout-shift' && 'sources' in entry) {
35
+ // see https://developer.mozilla.org/en-US/docs/Web/API/LayoutShiftAttribution for more info
37
36
  var changedRects = entry.sources.reduceRight(function (acc, attr) {
38
37
  acc.push({
39
38
  rect: convertPhysicalToLogicalResolution(attr.currentRect),
@@ -157,6 +157,9 @@ export function getPostInteractionRate(name, interactionType) {
157
157
  if (!(postInteractionLog !== null && postInteractionLog !== void 0 && postInteractionLog.enabled)) {
158
158
  return 0;
159
159
  }
160
+ if (interactionType !== 'page_load' && interactionType !== 'transition') {
161
+ return 0;
162
+ }
160
163
  if (postInteractionLog.rates && typeof postInteractionLog.rates[name] === 'number') {
161
164
  return postInteractionLog.rates[name];
162
165
  }
@@ -111,6 +111,9 @@ function createPostInteractionLogPayload({
111
111
  if (!config) {
112
112
  throw Error('UFO Configuration not provided');
113
113
  }
114
+ if (!lastInteractionFinish) {
115
+ return null;
116
+ }
114
117
  const ufoName = sanitizeUfoName(lastInteractionFinish.ufoName);
115
118
  const rate = getPostInteractionRate(ufoName, lastInteractionFinish.type);
116
119
  if (!coinflip(rate)) {
@@ -32,6 +32,6 @@ export function getActiveTraceHttpRequestHeaders(_url) {
32
32
  return makeTraceHttpRequestHeaders(traceId, spanId);
33
33
  }
34
34
  export function getActiveTraceAsQueryParams(_url) {
35
- const traceHeaders = getActiveTraceHttpRequestHeaders(_url);
35
+ const traceHeaders = getActiveTraceHttpRequestHeaders();
36
36
  return traceHeaders ? new URLSearchParams(traceHeaders).toString().toLowerCase() : null;
37
37
  }
@@ -18,9 +18,8 @@ function createPerformanceObserver({
18
18
  }
19
19
  const performanceObserverCallback = entries => {
20
20
  for (const entry of entries.getEntries()) {
21
- if (entry.entryType === 'layout-shift') {
22
- // Ignored via go/ees005
23
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
+ if (entry.entryType === 'layout-shift' && 'sources' in entry) {
22
+ // see https://developer.mozilla.org/en-US/docs/Web/API/LayoutShiftAttribution for more info
24
23
  const changedRects = entry.sources.reduceRight((acc, attr) => {
25
24
  acc.push({
26
25
  rect: convertPhysicalToLogicalResolution(attr.currentRect),
@@ -153,6 +153,9 @@ export function getPostInteractionRate(name, interactionType) {
153
153
  if (!(postInteractionLog !== null && postInteractionLog !== void 0 && postInteractionLog.enabled)) {
154
154
  return 0;
155
155
  }
156
+ if (interactionType !== 'page_load' && interactionType !== 'transition') {
157
+ return 0;
158
+ }
156
159
  if (postInteractionLog.rates && typeof postInteractionLog.rates[name] === 'number') {
157
160
  return postInteractionLog.rates[name];
158
161
  }
@@ -117,6 +117,9 @@ function createPostInteractionLogPayload(_ref2) {
117
117
  if (!config) {
118
118
  throw Error('UFO Configuration not provided');
119
119
  }
120
+ if (!lastInteractionFinish) {
121
+ return null;
122
+ }
120
123
  var ufoName = sanitizeUfoName(lastInteractionFinish.ufoName);
121
124
  var rate = getPostInteractionRate(ufoName, lastInteractionFinish.type);
122
125
  if (!coinflip(rate)) {
@@ -33,6 +33,6 @@ export function getActiveTraceHttpRequestHeaders(_url) {
33
33
  return makeTraceHttpRequestHeaders(traceId, spanId);
34
34
  }
35
35
  export function getActiveTraceAsQueryParams(_url) {
36
- var traceHeaders = getActiveTraceHttpRequestHeaders(_url);
36
+ var traceHeaders = getActiveTraceHttpRequestHeaders();
37
37
  return traceHeaders ? new URLSearchParams(traceHeaders).toString().toLowerCase() : null;
38
38
  }
@@ -24,9 +24,8 @@ function createPerformanceObserver(_ref) {
24
24
  try {
25
25
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
26
26
  var entry = _step.value;
27
- if (entry.entryType === 'layout-shift') {
28
- // Ignored via go/ees005
29
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
+ if (entry.entryType === 'layout-shift' && 'sources' in entry) {
28
+ // see https://developer.mozilla.org/en-US/docs/Web/API/LayoutShiftAttribution for more info
30
29
  var changedRects = entry.sources.reduceRight(function (acc, attr) {
31
30
  acc.push({
32
31
  rect: convertPhysicalToLogicalResolution(attr.currentRect),
@@ -4,8 +4,8 @@ export declare function setInteractionActiveTrace(interactionId: string, experie
4
4
  export declare function setActiveTrace(traceId: string, spanId: string, type: string): void;
5
5
  export declare function getActiveTrace(): import("./types").TraceIdContext | undefined;
6
6
  export declare function clearActiveTrace(): void;
7
- export declare function getActiveTraceHttpRequestHeaders(_url: string): {
7
+ export declare function getActiveTraceHttpRequestHeaders(_url?: string): {
8
8
  'X-B3-TraceId': string;
9
9
  'X-B3-SpanId': string;
10
10
  } | null;
11
- export declare function getActiveTraceAsQueryParams(_url: string): string | null;
11
+ export declare function getActiveTraceAsQueryParams(_url?: string): string | null;
@@ -4,8 +4,8 @@ export declare function setInteractionActiveTrace(interactionId: string, experie
4
4
  export declare function setActiveTrace(traceId: string, spanId: string, type: string): void;
5
5
  export declare function getActiveTrace(): import("./types").TraceIdContext | undefined;
6
6
  export declare function clearActiveTrace(): void;
7
- export declare function getActiveTraceHttpRequestHeaders(_url: string): {
7
+ export declare function getActiveTraceHttpRequestHeaders(_url?: string): {
8
8
  'X-B3-TraceId': string;
9
9
  'X-B3-SpanId': string;
10
10
  } | null;
11
- export declare function getActiveTraceAsQueryParams(_url: string): string | null;
11
+ export declare function getActiveTraceAsQueryParams(_url?: string): string | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/react-ufo",
3
- "version": "3.13.25",
3
+ "version": "3.13.26",
4
4
  "description": "Parts of React UFO that are publicly available",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",