@zengenti/contensis-react-base 2.5.1-beta.3 → 3.0.0-beta.2
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/README.md +8 -2
- package/cjs/{App-fbd91490.js → App-581b6653.js} +20 -19
- package/cjs/App-581b6653.js.map +1 -0
- package/cjs/{RouteLoader-f99cd734.js → RouteLoader-282c03ab.js} +5 -5
- package/cjs/RouteLoader-282c03ab.js.map +1 -0
- package/cjs/ToJs-87edc45d.js +230 -0
- package/cjs/ToJs-87edc45d.js.map +1 -0
- package/cjs/{actions-e9f69947.js → actions-12871aca.js} +9 -13
- package/cjs/actions-12871aca.js.map +1 -0
- package/cjs/client.js +48 -65
- package/cjs/client.js.map +1 -1
- package/cjs/contensis-react-base.js +63 -68
- package/cjs/contensis-react-base.js.map +1 -1
- package/cjs/forms.js +1 -1
- package/cjs/fromJSLeaveImmer-9b550c8e.js +40 -0
- package/cjs/fromJSLeaveImmer-9b550c8e.js.map +1 -0
- package/cjs/{login-4f274c6a.js → login-81d7f9ef.js} +11 -10
- package/cjs/login-81d7f9ef.js.map +1 -0
- package/cjs/{reducers-cb531715.js → reducers-fde41d6b.js} +76 -31
- package/cjs/reducers-fde41d6b.js.map +1 -0
- package/cjs/redux.js +11 -8
- package/cjs/redux.js.map +1 -1
- package/cjs/routing.js +5 -5
- package/cjs/search.js +409 -233
- package/cjs/search.js.map +1 -1
- package/cjs/selectors-ed26ed97.js +141 -0
- package/cjs/selectors-ed26ed97.js.map +1 -0
- package/cjs/user.js +14 -14
- package/cjs/user.js.map +1 -1
- package/cjs/util.js +24 -10
- package/cjs/util.js.map +1 -1
- package/cjs/version-0c190929.js +20 -0
- package/cjs/version-0c190929.js.map +1 -0
- package/cjs/{version-3a808c12.js → version-f061e409.js} +154 -76
- package/cjs/version-f061e409.js.map +1 -0
- package/esm/{App-fbef99b3.js → App-122f28a3.js} +20 -19
- package/esm/App-122f28a3.js.map +1 -0
- package/esm/{RouteLoader-281d47e1.js → RouteLoader-c2faac87.js} +5 -5
- package/esm/RouteLoader-c2faac87.js.map +1 -0
- package/esm/ToJs-52fee252.js +199 -0
- package/esm/ToJs-52fee252.js.map +1 -0
- package/esm/{actions-ddd9c623.js → actions-3cc39599.js} +4 -7
- package/esm/actions-3cc39599.js.map +1 -0
- package/esm/client.js +49 -66
- package/esm/client.js.map +1 -1
- package/esm/contensis-react-base.js +62 -65
- package/esm/contensis-react-base.js.map +1 -1
- package/esm/forms.js +1 -1
- package/esm/fromJSLeaveImmer-e44d1a91.js +38 -0
- package/esm/fromJSLeaveImmer-e44d1a91.js.map +1 -0
- package/esm/{login-1f9ad133.js → login-92db44d1.js} +11 -10
- package/esm/login-92db44d1.js.map +1 -0
- package/esm/{reducers-feab84fc.js → reducers-d6c0edb1.js} +77 -31
- package/esm/reducers-d6c0edb1.js.map +1 -0
- package/esm/redux.js +9 -8
- package/esm/redux.js.map +1 -1
- package/esm/routing.js +5 -5
- package/esm/search.js +409 -235
- package/esm/search.js.map +1 -1
- package/esm/selectors-82e71d8e.js +116 -0
- package/esm/selectors-82e71d8e.js.map +1 -0
- package/esm/user.js +10 -10
- package/esm/user.js.map +1 -1
- package/esm/util.js +24 -10
- package/esm/util.js.map +1 -1
- package/esm/version-59c8f9be.js +15 -0
- package/esm/version-59c8f9be.js.map +1 -0
- package/esm/{version-64906b26.js → version-cb9cd09d.js} +133 -76
- package/esm/version-cb9cd09d.js.map +1 -0
- package/models/app/pages/VersionInfo/components/VersionInfo.d.ts +1 -1
- package/models/config.d.ts +2 -0
- package/models/redux/appstate.d.ts +85 -0
- package/models/redux/index.d.ts +1 -0
- package/models/redux/reducers/navigation.d.ts +6 -2
- package/models/redux/reducers/version.d.ts +5 -2
- package/models/redux/store/store.d.ts +4 -1
- package/models/redux/util.d.ts +2 -0
- package/models/routing/components/RouteLoader.d.ts +20 -2
- package/models/routing/redux/reducers.d.ts +21 -3
- package/models/routing/redux/selectors.d.ts +29 -25
- package/models/routing/routes.d.ts +10 -2
- package/models/search/hooks/useMinilist.hook.d.ts +5 -5
- package/models/search/models/Search.d.ts +8 -1
- package/models/search/models/SearchActions.d.ts +3 -4
- package/models/search/models/SearchState.d.ts +25 -9
- package/models/search/models/WithSearch.d.ts +61 -0
- package/models/search/redux/getIn.d.ts +3 -0
- package/models/search/redux/reducers.d.ts +346 -2
- package/models/search/redux/sagas.d.ts +2 -2
- package/models/search/redux/schema.d.ts +56 -8
- package/models/search/redux/selectors.d.ts +75 -66
- package/models/search/redux/util.d.ts +1 -1
- package/models/search/search/util.d.ts +2 -3
- package/models/user/components/Login.d.ts +10 -1
- package/models/user/containers/ChangePassword.container.d.ts +4 -1
- package/models/user/containers/ForgotPassword.container.d.ts +4 -1
- package/models/user/containers/Login.container.d.ts +4 -1
- package/models/user/containers/Registration.container.d.ts +4 -1
- package/models/user/hocs/withLogin.d.ts +9 -1
- package/models/user/hocs/withRegistration.d.ts +9 -1
- package/models/user/hooks/useChangePassword.d.ts +5 -5
- package/models/user/hooks/useForgotPassword.d.ts +6 -6
- package/models/user/hooks/useLogin.d.ts +45 -7
- package/models/user/hooks/useRegistration.d.ts +4 -4
- package/models/user/redux/reducers.d.ts +54 -3
- package/models/user/redux/selectors.d.ts +72 -27
- package/models/util/ToJs.d.ts +4 -1
- package/package-lock.json +1126 -533
- package/package.json +8 -9
- package/cjs/App-fbd91490.js.map +0 -1
- package/cjs/RouteLoader-f99cd734.js.map +0 -1
- package/cjs/ToJs-d72e5b10.js +0 -167
- package/cjs/ToJs-d72e5b10.js.map +0 -1
- package/cjs/actions-e9f69947.js.map +0 -1
- package/cjs/login-4f274c6a.js.map +0 -1
- package/cjs/reducers-cb531715.js.map +0 -1
- package/cjs/selectors-1295124a.js +0 -139
- package/cjs/selectors-1295124a.js.map +0 -1
- package/cjs/version-2193b4a2.js +0 -24
- package/cjs/version-2193b4a2.js.map +0 -1
- package/cjs/version-3a808c12.js.map +0 -1
- package/esm/App-fbef99b3.js.map +0 -1
- package/esm/RouteLoader-281d47e1.js.map +0 -1
- package/esm/ToJs-6e7b247c.js +0 -136
- package/esm/ToJs-6e7b247c.js.map +0 -1
- package/esm/actions-ddd9c623.js.map +0 -1
- package/esm/login-1f9ad133.js.map +0 -1
- package/esm/reducers-feab84fc.js.map +0 -1
- package/esm/selectors-68799788.js +0 -117
- package/esm/selectors-68799788.js.map +0 -1
- package/esm/version-64906b26.js.map +0 -1
- package/esm/version-7fdbd2d5.js +0 -19
- package/esm/version-7fdbd2d5.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToJs-87edc45d.js","sources":["../src/user/redux/selectors.ts","../src/user/util/matchGroups.ts","../src/util/ToJs.tsx"],"sourcesContent":["import { AppState } from '~/redux/appstate';\nimport { getJS } from '~/redux/util';\n\nconst select = (state: AppState) => getJS(state, 'user');\n\nexport const selectUserIsLoading = (state: AppState) =>\n select(state)?.authenticationState?.loading;\n\nexport const selectUserIsAuthenticated = (state: AppState) =>\n select(state)?.authenticationState?.authenticated;\n\nexport const selectUserAuthenticationError = (state: AppState) =>\n select(state)?.authenticationState?.authenticationError;\n\nexport const selectUserAuthenticationErrorMessage = (state: AppState) =>\n select(state)?.authenticationState?.authenticationErrorMessage;\n\nexport const selectUserError = (state: AppState) =>\n select(state)?.authenticationState?.error;\n\nexport const selectUserErrorMessage = (state: AppState) =>\n select(state)?.authenticationState?.errorMessage;\n\nexport const selectClientCredentials = (state: AppState) =>\n select(state)?.authenticationState?.clientCredentials;\n\nexport const selectUser = (state: AppState) => state?.user;\n\nexport const selectUserIsZengentiStaff = (state: AppState) =>\n select(state)?.isZengentiStaff;\n\nexport const selectUserGuid = (state: AppState) => select(state)?.id;\n\nexport const selectUsername = (state: AppState) => select(state)?.username;\n\nexport const selectUserEmail = (state: AppState) => select(state)?.email;\n\nexport const selectUserGroups = (state: AppState) => select(state)?.groups;\n\nexport const selectUserSecurityToken = (state: AppState) =>\n select(state)?.authenticationState?.clientCredentials?.contensisClassicToken;\n\nexport const selectUserRegistration = (state: AppState) =>\n select(state)?.registration || {};\n\nexport const selectUserRegistrationError = (state: AppState) =>\n select(state)?.registration?.error || false;\n\nexport const selectUserRegistrationIsLoading = (state: AppState) =>\n select(state)?.registration?.loading || false;\n\nexport const selectUserRegistrationIsSuccess = (state: AppState) =>\n select(state)?.registration?.success || false;\n\nexport const selectPasswordResetRequestSending = (state: AppState) =>\n select(state)?.passwordResetRequest?.isSending;\n\nexport const selectPasswordResetRequestSent = (state: AppState) =>\n select(state)?.passwordResetRequest?.sent;\n\nexport const selectPasswordResetRequestError = (state: AppState) =>\n select(state)?.passwordResetRequest?.error;\n\nexport const selectResetPasswordSending = (state: AppState) =>\n select(state)?.resetPassword?.isSending;\n\nexport const selectResetPasswordSent = (state: AppState) =>\n select(state)?.resetPassword?.sent;\n\nexport const selectResetPasswordError = (state: AppState) =>\n select(state)?.resetPassword?.error;\n\nexport const selectChangePasswordSending = (state: AppState) =>\n select(state)?.changePassword?.isSending;\n\nexport const selectChangePasswordSent = (state: AppState) =>\n select(state)?.changePassword?.sent;\n\nexport const selectChangePasswordError = (state: AppState) =>\n select(state)?.changePassword?.error;\n","import { Group } from 'contensis-management-api/lib/models';\nimport { RequireLogin } from '~/routing/routes';\n\nexport const matchUserGroup = (\n userGroups: Group[] = [],\n requiredGroups: RequireLogin = []\n) => {\n if (\n !Array.isArray(requiredGroups) ||\n (Array.isArray(requiredGroups) && requiredGroups.length === 0)\n )\n return true;\n\n const groupMatch = requiredGroups.some(requiredGroup => {\n return userGroups.some(userGroup => {\n if (requiredGroup.id === userGroup.id) {\n return true;\n }\n if (requiredGroup.name === userGroup.name) {\n return true;\n }\n });\n });\n return groupMatch;\n};\n","/* eslint-disable react/display-name */\n/* eslint-disable @typescript-eslint/naming-convention */\nimport React from 'react';\n\nexport const toJS =\n <Props extends { [key: string]: any }>(\n WrappedComponent: React.ComponentType<Props>\n ): React.ComponentType<Props> =>\n (wrappedComponentProps: Props) => {\n const KEY = 0;\n const VALUE = 1;\n\n const propsJS = Object.entries(wrappedComponentProps).reduce<Props>(\n (newProps: any, wrappedComponentProp) => {\n const propKey = wrappedComponentProp[KEY];\n const propValue = wrappedComponentProp[VALUE];\n newProps[propKey] =\n propValue && typeof propValue === 'object' && 'toJS' in propValue\n ? propValue.toJS()\n : propValue;\n return newProps as Props;\n },\n {} as Props\n );\n\n return <WrappedComponent {...propsJS} />;\n };\n"],"names":["select","state","getJS","selectUserIsLoading","authenticationState","loading","selectUserIsAuthenticated","authenticated","selectUserAuthenticationError","authenticationError","selectUserAuthenticationErrorMessage","authenticationErrorMessage","selectUserError","error","selectUserErrorMessage","errorMessage","selectClientCredentials","clientCredentials","selectUser","user","selectUserIsZengentiStaff","isZengentiStaff","selectUserGuid","id","selectUsername","username","selectUserEmail","email","selectUserGroups","groups","selectUserSecurityToken","contensisClassicToken","selectUserRegistration","registration","selectUserRegistrationError","selectUserRegistrationIsLoading","selectUserRegistrationIsSuccess","success","selectPasswordResetRequestSending","passwordResetRequest","isSending","selectPasswordResetRequestSent","sent","selectPasswordResetRequestError","selectResetPasswordSending","resetPassword","selectResetPasswordSent","selectResetPasswordError","selectChangePasswordSending","changePassword","selectChangePasswordSent","selectChangePasswordError","matchUserGroup","userGroups","requiredGroups","Array","isArray","length","groupMatch","some","requiredGroup","userGroup","name","toJS","WrappedComponent","wrappedComponentProps","KEY","VALUE","propsJS","Object","entries","reduce","newProps","wrappedComponentProp","propKey","propValue","React"],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var selectors = require('./selectors-ed26ed97.js');
|
|
4
|
+
|
|
3
5
|
const ROUTING_PREFIX = '@ROUTING/';
|
|
4
6
|
const GET_ENTRY = `${ROUTING_PREFIX}_GET_ENTRY`;
|
|
5
7
|
const SET_ENTRY = `${ROUTING_PREFIX}_SET_ENTRY`;
|
|
@@ -30,15 +32,10 @@ var routing = /*#__PURE__*/Object.freeze({
|
|
|
30
32
|
UPDATE_LOADING_STATE: UPDATE_LOADING_STATE
|
|
31
33
|
});
|
|
32
34
|
|
|
33
|
-
const
|
|
34
|
-
type,
|
|
35
|
-
...payload
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
const setNotFound = notFound => action(SET_NAVIGATION_NOT_FOUND, {
|
|
35
|
+
const setNotFound = notFound => selectors.action(SET_NAVIGATION_NOT_FOUND, {
|
|
39
36
|
notFound
|
|
40
37
|
});
|
|
41
|
-
const setNavigationPath = (path, location, staticRoute, withEvents, statePath, routes) => action(SET_NAVIGATION_PATH, {
|
|
38
|
+
const setNavigationPath = (path, location, staticRoute, withEvents, statePath, routes) => selectors.action(SET_NAVIGATION_PATH, {
|
|
42
39
|
path,
|
|
43
40
|
location,
|
|
44
41
|
staticRoute,
|
|
@@ -46,19 +43,19 @@ const setNavigationPath = (path, location, staticRoute, withEvents, statePath, r
|
|
|
46
43
|
statePath,
|
|
47
44
|
routes
|
|
48
45
|
});
|
|
49
|
-
const setCurrentProject = (project, allowedGroups, hostname) => action(SET_TARGET_PROJECT, {
|
|
46
|
+
const setCurrentProject = (project, allowedGroups, hostname) => selectors.action(SET_TARGET_PROJECT, {
|
|
50
47
|
project,
|
|
51
48
|
allowedGroups,
|
|
52
49
|
hostname
|
|
53
50
|
});
|
|
54
|
-
const setRoute = (path, state) => action(SET_ROUTE, {
|
|
51
|
+
const setRoute = (path, state) => selectors.action(SET_ROUTE, {
|
|
55
52
|
path,
|
|
56
53
|
state
|
|
57
54
|
});
|
|
58
|
-
const setRouteEntry = entry => action(SET_ENTRY, {
|
|
55
|
+
const setRouteEntry = entry => selectors.action(SET_ENTRY, {
|
|
59
56
|
entry
|
|
60
57
|
});
|
|
61
|
-
const setSurrogateKeys = keys => action(SET_SURROGATE_KEYS, {
|
|
58
|
+
const setSurrogateKeys = keys => selectors.action(SET_SURROGATE_KEYS, {
|
|
62
59
|
keys
|
|
63
60
|
});
|
|
64
61
|
|
|
@@ -80,11 +77,10 @@ exports.SET_SIBLINGS = SET_SIBLINGS;
|
|
|
80
77
|
exports.SET_SURROGATE_KEYS = SET_SURROGATE_KEYS;
|
|
81
78
|
exports.SET_TARGET_PROJECT = SET_TARGET_PROJECT;
|
|
82
79
|
exports.UPDATE_LOADING_STATE = UPDATE_LOADING_STATE;
|
|
83
|
-
exports.action = action;
|
|
84
80
|
exports.routing = routing;
|
|
85
81
|
exports.routing$1 = routing$1;
|
|
86
82
|
exports.setCurrentProject = setCurrentProject;
|
|
87
83
|
exports.setNavigationPath = setNavigationPath;
|
|
88
84
|
exports.setRoute = setRoute;
|
|
89
85
|
exports.setSurrogateKeys = setSurrogateKeys;
|
|
90
|
-
//# sourceMappingURL=actions-
|
|
86
|
+
//# sourceMappingURL=actions-12871aca.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions-12871aca.js","sources":["../src/routing/redux/types.ts","../src/routing/redux/actions.ts"],"sourcesContent":["const ROUTING_PREFIX = '@ROUTING/';\nexport const GET_ENTRY = `${ROUTING_PREFIX}_GET_ENTRY`;\nexport const SET_ENTRY = `${ROUTING_PREFIX}_SET_ENTRY`;\nexport const SET_NODE = `${ROUTING_PREFIX}_SET_NODE`;\nexport const SET_ANCESTORS = `${ROUTING_PREFIX}_SET_ANCESTORS`;\nexport const SET_SIBLINGS = `${ROUTING_PREFIX}_SET_SIBLINGS`;\nexport const SET_ENTRY_ID = `${ROUTING_PREFIX}_SET_ENTRY_ID`;\nexport const SET_SURROGATE_KEYS = `${ROUTING_PREFIX}_SET_SURROGATE_KEYS`;\n\nexport const SET_NAVIGATION_NOT_FOUND = `${ROUTING_PREFIX}_SET_NOT_FOUND`;\nexport const SET_NAVIGATION_PATH = `${ROUTING_PREFIX}_SET_NAVIGATION_PATH`;\n\nexport const SET_TARGET_PROJECT = `${ROUTING_PREFIX}_SET_TARGET_PROJECT`;\n\nexport const SET_ROUTE = `${ROUTING_PREFIX}_SET_ROUTE`;\n\nexport const UPDATE_LOADING_STATE = `${ROUTING_PREFIX}_UPDATE_LOADING_STATE`;\n","import { action } from '~/redux/util';\nimport {\n SET_ENTRY,\n SET_NAVIGATION_NOT_FOUND,\n SET_NAVIGATION_PATH,\n SET_TARGET_PROJECT,\n SET_ROUTE,\n SET_SURROGATE_KEYS,\n} from './types';\n\nexport const setNotFound = notFound =>\n action(SET_NAVIGATION_NOT_FOUND, { notFound });\nexport const setNavigationPath = (\n path,\n location,\n staticRoute,\n withEvents,\n statePath,\n routes\n) =>\n action(SET_NAVIGATION_PATH, {\n path,\n location,\n staticRoute,\n withEvents,\n statePath,\n routes,\n });\nexport const setCurrentProject = (project, allowedGroups, hostname) =>\n action(SET_TARGET_PROJECT, { project, allowedGroups, hostname });\nexport const setRoute = (path, state) => action(SET_ROUTE, { path, state });\nexport const setRouteEntry = entry => action(SET_ENTRY, { entry });\nexport const setSurrogateKeys = keys => action(SET_SURROGATE_KEYS, { keys });\n"],"names":["ROUTING_PREFIX","GET_ENTRY","SET_ENTRY","SET_NODE","SET_ANCESTORS","SET_SIBLINGS","SET_ENTRY_ID","SET_SURROGATE_KEYS","SET_NAVIGATION_NOT_FOUND","SET_NAVIGATION_PATH","SET_TARGET_PROJECT","SET_ROUTE","UPDATE_LOADING_STATE","setNotFound","notFound","action","setNavigationPath","path","location","staticRoute","withEvents","statePath","routes","setCurrentProject","project","allowedGroups","hostname","setRoute","state","setRouteEntry","entry","setSurrogateKeys","keys"],"mappings":";;;;AAAA,MAAMA,cAAc,GAAG,WAAvB;AACO,MAAMC,SAAS,GAAI,GAAED,cAAe,YAApC;MACME,SAAS,GAAI,GAAEF,cAAe;AACpC,MAAMG,QAAQ,GAAI,GAAEH,cAAe,WAAnC;MACMI,aAAa,GAAI,GAAEJ,cAAe;MAClCK,YAAY,GAAI,GAAEL,cAAe;AACvC,MAAMM,YAAY,GAAI,GAAEN,cAAe,eAAvC;MACMO,kBAAkB,GAAI,GAAEP,cAAe;AAE7C,MAAMQ,wBAAwB,GAAI,GAAER,cAAe,gBAAnD;MACMS,mBAAmB,GAAI,GAAET,cAAe;MAExCU,kBAAkB,GAAI,GAAEV,cAAe;MAEvCW,SAAS,GAAI,GAAEX,cAAe;MAE9BY,oBAAoB,GAAI,GAAEZ,cAAe;;;;;;;;;;;;;;;;;;ACN/C,MAAMa,WAAW,GAAGC,QAAQ,IACjCC,gBAAM,CAACP,wBAAD,EAA2B;AAAEM,EAAAA;AAAF,CAA3B,CADD;MAEME,iBAAiB,GAAG,CAC/BC,IAD+B,EAE/BC,QAF+B,EAG/BC,WAH+B,EAI/BC,UAJ+B,EAK/BC,SAL+B,EAM/BC,MAN+B,KAQ/BP,gBAAM,CAACN,mBAAD,EAAsB;AAC1BQ,EAAAA,IAD0B;AAE1BC,EAAAA,QAF0B;AAG1BC,EAAAA,WAH0B;AAI1BC,EAAAA,UAJ0B;AAK1BC,EAAAA,SAL0B;AAM1BC,EAAAA;AAN0B,CAAtB;MAQKC,iBAAiB,GAAG,CAACC,OAAD,EAAUC,aAAV,EAAyBC,QAAzB,KAC/BX,gBAAM,CAACL,kBAAD,EAAqB;AAAEc,EAAAA,OAAF;AAAWC,EAAAA,aAAX;AAA0BC,EAAAA;AAA1B,CAArB;MACKC,QAAQ,GAAG,CAACV,IAAD,EAAOW,KAAP,KAAiBb,gBAAM,CAACJ,SAAD,EAAY;AAAEM,EAAAA,IAAF;AAAQW,EAAAA;AAAR,CAAZ;AACxC,MAAMC,aAAa,GAAGC,KAAK,IAAIf,gBAAM,CAACb,SAAD,EAAY;AAAE4B,EAAAA;AAAF,CAAZ,CAArC;MACMC,gBAAgB,GAAGC,IAAI,IAAIjB,gBAAM,CAACR,kBAAD,EAAqB;AAAEyB,EAAAA;AAAF,CAArB;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/cjs/client.js
CHANGED
|
@@ -3,69 +3,45 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
require('isomorphic-fetch');
|
|
6
|
-
var Loadable = require('react-loadable');
|
|
7
6
|
var React = require('react');
|
|
8
7
|
var reactRouterDom = require('react-router-dom');
|
|
9
8
|
var reactRedux = require('react-redux');
|
|
10
9
|
require('react-router-config');
|
|
11
10
|
require('jsonpath-mapper');
|
|
12
|
-
require('immutable');
|
|
13
11
|
require('redux');
|
|
14
|
-
require('redux-immutable');
|
|
15
12
|
require('redux-thunk');
|
|
16
13
|
require('redux-saga');
|
|
17
14
|
require('redux-injectors');
|
|
18
|
-
|
|
19
|
-
var
|
|
20
|
-
var
|
|
15
|
+
require('immer');
|
|
16
|
+
var version = require('./version-f061e409.js');
|
|
17
|
+
var actions = require('./actions-12871aca.js');
|
|
18
|
+
require('./reducers-fde41d6b.js');
|
|
21
19
|
require('history');
|
|
22
|
-
var App = require('./App-
|
|
20
|
+
var App = require('./App-581b6653.js');
|
|
23
21
|
require('@redux-saga/core/effects');
|
|
24
22
|
require('contensis-delivery-api');
|
|
25
|
-
require('./
|
|
23
|
+
require('./selectors-ed26ed97.js');
|
|
24
|
+
require('./version-0c190929.js');
|
|
26
25
|
var queryString = require('query-string');
|
|
27
|
-
require('./selectors-1295124a.js');
|
|
28
26
|
require('loglevel');
|
|
29
|
-
require('./ToJs-
|
|
30
|
-
require('./login-
|
|
27
|
+
require('./ToJs-87edc45d.js');
|
|
28
|
+
require('./login-81d7f9ef.js');
|
|
31
29
|
require('await-to-js');
|
|
32
30
|
require('js-cookie');
|
|
33
31
|
var reactHotLoader = require('react-hot-loader');
|
|
34
|
-
require('./RouteLoader-
|
|
32
|
+
require('./RouteLoader-282c03ab.js');
|
|
35
33
|
var reactDom = require('react-dom');
|
|
34
|
+
var component = require('@loadable/component');
|
|
36
35
|
|
|
37
36
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
38
37
|
|
|
39
38
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
40
39
|
|
|
41
|
-
const fromJSLeaveImmer = js => {
|
|
42
|
-
// console.info(js);
|
|
43
|
-
// if (typeof js !== 'object' || js === null) return js;
|
|
44
|
-
// // console.info(`from js - here is js ${JSON.stringify(js)}`);
|
|
45
|
-
// const convertedObject = isOrdered ? OrderedMap() : fromJS({});
|
|
46
|
-
// const keys = Object.keys(js);
|
|
47
|
-
// keys.forEach(key => {
|
|
48
|
-
// if (key === 'immer') {
|
|
49
|
-
// convertedObject.set(key, js[key]);
|
|
50
|
-
// // console.info(`LOOK! - immer untouched bar root key "${key}"`);
|
|
51
|
-
// } else {
|
|
52
|
-
// // console.info(`LOOK! - normal immutable feature "${key}"`);
|
|
53
|
-
// convertedObject.set(key, isOrdered ? fromJSOrdered(js) : fromJS(js));
|
|
54
|
-
// }
|
|
55
|
-
// });
|
|
56
|
-
const immutableObj = reducers.fromJSOrdered(js);
|
|
57
|
-
|
|
58
|
-
if (immutableObj && !!immutableObj.get('immer')) {
|
|
59
|
-
immutableObj.set('immer', immutableObj.get('immer').toJS());
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return immutableObj;
|
|
63
|
-
};
|
|
64
|
-
|
|
65
40
|
class ClientApp {
|
|
66
41
|
constructor(ReactApp, config) {
|
|
67
42
|
const documentRoot = document.getElementById('root');
|
|
68
43
|
const {
|
|
44
|
+
stateType = 'immutable',
|
|
69
45
|
routes,
|
|
70
46
|
withReducers,
|
|
71
47
|
withSagas,
|
|
@@ -90,27 +66,40 @@ class ClientApp {
|
|
|
90
66
|
*/
|
|
91
67
|
|
|
92
68
|
const HMRRenderer = Component => {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
69
|
+
if (isProduction) component.loadableReady(() => {
|
|
70
|
+
reactDom.hydrate(Component, documentRoot);
|
|
71
|
+
}, {
|
|
72
|
+
namespace: 'modern'
|
|
73
|
+
});else reactDom.render(Component, documentRoot);
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const hmr = store => {
|
|
77
|
+
// webpack Hot Module Replacement API
|
|
78
|
+
if (module.hot) {
|
|
79
|
+
module.hot.accept(ReactApp, () => {
|
|
80
|
+
// if you are using harmony modules ({modules:false})
|
|
81
|
+
HMRRenderer(GetClientJSX(store));
|
|
82
|
+
});
|
|
83
|
+
}
|
|
96
84
|
};
|
|
97
85
|
|
|
98
|
-
let store = null;
|
|
99
86
|
const qs = queryString.parse(window.location.search);
|
|
100
87
|
const versionStatusFromHostname = App.deliveryApi.getClientSideVersionStatus();
|
|
101
88
|
|
|
102
89
|
if (window.isDynamic || window.REDUX_DATA || process.env.NODE_ENV !== 'production') {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
90
|
+
version.createStore(withReducers, window.REDUX_DATA, App.browserHistory, stateType).then(store => {
|
|
91
|
+
store.dispatch(version.setVersionStatus(qs.versionStatus || versionStatusFromHostname));
|
|
92
|
+
/* eslint-disable no-console */
|
|
106
93
|
|
|
107
|
-
|
|
108
|
-
|
|
94
|
+
console.log('Hydrating from inline Redux');
|
|
95
|
+
/* eslint-enable no-console */
|
|
109
96
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
97
|
+
store.runSaga(App.rootSaga(withSagas));
|
|
98
|
+
store.dispatch(actions.setCurrentProject(App.pickProject(window.location.hostname, qs), [], window.location.hostname));
|
|
99
|
+
delete window.REDUX_DATA;
|
|
100
|
+
HMRRenderer(GetClientJSX(store));
|
|
101
|
+
hmr(store);
|
|
102
|
+
});
|
|
114
103
|
} else {
|
|
115
104
|
fetch(`${window.location.pathname}?redux=true`).then(response => response.json()).then(data => {
|
|
116
105
|
/* eslint-disable no-console */
|
|
@@ -119,22 +108,16 @@ class ClientApp {
|
|
|
119
108
|
|
|
120
109
|
/* eslint-enable no-console */
|
|
121
110
|
const ssRedux = JSON.parse(data);
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
if (module.hot) {
|
|
135
|
-
module.hot.accept(ReactApp, () => {
|
|
136
|
-
// if you are using harmony modules ({modules:false})
|
|
137
|
-
HMRRenderer(GetClientJSX(store));
|
|
111
|
+
version.createStore(withReducers, ssRedux, App.browserHistory, stateType).then(store => {
|
|
112
|
+
// store.dispatch(setVersionStatus(versionStatusFromHostname));
|
|
113
|
+
store.runSaga(App.rootSaga(withSagas));
|
|
114
|
+
store.dispatch(actions.setCurrentProject(App.pickProject(window.location.hostname, queryString.parse(window.location.search)), [], window.location.hostname)); // if (typeof window != 'undefined') {
|
|
115
|
+
// store.dispatch(checkUserLoggedIn());
|
|
116
|
+
// }
|
|
117
|
+
|
|
118
|
+
HMRRenderer(GetClientJSX(store));
|
|
119
|
+
hmr(store);
|
|
120
|
+
});
|
|
138
121
|
});
|
|
139
122
|
}
|
|
140
123
|
}
|
package/cjs/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sources":["../src/
|
|
1
|
+
{"version":3,"file":"client.js","sources":["../src/client/client.tsx"],"sourcesContent":["import 'isomorphic-fetch';\nimport React from 'react';\nimport { render, hydrate } from 'react-dom';\nimport { AppContainer } from 'react-hot-loader';\nimport { Provider as ReduxProvider } from 'react-redux';\nimport { Router } from 'react-router-dom';\nimport { loadableReady } from '@loadable/component';\nimport * as queryString from 'query-string';\n\nimport { setVersionStatus } from '~/redux/actions/version';\nimport rootSaga from '~/redux/sagas';\nimport { browserHistory as history } from '~/redux/store/history';\nimport createStore from '~/redux/store/store';\n\nimport { setCurrentProject } from '~/routing/redux/actions';\n\nimport { deliveryApi } from '~/util/ContensisDeliveryApi';\nimport pickProject from '~/util/pickProject';\n\nimport { AppConfig } from '~/config';\n\ndeclare let window: typeof globalThis & {\n isDynamic;\n REDUX_DATA;\n};\n\ntype ReactAppProps = { routes: any; withEvents: any };\n\nclass ClientApp {\n constructor(ReactApp: React.ComponentType<ReactAppProps>, config: AppConfig) {\n const documentRoot = document.getElementById('root');\n\n const {\n stateType = 'immutable',\n routes,\n withReducers,\n withSagas,\n withEvents,\n } = config;\n\n const GetClientJSX = store => {\n const ClientJsx = (\n <AppContainer>\n <ReduxProvider store={store}>\n <Router history={history}>\n <ReactApp routes={routes} withEvents={withEvents} />\n </Router>\n </ReduxProvider>\n </AppContainer>\n );\n return ClientJsx;\n };\n\n const isProduction = !(process.env.NODE_ENV !== 'production');\n\n /**\n * Webpack HMR Setup.\n */\n const HMRRenderer = Component => {\n if (isProduction)\n loadableReady(\n () => {\n hydrate(Component, documentRoot);\n },\n { namespace: 'modern' }\n );\n else render(Component, documentRoot);\n };\n\n const hmr = store => {\n // webpack Hot Module Replacement API\n if (module.hot) {\n module.hot.accept(ReactApp as unknown as string, () => {\n // if you are using harmony modules ({modules:false})\n HMRRenderer(GetClientJSX(store));\n });\n }\n };\n\n const qs = queryString.parse(window.location.search);\n const versionStatusFromHostname = deliveryApi.getClientSideVersionStatus();\n\n if (\n window.isDynamic ||\n window.REDUX_DATA ||\n process.env.NODE_ENV !== 'production'\n ) {\n createStore(withReducers, window.REDUX_DATA, history, stateType).then(\n store => {\n store.dispatch(\n setVersionStatus(qs.versionStatus || versionStatusFromHostname)\n );\n\n /* eslint-disable no-console */\n console.log('Hydrating from inline Redux');\n /* eslint-enable no-console */\n store.runSaga(rootSaga(withSagas));\n store.dispatch(\n setCurrentProject(\n pickProject(window.location.hostname, qs),\n [],\n window.location.hostname\n )\n );\n\n delete window.REDUX_DATA;\n HMRRenderer(GetClientJSX(store));\n\n hmr(store);\n }\n );\n } else {\n fetch(`${window.location.pathname}?redux=true`)\n .then(response => response.json())\n .then(data => {\n /* eslint-disable no-console */\n // console.log('Got Data Back');\n // console.log(data);\n /* eslint-enable no-console */\n const ssRedux = JSON.parse(data);\n createStore(withReducers, ssRedux, history, stateType).then(store => {\n // store.dispatch(setVersionStatus(versionStatusFromHostname));\n\n store.runSaga(rootSaga(withSagas));\n store.dispatch(\n setCurrentProject(\n pickProject(\n window.location.hostname,\n queryString.parse(window.location.search)\n ),\n [],\n window.location.hostname\n )\n );\n // if (typeof window != 'undefined') {\n // store.dispatch(checkUserLoggedIn());\n // }\n HMRRenderer(GetClientJSX(store));\n\n hmr(store);\n });\n });\n }\n }\n}\n\nexport default ClientApp;\n"],"names":["ClientApp","constructor","ReactApp","config","documentRoot","document","getElementById","stateType","routes","withReducers","withSagas","withEvents","GetClientJSX","store","ClientJsx","React","AppContainer","ReduxProvider","Router","history","isProduction","process","env","NODE_ENV","HMRRenderer","Component","loadableReady","hydrate","namespace","render","hmr","module","hot","accept","qs","queryString","window","location","search","versionStatusFromHostname","deliveryApi","getClientSideVersionStatus","isDynamic","REDUX_DATA","createStore","then","dispatch","setVersionStatus","versionStatus","console","log","runSaga","rootSaga","setCurrentProject","pickProject","hostname","fetch","pathname","response","json","data","ssRedux","JSON","parse"],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
require('isomorphic-fetch');
|
|
6
6
|
var express = require('express');
|
|
7
|
-
var Loadable = require('react-loadable');
|
|
8
7
|
var httpProxy = require('http-proxy');
|
|
9
8
|
var fs = require('fs');
|
|
10
9
|
var path = require('path');
|
|
@@ -14,45 +13,42 @@ var server$1 = require('react-dom/server');
|
|
|
14
13
|
var reactRouterDom = require('react-router-dom');
|
|
15
14
|
var reactRedux = require('react-redux');
|
|
16
15
|
var reactRouterConfig = require('react-router-config');
|
|
17
|
-
var
|
|
16
|
+
var reactHelmet = require('react-helmet');
|
|
18
17
|
var styled = require('styled-components');
|
|
19
18
|
var serialize = require('serialize-javascript');
|
|
20
19
|
var minifyCssString = require('minify-css-string');
|
|
21
20
|
var mapJson = require('jsonpath-mapper');
|
|
22
21
|
var server = require('@loadable/server');
|
|
23
|
-
var immutable = require('immutable');
|
|
24
22
|
require('redux');
|
|
25
|
-
require('redux-immutable');
|
|
26
23
|
require('redux-thunk');
|
|
27
24
|
require('redux-saga');
|
|
28
25
|
require('redux-injectors');
|
|
29
|
-
|
|
30
|
-
var
|
|
31
|
-
require('./
|
|
26
|
+
require('immer');
|
|
27
|
+
var version = require('./version-f061e409.js');
|
|
28
|
+
var actions = require('./actions-12871aca.js');
|
|
29
|
+
require('./reducers-fde41d6b.js');
|
|
32
30
|
require('history');
|
|
33
|
-
var App = require('./App-
|
|
31
|
+
var App = require('./App-581b6653.js');
|
|
34
32
|
require('@redux-saga/core/effects');
|
|
35
33
|
require('contensis-delivery-api');
|
|
36
|
-
require('./
|
|
34
|
+
var selectors = require('./selectors-ed26ed97.js');
|
|
35
|
+
require('./version-0c190929.js');
|
|
37
36
|
require('query-string');
|
|
38
|
-
var selectors = require('./selectors-1295124a.js');
|
|
39
37
|
require('loglevel');
|
|
40
|
-
require('./ToJs-
|
|
41
|
-
require('./login-
|
|
38
|
+
require('./ToJs-87edc45d.js');
|
|
39
|
+
require('./login-81d7f9ef.js');
|
|
42
40
|
require('await-to-js');
|
|
43
41
|
require('js-cookie');
|
|
44
42
|
require('react-hot-loader');
|
|
45
|
-
require('./RouteLoader-
|
|
43
|
+
require('./RouteLoader-282c03ab.js');
|
|
46
44
|
|
|
47
45
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
48
46
|
|
|
49
47
|
var express__default = /*#__PURE__*/_interopDefaultLegacy(express);
|
|
50
|
-
var Loadable__default = /*#__PURE__*/_interopDefaultLegacy(Loadable);
|
|
51
48
|
var httpProxy__default = /*#__PURE__*/_interopDefaultLegacy(httpProxy);
|
|
52
49
|
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
53
50
|
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
54
51
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
55
|
-
var Helmet__default = /*#__PURE__*/_interopDefaultLegacy(Helmet);
|
|
56
52
|
var serialize__default = /*#__PURE__*/_interopDefaultLegacy(serialize);
|
|
57
53
|
var minifyCssString__default = /*#__PURE__*/_interopDefaultLegacy(minifyCssString);
|
|
58
54
|
var mapJson__default = /*#__PURE__*/_interopDefaultLegacy(mapJson);
|
|
@@ -234,43 +230,6 @@ const handleResponse = (request, response, content, send = 'send') => {
|
|
|
234
230
|
response[send](content);
|
|
235
231
|
};
|
|
236
232
|
|
|
237
|
-
const addStandardHeaders = (state, response, packagejson, groups) => {
|
|
238
|
-
if (state) {
|
|
239
|
-
try {
|
|
240
|
-
console.info('About to add headers');
|
|
241
|
-
const routingSurrogateKeys = state.getIn(['routing', 'surrogateKeys'], '');
|
|
242
|
-
const surrogateKeyHeader = ` ${packagejson.name}-app ${routingSurrogateKeys}`;
|
|
243
|
-
response.header('surrogate-key', surrogateKeyHeader);
|
|
244
|
-
addVarnishAuthenticationHeaders(state, response, groups);
|
|
245
|
-
response.setHeader('Surrogate-Control', `max-age=${getCacheDuration(response.statusCode)}`);
|
|
246
|
-
} catch (e) {
|
|
247
|
-
console.info('Error Adding headers', e.message);
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
};
|
|
251
|
-
const addVarnishAuthenticationHeaders = (state, response, groups = {}) => {
|
|
252
|
-
if (state) {
|
|
253
|
-
try {
|
|
254
|
-
const stateEntry = selectors.selectRouteEntry(state);
|
|
255
|
-
const project = selectors.selectCurrentProject(state);
|
|
256
|
-
const {
|
|
257
|
-
globalGroups,
|
|
258
|
-
allowedGroups
|
|
259
|
-
} = groups; // console.info(globalGroups, allowedGroups);
|
|
260
|
-
|
|
261
|
-
let allGroups = Array.from(globalGroups && globalGroups[project] || {});
|
|
262
|
-
|
|
263
|
-
if (stateEntry && stateEntry.getIn(['authentication', 'isLoginRequired']) && allowedGroups && allowedGroups[project]) {
|
|
264
|
-
allGroups = [...allGroups, ...allowedGroups[project]];
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
response.header('x-contensis-viewer-groups', allGroups.join('|'));
|
|
268
|
-
} catch (e) {
|
|
269
|
-
console.info('Error adding authentication header', e);
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
};
|
|
273
|
-
|
|
274
233
|
const readFileSync = path => fs__default['default'].readFileSync(path, 'utf8');
|
|
275
234
|
|
|
276
235
|
const loadableBundleData = ({
|
|
@@ -354,8 +313,46 @@ const getBundleTags = (loadableExtractor, scripts, staticRoutePath = 'static') =
|
|
|
354
313
|
return startupTag;
|
|
355
314
|
};
|
|
356
315
|
|
|
316
|
+
const addStandardHeaders = (state, response, packagejson, groups) => {
|
|
317
|
+
if (state) {
|
|
318
|
+
try {
|
|
319
|
+
console.info('About to add headers');
|
|
320
|
+
const routingSurrogateKeys = selectors.getImmutableOrJS(state, ['routing', 'surrogateKeys'], '');
|
|
321
|
+
const surrogateKeyHeader = ` ${packagejson.name}-app ${routingSurrogateKeys}`;
|
|
322
|
+
response.header('surrogate-key', surrogateKeyHeader);
|
|
323
|
+
addVarnishAuthenticationHeaders(state, response, groups);
|
|
324
|
+
response.setHeader('Surrogate-Control', `max-age=${getCacheDuration(response.statusCode)}`);
|
|
325
|
+
} catch (e) {
|
|
326
|
+
console.info('Error Adding headers', e.message);
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
const addVarnishAuthenticationHeaders = (state, response, groups = {}) => {
|
|
331
|
+
if (state) {
|
|
332
|
+
try {
|
|
333
|
+
const stateEntry = selectors.selectRouteEntry(state);
|
|
334
|
+
const project = selectors.selectCurrentProject(state);
|
|
335
|
+
const {
|
|
336
|
+
globalGroups,
|
|
337
|
+
allowedGroups
|
|
338
|
+
} = groups; // console.info(globalGroups, allowedGroups);
|
|
339
|
+
|
|
340
|
+
let allGroups = Array.from(globalGroups && globalGroups[project] || {});
|
|
341
|
+
|
|
342
|
+
if (stateEntry && selectors.getImmutableOrJS(stateEntry, ['authentication', 'isLoginRequired']) && allowedGroups && allowedGroups[project]) {
|
|
343
|
+
allGroups = [...allGroups, ...allowedGroups[project]];
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
response.header('x-contensis-viewer-groups', allGroups.join('|'));
|
|
347
|
+
} catch (e) {
|
|
348
|
+
console.info('Error adding authentication header', e);
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
};
|
|
352
|
+
|
|
357
353
|
const webApp = (app, ReactApp, config) => {
|
|
358
354
|
const {
|
|
355
|
+
stateType = 'immutable',
|
|
359
356
|
routes,
|
|
360
357
|
withReducers,
|
|
361
358
|
withSagas,
|
|
@@ -375,7 +372,7 @@ const webApp = (app, ReactApp, config) => {
|
|
|
375
372
|
scripts.startup = scripts.startup || startupScriptFilename;
|
|
376
373
|
const responseHandler = typeof handleResponses === 'function' ? handleResponses : handleResponse;
|
|
377
374
|
const versionInfo = JSON.parse(fs__default['default'].readFileSync(`dist/${staticFolderPath}/version.json`, 'utf8'));
|
|
378
|
-
app.get('/*', (request, response) => {
|
|
375
|
+
app.get('/*', async (request, response) => {
|
|
379
376
|
const {
|
|
380
377
|
url
|
|
381
378
|
} = request;
|
|
@@ -410,9 +407,9 @@ const webApp = (app, ReactApp, config) => {
|
|
|
410
407
|
|
|
411
408
|
response.status(200); // Create a store (with a memory history) from our current url
|
|
412
409
|
|
|
413
|
-
const store = version.createStore(withReducers,
|
|
410
|
+
const store = await version.createStore(withReducers, {}, App.history({
|
|
414
411
|
initialEntries: [url]
|
|
415
|
-
})); // dispatch any global and non-saga related actions before calling our JSX
|
|
412
|
+
}), stateType); // dispatch any global and non-saga related actions before calling our JSX
|
|
416
413
|
|
|
417
414
|
const versionStatusFromHostname = App.deliveryApi.getVersionStatusFromHostname(request.hostname);
|
|
418
415
|
console.info(`Request for ${request.path} hostname: ${request.hostname} versionStatus: ${versionStatusFromHostname}`);
|
|
@@ -458,8 +455,8 @@ const webApp = (app, ReactApp, config) => {
|
|
|
458
455
|
store.runSaga(App.rootSaga(withSagas)).toPromise().then(() => {
|
|
459
456
|
const sheet = new styled.ServerStyleSheet();
|
|
460
457
|
const html = server$1.renderToString(sheet.collectStyles(jsx));
|
|
461
|
-
const helmet =
|
|
462
|
-
|
|
458
|
+
const helmet = reactHelmet.Helmet.renderStatic();
|
|
459
|
+
reactHelmet.Helmet.rewind();
|
|
463
460
|
const htmlAttributes = helmet.htmlAttributes.toString();
|
|
464
461
|
let title = helmet.title.toString();
|
|
465
462
|
const metadata = helmet.meta.toString();
|
|
@@ -575,17 +572,15 @@ const start = (ReactApp, config, ServerFeatures) => {
|
|
|
575
572
|
app.on('ready', async () => {
|
|
576
573
|
// Configure DNS to make life easier
|
|
577
574
|
// await ConfigureLocalDNS();
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
console.info('GoodBye :(');
|
|
588
|
-
});
|
|
575
|
+
const server = app.listen(3001, () => {
|
|
576
|
+
console.info(`HTTP server is listening @ port 3001`);
|
|
577
|
+
setTimeout(function () {
|
|
578
|
+
app.emit('app_started');
|
|
579
|
+
}, 500);
|
|
580
|
+
});
|
|
581
|
+
app.on('stop', () => {
|
|
582
|
+
server.close(function () {
|
|
583
|
+
console.info('GoodBye :(');
|
|
589
584
|
});
|
|
590
585
|
});
|
|
591
586
|
});
|