@agilemotion/oui-react-js 1.3.2 → 1.3.3

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 (77) hide show
  1. package/dist/ApplicationContext.js +90 -41
  2. package/dist/BasicAppHome.js +16 -10
  3. package/dist/BusinessPortalApp.js +25 -50
  4. package/dist/BusinessPortalAppHome.js +102 -109
  5. package/dist/RestUtils.js +64 -35
  6. package/dist/Utils.js +47 -1
  7. package/dist/components/AlertBar.js +40 -11
  8. package/dist/components/ConfirmationDialog.js +54 -8
  9. package/dist/components/DataGrid.css +3 -1
  10. package/dist/components/DataGrid.js +149 -82
  11. package/dist/components/DataGridFilter.js +85 -8
  12. package/dist/components/Dialog.js +258 -0
  13. package/dist/components/HtmlPanel.js +103 -4
  14. package/dist/components/Icon.js +52 -0
  15. package/dist/components/PopupView.js +55 -6
  16. package/dist/components/SignaturePanel.js +40 -11
  17. package/dist/components/StepperTitleBar.bck.css +85 -0
  18. package/dist/components/StepperTitleBar.css +53 -54
  19. package/dist/components/StepperTitleBar.js +39 -28
  20. package/dist/components/TabPanel.js +10 -11
  21. package/dist/components/TableCellContent.js +6 -3
  22. package/dist/components/TemplateDesigner.css +13 -0
  23. package/dist/components/TemplateDesigner.js +494 -0
  24. package/dist/components/TemplateItemEventHandler.js +440 -0
  25. package/dist/components/TemplateTable.js +222 -0
  26. package/dist/components/TitleBar.js +21 -14
  27. package/dist/components/Toolbar.js +7 -5
  28. package/dist/components/Tree.js +5 -2
  29. package/dist/components/dashboard/BasicBusinessAppDashboard.js +14 -10
  30. package/dist/components/dashboard/BusinessPortalAppDashboard.js +79 -34
  31. package/dist/components/dashboard/components/blackDashboard/sidebar/Sidebar.js +1 -1
  32. package/dist/components/dashboard/components/portal/Workspace.css +6 -6
  33. package/dist/components/form/AddressSearch.js +140 -0
  34. package/dist/components/form/BaseField.js +31 -6
  35. package/dist/components/form/Checkbox.js +3 -0
  36. package/dist/components/form/DatePicker.js +12 -7
  37. package/dist/components/form/FieldSet.js +246 -71
  38. package/dist/components/form/Form.js +153 -122
  39. package/dist/components/form/GridField.js +3 -2
  40. package/dist/components/form/ImageEditor.js +461 -0
  41. package/dist/components/form/LabelField.js +2 -2
  42. package/dist/components/form/LookupField.js +16 -4
  43. package/dist/components/form/RadioGroup.js +107 -0
  44. package/dist/components/form/Section.js +58 -19
  45. package/dist/components/form/SelectItem.js +5 -3
  46. package/dist/components/form/SignatureTemplateDesignerField.js +46 -0
  47. package/dist/components/form/TextField.js +5 -9
  48. package/dist/components/form/TransferList.js +7 -7
  49. package/dist/components/form/UploadField.js +93 -42
  50. package/dist/components/form/noimage-person.png +0 -0
  51. package/dist/components/form/noimage.png +0 -0
  52. package/dist/components/form/transparent.jpeg +0 -0
  53. package/dist/components/layout/CollapsiblePanel.js +0 -6
  54. package/dist/components/layout/Layout.js +41 -20
  55. package/dist/components/layout/View.css +43 -0
  56. package/dist/components/layout/View.js +76 -156
  57. package/dist/components/layout/ViewPort.js +29 -47
  58. package/dist/components/navbars/HomeNavbar.js +31 -6
  59. package/dist/components/navbars/PortalNavbar.css +2 -2
  60. package/dist/components/navbars/PortalNavbar.js +125 -36
  61. package/dist/components/signatures/AgilitySignaturePanel.js +312 -0
  62. package/dist/components/signatures/DocumentContainer.css +33 -0
  63. package/dist/components/signatures/DocumentContainer.js +206 -0
  64. package/dist/components/signatures/ImageSignatureInput.js +265 -0
  65. package/dist/components/signatures/ResponsiveTable.js +1 -3
  66. package/dist/components/signatures/SignatureInput.js +303 -0
  67. package/dist/components/signatures/SignatureInputProps.js +17 -11
  68. package/dist/components/signatures/SignatureTemplateDesigner.js +186 -77
  69. package/dist/components/signatures/transparent.jpeg +0 -0
  70. package/dist/event/LoadDataActionHandler.js +1 -1
  71. package/dist/event/Observable.js +1 -1
  72. package/dist/event/RouteActionHandler.js +17 -4
  73. package/dist/event/ServiceCallActionHandler.js +7 -3
  74. package/dist/js/Addresses.js +16 -9
  75. package/dist/view/Dashboard.js +10 -6
  76. package/dist/view/security/LoginBusinessPortal.js +1 -0
  77. package/package.json +4 -1
