@neo4j-ndl/react 0.4.0 → 0.5.2
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/lib/cjs/_common/utils.js +59 -0
- package/lib/cjs/_common/utils.js.map +1 -0
- package/lib/cjs/button/Button.js +2 -2
- package/lib/cjs/button/Button.js.map +1 -1
- package/lib/cjs/button/IconButton.js +3 -3
- package/lib/cjs/button/IconButton.js.map +1 -1
- package/lib/cjs/context-menu/ContextMenu.js +7 -13
- package/lib/cjs/context-menu/ContextMenu.js.map +1 -1
- package/lib/cjs/dialog/Dialog.js +161 -0
- package/lib/cjs/dialog/Dialog.js.map +1 -0
- package/lib/cjs/dialog/index.js +38 -0
- package/lib/cjs/dialog/index.js.map +1 -0
- package/lib/cjs/drag-and-drop/DragAndDrop.js +8 -3
- package/lib/cjs/drag-and-drop/DragAndDrop.js.map +1 -1
- package/lib/cjs/index.js +2 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/modal/Modal.js +105 -0
- package/lib/cjs/modal/Modal.js.map +1 -0
- package/lib/cjs/modal/index.js +38 -0
- package/lib/cjs/modal/index.js.map +1 -0
- package/lib/cjs/popover/Popover.js +30 -52
- package/lib/cjs/popover/Popover.js.map +1 -1
- package/lib/cjs/portal/Portal.js +52 -0
- package/lib/cjs/portal/Portal.js.map +1 -0
- package/lib/cjs/portal/index.js +38 -0
- package/lib/cjs/portal/index.js.map +1 -0
- package/lib/cjs/table/Table.js +1 -1
- package/lib/cjs/table/Table.js.map +1 -1
- package/lib/cjs/trap-focus/TrapFocus.js +310 -0
- package/lib/cjs/trap-focus/TrapFocus.js.map +1 -0
- package/lib/cjs/trap-focus/index.js +38 -0
- package/lib/cjs/trap-focus/index.js.map +1 -0
- package/lib/esm/_common/utils.js +52 -0
- package/lib/esm/_common/utils.js.map +1 -0
- package/lib/esm/button/Button.js +1 -1
- package/lib/esm/button/Button.js.map +1 -1
- package/lib/esm/button/IconButton.js +2 -2
- package/lib/esm/button/IconButton.js.map +1 -1
- package/lib/esm/context-menu/ContextMenu.js +7 -13
- package/lib/esm/context-menu/ContextMenu.js.map +1 -1
- package/lib/esm/dialog/Dialog.js +131 -0
- package/lib/esm/dialog/Dialog.js.map +1 -0
- package/lib/esm/{_common/utilts.js → dialog/index.js} +2 -5
- package/lib/esm/dialog/index.js.map +1 -0
- package/lib/esm/drag-and-drop/DragAndDrop.js +9 -4
- package/lib/esm/drag-and-drop/DragAndDrop.js.map +1 -1
- package/lib/esm/index.js +2 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/modal/Modal.js +75 -0
- package/lib/esm/modal/Modal.js.map +1 -0
- package/lib/{cjs/_common/utilts.js → esm/modal/index.js} +2 -11
- package/lib/esm/modal/index.js.map +1 -0
- package/lib/esm/popover/Popover.js +30 -29
- package/lib/esm/popover/Popover.js.map +1 -1
- package/lib/esm/portal/Portal.js +25 -0
- package/lib/esm/portal/Portal.js.map +1 -0
- package/lib/esm/portal/index.js +22 -0
- package/lib/esm/portal/index.js.map +1 -0
- package/lib/esm/table/Table.js +1 -1
- package/lib/esm/table/Table.js.map +1 -1
- package/lib/esm/trap-focus/TrapFocus.js +283 -0
- package/lib/esm/trap-focus/TrapFocus.js.map +1 -0
- package/lib/esm/trap-focus/index.js +22 -0
- package/lib/esm/trap-focus/index.js.map +1 -0
- package/lib/types/_common/{utilts.d.ts → utils.d.ts} +5 -0
- package/lib/types/context-menu/ContextMenu.d.ts +4 -1
- package/lib/types/dialog/Dialog.d.ts +55 -0
- package/lib/types/dialog/index.d.ts +21 -0
- package/lib/types/drag-and-drop/DragAndDrop.d.ts +5 -3
- package/lib/types/index.d.ts +2 -0
- package/lib/types/modal/Modal.d.ts +34 -0
- package/lib/types/modal/index.d.ts +21 -0
- package/lib/types/popover/Popover.d.ts +5 -3
- package/lib/types/portal/Portal.d.ts +27 -0
- package/lib/types/portal/index.d.ts +21 -0
- package/lib/types/trap-focus/TrapFocus.d.ts +35 -0
- package/lib/types/trap-focus/index.d.ts +21 -0
- package/package.json +4 -3
- package/lib/cjs/_common/utilts.js.map +0 -1
- package/lib/esm/_common/utilts.js.map +0 -1
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) "Neo4j"
|
|
5
|
+
* Neo4j Sweden AB [http://neo4j.com]
|
|
6
|
+
*
|
|
7
|
+
* This file is part of Neo4j.
|
|
8
|
+
*
|
|
9
|
+
* Neo4j is free software: you can redistribute it and/or modify
|
|
10
|
+
* it under the terms of the GNU General Public License as published by
|
|
11
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
12
|
+
* (at your option) any later version.
|
|
13
|
+
*
|
|
14
|
+
* This program is distributed in the hope that it will be useful,
|
|
15
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
16
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
17
|
+
* GNU General Public License for more details.
|
|
18
|
+
*
|
|
19
|
+
* You should have received a copy of the GNU General Public License
|
|
20
|
+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
21
|
+
*/
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.useDocumentScrollToggle = exports.needleWarningMessage = exports.removeSpaces = exports.removeNewlines = void 0;
|
|
24
|
+
const react_1 = require("react");
|
|
25
|
+
const removeNewlines = (input) => input.replace(/(\r\n|\n|\r)/gm, '');
|
|
26
|
+
exports.removeNewlines = removeNewlines;
|
|
27
|
+
/** Remove extra spaces from sting */
|
|
28
|
+
const removeSpaces = (input) => input.replace(/\s+/g, ' ').trim();
|
|
29
|
+
exports.removeSpaces = removeSpaces;
|
|
30
|
+
const needleWarningMessage = (message) => console.warn(`[🪡 Needle]: ${message}`);
|
|
31
|
+
exports.needleWarningMessage = needleWarningMessage;
|
|
32
|
+
const getScrollbarSize = (doc) => {
|
|
33
|
+
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
|
34
|
+
const documentWidth = doc.documentElement.clientWidth;
|
|
35
|
+
return Math.abs(window.innerWidth - documentWidth);
|
|
36
|
+
};
|
|
37
|
+
const getPaddingRight = (element) => parseInt(window.getComputedStyle(element).paddingRight, 10) || 0;
|
|
38
|
+
/**
|
|
39
|
+
* Toggles scroll on the provided document.
|
|
40
|
+
* Useful for disabling scroll when a popup is open (ie ContextMenu/Modal)
|
|
41
|
+
*/
|
|
42
|
+
const useDocumentScrollToggle = () => {
|
|
43
|
+
const bodyPadding = (0, react_1.useRef)(0);
|
|
44
|
+
return (0, react_1.useCallback)((disable, doc = document) => {
|
|
45
|
+
if (disable) {
|
|
46
|
+
const existingPaddingRight = getPaddingRight(doc.body);
|
|
47
|
+
bodyPadding.current = existingPaddingRight;
|
|
48
|
+
const newPaddingRight = existingPaddingRight + getScrollbarSize(doc);
|
|
49
|
+
doc.body.style.overflow = 'hidden';
|
|
50
|
+
doc.body.style.paddingRight = `${newPaddingRight}px`;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
doc.body.style.overflow = '';
|
|
54
|
+
doc.body.style.paddingRight = `${bodyPadding.current}px`;
|
|
55
|
+
}
|
|
56
|
+
}, []);
|
|
57
|
+
};
|
|
58
|
+
exports.useDocumentScrollToggle = useDocumentScrollToggle;
|
|
59
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/_common/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAEH,iCAA4C;AAErC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE,CAC9C,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;AADzB,QAAA,cAAc,kBACW;AAEtC,qCAAqC;AAC9B,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE,CAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AADvB,QAAA,YAAY,gBACW;AAE7B,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE,CACtD,OAAO,CAAC,IAAI,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;AAD9B,QAAA,oBAAoB,wBACU;AAE3C,MAAM,gBAAgB,GAAG,CAAC,GAAa,EAAU,EAAE;IACjD,iFAAiF;IACjF,MAAM,aAAa,GAAG,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC;IACtD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAU,EAAE,CACnD,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAEnE;;;GAGG;AACI,MAAM,uBAAuB,GAAG,GAAG,EAAE;IAC1C,MAAM,WAAW,GAAG,IAAA,cAAM,EAAS,CAAC,CAAC,CAAC;IAEtC,OAAO,IAAA,mBAAW,EAAC,CAAC,OAAgB,EAAE,MAAgB,QAAQ,EAAE,EAAE;QAChE,IAAI,OAAO,EAAE;YACX,MAAM,oBAAoB,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvD,WAAW,CAAC,OAAO,GAAG,oBAAoB,CAAC;YAC3C,MAAM,eAAe,GAAG,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACrE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACnC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,eAAe,IAAI,CAAC;SACtD;aAAM;YACL,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,WAAW,CAAC,OAAO,IAAI,CAAC;SAC1D;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AAfW,QAAA,uBAAuB,2BAelC"}
|
package/lib/cjs/button/Button.js
CHANGED
|
@@ -39,7 +39,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
39
39
|
const react_1 = __importDefault(require("react"));
|
|
40
40
|
const classnames_1 = __importDefault(require("classnames"));
|
|
41
41
|
const loading_spinner_1 = require("../loading-spinner");
|
|
42
|
-
const
|
|
42
|
+
const utils_1 = require("../_common/utils");
|
|
43
43
|
exports.Button = react_1.default.forwardRef(function Button(_a, ref) {
|
|
44
44
|
var { children, as, type = 'button', loading = false, color = 'primary', disabled = false, fill = 'filled', rectangle = false, buttonSize = 'medium', className, onClick, floating = false, tabIndex = 0 } = _a, props = __rest(_a, ["children", "as", "type", "loading", "color", "disabled", "fill", "rectangle", "buttonSize", "className", "onClick", "floating", "tabIndex"]);
|
|
45
45
|
let Component = as || 'button';
|
|
@@ -96,7 +96,7 @@ exports.Button = react_1.default.forwardRef(function Button(_a, ref) {
|
|
|
96
96
|
${interactable && `hover:n-bg-light-neutral-bg-default`}
|
|
97
97
|
`]: fill === 'text' && color == 'neutral',
|
|
98
98
|
});
|
|
99
|
-
const sanitisedClasses = (0,
|
|
99
|
+
const sanitisedClasses = (0, utils_1.removeSpaces)((0, utils_1.removeNewlines)(classes));
|
|
100
100
|
const handleClick = (e) => {
|
|
101
101
|
if (!interactable) {
|
|
102
102
|
// By default, a <button /> element with disabled set to true will not get its
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,kDAA0B;AAC1B,4DAAoC;AAEpC,wDAAoD;AAEpD,
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/button/Button.tsx"],"names":[],"mappings":"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"}
|
|
@@ -39,7 +39,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
39
39
|
const react_1 = __importDefault(require("react"));
|
|
40
40
|
const classnames_1 = __importDefault(require("classnames"));
|
|
41
41
|
const loading_spinner_1 = require("../loading-spinner");
|
|
42
|
-
const
|
|
42
|
+
const utils_1 = require("../_common/utils");
|
|
43
43
|
exports.IconButton = react_1.default.forwardRef(function Button(_a, ref) {
|
|
44
44
|
var { children, as, type = 'button', loading = false, disabled = false, buttonSize = 'medium', className, onClick, grouped, floating = false, danger, clean } = _a, props = __rest(_a, ["children", "as", "type", "loading", "disabled", "buttonSize", "className", "onClick", "grouped", "floating", "danger", "clean"]);
|
|
45
45
|
let Component = as || 'button';
|
|
@@ -56,10 +56,10 @@ exports.IconButton = react_1.default.forwardRef(function Button(_a, ref) {
|
|
|
56
56
|
clean,
|
|
57
57
|
});
|
|
58
58
|
if (clean && floating) {
|
|
59
|
-
(0,
|
|
59
|
+
(0, utils_1.needleWarningMessage)("Can't have 'clean' and 'floating' props true at the same time");
|
|
60
60
|
}
|
|
61
61
|
if (!props['aria-label']) {
|
|
62
|
-
(0,
|
|
62
|
+
(0, utils_1.needleWarningMessage)('Icon buttons do not have text, be sure to include an aria-label for screen readers link: https://dequeuniversity.com/rules/axe/4.4/button-name?application=axeAPI');
|
|
63
63
|
}
|
|
64
64
|
const handleClick = (e) => {
|
|
65
65
|
if (!interactable) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../src/button/IconButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,kDAA0B;AAC1B,4DAAoC;AACpC,wDAAoD;AAEpD,
|
|
1
|
+
{"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../src/button/IconButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,kDAA0B;AAC1B,4DAAoC;AACpC,wDAAoD;AAEpD,4CAAwD;AAmC3C,QAAA,UAAU,GAAG,eAAK,CAAC,UAAU,CAAC,SAAS,MAAM,CACxD,EAckB,EAClB,GAAG;QAfH,EACE,QAAQ,EACR,EAAE,EACF,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,UAAU,GAAG,QAAQ,EACrB,SAAS,EACT,OAAO,EACP,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,MAAM,EACN,KAAK,OAEW,EADb,KAAK,cAbV,iIAcC,CADS;IAIV,IAAI,SAAS,GAAG,EAAE,IAAI,QAAQ,CAAC;IAE/B,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE;QACrB,SAAS,GAAG,GAAG,CAAC;KACjB;IAED,MAAM,YAAY,GAAG,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC;IAE3C,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,gBAAgB,UAAU,IAAI,SAAS,EAAE,EAAE;QACpE,OAAO;QACP,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,MAAM;QACN,KAAK;KACN,CAAC,CAAC;IAEH,IAAI,KAAK,IAAI,QAAQ,EAAE;QACrB,IAAA,4BAAoB,EAClB,+DAA+D,CAChE,CAAC;KACH;IAED,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;QACxB,IAAA,4BAAoB,EAClB,mKAAmK,CACpK,CAAC;KACH;IAED,MAAM,WAAW,GAAG,CAAC,CAAkD,EAAE,EAAE;QACzE,IAAI,CAAC,YAAY,EAAE;YACjB,8EAA8E;YAC9E,yEAAyE;YACzE,iFAAiF;YACjF,4CAA4C;YAC5C,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,OAAO;SACR;QAED,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;SACZ;aAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACtB,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC;IAEF,OAAO,CACL,uBAAC,SAAS;IACR,uEAAuE;wBACnE,KAAK,EAEL,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAC5C,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,YAAY,EACvB,SAAS,EAAE,OAAO,EAClB,GAAG,EAAE,GAAG,gBAER,8CAAK,SAAS,EAAC,UAAU,gBACtB,OAAO,CAAC,CAAC,CAAC,CACT,uBAAC,gCAAc,IAAC,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAC,OAAO,GAAG,CAC7D,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,IACG,IACI,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -74,15 +74,15 @@ const useMenuContext = () => {
|
|
|
74
74
|
exports.Menu = (0, react_1.forwardRef)(function Menu(_a, ref) {
|
|
75
75
|
var { menuSize = 'small', className, minWidth = 250, open, onClose, children } = _a, rest = __rest(_a, ["menuSize", "className", "minWidth", "open", "onClose", "children"]);
|
|
76
76
|
const menuRef = (0, react_1.useRef)();
|
|
77
|
-
const
|
|
77
|
+
const focusMenuItems = (0, react_1.useCallback)(() => {
|
|
78
78
|
const menu = menuRef.current;
|
|
79
79
|
if (!menu)
|
|
80
80
|
return;
|
|
81
|
-
const
|
|
82
|
-
if (
|
|
81
|
+
const menuItems = menu.querySelectorAll(':scope > .menu-items');
|
|
82
|
+
if (menuItems.length === 0) {
|
|
83
83
|
menu.focus();
|
|
84
84
|
}
|
|
85
|
-
|
|
85
|
+
menuItems[0].focus();
|
|
86
86
|
}, []);
|
|
87
87
|
// Override ref to map to internal ref
|
|
88
88
|
// as well as change focus to focus the
|
|
@@ -92,19 +92,13 @@ exports.Menu = (0, react_1.forwardRef)(function Menu(_a, ref) {
|
|
|
92
92
|
if (!menu) {
|
|
93
93
|
return null;
|
|
94
94
|
}
|
|
95
|
-
return Object.assign(Object.assign({}, menu), { focus:
|
|
95
|
+
return Object.assign(Object.assign({}, menu), { focus: focusMenuItems });
|
|
96
96
|
});
|
|
97
|
-
// Focus first menu item on open.
|
|
98
|
-
// This effect is separate from the above
|
|
99
|
-
// `setPositiongStyles` effect as the above
|
|
100
|
-
// is triggered on every render usually as
|
|
101
|
-
// anchorOrigin and transformOrigin
|
|
102
|
-
// are typically not memoized
|
|
103
97
|
(0, react_1.useEffect)(() => {
|
|
104
98
|
if (open) {
|
|
105
|
-
|
|
99
|
+
focusMenuItems();
|
|
106
100
|
}
|
|
107
|
-
}, [open,
|
|
101
|
+
}, [open, focusMenuItems]);
|
|
108
102
|
const classes = (0, classnames_1.default)('ndl-menu', menuSize, className);
|
|
109
103
|
return ((0, jsx_runtime_1.jsx)(MenuContext.Provider, Object.assign({ value: { onClose } }, { children: (0, jsx_runtime_1.jsx)(popover_1.Popover, Object.assign({ tabIndex: -1 }, rest, { open: open, style: Object.assign({ minWidth }, (rest.style || {})), className: classes, ref: menuRef, onClose: onClose }, { children: children })) })));
|
|
110
104
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../src/context-menu/ContextMenu.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,+CAOe;AACf,oCAAoC;AACpC,wCAAmD;AACnD,4DAAoC;
|
|
1
|
+
{"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../src/context-menu/ContextMenu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.Dialog = exports.DialogCloseReason = void 0;
|
|
41
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* Copyright (c) "Neo4j"
|
|
45
|
+
* Neo4j Sweden AB [http://neo4j.com]
|
|
46
|
+
*
|
|
47
|
+
* This file is part of Neo4j.
|
|
48
|
+
*
|
|
49
|
+
* Neo4j is free software: you can redistribute it and/or modify
|
|
50
|
+
* it under the terms of the GNU General Public License as published by
|
|
51
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
52
|
+
* (at your option) any later version.
|
|
53
|
+
*
|
|
54
|
+
* This program is distributed in the hope that it will be useful,
|
|
55
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
56
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
57
|
+
* GNU General Public License for more details.
|
|
58
|
+
*
|
|
59
|
+
* You should have received a copy of the GNU General Public License
|
|
60
|
+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
61
|
+
*/
|
|
62
|
+
const react_1 = __importStar(require("react"));
|
|
63
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
64
|
+
const icons_1 = require("../icons");
|
|
65
|
+
const button_1 = require("../button");
|
|
66
|
+
const modal_1 = require("../modal");
|
|
67
|
+
// Should extend ModalCloseReason
|
|
68
|
+
var DialogCloseReason;
|
|
69
|
+
(function (DialogCloseReason) {
|
|
70
|
+
DialogCloseReason["BACKDROP_CLICK"] = "backdropClick";
|
|
71
|
+
DialogCloseReason["ESCAPE_KEY_DOWN"] = "escapeKeyDown";
|
|
72
|
+
DialogCloseReason["CLOSE_BUTTON_CLICK"] = "closeButtonClick";
|
|
73
|
+
})(DialogCloseReason = exports.DialogCloseReason || (exports.DialogCloseReason = {}));
|
|
74
|
+
const DialogContext = react_1.default.createContext(null);
|
|
75
|
+
const useDialogContext = () => {
|
|
76
|
+
const value = (0, react_1.useContext)(DialogContext);
|
|
77
|
+
if (!value) {
|
|
78
|
+
throw new Error('Accessing `useDialogContext` outside of the context provider');
|
|
79
|
+
}
|
|
80
|
+
return value;
|
|
81
|
+
};
|
|
82
|
+
const convertCloseReason = (reason) => {
|
|
83
|
+
const dialogReason = reason;
|
|
84
|
+
if (Object.values(DialogCloseReason).includes(dialogReason)) {
|
|
85
|
+
return dialogReason;
|
|
86
|
+
}
|
|
87
|
+
throw new Error(`Unknown reason '${reason}' received from popup`);
|
|
88
|
+
};
|
|
89
|
+
const typeIcons = {
|
|
90
|
+
warning: 'ExclamationIcon',
|
|
91
|
+
danger: 'ExclamationCircleIcon',
|
|
92
|
+
info: 'InformationCircleIcon',
|
|
93
|
+
success: 'CheckCircleIcon',
|
|
94
|
+
};
|
|
95
|
+
const Dialog = (_a) => {
|
|
96
|
+
var { open, onClose, children, type, className, size, disableCloseButton = false } = _a, rest = __rest(_a, ["open", "onClose", "children", "type", "className", "size", "disableCloseButton"]);
|
|
97
|
+
const handleCloseClick = (e) => {
|
|
98
|
+
e.preventDefault();
|
|
99
|
+
onClose && onClose(e, DialogCloseReason.CLOSE_BUTTON_CLICK);
|
|
100
|
+
};
|
|
101
|
+
const handleClose = (e, reason) => {
|
|
102
|
+
onClose && onClose(e, reason ? convertCloseReason(reason) : undefined);
|
|
103
|
+
};
|
|
104
|
+
if (!open) {
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
const classes = (0, classnames_1.default)('ndl-dialog', className, {
|
|
108
|
+
'with-icon': !!type,
|
|
109
|
+
'with-close-button': !disableCloseButton,
|
|
110
|
+
});
|
|
111
|
+
const contentWrapperClasses = (0, classnames_1.default)('n-flex n-flex-nowrap', {
|
|
112
|
+
'n-mt-10': !!type,
|
|
113
|
+
});
|
|
114
|
+
return ((0, jsx_runtime_1.jsx)(modal_1.Modal, Object.assign({}, rest, { open: open, onClose: handleClose, className: classes, size: size, role: "dialog" }, { children: (0, jsx_runtime_1.jsxs)(DialogContext.Provider, Object.assign({ value: { type } }, { children: [!disableCloseButton && ((0, jsx_runtime_1.jsx)(button_1.IconButton, Object.assign({ clean: true, buttonSize: "large", className: "dialog-close", onClick: handleCloseClick, role: "button", "data-testid": "dialog-close", "aria-label": "close" }, { children: (0, jsx_runtime_1.jsx)(icons_1.HeroIcon, { iconName: "XIcon" }) }))), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: contentWrapperClasses }, { children: [type && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: `dialog-type-icon ${type}`, "data-testid": "dialog-type-icon" }, { children: (0, jsx_runtime_1.jsx)(icons_1.HeroIcon, { iconName: typeIcons[type], strokeWidth: "0.8" }) }))), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "n-flex n-flex-col n-flex-1 n-w-full" }, { children: children }))] }))] })) })));
|
|
115
|
+
};
|
|
116
|
+
exports.Dialog = Dialog;
|
|
117
|
+
const Actions = (_a) => {
|
|
118
|
+
var { children, className = '' } = _a, rest = __rest(_a, ["children", "className"]);
|
|
119
|
+
const { type } = useDialogContext();
|
|
120
|
+
const classes = (0, classnames_1.default)('ndl-dialog-actions', className);
|
|
121
|
+
let childrenToRender = children;
|
|
122
|
+
// For danger dialogs, we want to convert primary buttons to danger buttons by default
|
|
123
|
+
if (type === 'danger') {
|
|
124
|
+
childrenToRender = react_1.default.Children.map(children, (element) => {
|
|
125
|
+
if (!react_1.default.isValidElement(element))
|
|
126
|
+
return;
|
|
127
|
+
const { color } = element.props;
|
|
128
|
+
if (!color || color === 'primary') {
|
|
129
|
+
return react_1.default.cloneElement(element, Object.assign(Object.assign({}, element.props), { color: 'danger' }));
|
|
130
|
+
}
|
|
131
|
+
return element;
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, rest, { className: classes }, { children: childrenToRender })));
|
|
135
|
+
};
|
|
136
|
+
exports.Dialog.Actions = Actions;
|
|
137
|
+
const Header = (_a) => {
|
|
138
|
+
var { children, className = '' } = _a, rest = __rest(_a, ["children", "className"]);
|
|
139
|
+
const classes = (0, classnames_1.default)('ndl-dialog-header', className);
|
|
140
|
+
return ((0, jsx_runtime_1.jsx)("h4", Object.assign({}, rest, { className: classes }, { children: children })));
|
|
141
|
+
};
|
|
142
|
+
exports.Dialog.Header = Header;
|
|
143
|
+
const Subtitle = (_a) => {
|
|
144
|
+
var { children, className } = _a, rest = __rest(_a, ["children", "className"]);
|
|
145
|
+
const classes = (0, classnames_1.default)('ndl-dialog-subtitle body-large', className);
|
|
146
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, rest, { className: classes }, { children: children })));
|
|
147
|
+
};
|
|
148
|
+
exports.Dialog.Subtitle = Subtitle;
|
|
149
|
+
const Description = (_a) => {
|
|
150
|
+
var { children, className = '' } = _a, rest = __rest(_a, ["children", "className"]);
|
|
151
|
+
const classes = (0, classnames_1.default)('ndl-dialog-description body-medium', className);
|
|
152
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, rest, { className: classes }, { children: children })));
|
|
153
|
+
};
|
|
154
|
+
exports.Dialog.Description = Description;
|
|
155
|
+
const Content = (_a) => {
|
|
156
|
+
var { children, className = '' } = _a, rest = __rest(_a, ["children", "className"]);
|
|
157
|
+
const classes = (0, classnames_1.default)('ndl-dialog-content', className);
|
|
158
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, rest, { className: classes }, { children: children })));
|
|
159
|
+
};
|
|
160
|
+
exports.Dialog.Content = Content;
|
|
161
|
+
//# sourceMappingURL=Dialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/dialog/Dialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) "Neo4j"
|
|
5
|
+
* Neo4j Sweden AB [http://neo4j.com]
|
|
6
|
+
*
|
|
7
|
+
* This file is part of Neo4j.
|
|
8
|
+
*
|
|
9
|
+
* Neo4j is free software: you can redistribute it and/or modify
|
|
10
|
+
* it under the terms of the GNU General Public License as published by
|
|
11
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
12
|
+
* (at your option) any later version.
|
|
13
|
+
*
|
|
14
|
+
* This program is distributed in the hope that it will be useful,
|
|
15
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
16
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
17
|
+
* GNU General Public License for more details.
|
|
18
|
+
*
|
|
19
|
+
* You should have received a copy of the GNU General Public License
|
|
20
|
+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
21
|
+
*/
|
|
22
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
23
|
+
if (k2 === undefined) k2 = k;
|
|
24
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
25
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
26
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
27
|
+
}
|
|
28
|
+
Object.defineProperty(o, k2, desc);
|
|
29
|
+
}) : (function(o, m, k, k2) {
|
|
30
|
+
if (k2 === undefined) k2 = k;
|
|
31
|
+
o[k2] = m[k];
|
|
32
|
+
}));
|
|
33
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
34
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
__exportStar(require("./Dialog"), exports);
|
|
38
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dialog/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;AAEH,2CAAyB"}
|
|
@@ -8,6 +8,7 @@ const classnames_1 = __importDefault(require("classnames"));
|
|
|
8
8
|
const Cloud_1 = __importDefault(require("./icons/Cloud"));
|
|
9
9
|
const File_1 = __importDefault(require("./icons/File"));
|
|
10
10
|
const InvalidFile_1 = __importDefault(require("./icons/InvalidFile"));
|
|
11
|
+
const react_use_1 = require("react-use");
|
|
11
12
|
const react_dropzone_1 = require("react-dropzone");
|
|
12
13
|
/**
|
|
13
14
|
*
|
|
@@ -31,12 +32,14 @@ const isFileValid = (fileType, paramAcceptedFiles) => {
|
|
|
31
32
|
* DragAndDrop Component
|
|
32
33
|
*
|
|
33
34
|
*
|
|
34
|
-
*/
|
|
35
|
+
*/
|
|
36
|
+
const DragAndDrop = (props) => {
|
|
35
37
|
var _a, _b, _c;
|
|
36
38
|
const { dropZoneOptions, supportedFilesDescription, loadingComponent, isTesting, } = props;
|
|
37
39
|
const { getRootProps, getInputProps, isDragActive, draggedFiles, acceptedFiles, } = (0, react_dropzone_1.useDropzone)(Object.assign(Object.assign({
|
|
38
40
|
// If the developer does not pass this function, then the browser will automatically download the dragged file. To empty function avoids that.
|
|
39
41
|
onDrop: () => null }, dropZoneOptions), { disabled: (dropZoneOptions === null || dropZoneOptions === void 0 ? void 0 : dropZoneOptions.disabled) || !!loadingComponent }));
|
|
42
|
+
const [dropZoneRef, { width }] = (0, react_use_1.useMeasure)();
|
|
40
43
|
/**
|
|
41
44
|
* Returns the file extension, and if not supported
|
|
42
45
|
* returns "???" to be displayed in the file icon.
|
|
@@ -56,11 +59,13 @@ const isFileValid = (fileType, paramAcceptedFiles) => {
|
|
|
56
59
|
isFileValid((_a = draggedFiles[0]) === null || _a === void 0 ? void 0 : _a.type, dropZoneOptions === null || dropZoneOptions === void 0 ? void 0 : dropZoneOptions.accept);
|
|
57
60
|
const isUploading = !!loadingComponent;
|
|
58
61
|
const computedFileImage = (isDragActive && isDraggedFileValid) || isUploading ? ((0, jsx_runtime_1.jsx)(File_1.default, {})) : ((0, jsx_runtime_1.jsx)(InvalidFile_1.default, {}));
|
|
59
|
-
const wrapperClasses = (0, classnames_1.default)(`ndl-drag-and-drop`, {
|
|
62
|
+
const wrapperClasses = (0, classnames_1.default)(`ndl-drag-and-drop`, props.className, {
|
|
60
63
|
'drag-active': isDragActive,
|
|
61
64
|
'file-invalid': isDragActive && !isDraggedFileValid,
|
|
62
65
|
});
|
|
63
|
-
return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: wrapperClasses }, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({}, getRootProps(), {
|
|
66
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, props, { ref: dropZoneRef, className: wrapperClasses }, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "ndl-drag-and-drop-inner-content" }, getRootProps(), { children: [(0, jsx_runtime_1.jsx)("input", Object.assign({}, getInputProps())), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "ndl-drag-and-drop-inner" }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "ndl-drag-and-drop-header" }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "upload-img-wrapper" }, { children: width > 230 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(isDragActive || isUploading) && !isTesting && ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: "upload-img-label" }, { children: getFileTypeAbbr(isUploading
|
|
67
|
+
? (_b = acceptedFiles[0]) === null || _b === void 0 ? void 0 : _b.type
|
|
68
|
+
: (_c = draggedFiles[0]) === null || _c === void 0 ? void 0 : _c.type) }))), isUploading || isDragActive ? (computedFileImage) : ((0, jsx_runtime_1.jsx)(Cloud_1.default, {}))] })) })), !isUploading && ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "dnd-title-container" }, { children: [(0, jsx_runtime_1.jsxs)("h5", Object.assign({ className: "dnd-title" }, { children: ["Drag ", (0, jsx_runtime_1.jsx)("span", Object.assign({ className: "n-font-light" }, { children: "&" })), " Drop"] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "dnd-subtitle" }, { children: [(0, jsx_runtime_1.jsx)("span", { children: "or" }), ' ', (0, jsx_runtime_1.jsx)("span", Object.assign({ className: "dnd-browse-link" }, { children: "browse" }))] }))] })))] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "ndl-drag-and-drop-footer" }, { children: [isUploading && (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: loadingComponent }), !isUploading && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "ndl-file-support-text" }, { children: supportedFilesDescription })))] }))] }))] })) })));
|
|
64
69
|
};
|
|
65
70
|
exports.default = DragAndDrop;
|
|
66
71
|
//# sourceMappingURL=DragAndDrop.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DragAndDrop.js","sourceRoot":"","sources":["../../../src/drag-and-drop/DragAndDrop.tsx"],"names":[],"mappings":";;;;;;AAsBA,4DAAoC;AACpC,0DAAuC;AACvC,wDAAqC;AACrC,sEAAmD;AACnD,mDAA8D;
|
|
1
|
+
{"version":3,"file":"DragAndDrop.js","sourceRoot":"","sources":["../../../src/drag-and-drop/DragAndDrop.tsx"],"names":[],"mappings":"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"}
|
package/lib/cjs/index.js
CHANGED
|
@@ -42,6 +42,8 @@ __exportStar(require("./checkbox"), exports);
|
|
|
42
42
|
__exportStar(require("./switch"), exports);
|
|
43
43
|
__exportStar(require("./radio"), exports);
|
|
44
44
|
__exportStar(require("./context-menu"), exports);
|
|
45
|
+
__exportStar(require("./dialog"), exports);
|
|
46
|
+
__exportStar(require("./modal"), exports);
|
|
45
47
|
__exportStar(require("./loading-spinner"), exports);
|
|
46
48
|
__exportStar(require("./tabs"), exports);
|
|
47
49
|
__exportStar(require("./view-selector"), exports);
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB;AACzB,0CAAwB;AACxB,iDAA+B;AAC/B,oDAAkC;AAClC,yCAAuB;AACvB,kDAAgC;AAChC,4CAA0B;AAC1B,0CAAwB;AACxB,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC;AAChC,+CAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB;AACzB,0CAAwB;AACxB,iDAA+B;AAC/B,2CAAyB;AACzB,0CAAwB;AACxB,oDAAkC;AAClC,yCAAuB;AACvB,kDAAgC;AAChC,4CAA0B;AAC1B,0CAAwB;AACxB,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC;AAChC,+CAA6B"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.Modal = exports.ModalCloseReason = void 0;
|
|
41
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* Copyright (c) "Neo4j"
|
|
45
|
+
* Neo4j Sweden AB [http://neo4j.com]
|
|
46
|
+
*
|
|
47
|
+
* This file is part of Neo4j.
|
|
48
|
+
*
|
|
49
|
+
* Neo4j is free software: you can redistribute it and/or modify
|
|
50
|
+
* it under the terms of the GNU General Public License as published by
|
|
51
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
52
|
+
* (at your option) any later version.
|
|
53
|
+
*
|
|
54
|
+
* This program is distributed in the hope that it will be useful,
|
|
55
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
56
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
57
|
+
* GNU General Public License for more details.
|
|
58
|
+
*
|
|
59
|
+
* You should have received a copy of the GNU General Public License
|
|
60
|
+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
61
|
+
*/
|
|
62
|
+
const react_1 = __importStar(require("react"));
|
|
63
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
64
|
+
const portal_1 = require("../portal");
|
|
65
|
+
const trap_focus_1 = require("../trap-focus");
|
|
66
|
+
const utils_1 = require("../_common/utils");
|
|
67
|
+
var ModalCloseReason;
|
|
68
|
+
(function (ModalCloseReason) {
|
|
69
|
+
ModalCloseReason["BACKDROP_CLICK"] = "backdropClick";
|
|
70
|
+
ModalCloseReason["ESCAPE_KEY_DOWN"] = "escapeKeyDown";
|
|
71
|
+
})(ModalCloseReason = exports.ModalCloseReason || (exports.ModalCloseReason = {}));
|
|
72
|
+
const Modal = (_a) => {
|
|
73
|
+
var { open, size = 'medium', onClose, children, className } = _a, rest = __rest(_a, ["open", "size", "onClose", "children", "className"]);
|
|
74
|
+
const toggleScrollbar = (0, utils_1.useDocumentScrollToggle)();
|
|
75
|
+
const backdropClick = react_1.default.useRef(null);
|
|
76
|
+
const handleMouseDown = (event) => {
|
|
77
|
+
// We don't want to close the dialog when clicking the dialog content.
|
|
78
|
+
// Make sure the event starts and ends on the same DOM element.
|
|
79
|
+
backdropClick.current = event.target === event.currentTarget;
|
|
80
|
+
};
|
|
81
|
+
const handleKeyDown = (e) => {
|
|
82
|
+
if (e.key === 'Escape') {
|
|
83
|
+
e.preventDefault();
|
|
84
|
+
onClose && onClose(e, ModalCloseReason.ESCAPE_KEY_DOWN);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
const handleBackdropClick = (e) => {
|
|
88
|
+
if (!backdropClick.current) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
backdropClick.current = null;
|
|
92
|
+
onClose && onClose(e, ModalCloseReason.BACKDROP_CLICK);
|
|
93
|
+
};
|
|
94
|
+
(0, react_1.useEffect)(() => {
|
|
95
|
+
toggleScrollbar(open);
|
|
96
|
+
return () => toggleScrollbar(false);
|
|
97
|
+
}, [open, toggleScrollbar]);
|
|
98
|
+
if (!open) {
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
const classes = (0, classnames_1.default)('ndl-modal', size, className);
|
|
102
|
+
return ((0, jsx_runtime_1.jsx)(portal_1.Portal, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "ndl-modal-root", onKeyDown: handleKeyDown, onClick: handleBackdropClick, "data-testid": "modal-backdrop", tabIndex: -1 }, { children: (0, jsx_runtime_1.jsx)(trap_focus_1.TrapFocus, Object.assign({ open: open }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "ndl-modal-wrapper", onMouseDown: handleMouseDown, tabIndex: -1, "data-testid": "modal-wrapper" }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: classes }, rest, { children: children })) })) })) })) }));
|
|
103
|
+
};
|
|
104
|
+
exports.Modal = Modal;
|
|
105
|
+
//# sourceMappingURL=Modal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../src/modal/Modal.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,+CAAyC;AACzC,4DAAoC;AAEpC,sCAAmC;AACnC,8CAA0C;AAC1C,4CAA2D;AAE3D,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,oDAAgC,CAAA;IAChC,qDAAiC,CAAA;AACnC,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B;AAaM,MAAM,KAAK,GAAG,CAAC,EAOT,EAAE,EAAE;QAPK,EACpB,IAAI,EACJ,IAAI,GAAG,QAAQ,EACf,OAAO,EACP,QAAQ,EACR,SAAS,OAEE,EADR,IAAI,cANa,oDAOrB,CADQ;IAEP,MAAM,eAAe,GAAG,IAAA,+BAAuB,GAAE,CAAC;IAClD,MAAM,aAAa,GAAG,eAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEzD,MAAM,eAAe,GAAG,CAAC,KAAuC,EAAE,EAAE;QAClE,sEAAsE;QACtE,+DAA+D;QAC/D,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,aAAa,CAAC;IAC/D,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,CAAmC,EAAE,EAAE;QAC5D,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE;YACtB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,OAAO,IAAI,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;SACzD;IACH,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,CAAC,CAAmC,EAAE,EAAE;QAClE,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE;YAC1B,OAAO;SACR;QAED,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,eAAe,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IAE5B,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,IAAI,CAAC;KACb;IAED,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAEzD,OAAO,CACL,uBAAC,eAAM,cAEL,8CACE,SAAS,EAAC,gBAAgB,EAC1B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,mBAAmB,iBAChB,gBAAgB,EAC5B,QAAQ,EAAE,CAAC,CAAC,gBAEZ,uBAAC,sBAAS,kBAAC,IAAI,EAAE,IAAI,gBAEnB,8CACE,SAAS,EAAC,mBAAmB,EAC7B,WAAW,EAAE,eAAe,EAC5B,QAAQ,EAAE,CAAC,CAAC,iBACA,eAAe,gBAE3B,8CAAK,SAAS,EAAE,OAAO,IAAM,IAAI,cAC9B,QAAQ,IACL,IACF,IACI,IACR,GACC,CACV,CAAC;AACJ,CAAC,CAAC;AAvEW,QAAA,KAAK,SAuEhB"}
|