react-asc 23.6.1 → 23.7.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/components/Drawer/Drawer.d.ts +1 -1
- package/components/Portal/Portal.d.ts +7 -0
- package/components/Portal/index.d.ts +1 -0
- package/index.es.js +15 -3
- package/index.js +14 -2
- package/package.json +1 -1
- package/react-asc.scss +4 -2
- package/readme.md +2 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Portal';
|
package/index.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useRef, useEffect, useState, createContext, useContext, Fragment, Component, createRef, cloneElement } from 'react';
|
|
1
|
+
import React, { useRef, useEffect, useState, createContext, useContext, Fragment, Component, createRef, useMemo, cloneElement } from 'react';
|
|
2
2
|
import { createPortal, render, unmountComponentAtNode } from 'react-dom';
|
|
3
3
|
import { createPopper } from '@popperjs/core';
|
|
4
4
|
|
|
@@ -1535,6 +1535,18 @@ const DateSelect = (props) => {
|
|
|
1535
1535
|
// return Math.ceil((((d - yearStart) / 86400000) + 1) / 7)
|
|
1536
1536
|
// };
|
|
1537
1537
|
|
|
1538
|
+
const Portal = ({ children, target = document.body, className }) => {
|
|
1539
|
+
const containerEl = useMemo(() => document.createElement('div'), []);
|
|
1540
|
+
useEffect(() => {
|
|
1541
|
+
className && className.split(' ').forEach(cssClass => containerEl.classList.add(cssClass));
|
|
1542
|
+
target.appendChild(containerEl);
|
|
1543
|
+
return () => {
|
|
1544
|
+
target.removeChild(containerEl);
|
|
1545
|
+
};
|
|
1546
|
+
}, []);
|
|
1547
|
+
return createPortal(children, containerEl);
|
|
1548
|
+
};
|
|
1549
|
+
|
|
1538
1550
|
var css_248z$z = ".Drawer-module_drawer__kdQCk {\n height: 100%;\n z-index: 1101;\n bottom: 0;\n position: fixed;\n background: white;\n min-width: 320px;\n overflow-y: auto;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_permanent__c-y8y {\n position: inherit;\n z-index: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_left__loQVO {\n order: 0;\n left: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_right__sJ3mZ {\n order: 2;\n right: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_shadow__Myo3n {\n box-shadow: var(--shadow);\n}\n\n.Drawer-module_drawerOpen__07ptP {\n overflow: hidden;\n}";
|
|
1539
1551
|
var styles$z = {"drawer":"Drawer-module_drawer__kdQCk","permanent":"Drawer-module_permanent__c-y8y","left":"Drawer-module_left__loQVO","right":"Drawer-module_right__sJ3mZ","shadow":"Drawer-module_shadow__Myo3n","drawerOpen":"Drawer-module_drawerOpen__07ptP"};
|
|
1540
1552
|
styleInject(css_248z$z);
|
|
@@ -1550,9 +1562,9 @@ const Drawer = (props) => {
|
|
|
1550
1562
|
const handleClickBackdrop = () => {
|
|
1551
1563
|
onClickBackdrop && onClickBackdrop();
|
|
1552
1564
|
};
|
|
1553
|
-
return
|
|
1565
|
+
return (React.createElement(Portal, { className: 'drawer-container', target: target },
|
|
1554
1566
|
React.createElement(DrawerContent, Object.assign({ className: className, position: position, permanent: permanent, shadow: shadow }, rest), children),
|
|
1555
|
-
!permanent && React.createElement(Backdrop, { onClick: handleClickBackdrop }))
|
|
1567
|
+
!permanent && React.createElement(Backdrop, { onClick: handleClickBackdrop })));
|
|
1556
1568
|
};
|
|
1557
1569
|
const DrawerContent = (props) => {
|
|
1558
1570
|
const { children, className, position = 'left', permanent = false, shadow } = props, rest = __rest(props, ["children", "className", "position", "permanent", "shadow"]);
|
package/index.js
CHANGED
|
@@ -1543,6 +1543,18 @@ const DateSelect = (props) => {
|
|
|
1543
1543
|
// return Math.ceil((((d - yearStart) / 86400000) + 1) / 7)
|
|
1544
1544
|
// };
|
|
1545
1545
|
|
|
1546
|
+
const Portal = ({ children, target = document.body, className }) => {
|
|
1547
|
+
const containerEl = React.useMemo(() => document.createElement('div'), []);
|
|
1548
|
+
React.useEffect(() => {
|
|
1549
|
+
className && className.split(' ').forEach(cssClass => containerEl.classList.add(cssClass));
|
|
1550
|
+
target.appendChild(containerEl);
|
|
1551
|
+
return () => {
|
|
1552
|
+
target.removeChild(containerEl);
|
|
1553
|
+
};
|
|
1554
|
+
}, []);
|
|
1555
|
+
return reactDom.createPortal(children, containerEl);
|
|
1556
|
+
};
|
|
1557
|
+
|
|
1546
1558
|
var css_248z$z = ".Drawer-module_drawer__kdQCk {\n height: 100%;\n z-index: 1101;\n bottom: 0;\n position: fixed;\n background: white;\n min-width: 320px;\n overflow-y: auto;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_permanent__c-y8y {\n position: inherit;\n z-index: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_left__loQVO {\n order: 0;\n left: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_right__sJ3mZ {\n order: 2;\n right: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_shadow__Myo3n {\n box-shadow: var(--shadow);\n}\n\n.Drawer-module_drawerOpen__07ptP {\n overflow: hidden;\n}";
|
|
1547
1559
|
var styles$z = {"drawer":"Drawer-module_drawer__kdQCk","permanent":"Drawer-module_permanent__c-y8y","left":"Drawer-module_left__loQVO","right":"Drawer-module_right__sJ3mZ","shadow":"Drawer-module_shadow__Myo3n","drawerOpen":"Drawer-module_drawerOpen__07ptP"};
|
|
1548
1560
|
styleInject(css_248z$z);
|
|
@@ -1558,9 +1570,9 @@ const Drawer = (props) => {
|
|
|
1558
1570
|
const handleClickBackdrop = () => {
|
|
1559
1571
|
onClickBackdrop && onClickBackdrop();
|
|
1560
1572
|
};
|
|
1561
|
-
return
|
|
1573
|
+
return (React__default["default"].createElement(Portal, { className: 'drawer-container', target: target },
|
|
1562
1574
|
React__default["default"].createElement(DrawerContent, Object.assign({ className: className, position: position, permanent: permanent, shadow: shadow }, rest), children),
|
|
1563
|
-
!permanent && React__default["default"].createElement(Backdrop, { onClick: handleClickBackdrop }))
|
|
1575
|
+
!permanent && React__default["default"].createElement(Backdrop, { onClick: handleClickBackdrop })));
|
|
1564
1576
|
};
|
|
1565
1577
|
const DrawerContent = (props) => {
|
|
1566
1578
|
const { children, className, position = 'left', permanent = false, shadow } = props, rest = __rest(props, ["children", "className", "position", "permanent", "shadow"]);
|
package/package.json
CHANGED
package/react-asc.scss
CHANGED
|
@@ -248,6 +248,10 @@
|
|
|
248
248
|
color: var(--muted);
|
|
249
249
|
}
|
|
250
250
|
|
|
251
|
+
.flex-1 {
|
|
252
|
+
flex: 1;
|
|
253
|
+
}
|
|
254
|
+
|
|
251
255
|
.d-flex {
|
|
252
256
|
display: flex !important;
|
|
253
257
|
}
|
|
@@ -288,8 +292,6 @@
|
|
|
288
292
|
height: 100%;
|
|
289
293
|
}
|
|
290
294
|
|
|
291
|
-
|
|
292
|
-
|
|
293
295
|
.text-center {
|
|
294
296
|
text-align: center;
|
|
295
297
|
}
|
package/readme.md
CHANGED