catalyst-core-internal 0.0.1-beta.2 → 0.0.1-beta.21
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/.eslintignore +9 -0
- package/.eslintrc +91 -0
- package/.husky/commit-msg +1 -0
- package/.husky/pre-commit +1 -0
- package/README.md +45 -43
- package/babel.config.json +2 -5
- package/bin/catalyst.js +33 -35
- package/caching.js +1 -16
- package/changelog.md +12 -0
- package/commitlint.config.js +11 -0
- package/config.json +1 -1
- package/index.js +1 -16
- package/license +10 -0
- package/logger.js +3 -89
- package/package.json +89 -83
- package/router/ClientRouter.js +2 -18
- package/router/ServerRouter.js +1 -19
- package/router.js +1 -16
- package/scripts/build.js +9 -28
- package/scripts/checkVersion.js +1 -5
- package/scripts/devBuild.js +10 -0
- package/scripts/devServe.js +5 -0
- package/scripts/loadEnvironmentVariables.js +4 -23
- package/scripts/loadScriptsBeforeServerStarts.js +5 -47
- package/scripts/resiterAliases.js +29 -0
- package/scripts/scriptUtils.js +2 -0
- package/scripts/serve.js +4 -29
- package/scripts/start.js +5 -25
- package/scripts/validator.js +1 -130
- package/server/expressServer.js +8 -49
- package/server/renderer/document/Body.js +6 -28
- package/server/renderer/document/Head.js +5 -39
- package/server/renderer/document/index.js +1 -27
- package/server/renderer/extract.js +6 -72
- package/server/renderer/handler.js +14 -241
- package/server/renderer/index.js +1 -12
- package/server/renderer/render.js +8 -60
- package/server/startServer.js +6 -65
- package/server/utils/userAgentUtil.js +3 -49
- package/server/utils/validator.js +1 -130
- package/webpack/babel-plugins/remove-client.plugin.js +3 -29
- package/webpack/babel-plugins/remove-ssr.plugin.js +3 -19
- package/webpack/babel.config.client.js +1 -24
- package/webpack/babel.config.ssr.js +1 -24
- package/webpack/base.babel.js +8 -167
- package/webpack/development.client.babel.js +4 -82
- package/webpack/production.client.babel.js +4 -78
- package/webpack/production.ssr.babel.js +4 -61
- package/webpack/scssParams.js +5 -31
- package/packages/create-framework-app/templates/redux-js/node_modules/@babel/core/lib/config/caching.js +0 -261
- package/packages/create-framework-app/templates/redux-js/node_modules/@remix-run/router/dist/router.js +0 -4327
- package/packages/create-framework-app/templates/redux-js/node_modules/catalyst/router.js +0 -15
- package/packages/create-framework-app/templates/redux-js/node_modules/catalyst/src/router.js +0 -1
- package/packages/create-framework-app/templates/redux-js/node_modules/http-proxy-middleware/dist/router.js +0 -46
- package/router/index.js +0 -32
- package/scripts/prepare.js +0 -19
- package/scripts/registerAliases.js +0 -30
- package/server/mainIndex.js +0 -65
- package/server/mainServer.js +0 -70
- package/server/renderer/userAgentUtil.js +0 -55
- package/types/caching.d.ts +0 -1
- package/types/config/config.d.ts +0 -19
- package/types/index.d.ts +0 -1
- package/types/logger/index.d.ts +0 -14
- package/types/reducer/index.d.ts +0 -22
- package/types/reducer/loadableConfigReducer.d.ts +0 -9
- package/types/router/ClientRouter.d.ts +0 -5
- package/types/router/ServerRouter.d.ts +0 -7
- package/types/router/index.d.ts +0 -8
- package/types/router.d.ts +0 -1
- package/types/scripts/build.d.ts +0 -1
- package/types/scripts/loadEnvironmentVariables.d.ts +0 -5
- package/types/scripts/loadScriptsBeforeServerStarts.d.ts +0 -1
- package/types/scripts/prepare.d.ts +0 -1
- package/types/scripts/registerAliases.d.ts +0 -1
- package/types/scripts/serve.d.ts +0 -1
- package/types/scripts/start.d.ts +0 -1
- package/types/scripts/validator.d.ts +0 -9
- package/types/scripts/verifyConfig.d.ts +0 -1
- package/types/server/mainIndex.d.ts +0 -1
- package/types/server/mainServer.d.ts +0 -2
- package/types/server/renderer/document/Body.d.ts +0 -11
- package/types/server/renderer/document/Head.d.ts +0 -11
- package/types/server/renderer/document/index.d.ts +0 -2
- package/types/server/renderer/extract.d.ts +0 -18
- package/types/server/renderer/handler.d.ts +0 -6
- package/types/server/renderer/index.d.ts +0 -2
- package/types/server/renderer/render.d.ts +0 -38
- package/types/server/renderer/userAgentUtil.d.ts +0 -1
- package/types/store/index.d.ts +0 -11
- package/types/store/index.dev.d.ts +0 -8
- package/types/store/index.prod.d.ts +0 -8
- package/types/webpack/babel-plugins/remove-client.plugin.d.ts +0 -10
- package/types/webpack/babel-plugins/remove-ssr.plugin.d.ts +0 -10
- package/types/webpack/babel.config.client.d.ts +0 -21
- package/types/webpack/babel.config.d.ts +0 -16
- package/types/webpack/babel.config.ssr.d.ts +0 -21
- package/types/webpack/base.babel.d.ts +0 -184
- package/types/webpack/development.client.babel.d.ts +0 -1
- package/types/webpack/plugins/mime-types.d.ts +0 -78
- package/types/webpack/plugins/route-manifest-plugin.d.ts +0 -1
- package/types/webpack/plugins/upload-assets-plugin.d.ts +0 -1
- package/types/webpack/production.client.babel.d.ts +0 -174
- package/types/webpack/production.ssr.babel.d.ts +0 -2
- package/types/webpack/scssParams.d.ts +0 -2
- package/webpack/babel.config.js +0 -20
- package/webpack/plugins/mime-types.js +0 -82
- package/webpack/plugins/route-manifest-copy.js +0 -122
- package/webpack/plugins/route-manifest-plugin.js +0 -122
- package/webpack/plugins/upload-assets-plugin.js +0 -181
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var _router = require("@tata1mg/router");
|
|
7
|
-
Object.keys(_router).forEach(function (key) {
|
|
8
|
-
if (key === "default" || key === "__esModule") return;
|
|
9
|
-
Object.defineProperty(exports, key, {
|
|
10
|
-
enumerable: true,
|
|
11
|
-
get: function () {
|
|
12
|
-
return _router[key];
|
|
13
|
-
}
|
|
14
|
-
});
|
|
15
|
-
});
|
package/packages/create-framework-app/templates/redux-js/node_modules/catalyst/src/router.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '@tata1mg/router'
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getTarget = void 0;
|
|
4
|
-
const isPlainObj = require("is-plain-obj");
|
|
5
|
-
const logger_1 = require("./logger");
|
|
6
|
-
const logger = (0, logger_1.getInstance)();
|
|
7
|
-
async function getTarget(req, config) {
|
|
8
|
-
let newTarget;
|
|
9
|
-
const router = config.router;
|
|
10
|
-
if (isPlainObj(router)) {
|
|
11
|
-
newTarget = getTargetFromProxyTable(req, router);
|
|
12
|
-
}
|
|
13
|
-
else if (typeof router === 'function') {
|
|
14
|
-
newTarget = await router(req);
|
|
15
|
-
}
|
|
16
|
-
return newTarget;
|
|
17
|
-
}
|
|
18
|
-
exports.getTarget = getTarget;
|
|
19
|
-
function getTargetFromProxyTable(req, table) {
|
|
20
|
-
let result;
|
|
21
|
-
const host = req.headers.host;
|
|
22
|
-
const path = req.url;
|
|
23
|
-
const hostAndPath = host + path;
|
|
24
|
-
for (const [key] of Object.entries(table)) {
|
|
25
|
-
if (containsPath(key)) {
|
|
26
|
-
if (hostAndPath.indexOf(key) > -1) {
|
|
27
|
-
// match 'localhost:3000/api'
|
|
28
|
-
result = table[key];
|
|
29
|
-
logger.debug('[HPM] Router table match: "%s"', key);
|
|
30
|
-
break;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
if (key === host) {
|
|
35
|
-
// match 'localhost:3000'
|
|
36
|
-
result = table[key];
|
|
37
|
-
logger.debug('[HPM] Router table match: "%s"', host);
|
|
38
|
-
break;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return result;
|
|
43
|
-
}
|
|
44
|
-
function containsPath(v) {
|
|
45
|
-
return v.indexOf('/') > -1;
|
|
46
|
-
}
|
package/router/index.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.preparedRoutes = exports.default = void 0;
|
|
7
|
-
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _validator = require("../scripts/validator.js");
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
const {
|
|
11
|
-
default: routes
|
|
12
|
-
} = require(`${process.env.src_path}src/js/routes/index.js`);
|
|
13
|
-
/**
|
|
14
|
-
* @description prepares routes from routes defined inside template.
|
|
15
|
-
* Adds path and element key inside each route.
|
|
16
|
-
* @returns returns routes list after modifiing template routes
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
const getRoutes = (0, _validator.validateGetRoutes)(routes) ? routes : [];
|
|
20
|
-
const preparedRoutes = () => {
|
|
21
|
-
return getRoutes()?.map((route, index) => {
|
|
22
|
-
const Component = route.element;
|
|
23
|
-
return {
|
|
24
|
-
path: route.path,
|
|
25
|
-
element: /*#__PURE__*/_react.default.createElement(Component, {
|
|
26
|
-
key: index
|
|
27
|
-
})
|
|
28
|
-
};
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
exports.preparedRoutes = preparedRoutes;
|
|
32
|
-
var _default = exports.default = getRoutes;
|
package/scripts/prepare.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
const {
|
|
4
|
-
spawnSync
|
|
5
|
-
} = require("child_process");
|
|
6
|
-
const path = require("path");
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @description - it creates build and generate types requried for function definations.
|
|
10
|
-
*/
|
|
11
|
-
function prepare() {
|
|
12
|
-
console.log("Running prepare....");
|
|
13
|
-
const dirname = path.resolve(__dirname, "../");
|
|
14
|
-
spawnSync("npm", ["run", "prepare"], {
|
|
15
|
-
cwd: dirname,
|
|
16
|
-
stdio: 'inherit'
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
prepare();
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _path = _interopRequireDefault(require("path"));
|
|
4
|
-
var _moduleAlias = _interopRequireDefault(require("module-alias"));
|
|
5
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
-
const pjp = process.env.src_path + `/package.json`;
|
|
7
|
-
const cfg = `${process.env.src_path}/config/config`;
|
|
8
|
-
// const config = require(cfg)
|
|
9
|
-
// const { _moduleAliases } = require(pjp)
|
|
10
|
-
const config = require(`${process.env.src_path}/config/config`);
|
|
11
|
-
const {
|
|
12
|
-
_moduleAliases
|
|
13
|
-
} = require(`${process.env.src_path}/package.json`);
|
|
14
|
-
|
|
15
|
-
// Add module aliases, but for server aliases (prefix by the `$` symbol), change
|
|
16
|
-
// the directory to match the current build directory (e.g. /dist)
|
|
17
|
-
// This ensures that all alises are properly referencing the babel-built
|
|
18
|
-
// server files
|
|
19
|
-
_moduleAlias.default.addAliases(Object.keys(_moduleAliases || []).reduce((resultMap, aliasName) => {
|
|
20
|
-
const aliasPath = _moduleAliases[aliasName];
|
|
21
|
-
const sym = aliasName[0];
|
|
22
|
-
if (sym === "$") {
|
|
23
|
-
resultMap[aliasName] = _path.default.join(process.env.src_path, aliasPath.split("/").slice(1).join("/"));
|
|
24
|
-
} else if (aliasPath.includes("templates")) {
|
|
25
|
-
resultMap[aliasName] = _path.default.join(process.env.src_path, aliasPath);
|
|
26
|
-
} else {
|
|
27
|
-
resultMap[aliasName] = _path.default.join(process.env.src_path, aliasPath);
|
|
28
|
-
}
|
|
29
|
-
return resultMap;
|
|
30
|
-
}, {}));
|
package/server/mainIndex.js
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _index = require("$server/index.js");
|
|
4
|
-
var _mainServer = require("./mainServer.js");
|
|
5
|
-
var _mainServer2 = _interopRequireDefault(_mainServer);
|
|
6
|
-
var _validator = require("./utils/validator.js");
|
|
7
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
-
// import("../scripts/registerAliases.js")
|
|
9
|
-
const env = process.env.NODE_ENV || "development";
|
|
10
|
-
// function defined on user which needs to be run before server starts
|
|
11
|
-
if ((0, _validator.validatePreInitServer)(_index.preServerInit)) (0, _index.preServerInit)();
|
|
12
|
-
process.on("uncaughtException", (err, origin) => {
|
|
13
|
-
console.log(">>>>", process.stderr.fd);
|
|
14
|
-
console.log(`Caught exception: ${err}\n` + `Exception origin: ${origin}`);
|
|
15
|
-
});
|
|
16
|
-
process.on("SIGINT", function (data) {
|
|
17
|
-
console.log("SIGINT");
|
|
18
|
-
console.log(data);
|
|
19
|
-
process.exit(0);
|
|
20
|
-
});
|
|
21
|
-
process.on("uncaughtExceptionMonitor", (err, origin) => {
|
|
22
|
-
console.log(">>>>>", err, origin);
|
|
23
|
-
});
|
|
24
|
-
process.on("message", function (msg) {
|
|
25
|
-
if (msg == "shutdown") {
|
|
26
|
-
console.log("Closing all connections...");
|
|
27
|
-
setTimeout(function () {
|
|
28
|
-
console.log("Finished closing connections");
|
|
29
|
-
process.exit(0);
|
|
30
|
-
}, 1500);
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
process.loadableConfig = {
|
|
34
|
-
CLIENT_ONLY_RENDER: process.env["CLIENT_ONLY_RENDER"] === "true",
|
|
35
|
-
SERVER_SIDE_RENDER: process.env["SERVER_SIDE_RENDER"] === "true"
|
|
36
|
-
};
|
|
37
|
-
if (env === "development") {
|
|
38
|
-
// In development, we compile css-modules on the fly on the server. This is
|
|
39
|
-
// not necessary in production since we build renderer and server files with
|
|
40
|
-
// webpack and babel.
|
|
41
|
-
// import("css-modules-require-hook").then((methods) => {
|
|
42
|
-
// console.log(">>>>css-modules")
|
|
43
|
-
// methods.default({
|
|
44
|
-
// extensions: [".scss"],
|
|
45
|
-
// generateScopedName: "[name]__[local]",
|
|
46
|
-
// devMode: true,
|
|
47
|
-
// })
|
|
48
|
-
// })
|
|
49
|
-
// Add better stack tracing for promises in dev mode
|
|
50
|
-
process.on("unhandledRejection", r => console.debug(r));
|
|
51
|
-
}
|
|
52
|
-
const port = process.env.PORT || process.env.APPLICATION_PORT || 3000;
|
|
53
|
-
const host = env === "development" ? "localhost" : process.env.DEV_SERVER_HOSTNAME;
|
|
54
|
-
// import("./server.js").then((server) => {
|
|
55
|
-
_mainServer2.default.listen(port, error => {
|
|
56
|
-
if (error) {
|
|
57
|
-
console.log("Server Starting Error");
|
|
58
|
-
} else {
|
|
59
|
-
console.log(`Application server mounted on http://${host}:${port}.`);
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
// })
|
|
64
|
-
|
|
65
|
-
/* eslint-enable */
|
package/server/mainServer.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var _path = require("path");
|
|
7
|
-
var _path2 = _interopRequireDefault(_path);
|
|
8
|
-
var _express = require("express");
|
|
9
|
-
var _express2 = _interopRequireDefault(_express);
|
|
10
|
-
var _bodyParser = require("body-parser");
|
|
11
|
-
var _bodyParser2 = _interopRequireDefault(_bodyParser);
|
|
12
|
-
var _compression = require("compression");
|
|
13
|
-
var _compression2 = _interopRequireDefault(_compression);
|
|
14
|
-
var _cookieParser = require("cookie-parser");
|
|
15
|
-
var _cookieParser2 = _interopRequireDefault(_cookieParser);
|
|
16
|
-
var _expressStaticGzip = require("express-static-gzip");
|
|
17
|
-
var _expressStaticGzip2 = _interopRequireDefault(_expressStaticGzip);
|
|
18
|
-
var _renderer = require("./renderer");
|
|
19
|
-
var _renderer2 = _interopRequireDefault(_renderer);
|
|
20
|
-
var _server = require("$server/server.js");
|
|
21
|
-
var _validator = require("./utils/validator");
|
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
const env = process.env.NODE_ENV || "development";
|
|
24
|
-
const app = (0, _express2.default)();
|
|
25
|
-
|
|
26
|
-
//Use-case: We are using body-parser here for widget-factory,
|
|
27
|
-
//we need to extract the body of request which Native will hit at our end.
|
|
28
|
-
app.use(_bodyParser2.default.json());
|
|
29
|
-
|
|
30
|
-
// This change is added to accommodate “byetstream array”
|
|
31
|
-
// which is octet-stream format coming from android!
|
|
32
|
-
app.use(_bodyParser2.default.raw({
|
|
33
|
-
type: "application/*"
|
|
34
|
-
}));
|
|
35
|
-
|
|
36
|
-
// parse cookies!
|
|
37
|
-
app.use((0, _cookieParser2.default)());
|
|
38
|
-
|
|
39
|
-
// Apply custom midlewares
|
|
40
|
-
if ((0, _validator.validateMiddleware)(_server.addMiddlewares)) (0, _server.addMiddlewares)(app);
|
|
41
|
-
|
|
42
|
-
// gzip
|
|
43
|
-
app.use((0, _compression2.default)());
|
|
44
|
-
|
|
45
|
-
// We upload the assets on our s3 bucket and serve them through our CDN.
|
|
46
|
-
// However if our CDN is down all we have to do is change the PUBLIC_ASSET_PATH in basecamp
|
|
47
|
-
// to "node_server_ip/assets" (Example: http://13.127.237.229:8443/assets) to serve the assets from our node server.
|
|
48
|
-
// When we make production builds on our local system we change the PUBLIC_ASSET_PATH to "http://localhost:3005/assets/".
|
|
49
|
-
// In this case all the asset requests are made to the node server running on our local system and are served locally.
|
|
50
|
-
if (env === "production") {
|
|
51
|
-
app.use("/assets", (0, _expressStaticGzip2.default)(_path2.default.join(__dirname, "../" + process.env.PUBLIC_OUTPUT_PATH), {
|
|
52
|
-
enableBrotli: true,
|
|
53
|
-
orderPreference: ["br", "gzip", "deflate"]
|
|
54
|
-
}), (0, _expressStaticGzip2.default)(_path2.default.join(__dirname, "../src/static/images"), {
|
|
55
|
-
enableBrotli: true,
|
|
56
|
-
orderPreference: ["br", "gzip", "deflate"]
|
|
57
|
-
}), (0, _expressStaticGzip2.default)(_path2.default.join(__dirname, "../src/static/fonts"), {
|
|
58
|
-
enableBrotli: true,
|
|
59
|
-
orderPreference: ["br", "gzip", "deflate"]
|
|
60
|
-
}), (0, _expressStaticGzip2.default)(_path2.default.join(__dirname, "../src/js/lib"), {
|
|
61
|
-
enableBrotli: true,
|
|
62
|
-
orderPreference: ["br", "gzip", "deflate"]
|
|
63
|
-
}));
|
|
64
|
-
} else {
|
|
65
|
-
app.use("/assets", _express2.default.static(_path2.default.join(__dirname, "../" + process.env.PUBLIC_OUTPUT_PATH)), _express2.default.static(_path2.default.join(__dirname, `../${process.env.APPLICATION}/src/static/images`)), _express2.default.static(_path2.default.join(__dirname, `../${process.env.APPLICATION}/src/static/fonts`)), _express2.default.static(_path2.default.join(__dirname, `../${process.env.APPLICATION}/src/js/lib`)));
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// handles document request
|
|
69
|
-
app.use("*", _renderer2.default);
|
|
70
|
-
exports.default = app;
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUserAgentDetails = undefined;
|
|
7
|
-
var _uaParserJs = require("ua-parser-js");
|
|
8
|
-
var _uaParserJs2 = _interopRequireDefault(_uaParserJs);
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
11
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
12
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
14
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
15
|
-
const googleBots = {
|
|
16
|
-
"APIs-Google": "APIs-Google",
|
|
17
|
-
AdSense: "Mediapartners-Google",
|
|
18
|
-
"AdsBot Mobile Web Android": "AdsBot-Google-Mobile",
|
|
19
|
-
"AdsBot Mobile Web": "AdsBot-Google-Mobile",
|
|
20
|
-
AdsBot: "AdsBot-Google",
|
|
21
|
-
"Mobile AdSense": "Mediapartners-Google",
|
|
22
|
-
"Mobile Apps Android": "AdsBot-Google-Mobile-Apps",
|
|
23
|
-
Feedfetcher: "FeedFetcher-Google",
|
|
24
|
-
"Google Read Aloud": "Google-Read-Aloud",
|
|
25
|
-
"Duplex on the Web": "DuplexWeb-Google",
|
|
26
|
-
"Google Favicon": "Google Favicon",
|
|
27
|
-
"Web Light": "googleweblight",
|
|
28
|
-
"Amp crawler": "Google-AMPHTM",
|
|
29
|
-
Googlebot: "Googlebot"
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* check if user agent contains bot data
|
|
34
|
-
* @param {string} ua - user agent
|
|
35
|
-
* @return {string|null}
|
|
36
|
-
*/
|
|
37
|
-
const getGoogleBot = ua => {
|
|
38
|
-
for (let key in googleBots) {
|
|
39
|
-
if (ua.includes(googleBots[key])) return key;
|
|
40
|
-
}
|
|
41
|
-
return null;
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* returns object which contains google bot and user-agent info
|
|
46
|
-
* @param {string} ua - user agent
|
|
47
|
-
* @return {object} - returns user agent
|
|
48
|
-
*/
|
|
49
|
-
const getUserAgentDetails = exports.getUserAgentDetails = ua => {
|
|
50
|
-
const agentDetails = (0, _uaParserJs2.default)(ua);
|
|
51
|
-
const googleBot = getGoogleBot(ua);
|
|
52
|
-
return _objectSpread(_objectSpread({}, agentDetails), {}, {
|
|
53
|
-
googleBot
|
|
54
|
-
});
|
|
55
|
-
};
|
package/types/caching.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/types/config/config.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
declare namespace _default {
|
|
2
|
-
let S3_BUCKET: string;
|
|
3
|
-
let S3_FOLDER: string;
|
|
4
|
-
let CDN_ASSET_PATH: string;
|
|
5
|
-
let APPLICATION_PORT: string;
|
|
6
|
-
let APPLICATION_BASE_URL: string;
|
|
7
|
-
let SERVER_PATH: string;
|
|
8
|
-
let OUTPUT_PATH: string;
|
|
9
|
-
let PUBLIC_OUTPUT_PATH: string;
|
|
10
|
-
let PUBLIC_ASSET_PATH: string;
|
|
11
|
-
let LOCAL_ASSET_PATH: string;
|
|
12
|
-
let EXTERNAL_BASE_URL: string;
|
|
13
|
-
let DEV_SERVER_PORT: number;
|
|
14
|
-
let DEV_SERVER_HOSTNAME: string;
|
|
15
|
-
let DEV_SERVER_HOST_URL: string;
|
|
16
|
-
let ENV_NAME: string;
|
|
17
|
-
let BUILD_ENV: string;
|
|
18
|
-
}
|
|
19
|
-
export default _default;
|
package/types/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./server/renderer/document/index";
|
package/types/logger/index.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description Logger library with rotational strategy. Creates a logs folder in root.
|
|
3
|
-
* With debug, error and info log directories with their respective log files.
|
|
4
|
-
*
|
|
5
|
-
* @format Logstash with timestamp
|
|
6
|
-
* @param config { @enableDebugLogs: Bool // default: true }
|
|
7
|
-
* @returns loggerInstance
|
|
8
|
-
*
|
|
9
|
-
*/
|
|
10
|
-
export function configureLogger(config?: any): {
|
|
11
|
-
debug: () => void;
|
|
12
|
-
error: (msg: any) => void;
|
|
13
|
-
info: (msg: any) => void;
|
|
14
|
-
};
|
package/types/reducer/index.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
export default createReducerManager;
|
|
2
|
-
/**
|
|
3
|
-
* @description A 'Reducer Manager' object, which keeps track of all the registered reducers and exposes a reduce() function. For detailed info :- https://redux.js.org/usage/code-splitting#using-a-reducer-manager
|
|
4
|
-
*/
|
|
5
|
-
declare function createReducerManager(): {
|
|
6
|
-
getReducerMap: () => import("redux").Reducer<import("redux").CombinedState<{
|
|
7
|
-
shellReducer: unknown;
|
|
8
|
-
loadableConfigReducer: never;
|
|
9
|
-
}>, import("redux").Action<any>>;
|
|
10
|
-
reduce: (state: any, action: any) => import("redux").CombinedState<{
|
|
11
|
-
shellReducer: unknown;
|
|
12
|
-
loadableConfigReducer: never;
|
|
13
|
-
}>;
|
|
14
|
-
add: (reducer: any) => import("redux").Reducer<import("redux").CombinedState<{
|
|
15
|
-
shellReducer: unknown;
|
|
16
|
-
loadableConfigReducer: never;
|
|
17
|
-
}>, import("redux").Action<any>> | undefined;
|
|
18
|
-
remove: (key: any) => import("redux").Reducer<import("redux").CombinedState<{
|
|
19
|
-
shellReducer: unknown;
|
|
20
|
-
loadableConfigReducer: never;
|
|
21
|
-
}>, import("redux").Action<any>> | undefined;
|
|
22
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export default loadableConfigReducer;
|
|
2
|
-
/** loads loadable config reducer
|
|
3
|
-
* @param {object} defaultState - default state in reducer
|
|
4
|
-
* @return {object} reducer default state
|
|
5
|
-
*/
|
|
6
|
-
declare function loadableConfigReducer(state?: {
|
|
7
|
-
SERVER_SIDE_RENDER: boolean;
|
|
8
|
-
CLIENT_ONLY_RENDER: boolean;
|
|
9
|
-
}): object;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export default ServerRouter;
|
|
2
|
-
/**
|
|
3
|
-
* @description return
|
|
4
|
-
* @param {object} reduxData - redux data
|
|
5
|
-
* @returns returns server routes
|
|
6
|
-
*/
|
|
7
|
-
declare function ServerRouter(reduxData: object): import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null;
|
package/types/router/index.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export function preparedRoutes(): any;
|
|
2
|
-
export default getRoutes;
|
|
3
|
-
/**
|
|
4
|
-
* @description prepares routes from routes defined inside template.
|
|
5
|
-
* Adds path and element key inside each route.
|
|
6
|
-
* @returns returns routes list after modifiing template routes
|
|
7
|
-
*/
|
|
8
|
-
declare const getRoutes: any;
|
package/types/router.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "@tata1mg/router";
|
package/types/scripts/build.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/types/scripts/serve.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/types/scripts/start.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export function validatePreInitServer(fn: any): true | undefined;
|
|
2
|
-
export function validateMiddleware(fn: any): true | undefined;
|
|
3
|
-
export function validateReducerFunction(fn: any): true | undefined;
|
|
4
|
-
export function validateConfigFile(obj: any): true | undefined;
|
|
5
|
-
export function validatePackageJson(obj: any): true | undefined;
|
|
6
|
-
export function validateModuleAlias(obj: any): true | undefined;
|
|
7
|
-
export function validateConfigureStore(fn: any): true | undefined;
|
|
8
|
-
export function validateGetRoutes(fn: any): true | undefined;
|
|
9
|
-
export function validateCustomDocument(fn: any): true | undefined;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Body component which will be used in page component
|
|
3
|
-
* @param {object} initialState - redux store state
|
|
4
|
-
* @param {object} statusCode - api config present in cache list
|
|
5
|
-
* @param {object} firstFoldCss - user defined components for meta tags input
|
|
6
|
-
* @param {object} firstFoldJS - user defined components for meta tags input
|
|
7
|
-
* @param {object} jsx - user defined components for meta tags input
|
|
8
|
-
* @param {object} fetcherData - router fetched data
|
|
9
|
-
*/
|
|
10
|
-
export function Body(props: any): React.JSX.Element;
|
|
11
|
-
import React from "react";
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Head component which will be used in page rendering
|
|
3
|
-
* @param {string} pageCss - includes all styles for page css
|
|
4
|
-
* @param {object} pageJS - async scripts for loading chunks
|
|
5
|
-
* @param {function} metaTagFunction - user defined function which returns meta tags in array
|
|
6
|
-
* @param {boolean} isBot - checks if request is made by bot
|
|
7
|
-
* @param {string} publicAssetPath - public asset path for assets
|
|
8
|
-
* @param {object} fetcherData - router fetched data
|
|
9
|
-
*/
|
|
10
|
-
export function Head(props: any): React.JSX.Element;
|
|
11
|
-
import React from "react";
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Stores css chunks styles into cache in string format
|
|
3
|
-
* @param {string} key - router path
|
|
4
|
-
* @param {object} data - css elements array extracted through loadable chunk extracter
|
|
5
|
-
*/
|
|
6
|
-
export function cacheCSS(key: string, data: object): void;
|
|
7
|
-
/**
|
|
8
|
-
* Stores javascript into cache
|
|
9
|
-
* @param {string} key - router path
|
|
10
|
-
* @param {object} data - js elements array extracted through loadable chunk extracter
|
|
11
|
-
*/
|
|
12
|
-
export function cacheJS(key: string, data: object): void;
|
|
13
|
-
/**
|
|
14
|
-
* stores css and js in cache
|
|
15
|
-
* @param {object} res - response object
|
|
16
|
-
* @param {string} route - route path
|
|
17
|
-
*/
|
|
18
|
-
export default function _default(res: object, route: string): void;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
declare namespace _default {
|
|
2
|
-
export { renderStart };
|
|
3
|
-
export { renderEnd };
|
|
4
|
-
}
|
|
5
|
-
export default _default;
|
|
6
|
-
/**
|
|
7
|
-
* returns data which will be used in head component for page rendering
|
|
8
|
-
* @param {string} pageCss - includes all styles for page css
|
|
9
|
-
* @param {string} pageJS - async scripts for loading chunks
|
|
10
|
-
* @param {function} metaTagFunction - user defined function which returns meta tags in array
|
|
11
|
-
* @param {boolean} isBot - checks if request is made by bot
|
|
12
|
-
* @param {object} fetcherData - router fetched data
|
|
13
|
-
*/
|
|
14
|
-
declare function renderStart(pageCss: string, pageJS: string, metaTagFunction: Function, isBot: boolean, fetcherData: object): {
|
|
15
|
-
pageCss: string;
|
|
16
|
-
pageJS: string;
|
|
17
|
-
metaTagFunction: Function;
|
|
18
|
-
isBot: boolean;
|
|
19
|
-
publicAssetPath: string;
|
|
20
|
-
fetcherData: object;
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* returns data which will be used in body component for page rendering
|
|
24
|
-
* @param {object} webExtractor - loadable object which holds chunking function
|
|
25
|
-
* @param {string} initialState - reducer initial state
|
|
26
|
-
* @param {function} res - response object
|
|
27
|
-
* @param {boolean} jsx - jsx which needs to be render on server side
|
|
28
|
-
* @param {string|number|null} errorCode - error code
|
|
29
|
-
* @param {object} fetcherData - router fetched data
|
|
30
|
-
*/
|
|
31
|
-
declare function renderEnd(webExtractor: object, initialState: string | undefined, res: Function, jsx: boolean, errorCode: string | number | null, fetcherData: object): {
|
|
32
|
-
initialState: string;
|
|
33
|
-
firstFoldCss: string;
|
|
34
|
-
firstFoldJS: string;
|
|
35
|
-
jsx: boolean;
|
|
36
|
-
errorCode: string | number | null;
|
|
37
|
-
fetcherData: object;
|
|
38
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export function getUserAgentDetails(ua: string): object;
|
package/types/store/index.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export default configureStore;
|
|
2
|
-
/**
|
|
3
|
-
* Function that initializes the store with the initialstate and adds middlewares that can be used during action dispatch
|
|
4
|
-
* It returns different store based on NODE_ENV for eg: production store and development store.
|
|
5
|
-
* @param {object} initialState Default state
|
|
6
|
-
* @param {object} cookies additional headers if needed
|
|
7
|
-
* @param {object} requestObj additional information
|
|
8
|
-
* @param {object} customHeaders custom headers which needs to be used in axios instance
|
|
9
|
-
* @return {object} redux configured store
|
|
10
|
-
*/
|
|
11
|
-
declare function configureStore(initialState: object, cookies: object, requestObj: object, customHeaders: object): object;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Function that initializes the store with the initialstate and adds middlewares that can be used during action dispatch
|
|
3
|
-
* @param {object} initialState Default state
|
|
4
|
-
* @param {object} cookies additional headers if needed
|
|
5
|
-
* @param {object} requestObj additional information
|
|
6
|
-
* @return {object} the store itself
|
|
7
|
-
*/
|
|
8
|
-
export default function configureStore(initialState: object, cookies: object, requestObj: object, customHeaders: any): object;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Function that initializes the store with the initialstate and adds middlewares that can be used during action dispatch
|
|
3
|
-
* @param {object} initialState Default state
|
|
4
|
-
* @param {object} cookies additional headers if needed
|
|
5
|
-
* @param {object} requestObj additional information
|
|
6
|
-
* @return {object} the store itself
|
|
7
|
-
*/
|
|
8
|
-
export default function configureStore(initialState: object, cookies: object, requestObj: object, customHeaders: any): object;
|