qumra-engine 2.0.76 → 2.0.78

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.
@@ -5,6 +5,6 @@ declare const _default: {
5
5
  run({ ctx, env }: {
6
6
  ctx: any;
7
7
  env: nunjucks.Environment;
8
- }, templateKey: string): nunjucks.runtime.SafeString;
8
+ }, templateKey: string): "" | nunjucks.runtime.SafeString;
9
9
  };
10
10
  export default _default;
@@ -16,6 +16,10 @@ exports.default = new (class WidgetExtension {
16
16
  return new nodes.CallExtension(this, "run", args);
17
17
  }
18
18
  run({ ctx, env }, templateKey) {
19
+ const widgetPreview = env.getGlobal("widget");
20
+ if (widgetPreview) {
21
+ return '';
22
+ }
19
23
  if (templateKey === "main") {
20
24
  return new nunjucks_1.default.runtime.SafeString(`
21
25
  <div style="padding: 12px; background-color: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; border-radius: 4px; margin: 8px 0;">
@@ -6,6 +6,7 @@ interface Options {
6
6
  setRender?: CacheSetter;
7
7
  app?: App;
8
8
  renderApi?: string | null;
9
+ market?: string;
9
10
  }
10
- export declare const initMiddleware: ({ mode, getRender, setRender, app, renderApi }: Options) => (req: Request, res: Response, next: NextFunction) => void;
11
+ export declare const initMiddleware: ({ mode, getRender, setRender, app, renderApi, market, }: Options) => (req: Request, res: Response, next: NextFunction) => void;
11
12
  export {};
@@ -2,10 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initMiddleware = void 0;
4
4
  const qumra_utils_1 = require("qumra-utils");
5
- const initMiddleware = ({ mode, getRender, setRender, app, renderApi }) => {
5
+ const initMiddleware = ({ mode, getRender, setRender, app, renderApi, market, }) => {
6
6
  return (req, res, next) => {
7
7
  res.locals.mode = mode;
8
8
  res.locals.cache = {};
9
+ res.locals.clientIp = req.headers["x-forwarded-for"] || req.socket.remoteAddress;
10
+ if (market) {
11
+ res.locals.market = market;
12
+ }
9
13
  const fullUrl = mode === "production"
10
14
  ? req.protocol + "://" + req.get("host") + req.originalUrl
11
15
  : app?.url + req.originalUrl;
@@ -48,6 +48,8 @@ const prepareDataMiddleware = (req, res, next) => {
48
48
  "Content-Type": "application/json",
49
49
  Authorization,
50
50
  qdid: qdid,
51
+ "client-ip": res.locals.clientIp || "",
52
+ "market": res.locals.market || "",
51
53
  },
52
54
  })
53
55
  .then((engineResponse) => {
@@ -8,6 +8,7 @@ interface IStartEngine {
8
8
  themesRepo?: string;
9
9
  themeId?: string | null;
10
10
  currentApp?: App;
11
+ market?: string;
11
12
  }
12
- declare const startEngine: ({ renderApi, mode, getRender, setRender, port, themesRepo, themeId, currentApp, }: IStartEngine) => Promise<void>;
13
+ declare const startEngine: ({ renderApi, mode, getRender, setRender, port, themesRepo, themeId, currentApp, market, }: IStartEngine) => Promise<void>;
13
14
  export default startEngine;
@@ -21,7 +21,7 @@ const express_session_1 = __importDefault(require("express-session"));
21
21
  const printServerLog_1 = require("./utils/printServerLog");
22
22
  const cookie_parser_1 = __importDefault(require("cookie-parser"));
23
23
  const routers_1 = __importDefault(require("./routers"));
24
- const startEngine = async ({ renderApi, mode, getRender, setRender, port = 3000, themesRepo, themeId = null, currentApp, }) => {
24
+ const startEngine = async ({ renderApi, mode, getRender, setRender, port = 3000, themesRepo, themeId = null, currentApp, market, }) => {
25
25
  try {
26
26
  const app = (0, express_1.default)();
27
27
  app.use((0, cookie_parser_1.default)());
@@ -68,7 +68,7 @@ const startEngine = async ({ renderApi, mode, getRender, setRender, port = 3000,
68
68
  }
69
69
  next();
70
70
  });
71
- app.use((0, init_middleware_1.initMiddleware)({ mode, getRender, setRender, app: currentApp, renderApi }));
71
+ app.use((0, init_middleware_1.initMiddleware)({ mode, getRender, setRender, app: currentApp, renderApi, market }));
72
72
  const avilablePort = await (0, findAvailablePort_1.findAvailablePort)(port);
73
73
  if (mode === "devlopment") {
74
74
  const staticPath = path_1.default.join(process.cwd(), "assets");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qumra-engine",
3
- "version": "2.0.76",
3
+ "version": "2.0.78",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {