orc-shared 5.4.0-dev.0 → 5.5.1-dev.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 (66) hide show
  1. package/dist/actions/navigation.js +14 -1
  2. package/dist/actions/tasks.js +170 -0
  3. package/dist/buildStore.js +3 -1
  4. package/dist/components/AppFrame/Sidebar.js +4 -8
  5. package/dist/components/MaterialUI/DataDisplay/PredefinedElements/InformationItem.js +13 -5
  6. package/dist/components/MaterialUI/DataDisplay/TooltippedElements/MultipleLinesText.js +4 -2
  7. package/dist/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +43 -46
  8. package/dist/components/MaterialUI/hocs/withDeferredTooltip.js +3 -1
  9. package/dist/components/Routing/Page.js +4 -1
  10. package/dist/components/Routing/SegmentPage.js +4 -1
  11. package/dist/components/Routing/SubPage.js +21 -8
  12. package/dist/components/TaskDetailsModal.js +191 -0
  13. package/dist/constants.js +18 -2
  14. package/dist/content/iconsSheet.svg +22 -0
  15. package/dist/content/orckestra-logo-white.png +0 -0
  16. package/dist/hooks/useEditState.js +4 -2
  17. package/dist/reducers/navigation.js +16 -0
  18. package/dist/reducers/request.js +4 -0
  19. package/dist/reducers/tasks.js +98 -0
  20. package/dist/selectors/authentication.js +15 -1
  21. package/dist/selectors/tasks.js +64 -0
  22. package/dist/sharedMessages.js +17 -1
  23. package/dist/utils/propertyHelper.js +33 -0
  24. package/package.json +1 -1
  25. package/src/actions/navigation.js +7 -0
  26. package/src/actions/navigation.test.js +12 -0
  27. package/src/actions/tasks.js +77 -0
  28. package/src/actions/tasks.test.js +169 -0
  29. package/src/buildStore.js +2 -0
  30. package/src/components/AppFrame/About.test.js +3 -3
  31. package/src/components/AppFrame/Sidebar.js +4 -3
  32. package/src/components/MaterialUI/DataDisplay/PredefinedElements/InformationItem.js +15 -3
  33. package/src/components/MaterialUI/DataDisplay/TooltippedElements/MultipleLinesText.js +2 -1
  34. package/src/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +39 -27
  35. package/src/components/MaterialUI/Inputs/PredefinedElements/SearchControl.test.js +39 -34
  36. package/src/components/MaterialUI/hocs/withDeferredTooltip.js +2 -1
  37. package/src/components/MaterialUI/hocs/withDeferredTooltip.test.js +52 -0
  38. package/src/components/Routing/Page.js +12 -1
  39. package/src/components/Routing/SegmentPage.js +12 -1
  40. package/src/components/Routing/SubPage.js +21 -9
  41. package/src/components/Routing/SubPage.test.js +213 -0
  42. package/src/components/TaskDetailsModal.js +132 -0
  43. package/src/components/TaskDetailsModal.test.js +317 -0
  44. package/src/components/Text.test.js +44 -59
  45. package/src/constants.js +15 -0
  46. package/src/content/iconsSheet.svg +22 -0
  47. package/src/content/orckestra-logo-white.png +0 -0
  48. package/src/hooks/useEditState.js +12 -2
  49. package/src/hooks/useEditState.test.js +1 -1
  50. package/src/hooks/useLabelMessage.test.js +16 -10
  51. package/src/reducers/navigation.js +24 -0
  52. package/src/reducers/navigation.test.js +38 -0
  53. package/src/reducers/request.js +4 -0
  54. package/src/reducers/request.test.js +11 -0
  55. package/src/reducers/tasks.js +56 -0
  56. package/src/reducers/tasks.test.js +404 -0
  57. package/src/selectors/authentication.js +13 -0
  58. package/src/selectors/authentication.test.js +322 -0
  59. package/src/selectors/tasks.js +16 -0
  60. package/src/selectors/tasks.test.js +60 -0
  61. package/src/sharedMessages.js +17 -1
  62. package/src/translations/en-US.json +16 -12
  63. package/src/translations/fr-CA.json +16 -12
  64. package/src/utils/propertyHelper.js +38 -0
  65. package/src/utils/propertyHelper.test.js +160 -0
  66. package/src/utils/timezoneHelper.test.js +4 -2
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.setRoute = exports.setHrefConfig = exports.setCurrentPrependPath = exports.setClosingTabHandlerActions = exports.removeTab = exports.mapHref = exports.SET_ROUTE = exports.SET_HREF_CONFIG = exports.SET_CURRENT_PREPEND_PATH = exports.SET_CLOSING_TAB_HANDLER_ACTIONS = exports.REMOVE_TAB = exports.MAP_HREF = void 0;
4
+ exports.setRoute = exports.setHrefConfig = exports.setCurrentPrependPath = exports.setClosingTabHandlerActions = exports.removeTab = exports.removeModuleTabs = exports.mapHref = exports.SET_ROUTE = exports.SET_HREF_CONFIG = exports.SET_CURRENT_PREPEND_PATH = exports.SET_CLOSING_TAB_HANDLER_ACTIONS = exports.REMOVE_TAB = exports.REMOVE_MODULE_TABS = exports.MAP_HREF = void 0;
5
5
  (function () {
6
6
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
7
7
  enterModule && enterModule(module);
@@ -51,6 +51,15 @@ var removeTab = exports.removeTab = function removeTab(module, path) {
51
51
  }
52
52
  };
53
53
  };