@@ -19,8 +19,30 @@ require("./PortalNavbar.css");
19
19
 
20
20
  var _reactstrap = require("reactstrap");
21
21
 
22
+ var _ActionHandlers = _interopRequireDefault(require("../../event/ActionHandlers"));
23
+
24
+ var _ApplicationContext = _interopRequireWildcard(require("./../../ApplicationContext"));
25
+
26
+ var _Utils = _interopRequireDefault(require("../../Utils"));
27
+
28
+ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
29
+
30
+ 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; }
31
+
22
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
33
 
34
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
35
+
36
+ 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."); }
37
+
38
+ 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); }
39
+
40
+ 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; }
41
+
42
+ 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; }
43
+
44
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
45
+
24
46
  const useStyles = (0, _styles.makeStyles)(theme => ({
25
47
  iconButtonLabel: {
26
48
  display: 'flex',
@@ -28,10 +50,52 @@ const useStyles = (0, _styles.makeStyles)(theme => ({
28
50
  }
29
51
  }));
30
52
 
31
- const PortalNavbar = props => {
53
+ const PortalNavbar = /*#__PURE__*/_react.default.memo(props => {
32
54
  const classes = useStyles();
55
+
56
+ const _React$useState = _react.default.useState(props.avatar),
57
+ _React$useState2 = _slicedToArray(_React$useState, 2),
58
+ avatarUrl = _React$useState2[0],
59
+ setAvatarUrl = _React$useState2[1];
60
+
61
+ const _React$useState3 = _react.default.useState(props.moduleMenus ? props.moduleMenus[0].id : null),
62
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
63
+ selectedButton = _React$useState4[0],
64
+ setSelectedButton = _React$useState4[1];
65
+
66
+ const initializing = _react.default.useRef(true);
67
+
68
+ let keyCounter = 0;
69
+
70
+ _react.default.useEffect(() => {
71
+ if (initializing.current) {
72
+ let avatarListener = {};
73
+ avatarListener.type = _ApplicationContext.AVATAR_LISTENER_TYPE;
74
+
75
+ avatarListener.handler = avatar => {
76
+ setAvatarUrl(avatar.url);
77
+ };
78
+
79
+ _ApplicationContext.default.addApplicationListener(avatarListener);
80
+
81
+ initializing.current = false;
82
+ }
83
+ });
84
+
85
+ const launchView = path => {
86
+ let actionConfig = {};
87
+ actionConfig.actionType = 'route';
88
+ actionConfig.path = path;
89
+ actionConfig.parent = true;
90
+
91
+ _ActionHandlers.default.invokeHandler(actionConfig);
92
+ };
93
+
33
94
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
34
- className: "row portal-navbar-container"
95
+ className: "row portal-navbar-container",
96
+ style: {
97
+ padding: "4px 0"
98
+ }
35
99
  }, /*#__PURE__*/_react.default.createElement("div", {
36
100
  className: "col-*-* portal-navbar-logo"
37
101
  }, /*#__PURE__*/_react.default.createElement("img", {
@@ -45,33 +109,49 @@ const PortalNavbar = props => {
45
109
  }, /*#__PURE__*/_react.default.createElement("div", {
46
110
  className: "row"
47
111
  }, /*#__PURE__*/_react.default.createElement("div", {
48
- className: "col-*-*"
49
- }, /*#__PURE__*/_react.default.createElement(_IconButton.default, {
50
- "aria-controls": "menu-list-grow",
112
+ className: "col-*-*",
51
113
  style: {
52
- width: 80,
53
- height: 48,
54
- borderBottom: '2px solid',
55
- borderColor: _colors.grey800,
56
- borderRadius: 0
57
- },
58
- "aria-haspopup": "true",
59
- classes: {
60
- label: classes.iconButtonLabel
61
- },
62
- onClick: () => {
63
- alert('WORK CLICK FIREEEEE');
114
+ width: '71%',
115
+ height: '48px'
64
116
  }
65
- }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
66
- id: "WORK"
67
- }), /*#__PURE__*/_react.default.createElement("div", {
117
+ }, /*#__PURE__*/_react.default.createElement("div", {
118
+ className: "row"
119
+ }, props.moduleMenus ? props.moduleMenus.map(menu => {
120
+ return /*#__PURE__*/_react.default.createElement("div", {
121
+ className: "col-*-*",
122
+ style: {
123
+ padding: "4px"
124
+ },
125
+ key: keyCounter++
126
+ }, /*#__PURE__*/_react.default.createElement(_IconButton.default, {
127
+ "aria-controls": "menu-list-grow",
128
+ style: {
129
+ width: 80,
130
+ height: 48,
131
+ borderBottom: selectedButton === menu.id ? '2px solid ' + _colors.grey800 : 'none',
132
+ borderRadius: 0
133
+ },
134
+ "aria-haspopup": "true",
135
+ classes: {
136
+ label: classes.iconButtonLabel
137
+ },
138
+ onClick: () => {
139
+ setSelectedButton(menu.id);
140
+ props.moduleChangeHandler(menu.id);
141
+ }
142
+ }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
143
+ id: menu.icon
144
+ }), /*#__PURE__*/_react.default.createElement("div", {
145
+ style: {
146
+ fontSize: '14px'
147
+ }
148
+ }, _Utils.default.getComponentAttribute(menu, 'label', ''))));
149
+ }) : null)), /*#__PURE__*/_react.default.createElement("div", {
150
+ className: "col-*-*",
68
151
  style: {
69
- fontSize: '14px'
152
+ width: '29%',
153
+ height: '48px'
70
154
  }
71
- }, "Workspace"))), /*#__PURE__*/_react.default.createElement("div", {
72
- className: "col-*-* spacer"
73
- }), /*#__PURE__*/_react.default.createElement("div", {
74
- className: "col-*-*"
75
155
  }, /*#__PURE__*/_react.default.createElement("div", {
76
156
  style: {
77
157
  width: '80px'
@@ -93,23 +173,32 @@ const PortalNavbar = props => {
93
173
  "data-toggle": "dropdown",
94
174
  nav: true,
95
175
  onClick: e => e.preventDefault()
96
- }, /*#__PURE__*/_react.default.createElement("div", {
97
- style: {
98
- margin: '-4px'
99
- }
100
176
  }, /*#__PURE__*/_react.default.createElement(_IconButton.default, {
101
177
  "aria-controls": "menu-list-grow",
102
178
  style: {
103
- borderColor: _colors.grey800
179
+ borderColor: _colors.grey800,
180
+ width: '40px',
181
+ height: '40px',
182
+ padding: '0'
104
183
  },
105
184
  "aria-haspopup": "true",
106
185
  classes: {
107
186
  label: classes.iconButtonLabel
108
187
  }
109
- }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
110
- id: "PERSON"
111
- }))), " ", /*#__PURE__*/_react.default.createElement("b", {
112
- className: "caret d-none d-lg-block d-xl-block"
188
+ }, /*#__PURE__*/_react.default.createElement("img", {
189
+ alt: "...",
190
+ src: avatarUrl,
191
+ width: '36px',
192
+ height: '36px',
193
+ style: {
194
+ borderRadius: '50%'
195
+ }
196
+ })), " ", /*#__PURE__*/_react.default.createElement("b", {
197
+ className: "caret d-none d-lg-block d-xl-block",
198
+ style: {
199
+ margin: '0 0 0 44px',
200
+ color: _colors.grey800
201
+ }
113
202
  }), /*#__PURE__*/_react.default.createElement("p", {
114
203
  className: "d-lg-none"
115
204
  }, " Log out "), " "), " ", /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownMenu, {
@@ -120,7 +209,7 @@ const PortalNavbar = props => {
120
209
  tag: "li"
121
210
  }, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
122
211
  className: "nav-item",
123
- onClick: () => (void 0).launchView('system/user-profile.json')
212
+ onClick: () => launchView('system/user-profile.json')
124
213
  }, " ", "Profile", " "), " "), " ", /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
125
214
  divider: true,
126
215
  tag: "li"
@@ -132,7 +221,7 @@ const PortalNavbar = props => {
132
221
  }, " ", "Log out", " "), " "), " "), " "), " ", /*#__PURE__*/_react.default.createElement("li", {
133
222
  className: "separator d-lg-none"
134
223
  })), " "), " "))))));
