@agilemotion/oui-react-js 1.3.8 → 1.4.0

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 (230) hide show
  1. package/README.TXT +1 -0
  2. package/dist/{ApplicationContext.js → ApplicationManager.js} +334 -335
  3. package/dist/BasicApp.js +67 -64
  4. package/dist/BasicAppHome.js +90 -110
  5. package/dist/BusinessPortalApp.js +1 -1
  6. package/dist/BusinessPortalAppHome.js +15 -50
  7. package/dist/DynamicJS.js +24 -52
  8. package/dist/RestUtils.js +90 -116
  9. package/dist/Utils.js +49 -37
  10. package/dist/WithRouter.js +34 -0
  11. package/dist/assets/jss/components/authNavbarStyle.js +34 -35
  12. package/dist/assets/jss/components/cardHeaderStyle.js +12 -12
  13. package/dist/assets/jss/components/customDropdownStyle.js +26 -26
  14. package/dist/assets/jss/components/customInputStyle.js +2 -8
  15. package/dist/assets/jss/components/dropdownStyle.js +10 -15
  16. package/dist/assets/jss/components/footerStyle.js +12 -18
  17. package/dist/assets/jss/components/headerLinksStyle.js +7 -13
  18. package/dist/assets/jss/components/headerStyle.js +24 -25
  19. package/dist/assets/jss/components/navbarLinksStyle.js +7 -13
  20. package/dist/assets/jss/components/navbarStyle.js +24 -25
  21. package/dist/assets/jss/components/sidebarStyle.js +41 -43
  22. package/dist/assets/jss/components/typographyStyle.js +2 -8
  23. package/dist/assets/jss/rootStyle.js +32 -47
  24. package/dist/assets/jss/views/layoutStyle.js +6 -11
  25. package/dist/assets/jss/views/loginStyle.js +4 -10
  26. package/dist/assets/lotties/call-loading.json +1 -0
  27. package/dist/assets/lotties/calling-2.json +1 -0
  28. package/dist/assets/lotties/calling.json +1 -0
  29. package/dist/assets/lotties/calling2.json +1 -0
  30. package/dist/assets/lotties/chat.json +1 -0
  31. package/dist/assets/lotties/join.json +1 -0
  32. package/dist/assets/lotties/loading.json +1 -0
  33. package/dist/assets/lotties/msg2.json +1 -0
  34. package/dist/assets/lotties/recording.json +1 -0
  35. package/dist/assets/lotties/waiting.json +1 -0
  36. package/dist/assets/scss/black-dashboard-react/bootstrap/_card.scss +5 -5
  37. package/dist/assets/scss/black-dashboard-react/bootstrap/_carousel.scss +2 -2
  38. package/dist/assets/scss/black-dashboard-react/bootstrap/_custom-forms.scss +3 -3
  39. package/dist/assets/scss/black-dashboard-react/bootstrap/_functions.scss +1 -1
  40. package/dist/assets/scss/black-dashboard-react/bootstrap/_images.scss +1 -1
  41. package/dist/assets/scss/black-dashboard-react/bootstrap/_jumbotron.scss +1 -1
  42. package/dist/assets/scss/black-dashboard-react/bootstrap/_popover.scss +7 -5
  43. package/dist/assets/scss/black-dashboard-react/bootstrap/_tooltip.scss +4 -4
  44. package/dist/assets/scss/black-dashboard-react/bootstrap/_variables.scss +5 -5
  45. package/dist/assets/scss/black-dashboard-react/bootstrap/mixins/_grid-framework.scss +2 -2
  46. package/dist/assets/scss/black-dashboard-react/bootstrap/mixins/_grid.scss +11 -9
  47. package/dist/assets/scss/black-dashboard-react/bootstrap/utilities/_embed.scss +6 -4
  48. package/dist/assets/scss/black-dashboard-react/custom/_sidebar-and-main-panel.scss +1 -1
  49. package/dist/assets/scss/black-dashboard-react/custom/_variables.scss +1 -1
  50. package/dist/components/AlertBar.js +39 -80
  51. package/dist/components/AlertItem.js +4 -26
  52. package/dist/components/Button.js +49 -52
  53. package/dist/components/Calendar.js +442 -0
  54. package/dist/components/Calender.css +244 -0
  55. package/dist/components/ConfirmationDialog.js +5 -29
  56. package/dist/components/DataGrid.js +207 -345
  57. package/dist/components/DataGridColumn.js +6 -29
  58. package/dist/components/DataGridFilter.js +48 -116
  59. package/dist/components/DataGridHeading.js +11 -19
  60. package/dist/components/Dialog.js +27 -121
  61. package/dist/components/DocumentViewer.js +12 -38
  62. package/dist/components/DocumentViewerComponent.js +2 -20
  63. package/dist/components/FileThumb.js +126 -0
  64. package/dist/components/Graph.js +33 -75
  65. package/dist/components/GraphNode.js +5 -22
  66. package/dist/components/HtmlPanel.js +68 -82
  67. package/dist/components/Icon.js +107 -1
  68. package/dist/components/LoadingIndicator.js +4 -4
  69. package/dist/components/LottieIcon.js +134 -0
  70. package/dist/components/PopupView.js +3 -21
  71. package/dist/components/Portlet.js +100 -0
  72. package/dist/components/RegularButton.js +15 -19
  73. package/dist/components/SignaturePanel.js +9 -40
  74. package/dist/components/SocketManager.js +170 -0
  75. package/dist/components/StepperTitleBar.js +33 -59
  76. package/dist/components/TabPage.js +6 -9
  77. package/dist/components/TabPanel.js +49 -98
  78. package/dist/components/TableCellContent.js +31 -39
  79. package/dist/components/TemplateDesigner.js +114 -158
  80. package/dist/components/TemplateItemEventHandler.js +33 -100
  81. package/dist/components/TemplateTable.js +6 -42
  82. package/dist/components/TitleBar.js +38 -54
  83. package/dist/components/Toolbar.js +67 -182
  84. package/dist/components/Tree.js +29 -66
  85. package/dist/components/card/Card.js +16 -20
  86. package/dist/components/card/CardAvatar.js +9 -13
  87. package/dist/components/card/CardBody.js +13 -17
  88. package/dist/components/card/CardFooter.js +12 -16
  89. package/dist/components/card/CardHeader.js +13 -17
  90. package/dist/components/card/CardIcon.js +6 -10
  91. package/dist/components/card/CardText.js +6 -10
  92. package/dist/components/customInput/CustomInput.js +12 -10
  93. package/dist/components/dashboard/BasicBusinessAppDashboard.js +85 -159
  94. package/dist/components/dashboard/BusinessPortalAppDashboard.js +30 -75
  95. package/dist/components/dashboard/components/Header.js +9 -26
  96. package/dist/components/dashboard/components/LeftDrawer.js +3 -1
  97. package/dist/components/dashboard/components/blackDashboard/fixedPlugin/FixedPlugin.js +1 -1
  98. package/dist/components/dashboard/components/blackDashboard/sidebar/Sidebar.css +7 -0
  99. package/dist/components/dashboard/components/blackDashboard/sidebar/Sidebar.js +189 -79
  100. package/dist/components/footer/Footer.js +6 -18
  101. package/dist/components/form/AddressSearch.js +32 -66
  102. package/dist/components/form/AutoComplete.js +161 -0
  103. package/dist/components/form/BaseField.js +89 -107
  104. package/dist/components/form/DatePicker.js +8 -23
  105. package/dist/components/form/FieldSet.js +161 -191
  106. package/dist/components/form/Form.css +1 -1
  107. package/dist/components/form/Form.js +153 -479
  108. package/dist/components/form/GridField.js +46 -146
  109. package/dist/components/form/IconField.js +35 -0
  110. package/dist/components/form/ImageEditor.js +22 -60
  111. package/dist/components/form/LookupField.js +8 -29
  112. package/dist/components/form/MultiFileUploadField.js +187 -0
  113. package/dist/components/form/RadioGroup.js +10 -26
  114. package/dist/components/form/Section.js +40 -91
  115. package/dist/components/form/SelectItem.js +14 -33
  116. package/dist/components/form/SignatureTemplateDesignerField.js +0 -1
  117. package/dist/components/form/Switch.js +53 -0
  118. package/dist/components/form/TextField.js +10 -17
  119. package/dist/components/form/TimePicker.js +8 -1
  120. package/dist/components/form/TransferList.css +2 -2
  121. package/dist/components/form/TransferList.js +67 -125
  122. package/dist/components/form/UploadField.js +132 -177
  123. package/dist/components/form/fieldset.css +8 -0
  124. package/dist/components/grid/GridContainer.js +5 -9
  125. package/dist/components/grid/GridItem.js +5 -9
  126. package/dist/components/layout/CollapsiblePanel.js +11 -33
  127. package/dist/components/layout/Layout.js +228 -290
  128. package/dist/components/layout/VC.css +17 -0
  129. package/dist/components/layout/View.css +18 -1
  130. package/dist/components/layout/View.js +80 -200
  131. package/dist/components/layout/ViewContainer.css +3 -0
  132. package/dist/components/layout/ViewContainer.js +59 -0
  133. package/dist/components/layout/ViewPort.js +50 -80
  134. package/dist/components/layout/Window.css +18 -0
  135. package/dist/components/layout/Window.js +287 -0
  136. package/dist/components/layout/WindowViewPort.js +71 -0
  137. package/dist/components/loader.css +1 -1
  138. package/dist/components/media/ClosablePanel.css +37 -0
  139. package/dist/components/media/ClosablePanel.js +53 -0
  140. package/dist/components/media/LobbyWaitingList.js +91 -0
  141. package/dist/components/media/MediaSoupHelper.js +223 -0
  142. package/dist/components/media/Recorder.js +235 -0
  143. package/dist/components/media/SideBarContent.css +54 -0
  144. package/dist/components/media/SideBarContent.js +46 -0
  145. package/dist/components/media/SocketRequest.js +20 -0
  146. package/dist/components/media/SocketResponse.js +16 -0
  147. package/dist/components/media/Timer.css +30 -0
  148. package/dist/components/media/Timer.js +88 -0
  149. package/dist/components/media/Toolbar.css +35 -0
  150. package/dist/components/media/Toolbar.js +494 -0
  151. package/dist/components/media/Tracks.js +39 -0
  152. package/dist/components/media/TrainingRoom.js +608 -0
  153. package/dist/components/media/Transports.js +35 -0
  154. package/dist/components/media/VCEventManager.js +74 -0
  155. package/dist/components/media/VCEventType.js +164 -0
  156. package/dist/components/media/VCParticipantList.css +72 -0
  157. package/dist/components/media/VCParticipantList.js +56 -0
  158. package/dist/components/media/VCParticipantListItem.css +73 -0
  159. package/dist/components/media/VCParticipantListItem.js +319 -0
  160. package/dist/components/media/VCRoom.css +42 -0
  161. package/dist/components/media/VCRoom.js +90 -0
  162. package/dist/components/media/VCRoomParticipant.css +25 -0
  163. package/dist/components/media/VCRoomParticipant.js +808 -0
  164. package/dist/components/media/VCRoomRecorder.js +223 -0
  165. package/dist/components/media/VCRoomWorkspace.css +86 -0
  166. package/dist/components/media/VCRoomWorkspace.js +666 -0
  167. package/dist/components/media/Video.css +4 -0
  168. package/dist/components/media/Video.js +131 -0
  169. package/dist/components/media/VideoPlayer.css +10 -0
  170. package/dist/components/media/VideoPlayer.js +86 -0
  171. package/dist/components/media/chat/ChatRoom.js +926 -0
  172. package/dist/components/media/chat/ChatRoomItem.js +83 -0
  173. package/dist/components/media/chat/ChatRoomList.js +78 -0
  174. package/dist/components/media/chat/ChatRooms.scss +567 -0
  175. package/dist/components/menu/CollapsibleMenu.js +2 -19
  176. package/dist/components/menu/MenuBars.js +6 -33
  177. package/dist/components/menu/MenuButton.js +27 -39
  178. package/dist/components/menu/MenuItem.js +3 -20
  179. package/dist/components/menu/MenuLink.js +22 -13
  180. package/dist/components/navbars/AuthNavbar.js +5 -18
  181. package/dist/components/navbars/HomeNavbar.js +5 -7
  182. package/dist/components/navbars/PortalNavbar.js +7 -25
  183. package/dist/components/signatures/AgilitySignaturePanel.js +38 -104
  184. package/dist/components/signatures/AlertItem.js +3 -24
  185. package/dist/components/signatures/DocumentContainer.js +47 -134
  186. package/dist/components/signatures/ImageSignatureInput.js +11 -38
  187. package/dist/components/signatures/MenuButton.js +1 -16
  188. package/dist/components/signatures/Prompt.js +3 -24
  189. package/dist/components/signatures/ResponsiveTable.js +42 -83
  190. package/dist/components/signatures/SearchView.js +13 -50
  191. package/dist/components/signatures/SignatorySearch.js +83 -99
  192. package/dist/components/signatures/SignatorySearchForm.js +11 -17
  193. package/dist/components/signatures/SignatureInput.js +18 -47
  194. package/dist/components/signatures/SignatureInputProps.js +18 -60
  195. package/dist/components/signatures/SignatureTemplateDesigner.js +151 -239
  196. package/dist/components/signatures/Toolbar.js +7 -34
  197. package/dist/components/signatures/ViewUtils.js +2 -6
  198. package/dist/components/typography/Danger.js +3 -1
  199. package/dist/components/typography/Info.js +3 -1
  200. package/dist/components/typography/Link.js +6 -2
  201. package/dist/event/ActionHandlers.js +6 -6
  202. package/dist/event/EventType.js +7 -1
  203. package/dist/event/LoadDataActionHandler.js +1 -1
  204. package/dist/event/Observable.js +80 -174
  205. package/dist/event/RouteActionHandler.js +74 -31
  206. package/dist/event/ServiceCallActionHandler.js +36 -24
  207. package/dist/event/SignalGraphActionHandler.js +2 -2
  208. package/dist/js/Addresses.js +10 -8
  209. package/dist/js/Calendar.js +220 -0
  210. package/dist/js/Media.js +157 -0
  211. package/dist/redux/store/ConfigureStore.js +3 -9
  212. package/dist/redux/store/DashboardStore.js +42 -94
  213. package/dist/redux/store/SecurityStore.js +15 -50
  214. package/dist/view/Dashboard.js +256 -171
  215. package/dist/view/Views.js +30 -0
  216. package/dist/view/security/ChangePasswordBasic.js +29 -80
  217. package/dist/view/security/ForgotPassword.js +13 -46
  218. package/dist/view/security/ForgotPasswordBasic.js +12 -45
  219. package/dist/view/security/Login.js +15 -51
  220. package/dist/view/security/LoginBasic.js +13 -46
  221. package/dist/view/security/LoginBusinessPortal.js +12 -45
  222. package/dist/view/security/ResetPassword.js +13 -51
  223. package/dist/view/security/ResetPasswordBasic.js +27 -75
  224. package/dist/view/security/Security.js +1 -0
  225. package/package.json +31 -25
  226. package/README.md +0 -1623
  227. package/dist/components/dashboard/BasicApp.js +0 -140
  228. package/dist/components/navbars/NavbarLinks.js +0 -212
  229. package/dist/components/signatures/OLD.js +0 -1138
  230. package/gulpfile.js +0 -77
@@ -13,27 +13,10 @@ var _MenuBars = require("./MenuBars");
13
13
 
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
16
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
17
-
18
- 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."); }
19
-
20
- 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); }
21
-
22
- 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; }
23
-
24
- 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; }
25
-
26
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
27
-
28
16
  const CollapsibleMenu = props => {
29
- const _React$useState = _react.default.useState(""),
30
- _React$useState2 = _slicedToArray(_React$useState, 2),
31
- currentMenuName = _React$useState2[0],
32
- setCurrentMenuName = _React$useState2[1];
17
+ const [currentMenuName, setCurrentMenuName] = _react.default.useState("");
33
18
 
34
- const _React$useState3 = _react.default.useState(true),
35
- _React$useState4 = _slicedToArray(_React$useState3, 1),
36
- collapse = _React$useState4[0];
19
+ const [collapse] = _react.default.useState(true);
37
20
 
38
21
  const styles = {
39
22
  wrapper: {
@@ -30,28 +30,10 @@ var _colors = require("material-ui/styles/colors");
30
30
 
31
31
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
32
32
 
33
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
33
+ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
34
34
 
35
35
  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; }
36
36
 
37
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
38
-
39
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
40
-
41
- 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; }
42
-
43
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
44
-
45
- 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."); }
46
-
47
- 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); }
48
-
49
- 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; }
50
-
51
- 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; }
52
-
53
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
54
-
55
37
  const useStyles = (0, _styles.makeStyles)(theme => ({
56
38
  // TODO: Merge these styles
57
39
  expandable: {
@@ -89,15 +71,9 @@ const useStyles = (0, _styles.makeStyles)(theme => ({
89
71
  function CollapsibleMenuBar(props) {
90
72
  const classes = useStyles();
91
73
 
92
- const _React$useState = _react.default.useState(''),
93
- _React$useState2 = _slicedToArray(_React$useState, 2),
94
- selectedLink = _React$useState2[0],
95
- setSelectedLink = _React$useState2[1];
74
+ const [selectedLink, setSelectedLink] = _react.default.useState('');
96
75
 
97
- const _React$useState3 = _react.default.useState({}),
98
- _React$useState4 = _slicedToArray(_React$useState3, 2),
99
- itemExpansionStatuses = _React$useState4[0],
100
- setItemExpansionStatuses = _React$useState4[1];
76
+ const [itemExpansionStatuses, setItemExpansionStatuses] = _react.default.useState({});
101
77
 
102
78
  const defaultElement = _react.default.useRef(null);
103
79
 
@@ -124,9 +100,9 @@ function CollapsibleMenuBar(props) {
124
100
  value = !itemExpansionStatuses[item];
125
101
  }
126
102
 
127
- setItemExpansionStatuses(_objectSpread(_objectSpread({}, itemExpansionStatuses), {}, {
103
+ setItemExpansionStatuses({ ...itemExpansionStatuses,
128
104
  [item]: value
129
- }));
105
+ });
130
106
  }
131
107
 
132
108
  function handler(children) {
@@ -178,10 +154,7 @@ function CollapsibleMenuBar(props) {
178
154
  function PopupMenuBar(props) {
179
155
  const classes = useStyles();
180
156
 
181
- const _React$useState5 = _react.default.useState({}),
182
- _React$useState6 = _slicedToArray(_React$useState5, 2),
183
- children = _React$useState6[0],
184
- setChildren = _React$useState6[1];
157
+ const [children, setChildren] = _react.default.useState({});
185
158
 
186
159
  function handleClick(item) {}
187
160
 
@@ -35,18 +35,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
35
35
 
36
36
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
37
37
 
38
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
39
-
40
- 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."); }
41
-
42
- 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); }
43
-
44
- 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; }
45
-
46
- 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; }
47
-
48
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
49
-
50
38
  const useStyles = (0, _styles.makeStyles)(theme => ({
51
39
  root: {
52
40
  display: 'flex'
@@ -67,50 +55,44 @@ const useStyles = (0, _styles.makeStyles)(theme => ({
67
55
  const MenuButton = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
68
56
  const classes = useStyles();
69
57
 
70
- const _React$useState = _react.default.useState(false),
71
- _React$useState2 = _slicedToArray(_React$useState, 2),
72
- open = _React$useState2[0],
73
- setOpen = _React$useState2[1];
58
+ const [open, setOpen] = _react.default.useState(false);
74
59
 
75
60
  const anchorRef = _react.default.useRef(null);
76
61
 
77
62
  let width = !_Utils.default.isNull(props.config.attributes['width']) ? parseInt(props.config.attributes['width'].toString().replace('px', '')) : null;
78
63
 
79
- const _React$useState3 = _react.default.useState(false),
80
- _React$useState4 = _slicedToArray(_React$useState3, 2),
81
- disabled = _React$useState4[0],
82
- setDisabled = _React$useState4[1];
64
+ const [disabled, setDisabled] = _react.default.useState(false);
83
65
 
84
- const _React$useState5 = _react.default.useState([]),
85
- _React$useState6 = _slicedToArray(_React$useState5, 1),
86
- itemRefs = _React$useState6[0];
66
+ const [itemRefs] = _react.default.useState([]);
87
67
 
88
- const _React$useState7 = _react.default.useState(null),
89
- _React$useState8 = _slicedToArray(_React$useState7, 2),
90
- config = _React$useState8[0],
91
- setConfig = _React$useState8[1];
68
+ const [config, setConfig] = _react.default.useState(null);
92
69
 
93
70
  _react.default.useEffect(() => {
94
71
  props.handle.api = api();
72
+ });
95
73
 
96
- if (_Utils.default.isNull(config)) {
97
- let parsedConfig = _Utils.default.parseConfig(props.config, props.viewId);
74
+ _react.default.useEffect(() => {
75
+ if (config) {
76
+ props.handle.api = api();
98
77
 
99
- setConfig(parsedConfig);
78
+ let parsedConfig = _Utils.default.parseConfig(config, props.viewId);
100
79
 
101
80
  _Observable.default.addSubscriptions(parsedConfig.eventHandlingConfig, props.handle, props.viewId);
102
81
 
103
- _Observable.default.addSystemSubscriptions(parsedConfig);
104
- }
105
- });
82
+ _Observable.default.addSystemSubscriptions(props.viewId, parsedConfig);
106
83
 
107
- _react.default.useEffect(() => {
108
- if (!_Utils.default.isNull(config)) {
109
- // TODO : Synch with loading of the menu items of the menu button. This may cause some load scripts to fail
110
- props.loadCompleteHandler(config.id);
84
+ props.handle.api.refresh();
111
85
  }
112
86
  }, [config]);
113
87
 
88
+ _react.default.useEffect(() => {
89
+ var _props$tableRow$id;
90
+
91
+ setConfig(props.tableRow ? { ...props.config,
92
+ id: props.config.id + '_' + ((_props$tableRow$id = props.tableRow.id) === null || _props$tableRow$id === void 0 ? void 0 : _props$tableRow$id.replaceAll('-', ''))
93
+ } : props.config);
94
+ }, []);
95
+
114
96
  const handleToggle = () => {
115
97
  setOpen(prevOpen => !prevOpen);
116
98
  };
@@ -133,7 +115,11 @@ const MenuButton = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
133
115
  const api = () => {
134
116
  return {
135
117
  get id() {
136
- return props.config.id;
118
+ return config ? config.id : props.config.id;
119
+ },
120
+
121
+ get tableRow() {
122
+ return props.tableRow;
137
123
  },
138
124
 
139
125
  getChildren: () => {
@@ -145,7 +131,9 @@ const MenuButton = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
145
131
  },
146
132
 
147
133
  refresh() {
148
- setDisabled(_Utils.default.evaluateBooleanExpression(config.disabled, config.id));
134
+ if (config) {
135
+ setDisabled(_Utils.default.evaluateBooleanExpression(config.disabled, config.id));
136
+ }
149
137
  }
150
138
 
151
139
  };
@@ -21,27 +21,10 @@ var _Event = _interopRequireDefault(require("../../event/Event"));
21
21
 
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
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
24
  const MenuItem = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
37
- const _React$useState = _react.default.useState({}),
38
- _React$useState2 = _slicedToArray(_React$useState, 1),
39
- handle = _React$useState2[0];
40
-
41
- const _React$useState3 = _react.default.useState(true),
42
- _React$useState4 = _slicedToArray(_React$useState3, 2),
43
- initializing = _React$useState4[0],
44
- setInitializing = _React$useState4[1];
25
+ const [handle] = _react.default.useState({});
26
+
27
+ const [initializing, setInitializing] = _react.default.useState(true);
45
28
 
46
29
  _react.default.useEffect(() => {
47
30
  handle.api = api();
@@ -23,9 +23,13 @@ var _reactRedux = require("react-redux");
23
23
 
24
24
  var _DashboardStore = require("../../redux/store/DashboardStore");
25
25
 
26
+ var _Icon = _interopRequireDefault(require("../Icon"));
27
+
26
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
29
 
28
30
  const MenuLink = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
31
+ var _props$config;
32
+
29
33
  const dispatch = (0, _reactRedux.useDispatch)();
30
34
 
31
35
  _react.default.useEffect(() => {
@@ -35,7 +39,13 @@ const MenuLink = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
35
39
  _Observable.default.addSubscriptions(parsedConfig.eventHandlingConfig, handle, props.viewId);
36
40
 
37
41
  if (props.autoClick) {
38
- dispatch(_DashboardStore.actionCreators.setActiveRoute(props.name));
42
+ if (!_Utils.default.isNull(props.clickCallback)) {
43
+ props.clickCallback({
44
+ id: props.id,
45
+ name: props.name
46
+ });
47
+ }
48
+
39
49
  let event = new _Event.default(handle, props.viewId);
40
50
 
41
51
  _Observable.default.fireEvent(_EventType.default.CLICK, event);
@@ -45,13 +55,15 @@ const MenuLink = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
45
55
 
46
56
  const handleClick = e => {
47
57
  e.preventDefault();
48
- dispatch(_DashboardStore.actionCreators.setActiveRoute(props.name));
49
58
  let event = new _Event.default(handle, props.viewId);
50
59
 
51
60
  _Observable.default.fireEvent(_EventType.default.CLICK, event);
52
61
 
53
62
  if (!_Utils.default.isNull(props.clickCallback)) {
54
- props.clickCallback();
63
+ props.clickCallback({
64
+ id: props.id,
65
+ name: props.name
66
+ });
55
67
  }
56
68
  };
57
69
 
@@ -63,24 +75,21 @@ const MenuLink = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
63
75
 
64
76
  };
65
77
  const handle = {
66
- "api": api
78
+ 'api': api
67
79
  };
68
80
  return /*#__PURE__*/_react.default.createElement("a", {
69
81
  onClick: e => handleClick(e),
70
82
  ref: ref,
71
83
  style: {
72
84
  color: 'inherit',
73
- marginLeft: (props.level + 1) * 8 + 'px'
74
- }
75
- }, props.icon !== undefined ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("i", {
76
- className: props.icon,
77
- style: {
78
- width: '28px',
79
- color: props.color
85
+ marginLeft: (props.level + 1) * props.tab + 'px',
86
+ backgroundColor: props.backgroundColor
80
87
  }
81
- }), " ", props.name, " ") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
88
+ }, ((_props$config = props.config) === null || _props$config === void 0 ? void 0 : _props$config.icon) !== undefined ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
89
+ id: props.config.icon
90
+ }), ' ', props.name, ' ') : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
82
91
  className: "sidebar-normal"
83
- }, " ", props.name, " "), " "), " ");
92
+ }, ' ', props.name, ' '), ' '), ' ');
84
93
  });
85
94
 
86
95
  var _default = MenuLink;
@@ -41,25 +41,10 @@ var _authNavbarStyle = _interopRequireDefault(require("../../assets/jss/componen
41
41
 
42
42
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
43
43
 
44
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
45
-
46
- 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."); }
47
-
48
- 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); }
49
-
50
- 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; }
51
-
52
- 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; }
53
-
54
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
55
-
56
44
  const useStyles = (0, _styles.makeStyles)(_authNavbarStyle.default);
57
45
 
58
46
  function AuthNavbar(props) {
59
- const _React$useState = _react.default.useState(false),
60
- _React$useState2 = _slicedToArray(_React$useState, 2),
61
- open = _React$useState2[0],
62
- setOpen = _React$useState2[1];
47
+ const [open, setOpen] = _react.default.useState(false);
63
48
 
64
49
  const handleDrawerToggle = () => {
65
50
  setOpen(!open);
@@ -71,8 +56,10 @@ function AuthNavbar(props) {
71
56
  };
72
57
 
73
58
  const classes = useStyles();
74
- const color = props.color,
75
- brandText = props.brandText;
59
+ const {
60
+ color,
61
+ brandText
62
+ } = props;
76
63
  const appBarClasses = (0, _classnames.default)({
77
64
  [" " + classes[color]]: color
78
65
  });
@@ -11,7 +11,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
11
11
 
12
12
  var _reactstrap = require("reactstrap");
13
13
 
14
- var _reactRouterDom = require("react-router-dom");
14
+ var _WithRouter = _interopRequireDefault(require("../../WithRouter"));
15
15
 
16
16
  var _reactRedux = require("react-redux");
17
17
 
@@ -155,7 +155,7 @@ class HomeNavbar extends _react.default.Component {
155
155
  },
156
156
  href: "#pablo",
157
157
  onClick: e => e.preventDefault()
158
- }, " ", this.props.activeRouteMenu ? this.props.activeRouteMenu : "Dashboard" // this.props.activeRouteMenu
158
+ }, " ", this.props.activeRouteMenu ? this.props.activeRouteMenu.name : "Dashboard" // this.props.activeRouteMenu
159
159
  , " "), " "), " ", /*#__PURE__*/_react.default.createElement("button", {
160
160
  className: "navbar-toggler",
161
161
  type: "button",
@@ -224,9 +224,7 @@ class HomeNavbar extends _react.default.Component {
224
224
  }
225
225
  })), " ", /*#__PURE__*/_react.default.createElement("b", {
226
226
  className: "caret d-none d-lg-block d-xl-block"
227
- }), /*#__PURE__*/_react.default.createElement("p", {
228
- className: "d-lg-none"
229
- }, " Log out "), " "), " ", /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownMenu, {
227
+ })), " ", /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownMenu, {
230
228
  className: "dropdown-navbar",
231
229
  right: true,
232
230
  tag: "ul"
@@ -234,7 +232,7 @@ class HomeNavbar extends _react.default.Component {
234
232
  tag: "li"
235
233
  }, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
236
234
  className: "nav-item",
237
- onClick: () => this.launchView('system/user-profile.json')
235
+ onClick: () => this.launchView('/system/views/user-profile.json')
238
236
  }, " ", "Profile", " "), " "), " ", /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
