@agilemotion/oui-react-js 1.3.0 → 1.3.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.
Files changed (71) hide show
  1. package/dist/ApplicationContext.js +151 -38
  2. package/dist/BasicApp.js +16 -9
  3. package/dist/BasicAppHome.js +6 -4
  4. package/dist/BusinessPortalApp.css +37 -0
  5. package/dist/BusinessPortalApp.js +115 -0
  6. package/dist/BusinessPortalAppHome.js +167 -0
  7. package/dist/RestUtils.js +12 -9
  8. package/dist/assets/css/black-dashboard-react.css +1 -2
  9. package/dist/assets/jss/components/footerStyle.js +7 -4
  10. package/dist/assets/jss/views/loginBasicStyle.js +0 -1
  11. package/dist/assets/jss/views/loginBusinessPortalStyle.js +76 -0
  12. package/dist/assets/scss/black-dashboard-react/bootstrap/_reboot.scss +0 -1
  13. package/dist/components/DocumentView.css +4 -0
  14. package/dist/components/DocumentViewer.js +93 -37
  15. package/dist/components/DocumentViewerComponent.js +93 -0
  16. package/dist/components/ElementResizeHandler.js +232 -0
  17. package/dist/components/Graph.js +120 -16
  18. package/dist/components/GraphNode.js +0 -2
  19. package/dist/components/HtmlPanel.js +45 -4
  20. package/dist/components/Icon.js +8 -0
  21. package/dist/components/SignaturePanel.js +118 -0
  22. package/dist/components/StepperTitleBar.css +85 -0
  23. package/dist/components/StepperTitleBar.js +190 -0
  24. package/dist/components/TitleBar.js +1 -1
  25. package/dist/components/Toolbar.js +6 -3
  26. package/dist/components/dashboard/{BasicBusinessApp.js → BasicBusinessAppDashboard.js} +17 -16
  27. package/dist/components/dashboard/BusinessPortalAppDashboard.css +5 -0
  28. package/dist/components/dashboard/BusinessPortalAppDashboard.js +191 -0
  29. package/dist/components/dashboard/components/blackDashboard/sidebar/Sidebar.js +23 -12
  30. package/dist/components/dashboard/components/portal/Timeline.js +17 -0
  31. package/dist/components/dashboard/components/portal/Workspace.css +25 -0
  32. package/dist/components/dashboard/components/portal/Workspace.js +48 -0
  33. package/dist/components/dashboard/components/portal/portal-dashboard.css +25 -0
  34. package/dist/components/footer/Footer.js +43 -10
  35. package/dist/components/form/BaseField.js +11 -2
  36. package/dist/components/form/DatePicker.js +62 -1
  37. package/dist/components/form/FieldSet.js +1 -1
  38. package/dist/components/form/Form.js +28 -8
  39. package/dist/components/form/SelectItem.js +10 -3
  40. package/dist/components/form/UploadField.js +122 -44
  41. package/dist/components/layout/Layout.js +30 -15
  42. package/dist/components/layout/ViewPort.js +3 -2
  43. package/dist/components/menu/MenuLink.js +7 -0
  44. package/dist/components/navbars/HomeNavbar.js +0 -10
  45. package/dist/components/navbars/PortalNavbar.css +75 -0
  46. package/dist/components/navbars/PortalNavbar.js +138 -0
  47. package/dist/components/signatures/AlertItem.js +71 -0
  48. package/dist/components/signatures/Card.js +39 -0
  49. package/dist/components/signatures/MenuButton.js +108 -0
  50. package/dist/components/signatures/Prompt.js +78 -0
  51. package/dist/components/signatures/ResponsiveTable.css +91 -0
  52. package/dist/components/signatures/ResponsiveTable.js +568 -0
  53. package/dist/components/signatures/SearchView.js +236 -0
  54. package/dist/components/signatures/SignatorySearch.js +115 -0
  55. package/dist/components/signatures/SignatorySearchForm.js +77 -0
  56. package/dist/components/signatures/SignatureInputProps.js +336 -0
  57. package/dist/components/signatures/SignatureTemplateDesigner.js +890 -0
  58. package/dist/components/signatures/Toolbar.js +208 -0
  59. package/dist/components/signatures/ViewUtils.js +309 -0
  60. package/dist/components/signatures/widgets.css +126 -0
  61. package/dist/event/RouteActionHandler.js +1 -1
  62. package/dist/view/Dashboard.js +17 -13
  63. package/dist/view/PortalDashboard.js +33 -0
  64. package/dist/view/security/ChangePasswordBasic.js +1 -0
  65. package/dist/view/security/ForgotPasswordBasic.js +1 -0
  66. package/dist/view/security/LoginBasic.js +6 -1
  67. package/dist/view/security/LoginBusinessPortal.js +267 -0
  68. package/dist/view/security/ResetPasswordBasic.js +1 -0
  69. package/package.json +26 -24
  70. package/dist/assets/img/flogo.png +0 -0
  71. package/dist/components/SignatureTemplateDesigner.js +0 -168
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = SearchView;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _ResponsiveTable = _interopRequireDefault(require("./ResponsiveTable"));
11
+
12
+ var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
13
+
14
+ var _Search = _interopRequireDefault(require("@material-ui/icons/Search"));
15
+
16
+ var _ViewUtils = _interopRequireDefault(require("./ViewUtils"));
17
+
18
+ var _Prompt = _interopRequireDefault(require("./Prompt"));
19
+
20
+ var _AlertItem = _interopRequireDefault(require("./AlertItem"));
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
24
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
25
+
26
+ 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."); }
27
+
28
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
29
+
30
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
31
+
32
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
33
+
34
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
+
36
+ function SearchView(props) {
37
+ const utils = new _ViewUtils.default();
38
+
39
+ const _React$useState = _react.default.useState(props.model),
40
+ _React$useState2 = _slicedToArray(_React$useState, 2),
41
+ model = _React$useState2[0],
42
+ setModel = _React$useState2[1];
43
+
44
+ const _React$useState3 = _react.default.useState(props.searchParameters),
45
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
46
+ searchParameters = _React$useState4[0],
47
+ setSearchParameters = _React$useState4[1];
48
+
49
+ const _React$useState5 = _react.default.useState([]),
50
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
51
+ selection = _React$useState6[0],
52
+ setSelection = _React$useState6[1];
53
+
54
+ const _React$useState7 = _react.default.useState(""),
55
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
56
+ message = _React$useState8[0],
57
+ setMessage = _React$useState8[1];
58
+
59
+ const _React$useState9 = _react.default.useState(""),
60
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
61
+ messageStyle = _React$useState10[0],
62
+ setMessageStyle = _React$useState10[1];
63
+
64
+ const _React$useState11 = _react.default.useState(false),
65
+ _React$useState12 = _slicedToArray(_React$useState11, 1),
66
+ showToolBar = _React$useState12[0];
67
+
68
+ const _React$useState13 = _react.default.useState(props.toolbarRef || /*#__PURE__*/_react.default.createRef()),
69
+ _React$useState14 = _slicedToArray(_React$useState13, 1),
70
+ toolbarRef = _React$useState14[0];
71
+
72
+ const _React$useState15 = _react.default.useState(false),
73
+ _React$useState16 = _slicedToArray(_React$useState15, 2),
74
+ promptOpen = _React$useState16[0],
75
+ setPromptOpen = _React$useState16[1];
76
+
77
+ const _React$useState17 = _react.default.useState(utils.isNull(props.keyUpSwitch) ? false : props.keyUpSwitch),
78
+ _React$useState18 = _slicedToArray(_React$useState17, 2),
79
+ keyUpSwitch = _React$useState18[0],
80
+ setKeyUpSwitch = _React$useState18[1];
81
+
82
+ const closePrompt = () => {
83
+ setPromptOpen(false);
84
+ };
85
+
86
+ _react.default.useEffect(() => {
87
+ if (props.keyUpSwitch !== keyUpSwitch) {
88
+ search();
89
+ setKeyUpSwitch(props.keyUpSwitch);
90
+ }
91
+ }, [props.keyUpSwitch]);
92
+
93
+ _react.default.useEffect(() => {
94
+ if (JSON.stringify(model) !== JSON.stringify(props.model)) {
95
+ setModel(props.model);
96
+ }
97
+ }, [props.model]);
98
+
99
+ _react.default.useEffect(() => {
100
+ if (JSON.stringify(props.searchParameters) !== JSON.stringify(searchParameters)) {
101
+ search();
102
+ setSearchParameters(props.searchParameters);
103
+ }
104
+ }, [props.SearchParameters]);
105
+
106
+ const deleteRecord = () => {
107
+ setPromptOpen(false); // TODO : support bulk delete when nulti select is enabled
108
+
109
+ let url = "".concat(props.deleteUrl, "?id=").concat(selection[0].Id);
110
+ utils.invokeUrl(url, data => {
111
+ setSelection([]);
112
+ setMessage(data.Message);
113
+ setMessageStyle(data.MessageType.toLowerCase());
114
+ toolbarRef.current.setButtonDisabled("edit", true);
115
+ toolbarRef.current.setButtonDisabled("delete", true);
116
+ search();
117
+ }, null);
118
+ };
119
+
120
+ const handleToolbarButtonClick = buttonId => {
121
+ if ("info" !== buttonId) {
122
+ if ("add" === buttonId) {
123
+ props.history.push(!utils.isNull(props.addViewPath) ? props.addViewPath : props.entityViewPath);
124
+ } else if ("delete" === buttonId) {
125
+ setPromptOpen(true);
126
+ } else {
127
+ props.history.push({
128
+ pathname: props.entityViewPath,
129
+ state: {
130
+ selection: selection[0].Id
131
+ }
132
+ });
133
+ }
134
+
135
+ if (!utils.isNull(props.buttonClickHandler)) {
136
+ props.buttonClickHandler(buttonId);
137
+ }
138
+ }
139
+ };
140
+
141
+ const handleDataArrived = data => {
142
+ if (!utils.isNull(data) && props.mode === 'lookup') {
143
+ if (data.Data.length === 0) {
144
+ setMessage("No data records found");
145
+ setMessageStyle("message");
146
+ } else {
147
+ setMessage("");
148
+ setMessageStyle("");
149
+ }
150
+ }
151
+ };
152
+
153
+ const isModelEmpty = () => {
154
+ const properties = Object.getOwnPropertyNames(model);
155
+
156
+ if (utils.isNull(properties) || properties.length === 0) {
157
+ return true;
158
+ }
159
+
160
+ for (let i = 0; i < properties.length; i++) {
161
+ if (!utils.isStringEmpty(properties[properties[i]])) {
162
+ return false;
163
+ }
164
+ }
165
+
166
+ return true;
167
+ };
168
+
169
+ const search = () => {
170
+ let searchParameters = [];
171
+ const properties = Object.getOwnPropertyNames(model);
172
+
173
+ if (!utils.isNull(properties) && properties.length > 0) {
174
+ for (let i = 0; i < properties.length; i++) {
175
+ let searchParameter = {};
176
+ searchParameter.name = properties[i];
177
+ searchParameter.type = "string";
178
+ searchParameter.value = model[properties[i]];
179
+ searchParameters.push(searchParameter);
180
+ }
181
+ }
182
+
183
+ setSearchParameters(searchParameters);
184
+ };
185
+
186
+ const handleSelectionChange = selection => {
187
+ setSelection(selection);
188
+
189
+ if (props.setSelection) {
190
+ props.setSelection(selection);
191
+ }
192
+
193
+ if (!utils.isNull(props.onLookupValueChange)) {
194
+ props.onLookupValueChange(selection);
195
+ }
196
+ };
197
+
198
+ return /*#__PURE__*/_react.default.createElement("div", {
199
+ className: "w-100",
200
+ style: {
201
+ height: props.mode === "lookup" ? "auto" : utils.isNull(props.height) ? "100%" : props.height,
202
+ padding: "4px"
203
+ }
204
+ }, /*#__PURE__*/_react.default.createElement("p", {
205
+ className: "legend"
206
+ }, props.title), /*#__PURE__*/_react.default.createElement(_AlertItem.default, {
207
+ message: message,
208
+ alertStyle: messageStyle
209
+ }), /*#__PURE__*/_react.default.createElement("table", null, /*#__PURE__*/_react.default.createElement("tbody", null, /*#__PURE__*/_react.default.createElement("tr", null, /*#__PURE__*/_react.default.createElement("td", null, props.children), /*#__PURE__*/_react.default.createElement("td", null, props.search === false ? null : /*#__PURE__*/_react.default.createElement(_IconButton.default, {
210
+ onClick: () => search(),
211
+ "aria-label": "search"
212
+ }, /*#__PURE__*/_react.default.createElement(_Search.default, null)))))), /*#__PURE__*/_react.default.createElement("div", {
213
+ style: {
214
+ height: "auto"
215
+ }
216
+ }, /*#__PURE__*/_react.default.createElement(_ResponsiveTable.default, {
217
+ headCells: props.headCells,
218
+ onSelectionChange: selection => {
219
+ handleSelectionChange(selection);
220
+ },
221
+ dataUrl: props.dataUrl,
222
+ onDataArrive: data => handleDataArrived(data),
223
+ mode: props.mode,
224
+ autoFetchData: props.autoFetchData,
225
+ height: "20vh",
226
+ bodyMaxHeight: props.mode === "lookup" && !showToolBar ? "32vh" : "42vh",
227
+ searchParameters: searchParameters,
228
+ multiSelect: props.multiSelect
229
+ }), /*#__PURE__*/_react.default.createElement(_Prompt.default, {
230
+ open: promptOpen,
231
+ promptTitle: props.promptTitle,
232
+ promptContent: props.promptContent,
233
+ handleYes: deleteRecord,
234
+ closePrompt: closePrompt
235
+ })));
236
+ }
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = _interopRequireWildcard(require("react"));
9
+
10
+ var _reactRedux = require("react-redux");
11
+
12
+ var _SignatorySearchForm = _interopRequireDefault(require("./SignatorySearchForm"));
13
+
14
+ var _SearchView = _interopRequireDefault(require("./SearchView"));
15
+
16
+ var _Card = _interopRequireDefault(require("./Card"));
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
20
+ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
21
+
22
+ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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
+
24
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
+
26
+ const headCells = [{
27
+ id: 'emailAddress',
28
+ numeric: false,
29
+ disablePadding: false,
30
+ label: 'Email Address',
31
+ widthRatio: .5
32
+ }, {
33
+ id: 'cellNumber',
34
+ numeric: false,
35
+ disablePadding: false,
36
+ label: 'Cell Number',
37
+ widthRatio: .25
38
+ }, {
39
+ id: 'name',
40
+ numeric: false,
41
+ disablePadding: false,
42
+ label: 'Name',
43
+ widthRatio: .25
44
+ }];
45
+ const toolbarConfig = {
46
+ items: [{
47
+ type: "buttonGroup",
48
+ buttons: [{
49
+ id: 'add',
50
+ label: '',
51
+ tooltip: 'Add',
52
+ icon: 'AddIcon',
53
+ modes: 'default,lookup'
54
+ }, {
55
+ id: 'edit',
56
+ label: '',
57
+ tooltip: 'Edit',
58
+ icon: 'EditIcon',
59
+ modes: 'default'
60
+ }]
61
+ }]
62
+ };
63
+ const searchParameters = [{
64
+ name: "emailAddress",
65
+ value: "",
66
+ type: "string"
67
+ }];
68
+
69
+ class SignatorySearch extends _react.Component {
70
+ constructor(...args) {
71
+ super(...args);
72
+
73
+ _defineProperty(this, "state", {
74
+ model: {
75
+ emailAddress: ""
76
+ },
77
+ keyUpSwitch: false
78
+ });
79
+ }
80
+
81
+ onkeyup(e) {
82
+ if (e.charCode === 13) {
83
+ this.setState({
84
+ keyUpSwitch: !this.state.keyUpSwitch
85
+ });
86
+ }
87
+ }
88
+
89
+ render() {
90
+ return /*#__PURE__*/_react.default.createElement(_Card.default, {
91
+ title: "Signatories"
92
+ }, /*#__PURE__*/_react.default.createElement(_SearchView.default, {
93
+ headCells: headCells,
94
+ dataUrl: this.props.signatoryUrl,
95
+ model: this.state.model,
96
+ toolbarConfig: toolbarConfig,
97
+ searchParameters: searchParameters,
98
+ onLookupValueChange: this.props.onLookupValueChange,
99
+ descriptionProp: "name",
100
+ mode: this.props.mode,
101
+ history: this.props.history,
102
+ keyUpSwitch: this.state.keyUpSwitch
103
+ }, /*#__PURE__*/_react.default.createElement(_SignatorySearchForm.default, {
104
+ model: this.state.model,
105
+ onKeyUp: e => {
106
+ this.onkeyup(e);
107
+ }
108
+ })));
109
+ }
110
+
111
+ }
112
+
113
+ var _default = (0, _reactRedux.connect)()(SignatorySearch);
114
+
115
+ exports.default = _default;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = SignatorySearchForm;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _styles = require("@material-ui/core/styles");
11
+
12
+ var _FormControl = _interopRequireDefault(require("@material-ui/core/FormControl"));
13
+
14
+ var _InputLabel = _interopRequireDefault(require("@material-ui/core/InputLabel"));
15
+
16
+ var _OutlinedInput = _interopRequireDefault(require("@material-ui/core/OutlinedInput"));
17
+
18
+ var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
19
+
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+
22
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
23
+
24
+ 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."); }
25
+
26
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
+
28
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
29
+
30
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
31
+
32
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
33
+
34
+ const useStyles = (0, _styles.makeStyles)(theme => ({
35
+ container: {
36
+ display: 'flex',
37
+ flexWrap: 'wrap'
38
+ },
39
+ formControl: {
40
+ margin: theme.spacing(1)
41
+ },
42
+ 'MuiOutlinedInput-input': {
43
+ padding: '18.5px 100px'
44
+ }
45
+ }));
46
+
47
+ function SignatorySearchForm(props) {
48
+ const _React$useState = _react.default.useState(0),
49
+ _React$useState2 = _slicedToArray(_React$useState, 2),
50
+ labelWidth = _React$useState2[0],
51
+ setLabelWidth = _React$useState2[1];
52
+
53
+ const labelRef = _react.default.useRef(null);
54
+
55
+ const classes = useStyles();
56
+
57
+ _react.default.useEffect(() => {
58
+ if (labelRef.current !== null) {
59
+ setLabelWidth(labelRef.current.offsetWidth);
60
+ }
61
+ }, []);
62
+
63
+ return /*#__PURE__*/_react.default.createElement("div", {
64
+ className: "row"
65
+ }, /*#__PURE__*/_react.default.createElement("div", {
66
+ className: "col"
67
+ }, /*#__PURE__*/_react.default.createElement(_TextField.default, {
68
+ style: {
69
+ width: '250px'
70
+ },
71
+ label: 'Email Address',
72
+ required: true,
73
+ size: "small",
74
+ margin: "normal",
75
+ variant: "outlined"
76
+ })));
77
+ }