orc-shared 1.2.0-dev.1 → 1.2.0-dev.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/applications.js +1 -1
- package/dist/actions/authentication.js +1 -1
- package/dist/actions/countries.js +1 -1
- package/dist/actions/locale.js +1 -1
- package/dist/actions/makeApiAction.js +1 -1
- package/dist/actions/metadata.js +1 -1
- package/dist/actions/modules.js +63 -1
- package/dist/actions/navigation.js +1 -1
- package/dist/actions/requestsApi.js +8 -8
- package/dist/actions/scopes.js +59 -22
- package/dist/actions/timezones.js +1 -1
- package/dist/actions/toasts.js +1 -1
- package/dist/actions/versionInfo.js +1 -1
- package/dist/actions/view.js +1 -1
- package/dist/buildStore.js +1 -1
- package/dist/components/AppFrame/About.js +4 -3
- package/dist/components/AppFrame/MenuItem.js +6 -15
- package/dist/components/AppFrame/Preferences.js +1 -1
- package/dist/components/AppFrame/Sidebar.js +20 -9
- package/dist/components/AppFrame/Topbar.js +1 -1
- package/dist/components/ApplicationModuleLoader.js +143 -0
- package/dist/components/Authenticate.js +13 -13
- package/dist/components/CategoryList.js +1 -1
- package/dist/components/Checkbox.js +1 -1
- package/dist/components/DropMenu/Menu.js +1 -1
- package/dist/components/DropMenu/index.js +1 -1
- package/dist/components/Form/FieldList.js +1 -1
- package/dist/components/Form/Form.js +1 -1
- package/dist/components/Form/Inputs/Button.js +1 -1
- package/dist/components/Form/Inputs/FieldButtons.js +1 -1
- package/dist/components/Form/Inputs/Number.js +1 -1
- package/dist/components/Form/Inputs/ReadOnly.js +1 -1
- package/dist/components/Form/Inputs/SmallButton.js +1 -1
- package/dist/components/Form/Inputs/Text.js +1 -1
- package/dist/components/Form/Inputs/Time.js +1 -1
- package/dist/components/Form/Inputs/Toggles.js +1 -1
- package/dist/components/Form/Inputs/Translation.js +1 -1
- package/dist/components/List/HeadCell.js +1 -1
- package/dist/components/List/List.js +1 -1
- package/dist/components/List/Row.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/List.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/NotificationProps.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/PredefinedElements/Translations.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/Table.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/TableProps.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/TransferList.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/chipProps.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/collapsableListProps.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/dividerProps.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/index.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/modalProps.js +1 -1
- package/dist/components/MaterialUI/DataDisplay/useTableSelection.js +1 -1
- package/dist/components/MaterialUI/Feedback/useNotification.js +1 -1
- package/dist/components/MaterialUI/Inputs/AutocompleteProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/CheckboxGroupProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/CheckboxProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/InputBase.js +1 -1
- package/dist/components/MaterialUI/Inputs/InputBaseProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +1 -1
- package/dist/components/MaterialUI/Inputs/RadioProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/SelectProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/Switch.js +1 -1
- package/dist/components/MaterialUI/Inputs/SwitchProps.js +1 -1
- package/dist/components/MaterialUI/Inputs/TimePicker.js +1 -1
- package/dist/components/MaterialUI/Inputs/createInput.js +1 -1
- package/dist/components/MaterialUI/Inputs/index.js +1 -1
- package/dist/components/MaterialUI/Inputs/standaloneRadioProps.js +1 -1
- package/dist/components/MaterialUI/Navigation/DropDownMenuProps.js +1 -1
- package/dist/components/MaterialUI/Navigation/ExternalLink.js +113 -0
- package/dist/components/MaterialUI/Surfaces/expansionPanelProps.js +1 -1
- package/dist/components/MaterialUI/Surfaces/paperProps.js +1 -1
- package/dist/components/MaterialUI/muiThemes.js +5 -0
- package/dist/components/MaterialUI/textProps.js +1 -1
- package/dist/components/Modules.js +126 -41
- package/dist/components/MultiSelector.js +1 -1
- package/dist/components/Navigation/Bar.js +1 -1
- package/dist/components/Navigation/Tab.js +1 -1
- package/dist/components/Navigation/useNavigationState.js +1 -1
- package/dist/components/Placeholder.js +1 -1
- package/dist/components/Routing/FullPage.js +3 -1
- package/dist/components/Routing/Page.js +5 -3
- package/dist/components/Routing/Segment.js +1 -1
- package/dist/components/Routing/SegmentPage.js +1 -1
- package/dist/components/Routing/withWaypointing.js +6 -2
- package/dist/components/Scope/ScopeNode.js +1 -1
- package/dist/components/Scope/Selector.js +1 -1
- package/dist/components/Scope/index.js +1 -1
- package/dist/components/Scope/useScopeConfirmationModalState.js +7 -16
- package/dist/components/Scope/useScopeData.js +4 -13
- package/dist/components/Scope/useScopeSelect.js +1 -1
- package/dist/components/Selector.js +1 -1
- package/dist/components/Spritesheet.js +1 -1
- package/dist/components/Switch.js +1 -1
- package/dist/components/Text.js +1 -1
- package/dist/components/ToastList.js +1 -1
- package/dist/components/Toolbar.js +1 -1
- package/dist/components/Treeview/Label.js +1 -1
- package/dist/components/Treeview/Leaf.js +1 -1
- package/dist/components/Treeview/Node.js +1 -1
- package/dist/components/Treeview/settings.js +1 -1
- package/dist/constants.js +19 -2
- package/dist/content/icons/orckestra-icon.svg +5 -0
- package/dist/content/iconsSheet.svg +8 -0
- package/dist/content/orckestra-logo-white.png +0 -0
- package/dist/hocs/withInfiniteScroll.js +1 -1
- package/dist/hooks/useDispatchWithModulesData.js +1 -1
- package/dist/hooks/useEditState.js +1 -1
- package/dist/hooks/useFullEntityEditState.js +1 -1
- package/dist/hooks/useLabelMessage.js +1 -1
- package/dist/hooks/useNavigationHandler.js +1 -1
- package/dist/hooks/useSelectorAndUnwrap.js +1 -1
- package/dist/reducers/metadata.js +1 -1
- package/dist/reducers/modules.js +39 -1
- package/dist/reducers/scopes.js +27 -0
- package/dist/reducers/settings.js +31 -2
- package/dist/schemas/countries.js +1 -1
- package/dist/schemas/definitions.js +1 -1
- package/dist/schemas/metadata.js +1 -1
- package/dist/schemas/productDefinitions.js +1 -1
- package/dist/schemas/timezones.js +1 -1
- package/dist/selectors/applications.js +1 -1
- package/dist/selectors/authentication.js +57 -18
- package/dist/selectors/countries.js +1 -1
- package/dist/selectors/locale.js +1 -1
- package/dist/selectors/metadata.js +1 -1
- package/dist/selectors/modules.js +15 -1
- package/dist/selectors/navigation.js +1 -1
- package/dist/selectors/requests.js +1 -1
- package/dist/selectors/scope.js +7 -1
- package/dist/selectors/settings.js +13 -1
- package/dist/selectors/versionInfo.js +1 -1
- package/dist/selectors/view.js +1 -1
- package/dist/spawnerMiddleware.js +1 -1
- package/dist/utils/displayModeHelper.js +1 -1
- package/dist/utils/localizationHelper.js +1 -1
- package/dist/utils/mapHelper.js +1 -1
- package/dist/utils/modelValidationHelper.js +1 -1
- package/dist/utils/parseHelper.js +1 -1
- package/dist/utils/propertyHelper.js +2 -2
- package/dist/utils/propertyValidator.js +1 -1
- package/dist/utils/setTranslationWithFallback.js +1 -1
- package/dist/utils/testUtils.js +2 -1
- package/dist/utils/unwrapImmutable.js +1 -1
- package/dist/utils/urlHelper.js +1 -1
- package/package.json +6 -5
- package/src/actions/modules.js +30 -0
- package/src/actions/modules.test.js +50 -1
- package/src/actions/scopes.js +33 -7
- package/src/actions/scopes.test.js +84 -14
- package/src/components/AppFrame/About.js +2 -2
- package/src/components/AppFrame/AppFrame.test.js +9 -0
- package/src/components/AppFrame/MenuItem.js +3 -5
- package/src/components/AppFrame/MenuItem.test.js +2 -24
- package/src/components/AppFrame/Sidebar.js +11 -12
- package/src/components/AppFrame/Sidebar.test.js +18 -0
- package/src/components/ApplicationModuleLoader.js +52 -0
- package/src/components/ApplicationModuleLoader.test.js +149 -0
- package/src/components/Authenticate.js +5 -4
- package/src/components/Authenticate.test.js +23 -4
- package/src/components/MaterialUI/Navigation/ExternalLink.js +25 -0
- package/src/components/MaterialUI/Navigation/ExternalLink.test.js +26 -0
- package/src/components/MaterialUI/muiThemes.js +5 -0
- package/src/components/Modules.js +103 -20
- package/src/components/Modules.test.js +315 -28
- package/src/components/Provision.test.js +34 -0
- package/src/components/Routing/FullPage.js +2 -1
- package/src/components/Routing/FullPage.test.js +23 -0
- package/src/components/Routing/Page.js +2 -2
- package/src/components/Routing/Page.test.js +20 -0
- package/src/components/Routing/Segment.js +1 -1
- package/src/components/Routing/withWaypointing.js +2 -2
- package/src/components/Routing/withWaypointing.test.js +33 -5
- package/src/components/Scope/useScopeConfirmationModalState.js +5 -16
- package/src/components/Scope/useScopeConfirmationModalState.test.js +39 -13
- package/src/components/Scope/useScopeData.js +0 -3
- package/src/components/Scope/useScopeData.test.js +0 -27
- package/src/constants.js +15 -0
- package/src/content/icons/orckestra-icon.svg +5 -0
- package/src/content/iconsSheet.svg +8 -0
- package/src/content/orckestra-logo-white.png +0 -0
- package/src/hocs/withScopeData.test.js +0 -31
- package/src/reducers/modules.js +48 -2
- package/src/reducers/modules.test.js +117 -2
- package/src/reducers/scopes.js +30 -0
- package/src/reducers/scopes.test.js +45 -1
- package/src/reducers/settings.js +26 -2
- package/src/reducers/settings.test.js +74 -6
- package/src/selectors/authentication.js +53 -27
- package/src/selectors/authentication.test.js +600 -12
- package/src/selectors/modules.js +7 -0
- package/src/selectors/modules.test.js +16 -1
- package/src/selectors/scope.js +2 -0
- package/src/selectors/scope.test.js +5 -0
- package/src/selectors/settings.js +6 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.selectTabGetter = exports.selectSegmentHrefMapper = exports.selectRoutePath = exports.selectRouteParams = exports.selectRouteHref = exports.selectPrependPathConfig = exports.selectPrependHrefConfig = exports.selectMappedCurrentModuleList = exports.selectCurrentSectionName = exports.selectCurrentModuleName = exports.selectClosingTabHandlerActions = exports.selectClosingTabHandlerActionForEntity = exports.resetLastScope = exports.hasOpenedTabs = exports.getCurrentScopeFromRoute = exports.getCurrentScope = void 0;
|
|
5
5
|
|
|
6
6
|
var _reselect = require("reselect");
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.selectActivity = exports.requestRunningSelector = exports.logoutSelector = void 0;
|
|
5
5
|
|
|
6
6
|
var _reselect = require("reselect");
|
|
7
7
|
|
package/dist/selectors/scope.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.scopeGetter = exports.scopeDefaultCultureSelector = exports.localizedScopesSelectorByIds = exports.localizedScopeSelector = exports.isCurrentScopeAuthorizedSelector = exports.getScopesSelector = exports.currentScopeSelector = void 0;
|
|
5
5
|
|
|
6
6
|
var _reselect = require("reselect");
|
|
7
7
|
|
|
@@ -39,6 +39,10 @@ var scopeData = function scopeData(state) {
|
|
|
39
39
|
return state.get("scopes");
|
|
40
40
|
};
|
|
41
41
|
|
|
42
|
+
var getScopesSelector = (0, _reselect.createSelector)(scopeData, function (scopes) {
|
|
43
|
+
return scopes;
|
|
44
|
+
});
|
|
45
|
+
exports.getScopesSelector = getScopesSelector;
|
|
42
46
|
var localizedScopesSelector = (0, _reselect.createSelector)(scopeData, _locale.currentLocaleOrDefault, function (scopes, locale) {
|
|
43
47
|
return scopes.map(function (scope) {
|
|
44
48
|
return scope.withMutations(function (s) {
|
|
@@ -130,6 +134,7 @@ exports.localizedScopeSelector = localizedScopeSelector;
|
|
|
130
134
|
}
|
|
131
135
|
|
|
132
136
|
reactHotLoader.register(scopeData, "scopeData", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
137
|
+
reactHotLoader.register(getScopesSelector, "getScopesSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
133
138
|
reactHotLoader.register(localizedScopesSelector, "localizedScopesSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
134
139
|
reactHotLoader.register(currentScopeSelector, "currentScopeSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
135
140
|
reactHotLoader.register(scopeDefaultCultureSelector, "scopeDefaultCultureSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
@@ -158,6 +163,7 @@ exports.localizedScopeSelector = localizedScopeSelector;
|
|
|
158
163
|
}
|
|
159
164
|
|
|
160
165
|
reactHotLoader.register(scopeData, "scopeData", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
166
|
+
reactHotLoader.register(getScopesSelector, "getScopesSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
161
167
|
reactHotLoader.register(localizedScopesSelector, "localizedScopesSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
162
168
|
reactHotLoader.register(currentScopeSelector, "currentScopeSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
163
169
|
reactHotLoader.register(scopeDefaultCultureSelector, "scopeDefaultCultureSelector", "/home/vsts/work/1/s/src/selectors/scope.js");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.defaultScopeSelector = exports.defaultAppId = void 0;
|
|
4
|
+
exports.getLoadedModulesScopeSelector = exports.getApplicationModulesSelector = exports.defaultScopeSelector = exports.defaultAppId = void 0;
|
|
5
5
|
|
|
6
6
|
var _reselect = require("reselect");
|
|
7
7
|
|
|
@@ -35,6 +35,14 @@ var defaultScopeSelector = (0, _reselect.createSelector)(settingsData, function
|
|
|
35
35
|
return data.get("defaultScope");
|
|
36
36
|
});
|
|
37
37
|
exports.defaultScopeSelector = defaultScopeSelector;
|
|
38
|
+
var getLoadedModulesScopeSelector = (0, _reselect.createSelector)(settingsData, function (data) {
|
|
39
|
+
return data.get("loadedModulesScope").toJS();
|
|
40
|
+
});
|
|
41
|
+
exports.getLoadedModulesScopeSelector = getLoadedModulesScopeSelector;
|
|
42
|
+
var getApplicationModulesSelector = (0, _reselect.createSelector)(settingsData, function (data) {
|
|
43
|
+
return data.get("modules").toJS();
|
|
44
|
+
});
|
|
45
|
+
exports.getApplicationModulesSelector = getApplicationModulesSelector;
|
|
38
46
|
;
|
|
39
47
|
|
|
40
48
|
(function () {
|
|
@@ -47,6 +55,8 @@ exports.defaultScopeSelector = defaultScopeSelector;
|
|
|
47
55
|
reactHotLoader.register(settingsData, "settingsData", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
48
56
|
reactHotLoader.register(defaultAppId, "defaultAppId", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
49
57
|
reactHotLoader.register(defaultScopeSelector, "defaultScopeSelector", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
58
|
+
reactHotLoader.register(getLoadedModulesScopeSelector, "getLoadedModulesScopeSelector", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
59
|
+
reactHotLoader.register(getApplicationModulesSelector, "getApplicationModulesSelector", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
50
60
|
})();
|
|
51
61
|
|
|
52
62
|
;
|
|
@@ -68,6 +78,8 @@ exports.defaultScopeSelector = defaultScopeSelector;
|
|
|
68
78
|
reactHotLoader.register(settingsData, "settingsData", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
69
79
|
reactHotLoader.register(defaultAppId, "defaultAppId", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
70
80
|
reactHotLoader.register(defaultScopeSelector, "defaultScopeSelector", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
81
|
+
reactHotLoader.register(getLoadedModulesScopeSelector, "getLoadedModulesScopeSelector", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
82
|
+
reactHotLoader.register(getApplicationModulesSelector, "getApplicationModulesSelector", "/home/vsts/work/1/s/src/selectors/settings.js");
|
|
71
83
|
})();
|
|
72
84
|
|
|
73
85
|
;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.getVersionSelector = exports.getHelpUrlDefaultSelector = exports.getApplicationHelpUrlSelector = void 0;
|
|
5
5
|
|
|
6
6
|
var _reselect = require("reselect");
|
|
7
7
|
|
package/dist/selectors/view.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.isEntityUnderEditing = exports.hasUnsavedDataSelector = exports.getTabsWithErrors = exports.getSectionsWithErrors = exports.getModifiedTabs = exports.getModifiedSections = exports.getModifiedModels = exports.getModifiedModel = exports.getInstanceKeysWithErrors = void 0;
|
|
5
5
|
|
|
6
6
|
var _reselect = require("reselect");
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.spawnerMiddleware = exports.default = void 0;
|
|
5
5
|
|
|
6
6
|
(function () {
|
|
7
7
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.isReadMode = exports.isMutationMode = exports.isEditMode = exports.isCreateMode = void 0;
|
|
5
5
|
|
|
6
6
|
var _constants = require("../constants");
|
|
7
7
|
|
package/dist/utils/mapHelper.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.validationRules = exports.showError = exports.hasValidationErrors = exports.hasMultipleFieldValidationErrors = void 0;
|
|
5
5
|
|
|
6
6
|
var _propertyValidator = require("./propertyValidator");
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.stringifyWithoutQuotes = exports.
|
|
4
|
+
exports.stringifyWithoutQuotes = exports.parseGuid = exports.getModuleNameFromHref = exports.getAllAfterPrependHref = exports.concatObjectPropsWithDelimeter = void 0;
|
|
5
5
|
|
|
6
6
|
(function () {
|
|
7
7
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.getPropertyOrDefaultFromMap = getPropertyOrDefaultFromMap;
|
|
5
4
|
exports.getPropertyOrDefault = getPropertyOrDefault;
|
|
6
|
-
exports.
|
|
5
|
+
exports.getPropertyOrDefaultFromMap = getPropertyOrDefaultFromMap;
|
|
6
|
+
exports.isObjectContainsPropertyWithValue = exports.isObjectContainsPropertyWithAnyValue = void 0;
|
|
7
7
|
|
|
8
8
|
(function () {
|
|
9
9
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.isStringNullOrWhitespace = exports.isString = exports.isReactComponent = exports.isObject = void 0;
|
|
5
5
|
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.setTranslationWithFallbackValue = exports.setTranslationWithFallbackField = void 0;
|
|
5
5
|
|
|
6
6
|
var _flatten = require("./flatten");
|
|
7
7
|
|
package/dist/utils/testUtils.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
+
exports.createMuiTheme = exports.TestWrapper = exports.PropStruct = void 0;
|
|
4
5
|
exports.extractMessages = extractMessages;
|
|
5
|
-
exports.
|
|
6
|
+
exports.spyOnConsole = exports.ignoreConsoleError = exports.getStyledClassSelector = exports.getElmClasses = exports.getClassSelector = exports.getClassName = exports.generateClassName = exports.firstItemComparator = void 0;
|
|
6
7
|
|
|
7
8
|
var _react = _interopRequireDefault(require("react"));
|
|
8
9
|
|
package/dist/utils/urlHelper.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.tryGetNewEntityIdKey = exports.resolveEntityId = exports.getValueFromUrlByKey = exports.NEW_ENTITY_URL_KEY = void 0;
|
|
5
5
|
|
|
6
6
|
(function () {
|
|
7
7
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "orc-shared",
|
|
3
|
-
"version": "1.2.0-dev.
|
|
3
|
+
"version": "1.2.0-dev.5",
|
|
4
4
|
"description": "Shared code for Orckestra applications",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -47,11 +47,9 @@
|
|
|
47
47
|
"cultureIso": "fr-CA"
|
|
48
48
|
}
|
|
49
49
|
],
|
|
50
|
-
"devDependencies": {
|
|
51
|
-
"orc-scripts": "1.3.0-dev.1"
|
|
52
|
-
},
|
|
50
|
+
"devDependencies": {},
|
|
53
51
|
"peerDependencies": {
|
|
54
|
-
"orc-scripts": "1.3.0-dev.
|
|
52
|
+
"orc-scripts": "1.3.0-dev.2"
|
|
55
53
|
},
|
|
56
54
|
"sideEffects": false,
|
|
57
55
|
"lint-staged": {
|
|
@@ -69,5 +67,8 @@
|
|
|
69
67
|
"hooks": {
|
|
70
68
|
"pre-commit": "lint-staged"
|
|
71
69
|
}
|
|
70
|
+
},
|
|
71
|
+
"dependencies": {
|
|
72
|
+
"orc-scripts": "1.3.0-dev.2"
|
|
72
73
|
}
|
|
73
74
|
}
|
package/src/actions/modules.js
CHANGED
|
@@ -4,3 +4,33 @@ export const setModulesStructure = modules => ({
|
|
|
4
4
|
type: SET_MODULES_STRUCTURE,
|
|
5
5
|
payload: modules,
|
|
6
6
|
});
|
|
7
|
+
|
|
8
|
+
export const SET_MODULE_AS_VISIBLE = "SET_MODULE_AS_VISIBLE";
|
|
9
|
+
|
|
10
|
+
export const setModuleAsVisible = module => ({
|
|
11
|
+
type: SET_MODULE_AS_VISIBLE,
|
|
12
|
+
payload: module,
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
export const INITIALIZE_FIRST_MODULE_SCOPE = "INITIALIZE_FIRST_MODULE_SCOPE";
|
|
16
|
+
|
|
17
|
+
export const initializeFirstModuleScope = scope => ({
|
|
18
|
+
type: INITIALIZE_FIRST_MODULE_SCOPE,
|
|
19
|
+
payload: scope,
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
export const SET_NEW_SCOPE_AND_MODULE_NAME = "SET_NEW_SCOPE_AND_MODULE_NAME";
|
|
23
|
+
|
|
24
|
+
export const setNewScopeAndModuleName = (scope, moduleName) => ({
|
|
25
|
+
type: SET_NEW_SCOPE_AND_MODULE_NAME,
|
|
26
|
+
payload: {
|
|
27
|
+
scope,
|
|
28
|
+
moduleName,
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
export const SET_ROUTING_PERFORMED = "SET_ROUTING_PERFORMED";
|
|
33
|
+
|
|
34
|
+
export const setRoutingPerformed = () => ({
|
|
35
|
+
type: SET_ROUTING_PERFORMED,
|
|
36
|
+
});
|
|
@@ -1,4 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
INITIALIZE_FIRST_MODULE_SCOPE,
|
|
3
|
+
initializeFirstModuleScope,
|
|
4
|
+
SET_MODULE_AS_VISIBLE,
|
|
5
|
+
SET_MODULES_STRUCTURE,
|
|
6
|
+
SET_NEW_SCOPE_AND_MODULE_NAME,
|
|
7
|
+
SET_ROUTING_PERFORMED,
|
|
8
|
+
setModuleAsVisible,
|
|
9
|
+
setModulesStructure,
|
|
10
|
+
setNewScopeAndModuleName,
|
|
11
|
+
setRoutingPerformed,
|
|
12
|
+
} from "./modules";
|
|
2
13
|
|
|
3
14
|
describe("setModulesStructure", () => {
|
|
4
15
|
it("creates an action object", () => {
|
|
@@ -8,3 +19,41 @@ describe("setModulesStructure", () => {
|
|
|
8
19
|
});
|
|
9
20
|
});
|
|
10
21
|
});
|
|
22
|
+
|
|
23
|
+
describe("initializeFirstModuleScope", () => {
|
|
24
|
+
it("creates an action object", () => {
|
|
25
|
+
expect(initializeFirstModuleScope, "when called with", ["module_1"], "to equal", {
|
|
26
|
+
type: INITIALIZE_FIRST_MODULE_SCOPE,
|
|
27
|
+
payload: "module_1",
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
describe("setModuleAsVisible", () => {
|
|
33
|
+
it("creates an action object", () => {
|
|
34
|
+
expect(setModuleAsVisible, "when called with", ["module_A"], "to equal", {
|
|
35
|
+
type: SET_MODULE_AS_VISIBLE,
|
|
36
|
+
payload: "module_A",
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
describe("setNewScopeAndModuleName", () => {
|
|
42
|
+
it("creates an action object", () => {
|
|
43
|
+
expect(setNewScopeAndModuleName, "when called with", ["matrixScope", "moduleNeo"], "to equal", {
|
|
44
|
+
type: SET_NEW_SCOPE_AND_MODULE_NAME,
|
|
45
|
+
payload: {
|
|
46
|
+
scope: "matrixScope",
|
|
47
|
+
moduleName: "moduleNeo",
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
describe("setRoutingPerformed", () => {
|
|
54
|
+
it("creates an action object", () => {
|
|
55
|
+
expect(setRoutingPerformed, "when called", "to equal", {
|
|
56
|
+
type: SET_ROUTING_PERFORMED,
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
});
|
package/src/actions/scopes.js
CHANGED
|
@@ -1,26 +1,52 @@
|
|
|
1
1
|
import { makeActionTypes } from "./makeApiAction";
|
|
2
2
|
import makeOrcApiAction from "./makeOrcApiAction";
|
|
3
|
-
import { getUserScopeRequest, getUserScopeTreeRequest } from "./requestsApi";
|
|
3
|
+
import { getApplicationModules, getUserScopeRequest, getUserScopeTreeRequest } from "./requestsApi";
|
|
4
|
+
import { overtureModule } from "../constants";
|
|
4
5
|
|
|
5
|
-
export const
|
|
6
|
-
if (!
|
|
7
|
-
throw new Error('"
|
|
6
|
+
export const validateOvertureApplication = () => {
|
|
7
|
+
if (!OVERTURE_APPLICATION) {
|
|
8
|
+
throw new Error('"overtureApplication.name" is missing in the configuration.');
|
|
8
9
|
}
|
|
9
10
|
};
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
validateOvertureApplication();
|
|
13
|
+
|
|
14
|
+
export const GET_APPLICATION_MODULES = "GET_APPLICATION_MODULES";
|
|
15
|
+
|
|
16
|
+
export const [GET_APPLICATION_MODULES_REQUEST, GET_APPLICATION_MODULES_SUCCESS, GET_APPLICATION_MODULES_FAILURE] =
|
|
17
|
+
makeActionTypes(GET_APPLICATION_MODULES);
|
|
18
|
+
|
|
19
|
+
export const getAppModules = () =>
|
|
20
|
+
makeOrcApiAction(GET_APPLICATION_MODULES, getApplicationModules.buildUrl(OVERTURE_APPLICATION));
|
|
12
21
|
|
|
13
22
|
export const GET_SCOPES = "GET_SCOPES";
|
|
14
23
|
|
|
15
24
|
export const [GET_SCOPES_REQUEST, GET_SCOPES_SUCCESS, GET_SCOPES_FAILURE] = makeActionTypes(GET_SCOPES);
|
|
16
25
|
|
|
17
|
-
export const getScopes =
|
|
26
|
+
export const getScopes = module =>
|
|
27
|
+
makeOrcApiAction(
|
|
28
|
+
GET_SCOPES,
|
|
29
|
+
getUserScopeTreeRequest.buildUrl(module === overtureModule.System ? overtureModule.Orders : module, {}),
|
|
30
|
+
getUserScopeTreeRequest.verb,
|
|
31
|
+
{
|
|
32
|
+
bailout: false,
|
|
33
|
+
meta: { module },
|
|
34
|
+
},
|
|
35
|
+
);
|
|
18
36
|
|
|
19
37
|
export const GET_MY_SCOPE = "GET_MY_SCOPE";
|
|
20
38
|
|
|
21
39
|
export const [GET_MY_SCOPE_REQUEST, GET_MY_SCOPE_SUCCESS, GET_MY_SCOPE_FAILURE] = makeActionTypes(GET_MY_SCOPE);
|
|
22
40
|
|
|
23
|
-
export const getDefaultScope =
|
|
41
|
+
export const getDefaultScope = module =>
|
|
42
|
+
makeOrcApiAction(
|
|
43
|
+
GET_MY_SCOPE,
|
|
44
|
+
getUserScopeRequest.buildUrl(module === overtureModule.System ? overtureModule.Orders : module),
|
|
45
|
+
getUserScopeRequest.verb,
|
|
46
|
+
{
|
|
47
|
+
bailout: false,
|
|
48
|
+
},
|
|
49
|
+
);
|
|
24
50
|
|
|
25
51
|
export const APPLICATION_SCOPE_HAS_CHANGED = "APPLICATION_SCOPE_HAS_CHANGED";
|
|
26
52
|
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { RSAA } from "redux-api-middleware";
|
|
2
2
|
import {
|
|
3
|
-
GET_SCOPES_REQUEST,
|
|
4
|
-
GET_SCOPES_SUCCESS,
|
|
5
|
-
GET_SCOPES_FAILURE,
|
|
6
3
|
getScopes,
|
|
7
4
|
GET_MY_SCOPE_REQUEST,
|
|
8
5
|
GET_MY_SCOPE_SUCCESS,
|
|
9
6
|
GET_MY_SCOPE_FAILURE,
|
|
10
7
|
getDefaultScope,
|
|
11
|
-
|
|
8
|
+
validateOvertureApplication,
|
|
12
9
|
APPLICATION_SCOPE_HAS_CHANGED,
|
|
13
10
|
applicationScopeHasChanged,
|
|
11
|
+
getAppModules,
|
|
12
|
+
GET_APPLICATION_MODULES_REQUEST,
|
|
13
|
+
GET_APPLICATION_MODULES_SUCCESS,
|
|
14
|
+
GET_APPLICATION_MODULES_FAILURE,
|
|
14
15
|
} from "./scopes";
|
|
15
16
|
|
|
16
17
|
jest.mock("../utils/buildUrl", () => {
|
|
@@ -20,19 +21,71 @@ jest.mock("../utils/buildUrl", () => {
|
|
|
20
21
|
return modExport;
|
|
21
22
|
});
|
|
22
23
|
|
|
24
|
+
describe("getAppModules", () => {
|
|
25
|
+
it("creates a RSAA to fetch application modules", () => {
|
|
26
|
+
expect(getAppModules, "when called", "to exhaustively satisfy", {
|
|
27
|
+
[RSAA]: {
|
|
28
|
+
types: [GET_APPLICATION_MODULES_REQUEST, GET_APPLICATION_MODULES_SUCCESS, GET_APPLICATION_MODULES_FAILURE],
|
|
29
|
+
endpoint: 'URL: modules/byApplicationName/anApplication ""',
|
|
30
|
+
method: "GET",
|
|
31
|
+
body: undefined,
|
|
32
|
+
credentials: "include",
|
|
33
|
+
bailout: expect.it("to be a function"),
|
|
34
|
+
headers: {
|
|
35
|
+
Accept: "application/json; charset=utf-8",
|
|
36
|
+
"Content-Type": "application/json",
|
|
37
|
+
},
|
|
38
|
+
options: { redirect: "follow" },
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
|
|
23
44
|
describe("getScopes", () => {
|
|
24
|
-
|
|
25
|
-
|
|
45
|
+
let originalApplication;
|
|
46
|
+
|
|
47
|
+
beforeEach(() => {
|
|
48
|
+
originalApplication = global.OVERTURE_APPLICATION;
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
afterEach(() => {
|
|
52
|
+
global.OVERTURE_APPLICATION = originalApplication;
|
|
53
|
+
});
|
|
26
54
|
|
|
27
55
|
it("creates a RSAA to fetch authorized scope tree", () =>
|
|
28
|
-
expect(getScopes, "when called", "to exhaustively satisfy", {
|
|
56
|
+
expect(getScopes, "when called with", ["aModule"], "to exhaustively satisfy", {
|
|
29
57
|
[RSAA]: {
|
|
30
|
-
types: [
|
|
58
|
+
types: [
|
|
59
|
+
{ type: "GET_SCOPES_REQUEST", meta: { module: "aModule" } },
|
|
60
|
+
{ type: "GET_SCOPES_SUCCESS", meta: { module: "aModule" } },
|
|
61
|
+
{ type: "GET_SCOPES_FAILURE", meta: { module: "aModule" } },
|
|
62
|
+
],
|
|
31
63
|
endpoint: "URL: my/scope/aModule/tree {}",
|
|
32
64
|
method: "GET",
|
|
33
65
|
body: undefined,
|
|
34
66
|
credentials: "include",
|
|
35
|
-
bailout:
|
|
67
|
+
bailout: false,
|
|
68
|
+
headers: {
|
|
69
|
+
Accept: "application/json; charset=utf-8",
|
|
70
|
+
"Content-Type": "application/json",
|
|
71
|
+
},
|
|
72
|
+
options: { redirect: "follow" },
|
|
73
|
+
},
|
|
74
|
+
}));
|
|
75
|
+
|
|
76
|
+
it("creates a RSAA to fetch authorized scope tree for system module", () =>
|
|
77
|
+
expect(getScopes, "when called with", ["System"], "to exhaustively satisfy", {
|
|
78
|
+
[RSAA]: {
|
|
79
|
+
types: [
|
|
80
|
+
{ type: "GET_SCOPES_REQUEST", meta: { module: "System" } },
|
|
81
|
+
{ type: "GET_SCOPES_SUCCESS", meta: { module: "System" } },
|
|
82
|
+
{ type: "GET_SCOPES_FAILURE", meta: { module: "System" } },
|
|
83
|
+
],
|
|
84
|
+
endpoint: "URL: my/scope/Order/tree {}",
|
|
85
|
+
method: "GET",
|
|
86
|
+
body: undefined,
|
|
87
|
+
credentials: "include",
|
|
88
|
+
bailout: false,
|
|
36
89
|
headers: {
|
|
37
90
|
Accept: "application/json; charset=utf-8",
|
|
38
91
|
"Content-Type": "application/json",
|
|
@@ -42,14 +95,31 @@ describe("getScopes", () => {
|
|
|
42
95
|
}));
|
|
43
96
|
|
|
44
97
|
it("creates a RSAA to fetch default user scope", () =>
|
|
45
|
-
expect(getDefaultScope, "when called", "to exhaustively satisfy", {
|
|
98
|
+
expect(getDefaultScope, "when called with", ["aModule"], "to exhaustively satisfy", {
|
|
46
99
|
[RSAA]: {
|
|
47
100
|
types: [GET_MY_SCOPE_REQUEST, GET_MY_SCOPE_SUCCESS, GET_MY_SCOPE_FAILURE],
|
|
48
101
|
endpoint: 'URL: my/scope/aModule ""',
|
|
49
102
|
method: "GET",
|
|
50
103
|
body: undefined,
|
|
51
104
|
credentials: "include",
|
|
52
|
-
bailout:
|
|
105
|
+
bailout: false,
|
|
106
|
+
headers: {
|
|
107
|
+
Accept: "application/json; charset=utf-8",
|
|
108
|
+
"Content-Type": "application/json",
|
|
109
|
+
},
|
|
110
|
+
options: { redirect: "follow" },
|
|
111
|
+
},
|
|
112
|
+
}));
|
|
113
|
+
|
|
114
|
+
it("creates a RSAA to fetch default user scope for System module", () =>
|
|
115
|
+
expect(getDefaultScope, "when called with", ["System"], "to exhaustively satisfy", {
|
|
116
|
+
[RSAA]: {
|
|
117
|
+
types: [GET_MY_SCOPE_REQUEST, GET_MY_SCOPE_SUCCESS, GET_MY_SCOPE_FAILURE],
|
|
118
|
+
endpoint: 'URL: my/scope/Order ""',
|
|
119
|
+
method: "GET",
|
|
120
|
+
body: undefined,
|
|
121
|
+
credentials: "include",
|
|
122
|
+
bailout: false,
|
|
53
123
|
headers: {
|
|
54
124
|
Accept: "application/json; charset=utf-8",
|
|
55
125
|
"Content-Type": "application/json",
|
|
@@ -59,11 +129,11 @@ describe("getScopes", () => {
|
|
|
59
129
|
}));
|
|
60
130
|
|
|
61
131
|
it("throws an error if no class found on DOM element", () => {
|
|
62
|
-
global.
|
|
132
|
+
global.OVERTURE_APPLICATION = "";
|
|
63
133
|
expect(
|
|
64
|
-
() => expect(
|
|
134
|
+
() => expect(validateOvertureApplication, "when called with", []),
|
|
65
135
|
"to throw",
|
|
66
|
-
'"
|
|
136
|
+
'"overtureApplication.name" is missing in the configuration.',
|
|
67
137
|
);
|
|
68
138
|
});
|
|
69
139
|
});
|
|
@@ -8,7 +8,7 @@ import Text from "../Text";
|
|
|
8
8
|
import withClickOutside from "../../hocs/withClickOutside";
|
|
9
9
|
import useViewState from "../../hooks/useViewState";
|
|
10
10
|
import bgImage from "../../content/aboutBackground.png";
|
|
11
|
-
import logoImage from "../../content/
|
|
11
|
+
import logoImage from "../../content/orckestra-logo-white.png";
|
|
12
12
|
import close from "../../content/close.png";
|
|
13
13
|
import { getVersionSelector } from "../../selectors/versionInfo";
|
|
14
14
|
import { currentLocaleOrDefault } from "../../selectors/locale";
|
|
@@ -101,7 +101,7 @@ export const About = ({ currentApplication }) => {
|
|
|
101
101
|
<CloseButton onClick={closeAboutBox}>
|
|
102
102
|
<img src={close} alt="X" />
|
|
103
103
|
</CloseButton>
|
|
104
|
-
<img src={logoImage} alt="Orckestra" />
|
|
104
|
+
<img src={logoImage} width="250" alt="Orckestra" />
|
|
105
105
|
<AboutParagraph>
|
|
106
106
|
<Text
|
|
107
107
|
message={{
|
|
@@ -202,6 +202,15 @@ describe("AppFrame", () => {
|
|
|
202
202
|
bar: true,
|
|
203
203
|
},
|
|
204
204
|
},
|
|
205
|
+
modules: {
|
|
206
|
+
tree: "modulesTree",
|
|
207
|
+
visibleModules: ["a", "module123", "test1", "test2", "test3"],
|
|
208
|
+
lastScopeAndModuleSelection: {
|
|
209
|
+
scope: "Norway",
|
|
210
|
+
moduleName: "Profiles",
|
|
211
|
+
routingPerformed: false,
|
|
212
|
+
},
|
|
213
|
+
},
|
|
205
214
|
settings: { defaultScope: "myScope", defaultApp: "12" },
|
|
206
215
|
versionInfo: { version: "4.2", defaultHelpUrl: "help_url", moduleHelpUrls: [] },
|
|
207
216
|
view: { scopeSelector: { filter: "1" }, __prefsDialog: { show: false } },
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React, { useRef } from "react";
|
|
2
|
-
import { useSelector } from "react-redux";
|
|
3
2
|
import styled, { css } from "styled-components";
|
|
4
3
|
import transition from "styled-transition-group";
|
|
5
4
|
import { Link } from "react-router-dom";
|
|
@@ -124,13 +123,11 @@ const MenuItem = ({
|
|
|
124
123
|
alert,
|
|
125
124
|
pageScopeSelector,
|
|
126
125
|
closingTabHandler,
|
|
127
|
-
hide,
|
|
126
|
+
hide, // This props is not used in the component, but we need to destructure it so props can be used in ItemWrapper
|
|
127
|
+
isHidden = false,
|
|
128
128
|
href,
|
|
129
129
|
...props
|
|
130
130
|
}) => {
|
|
131
|
-
let hideSelector = state => (typeof hide === "function" ? hide(state) : hide ?? false);
|
|
132
|
-
const isHidden = useSelector(hideSelector);
|
|
133
|
-
|
|
134
131
|
let ItemWrapper = Block;
|
|
135
132
|
if (props.menuToggle) {
|
|
136
133
|
ItemWrapper = BlockWithA;
|
|
@@ -139,6 +136,7 @@ const MenuItem = ({
|
|
|
139
136
|
if (alert && alert.message) {
|
|
140
137
|
alertMessage.current = alert.message;
|
|
141
138
|
}
|
|
139
|
+
|
|
142
140
|
return (
|
|
143
141
|
!isHidden && (
|
|
144
142
|
<ItemWrapper to={href} {...props}>
|