blue-react 7.8.0-next.1 → 8.0.0-next.1
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/README.md +22 -3
- package/dist/components/ActionMenu.js +8 -10
- package/dist/components/ActionMenuSwitch.js +2 -2
- package/dist/components/Body.js +1 -1
- package/dist/components/BodyRounded.js +2 -2
- package/dist/components/Grid.js +12 -15
- package/dist/components/Header.js +2 -2
- package/dist/components/HeaderTitle.js +6 -6
- package/dist/components/Intro.js +1 -12
- package/dist/components/Layout.js +288 -0
- package/dist/components/MenuItem.js +15 -11
- package/dist/components/Modal.js +8 -17
- package/dist/components/ModalProvider.js +11 -2
- package/dist/components/Outside.js +0 -4
- package/dist/components/Page.js +2 -7
- package/dist/components/Search.js +7 -7
- package/dist/components/SidebarMenu.js +7 -14
- package/dist/components/Status.js +67 -0
- package/dist/components/{DropdownMenuItem.js → StatusProvider.js} +54 -52
- package/dist/components/Utilities.js +11 -29
- package/dist/style.css +218 -432
- package/dist/style.min.css +4 -4
- package/dist/style.scss +1 -2
- package/dist/styles/_action-menu.scss +9 -9
- package/dist/styles/_general.scss +5 -5
- package/dist/styles/_grid.scss +56 -62
- package/dist/styles/_keyframes.scss +1 -1
- package/dist/styles/_mixins.scss +0 -1
- package/dist/styles/_search.scss +10 -10
- package/dist/styles/_status.scss +14 -14
- package/dist/styles/mixins/_action-menu.scss +7 -7
- package/dist/styles/mixins/_sidebar.scss +22 -22
- package/dist/types/components/Grid.d.ts +12 -12
- package/dist/types/components/Layout.d.ts +110 -0
- package/dist/types/components/MenuItem.d.ts +4 -0
- package/dist/types/components/ModalProvider.d.ts +5 -2
- package/dist/types/components/SidebarMenu.d.ts +1 -5
- package/dist/types/components/Status.d.ts +12 -0
- package/dist/types/components/StatusProvider.d.ts +15 -0
- package/dist/types/components/Utilities.d.ts +0 -12
- package/dist/types/components/shared.d.ts +8 -0
- package/index.d.ts +6 -18
- package/index.js +4 -10
- package/package.json +87 -87
- package/dist/components/ActionMenuItem.js +0 -42
- package/dist/components/Actions.js +0 -107
- package/dist/components/BlueModal.js +0 -147
- package/dist/components/BlueModalProvider.js +0 -133
- package/dist/components/FluentBtn.js +0 -31
- package/dist/components/HeaderActions.js +0 -17
- package/dist/styles/_actions.scss +0 -137
- package/dist/styles/_ripple.scss +0 -30
- package/dist/styles/mixins/_actions.scss +0 -55
- package/dist/types/components/ActionMenuItem.d.ts +0 -41
- package/dist/types/components/Actions.d.ts +0 -31
- package/dist/types/components/BlueModal.d.ts +0 -14
- package/dist/types/components/BlueModalProvider.d.ts +0 -8
- package/dist/types/components/DropdownMenuItem.d.ts +0 -12
- package/dist/types/components/FluentBtn.d.ts +0 -26
- package/dist/types/components/HeaderActions.d.ts +0 -15
|
@@ -76,13 +76,17 @@ function MenuItem(props) {
|
|
|
76
76
|
if (props.href && props.href === window.location.hash) {
|
|
77
77
|
_Utilities.default.scrollToTop();
|
|
78
78
|
}
|
|
79
|
+
|
|
80
|
+
if (props.onClickAttached !== undefined) {
|
|
81
|
+
props.onClickAttached(event);
|
|
82
|
+
}
|
|
79
83
|
};
|
|
80
84
|
|
|
81
85
|
var onClickOutside = function onClickOutside(_ref) {
|
|
82
86
|
var target = _ref.target;
|
|
83
87
|
|
|
84
88
|
// Don't trigger when clicking on MenuItem
|
|
85
|
-
if (!_Utilities.default.hasClass(target, "blue-
|
|
89
|
+
if (!_Utilities.default.hasClass(target, "blue-menu-item-dropdown-toggle") && !_Utilities.default.hasClass(target, "blue-menu-item-label")) {
|
|
86
90
|
setShowDropdown(false);
|
|
87
91
|
}
|
|
88
92
|
};
|
|
@@ -96,13 +100,13 @@ function MenuItem(props) {
|
|
|
96
100
|
(0, _react.useEffect)(function () {
|
|
97
101
|
if (props.showDropdown !== undefined) setShowDropdown(props.showDropdown);
|
|
98
102
|
}, [props.showDropdown]);
|
|
99
|
-
var className = "blue-
|
|
103
|
+
var className = "blue-menu-item btn" + (props.isActive ? " active" : "") + (props.className ? " " + props.className : "") + (props.children ? " blue-menu-item-dropdown-toggle" : "");
|
|
100
104
|
var icon, iconForActive;
|
|
101
105
|
|
|
102
106
|
if (typeof props.icon === "string") {
|
|
103
107
|
// is className
|
|
104
108
|
icon = /*#__PURE__*/_react.default.createElement("span", {
|
|
105
|
-
className: props.icon + (props.children ? " blue-
|
|
109
|
+
className: props.icon + (props.children ? " blue-menu-item-dropdown-icon" : "")
|
|
106
110
|
});
|
|
107
111
|
} else {
|
|
108
112
|
// is element / component
|
|
@@ -112,7 +116,7 @@ function MenuItem(props) {
|
|
|
112
116
|
if (typeof props.iconForActive === "string") {
|
|
113
117
|
// is className
|
|
114
118
|
iconForActive = /*#__PURE__*/_react.default.createElement("span", {
|
|
115
|
-
className: props.iconForActive + (props.children ? " blue-
|
|
119
|
+
className: props.iconForActive + (props.children ? " blue-menu-item-dropdown-icon" : "")
|
|
116
120
|
});
|
|
117
121
|
} else {
|
|
118
122
|
// is element / component
|
|
@@ -128,25 +132,25 @@ function MenuItem(props) {
|
|
|
128
132
|
passingProps[key] = props[key];
|
|
129
133
|
}
|
|
130
134
|
});
|
|
131
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
135
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/(0, _react.createElement)(props.elementType || (props.href ? "a" : "button"), _objectSpread(_objectSpread({}, passingProps), {}, {
|
|
132
136
|
className: className + (props.isActive || active ? " active" : "") + (props.label ? " has-label" : ""),
|
|
133
137
|
onClick: onClick
|
|
134
138
|
}), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
|
|
135
|
-
className: (0, _clsx.default)("blue-
|
|
139
|
+
className: (0, _clsx.default)("blue-menu-item-icon", {
|
|
136
140
|
hasIconForActive: iconForActive
|
|
137
141
|
})
|
|
138
142
|
}, icon), iconForActive && /*#__PURE__*/_react.default.createElement("span", {
|
|
139
|
-
className: "blue-
|
|
143
|
+
className: "blue-menu-item-icon iconForActive"
|
|
140
144
|
}, iconForActive), props.label && /*#__PURE__*/_react.default.createElement("span", {
|
|
141
|
-
className: "blue-
|
|
145
|
+
className: "blue-menu-item-label text-truncate"
|
|
142
146
|
}, props.label), props.children && /*#__PURE__*/_react.default.createElement(_Caret.default, {
|
|
143
147
|
open: showDropdown,
|
|
144
148
|
mirrored: true,
|
|
145
|
-
className: "blue-
|
|
149
|
+
className: "blue-menu-item-dropdown-caret mt-2"
|
|
146
150
|
}))), showDropdown && (props.supportOutside ? /*#__PURE__*/_react.default.createElement(_Outside.default, {
|
|
147
|
-
className: "blue-
|
|
151
|
+
className: "blue-menu-item-dropdown ".concat(props.dropdownClassName),
|
|
148
152
|
onClickOutside: onClickOutside
|
|
149
153
|
}, props.children) : /*#__PURE__*/_react.default.createElement("div", {
|
|
150
|
-
className: "blue-
|
|
154
|
+
className: "blue-menu-item-dropdown ".concat(props.dropdownClassName)
|
|
151
155
|
}, props.children)));
|
|
152
156
|
}
|
package/dist/components/Modal.js
CHANGED
|
@@ -7,10 +7,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = Modal;
|
|
9
9
|
|
|
10
|
-
var _Utilities = _interopRequireDefault(require("./Utilities"));
|
|
11
|
-
|
|
12
|
-
var _FluentBtn = _interopRequireDefault(require("./FluentBtn"));
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
11
|
|
|
16
12
|
var _bootstrap = require("bootstrap");
|
|
@@ -21,8 +17,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
21
17
|
|
|
22
18
|
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; }
|
|
23
19
|
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
20
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
27
21
|
|
|
28
22
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -35,11 +29,11 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
35
29
|
|
|
36
30
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
37
31
|
|
|
38
|
-
/**
|
|
39
|
-
* Simple modal/dialog. Designed to work as an alternative to JavaScript's native `alert()`, `prompt()` and `confirm()` functions.
|
|
40
|
-
* It uses Bootstrap's Modal components.
|
|
41
|
-
*
|
|
42
|
-
* For easy use, you should use the hook `useModal` together with `ModalProvider`. See the example below.
|
|
32
|
+
/**
|
|
33
|
+
* Simple modal/dialog. Designed to work as an alternative to JavaScript's native `alert()`, `prompt()` and `confirm()` functions.
|
|
34
|
+
* It uses Bootstrap's Modal components.
|
|
35
|
+
*
|
|
36
|
+
* For easy use, you should use the hook `useModal` together with `ModalProvider`. See the example below.
|
|
43
37
|
*/
|
|
44
38
|
function Modal(_ref) {
|
|
45
39
|
var modalContent = _ref.modalContent,
|
|
@@ -84,9 +78,6 @@ function Modal(_ref) {
|
|
|
84
78
|
(0, _react.useEffect)(function () {
|
|
85
79
|
setInput(defaultInput || "");
|
|
86
80
|
}, [defaultInput]);
|
|
87
|
-
(0, _react.useEffect)(function () {
|
|
88
|
-
_Utilities.default.registerFluentBtns();
|
|
89
|
-
});
|
|
90
81
|
(0, _react.useEffect)(function () {
|
|
91
82
|
var myModal = modalRef.current;
|
|
92
83
|
|
|
@@ -134,15 +125,15 @@ function Modal(_ref) {
|
|
|
134
125
|
autoFocus: true
|
|
135
126
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
136
127
|
className: "modal-footer"
|
|
137
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
128
|
+
}, /*#__PURE__*/_react.default.createElement("button", {
|
|
138
129
|
type: "submit",
|
|
139
130
|
className: "btn btn-primary d-block w-100",
|
|
140
131
|
style: btnStyle
|
|
141
|
-
}, type === "verify" ? (0, _shared.getPhrase)("Yes") : "OK"), (type === "ask" || type === "verify") && (type === "verify" ? /*#__PURE__*/_react.default.createElement(
|
|
132
|
+
}, type === "verify" ? (0, _shared.getPhrase)("Yes") : "OK"), (type === "ask" || type === "verify") && (type === "verify" ? /*#__PURE__*/_react.default.createElement("button", {
|
|
142
133
|
className: "btn btn-outline-primary d-block w-100",
|
|
143
134
|
style: btnStyle,
|
|
144
135
|
onClick: sayNo
|
|
145
|
-
}, (0, _shared.getPhrase)("No")) : /*#__PURE__*/_react.default.createElement(
|
|
136
|
+
}, (0, _shared.getPhrase)("No")) : /*#__PURE__*/_react.default.createElement("button", {
|
|
146
137
|
className: "btn btn-outline-primary d-block w-100",
|
|
147
138
|
style: btnStyle,
|
|
148
139
|
onClick: cancel
|
|
@@ -11,6 +11,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _Modal = _interopRequireDefault(require("./Modal"));
|
|
13
13
|
|
|
14
|
+
var _excluded = ["children"];
|
|
15
|
+
|
|
14
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
17
|
|
|
16
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -31,13 +33,20 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
31
33
|
|
|
32
34
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
35
|
|
|
36
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
37
|
+
|
|
38
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
39
|
+
|
|
34
40
|
var ModalContext = /*#__PURE__*/(0, _react.createContext)({
|
|
35
41
|
ask: undefined,
|
|
36
42
|
tell: undefined,
|
|
37
43
|
verify: undefined
|
|
38
44
|
});
|
|
39
45
|
|
|
40
|
-
var ModalProvider = function ModalProvider(
|
|
46
|
+
var ModalProvider = function ModalProvider(_ref) {
|
|
47
|
+
var children = _ref.children,
|
|
48
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
49
|
+
|
|
41
50
|
var _useState = (0, _react.useState)("tell"),
|
|
42
51
|
_useState2 = _slicedToArray(_useState, 2),
|
|
43
52
|
type = _useState2[0],
|
|
@@ -109,7 +118,7 @@ var ModalProvider = function ModalProvider(props) {
|
|
|
109
118
|
tell: tell,
|
|
110
119
|
verify: verify
|
|
111
120
|
}
|
|
112
|
-
},
|
|
121
|
+
}, rest), children, /*#__PURE__*/_react.default.createElement(_Modal.default, {
|
|
113
122
|
modalContent: modalContent,
|
|
114
123
|
unSetModalContent: unSetModalContent,
|
|
115
124
|
onSubmit: onSubmit,
|
|
@@ -23,10 +23,6 @@ function useOutside(ref, callback) {
|
|
|
23
23
|
* Alert if clicked on outside of element
|
|
24
24
|
*/
|
|
25
25
|
function handleClickOutside(event) {
|
|
26
|
-
console.log({
|
|
27
|
-
target: event.target
|
|
28
|
-
});
|
|
29
|
-
|
|
30
26
|
if (ref.current && !ref.current.contains(event.target) && callback) {
|
|
31
27
|
callback(event);
|
|
32
28
|
}
|
package/dist/components/Page.js
CHANGED
|
@@ -11,8 +11,6 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
13
13
|
|
|
14
|
-
var _Utilities = _interopRequireDefault(require("./Utilities"));
|
|
15
|
-
|
|
16
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
15
|
|
|
18
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -44,12 +42,9 @@ function Page(_ref) {
|
|
|
44
42
|
setHasHeader = _useState2[1];
|
|
45
43
|
|
|
46
44
|
var elementRef = (0, _react.useRef)(null);
|
|
47
|
-
(0, _react.useEffect)(function () {
|
|
48
|
-
_Utilities.default.registerFluentBtns();
|
|
49
|
-
});
|
|
50
45
|
(0, _react.useEffect)(function () {
|
|
51
46
|
if (elementRef && elementRef.current) {
|
|
52
|
-
var headerElement = elementRef.current.querySelector(".blue-
|
|
47
|
+
var headerElement = elementRef.current.querySelector(".blue-header");
|
|
53
48
|
setHasHeader(headerElement !== null && headerElement !== undefined);
|
|
54
49
|
}
|
|
55
50
|
}, [elementRef]);
|
|
@@ -61,7 +56,7 @@ function Page(_ref) {
|
|
|
61
56
|
}
|
|
62
57
|
}, [title]);
|
|
63
58
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
64
|
-
className: (0, _clsx.default)("blue-
|
|
59
|
+
className: (0, _clsx.default)("blue-page-wrapper", {
|
|
65
60
|
hasHeader: hasHeader
|
|
66
61
|
}),
|
|
67
62
|
ref: elementRef
|
|
@@ -46,7 +46,7 @@ function Search(props) {
|
|
|
46
46
|
resetIcon = props.resetIcon,
|
|
47
47
|
sidebar = props.sidebar;
|
|
48
48
|
|
|
49
|
-
var SearchControlId = "blue-
|
|
49
|
+
var SearchControlId = "blue-search-control-" + _Utilities.default.guid();
|
|
50
50
|
|
|
51
51
|
var _useState = (0, _react.useState)(props.value || ""),
|
|
52
52
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -65,14 +65,14 @@ function Search(props) {
|
|
|
65
65
|
};
|
|
66
66
|
|
|
67
67
|
return /*#__PURE__*/_react.default.createElement("form", {
|
|
68
|
-
className: "blue-
|
|
68
|
+
className: "blue-search " + (body ? "blue-search-body " : "") + (focus ? "focus " : "") + (sidebar ? "blue-search-sidebar " : "") + className,
|
|
69
69
|
onSubmit: function onSubmit(event) {
|
|
70
70
|
event.preventDefault();
|
|
71
71
|
toggleSidebar();
|
|
72
72
|
if (_onSubmit) _onSubmit(event);
|
|
73
73
|
}
|
|
74
74
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
75
|
-
className: "blue-
|
|
75
|
+
className: "blue-search-input-group input-group"
|
|
76
76
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
77
77
|
className: "input-group-text",
|
|
78
78
|
onClick: function onClick() {
|
|
@@ -101,7 +101,7 @@ function Search(props) {
|
|
|
101
101
|
if (_onChange) _onChange(event);
|
|
102
102
|
},
|
|
103
103
|
id: SearchControlId,
|
|
104
|
-
className: "blue-
|
|
104
|
+
className: "blue-search-control form-control default input-lg",
|
|
105
105
|
placeholder: placeholder,
|
|
106
106
|
autoFocus: autoFocus,
|
|
107
107
|
style: {
|
|
@@ -117,7 +117,7 @@ function Search(props) {
|
|
|
117
117
|
className: "input-group-btn"
|
|
118
118
|
}, /*#__PURE__*/_react.default.createElement("button", {
|
|
119
119
|
type: "button",
|
|
120
|
-
className: "blue-
|
|
120
|
+
className: "blue-search-reset-btn btn btn-link btn-lg",
|
|
121
121
|
onClick: function onClick() {
|
|
122
122
|
var _document$getElementB2;
|
|
123
123
|
|
|
@@ -140,7 +140,7 @@ function Search(props) {
|
|
|
140
140
|
d: "M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"
|
|
141
141
|
}))))), sidebar && /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
|
|
142
142
|
href: "#",
|
|
143
|
-
className: "blue-
|
|
143
|
+
className: "blue-search-btn",
|
|
144
144
|
icon: icon,
|
|
145
145
|
onClick: function onClick(event) {
|
|
146
146
|
event.preventDefault();
|
|
@@ -149,7 +149,7 @@ function Search(props) {
|
|
|
149
149
|
var _document$querySelect;
|
|
150
150
|
|
|
151
151
|
;
|
|
152
|
-
(_document$querySelect = document.querySelector(".blue-
|
|
152
|
+
(_document$querySelect = document.querySelector(".blue-search-control")) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.select();
|
|
153
153
|
}, 200);
|
|
154
154
|
}
|
|
155
155
|
}));
|
|
@@ -26,12 +26,9 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
26
26
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
|
-
* Sidebar for the `
|
|
29
|
+
* Sidebar for the `Layout` component.
|
|
30
30
|
*/
|
|
31
31
|
function SidebarMenu(props) {
|
|
32
|
-
var _props$fluent = props.fluent,
|
|
33
|
-
fluent = _props$fluent === void 0 ? true : _props$fluent;
|
|
34
|
-
|
|
35
32
|
var _useState = (0, _react.useState)(false),
|
|
36
33
|
_useState2 = _slicedToArray(_useState, 2),
|
|
37
34
|
hasShadow = _useState2[0],
|
|
@@ -44,7 +41,7 @@ function SidebarMenu(props) {
|
|
|
44
41
|
};
|
|
45
42
|
|
|
46
43
|
(0, _react.useEffect)(function () {
|
|
47
|
-
var blueAppSidebar = document.querySelector(".blue-
|
|
44
|
+
var blueAppSidebar = document.querySelector(".blue-sidebar");
|
|
48
45
|
window.addEventListener("resize", updateDimensions);
|
|
49
46
|
|
|
50
47
|
if (blueAppSidebar.scrollHeight > blueAppSidebar.clientHeight) {
|
|
@@ -63,18 +60,14 @@ function SidebarMenu(props) {
|
|
|
63
60
|
};
|
|
64
61
|
}, []);
|
|
65
62
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
66
|
-
className: "blue-
|
|
63
|
+
className: "blue-sidebar " + (props.sidebarClass ? props.sidebarClass : ""),
|
|
67
64
|
style: props.sidebarStyle ? props.sidebarStyle : {}
|
|
68
65
|
}, props.topContent && /*#__PURE__*/_react.default.createElement("div", {
|
|
69
|
-
className: "blue-
|
|
66
|
+
className: "blue-sidebar-top"
|
|
70
67
|
}, props.topContent), /*#__PURE__*/_react.default.createElement("div", {
|
|
71
|
-
className: "blue-
|
|
68
|
+
className: "blue-menu " + (props.menuClass ? props.menuClass : ""),
|
|
72
69
|
style: props.menuStyle ? props.menuStyle : {}
|
|
73
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
74
|
-
className:
|
|
75
|
-
}, fluent === true ? /*#__PURE__*/_react.default.createElement("div", {
|
|
76
|
-
className: "fluent-btn-ball"
|
|
77
|
-
}) : /*#__PURE__*/_react.default.createElement(_react.Fragment, null), props.children)), props.bottomContent && /*#__PURE__*/_react.default.createElement("div", {
|
|
78
|
-
className: "blue-app-sidebar-bottom " + (hasShadow ? " has-shadow" : "")
|
|
70
|
+
}, props.children), props.bottomContent && /*#__PURE__*/_react.default.createElement("div", {
|
|
71
|
+
className: "blue-sidebar-bottom " + (hasShadow ? " has-shadow" : "")
|
|
79
72
|
}, props.bottomContent));
|
|
80
73
|
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = Status;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function Status(_ref) {
|
|
15
|
+
var alert = _ref.alert,
|
|
16
|
+
onUnsetAlert = _ref.onUnsetAlert,
|
|
17
|
+
_ref$successIcon = _ref.successIcon,
|
|
18
|
+
successIcon = _ref$successIcon === void 0 ? "✔" : _ref$successIcon,
|
|
19
|
+
_ref$infoIcon = _ref.infoIcon,
|
|
20
|
+
infoIcon = _ref$infoIcon === void 0 ? "ℹ️" : _ref$infoIcon,
|
|
21
|
+
_ref$warningIcon = _ref.warningIcon,
|
|
22
|
+
warningIcon = _ref$warningIcon === void 0 ? "⚠️" : _ref$warningIcon,
|
|
23
|
+
_ref$dangerIcon = _ref.dangerIcon,
|
|
24
|
+
dangerIcon = _ref$dangerIcon === void 0 ? "❌" : _ref$dangerIcon,
|
|
25
|
+
_ref$status = _ref.status,
|
|
26
|
+
status = _ref$status === void 0 ? null : _ref$status;
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
28
|
+
className: (0, _clsx.default)("blue-status-circle blue-loading blue-status-loading", {
|
|
29
|
+
"d-block": status === "loading" || alert && alert.status === "loading"
|
|
30
|
+
})
|
|
31
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
32
|
+
className: "spinner-bounce-circle"
|
|
33
|
+
}, /*#__PURE__*/_react.default.createElement("div", null), /*#__PURE__*/_react.default.createElement("div", null))), /*#__PURE__*/_react.default.createElement("div", {
|
|
34
|
+
className: (0, _clsx.default)("blue-status-circle blue-status-success", {
|
|
35
|
+
"d-flex": status === "success" || alert && alert.status === "success"
|
|
36
|
+
})
|
|
37
|
+
}, successIcon), /*#__PURE__*/_react.default.createElement("div", {
|
|
38
|
+
className: (0, _clsx.default)("blue-status-circle blue-status-info", {
|
|
39
|
+
"d-flex": status === "info" || alert && alert.status === "info"
|
|
40
|
+
})
|
|
41
|
+
}, infoIcon), /*#__PURE__*/_react.default.createElement("div", {
|
|
42
|
+
className: (0, _clsx.default)("blue-status-circle blue-status-warning", {
|
|
43
|
+
"d-flex": status === "warning" || alert && alert.status === "warning"
|
|
44
|
+
})
|
|
45
|
+
}, warningIcon), /*#__PURE__*/_react.default.createElement("div", {
|
|
46
|
+
className: (0, _clsx.default)("blue-status-circle blue-status-danger", {
|
|
47
|
+
"d-flex": status === "danger" || alert && alert.status === "danger"
|
|
48
|
+
})
|
|
49
|
+
}, dangerIcon), /*#__PURE__*/_react.default.createElement("div", {
|
|
50
|
+
className: "blue-status-alert alert"
|
|
51
|
+
}, /*#__PURE__*/_react.default.createElement("button", {
|
|
52
|
+
type: "button",
|
|
53
|
+
className: "btn-close float-end mb-1",
|
|
54
|
+
"aria-label": "Close"
|
|
55
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
56
|
+
className: "alert-body"
|
|
57
|
+
})), alert && /*#__PURE__*/_react.default.createElement("div", {
|
|
58
|
+
className: (0, _clsx.default)("blue-status-alert alert d-block", alert.alertClassName, alert.status && "alert-".concat(alert.status))
|
|
59
|
+
}, /*#__PURE__*/_react.default.createElement("button", {
|
|
60
|
+
type: "button",
|
|
61
|
+
className: "btn-close float-end mb-1 d-inline-block",
|
|
62
|
+
"aria-label": "Close",
|
|
63
|
+
onClick: onUnsetAlert
|
|
64
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
65
|
+
className: "alert-body"
|
|
66
|
+
}, alert.title && /*#__PURE__*/_react.default.createElement("h2", null, alert.title), alert.detailText && /*#__PURE__*/_react.default.createElement("span", null, alert.detailText))));
|
|
67
|
+
}
|
|
@@ -5,13 +5,13 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.
|
|
8
|
+
exports.StatusProvider = exports.useStatus = void 0;
|
|
9
9
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _Status = _interopRequireDefault(require("./Status"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _excluded = ["children", "successIcon", "infoIcon", "warningIcon", "dangerIcon"];
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
@@ -33,59 +33,61 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
33
33
|
|
|
34
34
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
35
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
37
|
+
|
|
38
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
39
|
+
|
|
40
|
+
var StatusContext = /*#__PURE__*/(0, _react.createContext)({
|
|
41
|
+
setAlert: undefined,
|
|
42
|
+
setStatus: undefined
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
var StatusProvider = function StatusProvider(_ref) {
|
|
46
|
+
var children = _ref.children,
|
|
47
|
+
successIcon = _ref.successIcon,
|
|
48
|
+
infoIcon = _ref.infoIcon,
|
|
49
|
+
warningIcon = _ref.warningIcon,
|
|
50
|
+
dangerIcon = _ref.dangerIcon,
|
|
51
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
52
|
+
|
|
53
|
+
var _useState = (0, _react.useState)(null),
|
|
41
54
|
_useState2 = _slicedToArray(_useState, 2),
|
|
42
|
-
|
|
43
|
-
|
|
55
|
+
alert = _useState2[0],
|
|
56
|
+
setAlert = _useState2[1];
|
|
44
57
|
|
|
45
|
-
var _useState3 = (0, _react.useState)(
|
|
58
|
+
var _useState3 = (0, _react.useState)(null),
|
|
46
59
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
47
|
-
|
|
48
|
-
|
|
60
|
+
status = _useState4[0],
|
|
61
|
+
setStatus = _useState4[1];
|
|
49
62
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
63
|
+
return /*#__PURE__*/_react.default.createElement(StatusContext.Provider, _extends({
|
|
64
|
+
value: {
|
|
65
|
+
setAlert: setAlert,
|
|
66
|
+
setStatus: setStatus
|
|
53
67
|
}
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
68
|
+
}, rest), children, /*#__PURE__*/_react.default.createElement(_Status.default, {
|
|
69
|
+
alert: alert || undefined,
|
|
70
|
+
onUnsetAlert: function onUnsetAlert() {
|
|
71
|
+
return setAlert(null);
|
|
72
|
+
},
|
|
73
|
+
successIcon: successIcon,
|
|
74
|
+
infoIcon: infoIcon,
|
|
75
|
+
warningIcon: warningIcon,
|
|
76
|
+
dangerIcon: dangerIcon,
|
|
77
|
+
status: status
|
|
78
|
+
}));
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
exports.StatusProvider = StatusProvider;
|
|
82
|
+
|
|
83
|
+
var useStatus = function useStatus() {
|
|
84
|
+
var context = (0, _react.useContext)(StatusContext);
|
|
85
|
+
|
|
86
|
+
if (context === undefined) {
|
|
87
|
+
throw new Error("useStatus must be used within a StatusProvider");
|
|
66
88
|
}
|
|
67
89
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
className: "btn-group w-100"
|
|
73
|
-
}, /*#__PURE__*/_react.default.createElement("a", _extends({}, id, {
|
|
74
|
-
className: "blue-app-toggle-page blue-app-sidebar-btn btn pe-0 " + (active ? "active" : ""),
|
|
75
|
-
href: props.to
|
|
76
|
-
}), icon, /*#__PURE__*/_react.default.createElement("span", {
|
|
77
|
-
className: "blue-app-sidebar-label"
|
|
78
|
-
}, props.label)), /*#__PURE__*/_react.default.createElement("button", {
|
|
79
|
-
type: "button",
|
|
80
|
-
className: "btn blue-app-sidebar-btn w-auto ps-0",
|
|
81
|
-
onClick: handleClick
|
|
82
|
-
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
83
|
-
className: "sr-only"
|
|
84
|
-
}, "Toggle Dropdown"), /*#__PURE__*/_react.default.createElement(_Caret.default, {
|
|
85
|
-
open: showDropdown,
|
|
86
|
-
mirrored: true,
|
|
87
|
-
className: "w-auto ps-5 mt-2"
|
|
88
|
-
}))), showDropdown && /*#__PURE__*/_react.default.createElement("div", {
|
|
89
|
-
className: "blue-app-sidebar-dropdown"
|
|
90
|
-
}, props.children));
|
|
91
|
-
}
|
|
90
|
+
return context;
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
exports.useStatus = useStatus;
|
|
@@ -36,25 +36,25 @@ Utilities.toggleClass = function (element, className) {
|
|
|
36
36
|
};
|
|
37
37
|
|
|
38
38
|
Utilities.startLoading = function () {
|
|
39
|
-
document.querySelectorAll(".blue-
|
|
39
|
+
document.querySelectorAll(".blue-loading")[0].style.display = "block";
|
|
40
40
|
};
|
|
41
41
|
|
|
42
42
|
Utilities.finishLoading = function () {
|
|
43
|
-
document.querySelectorAll(".blue-
|
|
43
|
+
document.querySelectorAll(".blue-loading")[0].style.display = "";
|
|
44
44
|
};
|
|
45
45
|
|
|
46
46
|
Utilities.showSuccess = function () {
|
|
47
|
-
document.querySelectorAll(".blue-
|
|
47
|
+
document.querySelectorAll(".blue-status-success")[0].style.display = "flex";
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
Utilities.hideSuccess = function () {
|
|
51
|
-
document.querySelectorAll(".blue-
|
|
51
|
+
document.querySelectorAll(".blue-status-success")[0].style.display = "";
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
Utilities.toggleActions = function () {
|
|
55
|
-
this.toggleClass(document.querySelector(".blue-
|
|
56
|
-
this.toggleClass(document.querySelector(".blue-
|
|
57
|
-
var els = document.querySelectorAll(".blue-
|
|
55
|
+
this.toggleClass(document.querySelector(".blue-wrapper"), "active");
|
|
56
|
+
this.toggleClass(document.querySelector(".blue-layout"), "wrapper-in");
|
|
57
|
+
var els = document.querySelectorAll(".blue-actions");
|
|
58
58
|
|
|
59
59
|
for (var i = 0; i < els.length; i++) {
|
|
60
60
|
this.toggleClass(els[i], "open");
|
|
@@ -63,8 +63,8 @@ Utilities.toggleActions = function () {
|
|
|
63
63
|
|
|
64
64
|
Utilities.resetAlertMessage = function () {
|
|
65
65
|
var alertClassName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "info";
|
|
66
|
-
var alertElement = document.querySelectorAll(".blue-
|
|
67
|
-
document.querySelectorAll(".blue-
|
|
66
|
+
var alertElement = document.querySelectorAll(".blue-status-alert")[0];
|
|
67
|
+
document.querySelectorAll(".blue-status-" + alertClassName)[0].style.display = "";
|
|
68
68
|
alertElement.style.display = "";
|
|
69
69
|
this.removeClass(alertElement, "alert-" + (alertClassName === "loading" ? "info" : alertClassName));
|
|
70
70
|
};
|
|
@@ -75,13 +75,13 @@ Utilities.setAlertMessage = function (message) {
|
|
|
75
75
|
var alertClassName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "info";
|
|
76
76
|
var close = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
|
|
77
77
|
var detailText = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
|
|
78
|
-
var alertElement = document.querySelectorAll(".blue-
|
|
78
|
+
var alertElement = document.querySelectorAll(".blue-status-alert")[0];
|
|
79
79
|
|
|
80
80
|
if (alertClassName.indexOf("alert-") > -1) {
|
|
81
81
|
alertClassName = alertClassName.replace("alert-", "");
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
document.querySelectorAll(".blue-
|
|
84
|
+
document.querySelectorAll(".blue-status-" + alertClassName)[0].style.display = "flex";
|
|
85
85
|
alertElement.style.display = "block";
|
|
86
86
|
this.addClass(alertElement, "alert-" + (alertClassName === "loading" ? "info" : alertClassName));
|
|
87
87
|
alertElement.querySelector(".alert-body").innerHTML = "<h2>" + message + "</h2>";
|
|
@@ -117,24 +117,6 @@ Utilities.scrollToTop = function () {
|
|
|
117
117
|
top: 0
|
|
118
118
|
});
|
|
119
119
|
};
|
|
120
|
-
/**
|
|
121
|
-
* @deprecated Fluent buttons got removed from blue-react.
|
|
122
|
-
*/
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
Utilities.fluentBtnsListener = function (event, btn) {};
|
|
126
|
-
/**
|
|
127
|
-
* @deprecated Fluent buttons got removed from blue-react.
|
|
128
|
-
*/
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
Utilities.unregisterFluentBtns = function () {};
|
|
132
|
-
/**
|
|
133
|
-
* @deprecated Fluent buttons got removed from blue-react.
|
|
134
|
-
*/
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
Utilities.registerFluentBtns = function () {};
|
|
138
120
|
|
|
139
121
|
Utilities.fetchData = function (input) {
|
|
140
122
|
var init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
|