@zengenti/contensis-react-base 4.0.0-beta.2 → 4.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +7 -0
- package/README.md +18 -478
- package/cjs/{App-b56aca04.js → App-BNcmM8rN.js} +215 -234
- package/cjs/App-BNcmM8rN.js.map +1 -0
- package/cjs/{ChangePassword.container-ae35785e.js → ChangePassword.container-642SYfpS.js} +209 -286
- package/cjs/ChangePassword.container-642SYfpS.js.map +1 -0
- package/cjs/CookieHelper.class-BoY5TrIi.js +562 -0
- package/cjs/CookieHelper.class-BoY5TrIi.js.map +1 -0
- package/cjs/{RouteLoader-c06dccd5.js → RouteLoader-DvyYYyIE.js} +55 -68
- package/cjs/RouteLoader-DvyYYyIE.js.map +1 -0
- package/cjs/{ContensisDeliveryApi-4fcf049d.js → SSRContext-D66GKlH7.js} +165 -119
- package/cjs/SSRContext-D66GKlH7.js.map +1 -0
- package/cjs/{ToJs-a8d8f3f0.js → ToJs-C9jwV7YB.js} +26 -80
- package/cjs/ToJs-C9jwV7YB.js.map +1 -0
- package/cjs/{_commonjsHelpers-b3309d7b.js → _commonjsHelpers-BJu3ubxk.js} +1 -1
- package/cjs/_commonjsHelpers-BJu3ubxk.js.map +1 -0
- package/cjs/client.js +67 -65
- package/cjs/client.js.map +1 -1
- package/cjs/contensis-react-base.js +386 -3293
- package/cjs/contensis-react-base.js.map +1 -1
- package/cjs/{fromJSLeaveImmer-e74c673c.js → fromJSLeaveImmer-Blvlk4t2.js} +3 -7
- package/{esm/fromJSLeaveImmer-0114ffcf.js.map → cjs/fromJSLeaveImmer-Blvlk4t2.js.map} +1 -1
- package/cjs/redux.js +18 -19
- package/cjs/redux.js.map +1 -1
- package/cjs/routing.js +13 -6
- package/cjs/routing.js.map +1 -1
- package/cjs/sagas-CbZhaRNd.js +6010 -0
- package/cjs/sagas-CbZhaRNd.js.map +1 -0
- package/cjs/search.js +105 -305
- package/cjs/search.js.map +1 -1
- package/cjs/selectors-wCs5fHD4.js +460 -0
- package/cjs/selectors-wCs5fHD4.js.map +1 -0
- package/cjs/{version-34d91f68.js → store-CADDS7cV.js} +44 -111
- package/cjs/store-CADDS7cV.js.map +1 -0
- package/cjs/{urls-6fcaf4c6.js → urls-DVIwGZmd.js} +1 -1
- package/{esm/urls-eac9a747.js.map → cjs/urls-DVIwGZmd.js.map} +1 -1
- package/cjs/user.js +12 -20
- package/cjs/user.js.map +1 -1
- package/cjs/util.js +108 -115
- package/cjs/util.js.map +1 -1
- package/cjs/{version-a410c88e.js → version-ASZx0NDG.js} +19 -22
- package/{esm/version-9f29becb.js.map → cjs/version-ASZx0NDG.js.map} +1 -1
- package/cjs/version-CM-bJ62L.js +20 -0
- package/cjs/version-CM-bJ62L.js.map +1 -0
- package/esm/{App-83107d7e.js → App-CfIZbvU9.js} +176 -195
- package/esm/App-CfIZbvU9.js.map +1 -0
- package/esm/{ChangePassword.container-76fd5e9b.js → ChangePassword.container-Q7bElOVz.js} +191 -250
- package/esm/ChangePassword.container-Q7bElOVz.js.map +1 -0
- package/esm/CookieHelper.class-DzleKOOc.js +555 -0
- package/esm/CookieHelper.class-DzleKOOc.js.map +1 -0
- package/esm/{RouteLoader-29fd689a.js → RouteLoader-qJA3UqTM.js} +40 -53
- package/esm/RouteLoader-qJA3UqTM.js.map +1 -0
- package/esm/{ContensisDeliveryApi-fe57a037.js → SSRContext-C743Oeli.js} +159 -120
- package/esm/SSRContext-C743Oeli.js.map +1 -0
- package/esm/{ToJs-df57f31d.js → ToJs-CpPNdcXS.js} +24 -77
- package/esm/ToJs-CpPNdcXS.js.map +1 -0
- package/esm/{_commonjsHelpers-1789f0cf.js → _commonjsHelpers-BFTU3MAI.js} +1 -1
- package/esm/_commonjsHelpers-BFTU3MAI.js.map +1 -0
- package/esm/client.js +55 -53
- package/esm/client.js.map +1 -1
- package/esm/contensis-react-base.js +317 -3222
- package/esm/contensis-react-base.js.map +1 -1
- package/esm/{fromJSLeaveImmer-0114ffcf.js → fromJSLeaveImmer-C_YACmOf.js} +2 -6
- package/{cjs/fromJSLeaveImmer-e74c673c.js.map → esm/fromJSLeaveImmer-C_YACmOf.js.map} +1 -1
- package/esm/redux.js +9 -8
- package/esm/redux.js.map +1 -1
- package/esm/routing.js +13 -4
- package/esm/routing.js.map +1 -1
- package/esm/sagas-xJU-zOpn.js +5916 -0
- package/esm/sagas-xJU-zOpn.js.map +1 -0
- package/esm/search.js +113 -311
- package/esm/search.js.map +1 -1
- package/esm/selectors-CBdCY0u3.js +396 -0
- package/esm/selectors-CBdCY0u3.js.map +1 -0
- package/esm/{version-3d9911e2.js → store-uQZKjfA8.js} +36 -81
- package/esm/store-uQZKjfA8.js.map +1 -0
- package/esm/{urls-eac9a747.js → urls-DfCisos-.js} +1 -1
- package/{cjs/urls-6fcaf4c6.js.map → esm/urls-DfCisos-.js.map} +1 -1
- package/esm/user.js +7 -13
- package/esm/user.js.map +1 -1
- package/esm/util.js +66 -74
- package/esm/util.js.map +1 -1
- package/esm/{version-9f29becb.js → version-B9nPx4IF.js} +6 -9
- package/{cjs/version-a410c88e.js.map → esm/version-B9nPx4IF.js.map} +1 -1
- package/esm/version-D773TD9j.js +15 -0
- package/esm/version-D773TD9j.js.map +1 -0
- package/models/app/App.d.ts +1 -1
- package/models/app/pages/VersionInfo/components/VersionInfo.d.ts +1 -1
- package/models/app/pages/VersionInfo/components/VersionInfo.styled.d.ts +2 -1
- package/models/client/client.d.ts +1 -1
- package/models/index.d.ts +1 -2
- package/models/models/AppRouteProps.d.ts +11 -0
- package/models/models/ContentTypeMapping.d.ts +89 -0
- package/models/models/EntryMapper.d.ts +3 -0
- package/models/models/GetRouteActionArgs.d.ts +15 -0
- package/models/models/MatchedRoute.d.ts +4 -0
- package/models/models/ReduxInjector.d.ts +5 -0
- package/models/models/RequireLogin.d.ts +6 -0
- package/models/models/RouteComponent.d.ts +4 -0
- package/models/models/RouteComponentProps.d.ts +9 -0
- package/models/models/RouteLoaderProps.d.ts +9 -0
- package/models/models/RouteNode.d.ts +5 -0
- package/models/models/SSRContext.d.ts +11 -0
- package/models/models/StaticRoute.d.ts +60 -0
- package/models/models/WithEvents.d.ts +58 -0
- package/models/models/config/AppConfig.d.ts +12 -0
- package/models/{config.d.ts → models/config/ServerConfig.d.ts} +3 -12
- package/models/models/config/StateType.d.ts +1 -0
- package/models/models/config/index.d.ts +3 -0
- package/models/models/index.d.ts +16 -0
- package/models/redux/actions/index.d.ts +2 -2
- package/models/redux/sagas/navigation.d.ts +1 -3
- package/models/redux/selectors/index.d.ts +2 -2
- package/models/redux/store/injectors.d.ts +16 -4
- package/models/redux/store/store.d.ts +10 -4
- package/models/redux/types/index.d.ts +2 -2
- package/models/redux/types/navigation.d.ts +3 -3
- package/models/redux/types/version.d.ts +2 -2
- package/models/routing/components/Redirect.d.ts +1 -1
- package/models/routing/components/RouteLoader.d.ts +1 -1
- package/models/routing/components/StaticRouteLoader.d.ts +1 -1
- package/models/routing/components/Status.d.ts +1 -1
- package/models/routing/redux/actions.d.ts +3 -4
- package/models/routing/redux/selectors.d.ts +2 -2
- package/models/routing/redux/types.d.ts +11 -11
- package/models/routing/routes.d.ts +1 -1
- package/models/routing/util/find-contenttype-mapping.d.ts +1 -1
- package/models/routing/util/queries.d.ts +2 -2
- package/models/search/models/Queries.d.ts +4 -2
- package/models/search/models/Search.d.ts +8 -1
- package/models/search/models/SearchActions.d.ts +3 -2
- package/models/search/models/SearchState.d.ts +5 -1
- package/models/search/redux/reducers.d.ts +2 -257
- package/models/search/redux/schema.d.ts +1 -1
- package/models/search/redux/selectors.d.ts +5 -5
- package/models/search/search/ContensisDeliveryApi.d.ts +2 -2
- package/models/search/search/ToJs.d.ts +1 -1
- package/models/search/search/expressions.d.ts +3 -3
- package/models/search/search/util.d.ts +17 -2
- package/models/search/transformations/searchresult-to-state.mapper.d.ts +1 -2
- package/models/server/features/caching/cacheDuration.schema.d.ts +1 -0
- package/models/server/features/linkdepth-api/search.d.ts +1 -1
- package/models/server/features/static-assets/index.d.ts +1 -1
- package/models/server/internalServer.d.ts +1 -1
- package/models/server/util/bundles.d.ts +1 -1
- package/models/server/util/headers.d.ts +1 -1
- package/models/server/webApp.d.ts +1 -1
- package/models/user/components/Login.d.ts +1 -1
- package/models/user/components/LoginForm.d.ts +6 -6
- package/models/user/components/LogoutForm.d.ts +4 -4
- package/models/user/components.styled/Login.styled.d.ts +1 -1
- package/models/user/components.styled/LoginForm.styled.d.ts +1 -1
- package/models/user/hocs/withLogin.d.ts +4 -4
- package/models/user/hooks/useLogin.d.ts +4 -4
- package/models/user/redux/actions.d.ts +7 -6
- package/models/user/redux/sagas/index.d.ts +1 -1
- package/models/user/redux/sagas/login.d.ts +5 -17
- package/models/user/redux/selectors.d.ts +1 -2
- package/models/user/redux/types.d.ts +21 -21
- package/models/user/state.d.ts +12 -0
- package/models/user/transformations/mapClientCredentials.d.ts +3 -1
- package/models/user/util/ContensisManagementApi.d.ts +10 -9
- package/models/user/util/CookieConstants.d.ts +1 -0
- package/models/user/util/CookieHelper.class.d.ts +8 -4
- package/models/user/util/LoginHelper.class.d.ts +25 -37
- package/models/user/util/OidcUserManager.d.ts +1 -1
- package/models/user/util/matchGroups.d.ts +1 -1
- package/models/util/CachedDeliveryApi.d.ts +11 -10
- package/models/util/ContensisDeliveryApi.d.ts +11 -7
- package/models/util/SSRContext.d.ts +29 -0
- package/models/util/index.d.ts +1 -0
- package/models/util/json-mapper.d.ts +4 -5
- package/package.json +71 -92
- package/cjs/App-b56aca04.js.map +0 -1
- package/cjs/ChangePassword.container-ae35785e.js.map +0 -1
- package/cjs/ContensisDeliveryApi-4fcf049d.js.map +0 -1
- package/cjs/CookieConstants-000427db.js +0 -10
- package/cjs/CookieConstants-000427db.js.map +0 -1
- package/cjs/RouteLoader-c06dccd5.js.map +0 -1
- package/cjs/ToJs-a8d8f3f0.js.map +0 -1
- package/cjs/_commonjsHelpers-b3309d7b.js.map +0 -1
- package/cjs/forms.js +0 -5998
- package/cjs/forms.js.map +0 -1
- package/cjs/reducers-73a03ef4.js +0 -257
- package/cjs/reducers-73a03ef4.js.map +0 -1
- package/cjs/sagas-570f23ba.js +0 -2175
- package/cjs/sagas-570f23ba.js.map +0 -1
- package/cjs/selectors-14caa813.js +0 -228
- package/cjs/selectors-14caa813.js.map +0 -1
- package/cjs/version-34d91f68.js.map +0 -1
- package/esm/App-83107d7e.js.map +0 -1
- package/esm/ChangePassword.container-76fd5e9b.js.map +0 -1
- package/esm/ContensisDeliveryApi-fe57a037.js.map +0 -1
- package/esm/CookieConstants-3d3b6531.js +0 -6
- package/esm/CookieConstants-3d3b6531.js.map +0 -1
- package/esm/RouteLoader-29fd689a.js.map +0 -1
- package/esm/ToJs-df57f31d.js.map +0 -1
- package/esm/_commonjsHelpers-1789f0cf.js.map +0 -1
- package/esm/forms.js +0 -5984
- package/esm/forms.js.map +0 -1
- package/esm/reducers-aa8cef1e.js +0 -234
- package/esm/reducers-aa8cef1e.js.map +0 -1
- package/esm/sagas-07e82e18.js +0 -2083
- package/esm/sagas-07e82e18.js.map +0 -1
- package/esm/selectors-691caf02.js +0 -186
- package/esm/selectors-691caf02.js.map +0 -1
- package/esm/version-3d9911e2.js.map +0 -1
- package/models/forms/index.d.ts +0 -1
- /package/models/{redux/appstate.d.ts → models/AppState.d.ts} +0 -0
package/esm/util.js
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
export { s as setCachingHeaders, u as urls } from './urls-
|
|
2
|
-
export { c as cachedSearch, a as cachedSearchWithCookies, d as deliveryApi, b as deliveryApiWithCookies, g as getClientConfig } from './
|
|
1
|
+
export { s as setCachingHeaders, u as urls } from './urls-DfCisos-.js';
|
|
2
|
+
export { S as SSRContextProvider, c as cachedSearch, a as cachedSearchWithCookies, d as deliveryApi, b as deliveryApiWithCookies, g as getClientConfig, u as useDeliveryApi, e as useSSRContext } from './SSRContext-C743Oeli.js';
|
|
3
|
+
import { g as getDefaultExportFromCjs } from './_commonjsHelpers-BFTU3MAI.js';
|
|
3
4
|
import mapJson, { jpath } from 'jsonpath-mapper';
|
|
4
5
|
export { jpath, default as mapJson } from 'jsonpath-mapper';
|
|
5
6
|
import React from 'react';
|
|
6
7
|
import { connect } from 'react-redux';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
8
|
+
import { f as selectCurrentProject } from './selectors-CBdCY0u3.js';
|
|
9
|
+
import { s as selectVersionStatus, a as selectCommitRef, b as selectBuildNumber } from './version-D773TD9j.js';
|
|
9
10
|
import styled from 'styled-components';
|
|
11
|
+
import 'react-cookie';
|
|
10
12
|
import 'contensis-delivery-api';
|
|
11
13
|
import 'query-string';
|
|
12
|
-
import './
|
|
14
|
+
import './store-uQZKjfA8.js';
|
|
13
15
|
import 'redux';
|
|
14
16
|
import 'redux-thunk';
|
|
15
17
|
import 'redux-saga';
|
|
16
18
|
import 'redux-injectors';
|
|
17
19
|
import 'immer';
|
|
18
|
-
import './
|
|
20
|
+
import './CookieHelper.class-DzleKOOc.js';
|
|
19
21
|
|
|
20
22
|
/**
|
|
21
23
|
*
|
|
@@ -26,11 +28,11 @@ import './reducers-aa8cef1e.js';
|
|
|
26
28
|
const useMapper = (json, template) => {
|
|
27
29
|
return template ? mapJson(json || {}, template) : json;
|
|
28
30
|
};
|
|
29
|
-
|
|
30
31
|
const chooseMapperByFieldValue = (entry, mappers, field = 'sys.contentTypeId') => {
|
|
31
32
|
const fieldValue = jpath(field, entry || {});
|
|
32
33
|
return mappers[fieldValue] || mappers.default || {};
|
|
33
34
|
};
|
|
35
|
+
|
|
34
36
|
/**
|
|
35
37
|
* useEntriesMapper hook to take a list of entries from Delivery API along
|
|
36
38
|
* with mappers for each contentTypeId and return an array of mapped objects
|
|
@@ -43,17 +45,16 @@ const chooseMapperByFieldValue = (entry, mappers, field = 'sys.contentTypeId') =
|
|
|
43
45
|
* a default mapper template, returns an empty object if no mapper template
|
|
44
46
|
* couild be applied.
|
|
45
47
|
*/
|
|
46
|
-
|
|
47
|
-
|
|
48
48
|
const useEntriesMapper = (entry, mappers, field = 'sys.contentTypeId') => {
|
|
49
49
|
const mapper = chooseMapperByFieldValue(entry, mappers, field);
|
|
50
50
|
return useMapper(entry, mapper);
|
|
51
51
|
};
|
|
52
|
+
|
|
52
53
|
/**
|
|
53
54
|
* Deprecated: due to misleading name, use the hook useEntriesMapper instead
|
|
54
55
|
*/
|
|
55
|
-
|
|
56
56
|
const useEntryMapper = useEntriesMapper;
|
|
57
|
+
|
|
57
58
|
/**
|
|
58
59
|
* mapEntries mapping function to take a list of entries from Delivery API along
|
|
59
60
|
* with mappers for each contentTypeId and return an array of mapped objects
|
|
@@ -66,11 +67,11 @@ const useEntryMapper = useEntriesMapper;
|
|
|
66
67
|
* a default mapper template, returns an empty object if no mapper template
|
|
67
68
|
* couild be applied.
|
|
68
69
|
*/
|
|
69
|
-
|
|
70
70
|
const mapEntries = (entries, mappers, field = 'sys.contentTypeId') => entries.map(entry => {
|
|
71
71
|
const mapper = chooseMapperByFieldValue(entry, mappers, field);
|
|
72
72
|
return mapper ? mapJson(entry || {}, mapper) : entry;
|
|
73
73
|
});
|
|
74
|
+
|
|
74
75
|
/**
|
|
75
76
|
* mapComposer mapping function to take a composer field from Delivery API along
|
|
76
77
|
* with mappers for each Composer Item "type" and return an array of mapped components
|
|
@@ -80,37 +81,42 @@ const mapEntries = (entries, mappers, field = 'sys.contentTypeId') => entries.ma
|
|
|
80
81
|
* or null. Injects a "_type" property into each transformed object in the array to indicate
|
|
81
82
|
* where the mapping originated and for what component the mapped object is representing
|
|
82
83
|
*/
|
|
83
|
-
|
|
84
84
|
const mapComposer = (composer, mappers) => Array.isArray(composer) ? composer.map((composerItem, index) => {
|
|
85
85
|
const itemValue = composerItem.value;
|
|
86
86
|
const mapper = mappers[composerItem.type] || mappers.default;
|
|
87
|
-
|
|
88
87
|
if (mapper) {
|
|
89
88
|
// Add some fields into the composer item mapper and return object
|
|
90
89
|
const addedFields = {
|
|
91
90
|
_type: composerItem.type,
|
|
92
91
|
_index: index
|
|
93
|
-
};
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
// Add fields and $root item into the composer item source object
|
|
94
95
|
// for use inside each item mapping, for arrays we inject the added fields
|
|
95
96
|
// into the first array item. This is useful if we require any of
|
|
96
97
|
// composerItem.type, composerItem index/position and composer $root
|
|
97
98
|
// in scope to influence any composer item's mapping logic
|
|
98
|
-
|
|
99
|
-
|
|
99
|
+
const sourceObject = itemValue && Array.isArray(itemValue) ? itemValue.map((iv, idx) => idx !== 0 ? iv : typeof iv === 'object' ? {
|
|
100
|
+
...addedFields,
|
|
100
101
|
...iv,
|
|
101
102
|
$root: composer
|
|
102
|
-
} : iv) : typeof itemValue === 'object' ? {
|
|
103
|
+
} : iv) : typeof itemValue === 'object' ? {
|
|
104
|
+
...addedFields,
|
|
103
105
|
...itemValue,
|
|
104
106
|
$root: composer
|
|
105
|
-
} : itemValue || {};
|
|
107
|
+
} : itemValue || {};
|
|
106
108
|
|
|
107
|
-
|
|
109
|
+
// Apply the composer item mapping
|
|
110
|
+
const mappedFields = mapJson(sourceObject, mapper);
|
|
108
111
|
|
|
109
|
-
|
|
112
|
+
// Add the extra fields in with the return object
|
|
113
|
+
return mappedFields && typeof mappedFields === 'object' ? {
|
|
114
|
+
...mappedFields,
|
|
110
115
|
...addedFields
|
|
111
116
|
} : mappedFields;
|
|
112
117
|
} else return {};
|
|
113
118
|
}) : composer || [];
|
|
119
|
+
|
|
114
120
|
/**
|
|
115
121
|
* useComposerMapper hook to take a composer field from Delivery API along
|
|
116
122
|
* with mappers for each Composer Item "type" and return an array of mapped components
|
|
@@ -120,8 +126,8 @@ const mapComposer = (composer, mappers) => Array.isArray(composer) ? composer.ma
|
|
|
120
126
|
* or null. Injects a "_type" property into each transformed object in the array to indicate
|
|
121
127
|
* where the mapping originated and for what component the mapped object is representing
|
|
122
128
|
*/
|
|
123
|
-
|
|
124
129
|
const useComposerMapper = (composer = [], mappers) => mapComposer(composer, mappers);
|
|
130
|
+
|
|
125
131
|
/**
|
|
126
132
|
* entryMapper will return a function to satisfy an entryMapper when defining app route
|
|
127
133
|
* this is essentially a shorthand function to prevent boilerplate repetition inside your routes file
|
|
@@ -129,44 +135,48 @@ const useComposerMapper = (composer = [], mappers) => mapComposer(composer, mapp
|
|
|
129
135
|
* @param mapping the jsonpath-mapper mapping template to apply when the route is resolved
|
|
130
136
|
* @returns {mappedEntry}
|
|
131
137
|
*/
|
|
132
|
-
|
|
133
|
-
|
|
138
|
+
const entryMapper = mapping => (node, state) => mapJson({
|
|
139
|
+
...node,
|
|
134
140
|
...(node.entry || {}),
|
|
135
141
|
state
|
|
136
142
|
}, mapping);
|
|
137
143
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
Object.entries(obj).forEach(([key, value]) => {
|
|
141
|
-
switch (typeof value) {
|
|
142
|
-
case 'string':
|
|
143
|
-
returnObj[key] = JSON.stringify(value);
|
|
144
|
-
break;
|
|
145
|
-
|
|
146
|
-
case 'object':
|
|
147
|
-
returnObj[key] = stringifyStrings(value);
|
|
148
|
-
break;
|
|
144
|
+
var stringifyStrings_1;
|
|
145
|
+
var hasRequiredStringifyStrings;
|
|
149
146
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
147
|
+
function requireStringifyStrings () {
|
|
148
|
+
if (hasRequiredStringifyStrings) return stringifyStrings_1;
|
|
149
|
+
hasRequiredStringifyStrings = 1;
|
|
150
|
+
const stringifyStrings = obj => {
|
|
151
|
+
const returnObj = Array.isArray(obj) ? [] : {};
|
|
152
|
+
Object.entries(obj).forEach(([key, value]) => {
|
|
153
|
+
switch (typeof value) {
|
|
154
|
+
case 'string':
|
|
155
|
+
returnObj[key] = JSON.stringify(value);
|
|
156
|
+
break;
|
|
157
|
+
case 'object':
|
|
158
|
+
returnObj[key] = stringifyStrings(value);
|
|
159
|
+
break;
|
|
160
|
+
default:
|
|
161
|
+
returnObj[key] = value;
|
|
162
|
+
break;
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
return returnObj;
|
|
166
|
+
};
|
|
167
|
+
stringifyStrings_1 = stringifyStrings;
|
|
168
|
+
return stringifyStrings_1;
|
|
169
|
+
}
|
|
157
170
|
|
|
158
|
-
var
|
|
171
|
+
var stringifyStringsExports = requireStringifyStrings();
|
|
172
|
+
var stringifyStrings = /*@__PURE__*/getDefaultExportFromCjs(stringifyStringsExports);
|
|
159
173
|
|
|
160
174
|
const context = typeof window != 'undefined' ? window : global;
|
|
161
175
|
const isDev = process.env.NODE_ENV === 'development';
|
|
162
|
-
|
|
163
|
-
const pj = () => isDev ? PACKAGE_JSON
|
|
164
|
-
/* global PACKAGE_JSON */
|
|
165
|
-
: context.PACKAGE_JSON || {
|
|
176
|
+
const pj = () => isDev ? PACKAGE_JSON /* global PACKAGE_JSON */ : context.PACKAGE_JSON || {
|
|
166
177
|
name: 'packagejson not found',
|
|
167
178
|
repository: ''
|
|
168
179
|
};
|
|
169
|
-
|
|
170
180
|
const versionInfoProps = {
|
|
171
181
|
packageDetail: () => {
|
|
172
182
|
const pkg = pj();
|
|
@@ -188,40 +198,23 @@ const versionInfoProps = {
|
|
|
188
198
|
}
|
|
189
199
|
},
|
|
190
200
|
zenPackageVersions: () => [...(Object.entries(pj().devDependencies || {}).filter(([pkg]) => pkg.includes('zengenti') || pkg.includes('contensis')) || []), ...(Object.entries(pj().dependencies || {}).filter(([pkg]) => pkg.includes('zengenti') || pkg.includes('contensis')) || [])],
|
|
191
|
-
deliveryApi: () => JSON.parse(JSON.stringify(DELIVERY_API_CONFIG
|
|
192
|
-
/* global
|
|
193
|
-
)
|
|
194
|
-
devEnv: () => typeof DEV_ENV !== 'undefined'
|
|
195
|
-
/* global DEV_ENV */
|
|
196
|
-
? DEV_ENV : null,
|
|
197
|
-
disableSsrRedux: () => isDev ? DISABLE_SSR_REDUX
|
|
198
|
-
/* global DISABLE_SSR_REDUX*/
|
|
199
|
-
: context.DISABLE_SSR_REDUX || false,
|
|
201
|
+
deliveryApi: () => JSON.parse(JSON.stringify(DELIVERY_API_CONFIG /* global DELIVERY_API_CONFIG */)),
|
|
202
|
+
devEnv: () => typeof DEV_ENV !== 'undefined' /* global DEV_ENV */ ? DEV_ENV : null,
|
|
203
|
+
disableSsrRedux: () => isDev ? DISABLE_SSR_REDUX /* global DISABLE_SSR_REDUX*/ : context.DISABLE_SSR_REDUX || false,
|
|
200
204
|
nodeEnv: () => process.env.NODE_ENV || 'production',
|
|
201
205
|
packagejson: () => pj() || {},
|
|
202
|
-
projects: () => isDev ? PROJECTS
|
|
203
|
-
/* global
|
|
204
|
-
: context.
|
|
205
|
-
proxyDeliveryApi: () => isDev ? PROXY_DELIVERY_API
|
|
206
|
-
/* global PROXY_DELIVERY_API */
|
|
207
|
-
: context.PROXY_DELIVERY_API || false,
|
|
208
|
-
publicUri: () => isDev ? PUBLIC_URI
|
|
209
|
-
/* global PUBLIC_URI */
|
|
210
|
-
: context.PUBLIC_URI || null,
|
|
206
|
+
projects: () => isDev ? PROJECTS /* global PROJECTS */ : context.PROJECTS,
|
|
207
|
+
proxyDeliveryApi: () => isDev ? PROXY_DELIVERY_API /* global PROXY_DELIVERY_API */ : context.PROXY_DELIVERY_API || false,
|
|
208
|
+
publicUri: () => isDev ? PUBLIC_URI /* global PUBLIC_URI */ : context.PUBLIC_URI || null,
|
|
211
209
|
project: state => selectCurrentProject(state),
|
|
212
|
-
reverseProxyPaths: () => isDev ? REVERSE_PROXY_PATHS
|
|
213
|
-
/* global
|
|
214
|
-
: context.REVERSE_PROXY_PATHS || {},
|
|
215
|
-
servers: () => isDev ? SERVERS
|
|
216
|
-
/* global SERVERS */
|
|
217
|
-
: context.SERVERS,
|
|
210
|
+
reverseProxyPaths: () => isDev ? REVERSE_PROXY_PATHS /* global REVERSE_PROXY_PATHS */ : context.REVERSE_PROXY_PATHS || {},
|
|
211
|
+
servers: () => isDev ? SERVERS /* global SERVERS */ : context.SERVERS,
|
|
218
212
|
version: {
|
|
219
213
|
buildNumber: state => selectBuildNumber(state),
|
|
220
214
|
commitRef: state => selectCommitRef(state),
|
|
221
215
|
contensisVersionStatus: state => selectVersionStatus(state)
|
|
222
216
|
}
|
|
223
217
|
};
|
|
224
|
-
|
|
225
218
|
const mapStateToVersionInfo = state => {
|
|
226
219
|
const mappedProps = mapJson(state, versionInfoProps);
|
|
227
220
|
return mappedProps;
|
|
@@ -309,8 +302,7 @@ const VersionInfo = ({
|
|
|
309
302
|
key: key
|
|
310
303
|
}, "[ ", k, ": ", v, " ]"))))));
|
|
311
304
|
};
|
|
312
|
-
|
|
313
305
|
var VersionInfo$1 = connect(mapStateToVersionInfo)(VersionInfo);
|
|
314
306
|
|
|
315
|
-
export { VersionInfo$1 as VersionInfo, entryMapper, mapComposer, mapEntries,
|
|
307
|
+
export { VersionInfo$1 as VersionInfo, entryMapper, mapComposer, mapEntries, stringifyStrings, useComposerMapper, useEntriesMapper, useEntryMapper, useMapper };
|
|
316
308
|
//# sourceMappingURL=util.js.map
|
package/esm/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sources":["../src/util/json-mapper.ts","../src/util/stringifyStrings.js","../src/app/pages/VersionInfo/transformations/state-to-versioninfoprops.mapper.ts","../src/app/pages/VersionInfo/components/VersionInfo.styled.tsx","../src/app/pages/VersionInfo/components/VersionInfo.tsx"],"sourcesContent":["import { Entry } from 'contensis-delivery-api/lib/models';\nimport mapJson, { jpath } from 'jsonpath-mapper';\nimport MappingTemplate, {\n PureJsFunction,\n} from 'jsonpath-mapper/dist/models/Template';\nimport { AppState } from '~/redux/appstate';\nimport { EntryMapper, RouteNode } from '~/routing/routes';\n\nexport { default as mapJson, jpath } from 'jsonpath-mapper';\n\ntype Mappers<S> = { [contentTypeId: string]: MappingTemplate<S> };\n\n/**\n *\n * @param {object} json The source object we wish to transform\n * @param {object} template The mapping template we wish to apply to the source\n * object to generate the intended target object\n */\nexport const useMapper = <T, S>(json: S, template: MappingTemplate<S>) => {\n return template ? (mapJson((json || {}) as S, template) as T) : json;\n};\n\nconst chooseMapperByFieldValue = <S, T extends Mappers<S>>(\n entry: S,\n mappers: T,\n field = 'sys.contentTypeId'\n) => {\n const fieldValue = jpath(field, entry || {}) as string;\n return (mappers[fieldValue] || mappers.default || {}) as T[keyof T];\n};\n\n/**\n * useEntriesMapper hook to take a list of entries from Delivery API along\n * with mappers for each contentTypeId and return an array of mapped objects\n * @param {any} entry The source entry we wish to transform\n * @param {object} mappers Object with keys containing mapper templates,\n * the key name matching sys.contentTypeId\n * @param {string} field Only include if we need to match content based on\n * a field other than sys.contentTypeId in the source data\n * @returns {object} Object transformed using a matched content type or\n * a default mapper template, returns an empty object if no mapper template\n * couild be applied.\n */\nexport const useEntriesMapper = <S, T extends Mappers<S>>(\n entry: S,\n mappers: T,\n field = 'sys.contentTypeId'\n) => {\n const mapper = chooseMapperByFieldValue(entry, mappers, field);\n return useMapper(entry, mapper);\n};\n\n/**\n * Deprecated: due to misleading name, use the hook useEntriesMapper instead\n */\nexport const useEntryMapper = useEntriesMapper;\n\n/**\n * mapEntries mapping function to take a list of entries from Delivery API along\n * with mappers for each contentTypeId and return an array of mapped objects\n * @param {any} entry The source entry we wish to transform\n * @param {object} mappers Object with keys containing mapper templates,\n * the key name matching sys.contentTypeId\n * @param {string} field Only include if we need to match content based on\n * a field other than sys.contentTypeId in the source data\n * @returns {object} Object transformed using a matched content type or\n * a default mapper template, returns an empty object if no mapper template\n * couild be applied.\n */\nexport const mapEntries = <\n S,\n Mappers extends { [contentTypeId: string]: MappingTemplate<S> }\n>(\n entries: S[],\n mappers: Mappers,\n field = 'sys.contentTypeId'\n) =>\n entries.map(entry => {\n const mapper = chooseMapperByFieldValue(entry, mappers, field);\n return mapper ? mapJson((entry || {}) as S, mapper) : entry;\n });\n\n/**\n * mapComposer mapping function to take a composer field from Delivery API along\n * with mappers for each Composer Item \"type\" and return an array of mapped components\n * @param {array} composer Composer field array of Composer Items\n * @param {object} mappers A keyed object with each key matching the Composer Item \"type\"\n * @returns {array} Array of mapped objects transformed using a matched Composer Item \"type\" mapping\n * or null. Injects a \"_type\" property into each transformed object in the array to indicate\n * where the mapping originated and for what component the mapped object is representing\n */\nexport const mapComposer = <\n S extends { type: string; value: any },\n T extends Mappers<S>\n>(\n composer: S[],\n mappers: T\n) =>\n Array.isArray(composer)\n ? composer.map((composerItem, index) => {\n const itemValue = composerItem.value;\n const mapper = mappers[composerItem.type] || mappers.default;\n if (mapper) {\n // Add some fields into the composer item mapper and return object\n const addedFields = {\n _type: composerItem.type,\n _index: index,\n };\n\n // Add fields and $root item into the composer item source object\n // for use inside each item mapping, for arrays we inject the added fields\n // into the first array item. This is useful if we require any of\n // composerItem.type, composerItem index/position and composer $root\n // in scope to influence any composer item's mapping logic\n const sourceObject =\n itemValue && Array.isArray(itemValue)\n ? itemValue.map((iv, idx) =>\n idx !== 0\n ? iv\n : typeof iv === 'object'\n ? { ...addedFields, ...iv, $root: composer }\n : iv\n )\n : typeof itemValue === 'object'\n ? { ...addedFields, ...itemValue, $root: composer }\n : itemValue || {};\n\n // Apply the composer item mapping\n const mappedFields = mapJson(sourceObject, mapper) as any;\n\n // Add the extra fields in with the return object\n return mappedFields && typeof mappedFields === 'object'\n ? { ...mappedFields, ...addedFields }\n : mappedFields;\n } else return {};\n })\n : composer || [];\n\n/**\n * useComposerMapper hook to take a composer field from Delivery API along\n * with mappers for each Composer Item \"type\" and return an array of mapped components\n * @param {array} composer Composer field array of Composer Items\n * @param {object} mappers A keyed object with each key matching the Composer Item \"type\"\n * @returns {array} Array of mapped objects transformed using a matched Composer Item \"type\" mapping\n * or null. Injects a \"_type\" property into each transformed object in the array to indicate\n * where the mapping originated and for what component the mapped object is representing\n */\nexport const useComposerMapper = <\n S extends { type: string; value: any },\n T extends Mappers<S>\n>(\n composer: S[] = [],\n mappers: T\n) => mapComposer(composer, mappers);\n\n/**\n * entryMapper will return a function to satisfy an entryMapper when defining app route\n * this is essentially a shorthand function to prevent boilerplate repetition inside your routes file\n * you do not need to use this function should you wish to map your entry via raw JS functions\n * @param mapping the jsonpath-mapper mapping template to apply when the route is resolved\n * @returns {mappedEntry}\n */\nexport const entryMapper =\n (\n mapping:\n | MappingTemplate<RouteNode & Entry & { state?: AppState }>\n | PureJsFunction<RouteNode & Entry & { state?: AppState }>\n ): EntryMapper =>\n (node, state) =>\n mapJson({ ...node, ...(node.entry || ({} as Entry)), state }, mapping);\n\nexport default mapJson;\n","const stringifyStrings = obj => {\n const returnObj = Array.isArray(obj) ? [] : {};\n Object.entries(obj).forEach(([key, value]) => {\n switch (typeof value) {\n case 'string':\n returnObj[key] = JSON.stringify(value);\n break;\n case 'object':\n returnObj[key] = stringifyStrings(value);\n break;\n default:\n returnObj[key] = value;\n break;\n }\n });\n return returnObj;\n};\n\nmodule.exports = stringifyStrings;\n","import { default as mapJson } from '~/util/json-mapper';\nimport { selectCurrentProject } from '~/routing/redux/selectors';\nimport {\n selectBuildNumber,\n selectCommitRef,\n selectVersionStatus,\n} from '~/redux/selectors/version';\nimport { IVersionInfoProps } from '../components/VersionInfo';\n\nconst context = (\n typeof window != 'undefined' ? window : global\n) as typeof globalThis & {\n DISABLE_SSR_REDUX: any;\n PACKAGE_JSON: any;\n PROJECTS: any;\n PROXY_DELIVERY_API: any;\n PUBLIC_URI: any;\n REVERSE_PROXY_PATHS: string[];\n SERVERS: any;\n};\n\nconst isDev = process.env.NODE_ENV === 'development';\n\nconst pj = () =>\n isDev\n ? PACKAGE_JSON /* global PACKAGE_JSON */\n : context.PACKAGE_JSON || { name: 'packagejson not found', repository: '' };\n\nconst versionInfoProps = {\n packageDetail: () => {\n const pkg = pj();\n return { name: pkg.name, version: pkg.version, repository: pkg.repository };\n },\n uris: {\n gitRepo: () => pj().repository,\n commit: state => {\n const commitRef = selectCommitRef(state);\n return `${pj().repository}/commit/${commitRef ? commitRef : ''}`;\n },\n pipeline: state => {\n const buildNumber = selectBuildNumber(state);\n return `${pj().repository}/${\n pj().repository.includes('github.com') ? 'actions/runs' : 'pipelines'\n }/${buildNumber ? buildNumber : ''}`;\n },\n },\n zenPackageVersions: () => [\n ...(Object.entries(pj().devDependencies || {}).filter(\n ([pkg]) => pkg.includes('zengenti') || pkg.includes('contensis')\n ) || []),\n ...(Object.entries(pj().dependencies || {}).filter(\n ([pkg]) => pkg.includes('zengenti') || pkg.includes('contensis')\n ) || []),\n ],\n deliveryApi: () =>\n JSON.parse(\n JSON.stringify(DELIVERY_API_CONFIG /* global DELIVERY_API_CONFIG */)\n ),\n devEnv: () =>\n typeof DEV_ENV !== 'undefined' /* global DEV_ENV */ ? DEV_ENV : null,\n disableSsrRedux: () =>\n isDev\n ? DISABLE_SSR_REDUX /* global DISABLE_SSR_REDUX*/\n : context.DISABLE_SSR_REDUX || false,\n nodeEnv: () => process.env.NODE_ENV || 'production',\n packagejson: () => pj() || {},\n projects: () => (isDev ? PROJECTS /* global PROJECTS */ : context.PROJECTS),\n proxyDeliveryApi: () =>\n isDev\n ? PROXY_DELIVERY_API /* global PROXY_DELIVERY_API */\n : context.PROXY_DELIVERY_API || false,\n publicUri: () =>\n isDev ? PUBLIC_URI /* global PUBLIC_URI */ : context.PUBLIC_URI || null,\n project: state => selectCurrentProject(state),\n reverseProxyPaths: () =>\n isDev\n ? REVERSE_PROXY_PATHS /* global REVERSE_PROXY_PATHS */\n : context.REVERSE_PROXY_PATHS || {},\n servers: () => (isDev ? SERVERS /* global SERVERS */ : context.SERVERS),\n version: {\n buildNumber: state => selectBuildNumber(state),\n commitRef: state => selectCommitRef(state),\n contensisVersionStatus: state => selectVersionStatus(state),\n },\n};\n\nconst mapStateToVersionInfo = state => {\n const mappedProps = mapJson(state, versionInfoProps);\n return mappedProps as IVersionInfoProps;\n};\n\nexport default mapStateToVersionInfo;\n","import styled from 'styled-components';\n\nexport const VersionInfoStyledTable = styled.table`\n font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;\n font-size: 1.6rem;\n line-height: 1.5rem;\n border-bottom: 4px solid #8892bf;\n border-collapse: separate;\n margin: 0 auto;\n width: 80%;\n th {\n text-align: left;\n background-color: #c4c9df;\n border-bottom: #8892bf 2px solid;\n border-bottom-color: #8892bf;\n border-top: 20px solid #fff;\n }\n td {\n border-bottom: 1px solid #eee;\n }\n td,\n th {\n padding: 0.5rem 0.75rem;\n vertical-align: top;\n }\n .left {\n width: 25%;\n }\n tr th {\n border-right: hidden;\n border-spacing: 0 15px;\n }\n .green {\n background-color: #9c9;\n border-bottom: 1px solid #696;\n }\n .red {\n background-color: #c99;\n border-bottom: 1px solid #966;\n }\n .small {\n font-size: 100%;\n line-height: 2.4rem;\n }\n`;\n","import React from 'react';\nimport { connect } from 'react-redux';\n\nimport mapStateToVersionInfo from '../transformations/state-to-versioninfoprops.mapper';\n\nimport { VersionInfoStyledTable } from './VersionInfo.styled';\n\nexport interface IVersionInfoProps {\n deliveryApi: {\n rootUrl: string;\n accessToken: string;\n projectId: string;\n livePublishingRootUrl: string;\n };\n devEnv: { [k: string]: string };\n disableSsrRedux: boolean;\n nodeEnv: string;\n packageDetail: any;\n project: string;\n projects;\n proxyDeliveryApi;\n publicUri: string;\n reverseProxyPaths: string[];\n servers: {\n alias: string;\n api: string;\n cms: string;\n web: string;\n iis: string;\n previewIis: string;\n previewWeb: string;\n };\n uris: {\n gitRepo: string;\n commit: string;\n pipeline: string;\n };\n version: {\n buildNumber: string;\n commitRef: string;\n contensisVersionStatus: string;\n };\n zenPackageVersions: string[];\n}\n\nconst VersionInfo = ({\n deliveryApi,\n devEnv,\n disableSsrRedux,\n nodeEnv,\n packageDetail,\n project,\n projects,\n proxyDeliveryApi,\n publicUri,\n reverseProxyPaths,\n servers,\n uris,\n version,\n zenPackageVersions,\n}: IVersionInfoProps) => {\n return (\n <VersionInfoStyledTable>\n <thead>\n <tr>\n <td colSpan={2}>\n <h1>\n <a href=\"/\">Version Information</a>\n </h1>\n </td>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th colSpan={2}>Package detail</th>\n </tr>\n <tr>\n <td className=\"left\">Name</td>\n <td>{packageDetail.name}</td>\n </tr>\n <tr>\n <td className=\"left\">Version</td>\n <td>{packageDetail.version}</td>\n </tr>\n <tr>\n <th colSpan={2}>Version info (state)</th>\n </tr>\n <tr>\n <td>Git repo url: </td>\n <td>\n <a\n href={packageDetail.repository}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {packageDetail.repository}\n </a>\n </td>\n </tr>\n <tr>\n <td>Pipeline: </td>\n <td>\n <a href={uris.pipeline} target=\"_blank\" rel=\"noopener noreferrer\">\n {version.buildNumber}\n </a>\n </td>\n </tr>\n <tr>\n <td>Commit: </td>\n <td>\n <a href={uris.commit} target=\"_blank\" rel=\"noopener noreferrer\">\n {version.commitRef}\n </a>\n </td>\n </tr>\n {/* <tr>\n <td>Last release ref: </td>\n <td></td>\n </tr>\n <tr>\n <td>Number of commits since last release: </td>\n <td></td>\n </tr> */}\n <tr>\n <td>Project</td>\n <td className={project === 'unknown' ? 'red' : ''}>{project}</td>\n </tr>\n <tr>\n <td>Contensis version status: </td>\n <td\n className={\n version.contensisVersionStatus === 'published' ? 'green' : 'red'\n }\n >\n {version.contensisVersionStatus}\n </td>\n </tr>\n <tr>\n <th colSpan={2}>Build configuration</th>\n </tr>\n <tr>\n <td>Environment</td>\n <td>{servers.alias}</td>\n </tr>\n <tr>\n <td>Public uri</td>\n <td>{publicUri}</td>\n </tr>\n <tr>\n <td>Zengenti packages</td>\n <td>\n {zenPackageVersions.map(([pkg, ver], idx) => (\n <div key={idx}>\n {pkg}: {ver}\n </div>\n ))}\n </td>\n </tr>\n <tr>\n <td>Servers</td>\n <td className=\"small\">\n <div>web: {servers.web}</div>\n <div>preview: {servers.previewWeb}</div>\n <div>api: {servers.api}</div>\n <div>cms: {servers.cms}</div>\n <div>iis: {servers.iis}</div>\n <div>iis preview: {servers.previewIis}</div>\n </td>\n </tr>\n <tr>\n <td>Reverse proxy paths</td>\n <td>\n {Object.entries(reverseProxyPaths).map(([, path], key) => (\n <span key={key}>[ {path} ] </span>\n ))}\n </td>\n </tr>\n <tr>\n <td>Projects</td>\n <td>\n {Object.entries(\n projects as {\n id: string;\n publicUri: string;\n }[]\n ).map(([, project], key) => (\n <div key={key}>\n [ {project.id}: {project.publicUri} ]\n </div>\n ))}\n </td>\n </tr>\n <tr>\n <td>Delivery API</td>\n <td className=\"small\">\n <ul style={{ margin: 0, padding: 0 }}>\n {Object.entries(deliveryApi).map(\n ([key, value]: [string, any], idx) => {\n if (typeof value === 'object') return null;\n return (\n <li key={idx} style={{ listStyleType: 'none' }}>\n {key}: <span>{value}</span>\n </li>\n );\n }\n )}\n </ul>\n </td>\n </tr>\n <tr>\n <td>Proxy Delivery API requests</td>\n <td className={proxyDeliveryApi ? 'green' : 'red'}>\n {proxyDeliveryApi.toString()}\n </td>\n </tr>\n <tr>\n <td>Disable SSR inline-redux</td>\n <td>{disableSsrRedux.toString()}</td>\n </tr>\n <tr>\n <td>NODE_ENV</td>\n <td className={nodeEnv === 'production' ? 'green' : 'red'}>\n {nodeEnv.toString()}\n </td>\n </tr>\n {devEnv && (\n <tr>\n <td>process.env</td>\n <td>\n {Object.entries(devEnv).map(([k, v], key) => (\n <div key={key}>\n [ {k}: {v} ]\n </div>\n ))}\n </td>\n </tr>\n )}\n </tbody>\n </VersionInfoStyledTable>\n );\n};\n\nexport default connect(mapStateToVersionInfo)(VersionInfo);\n"],"names":["useMapper","json","template","mapJson","chooseMapperByFieldValue","entry","mappers","field","fieldValue","jpath","default","useEntriesMapper","mapper","useEntryMapper","mapEntries","entries","map","mapComposer","composer","Array","isArray","composerItem","index","itemValue","value","type","addedFields","_type","_index","sourceObject","iv","idx","$root","mappedFields","useComposerMapper","entryMapper","mapping","node","state","stringifyStrings","obj","returnObj","Object","forEach","key","JSON","stringify","module","context","window","global","isDev","process","env","NODE_ENV","pj","PACKAGE_JSON","name","repository","versionInfoProps","packageDetail","pkg","version","uris","gitRepo","commit","commitRef","selectCommitRef","pipeline","buildNumber","selectBuildNumber","includes","zenPackageVersions","devDependencies","filter","dependencies","deliveryApi","parse","DELIVERY_API_CONFIG","devEnv","DEV_ENV","disableSsrRedux","DISABLE_SSR_REDUX","nodeEnv","packagejson","projects","PROJECTS","proxyDeliveryApi","PROXY_DELIVERY_API","publicUri","PUBLIC_URI","project","selectCurrentProject","reverseProxyPaths","REVERSE_PROXY_PATHS","servers","SERVERS","contensisVersionStatus","selectVersionStatus","mapStateToVersionInfo","mappedProps","VersionInfoStyledTable","styled","table","VersionInfo","alias","ver","web","previewWeb","api","cms","iis","previewIis","path","id","margin","padding","listStyleType","toString","k","v","connect"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"util.js","sources":["../src/util/json-mapper.ts","../src/util/stringifyStrings.js","../src/app/pages/VersionInfo/transformations/state-to-versioninfoprops.mapper.ts","../src/app/pages/VersionInfo/components/VersionInfo.styled.tsx","../src/app/pages/VersionInfo/components/VersionInfo.tsx"],"sourcesContent":["import { Entry } from 'contensis-delivery-api/lib/models';\nimport mapJson, { jpath } from 'jsonpath-mapper';\nimport {\n MappingTemplate,\n PureJsFunction,\n} from 'jsonpath-mapper';\nimport { AppState, EntryMapper, RouteNode } from '~/models';\n\nexport { default as mapJson, jpath } from 'jsonpath-mapper';\n\ntype Mappers<S> = { [contentTypeId: string]: MappingTemplate<S> };\n\n/**\n *\n * @param {object} json The source object we wish to transform\n * @param {object} template The mapping template we wish to apply to the source\n * object to generate the intended target object\n */\nexport const useMapper = <T, S>(json: S, template: MappingTemplate<S>) => {\n return template ? (mapJson((json || {}) as S, template) as T) : json;\n};\n\nconst chooseMapperByFieldValue = <S, T extends Mappers<S>>(\n entry: S,\n mappers: T,\n field = 'sys.contentTypeId'\n) => {\n const fieldValue = jpath(field, entry || {}) as string;\n return (mappers[fieldValue] || mappers.default || {}) as T[keyof T];\n};\n\n/**\n * useEntriesMapper hook to take a list of entries from Delivery API along\n * with mappers for each contentTypeId and return an array of mapped objects\n * @param {any} entry The source entry we wish to transform\n * @param {object} mappers Object with keys containing mapper templates,\n * the key name matching sys.contentTypeId\n * @param {string} field Only include if we need to match content based on\n * a field other than sys.contentTypeId in the source data\n * @returns {object} Object transformed using a matched content type or\n * a default mapper template, returns an empty object if no mapper template\n * couild be applied.\n */\nexport const useEntriesMapper = <S, T extends Mappers<S>>(\n entry: S,\n mappers: T,\n field = 'sys.contentTypeId'\n) => {\n const mapper = chooseMapperByFieldValue(entry, mappers, field);\n return useMapper(entry, mapper);\n};\n\n/**\n * Deprecated: due to misleading name, use the hook useEntriesMapper instead\n */\nexport const useEntryMapper = useEntriesMapper;\n\n/**\n * mapEntries mapping function to take a list of entries from Delivery API along\n * with mappers for each contentTypeId and return an array of mapped objects\n * @param {any} entry The source entry we wish to transform\n * @param {object} mappers Object with keys containing mapper templates,\n * the key name matching sys.contentTypeId\n * @param {string} field Only include if we need to match content based on\n * a field other than sys.contentTypeId in the source data\n * @returns {object} Object transformed using a matched content type or\n * a default mapper template, returns an empty object if no mapper template\n * couild be applied.\n */\nexport const mapEntries = <\n S,\n Mappers extends { [contentTypeId: string]: MappingTemplate<S> }\n>(\n entries: S[],\n mappers: Mappers,\n field = 'sys.contentTypeId'\n) =>\n entries.map(entry => {\n const mapper = chooseMapperByFieldValue(entry, mappers, field);\n return mapper ? mapJson((entry || {}) as S, mapper) : entry;\n });\n\n/**\n * mapComposer mapping function to take a composer field from Delivery API along\n * with mappers for each Composer Item \"type\" and return an array of mapped components\n * @param {array} composer Composer field array of Composer Items\n * @param {object} mappers A keyed object with each key matching the Composer Item \"type\"\n * @returns {array} Array of mapped objects transformed using a matched Composer Item \"type\" mapping\n * or null. Injects a \"_type\" property into each transformed object in the array to indicate\n * where the mapping originated and for what component the mapped object is representing\n */\nexport const mapComposer = <\n S extends { type: string; value: any },\n T extends Mappers<S>\n>(\n composer: S[],\n mappers: T\n) =>\n Array.isArray(composer)\n ? composer.map((composerItem, index) => {\n const itemValue = composerItem.value;\n const mapper = mappers[composerItem.type] || mappers.default;\n if (mapper) {\n // Add some fields into the composer item mapper and return object\n const addedFields = {\n _type: composerItem.type,\n _index: index,\n };\n\n // Add fields and $root item into the composer item source object\n // for use inside each item mapping, for arrays we inject the added fields\n // into the first array item. This is useful if we require any of\n // composerItem.type, composerItem index/position and composer $root\n // in scope to influence any composer item's mapping logic\n const sourceObject =\n itemValue && Array.isArray(itemValue)\n ? itemValue.map((iv, idx) =>\n idx !== 0\n ? iv\n : typeof iv === 'object'\n ? { ...addedFields, ...iv, $root: composer }\n : iv\n )\n : typeof itemValue === 'object'\n ? { ...addedFields, ...itemValue, $root: composer }\n : itemValue || {};\n\n // Apply the composer item mapping\n const mappedFields = mapJson(sourceObject, mapper) as any;\n\n // Add the extra fields in with the return object\n return mappedFields && typeof mappedFields === 'object'\n ? { ...mappedFields, ...addedFields }\n : mappedFields;\n } else return {};\n })\n : composer || [];\n\n/**\n * useComposerMapper hook to take a composer field from Delivery API along\n * with mappers for each Composer Item \"type\" and return an array of mapped components\n * @param {array} composer Composer field array of Composer Items\n * @param {object} mappers A keyed object with each key matching the Composer Item \"type\"\n * @returns {array} Array of mapped objects transformed using a matched Composer Item \"type\" mapping\n * or null. Injects a \"_type\" property into each transformed object in the array to indicate\n * where the mapping originated and for what component the mapped object is representing\n */\nexport const useComposerMapper = <\n S extends { type: string; value: any },\n T extends Mappers<S>\n>(\n composer: S[] = [],\n mappers: T\n) => mapComposer(composer, mappers);\n\n/**\n * entryMapper will return a function to satisfy an entryMapper when defining app route\n * this is essentially a shorthand function to prevent boilerplate repetition inside your routes file\n * you do not need to use this function should you wish to map your entry via raw JS functions\n * @param mapping the jsonpath-mapper mapping template to apply when the route is resolved\n * @returns {mappedEntry}\n */\nexport const entryMapper =\n (\n mapping:\n | MappingTemplate<RouteNode & Entry & { state?: AppState }>\n | PureJsFunction<RouteNode & Entry & { state?: AppState }>\n ): EntryMapper =>\n (node, state) =>\n mapJson({ ...node, ...(node.entry || ({} as Entry)), state }, mapping);\n\nexport default mapJson;\n","const stringifyStrings = obj => {\n const returnObj = Array.isArray(obj) ? [] : {};\n Object.entries(obj).forEach(([key, value]) => {\n switch (typeof value) {\n case 'string':\n returnObj[key] = JSON.stringify(value);\n break;\n case 'object':\n returnObj[key] = stringifyStrings(value);\n break;\n default:\n returnObj[key] = value;\n break;\n }\n });\n return returnObj;\n};\n\nmodule.exports = stringifyStrings;\n","import { default as mapJson } from '~/util/json-mapper';\nimport { selectCurrentProject } from '~/routing/redux/selectors';\nimport {\n selectBuildNumber,\n selectCommitRef,\n selectVersionStatus,\n} from '~/redux/selectors/version';\nimport { IVersionInfoProps } from '../components/VersionInfo';\n\nconst context = (\n typeof window != 'undefined' ? window : global\n) as typeof globalThis & {\n DISABLE_SSR_REDUX: any;\n PACKAGE_JSON: any;\n PROJECTS: any;\n PROXY_DELIVERY_API: any;\n PUBLIC_URI: any;\n REVERSE_PROXY_PATHS: string[];\n SERVERS: any;\n};\n\nconst isDev = process.env.NODE_ENV === 'development';\n\nconst pj = () =>\n isDev\n ? PACKAGE_JSON /* global PACKAGE_JSON */\n : context.PACKAGE_JSON || { name: 'packagejson not found', repository: '' };\n\nconst versionInfoProps = {\n packageDetail: () => {\n const pkg = pj();\n return { name: pkg.name, version: pkg.version, repository: pkg.repository };\n },\n uris: {\n gitRepo: () => pj().repository,\n commit: state => {\n const commitRef = selectCommitRef(state);\n return `${pj().repository}/commit/${commitRef ? commitRef : ''}`;\n },\n pipeline: state => {\n const buildNumber = selectBuildNumber(state);\n return `${pj().repository}/${\n pj().repository.includes('github.com') ? 'actions/runs' : 'pipelines'\n }/${buildNumber ? buildNumber : ''}`;\n },\n },\n zenPackageVersions: () => [\n ...(Object.entries(pj().devDependencies || {}).filter(\n ([pkg]) => pkg.includes('zengenti') || pkg.includes('contensis')\n ) || []),\n ...(Object.entries(pj().dependencies || {}).filter(\n ([pkg]) => pkg.includes('zengenti') || pkg.includes('contensis')\n ) || []),\n ],\n deliveryApi: () =>\n JSON.parse(\n JSON.stringify(DELIVERY_API_CONFIG /* global DELIVERY_API_CONFIG */)\n ),\n devEnv: () =>\n typeof DEV_ENV !== 'undefined' /* global DEV_ENV */ ? DEV_ENV : null,\n disableSsrRedux: () =>\n isDev\n ? DISABLE_SSR_REDUX /* global DISABLE_SSR_REDUX*/\n : context.DISABLE_SSR_REDUX || false,\n nodeEnv: () => process.env.NODE_ENV || 'production',\n packagejson: () => pj() || {},\n projects: () => (isDev ? PROJECTS /* global PROJECTS */ : context.PROJECTS),\n proxyDeliveryApi: () =>\n isDev\n ? PROXY_DELIVERY_API /* global PROXY_DELIVERY_API */\n : context.PROXY_DELIVERY_API || false,\n publicUri: () =>\n isDev ? PUBLIC_URI /* global PUBLIC_URI */ : context.PUBLIC_URI || null,\n project: state => selectCurrentProject(state),\n reverseProxyPaths: () =>\n isDev\n ? REVERSE_PROXY_PATHS /* global REVERSE_PROXY_PATHS */\n : context.REVERSE_PROXY_PATHS || {},\n servers: () => (isDev ? SERVERS /* global SERVERS */ : context.SERVERS),\n version: {\n buildNumber: state => selectBuildNumber(state),\n commitRef: state => selectCommitRef(state),\n contensisVersionStatus: state => selectVersionStatus(state),\n },\n};\n\nconst mapStateToVersionInfo = state => {\n const mappedProps = mapJson(state, versionInfoProps);\n return mappedProps as IVersionInfoProps;\n};\n\nexport default mapStateToVersionInfo;\n","import styled from 'styled-components';\n\nexport const VersionInfoStyledTable = styled.table`\n font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;\n font-size: 1.6rem;\n line-height: 1.5rem;\n border-bottom: 4px solid #8892bf;\n border-collapse: separate;\n margin: 0 auto;\n width: 80%;\n th {\n text-align: left;\n background-color: #c4c9df;\n border-bottom: #8892bf 2px solid;\n border-bottom-color: #8892bf;\n border-top: 20px solid #fff;\n }\n td {\n border-bottom: 1px solid #eee;\n }\n td,\n th {\n padding: 0.5rem 0.75rem;\n vertical-align: top;\n }\n .left {\n width: 25%;\n }\n tr th {\n border-right: hidden;\n border-spacing: 0 15px;\n }\n .green {\n background-color: #9c9;\n border-bottom: 1px solid #696;\n }\n .red {\n background-color: #c99;\n border-bottom: 1px solid #966;\n }\n .small {\n font-size: 100%;\n line-height: 2.4rem;\n }\n`;\n","import React from 'react';\nimport { connect } from 'react-redux';\n\nimport mapStateToVersionInfo from '../transformations/state-to-versioninfoprops.mapper';\n\nimport { VersionInfoStyledTable } from './VersionInfo.styled';\n\nexport interface IVersionInfoProps {\n deliveryApi: {\n rootUrl: string;\n accessToken: string;\n projectId: string;\n livePublishingRootUrl: string;\n };\n devEnv: { [k: string]: string };\n disableSsrRedux: boolean;\n nodeEnv: string;\n packageDetail: any;\n project: string;\n projects;\n proxyDeliveryApi;\n publicUri: string;\n reverseProxyPaths: string[];\n servers: {\n alias: string;\n api: string;\n cms: string;\n web: string;\n iis: string;\n previewIis: string;\n previewWeb: string;\n };\n uris: {\n gitRepo: string;\n commit: string;\n pipeline: string;\n };\n version: {\n buildNumber: string;\n commitRef: string;\n contensisVersionStatus: string;\n };\n zenPackageVersions: string[];\n}\n\nconst VersionInfo = ({\n deliveryApi,\n devEnv,\n disableSsrRedux,\n nodeEnv,\n packageDetail,\n project,\n projects,\n proxyDeliveryApi,\n publicUri,\n reverseProxyPaths,\n servers,\n uris,\n version,\n zenPackageVersions,\n}: IVersionInfoProps) => {\n return (\n <VersionInfoStyledTable>\n <thead>\n <tr>\n <td colSpan={2}>\n <h1>\n <a href=\"/\">Version Information</a>\n </h1>\n </td>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th colSpan={2}>Package detail</th>\n </tr>\n <tr>\n <td className=\"left\">Name</td>\n <td>{packageDetail.name}</td>\n </tr>\n <tr>\n <td className=\"left\">Version</td>\n <td>{packageDetail.version}</td>\n </tr>\n <tr>\n <th colSpan={2}>Version info (state)</th>\n </tr>\n <tr>\n <td>Git repo url: </td>\n <td>\n <a\n href={packageDetail.repository}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {packageDetail.repository}\n </a>\n </td>\n </tr>\n <tr>\n <td>Pipeline: </td>\n <td>\n <a href={uris.pipeline} target=\"_blank\" rel=\"noopener noreferrer\">\n {version.buildNumber}\n </a>\n </td>\n </tr>\n <tr>\n <td>Commit: </td>\n <td>\n <a href={uris.commit} target=\"_blank\" rel=\"noopener noreferrer\">\n {version.commitRef}\n </a>\n </td>\n </tr>\n {/* <tr>\n <td>Last release ref: </td>\n <td></td>\n </tr>\n <tr>\n <td>Number of commits since last release: </td>\n <td></td>\n </tr> */}\n <tr>\n <td>Project</td>\n <td className={project === 'unknown' ? 'red' : ''}>{project}</td>\n </tr>\n <tr>\n <td>Contensis version status: </td>\n <td\n className={\n version.contensisVersionStatus === 'published' ? 'green' : 'red'\n }\n >\n {version.contensisVersionStatus}\n </td>\n </tr>\n <tr>\n <th colSpan={2}>Build configuration</th>\n </tr>\n <tr>\n <td>Environment</td>\n <td>{servers.alias}</td>\n </tr>\n <tr>\n <td>Public uri</td>\n <td>{publicUri}</td>\n </tr>\n <tr>\n <td>Zengenti packages</td>\n <td>\n {zenPackageVersions.map(([pkg, ver], idx) => (\n <div key={idx}>\n {pkg}: {ver}\n </div>\n ))}\n </td>\n </tr>\n <tr>\n <td>Servers</td>\n <td className=\"small\">\n <div>web: {servers.web}</div>\n <div>preview: {servers.previewWeb}</div>\n <div>api: {servers.api}</div>\n <div>cms: {servers.cms}</div>\n <div>iis: {servers.iis}</div>\n <div>iis preview: {servers.previewIis}</div>\n </td>\n </tr>\n <tr>\n <td>Reverse proxy paths</td>\n <td>\n {Object.entries(reverseProxyPaths).map(([, path], key) => (\n <span key={key}>[ {path} ] </span>\n ))}\n </td>\n </tr>\n <tr>\n <td>Projects</td>\n <td>\n {Object.entries(\n projects as {\n id: string;\n publicUri: string;\n }[]\n ).map(([, project], key) => (\n <div key={key}>\n [ {project.id}: {project.publicUri} ]\n </div>\n ))}\n </td>\n </tr>\n <tr>\n <td>Delivery API</td>\n <td className=\"small\">\n <ul style={{ margin: 0, padding: 0 }}>\n {Object.entries(deliveryApi).map(\n ([key, value]: [string, any], idx) => {\n if (typeof value === 'object') return null;\n return (\n <li key={idx} style={{ listStyleType: 'none' }}>\n {key}: <span>{value}</span>\n </li>\n );\n }\n )}\n </ul>\n </td>\n </tr>\n <tr>\n <td>Proxy Delivery API requests</td>\n <td className={proxyDeliveryApi ? 'green' : 'red'}>\n {proxyDeliveryApi.toString()}\n </td>\n </tr>\n <tr>\n <td>Disable SSR inline-redux</td>\n <td>{disableSsrRedux.toString()}</td>\n </tr>\n <tr>\n <td>NODE_ENV</td>\n <td className={nodeEnv === 'production' ? 'green' : 'red'}>\n {nodeEnv.toString()}\n </td>\n </tr>\n {devEnv && (\n <tr>\n <td>process.env</td>\n <td>\n {Object.entries(devEnv).map(([k, v], key) => (\n <div key={key}>\n [ {k}: {v} ]\n </div>\n ))}\n </td>\n </tr>\n )}\n </tbody>\n </VersionInfoStyledTable>\n );\n};\n\nexport default connect(mapStateToVersionInfo)(VersionInfo);\n"],"names":["useMapper","json","template","mapJson","chooseMapperByFieldValue","entry","mappers","field","fieldValue","jpath","default","useEntriesMapper","mapper","useEntryMapper","mapEntries","entries","map","mapComposer","composer","Array","isArray","composerItem","index","itemValue","value","type","addedFields","_type","_index","sourceObject","iv","idx","$root","mappedFields","useComposerMapper","entryMapper","mapping","node","state","stringifyStrings","obj","returnObj","Object","forEach","key","JSON","stringify","module","context","window","global","isDev","process","env","NODE_ENV","pj","PACKAGE_JSON","name","repository","versionInfoProps","packageDetail","pkg","version","uris","gitRepo","commit","commitRef","selectCommitRef","pipeline","buildNumber","selectBuildNumber","includes","zenPackageVersions","devDependencies","filter","dependencies","deliveryApi","parse","DELIVERY_API_CONFIG","devEnv","DEV_ENV","disableSsrRedux","DISABLE_SSR_REDUX","nodeEnv","packagejson","projects","PROJECTS","proxyDeliveryApi","PROXY_DELIVERY_API","publicUri","PUBLIC_URI","project","selectCurrentProject","reverseProxyPaths","REVERSE_PROXY_PATHS","servers","SERVERS","contensisVersionStatus","selectVersionStatus","mapStateToVersionInfo","mappedProps","VersionInfoStyledTable","styled","table","withConfig","displayName","componentId","VersionInfo","React","createElement","colSpan","href","className","target","rel","alias","ver","web","previewWeb","api","cms","iis","previewIis","path","id","style","margin","padding","listStyleType","toString","k","v","connect"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { g as getImmutableOrJS,
|
|
1
|
+
import { g as getImmutableOrJS, c as action } from './selectors-CBdCY0u3.js';
|
|
2
2
|
import { all } from '@redux-saga/core/effects';
|
|
3
|
-
import { r as reduxStore,
|
|
3
|
+
import { r as reduxStore, S as SET_VERSION, a as SET_VERSION_STATUS } from './store-uQZKjfA8.js';
|
|
4
4
|
|
|
5
5
|
const hasNavigationTree = state => getImmutableOrJS(state, ['navigation', 'isReady']);
|
|
6
6
|
const selectNavigationRoot = state => getImmutableOrJS(state, ['navigation', 'root']);
|
|
@@ -10,9 +10,9 @@ const selectNavigationDepends = () => [];
|
|
|
10
10
|
var navigation = /*#__PURE__*/Object.freeze({
|
|
11
11
|
__proto__: null,
|
|
12
12
|
hasNavigationTree: hasNavigationTree,
|
|
13
|
-
selectNavigationRoot: selectNavigationRoot,
|
|
14
13
|
selectNavigationChildren: selectNavigationChildren,
|
|
15
|
-
selectNavigationDepends: selectNavigationDepends
|
|
14
|
+
selectNavigationDepends: selectNavigationDepends,
|
|
15
|
+
selectNavigationRoot: selectNavigationRoot
|
|
16
16
|
});
|
|
17
17
|
|
|
18
18
|
const convertSagaArray = sagas => {
|
|
@@ -35,7 +35,6 @@ const injectSaga = ({
|
|
|
35
35
|
}, store = reduxStore) => {
|
|
36
36
|
const rootSaga = convertSagaArray(saga);
|
|
37
37
|
let hasSaga = Reflect.has(store.injectedSagas, key);
|
|
38
|
-
|
|
39
38
|
if (process.env.NODE_ENV !== 'production') {
|
|
40
39
|
const oldDescriptor = store.injectedSagas[key]; // enable hot reloading of daemon and once-till-unmount sagas
|
|
41
40
|
|
|
@@ -44,9 +43,7 @@ const injectSaga = ({
|
|
|
44
43
|
hasSaga = false;
|
|
45
44
|
}
|
|
46
45
|
}
|
|
47
|
-
|
|
48
46
|
console.info('injectSaga, key: ', key, 'hasSaga: ', hasSaga);
|
|
49
|
-
|
|
50
47
|
if (!hasSaga) {
|
|
51
48
|
store.injectedSagas[key] = {
|
|
52
49
|
key,
|
|
@@ -86,5 +83,5 @@ var version = /*#__PURE__*/Object.freeze({
|
|
|
86
83
|
setVersionStatus: setVersionStatus
|
|
87
84
|
});
|
|
88
85
|
|
|
89
|
-
export {
|
|
90
|
-
//# sourceMappingURL=version-
|
|
86
|
+
export { injectReducer as a, injectSaga as b, convertSagaArray as c, setVersion as d, hasNavigationTree as h, injectRedux as i, navigation as n, setVersionStatus as s, useInjectRedux as u, version as v };
|
|
87
|
+
//# sourceMappingURL=version-B9nPx4IF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version-
|
|
1
|
+
{"version":3,"file":"version-B9nPx4IF.js","sources":["../src/redux/selectors/navigation.js","../src/redux/store/injectors.js","../src/redux/actions/version.js"],"sourcesContent":["import { getImmutableOrJS as getIn } from '~/redux/util';\n\nexport const hasNavigationTree = state =>\n getIn(state, ['navigation', 'isReady']);\n\nexport const selectNavigationRoot = state =>\n getIn(state, ['navigation', 'root']);\n\nexport const selectNavigationChildren = state =>\n getIn(state, ['navigation', 'root', 'children']);\n\nexport const selectNavigationDepends = () => [];\n","import { all } from 'redux-saga/effects';\nimport { reduxStore as DefaultStore } from './store';\n\nexport const convertSagaArray = sagas => {\n if (Array.isArray(sagas))\n return function* rootSaga() {\n yield all(sagas);\n };\n return sagas;\n};\n\nexport const injectReducer = ({ key, reducer }, store = DefaultStore) => {\n if (\n Reflect.has(store.injectedReducers, key) &&\n store.injectedReducers[key] === reducer\n )\n return;\n store.injectedReducers[key] = reducer;\n\n store.replaceReducer(store.createReducer(store.injectedReducers));\n};\n\nexport const injectSaga = ({ key, saga }, store = DefaultStore) => {\n const rootSaga = convertSagaArray(saga);\n let hasSaga = Reflect.has(store.injectedSagas, key);\n\n if (process.env.NODE_ENV !== 'production') {\n const oldDescriptor = store.injectedSagas[key]; // enable hot reloading of daemon and once-till-unmount sagas\n\n if (hasSaga && oldDescriptor.saga !== rootSaga) {\n oldDescriptor.task.cancel();\n hasSaga = false;\n }\n }\n console.info('injectSaga, key: ', key, 'hasSaga: ', hasSaga);\n\n if (!hasSaga) {\n store.injectedSagas[key] = {\n key,\n saga: rootSaga,\n task: store.runSaga(rootSaga),\n };\n }\n};\n\nexport const injectRedux = ({ key, reducer, saga }, store = DefaultStore) => {\n console.info('injectRedux, key: ', key);\n if (reducer) injectReducer({ key, reducer }, store);\n if (saga) injectSaga({ key, saga }, store);\n};\n\nexport const useInjectRedux = injectRedux;\n","import { action } from '../util';\nimport { SET_VERSION, SET_VERSION_STATUS } from '../types/version';\n\nexport const setVersion = (commitRef, buildNo) =>\n action(SET_VERSION, { commitRef, buildNo });\n\nexport const setVersionStatus = status =>\n action(SET_VERSION_STATUS, { status });\n"],"names":["hasNavigationTree","state","getIn","selectNavigationRoot","selectNavigationChildren","selectNavigationDepends","convertSagaArray","sagas","Array","isArray","rootSaga","all","injectReducer","key","reducer","store","DefaultStore","Reflect","has","injectedReducers","replaceReducer","createReducer","injectSaga","saga","hasSaga","injectedSagas","process","env","NODE_ENV","oldDescriptor","task","cancel","console","info","runSaga","injectRedux","useInjectRedux","setVersion","commitRef","buildNo","action","SET_VERSION","setVersionStatus","status","SET_VERSION_STATUS"],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { g as getImmutableOrJS } from './selectors-CBdCY0u3.js';
|
|
2
|
+
|
|
3
|
+
const selectCommitRef = state => getImmutableOrJS(state, ['version', 'commitRef']);
|
|
4
|
+
const selectBuildNumber = state => getImmutableOrJS(state, ['version', 'buildNo']);
|
|
5
|
+
const selectVersionStatus = state => getImmutableOrJS(state, ['version', 'contensisVersionStatus']);
|
|
6
|
+
|
|
7
|
+
var version = /*#__PURE__*/Object.freeze({
|
|
8
|
+
__proto__: null,
|
|
9
|
+
selectBuildNumber: selectBuildNumber,
|
|
10
|
+
selectCommitRef: selectCommitRef,
|
|
11
|
+
selectVersionStatus: selectVersionStatus
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export { selectCommitRef as a, selectBuildNumber as b, selectVersionStatus as s, version as v };
|
|
15
|
+
//# sourceMappingURL=version-D773TD9j.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-D773TD9j.js","sources":["../src/redux/selectors/version.js"],"sourcesContent":["import { getImmutableOrJS as getIn } from '~/redux/util';\n\nexport const selectCommitRef = state => getIn(state, ['version', 'commitRef']);\n\nexport const selectBuildNumber = state => getIn(state, ['version', 'buildNo']);\n\nexport const selectVersionStatus = state =>\n getIn(state, ['version', 'contensisVersionStatus']);\n"],"names":["selectCommitRef","state","getIn","selectBuildNumber","selectVersionStatus"],"mappings":";;AAEO,MAAMA,eAAe,GAAGC,KAAK,IAAIC,gBAAK,CAACD,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;AAEtE,MAAME,iBAAiB,GAAGF,KAAK,IAAIC,gBAAK,CAACD,KAAK,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;AAEtE,MAAMG,mBAAmB,GAAGH,KAAK,IACtCC,gBAAK,CAACD,KAAK,EAAE,CAAC,SAAS,EAAE,wBAAwB,CAAC;;;;;;;;;;;"}
|
package/models/app/App.d.ts
CHANGED
|
@@ -38,5 +38,5 @@ export interface IVersionInfoProps {
|
|
|
38
38
|
};
|
|
39
39
|
zenPackageVersions: string[];
|
|
40
40
|
}
|
|
41
|
-
declare const _default: import("react-redux").ConnectedComponent<({ deliveryApi, devEnv, disableSsrRedux, nodeEnv, packageDetail, project, projects, proxyDeliveryApi, publicUri, reverseProxyPaths, servers, uris, version, zenPackageVersions, }: IVersionInfoProps) => React.JSX.Element, import("react-redux").Omit<IVersionInfoProps, "version" | "
|
|
41
|
+
declare const _default: import("react-redux").ConnectedComponent<({ deliveryApi, devEnv, disableSsrRedux, nodeEnv, packageDetail, project, projects, proxyDeliveryApi, publicUri, reverseProxyPaths, servers, uris, version, zenPackageVersions, }: IVersionInfoProps) => React.JSX.Element, import("react-redux").Omit<IVersionInfoProps, "version" | "packageDetail" | "uris" | "zenPackageVersions" | "deliveryApi" | "devEnv" | "disableSsrRedux" | "nodeEnv" | "projects" | "proxyDeliveryApi" | "publicUri" | "project" | "reverseProxyPaths" | "servers">>;
|
|
42
42
|
export default _default;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const VersionInfoStyledTable: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>, never>> & string;
|
package/models/index.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
export * from "./
|
|
2
|
-
export * from "./routing/routes";
|
|
1
|
+
export * from "./models";
|
|
3
2
|
export { default as linkDepthApi } from "./server/features/linkdepth-api/api";
|
|
4
3
|
import internalServer from "./server/internalServer";
|
|
5
4
|
export { default as ReactApp } from "./app/App";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ContentTypeMapping } from './ContentTypeMapping';
|
|
2
|
+
import { StaticRoute } from './StaticRoute';
|
|
3
|
+
import { WithEvents } from './WithEvents';
|
|
4
|
+
export type AppRoutes = {
|
|
5
|
+
ContentTypeMappings: ContentTypeMapping[];
|
|
6
|
+
StaticRoutes: StaticRoute[];
|
|
7
|
+
};
|
|
8
|
+
export type AppRootProps = {
|
|
9
|
+
routes: AppRoutes;
|
|
10
|
+
withEvents: WithEvents;
|
|
11
|
+
};
|