@unbxd-ui/unbxd-react-components 0.2.145 → 0.2.147
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 +17 -1
- package/components/Accordian/Accordian.js +1 -2
- package/components/Accordian/Accordian.stories.js +140 -117
- package/components/Button/Button.stories.js +167 -61
- package/components/Button/DropdownButton.js +1 -2
- package/components/Button/index.js +1 -2
- package/components/DataLoader/DataLoader.js +1 -2
- package/components/DataLoader/DataLoader.stories.js +239 -53
- package/components/Form/Checkbox.js +5 -4
- package/components/Form/DragDropFileUploader.js +1 -2
- package/components/Form/Dropdown.js +1 -2
- package/components/Form/FileUploader.js +1 -2
- package/components/Form/Form.js +1 -2
- package/components/Form/Input.js +1 -2
- package/components/Form/RadioList.js +1 -2
- package/components/Form/RangeSlider.js +1 -2
- package/components/Form/SearchableDropdown.js +563 -0
- package/components/Form/ServerPaginatedDDList.js +17 -11
- package/components/Form/Textarea.js +1 -2
- package/components/Form/Toggle.js +1 -2
- package/components/Form/formCore.css +1 -1
- package/components/Form/formTheme.css +1 -1
- package/components/Form/index.js +7 -0
- package/components/Form/stories/Checkbox.stories.js +138 -39
- package/components/Form/stories/Dropdown.stories.js +322 -91
- package/components/Form/stories/FileUploader.stories.js +177 -18
- package/components/Form/stories/Input.stories.js +115 -0
- package/components/Form/stories/RangeSlider.stories.js +161 -63
- package/components/Form/stories/SearchableDropdown.stories.js +189 -0
- package/components/Form/stories/ServerPaginatedDropdown.stories.js +365 -0
- package/components/Form/stories/Textarea.stories.js +112 -33
- package/components/Form/stories/Toggle.stories.js +192 -13
- package/components/Form/variables.css +0 -0
- package/components/InlineModal/InlineModal.js +1 -2
- package/components/InlineModal/InlineModal.stories.js +239 -45
- package/components/InlineModal/index.js +1 -2
- package/components/InlineModal/inlineModalCore.css +1 -1
- package/components/List/List.stories.js +238 -0
- package/components/Modal/Modal.js +1 -2
- package/components/Modal/Modal.stories.js +256 -37
- package/components/Modal/modalCore.css +1 -1
- package/components/NotificationComponent/NotificationComponent.js +1 -2
- package/components/NotificationComponent/NotificationComponent.stories.js +170 -18
- package/components/PageLoader/PageLoader.js +84 -0
- package/components/PageLoader/PageLoader.stories.js +276 -0
- package/components/PageLoader/index.js +9 -0
- package/components/PageLoader/pageLoaderCore.css +1 -0
- package/components/ProgressBar/ProgressBar.css +0 -0
- package/components/ProgressBar/ProgressBar.stories.js +202 -9
- package/components/ProgressBar/progressBarCore.css +1 -1
- package/components/Table/BaseTable.js +84 -354
- package/components/Table/Table.js +6 -359
- package/components/Table/Table.stories.js +2109 -150
- package/components/Table/TableChild.js +383 -0
- package/components/Table/TableConstants.js +15 -0
- package/components/Table/hooks/usePrevious.js +14 -0
- package/components/Table/index.js +13 -0
- package/components/Table/tableCore.css +1 -1
- package/components/TableOld/BaseTable.js +373 -0
- package/components/TableOld/PaginationComponent.js +86 -0
- package/components/TableOld/TableOld.js +367 -0
- package/components/TableOld/index.js +15 -0
- package/components/TabsComponent/TabsComponent.js +1 -2
- package/components/TabsComponent/TabsComponent.stories.js +290 -52
- package/components/ToastNotification/ToastNotificationWrapper.js +212 -0
- package/components/ToastNotification/ToastNotificationWrapper.stories.js +554 -0
- package/components/ToastNotification/index.js +40 -0
- package/components/ToastNotification/toastNotificationCore.css +1 -0
- package/components/Tooltip/Tooltip.js +221 -83
- package/components/Tooltip/Tooltip.stories.js +379 -14
- package/components/Tooltip/tooltipCore.css +1 -1
- package/components/Tooltip/tooltipTheme.css +1 -1
- package/components/core.css +2 -3
- package/components/core.scss +17 -0
- package/components/index.js +58 -2
- package/components/theme.css +2 -3
- package/core/dataLoader.js +5 -2
- package/index.js +54 -0
- package/package.json +31 -20
- package/components/Button/DropdownButton.stories.js +0 -49
- package/components/Form/stories/DragDropFileUploader.stories.js +0 -25
- package/components/Form/stories/FormDefault.stories.js +0 -115
- package/components/Form/stories/RadioList.stories.js +0 -53
- package/components/Form/stories/TextInput.stories.js +0 -76
- package/components/Form/stories/form.stories.js +0 -233
- package/components/List/list.stories.js +0 -35
- package/core/dataLoader.stories.js +0 -119
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = exports.WithCustomListItem = exports.Interactive = exports.EmptyList = exports.Default = exports.CustomStyling = exports.ComplexList = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _List = _interopRequireDefault(require("./List"));
|
|
10
|
+
var _Button = _interopRequireWildcard(require("../Button/Button"));
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
13
|
+
var meta = {
|
|
14
|
+
title: 'Components/List',
|
|
15
|
+
component: _List["default"],
|
|
16
|
+
parameters: {
|
|
17
|
+
layout: 'centered'
|
|
18
|
+
},
|
|
19
|
+
tags: ['autodocs'],
|
|
20
|
+
argTypes: {
|
|
21
|
+
className: {
|
|
22
|
+
control: 'text',
|
|
23
|
+
description: 'Additional CSS classes for the list'
|
|
24
|
+
},
|
|
25
|
+
items: {
|
|
26
|
+
control: 'object',
|
|
27
|
+
description: 'Array of items to display in the list'
|
|
28
|
+
},
|
|
29
|
+
idAttribute: {
|
|
30
|
+
control: 'text',
|
|
31
|
+
description: 'The attribute to use as the unique identifier for items'
|
|
32
|
+
},
|
|
33
|
+
showNoDataMsg: {
|
|
34
|
+
control: 'boolean',
|
|
35
|
+
description: 'Whether to show a message when there are no items'
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
var _default = exports["default"] = meta; // Sample data
|
|
40
|
+
var sampleItems = [{
|
|
41
|
+
id: '1',
|
|
42
|
+
name: 'Item 1'
|
|
43
|
+
}, {
|
|
44
|
+
id: '2',
|
|
45
|
+
name: 'Item 2'
|
|
46
|
+
}, {
|
|
47
|
+
id: '3',
|
|
48
|
+
name: 'Item 3'
|
|
49
|
+
}, {
|
|
50
|
+
id: '4',
|
|
51
|
+
name: 'Item 4'
|
|
52
|
+
}, {
|
|
53
|
+
id: '5',
|
|
54
|
+
name: 'Item 5'
|
|
55
|
+
}];
|
|
56
|
+
|
|
57
|
+
// Basic list
|
|
58
|
+
var Default = exports.Default = {
|
|
59
|
+
render: function render() {
|
|
60
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
61
|
+
style: {
|
|
62
|
+
width: '300px',
|
|
63
|
+
border: '1px solid #eee',
|
|
64
|
+
borderRadius: '4px'
|
|
65
|
+
}
|
|
66
|
+
}, /*#__PURE__*/_react["default"].createElement(_List["default"], {
|
|
67
|
+
items: sampleItems
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
// Empty list with no data message
|
|
73
|
+
var EmptyList = exports.EmptyList = {
|
|
74
|
+
render: function render() {
|
|
75
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
76
|
+
style: {
|
|
77
|
+
width: '300px',
|
|
78
|
+
border: '1px solid #eee',
|
|
79
|
+
borderRadius: '4px'
|
|
80
|
+
}
|
|
81
|
+
}, /*#__PURE__*/_react["default"].createElement(_List["default"], {
|
|
82
|
+
items: [],
|
|
83
|
+
showNoDataMsg: true
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
// Custom list item component
|
|
89
|
+
var CustomListItem = function CustomListItem(_ref) {
|
|
90
|
+
var itemData = _ref.itemData;
|
|
91
|
+
return /*#__PURE__*/_react["default"].createElement("li", {
|
|
92
|
+
className: "RCB-list-item",
|
|
93
|
+
style: {
|
|
94
|
+
display: 'flex',
|
|
95
|
+
justifyContent: 'space-between',
|
|
96
|
+
alignItems: 'center',
|
|
97
|
+
padding: '10px',
|
|
98
|
+
borderBottom: '1px solid #eee'
|
|
99
|
+
}
|
|
100
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, itemData.name), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
101
|
+
appearance: _Button.ButtonAppearance.SECONDARY,
|
|
102
|
+
onClick: function onClick() {
|
|
103
|
+
return console.log('Clicked:', itemData);
|
|
104
|
+
},
|
|
105
|
+
size: "small"
|
|
106
|
+
}, "View"));
|
|
107
|
+
};
|
|
108
|
+
var WithCustomListItem = exports.WithCustomListItem = {
|
|
109
|
+
render: function render() {
|
|
110
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
111
|
+
style: {
|
|
112
|
+
width: '300px',
|
|
113
|
+
border: '1px solid #eee',
|
|
114
|
+
borderRadius: '4px'
|
|
115
|
+
}
|
|
116
|
+
}, /*#__PURE__*/_react["default"].createElement(_List["default"], {
|
|
117
|
+
items: sampleItems,
|
|
118
|
+
ListItem: CustomListItem
|
|
119
|
+
}));
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
// List with custom styling
|
|
124
|
+
var CustomStyling = exports.CustomStyling = {
|
|
125
|
+
render: function render() {
|
|
126
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
127
|
+
style: {
|
|
128
|
+
width: '300px'
|
|
129
|
+
}
|
|
130
|
+
}, /*#__PURE__*/_react["default"].createElement(_List["default"], {
|
|
131
|
+
items: sampleItems,
|
|
132
|
+
className: "custom-list",
|
|
133
|
+
ListItem: function ListItem(_ref2) {
|
|
134
|
+
var itemData = _ref2.itemData;
|
|
135
|
+
return /*#__PURE__*/_react["default"].createElement("li", {
|
|
136
|
+
style: {
|
|
137
|
+
padding: '12px',
|
|
138
|
+
margin: '8px',
|
|
139
|
+
backgroundColor: '#f5f5f5',
|
|
140
|
+
borderRadius: '8px',
|
|
141
|
+
boxShadow: '0 2px 4px rgba(0,0,0,0.05)',
|
|
142
|
+
transition: 'all 0.2s ease',
|
|
143
|
+
cursor: 'pointer',
|
|
144
|
+
':hover': {
|
|
145
|
+
backgroundColor: '#e9e9e9'
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}, itemData.name);
|
|
149
|
+
}
|
|
150
|
+
}));
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// List with complex items
|
|
155
|
+
var complexItems = [{
|
|
156
|
+
id: '1',
|
|
157
|
+
name: 'John Doe',
|
|
158
|
+
email: 'john@example.com',
|
|
159
|
+
role: 'Admin',
|
|
160
|
+
status: 'Active'
|
|
161
|
+
}, {
|
|
162
|
+
id: '2',
|
|
163
|
+
name: 'Jane Smith',
|
|
164
|
+
email: 'jane@example.com',
|
|
165
|
+
role: 'User',
|
|
166
|
+
status: 'Inactive'
|
|
167
|
+
}, {
|
|
168
|
+
id: '3',
|
|
169
|
+
name: 'Bob Johnson',
|
|
170
|
+
email: 'bob@example.com',
|
|
171
|
+
role: 'Editor',
|
|
172
|
+
status: 'Active'
|
|
173
|
+
}];
|
|
174
|
+
var ComplexListItem = function ComplexListItem(_ref3) {
|
|
175
|
+
var itemData = _ref3.itemData;
|
|
176
|
+
return /*#__PURE__*/_react["default"].createElement("li", {
|
|
177
|
+
className: "RCB-list-item",
|
|
178
|
+
style: {
|
|
179
|
+
padding: '15px',
|
|
180
|
+
borderBottom: '1px solid #eee',
|
|
181
|
+
display: 'grid',
|
|
182
|
+
gridTemplateColumns: 'repeat(4, 1fr)',
|
|
183
|
+
gap: '10px',
|
|
184
|
+
alignItems: 'center'
|
|
185
|
+
}
|
|
186
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
187
|
+
style: {
|
|
188
|
+
fontWeight: 'bold'
|
|
189
|
+
}
|
|
190
|
+
}, itemData.name), /*#__PURE__*/_react["default"].createElement("div", {
|
|
191
|
+
style: {
|
|
192
|
+
fontSize: '0.9em',
|
|
193
|
+
color: '#666'
|
|
194
|
+
}
|
|
195
|
+
}, itemData.email)), /*#__PURE__*/_react["default"].createElement("div", null, itemData.role), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("span", {
|
|
196
|
+
style: {
|
|
197
|
+
padding: '4px 8px',
|
|
198
|
+
borderRadius: '12px',
|
|
199
|
+
backgroundColor: itemData.status === 'Active' ? '#e6f4ea' : '#fce8e6',
|
|
200
|
+
color: itemData.status === 'Active' ? '#137333' : '#c5221f',
|
|
201
|
+
fontSize: '0.9em'
|
|
202
|
+
}
|
|
203
|
+
}, itemData.status)), /*#__PURE__*/_react["default"].createElement("div", {
|
|
204
|
+
style: {
|
|
205
|
+
justifySelf: 'end'
|
|
206
|
+
}
|
|
207
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
208
|
+
appearance: _Button.ButtonAppearance.PRIMARY,
|
|
209
|
+
onClick: function onClick() {
|
|
210
|
+
return console.log('Edit:', itemData);
|
|
211
|
+
}
|
|
212
|
+
}, "Edit")));
|
|
213
|
+
};
|
|
214
|
+
var ComplexList = exports.ComplexList = {
|
|
215
|
+
render: function render() {
|
|
216
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
217
|
+
style: {
|
|
218
|
+
width: '800px',
|
|
219
|
+
border: '1px solid #eee',
|
|
220
|
+
borderRadius: '4px',
|
|
221
|
+
backgroundColor: 'white'
|
|
222
|
+
}
|
|
223
|
+
}, /*#__PURE__*/_react["default"].createElement(_List["default"], {
|
|
224
|
+
items: complexItems,
|
|
225
|
+
ListItem: ComplexListItem
|
|
226
|
+
}));
|
|
227
|
+
}
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
// Interactive example
|
|
231
|
+
var Interactive = exports.Interactive = {
|
|
232
|
+
args: {
|
|
233
|
+
items: sampleItems,
|
|
234
|
+
showNoDataMsg: true,
|
|
235
|
+
idAttribute: 'id',
|
|
236
|
+
className: ''
|
|
237
|
+
}
|
|
238
|
+
};
|
|
@@ -11,8 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _react2 = require("motion/react");
|
|
12
12
|
var _excluded = ["isOpen", "onClose", "isConditionalHideEnabled"];
|
|
13
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
14
|
-
function
|
|
15
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
14
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
16
15
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
17
16
|
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
18
17
|
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."); }
|
|
@@ -4,49 +4,268 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports["default"] = exports.
|
|
8
|
-
var _react =
|
|
7
|
+
exports["default"] = exports.WithCustomTitle = exports.Interactive = exports.FormModal = exports.Default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _Modal = _interopRequireDefault(require("./Modal"));
|
|
10
|
+
var _Button = _interopRequireWildcard(require("../Button/Button"));
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
10
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
|
-
function
|
|
12
|
-
function
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
13
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
14
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
17
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
18
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
19
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
20
|
+
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."); }
|
|
21
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
22
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
23
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
24
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
25
|
+
var meta = {
|
|
26
|
+
title: 'Components/Modal',
|
|
27
|
+
component: _Modal["default"],
|
|
28
|
+
parameters: {
|
|
29
|
+
layout: 'centered'
|
|
30
|
+
},
|
|
31
|
+
tags: ['autodocs'],
|
|
32
|
+
argTypes: {
|
|
33
|
+
className: {
|
|
34
|
+
control: 'text',
|
|
35
|
+
description: 'Additional CSS classes for the modal'
|
|
36
|
+
},
|
|
37
|
+
title: {
|
|
38
|
+
control: 'text',
|
|
39
|
+
description: 'Header or title for the modal'
|
|
40
|
+
},
|
|
41
|
+
showClose: {
|
|
42
|
+
control: 'boolean',
|
|
43
|
+
description: 'Whether to show the close button'
|
|
44
|
+
},
|
|
45
|
+
showHeader: {
|
|
46
|
+
control: 'boolean',
|
|
47
|
+
description: 'Whether to show the modal header'
|
|
48
|
+
},
|
|
49
|
+
isConditionalHideEnabled: {
|
|
50
|
+
control: 'boolean',
|
|
51
|
+
description: 'Whether to enable conditional hiding of the modal'
|
|
52
|
+
}
|
|
53
|
+
}
|
|
31
54
|
};
|
|
32
|
-
var
|
|
33
|
-
|
|
55
|
+
var _default = exports["default"] = meta; // Basic Modal
|
|
56
|
+
var Default = exports.Default = {
|
|
57
|
+
render: function render() {
|
|
58
|
+
var modalRef = _react["default"].useRef(null);
|
|
59
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
60
|
+
appearance: _Button.ButtonAppearance.PRIMARY,
|
|
61
|
+
onClick: function onClick() {
|
|
62
|
+
return modalRef.current.showModal();
|
|
63
|
+
}
|
|
64
|
+
}, "Open Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
|
|
65
|
+
ref: modalRef,
|
|
66
|
+
title: "Basic Modal",
|
|
67
|
+
onClose: function onClose() {
|
|
68
|
+
return console.log('Modal closed');
|
|
69
|
+
}
|
|
70
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("p", null, "This is a basic modal with default settings."), /*#__PURE__*/_react["default"].createElement("div", {
|
|
71
|
+
className: "modal-footer"
|
|
72
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
73
|
+
appearance: _Button.ButtonAppearance.SECONDARY,
|
|
74
|
+
onClick: function onClick() {
|
|
75
|
+
return modalRef.current.hideModal();
|
|
76
|
+
}
|
|
77
|
+
}, "Close")))));
|
|
78
|
+
}
|
|
34
79
|
};
|
|
35
|
-
|
|
36
|
-
|
|
80
|
+
|
|
81
|
+
// Custom Title Component
|
|
82
|
+
var CustomTitle = function CustomTitle() {
|
|
83
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
84
|
+
style: {
|
|
85
|
+
display: 'flex',
|
|
86
|
+
alignItems: 'center',
|
|
87
|
+
gap: '10px'
|
|
88
|
+
}
|
|
89
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
90
|
+
style: {
|
|
91
|
+
color: '#1a73e8',
|
|
92
|
+
fontSize: '20px'
|
|
93
|
+
}
|
|
94
|
+
}, "\uD83D\uDE80"), /*#__PURE__*/_react["default"].createElement("span", null, "Custom Title Component"));
|
|
37
95
|
};
|
|
38
|
-
var
|
|
39
|
-
|
|
96
|
+
var WithCustomTitle = exports.WithCustomTitle = {
|
|
97
|
+
render: function render() {
|
|
98
|
+
var modalRef = _react["default"].useRef(null);
|
|
99
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
100
|
+
appearance: _Button.ButtonAppearance.PRIMARY,
|
|
101
|
+
onClick: function onClick() {
|
|
102
|
+
return modalRef.current.showModal();
|
|
103
|
+
}
|
|
104
|
+
}, "Open Modal with Custom Title"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
|
|
105
|
+
ref: modalRef,
|
|
106
|
+
titleComponent: /*#__PURE__*/_react["default"].createElement(CustomTitle, null)
|
|
107
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("p", null, "This modal uses a custom title component instead of a simple string title."), /*#__PURE__*/_react["default"].createElement("div", {
|
|
108
|
+
className: "modal-footer"
|
|
109
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
110
|
+
appearance: _Button.ButtonAppearance.SECONDARY,
|
|
111
|
+
onClick: function onClick() {
|
|
112
|
+
return modalRef.current.hideModal();
|
|
113
|
+
}
|
|
114
|
+
}, "Close")))));
|
|
115
|
+
}
|
|
40
116
|
};
|
|
41
|
-
|
|
42
|
-
|
|
117
|
+
|
|
118
|
+
// Form Modal
|
|
119
|
+
var FormModal = exports.FormModal = {
|
|
120
|
+
render: function render() {
|
|
121
|
+
var modalRef = _react["default"].useRef(null);
|
|
122
|
+
var _React$useState = _react["default"].useState({
|
|
123
|
+
name: '',
|
|
124
|
+
email: '',
|
|
125
|
+
message: ''
|
|
126
|
+
}),
|
|
127
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
128
|
+
formData = _React$useState2[0],
|
|
129
|
+
setFormData = _React$useState2[1];
|
|
130
|
+
var handleSubmit = function handleSubmit() {
|
|
131
|
+
console.log('Form submitted:', formData);
|
|
132
|
+
modalRef.current.hideModal();
|
|
133
|
+
};
|
|
134
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
135
|
+
appearance: _Button.ButtonAppearance.PRIMARY,
|
|
136
|
+
onClick: function onClick() {
|
|
137
|
+
return modalRef.current.showModal();
|
|
138
|
+
}
|
|
139
|
+
}, "Open Form Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
|
|
140
|
+
ref: modalRef,
|
|
141
|
+
title: "Contact Form",
|
|
142
|
+
className: "form-modal"
|
|
143
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
144
|
+
style: {
|
|
145
|
+
marginBottom: '15px'
|
|
146
|
+
}
|
|
147
|
+
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
148
|
+
style: {
|
|
149
|
+
display: 'block',
|
|
150
|
+
marginBottom: '5px'
|
|
151
|
+
}
|
|
152
|
+
}, "Name"), /*#__PURE__*/_react["default"].createElement("input", {
|
|
153
|
+
type: "text",
|
|
154
|
+
value: formData.name,
|
|
155
|
+
onChange: function onChange(e) {
|
|
156
|
+
return setFormData(_objectSpread(_objectSpread({}, formData), {}, {
|
|
157
|
+
name: e.target.value
|
|
158
|
+
}));
|
|
159
|
+
},
|
|
160
|
+
style: {
|
|
161
|
+
width: '100%',
|
|
162
|
+
padding: '8px',
|
|
163
|
+
border: '1px solid #ddd',
|
|
164
|
+
borderRadius: '4px'
|
|
165
|
+
}
|
|
166
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
167
|
+
style: {
|
|
168
|
+
marginBottom: '15px'
|
|
169
|
+
}
|
|
170
|
+
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
171
|
+
style: {
|
|
172
|
+
display: 'block',
|
|
173
|
+
marginBottom: '5px'
|
|
174
|
+
}
|
|
175
|
+
}, "Email"), /*#__PURE__*/_react["default"].createElement("input", {
|
|
176
|
+
type: "email",
|
|
177
|
+
value: formData.email,
|
|
178
|
+
onChange: function onChange(e) {
|
|
179
|
+
return setFormData(_objectSpread(_objectSpread({}, formData), {}, {
|
|
180
|
+
email: e.target.value
|
|
181
|
+
}));
|
|
182
|
+
},
|
|
183
|
+
style: {
|
|
184
|
+
width: '100%',
|
|
185
|
+
padding: '8px',
|
|
186
|
+
border: '1px solid #ddd',
|
|
187
|
+
borderRadius: '4px'
|
|
188
|
+
}
|
|
189
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
190
|
+
style: {
|
|
191
|
+
marginBottom: '15px'
|
|
192
|
+
}
|
|
193
|
+
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
194
|
+
style: {
|
|
195
|
+
display: 'block',
|
|
196
|
+
marginBottom: '5px'
|
|
197
|
+
}
|
|
198
|
+
}, "Message"), /*#__PURE__*/_react["default"].createElement("textarea", {
|
|
199
|
+
value: formData.message,
|
|
200
|
+
onChange: function onChange(e) {
|
|
201
|
+
return setFormData(_objectSpread(_objectSpread({}, formData), {}, {
|
|
202
|
+
message: e.target.value
|
|
203
|
+
}));
|
|
204
|
+
},
|
|
205
|
+
style: {
|
|
206
|
+
width: '100%',
|
|
207
|
+
padding: '8px',
|
|
208
|
+
border: '1px solid #ddd',
|
|
209
|
+
borderRadius: '4px',
|
|
210
|
+
minHeight: '100px'
|
|
211
|
+
}
|
|
212
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
213
|
+
className: "modal-footer",
|
|
214
|
+
style: {
|
|
215
|
+
display: 'flex',
|
|
216
|
+
justifyContent: 'flex-end',
|
|
217
|
+
gap: '10px'
|
|
218
|
+
}
|
|
219
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
220
|
+
appearance: _Button.ButtonAppearance.SECONDARY,
|
|
221
|
+
onClick: function onClick() {
|
|
222
|
+
return modalRef.current.hideModal();
|
|
223
|
+
}
|
|
224
|
+
}, "Cancel"), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
225
|
+
appearance: _Button.ButtonAppearance.PRIMARY,
|
|
226
|
+
onClick: handleSubmit
|
|
227
|
+
}, "Submit")))));
|
|
228
|
+
}
|
|
43
229
|
};
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
230
|
+
|
|
231
|
+
// Interactive example
|
|
232
|
+
var Interactive = exports.Interactive = {
|
|
233
|
+
render: function render(args) {
|
|
234
|
+
var modalRef = _react["default"].useRef(null);
|
|
235
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
236
|
+
appearance: _Button.ButtonAppearance.PRIMARY,
|
|
237
|
+
onClick: function onClick() {
|
|
238
|
+
return modalRef.current.showModal();
|
|
239
|
+
}
|
|
240
|
+
}, "Open Interactive Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], _extends({
|
|
241
|
+
ref: modalRef
|
|
242
|
+
}, args), /*#__PURE__*/_react["default"].createElement("div", {
|
|
243
|
+
style: {
|
|
244
|
+
padding: '20px',
|
|
245
|
+
minWidth: '300px'
|
|
246
|
+
}
|
|
247
|
+
}, /*#__PURE__*/_react["default"].createElement("p", null, "This is an interactive modal example."), /*#__PURE__*/_react["default"].createElement("p", null, "Try adjusting the controls in the Storybook panel:"), /*#__PURE__*/_react["default"].createElement("ul", {
|
|
248
|
+
style: {
|
|
249
|
+
marginTop: '10px',
|
|
250
|
+
marginBottom: '20px'
|
|
251
|
+
}
|
|
252
|
+
}, /*#__PURE__*/_react["default"].createElement("li", null, "Change the title"), /*#__PURE__*/_react["default"].createElement("li", null, "Toggle header visibility"), /*#__PURE__*/_react["default"].createElement("li", null, "Toggle close button"), /*#__PURE__*/_react["default"].createElement("li", null, "Add custom classes")), /*#__PURE__*/_react["default"].createElement("div", {
|
|
253
|
+
style: {
|
|
254
|
+
marginTop: '20px',
|
|
255
|
+
textAlign: 'right'
|
|
256
|
+
}
|
|
257
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
258
|
+
appearance: _Button.ButtonAppearance.SECONDARY,
|
|
259
|
+
onClick: function onClick() {
|
|
260
|
+
return modalRef.current.hideModal();
|
|
261
|
+
}
|
|
262
|
+
}, "Close")))));
|
|
263
|
+
},
|
|
264
|
+
args: {
|
|
265
|
+
title: 'Interactive Modal',
|
|
266
|
+
showClose: true,
|
|
267
|
+
showHeader: true,
|
|
268
|
+
isConditionalHideEnabled: false,
|
|
269
|
+
className: ''
|
|
51
270
|
}
|
|
52
271
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.RCB-modal{position:fixed;top:0;width:100%;height:100%;background:rgba(0,0,0,0.
|
|
1
|
+
.RCB-modal{position:fixed;top:0;width:100%;height:100%;background:rgba(0,0,0,0.6);display:flex;justify-content:center;align-items:center;z-index:2}.RCB-modal .modal-footer{padding:24px 24px;margin:20px -24px 0px;border-radius:0 0 8px 8px;text-align:right}.RCB-modal .modal-footer .RCB-btn{margin-right:14px}.RCB-modal .modal-footer .RCB-btn:last-child{margin-right:0}.RCB-modal-body{background:#FFF;border-radius:8px;padding:0px}.RCB-modal-header{display:flex;margin-bottom:0px;padding:24px 24px 10px}.RCB-modal-title{flex:1;font-size:18px;font-weight:700;line-height:normal}.RCB-modal-close{cursor:pointer}.RCB-modal-close:before{content:"X"}.RCB-modal-content{padding:24px 24px 0px}
|
|
@@ -8,8 +8,7 @@ exports["default"] = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
10
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
|
-
function
|
|
12
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
13
12
|
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
14
13
|
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."); }
|
|
15
14
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|