54
+ var REMOVE_MODULE_TABS = exports.REMOVE_MODULE_TABS = "REMOVE_MODULE_TABS";
55
+ var removeModuleTabs = exports.removeModuleTabs = function removeModuleTabs(module) {
56
+ return {
57
+ type: REMOVE_MODULE_TABS,
58
+ payload: {
59
+ module: module
60
+ }
61
+ };
62
+ };
54
63
  var SET_HREF_CONFIG = exports.SET_HREF_CONFIG = "SET_HREF_CONFIG";
55
64
  var setHrefConfig = exports.setHrefConfig = function setHrefConfig(prependPath, prependHref, otherConfigs) {
56
65
  if (otherConfigs === void 0) {
@@ -93,6 +102,8 @@ var setClosingTabHandlerActions = exports.setClosingTabHandlerActions = function
93
102
  reactHotLoader.register(mapHref, "mapHref", "/home/vsts/work/1/s/src/actions/navigation.js");
94
103
  reactHotLoader.register(REMOVE_TAB, "REMOVE_TAB", "/home/vsts/work/1/s/src/actions/navigation.js");
95
104
  reactHotLoader.register(removeTab, "removeTab", "/home/vsts/work/1/s/src/actions/navigation.js");
105
+ reactHotLoader.register(REMOVE_MODULE_TABS, "REMOVE_MODULE_TABS", "/home/vsts/work/1/s/src/actions/navigation.js");
106
+ reactHotLoader.register(removeModuleTabs, "removeModuleTabs", "/home/vsts/work/1/s/src/actions/navigation.js");
96
107
  reactHotLoader.register(SET_HREF_CONFIG, "SET_HREF_CONFIG", "/home/vsts/work/1/s/src/actions/navigation.js");
97
108
  reactHotLoader.register(setHrefConfig, "setHrefConfig", "/home/vsts/work/1/s/src/actions/navigation.js");
98
109
  reactHotLoader.register(SET_CURRENT_PREPEND_PATH, "SET_CURRENT_PREPEND_PATH", "/home/vsts/work/1/s/src/actions/navigation.js");
@@ -117,6 +128,8 @@ var setClosingTabHandlerActions = exports.setClosingTabHandlerActions = function
117
128
  reactHotLoader.register(mapHref, "mapHref", "/home/vsts/work/1/s/src/actions/navigation.js");
118
129
  reactHotLoader.register(REMOVE_TAB, "REMOVE_TAB", "/home/vsts/work/1/s/src/actions/navigation.js");
119
130
  reactHotLoader.register(removeTab, "removeTab", "/home/vsts/work/1/s/src/actions/navigation.js");
131
+ reactHotLoader.register(REMOVE_MODULE_TABS, "REMOVE_MODULE_TABS", "/home/vsts/work/1/s/src/actions/navigation.js");
132
+ reactHotLoader.register(removeModuleTabs, "removeModuleTabs", "/home/vsts/work/1/s/src/actions/navigation.js");
120
133
  reactHotLoader.register(SET_HREF_CONFIG, "SET_HREF_CONFIG", "/home/vsts/work/1/s/src/actions/navigation.js");
121
134
  reactHotLoader.register(setHrefConfig, "setHrefConfig", "/home/vsts/work/1/s/src/actions/navigation.js");
122
135
  reactHotLoader.register(SET_CURRENT_PREPEND_PATH, "SET_CURRENT_PREPEND_PATH", "/home/vsts/work/1/s/src/actions/navigation.js");
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.ssrsDownloadFilterTaskNames = exports.getTaskLog = exports.getTaskList = exports.getTaskInfo = exports.deleteTask = exports.clearTaskLog = exports.GET_TASK_LOG_SUCCESS = exports.GET_TASK_LOG_REQUEST = exports.GET_TASK_LOG_FAILURE = exports.GET_TASK_LIST_SUCCESS = exports.GET_TASK_LIST_REQUEST = exports.GET_TASK_LIST_FAILURE = exports.GET_TASK_LIST = exports.GET_TASKINFO_SUCCESS = exports.GET_TASKINFO_REQUEST = exports.GET_TASKINFO_FAILURE = exports.DELETE_TASK_SUCCESS = exports.DELETE_TASK_REQUEST = exports.DELETE_TASK_FAILURE = exports.CLEAR_TASK_LOG = void 0;
5
+ var _makeApiAction = require("./makeApiAction");
6
+ var _makeOrcApiAction = _interopRequireDefault(require("./makeOrcApiAction"));
7
+ var _requestsApi = require("./requestsApi");
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ (function () {
10
+ var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
11
+ enterModule && enterModule(module);
12
+ })();
13
+ (function () {
14
+ var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
15
+ enterModule && enterModule(module);
16
+ })();
17
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
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
+ 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); }
20
+ 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; }
21
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
22
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
23
+ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
24
+ return a;
25
+ };
26
+ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
27
+ return a;
28
+ };
29
+ var GET_TASKINFO = "GET_TASKINFO";
30
+ var _makeActionTypes = (0, _makeApiAction.makeActionTypes)(GET_TASKINFO),
31
+ _makeActionTypes2 = _slicedToArray(_makeActionTypes, 3),
32
+ GET_TASKINFO_REQUEST = exports.GET_TASKINFO_REQUEST = _makeActionTypes2[0],
33
+ GET_TASKINFO_SUCCESS = exports.GET_TASKINFO_SUCCESS = _makeActionTypes2[1],
34
+ GET_TASKINFO_FAILURE = exports.GET_TASKINFO_FAILURE = _makeActionTypes2[2];
35
+ var getTaskInfo = exports.getTaskInfo = function getTaskInfo(taskId) {
36
+ return (0, _makeOrcApiAction.default)(GET_TASKINFO, _requestsApi.getTaskInfoRequest.buildUrl(taskId));
37
+ };
38
+ var GET_TASK_LIST = exports.GET_TASK_LIST = "GET_TASK_LIST";
39
+ var ssrsDownloadFilterTaskNames = exports.ssrsDownloadFilterTaskNames = ["Orckestra.Overture.Providers.CommerceEngine.Profiles.ProfileSchemaExportTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Profiles.ProfileSchemaImportTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Orders.ExportOrderSchemaTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Orders.ImportOrderSchemaTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Products.ImportExport.ExportProductsTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Products.ImportExport.ProductSchemaExportTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Products.ImportExport.ImportProductsTask, Orckestra.Overture.Providers.CommerceEngine", "OrckestraCommerce.DataExchange.Product.Tasks.ProductExportTask, OrckestraCommerce.DataExchange", "Orckestra.Overture.Providers.CommerceEngine.Marketing.ExportCouponCodesTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Marketing.ImportCouponCodesTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Marketing.GenerateCouponTask, Orckestra.Overture.Providers.CommerceEngine", "Orckestra.Overture.Providers.CommerceEngine.Reporting.ReportExportTask, Orckestra.Overture.Providers.CommerceEngine"];
40
+ var _makeActionTypes3 = (0, _makeApiAction.makeActionTypes)(GET_TASK_LIST),
41
+ _makeActionTypes4 = _slicedToArray(_makeActionTypes3, 3),
42
+ GET_TASK_LIST_REQUEST = exports.GET_TASK_LIST_REQUEST = _makeActionTypes4[0],
43
+ GET_TASK_LIST_SUCCESS = exports.GET_TASK_LIST_SUCCESS = _makeActionTypes4[1],
44
+ GET_TASK_LIST_FAILURE = exports.GET_TASK_LIST_FAILURE = _makeActionTypes4[2];
45
+ var getTaskList = exports.getTaskList = function getTaskList(requester, filterTaskNames, lastModified, addToActiveRequests) {
46
+ if (lastModified === void 0) {
47
+ lastModified = null;
48
+ }
49
+ if (addToActiveRequests === void 0) {
50
+ addToActiveRequests = true;
51
+ }
52
+ return (0, _makeOrcApiAction.default)(GET_TASK_LIST, _requestsApi.getRequesterTasksInfoRequest.buildUrl({
53
+ filterTaskNames: filterTaskNames,
54
+ requester: requester,
55
+ lastModified: lastModified
56
+ }), _requestsApi.getRequesterTasksInfoRequest.verb, {
57
+ meta: {
58
+ addToActiveRequests: addToActiveRequests
59
+ }
60
+ });
61
+ };
62
+ var DELETE_TASK = "DELETE_TASK";
63
+ var _makeActionTypes5 = (0, _makeApiAction.makeActionTypes)(DELETE_TASK),
64
+ _makeActionTypes6 = _slicedToArray(_makeActionTypes5, 3),
65
+ DELETE_TASK_REQUEST = exports.DELETE_TASK_REQUEST = _makeActionTypes6[0],
66
+ DELETE_TASK_SUCCESS = exports.DELETE_TASK_SUCCESS = _makeActionTypes6[1],
67
+ DELETE_TASK_FAILURE = exports.DELETE_TASK_FAILURE = _makeActionTypes6[2];
68
+ var deleteTask = exports.deleteTask = function deleteTask(taskId) {
69
+ return (0, _makeOrcApiAction.default)(DELETE_TASK, _requestsApi.deleteTaskInfoRequest.buildUrl(taskId), _requestsApi.deleteTaskInfoRequest.verb, {
70
+ meta: {
71
+ taskId: taskId
72
+ }
73
+ });
74
+ };
75
+ var GET_TASK_LOG = "GET_TASK_LOG";
76
+ var _makeActionTypes7 = (0, _makeApiAction.makeActionTypes)(GET_TASK_LOG),
77
+ _makeActionTypes8 = _slicedToArray(_makeActionTypes7, 3),
78
+ GET_TASK_LOG_REQUEST = exports.GET_TASK_LOG_REQUEST = _makeActionTypes8[0],
79
+ GET_TASK_LOG_SUCCESS = exports.GET_TASK_LOG_SUCCESS = _makeActionTypes8[1],
80
+ GET_TASK_LOG_FAILURE = exports.GET_TASK_LOG_FAILURE = _makeActionTypes8[2];
81
+ var getTaskLog = exports.getTaskLog = function getTaskLog(taskId, addToActiveRequests) {
82
+ if (addToActiveRequests === void 0) {
83
+ addToActiveRequests = true;
84
+ }
85
+ return (0, _makeOrcApiAction.default)(GET_TASK_LOG, _requestsApi.getTaskExecutionLogsRequest.buildUrl(taskId), _requestsApi.getTaskExecutionLogsRequest.verb, {
86
+ meta: {
87
+ taskId: taskId,
88
+ addToActiveRequests: addToActiveRequests
89
+ }
90
+ });
91
+ };
92
+ var CLEAR_TASK_LOG = exports.CLEAR_TASK_LOG = "CLEAR_TASK_LOG";
93
+ var clearTaskLog = exports.clearTaskLog = function clearTaskLog(taskId) {
94
+ return {
95
+ type: CLEAR_TASK_LOG,
96
+ meta: {
97
+ taskId: taskId
98
+ }
99
+ };
100
+ };
101
+ ;
102
+ (function () {
103
+ var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
104
+ if (!reactHotLoader) {
105
+ return;
106
+ }
107
+ reactHotLoader.register(GET_TASKINFO, "GET_TASKINFO", "/home/vsts/work/1/s/src/actions/tasks.js");
108
+ reactHotLoader.register(GET_TASKINFO_REQUEST, "GET_TASKINFO_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
109
+ reactHotLoader.register(GET_TASKINFO_SUCCESS, "GET_TASKINFO_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
110
+ reactHotLoader.register(GET_TASKINFO_FAILURE, "GET_TASKINFO_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
111
+ reactHotLoader.register(getTaskInfo, "getTaskInfo", "/home/vsts/work/1/s/src/actions/tasks.js");
112
+ reactHotLoader.register(GET_TASK_LIST, "GET_TASK_LIST", "/home/vsts/work/1/s/src/actions/tasks.js");
113
+ reactHotLoader.register(ssrsDownloadFilterTaskNames, "ssrsDownloadFilterTaskNames", "/home/vsts/work/1/s/src/actions/tasks.js");
114
+ reactHotLoader.register(GET_TASK_LIST_REQUEST, "GET_TASK_LIST_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
115
+ reactHotLoader.register(GET_TASK_LIST_SUCCESS, "GET_TASK_LIST_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
116
+ reactHotLoader.register(GET_TASK_LIST_FAILURE, "GET_TASK_LIST_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
117
+ reactHotLoader.register(getTaskList, "getTaskList", "/home/vsts/work/1/s/src/actions/tasks.js");
118
+ reactHotLoader.register(DELETE_TASK, "DELETE_TASK", "/home/vsts/work/1/s/src/actions/tasks.js");
119
+ reactHotLoader.register(DELETE_TASK_REQUEST, "DELETE_TASK_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
120
+ reactHotLoader.register(DELETE_TASK_SUCCESS, "DELETE_TASK_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
121
+ reactHotLoader.register(DELETE_TASK_FAILURE, "DELETE_TASK_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
122
+ reactHotLoader.register(deleteTask, "deleteTask", "/home/vsts/work/1/s/src/actions/tasks.js");
123
+ reactHotLoader.register(GET_TASK_LOG, "GET_TASK_LOG", "/home/vsts/work/1/s/src/actions/tasks.js");
124
+ reactHotLoader.register(GET_TASK_LOG_REQUEST, "GET_TASK_LOG_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
125
+ reactHotLoader.register(GET_TASK_LOG_SUCCESS, "GET_TASK_LOG_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
126
+ reactHotLoader.register(GET_TASK_LOG_FAILURE, "GET_TASK_LOG_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
127
+ reactHotLoader.register(getTaskLog, "getTaskLog", "/home/vsts/work/1/s/src/actions/tasks.js");
128
+ reactHotLoader.register(CLEAR_TASK_LOG, "CLEAR_TASK_LOG", "/home/vsts/work/1/s/src/actions/tasks.js");
129
+ reactHotLoader.register(clearTaskLog, "clearTaskLog", "/home/vsts/work/1/s/src/actions/tasks.js");
130
+ })();
131
+ ;
132
+ (function () {
133
+ var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
134
+ leaveModule && leaveModule(module);
135
+ })();
136
+ ;
137
+ (function () {
138
+ var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
139
+ if (!reactHotLoader) {
140
+ return;
141
+ }
142
+ reactHotLoader.register(GET_TASKINFO, "GET_TASKINFO", "/home/vsts/work/1/s/src/actions/tasks.js");
143
+ reactHotLoader.register(GET_TASKINFO_REQUEST, "GET_TASKINFO_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
144
+ reactHotLoader.register(GET_TASKINFO_SUCCESS, "GET_TASKINFO_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
145
+ reactHotLoader.register(GET_TASKINFO_FAILURE, "GET_TASKINFO_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
146
+ reactHotLoader.register(getTaskInfo, "getTaskInfo", "/home/vsts/work/1/s/src/actions/tasks.js");
147
+ reactHotLoader.register(GET_TASK_LIST, "GET_TASK_LIST", "/home/vsts/work/1/s/src/actions/tasks.js");
148
+ reactHotLoader.register(ssrsDownloadFilterTaskNames, "ssrsDownloadFilterTaskNames", "/home/vsts/work/1/s/src/actions/tasks.js");
149
+ reactHotLoader.register(GET_TASK_LIST_REQUEST, "GET_TASK_LIST_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
150
+ reactHotLoader.register(GET_TASK_LIST_SUCCESS, "GET_TASK_LIST_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
151
+ reactHotLoader.register(GET_TASK_LIST_FAILURE, "GET_TASK_LIST_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
152
+ reactHotLoader.register(getTaskList, "getTaskList", "/home/vsts/work/1/s/src/actions/tasks.js");
153
+ reactHotLoader.register(DELETE_TASK, "DELETE_TASK", "/home/vsts/work/1/s/src/actions/tasks.js");
154
+ reactHotLoader.register(DELETE_TASK_REQUEST, "DELETE_TASK_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
155
+ reactHotLoader.register(DELETE_TASK_SUCCESS, "DELETE_TASK_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
156
+ reactHotLoader.register(DELETE_TASK_FAILURE, "DELETE_TASK_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
157
+ reactHotLoader.register(deleteTask, "deleteTask", "/home/vsts/work/1/s/src/actions/tasks.js");
158
+ reactHotLoader.register(GET_TASK_LOG, "GET_TASK_LOG", "/home/vsts/work/1/s/src/actions/tasks.js");
159
+ reactHotLoader.register(GET_TASK_LOG_REQUEST, "GET_TASK_LOG_REQUEST", "/home/vsts/work/1/s/src/actions/tasks.js");
160
+ reactHotLoader.register(GET_TASK_LOG_SUCCESS, "GET_TASK_LOG_SUCCESS", "/home/vsts/work/1/s/src/actions/tasks.js");
161
+ reactHotLoader.register(GET_TASK_LOG_FAILURE, "GET_TASK_LOG_FAILURE", "/home/vsts/work/1/s/src/actions/tasks.js");
162
+ reactHotLoader.register(getTaskLog, "getTaskLog", "/home/vsts/work/1/s/src/actions/tasks.js");
163
+ reactHotLoader.register(CLEAR_TASK_LOG, "CLEAR_TASK_LOG", "/home/vsts/work/1/s/src/actions/tasks.js");
164
+ reactHotLoader.register(clearTaskLog, "clearTaskLog", "/home/vsts/work/1/s/src/actions/tasks.js");
165
+ })();
166
+ ;
167
+ (function () {
168
+ var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
169
+ leaveModule && leaveModule(module);
170
+ })();
@@ -24,6 +24,7 @@ var _timezones = _interopRequireDefault(require("./reducers/timezones"));
24
24
  var _modules = _interopRequireDefault(require("./reducers/modules"));
25
25
  var _metadata = _interopRequireDefault(require("./reducers/metadata"));
26
26
  var _requestStates = _interopRequireDefault(require("./reducers/requestStates"));
27
+ var _tasks = _interopRequireDefault(require("./reducers/tasks"));
27
28
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
28
29
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
29
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -86,7 +87,8 @@ var buildStore = function buildStore(reducers, devOptions) {
86
87
  timezones: _timezones.default,
87
88
  modules: _modules.default,
88
89
  metadata: _metadata.default,
89
- requestStates: _requestStates.default
90
+ requestStates: _requestStates.default,
91
+ tasks: _tasks.default
90
92
  }));
91
93
  };
92
94
  var rootReducer = buildReducer(reducers);
@@ -85,14 +85,10 @@ var LogoSvg = _styledComponents.default.svg.withConfig({
85
85
  })(["flex:0 0 auto;margin:auto 12.5px 7px;height:25px;width:25px;fill-rule:evenodd;clip-rule:evenodd;fill:#666666;"]);
86
86
  var Logo = exports.Logo = function Logo() {
87
87
  return /*#__PURE__*/_react.default.createElement(LogoSvg, {
88
- viewBox: "0 0 260 260"
89
- }, /*#__PURE__*/_react.default.createElement("path", {
90
- d: "M1.11,125.62C1.11,74.94,40.22,39,93.72,39S186,74.94,186,125.62s-38.79,86.66-92.29,86.66S1.11,176.3,1.11,125.62Zm135.47,0c0-29.1-18.46-46.62-42.86-46.62S50.54,96.52,50.54,125.62s18.77,46.62,43.18,46.62S136.58,154.72,136.58,125.62Z"
91
- }), /*#__PURE__*/_react.default.createElement("circle", {
92
- cx: "227.6",
93
- cy: "181.13",
94
- r: "31.29"
95
- }));
88
+ viewBox: "0 0 354 354"
89
+ }, /*#__PURE__*/_react.default.createElement("g", null, /*#__PURE__*/_react.default.createElement("path", {
90
+ d: "M0 241.41c0-65.49 50.53-111.98 119.66-111.98s119.25 46.49 119.25 111.98c0 65.49-50.13 111.97-119.25 111.97S0 306.9 0 241.41Zm175.04 0c0-37.6-23.85-60.23-55.38-60.23s-55.79 22.64-55.79 60.23c0 37.59 24.26 60.23 55.79 60.23 31.53 0 55.38-22.64 55.38-60.23Zm178.1-76.35h-77.48c0-48.29-39.29-87.58-87.58-87.58V0c91.02 0 165.07 74.05 165.07 165.06h-.01Z"
91
+ })));
96
92
  };
97
93
  var Sidebar = function Sidebar(_ref3) {
98
94
  var open = _ref3.open,
@@ -10,6 +10,7 @@ var _MultipleLinesText = _interopRequireDefault(require("../TooltippedElements/M
10
10
  var _textProps = _interopRequireDefault(require("../../textProps"));
11
11
  var _propertyValidator = require("../../../../utils/propertyValidator");
12
12
  var _sharedMessages = _interopRequireDefault(require("../../../../sharedMessages"));
13
+ var _classnames = _interopRequireDefault(require("classnames"));
13
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
15
  (function () {
15
16
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
@@ -81,7 +82,9 @@ var InformationItemChildren = function InformationItemChildren(_ref) {
81
82
  children = _ref.children,
82
83
  showNotAvailable = _ref.showNotAvailable,
83
84
  _ref$isMaxLineCountEn = _ref.isMaxLineCountEnabled,
84
- isMaxLineCountEnabled = _ref$isMaxLineCountEn === void 0 ? true : _ref$isMaxLineCountEn;
85
+ isMaxLineCountEnabled = _ref$isMaxLineCountEn === void 0 ? true : _ref$isMaxLineCountEn,
86
+ tooltipClasses = _ref.tooltipClasses,
87
+ valueClasses = _ref.valueClasses;
85
88
  var _useIntl = (0, _reactIntl.useIntl)(),
86
89
  formatMessage = _useIntl.formatMessage;
87
90
  if ((0, _propertyValidator.isReactComponent)(children)) {
@@ -89,11 +92,12 @@ var InformationItemChildren = function InformationItemChildren(_ref) {
89
92
  }
90
93
  var multipleLinesTextProps = new _textProps.default();
91
94
  if (isMaxLineCountEnabled) multipleLinesTextProps.set(_textProps.default.propNames.lineCount, 2);
92
- multipleLinesTextProps.set(_textProps.default.propNames.classes, classes.value);
95
+ multipleLinesTextProps.set(_textProps.default.propNames.classes, (0, _classnames.default)(classes.value, valueClasses));
93
96
  var value = children != null ? children : showNotAvailable ? formatMessage(_sharedMessages.default.notAvailable) : "";
94
97
  return /*#__PURE__*/_react.default.createElement(_MultipleLinesText.default, {
95
98
  textProps: multipleLinesTextProps,
96
- children: value
99
+ children: value,
100
+ tooltipClasses: tooltipClasses
97
101
  });
98
102
  };
99
103
  __signature__(InformationItemChildren, "useIntl{{ formatMessage }}", function () {
@@ -134,7 +138,9 @@ var InformationItem = function InformationItem(_ref4) {
134
138
  showNotAvailable = _ref4$showNotAvailabl === void 0 ? false : _ref4$showNotAvailabl,
135
139
  _ref4$marginTop = _ref4.marginTop,
136
140
  marginTop = _ref4$marginTop === void 0 ? 0 : _ref4$marginTop,
137
- isMaxLineCountEnabled = _ref4.isMaxLineCountEnabled;
141
+ isMaxLineCountEnabled = _ref4.isMaxLineCountEnabled,
142
+ tooltipClasses = _ref4.tooltipClasses,
143
+ valueClasses = _ref4.valueClasses;
138
144
  var classes = useStyles({
139
145
  required: required,
140
146
  error: error,
@@ -150,7 +156,9 @@ var InformationItem = function InformationItem(_ref4) {
150
156
  classes: classes,
151
157
  children: children,
152
158
  showNotAvailable: showNotAvailable,
153
- isMaxLineCountEnabled: isMaxLineCountEnabled
159
+ isMaxLineCountEnabled: isMaxLineCountEnabled,
160
+ tooltipClasses: tooltipClasses,
161
+ valueClasses: valueClasses
154
162
  }));
155
163
  };
156
164
  __signature__(InformationItem, "useStyles{classes}", function () {
@@ -42,7 +42,8 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
42
42
  var MultipleLinesText = function MultipleLinesText(_ref) {
43
43
  var children = _ref.children,
44
44
  titleValue = _ref.titleValue,
45
- textProps = _ref.textProps;
45
+ textProps = _ref.textProps,
46
+ tooltipClasses = _ref.tooltipClasses;
46
47
  var classes = useStyles();
47
48
  var _useState = (0, _react.useState)(false),
48
49
  _useState2 = _slicedToArray(_useState, 2),
@@ -73,7 +74,8 @@ var MultipleLinesText = function MultipleLinesText(_ref) {
73
74
  alwaysDisplay: isClamped,
74
75
  onClampStart: function onClampStart(event) {
75
76
  return clampHandler(event);
76
- }
77
+ },
78
+ tooltipClasses: tooltipClasses
77
79
  });
78
80
  };
79
81
  __signature__(MultipleLinesText, "useStyles{classes}\nuseState{[isClamped, setIsClamped](false)}\nuseCallback{clampHandler}", function () {
@@ -21,12 +21,6 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
21
21
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
22
22
  enterModule && enterModule(module);
23
23
  })();
24
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
25
- 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."); }
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
- 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; }
28
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
29
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
30
24
  var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
31
25
  return a;
32
26
  };
@@ -107,15 +101,9 @@ var useStyles = exports.useStyles = (0, _styles.makeStyles)(function (theme) {
107
101
  },
108
102
  parentInput: {
109
103
  flex: "13 0 0",
110
- zIndex: function zIndex(props) {
111
- return props.focused ? 99 : 1;
112
- },
113
- border: function border(props) {
114
- return props.focused ? "".concat(theme.spacing(0.1), " solid ").concat(theme.palette.focus) : "".concat(theme.spacing(0.1), " solid ").concat(theme.palette.grey.borders);
115
- },
116
- boxShadow: function boxShadow(props) {
117
- return props.focused ? "0 0 4px ".concat(theme.palette.focus) : "none";
118
- },
104
+ zIndex: 1,
105
+ border: "".concat(theme.spacing(0.1), " solid ").concat(theme.palette.grey.borders),
106
+ boxShadow: "none",
119
107
  width: "100%",
120
108
  display: "inherit",
121
109
  marginLeft: theme.spacing(-0.1),
@@ -133,6 +121,11 @@ var useStyles = exports.useStyles = (0, _styles.makeStyles)(function (theme) {
133
121
  borderTopLeftRadius: 0,
134
122
  borderBottomLeftRadius: 0
135
123
  }
124
+ },
125
+ "&:focus-within": {
126
+ zIndex: 99,
127
+ border: "".concat(theme.spacing(0.1), " solid ").concat(theme.palette.focus),
128
+ boxShadow: "0 0 4px ".concat(theme.palette.focus)
136
129
  }
137
130
  },
138
131
  selectRoot: {
@@ -180,19 +173,29 @@ var SearchControl = function SearchControl(_ref) {
180
173
  searchOption = _ref.searchOption,
181
174
  _ref$onSearch = _ref.onSearch,
182
175
  onSearch = _ref$onSearch === void 0 ? function () {} : _ref$onSearch,
183
- disabled = _ref.disabled;
176
+ disabled = _ref.disabled,
177
+ _ref$focusAndSelectSe = _ref.focusAndSelectSearchFieldOnLoad,
178
+ focusAndSelectSearchFieldOnLoad = _ref$focusAndSelectSe === void 0 ? true : _ref$focusAndSelectSe,
179
+ _ref$focusSearchOnSea = _ref.focusSearchOnSearchOptionChange,
180
+ focusSearchOnSearchOptionChange = _ref$focusSearchOnSea === void 0 ? false : _ref$focusSearchOnSea;
184
181
  searchOptions = !((_searchOptions = searchOptions) != null && _searchOptions.length) ? null : searchOptions;
185
182
  searchOption = getSearchOptionValue(searchOptions, searchOption);
186
- var _useState = (0, _react.useState)(false),
187
- _useState2 = _slicedToArray(_useState, 2),
188
- inputFocused = _useState2[0],
189
- setInputFocused = _useState2[1];
190
- var classes = useStyles({
191
- focused: inputFocused
192
- });
183
+ var classes = useStyles();
193
184
  var inputRef = (0, _react.useRef)();
194
185
  var update = function update(value) {
195
- onSearch(value, defaultValue);
186
+ if (focusSearchOnSearchOptionChange && inputRef.current) {
187
+ onSearch(value, "");
188
+ setTimeout(function () {
189
+ /* istanbul ignore next */
190
+ if (inputRef.current) {
191
+ inputRef.current.value = "";
192
+ inputRef.current.focus();
193
+ inputRef.current.select();
194
+ }
195
+ }, 0);
196
+ } else {
197
+ onSearch(value, defaultValue);
198
+ }
196
199
  };
197
200
  var selectProps = new _SelectProps.default();
198
201
  selectProps.set(_SelectProps.default.propNames.update, update);
@@ -209,18 +212,13 @@ var SearchControl = function SearchControl(_ref) {
209
212
  });
210
213
  selectProps.setStyle(_SelectProps.default.ruleNames.root, classes.selectRoot);
211
214
  selectProps.setStyle(_SelectProps.default.ruleNames.paper, classes.selectPaper);
212
- var handleKeyDown = function handleKeyDown(e) {
213
- if (e.key === "Enter") {
214
- onSearch(searchOption, e.target.value);
215
- e.preventDefault();
216
- e.stopPropagation();
215
+ (0, _react.useEffect)(function () {
216
+ /* istanbul ignore next */
217
+ if (focusAndSelectSearchFieldOnLoad && inputRef.current) {
218
+ inputRef.current.focus();
219
+ inputRef.current.select();
217
220
  }
218
- };
219
- var onFocusedEvent = function onFocusedEvent(event, focused) {
220
- setInputFocused(focused);
221
- event.preventDefault();
222
- event.stopPropagation();
223
- };
221
+ }, [focusAndSelectSearchFieldOnLoad]);
224
222
  var SelectSection = function SelectSection() {
225
223
  if (searchOptions === null) return null;else return /*#__PURE__*/_react.default.createElement(_Select.default, {
226
224
  className: classes.selectInput,
@@ -228,13 +226,19 @@ var SearchControl = function SearchControl(_ref) {
228
226
  selectProps: selectProps
229
227
  });
230
228
  };
229
+ var onSubmit = function onSubmit(event) {
230
+ var _inputRef$current;
231
+ // using form submit instead of a keydown (with key=enter) to allow the 'enter key' event to be canceled elsewhere to avoid the submit event
232
+ onSearch(searchOption, (_inputRef$current = inputRef.current) == null ? void 0 : _inputRef$current.value);
233
+ event.preventDefault();
234
+ };
231
235
  var inputSection = /*#__PURE__*/_react.default.createElement("div", {
232
236
  "data-qa": "searchInput",
233
- "data-qa-is-focused": inputFocused,
234
237
  className: classes.parentInput
235
238
  }, /*#__PURE__*/_react.default.createElement("form", {
236
239
  "data-qa": "searchForm",
237
- className: classes.fullWidth
240
+ className: classes.fullWidth,
241
+ onSubmitCapture: onSubmit
238
242
  }, /*#__PURE__*/_react.default.createElement(_Input.default, {
239
243
  placeholder: placeholder,
240
244
  defaultValue: defaultValue,
@@ -244,14 +248,7 @@ var SearchControl = function SearchControl(_ref) {
244
248
  classes: {
245
249
  input: classes.controlInput
246
250
  },
247
- onKeyDown: handleKeyDown,
248
251
  disableUnderline: true,
249
- onFocus: function onFocus(e) {
250
- return onFocusedEvent(e, true);
251
- },
252
- onBlur: function onBlur(e) {
253
- return onFocusedEvent(e, false);
254
- },
255
252
  endAdornment: /*#__PURE__*/_react.default.createElement(_InputAdornment.default, {
256
253
  position: "start"
257
254
  }, /*#__PURE__*/_react.default.createElement(_IconButton.default, {
@@ -285,10 +282,10 @@ var SearchControl = function SearchControl(_ref) {
285
282
  className: classes.container
286
283
  }, /*#__PURE__*/_react.default.createElement(SelectSection, null), inputSection, searchSection);
287
284
  };
288
- __signature__(SearchControl, "useState{[inputFocused, setInputFocused](false)}\nuseStyles{classes}\nuseRef{inputRef}", function () {
285
+ __signature__(SearchControl, "useStyles{classes}\nuseRef{inputRef}\nuseEffect{}", function () {
289
286
  return [useStyles];
290
287
  });
291
- __signature__(SearchControl, "useState{[inputFocused, setInputFocused](false)}\nuseStyles{classes}\nuseRef{inputRef}", function () {
288
+ __signature__(SearchControl, "useStyles{classes}\nuseRef{inputRef}\nuseEffect{}", function () {
292
289
  return [useStyles];
293
290
  });
294
291
  var _default = SearchControl;
@@ -5,7 +5,7 @@ exports.default = void 0;
5
5
  var _react = _interopRequireWildcard(require("react"));
6
6
  var _Tooltip = _interopRequireDefault(require("@material-ui/core/Tooltip"));
7
7
  var _propertyValidator = require("../../../utils/propertyValidator");
8
- var _excluded = ["titleValue", "alwaysDisplay"];
8
+ var _excluded = ["titleValue", "alwaysDisplay", "tooltipClasses"];
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
11
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -39,6 +39,7 @@ var withDeferredTooltip = function withDeferredTooltip(Comp) {
39
39
  return __signature__(__signature__(function (_ref) {
40
40
  var titleValue = _ref.titleValue,
41
41
  alwaysDisplay = _ref.alwaysDisplay,
42
+ tooltipClasses = _ref.tooltipClasses,
42
43
  props = _objectWithoutProperties(_ref, _excluded);
43
44
  var _useState = (0, _react.useState)(false),
44
45
  _useState2 = _slicedToArray(_useState, 2),
@@ -62,6 +63,7 @@ var withDeferredTooltip = function withDeferredTooltip(Comp) {
62
63
  if (shouldBeTooltipped === false) return defaultComponent;
63
64
  return /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
64
65
  arrow: true,
66
+ classes: tooltipClasses != null ? tooltipClasses : null,
65
67
  title: titleValue,
66
68
  disableHoverListener: false,
67
69
  disableFocusListener: true,
@@ -8,6 +8,7 @@ var _withErrorBoundary = _interopRequireDefault(require("../../hocs/withErrorBou
8
8
  var _FullPage = _interopRequireDefault(require("./FullPage"));
9
9
  var _SubPage = _interopRequireDefault(require("./SubPage"));
10
10
  var _withWaypointing = _interopRequireDefault(require("./withWaypointing"));
11
+ var _urlPattern = _interopRequireDefault(require("url-pattern"));
11
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
13
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -45,6 +46,7 @@ var Page = function Page(_ref) {
45
46
  var WrappedView = (0, _react.useMemo)(function () {
46
47
  return (0, _withErrorBoundary.default)(path)((0, _withWaypointing.default)(View, isVisible));
47
48
  }, [path, View, isVisible]);
49
+ var parentUrlPattern = new _urlPattern.default(path);
48
50
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactRouter.Switch, null, Object.entries(pages).map(function (_ref2) {
49
51
  var _ref3 = _slicedToArray(_ref2, 2),
50
52
  subpath = _ref3[0],
@@ -83,7 +85,8 @@ var Page = function Page(_ref) {
83
85
  render: function render(route) {
84
86
  return /*#__PURE__*/_react.default.createElement(_SubPage.default, _extends({
85
87
  root: path,
86
- config: config
88
+ config: config,
89
+ parentUrlPattern: parentUrlPattern
87
90
  }, route, {
88
91
  modulePrependPath: modulePrependPath
89
92
  }));
@@ -226,6 +226,8 @@ var SegmentPage = function SegmentPage(_ref4) {
226
226
  }));
227
227
  }
228
228
  if (config.subpages) {
229
+ var parentUrl = path + segpath;
230
+ var parentUrlPattern = new _urlPattern.default(parentUrl);
229
231
  subpages.push.apply(subpages, Object.entries(config.subpages).map(function (_ref9) {
230
232
  var _ref10 = _slicedToArray(_ref9, 2),
231
233
  subpath = _ref10[0],
@@ -237,7 +239,8 @@ var SegmentPage = function SegmentPage(_ref4) {
237
239
  render: function render(route) {
238
240
  return /*#__PURE__*/_react.default.createElement(_SubPage.default, _extends({
239
241
  root: path,
240
- config: config
242
+ config: config,
243
+ parentUrlPattern: parentUrlPattern
241
244
  }, route, {
242
245
  modulePrependPath: modulePrependPath
243
246
  }));
@@ -52,7 +52,8 @@ var SubPage = exports.SubPage = function SubPage(_ref) {
52
52
  location = _ref.location,
53
53
  history = _ref.history,
54
54
  root = _ref.root,
55
- modulePrependPath = _ref.modulePrependPath;
55
+ modulePrependPath = _ref.modulePrependPath,
56
+ parentUrlPattern = _ref.parentUrlPattern;
56
57
  var classes = useStyles();
57
58
  var dispatch = (0, _reactRedux.useDispatch)();
58
59
  var View = config.component,
@@ -60,15 +61,13 @@ var SubPage = exports.SubPage = function SubPage(_ref) {
60
61
  var pattern = new _urlPattern.default(root);
61
62
  var baseHref = pattern.stringify(match.params);
62
63
  var path = location.pathname;
63
- var basePathArr = path.split("/");
64
- basePathArr.pop();
65
- var basePath = basePathArr.join("/");
66
64
  var WrappedView = (0, _react.useMemo)(function () {
67
65
  return (0, _withErrorBoundary.default)(path)((0, _withWaypointing.default)(View));
68
66
  }, [path, View]);
69
67
  var closeSubPage = function closeSubPage() {
70
- history.push(basePath);
71
- dispatch((0, _navigation.mapHref)(basePath, basePath));
68
+ var parentHref = parentUrlPattern.stringify(match.params);
69
+ history.push(parentHref);
70
+ dispatch((0, _navigation.mapHref)(parentHref, parentHref));
72
71
  };
73
72
  var message = /*#__PURE__*/_react.default.createElement(WrappedView, _extends({
74
73
  match: match,
@@ -105,9 +104,23 @@ var SubPage = exports.SubPage = function SubPage(_ref) {
105
104
  variant: action.isPrimary ? "contained" : "outlined",
106
105
  color: action.isPrimary ? "primary" : "default",
107
106
  disableElevation: action.isPrimary,
107
+ disabled: action.disabled,
108
108
  onClick: function onClick(e) {
109
- action.handler && action.handler(e);
110
- closeSubPage();
109
+ if (!action.handler) {
110
+ closeSubPage();
111
+ return;
112
+ }
113
+ var actionHandlerResult = action.handler(e);
114
+ if (typeof actionHandlerResult === "object") {
115
+ // promise
116
+ actionHandlerResult.then(function (actionResult) {
117
+ if (action.validateBeforeClose && !actionResult) return;
118
+ closeSubPage();
119
+ });
120
+ } else {
121
+ if (action.validateBeforeClose && !actionHandlerResult) return;
122
+ closeSubPage();
123
+ }
111
124
  }
112
125
  }, /*#__PURE__*/_react.default.createElement(_reactIntl.FormattedMessage, action.label));
113
126
  }));