@atlaskit/react-ufo 4.1.13 → 4.2.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.
Files changed (58) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/cjs/interaction-metrics/index.js +1 -2
  3. package/dist/cjs/interaction-metrics-init/index.js +1 -2
  4. package/dist/cjs/vc/index.js +4 -12
  5. package/dist/cjs/vc/vc-observer/index.js +1 -3
  6. package/dist/cjs/vc/vc-observer/observers/index.js +2 -3
  7. package/dist/cjs/vc/vc-observer/observers/ssr-placeholders/index.js +3 -13
  8. package/dist/cjs/vc/vc-observer-new/index.js +2 -6
  9. package/dist/cjs/vc/vc-observer-new/viewport-observer/index.js +8 -14
  10. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/check-fiber-within-component.js +25 -0
  11. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/check-within-component.js +63 -0
  12. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/find-fiber-with-cache.js +28 -0
  13. package/dist/es2019/interaction-metrics/index.js +1 -2
  14. package/dist/es2019/interaction-metrics-init/index.js +1 -2
  15. package/dist/es2019/vc/index.js +4 -12
  16. package/dist/es2019/vc/vc-observer/index.js +1 -3
  17. package/dist/es2019/vc/vc-observer/observers/index.js +2 -3
  18. package/dist/es2019/vc/vc-observer/observers/ssr-placeholders/index.js +3 -12
  19. package/dist/es2019/vc/vc-observer-new/index.js +2 -6
  20. package/dist/es2019/vc/vc-observer-new/viewport-observer/index.js +6 -15
  21. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/check-fiber-within-component.js +19 -0
  22. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/check-within-component.js +55 -0
  23. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/find-fiber-with-cache.js +21 -0
  24. package/dist/esm/interaction-metrics/index.js +1 -2
  25. package/dist/esm/interaction-metrics-init/index.js +1 -2
  26. package/dist/esm/vc/index.js +4 -12
  27. package/dist/esm/vc/vc-observer/index.js +1 -3
  28. package/dist/esm/vc/vc-observer/observers/index.js +2 -3
  29. package/dist/esm/vc/vc-observer/observers/ssr-placeholders/index.js +3 -13
  30. package/dist/esm/vc/vc-observer-new/index.js +2 -6
  31. package/dist/esm/vc/vc-observer-new/viewport-observer/index.js +6 -14
  32. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/check-fiber-within-component.js +19 -0
  33. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/check-within-component.js +55 -0
  34. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/find-fiber-with-cache.js +21 -0
  35. package/dist/types/config/index.d.ts +0 -4
  36. package/dist/types/vc/types.d.ts +0 -4
  37. package/dist/types/vc/vc-observer/observers/index.d.ts +0 -4
  38. package/dist/types/vc/vc-observer/observers/ssr-placeholders/index.d.ts +1 -7
  39. package/dist/types/vc/vc-observer-new/index.d.ts +0 -4
  40. package/dist/types/vc/vc-observer-new/viewport-observer/index.d.ts +1 -0
  41. package/dist/types/vc/vc-observer-new/viewport-observer/utils/check-fiber-within-component.d.ts +1 -0
  42. package/dist/types/vc/vc-observer-new/viewport-observer/utils/check-within-component.d.ts +4 -0
  43. package/dist/types/vc/vc-observer-new/viewport-observer/utils/find-fiber-with-cache.d.ts +1 -0
  44. package/dist/types-ts4.5/config/index.d.ts +0 -4
  45. package/dist/types-ts4.5/vc/types.d.ts +0 -4
  46. package/dist/types-ts4.5/vc/vc-observer/observers/index.d.ts +0 -4
  47. package/dist/types-ts4.5/vc/vc-observer/observers/ssr-placeholders/index.d.ts +1 -7
  48. package/dist/types-ts4.5/vc/vc-observer-new/index.d.ts +0 -4
  49. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/index.d.ts +1 -0
  50. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/check-fiber-within-component.d.ts +1 -0
  51. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/check-within-component.d.ts +4 -0
  52. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/find-fiber-with-cache.d.ts +1 -0
  53. package/package.json +1 -1
  54. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/check-within-component-and-extract-child-props.js +0 -69
  55. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/check-within-component-and-extract-child-props.js +0 -60
  56. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/check-within-component-and-extract-child-props.js +0 -62
  57. package/dist/types/vc/vc-observer-new/viewport-observer/utils/check-within-component-and-extract-child-props.d.ts +0 -8
  58. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/check-within-component-and-extract-child-props.d.ts +0 -8
@@ -1,60 +0,0 @@
1
- import { fg } from '@atlaskit/platform-feature-flags';
2
- import findReactFiber from './find-react-fiber';
3
- import getComponentName from './get-component-name';
4
- const DEFAULT_MAX_LEVEL = 20;
5
- // Using the React Fiber tree to traverse up the DOM and check if a node is within a specific component
6
- // and extract child component props if needed.
7
- export default function checkWithinComponentAndExtractChildProps(node, targetComponentName, childComponentConfig) {
8
- let fiber = null;
9
- if (fg('platform_ufo_handle_non_react_element_for_3p')) {
10
- // Walk up the DOM tree to find React fiber (handles non-React-rendered elements)
11
- let currentElement = node;
12
- let levelsTraversed = 0;
13
- while (currentElement && !fiber && levelsTraversed < DEFAULT_MAX_LEVEL) {
14
- fiber = findReactFiber(currentElement);
15
- if (!fiber) {
16
- currentElement = currentElement.parentElement;
17
- }
18
- levelsTraversed++;
19
- }
20
- } else {
21
- fiber = findReactFiber(node);
22
- }
23
-
24
- // If no React fiber found, return false
25
- if (!fiber) {
26
- return {
27
- isWithin: false
28
- };
29
- }
30
-
31
- // Traverse up the fiber tree
32
- let currentFiber = fiber;
33
- let childProp;
34
- while (currentFiber) {
35
- const componentName = getComponentName(currentFiber);
36
-
37
- // Check if this is a child component we're looking for
38
- if (childComponentConfig && componentName === childComponentConfig.componentName) {
39
- const props = currentFiber.memoizedProps || currentFiber.pendingProps;
40
- if (props && props[childComponentConfig.propName] !== undefined) {
41
- // Overwrite with the nearest child prop (closest to the target component)
42
- childProp = childComponentConfig.extractValue ? childComponentConfig.extractValue(props) : props[childComponentConfig.propName];
43
- }
44
- }
45
-
46
- // Check if we found the target component
47
- if (componentName === targetComponentName) {
48
- return {
49
- isWithin: true,
50
- ...(childComponentConfig && {
51
- childProp: childProp
52
- })
53
- };
54
- }
55
- currentFiber = currentFiber.return;
56
- }
57
- return {
58
- isWithin: false
59
- };
60
- }
@@ -1,62 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- import { fg } from '@atlaskit/platform-feature-flags';
5
- import findReactFiber from './find-react-fiber';
6
- import getComponentName from './get-component-name';
7
- var DEFAULT_MAX_LEVEL = 20;
8
- // Using the React Fiber tree to traverse up the DOM and check if a node is within a specific component
9
- // and extract child component props if needed.
10
- export default function checkWithinComponentAndExtractChildProps(node, targetComponentName, childComponentConfig) {
11
- var fiber = null;
12
- if (fg('platform_ufo_handle_non_react_element_for_3p')) {
13
- // Walk up the DOM tree to find React fiber (handles non-React-rendered elements)
14
- var currentElement = node;
15
- var levelsTraversed = 0;
16
- while (currentElement && !fiber && levelsTraversed < DEFAULT_MAX_LEVEL) {
17
- fiber = findReactFiber(currentElement);
18
- if (!fiber) {
19
- currentElement = currentElement.parentElement;
20
- }
21
- levelsTraversed++;
22
- }
23
- } else {
24
- fiber = findReactFiber(node);
25
- }
26
-
27
- // If no React fiber found, return false
28
- if (!fiber) {
29
- return {
30
- isWithin: false
31
- };
32
- }
33
-
34
- // Traverse up the fiber tree
35
- var currentFiber = fiber;
36
- var childProp;
37
- while (currentFiber) {
38
- var componentName = getComponentName(currentFiber);
39
-
40
- // Check if this is a child component we're looking for
41
- if (childComponentConfig && componentName === childComponentConfig.componentName) {
42
- var props = currentFiber.memoizedProps || currentFiber.pendingProps;
43
- if (props && props[childComponentConfig.propName] !== undefined) {
44
- // Overwrite with the nearest child prop (closest to the target component)
45
- childProp = childComponentConfig.extractValue ? childComponentConfig.extractValue(props) : props[childComponentConfig.propName];
46
- }
47
- }
48
-
49
- // Check if we found the target component
50
- if (componentName === targetComponentName) {
51
- return _objectSpread({
52
- isWithin: true
53
- }, childComponentConfig && {
54
- childProp: childProp
55
- });
56
- }
57
- currentFiber = currentFiber.return;
58
- }
59
- return {
60
- isWithin: false
61
- };
62
- }
@@ -1,8 +0,0 @@
1
- export default function checkWithinComponentAndExtractChildProps<T = string>(node: HTMLElement, targetComponentName: string, childComponentConfig?: {
2
- componentName: string;
3
- propName: string;
4
- extractValue?: (props: any) => T;
5
- }): {
6
- isWithin: boolean;
7
- childProp?: T;
8
- };
@@ -1,8 +0,0 @@
1
- export default function checkWithinComponentAndExtractChildProps<T = string>(node: HTMLElement, targetComponentName: string, childComponentConfig?: {
2
- componentName: string;
3
- propName: string;
4
- extractValue?: (props: any) => T;
5
- }): {
6
- isWithin: boolean;
7
- childProp?: T;
8
- };