239
237
  divider: true,
240
238
  tag: "li"
@@ -268,6 +266,6 @@ class HomeNavbar extends _react.default.Component {
268
266
 
269
267
  }
270
268
 
271
- var _default = (0, _reactRouterDom.withRouter)((0, _reactRedux.connect)(propHandler, dispatch => (0, _redux.bindActionCreators)(_DashboardStore.actionCreators, dispatch))(HomeNavbar));
269
+ var _default = (0, _WithRouter.default)((0, _reactRedux.connect)(propHandler, dispatch => (0, _redux.bindActionCreators)(_DashboardStore.actionCreators, dispatch))(HomeNavbar));
272
270
 
273
271
  exports.default = _default;
@@ -21,28 +21,16 @@ var _reactstrap = require("reactstrap");
21
21
 
22
22
  var _ActionHandlers = _interopRequireDefault(require("../../event/ActionHandlers"));
23
23
 
24
- var _ApplicationContext = _interopRequireWildcard(require("./../../ApplicationContext"));
24
+ var _ApplicationManager = _interopRequireWildcard(require("../../ApplicationManager"));
25
25
 
26
26
  var _Utils = _interopRequireDefault(require("../../Utils"));
27
27
 
28
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
28
+ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
29
29
 
30
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
31
 
32
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
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
-
46
34
  const useStyles = (0, _styles.makeStyles)(theme => ({
47
35
  iconButtonLabel: {
48
36
  display: 'flex',
@@ -53,15 +41,9 @@ const useStyles = (0, _styles.makeStyles)(theme => ({
53
41
  const PortalNavbar = /*#__PURE__*/_react.default.memo(props => {
54
42
  const classes = useStyles();
55
43
 
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];
44
+ const [avatarUrl, setAvatarUrl] = _react.default.useState(props.avatar);
60
45
 
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];
46
+ const [selectedButton, setSelectedButton] = _react.default.useState(props.moduleMenus ? props.moduleMenus[0].id : null);
65
47
 
66
48
  const initializing = _react.default.useRef(true);
67
49
 
@@ -70,13 +52,13 @@ const PortalNavbar = /*#__PURE__*/_react.default.memo(props => {
70
52
  _react.default.useEffect(() => {
71
53
  if (initializing.current) {
72
54
  let avatarListener = {};
73
- avatarListener.type = _ApplicationContext.AVATAR_LISTENER_TYPE;
55
+ avatarListener.type = _ApplicationManager.AVATAR_LISTENER_TYPE;
74
56
 
75
57
  avatarListener.handler = avatar => {
76
58
  setAvatarUrl(avatar.url);
77
59
  };
78
60
 
79
- _ApplicationContext.default.addApplicationListener(avatarListener);
61
+ _ApplicationManager.default.addApplicationListener(avatarListener);
80
62
 
81
63
  initializing.current = false;
82
64
  }
@@ -209,7 +191,7 @@ const PortalNavbar = /*#__PURE__*/_react.default.memo(props => {
209
191
  tag: "li"
210
192
  }, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
211
193
  className: "nav-item",
212
- onClick: () => launchView('system/user-profile.json')
194
+ onClick: () => launchView('system/views/user-profile.json')
213
195
  }, " ", "Profile", " "), " "), " ", /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
214
196
  divider: true,
215
197
  tag: "li"