@primer/components 0.0.0-2021108741 → 0.0.0-202110922024
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 +3 -5
- package/dist/browser.esm.js +176 -176
- package/dist/browser.esm.js.map +1 -1
- package/dist/browser.umd.js +187 -187
- package/dist/browser.umd.js.map +1 -1
- package/lib/Overlay.js +1 -3
- package/lib/Portal/Portal.js +3 -4
- package/lib/hooks/useAnchoredPosition.js +2 -3
- package/lib/hooks/useCombinedRefs.d.ts +2 -2
- package/lib/hooks/useCombinedRefs.js +9 -4
- package/lib/hooks/useResizeObserver.js +4 -2
- package/lib-esm/Overlay.js +1 -2
- package/lib-esm/Portal/Portal.js +2 -3
- package/lib-esm/hooks/useAnchoredPosition.js +1 -2
- package/lib-esm/hooks/useCombinedRefs.d.ts +2 -2
- package/lib-esm/hooks/useCombinedRefs.js +4 -4
- package/lib-esm/hooks/useResizeObserver.js +2 -2
- package/package.json +2 -2
- package/lib/utils/useIsomorphicLayoutEffect.d.ts +0 -2
- package/lib/utils/useIsomorphicLayoutEffect.js +0 -14
- package/lib-esm/utils/useIsomorphicLayoutEffect.d.ts +0 -2
- package/lib-esm/utils/useIsomorphicLayoutEffect.js +0 -4
package/lib/Overlay.js
CHANGED
@@ -11,8 +11,6 @@ var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
12
12
|
var _constants = require("./constants");
|
13
13
|
|
14
|
-
var _useIsomorphicLayoutEffect = require("./utils/useIsomorphicLayoutEffect");
|
15
|
-
|
16
14
|
var _hooks = require("./hooks");
|
17
15
|
|
18
16
|
var _Portal = _interopRequireDefault(require("./Portal"));
|
@@ -141,7 +139,7 @@ const Overlay = /*#__PURE__*/_react.default.forwardRef(({
|
|
141
139
|
combinedRef.current.style.height = `${combinedRef.current.clientHeight}px`;
|
142
140
|
}
|
143
141
|
}, [height, combinedRef]);
|
144
|
-
(0,
|
142
|
+
(0, _react.useLayoutEffect)(() => {
|
145
143
|
var _overlayRef$current;
|
146
144
|
|
147
145
|
const {
|
package/lib/Portal/Portal.js
CHANGED
@@ -10,8 +10,6 @@ var _react = _interopRequireDefault(require("react"));
|
|
10
10
|
|
11
11
|
var _reactDom = require("react-dom");
|
12
12
|
|
13
|
-
var _useIsomorphicLayoutEffect = require("../utils/useIsomorphicLayoutEffect");
|
14
|
-
|
15
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
16
14
|
|
17
15
|
const PRIMER_PORTAL_ROOT_ID = '__primerPortalRoot__';
|
@@ -74,7 +72,7 @@ const Portal = ({
|
|
74
72
|
|
75
73
|
const elementRef = _react.default.useRef(hostElement);
|
76
74
|
|
77
|
-
|
75
|
+
_react.default.useLayoutEffect(() => {
|
78
76
|
let containerName = _containerName;
|
79
77
|
|
80
78
|
if (containerName === undefined) {
|
@@ -93,8 +91,9 @@ const Portal = ({
|
|
93
91
|
onMount === null || onMount === void 0 ? void 0 : onMount();
|
94
92
|
return () => {
|
95
93
|
parentElement.removeChild(element);
|
96
|
-
};
|
94
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
97
95
|
}, [elementRef]);
|
96
|
+
|
98
97
|
return /*#__PURE__*/(0, _reactDom.createPortal)(children, elementRef.current);
|
99
98
|
};
|
100
99
|
|
@@ -13,8 +13,6 @@ var _useProvidedRefOrCreate = require("./useProvidedRefOrCreate");
|
|
13
13
|
|
14
14
|
var _useResizeObserver = require("./useResizeObserver");
|
15
15
|
|
16
|
-
var _useIsomorphicLayoutEffect = require("../utils/useIsomorphicLayoutEffect");
|
17
|
-
|
18
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
19
17
|
|
20
18
|
/**
|
@@ -41,7 +39,8 @@ function useAnchoredPosition(settings, dependencies = []) {
|
|
41
39
|
}, // eslint-disable-next-line react-hooks/exhaustive-deps
|
42
40
|
[floatingElementRef, anchorElementRef, ...dependencies]);
|
43
41
|
|
44
|
-
|
42
|
+
_react.default.useLayoutEffect(updatePosition, [updatePosition]);
|
43
|
+
|
45
44
|
(0, _useResizeObserver.useResizeObserver)(updatePosition);
|
46
45
|
return {
|
47
46
|
floatingElementRef,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ForwardedRef } from 'react';
|
1
|
+
import React, { ForwardedRef } from 'react';
|
2
2
|
/**
|
3
3
|
* Creates a ref by combining multiple constituent refs. The ref returned by this hook
|
4
4
|
* should be passed as the ref for the element that needs to be shared. This is
|
@@ -7,4 +7,4 @@ import { ForwardedRef } from 'react';
|
|
7
7
|
* though, as it breaks encapsulation.
|
8
8
|
* @param refs
|
9
9
|
*/
|
10
|
-
export declare function useCombinedRefs<T>(...refs: (ForwardedRef<T> | null | undefined)[]):
|
10
|
+
export declare function useCombinedRefs<T>(...refs: (ForwardedRef<T> | null | undefined)[]): React.MutableRefObject<T | null>;
|
@@ -5,9 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.useCombinedRefs = useCombinedRefs;
|
7
7
|
|
8
|
-
var _react = require("react");
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
9
9
|
|
10
|
-
|
10
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
11
|
+
|
12
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
11
13
|
|
12
14
|
/**
|
13
15
|
* Creates a ref by combining multiple constituent refs. The ref returned by this hook
|
@@ -19,7 +21,8 @@ var _useIsomorphicLayoutEffect = require("../utils/useIsomorphicLayoutEffect");
|
|
19
21
|
*/
|
20
22
|
function useCombinedRefs(...refs) {
|
21
23
|
const combinedRef = (0, _react.useRef)(null);
|
22
|
-
|
24
|
+
|
25
|
+
_react.default.useLayoutEffect(() => {
|
23
26
|
function setRefs(current = null) {
|
24
27
|
for (const ref of refs) {
|
25
28
|
if (!ref) {
|
@@ -37,8 +40,10 @@ function useCombinedRefs(...refs) {
|
|
37
40
|
setRefs(combinedRef.current);
|
38
41
|
return () => {
|
39
42
|
// ensure the refs get updated on unmount
|
43
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
40
44
|
setRefs(combinedRef.current);
|
41
|
-
};
|
45
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
42
46
|
}, [...refs, combinedRef.current]);
|
47
|
+
|
43
48
|
return combinedRef;
|
44
49
|
}
|
@@ -5,10 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.useResizeObserver = useResizeObserver;
|
7
7
|
|
8
|
-
var
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
9
|
+
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
9
11
|
|
10
12
|
function useResizeObserver(callback) {
|
11
|
-
|
13
|
+
_react.default.useLayoutEffect(() => {
|
12
14
|
const observer = new window.ResizeObserver(() => callback());
|
13
15
|
observer.observe(document.documentElement);
|
14
16
|
return () => {
|
package/lib-esm/Overlay.js
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
2
2
|
|
3
3
|
import styled from 'styled-components';
|
4
|
-
import React, { useEffect, useRef } from 'react';
|
4
|
+
import React, { useEffect, useLayoutEffect, useRef } from 'react';
|
5
5
|
import { get, COMMON } from './constants';
|
6
|
-
import { useIsomorphicLayoutEffect as useLayoutEffect } from './utils/useIsomorphicLayoutEffect';
|
7
6
|
import { useOverlay } from './hooks';
|
8
7
|
import Portal from './Portal';
|
9
8
|
import sx from './sx';
|
package/lib-esm/Portal/Portal.js
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { createPortal } from 'react-dom';
|
3
|
-
import { useIsomorphicLayoutEffect as useLayoutEffect } from '../utils/useIsomorphicLayoutEffect';
|
4
3
|
const PRIMER_PORTAL_ROOT_ID = '__primerPortalRoot__';
|
5
4
|
const DEFAULT_PORTAL_CONTAINER_NAME = '__default__';
|
6
5
|
const portalRootRegistry = {};
|
@@ -58,7 +57,7 @@ export const Portal = ({
|
|
58
57
|
hostElement.style.position = 'relative';
|
59
58
|
hostElement.style.zIndex = '1';
|
60
59
|
const elementRef = React.useRef(hostElement);
|
61
|
-
useLayoutEffect(() => {
|
60
|
+
React.useLayoutEffect(() => {
|
62
61
|
let containerName = _containerName;
|
63
62
|
|
64
63
|
if (containerName === undefined) {
|
@@ -77,7 +76,7 @@ export const Portal = ({
|
|
77
76
|
onMount === null || onMount === void 0 ? void 0 : onMount();
|
78
77
|
return () => {
|
79
78
|
parentElement.removeChild(element);
|
80
|
-
};
|
79
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
81
80
|
}, [elementRef]);
|
82
81
|
return /*#__PURE__*/createPortal(children, elementRef.current);
|
83
82
|
};
|
@@ -2,7 +2,6 @@ import React from 'react';
|
|
2
2
|
import { getAnchoredPosition } from '../behaviors/anchoredPosition';
|
3
3
|
import { useProvidedRefOrCreate } from './useProvidedRefOrCreate';
|
4
4
|
import { useResizeObserver } from './useResizeObserver';
|
5
|
-
import { useIsomorphicLayoutEffect as useLayoutEffect } from '../utils/useIsomorphicLayoutEffect';
|
6
5
|
|
7
6
|
/**
|
8
7
|
* Calculates the top and left values for an absolutely-positioned floating element
|
@@ -25,7 +24,7 @@ export function useAnchoredPosition(settings, dependencies = []) {
|
|
25
24
|
}
|
26
25
|
}, // eslint-disable-next-line react-hooks/exhaustive-deps
|
27
26
|
[floatingElementRef, anchorElementRef, ...dependencies]);
|
28
|
-
useLayoutEffect(updatePosition, [updatePosition]);
|
27
|
+
React.useLayoutEffect(updatePosition, [updatePosition]);
|
29
28
|
useResizeObserver(updatePosition);
|
30
29
|
return {
|
31
30
|
floatingElementRef,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ForwardedRef } from 'react';
|
1
|
+
import React, { ForwardedRef } from 'react';
|
2
2
|
/**
|
3
3
|
* Creates a ref by combining multiple constituent refs. The ref returned by this hook
|
4
4
|
* should be passed as the ref for the element that needs to be shared. This is
|
@@ -7,4 +7,4 @@ import { ForwardedRef } from 'react';
|
|
7
7
|
* though, as it breaks encapsulation.
|
8
8
|
* @param refs
|
9
9
|
*/
|
10
|
-
export declare function useCombinedRefs<T>(...refs: (ForwardedRef<T> | null | undefined)[]):
|
10
|
+
export declare function useCombinedRefs<T>(...refs: (ForwardedRef<T> | null | undefined)[]): React.MutableRefObject<T | null>;
|
@@ -1,5 +1,4 @@
|
|
1
|
-
import { useRef } from 'react';
|
2
|
-
import { useIsomorphicLayoutEffect as useLayoutEffect } from '../utils/useIsomorphicLayoutEffect';
|
1
|
+
import React, { useRef } from 'react';
|
3
2
|
/**
|
4
3
|
* Creates a ref by combining multiple constituent refs. The ref returned by this hook
|
5
4
|
* should be passed as the ref for the element that needs to be shared. This is
|
@@ -11,7 +10,7 @@ import { useIsomorphicLayoutEffect as useLayoutEffect } from '../utils/useIsomor
|
|
11
10
|
|
12
11
|
export function useCombinedRefs(...refs) {
|
13
12
|
const combinedRef = useRef(null);
|
14
|
-
useLayoutEffect(() => {
|
13
|
+
React.useLayoutEffect(() => {
|
15
14
|
function setRefs(current = null) {
|
16
15
|
for (const ref of refs) {
|
17
16
|
if (!ref) {
|
@@ -29,8 +28,9 @@ export function useCombinedRefs(...refs) {
|
|
29
28
|
setRefs(combinedRef.current);
|
30
29
|
return () => {
|
31
30
|
// ensure the refs get updated on unmount
|
31
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
32
32
|
setRefs(combinedRef.current);
|
33
|
-
};
|
33
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
34
34
|
}, [...refs, combinedRef.current]);
|
35
35
|
return combinedRef;
|
36
36
|
}
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import
|
1
|
+
import React from 'react';
|
2
2
|
export function useResizeObserver(callback) {
|
3
|
-
useLayoutEffect(() => {
|
3
|
+
React.useLayoutEffect(() => {
|
4
4
|
const observer = new window.ResizeObserver(() => callback());
|
5
5
|
observer.observe(document.documentElement);
|
6
6
|
return () => {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@primer/components",
|
3
|
-
"version": "0.0.0-
|
3
|
+
"version": "0.0.0-202110922024",
|
4
4
|
"description": "Primer react components",
|
5
5
|
"main": "lib/index.js",
|
6
6
|
"module": "lib-esm/index.js",
|
@@ -15,7 +15,7 @@
|
|
15
15
|
"start": "concurrently npm:start:*",
|
16
16
|
"start:docs": "cd docs && npm run develop",
|
17
17
|
"start:storybook": "start-storybook -p 6006",
|
18
|
-
"lint": "eslint '**/*.{js,ts,tsx,md,mdx}'",
|
18
|
+
"lint": "eslint '**/*.{js,ts,tsx,md,mdx}' --max-warnings=0",
|
19
19
|
"lint:fix": "npm run lint -- --fix",
|
20
20
|
"test": "jest",
|
21
21
|
"test:update": "npm run test -- --updateSnapshot",
|
@@ -1,14 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.useIsomorphicLayoutEffect = void 0;
|
7
|
-
|
8
|
-
var _react = require("react");
|
9
|
-
|
10
|
-
const useIsomorphicLayoutEffect = () => {
|
11
|
-
return typeof window !== 'undefined' ? _react.useLayoutEffect : _react.useEffect;
|
12
|
-
};
|
13
|
-
|
14
|
-
exports.useIsomorphicLayoutEffect = useIsomorphicLayoutEffect;
|