135
- };
224
+ });
136
225
 
137
226
  var _default = PortalNavbar;
138
227
  exports.default = _default;
@@ -0,0 +1,312 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
11
+
12
+ var _Icon = _interopRequireDefault(require("../Icon"));
13
+
14
+ var _Utils = _interopRequireDefault(require("../../Utils"));
15
+
16
+ var _Dialog = _interopRequireDefault(require("@material-ui/core/Dialog"));
17
+
18
+ var _DialogContent = _interopRequireDefault(require("@material-ui/core/DialogContent"));
19
+
20
+ var _DialogTitle = _interopRequireDefault(require("@material-ui/core/DialogTitle"));
21
+
22
+ var _SignatureInput = _interopRequireDefault(require("../signatures/SignatureInput"));
23
+
24
+ var _htmlToImage = require("html-to-image");
25
+
26
+ var _DocumentContainer = _interopRequireDefault(require("./DocumentContainer"));
27
+
28
+ var _ApplicationContext = _interopRequireDefault(require("../../ApplicationContext"));
29
+
30
+ var _reactPromiseTracker = require("react-promise-tracker");
31
+
32
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
+
34
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
35
+
36
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
37
+
38
+ 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."); }
39
+
40
+ 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); }
41
+
42
+ 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; }
43
+
44
+ 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; }
45
+
46
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
47
+
48
+ const status = response => {
49
+ if (response.ok) {
50
+ return Promise.resolve(response);
51
+ } else {
52
+ let error = new Error(response.statusText);
53
+ error.code = response.status;
54
+ return Promise.reject(error);
55
+ }
56
+ };
57
+
58
+ const json = response => {
59
+ return response.text();
60
+ };
61
+
62
+ const location = window.location.protocol + "//" + window.location.hostname;
63
+
64
+ const AgilitySignaturePanel = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.default.forwardRef((props, ref) => {
65
+ const _React$useState = _react.default.useState(null),
66
+ _React$useState2 = _slicedToArray(_React$useState, 2),
67
+ inputMode = _React$useState2[0],
68
+ setInputMode = _React$useState2[1];
69
+
70
+ const _React$useState3 = _react.default.useState(false),
71
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
72
+ open = _React$useState4[0],
73
+ setOpen = _React$useState4[1];
74
+
75
+ const _React$useState5 = _react.default.useState(false),
76
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
77
+ imagesFetched = _React$useState6[0],
78
+ setImagesFetched = _React$useState6[1];
79
+
80
+ const _React$useState7 = _react.default.useState(false),
81
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
82
+ signing = _React$useState8[0],
83
+ setSigning = _React$useState8[1];
84
+
85
+ const _React$useState9 = _react.default.useState(null),
86
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
87
+ signatureImage = _React$useState10[0],
88
+ setSignatureImage = _React$useState10[1];
89
+
90
+ const _React$useState11 = _react.default.useState(null),
91
+ _React$useState12 = _slicedToArray(_React$useState11, 2),
92
+ initialImage = _React$useState12[0],
93
+ setInitialImage = _React$useState12[1];
94
+
95
+ const _React$useState13 = _react.default.useState(null),
96
+ _React$useState14 = _slicedToArray(_React$useState13, 2),
97
+ systemSignatures = _React$useState14[0],
98
+ setSystemSignatures = _React$useState14[1];
99
+
100
+ const username = sessionStorage.getItem("username");
101
+
102
+ _react.default.useEffect(() => {
103
+ if (!imagesFetched) {
104
+ fetchImages();
105
+ }
106
+ });
107
+
108
+ _react.default.useEffect(() => {
109
+ if (imagesFetched) {
110
+ if (!_Utils.default.isNull(initialImage) && !_Utils.default.isNull(signatureImage)) {
111
+ let signers = props.config.documents[0].signers;
112
+
113
+ var _iterator = _createForOfIteratorHelper(signers),
114
+ _step;
115
+
116
+ try {
117
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
118
+ const signer = _step.value;
119
+
120
+ if (signer.email === username) {
121
+ let signingInputs = signer.signatureInputs;
122
+
123
+ var _iterator2 = _createForOfIteratorHelper(signingInputs),
124
+ _step2;
125
+
126
+ try {
127
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
128
+ const signingInput = _step2.value;
129
+
130
+ if ("SIGN" === signingInput.inputType) {
131
+ signingInput.value = signatureImage;
132
+ } else if ("INITIAL" === signingInput.inputType) {
133
+ signingInput.value = initialImage;
134
+ }
135
+ }
136
+ } catch (err) {
137
+ _iterator2.e(err);
138
+ } finally {
139
+ _iterator2.f();
140
+ }
141
+ }
142
+ }
143
+ } catch (err) {
144
+ _iterator.e(err);
145
+ } finally {
146
+ _iterator.f();
147
+ }
148
+
149
+ props.valueChangeHandler(signers);
150
+ }
151
+ }
152
+ }, [initialImage, signatureImage]);
153
+
154
+ const showInput = mode => {
155
+ setInputMode(mode);
156
+ setOpen(true);
157
+ };
158
+
159
+ const doSign = dataUrl => {
160
+ setSigning(false);
161
+
162
+ if (inputMode === 'SIGN') {
163
+ setSignatureImage(dataUrl);
164
+ } else {
165
+ setInitialImage(dataUrl);
166
+ }
167
+
168
+ setOpen(false);
169
+ };
170
+
171
+ const sign = (method, data) => {
172
+ setSigning(true);
173
+
174
+ if (method === 'type') {
175
+ let node = document.getElementById("template");
176
+ node.innerText = data;
177
+ (0, _htmlToImage.toPng)(node).then(function (dataUrl) {
178
+ doSign(dataUrl);
179
+ }).catch(function (error) {
180
+ console.error('oops, something went wrong!', error);
181
+ });
182
+ } else {
183
+ doSign(data.url);
184
+ }
185
+ };
186
+
187
+ function getFetchConfig() {
188
+ const accessToken = sessionStorage.getItem("accessToken");
189
+ const idToken = sessionStorage.getItem("idToken");
190
+ return {
191
+ method: 'GET',
192
+ headers: {
193
+ 'Accept': 'application/json',
194
+ 'Authorization': 'Bearer ' + accessToken,
195
+ 'idToken': idToken
196
+ }
197
+ };
198
+ }
199
+
200
+ function fetchImages() {
201
+ let fetchConfig = getFetchConfig();
202
+ let url = location + _ApplicationContext.default.getBaseApiUrl() + props.signatureImageUrl + "/find";
203
+ setImagesFetched(true);
204
+ (0, _reactPromiseTracker.trackPromise)(fetch(encodeURI(url), fetchConfig).then(status).then(json).then(data => {
205
+ if (data && data.length > 0) {
206
+ let images = JSON.parse(data);
207
+ setSystemSignatures(images);
208
+ }
209
+ }).catch(e => {
210
+ if (e.code === 401) {
211
+ _ApplicationContext.default.clear();
212
+
213
+ _ApplicationContext.default.getApplicationHistory().push('/login');
214
+ }
215
+ }));
216
+ }
217
+
218
+ return /*#__PURE__*/_react.default.createElement("div", {
219
+ ref: ref,
220
+ style: {
221
+ padding: "4px 32px"
222
+ }
223
+ }, /*#__PURE__*/_react.default.createElement("div", {
224
+ style: {
225
+ position: 'absolute',
226
+ left: '-100000px'
227
+ }
228
+ }, /*#__PURE__*/_react.default.createElement("div", {
229
+ id: 'template',
230
+ style: {
231
+ font: 'italic 64px Brush Script MT, Brush Script Std, cursive',
232
+ background: 'transparent',
233
+ padding: '8px'
234
+ }
235
+ })), /*#__PURE__*/_react.default.createElement(_Dialog.default, {
236
+ open: open,
237
+ maxWidth: "xl",
238
+ "aria-labelledby": "alert-dialog-title",
239
+ "aria-describedby": "alert-dialog-description"
240
+ }, /*#__PURE__*/_react.default.createElement(_DialogTitle.default, {
241
+ id: "alert-dialog-title"
242
+ }, "Signature Input"), /*#__PURE__*/_react.default.createElement(_DialogContent.default, null, /*#__PURE__*/_react.default.createElement(_SignatureInput.default, {
243
+ mode: inputMode,
244
+ signing: signing,
245
+ imageProcessingUrl: props.imageProcessingUrl,
246
+ signatureImageUrl: props.signatureImageUrl,
247
+ systemImage: systemSignatures,
248
+ systemSignaturesChangeHandler: newSignatures => {
249
+ setSystemSignatures(newSignatures);
250
+ },
251
+ callback: (action, mode = null, data = null) => {
252
+ if (action === 'CLOSE') {
253
+ setOpen(false);
254
+ } else {
255
+ sign(mode, data);
256
+ }
257
+ }
258
+ }))), /*#__PURE__*/_react.default.createElement("div", {
259
+ style: {
260
+ border: '1px solid #f1f1f1',
261
+ height: '64px',
262
+ width: '100%',
263
+ borderRadius: '4px'
264
+ }
265
+ }, /*#__PURE__*/_react.default.createElement("div", {
266
+ className: 'row',
267
+ style: {
268
+ padding: "4px 32px"
269
+ }
270
+ }, /*#__PURE__*/_react.default.createElement("div", {
271
+ className: 'col-*-*'
272
+ }, /*#__PURE__*/_react.default.createElement(_Button.default, {
273
+ variant: 'text',
274
+ size: "large",
275
+ style: {
276
+ width: '100px',
277
+ height: '48px'
278
+ },
279
+ onClick: () => {
280
+ showInput('INITIAL');
281
+ },
282
+ startIcon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
283
+ id: 'INITIAL',
284
+ color: 'rgba(0, 0, 0, 0.54)'
285
+ })
286
+ }, "INITIAL"), /*#__PURE__*/_react.default.createElement(_Button.default, {
287
+ variant: 'text',
288
+ size: "large",
289
+ style: {
290
+ width: '100px',
291
+ height: '48px'
292
+ },
293
+ onClick: () => {
294
+ showInput('SIGN');
295
+ },
296
+ startIcon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
297
+ id: 'SIGN',
298
+ color: 'rgba(0, 0, 0, 0.54)'
299
+ })
300
+ }, "SIGN")))), /*#__PURE__*/_react.default.createElement("div", {
301
+ style: {
302
+ width: '100%'
303
+ }
304
+ }, /*#__PURE__*/_react.default.createElement(_DocumentContainer.default, {
305
+ config: props.config,
306
+ signatureImage: signatureImage,
307
+ initialImage: initialImage
308
+ })));
309
+ }));
310
+
311
+ var _default = AgilitySignaturePanel;
312
+ exports.default = _default;
@@ -0,0 +1,33 @@
1
+
2
+ * {
3
+ outline: none !important;
4
+ }
5
+
6
+ .container {
7
+ padding: 16px;
8
+ }
9
+
10
+ .container .row {
11
+ margin-left: 0 !important;
12
+ margin-right: 0 !important;
13
+ }
14
+
15
+ .doc-container-layout .p,
16
+ .doc-container-layout .r {
17
+ position: absolute;
18
+ }
19
+
20
+ .doc-container-layout .page {
21
+ position: relative;
22
+ margin: 0.5em
23
+ }
24
+
25
+ @supports (-webkit-text-stroke: 1px black) {
26
+ .doc-container-layout .p {
27
+ text-shadow: none !important;
28
+ }
29
+ }
30
+
31
+ .doc-container-layout {
32
+ height: auto
33
+ }