@metricinsights/pp-dev 0.2.0 → 0.3.0

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.
Files changed (43) hide show
  1. package/README.md +49 -15
  2. package/dist/api/assets.d.ts +2 -2
  3. package/dist/api/assets.js +3 -3
  4. package/dist/api/assets.js.map +1 -1
  5. package/dist/api/base.d.ts +5 -0
  6. package/dist/api/base.js +7 -0
  7. package/dist/api/base.js.map +1 -0
  8. package/dist/api/page.d.ts +2 -4
  9. package/dist/api/page.js +2 -5
  10. package/dist/api/page.js.map +1 -1
  11. package/dist/cli.js +103 -0
  12. package/dist/cli.js.map +1 -1
  13. package/dist/index.d.ts +4 -0
  14. package/dist/index.js +40 -8
  15. package/dist/index.js.map +1 -1
  16. package/dist/lib/helpers/content-encoding.helper.d.ts +3 -0
  17. package/dist/lib/helpers/content-encoding.helper.js +26 -0
  18. package/dist/lib/helpers/content-encoding.helper.js.map +1 -0
  19. package/dist/lib/helpers/server.d.ts +14 -0
  20. package/dist/lib/helpers/server.js +40 -0
  21. package/dist/lib/helpers/server.js.map +1 -0
  22. package/dist/lib/helpers/url.helper.d.ts +4 -0
  23. package/dist/lib/helpers/url.helper.js +13 -0
  24. package/dist/lib/helpers/url.helper.js.map +1 -1
  25. package/dist/lib/load-pp-data.middleware.d.ts +5 -0
  26. package/dist/lib/load-pp-data.middleware.js +28 -0
  27. package/dist/lib/load-pp-data.middleware.js.map +1 -0
  28. package/dist/lib/pp-redirect.middleware.d.ts +3 -0
  29. package/dist/lib/pp-redirect.middleware.js +21 -0
  30. package/dist/lib/pp-redirect.middleware.js.map +1 -0
  31. package/dist/lib/proxy-cache.middleware.d.ts +5 -4
  32. package/dist/lib/proxy-cache.middleware.js +5 -5
  33. package/dist/lib/proxy-cache.middleware.js.map +1 -1
  34. package/dist/lib/proxy-pass.middleware.d.ts +2 -1
  35. package/dist/lib/proxy-pass.middleware.js +2 -2
  36. package/dist/lib/proxy-pass.middleware.js.map +1 -1
  37. package/dist/lib/rewrite-response.middleware.d.ts +6 -0
  38. package/dist/lib/rewrite-response.middleware.js +23 -0
  39. package/dist/lib/rewrite-response.middleware.js.map +1 -0
  40. package/dist/plugin.d.ts +2 -0
  41. package/dist/plugin.js +20 -62
  42. package/dist/plugin.js.map +1 -1
  43. package/package.json +7 -3
package/README.md CHANGED
@@ -26,11 +26,11 @@ Config examples:
26
26
  // pp-dev.config.js
27
27
 
28
28
  /**
29
- * @type {import('@metricinsights/pp-dev').PPDevConfig}
30
- */
29
+ * @type {import('@metricinsights/pp-dev').PPDevConfig}
30
+ */
31
31
  module.exports = {
32
- backendBaseURL: 'https://example.metricinsights.com',
33
- portalPageId: 1,
32
+ backendBaseURL: 'https://example.metricinsights.com',
33
+ portalPageId: 1,
34
34
  };
35
35
  ```
36
36
 
@@ -42,8 +42,8 @@ portalPageId: 1,
42
42
  import { PPDevConfig } from '@metricinsights/pp-dev';
43
43
 
44
44
  const config: PPDevConfig = {
45
- backendBaseURL: 'https://example.metricinsights.com',
46
- portalPageId: 1,
45
+ backendBaseURL: 'https://example.metricinsights.com',
46
+ portalPageId: 1,
47
47
  };
48
48
 
49
49
  export default config;
@@ -53,8 +53,8 @@ export default config;
53
53
 
54
54
  ```json
55
55
  {
56
- "backendBaseURL": "https://example.metricinsights.com",
57
- "portalPageId": 1
56
+ "backendBaseURL": "https://example.metricinsights.com",
57
+ "portalPageId": 1
58
58
  }
59
59
  ```
60
60
 
@@ -62,13 +62,13 @@ export default config;
62
62
 
63
63
  ```json
64
64
  {
65
- "name": "<project-name>",
66
- "version": "1.0.0",
67
- "scripts": {},
68
- "pp-dev": {
69
- "backendBaseURL": "https://example.metricinsights.com",
70
- "portalPageId": 1
71
- }
65
+ "name": "<project-name>",
66
+ "version": "1.0.0",
67
+ "scripts": {},
68
+ "pp-dev": {
69
+ "backendBaseURL": "https://example.metricinsights.com",
70
+ "portalPageId": 1
71
+ }
72
72
  }
73
73
  ```
74
74
 
@@ -115,6 +115,22 @@ Example: `true`
115
115
 
116
116
  Description: Disables template variables transforming. Used when you develop the portal page without a template
117
117
 
118
+ #### `enableProxyCache`
119
+
120
+ Type: Boolean
121
+
122
+ Default: `true`
123
+
124
+ Description: Enables proxy cache. If you want to disable proxy cache, you need to set this option to `false`
125
+
126
+ #### `proxyCacheTTL`
127
+
128
+ Type: Number
129
+
130
+ Default: `10 * 60 * 1000`
131
+
132
+ Description: Defines proxy cache TTL in milliseconds
133
+
118
134
  ### CLI API description
119
135
 
120
136
  - `pp-dev help` - show CLI's help
@@ -146,3 +162,21 @@ Description: Disables template variables transforming. Used when you develop the
146
162
  Also, you may need to add `type="module"` to every script that is added by the `script` tag with the `src` property.
147
163
  Actually would be good to have only one `script` tag with the `src` tag.
148
164
  Every other JS file will be imported with construction like this `import helper from './helpers';`
165
+
166
+ ## [Next.js](https://nextjs.org/) support
167
+
168
+ If you want to use Portal Page helper with Next.js, you need to add pp-dev config to your root directory.
169
+
170
+ Then you need to change your `dev` script in `package.json` to `pp-dev next`.
171
+
172
+ The last step is to wrap your next config with `withPPDev` function.
173
+
174
+ ```javascript
175
+ // next.config.js
176
+
177
+ const { withPPDev } = require('@metricinsights/pp-dev');
178
+
179
+ module.exports = withPPDev({
180
+ // your next config
181
+ });
182
+ ```
@@ -1,8 +1,8 @@
1
1
  /// <reference types="node" />
2
2
  import { Axios } from 'axios';
3
3
  import { Headers } from './constants.js';
4
- export declare class AssetsAPI {
5
- private axios;
4
+ import { BaseAPI } from './base.js';
5
+ export declare class AssetsAPI extends BaseAPI {
6
6
  constructor(axios: Axios);
7
7
  downloadPageAssets(portalPageId: number | string, headers?: Headers): Promise<Buffer>;
8
8
  uploadPageAssets(portalPageId: number | string, file: Buffer, headers?: Headers): Promise<{
@@ -1,8 +1,8 @@
1
1
  import { FormData, File } from 'formdata-node';
2
- export class AssetsAPI {
3
- axios;
2
+ import { BaseAPI } from './base.js';
3
+ export class AssetsAPI extends BaseAPI {
4
4
  constructor(axios) {
5
- this.axios = axios;
5
+ super(axios);
6
6
  }
7
7
  async downloadPageAssets(portalPageId, headers) {
8
8
  return this.axios
@@ -1 +1 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/api/assets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/api/assets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Axios } from 'axios';
2
+ export declare class BaseAPI {
3
+ protected axios: Axios;
4
+ constructor(axios: Axios);
5
+ }
@@ -0,0 +1,7 @@
1
+ export class BaseAPI {
2
+ axios;
3
+ constructor(axios) {
4
+ this.axios = axios;
5
+ }
6
+ }
7
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/api/base.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,OAAO;IACR,KAAK,CAAQ;IAEvB,YAAY,KAAY;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
- import { Axios } from 'axios';
2
1
  import { Headers } from './constants.js';
2
+ import { BaseAPI } from './base.js';
3
3
  export interface Page {
4
4
  name: string;
5
5
  enabled: 'Y' | 'N';
@@ -8,9 +8,7 @@ export interface Page {
8
8
  tags?: string;
9
9
  template?: string;
10
10
  }
11
- export declare class PageAPI {
12
- private axios;
13
- constructor(axios: Axios);
11
+ export declare class PageAPI extends BaseAPI {
14
12
  getAll(headers?: Headers): Promise<Page[]>;
15
13
  get(id: number | string, headers?: Headers): Promise<Page>;
16
14
  getPageContent(internalPageName: string, headers?: Headers): Promise<string>;
package/dist/api/page.js CHANGED
@@ -1,8 +1,5 @@
1
- export class PageAPI {
2
- axios;
3
- constructor(axios) {
4
- this.axios = axios;
5
- }
1
+ import { BaseAPI } from './base.js';
2
+ export class PageAPI extends BaseAPI {
6
3
  async getAll(headers) {
7
4
  return (await this.axios.get('/api/page', {
8
5
  withCredentials: true,
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../src/api/page.ts"],"names":[],"mappings":"AAYA,MAAM,OAAO,OAAO;IACV,KAAK,CAAQ;IAErB,YAAY,KAAY;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAiB;QAC5B,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,WAAW,EAAE;YACnD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU;gBAC3B,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,GAAG;aACb,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAmB,EAAE,OAAiB;QAC9C,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAiB,gBAAgB,EAAE,EAAE,EAAE;YACzD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,cAAc,EAAE,kBAAkB;aACnC,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,gBAAwB,EAAE,OAAiB;QAC9D,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAS,MAAM,gBAAgB,EAAE,EAAE;YACrD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,WAAW;gBACnB,cAAc,EAAE,kBAAkB;aACnC,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC;IACT,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU,EAAE,OAAiB;QACxC,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAiB,WAAW,EAAE,IAAI,EAAE;YACvD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,cAAc,EAAE,kBAAkB;aACnC,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../src/api/page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,MAAM,OAAO,OAAQ,SAAQ,OAAO;IAClC,KAAK,CAAC,MAAM,CAAC,OAAiB;QAC5B,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,WAAW,EAAE;YACnD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU;gBAC3B,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,GAAG;aACb,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAmB,EAAE,OAAiB;QAC9C,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAiB,gBAAgB,EAAE,EAAE,EAAE;YACzD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,cAAc,EAAE,kBAAkB;aACnC,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,gBAAwB,EAAE,OAAiB;QAC9D,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAS,MAAM,gBAAgB,EAAE,EAAE;YACrD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,WAAW;gBACnB,cAAc,EAAE,kBAAkB;aACnC,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC;IACT,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU,EAAE,OAAiB;QACxC,OAAO,CACL,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAiB,WAAW,EAAE,IAAI,EAAE;YACvD,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,cAAc,EAAE,kBAAkB;aACnC,CAAC;SACH,CAAC,CACH,CAAC,IAAI,CAAC,IAAI,CAAC;IACd,CAAC;CACF"}
package/dist/cli.js CHANGED
@@ -7,6 +7,15 @@ import { VERSION } from './constants.js';
7
7
  import { bindShortcuts } from './shortcuts.js';
8
8
  import { getViteConfig } from './index.js';
9
9
  import { mergeConfig, build, optimizeDeps, resolveConfig, preview, createLogger, loadConfigFromFile, } from 'vite';
10
+ import { parse } from 'url';
11
+ import { initRewriteResponse } from './lib/rewrite-response.middleware.js';
12
+ import { initPPRedirect } from './lib/pp-redirect.middleware.js';
13
+ import { MiAPI } from './lib/pp.middleware.js';
14
+ import { initProxyCache } from './lib/proxy-cache.middleware.js';
15
+ import proxyPassMiddleware from './lib/proxy-pass.middleware.js';
16
+ import { initLoadPPData } from './lib/load-pp-data.middleware.js';
17
+ import { cutUrlParams, urlReplacer } from './lib/helpers/url.helper.js';
18
+ import { createDevServer } from './lib/helpers/server.js';
10
19
  const cli = cac('pp-dev');
11
20
  const colors = createColors();
12
21
  let profileSession = global.__pp_dev_profile_session;
@@ -154,6 +163,100 @@ cli
154
163
  process.exit(1);
155
164
  }
156
165
  });
166
+ cli
167
+ .command('next [root]', 'start dev server')
168
+ .alias('next-serve')
169
+ .alias('next-dev')
170
+ .option('--host [host]', `[string] specify hostname`)
171
+ .option('--port <port>', `[number] specify port`, { default: 3000 })
172
+ .option('--https', `[boolean] use TLS + HTTP/2`)
173
+ .option('--open [path]', `[boolean | string] open browser on startup`)
174
+ .option('--cors', `[boolean] enable CORS`)
175
+ .option('--strictPort', `[boolean] exit if specified port is already in use`)
176
+ .option('--force', `[boolean] force the optimizer to ignore the cache and re-bundle`)
177
+ .action(async (root, options) => {
178
+ filterDuplicateOptions(options);
179
+ const { default: next } = await import('next');
180
+ const server = createDevServer(options.logLevel);
181
+ const opts = cleanOptions(options);
182
+ const app = next({ dev: true, hostname: opts.host, port: opts.port });
183
+ const handle = app.getRequestHandler();
184
+ await app.prepare();
185
+ const nextServer = (await app.getServer());
186
+ let base = nextServer.nextConfig.basePath;
187
+ if (!base.endsWith('/')) {
188
+ base += '/';
189
+ }
190
+ const baseWithoutTrailingSlash = base.substring(0, base.lastIndexOf('/'));
191
+ const templateName = nextServer.nextConfig.serverRuntimeConfig.templateName;
192
+ const ppDevConfig = nextServer.nextConfig.serverRuntimeConfig.ppDevConfig;
193
+ const { backendBaseURL, portalPageId, templateLess = true, enableProxyCache = true, miHudLess = true, proxyCacheTTL = 10 * 60 * 1000, } = ppDevConfig;
194
+ server.use(initPPRedirect(base, templateName));
195
+ if (backendBaseURL) {
196
+ const baseUrlHost = new URL(backendBaseURL).host;
197
+ const mi = new MiAPI(backendBaseURL, {
198
+ headers: {
199
+ host: baseUrlHost,
200
+ referer: backendBaseURL,
201
+ origin: backendBaseURL.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i, '$1$2'),
202
+ },
203
+ portalPageId,
204
+ templateLess,
205
+ });
206
+ if (enableProxyCache) {
207
+ let ttl = +proxyCacheTTL;
208
+ if (!ttl || Number.isNaN(ttl) || ttl < 0) {
209
+ ttl = 10 * 60 * 1000;
210
+ }
211
+ server.use(initProxyCache({ devServer: server, ttl }));
212
+ }
213
+ server.use(proxyPassMiddleware({
214
+ devServer: server,
215
+ baseURL: backendBaseURL,
216
+ proxyIgnore: ['/@vite', '/@metricinsights', '/@', baseWithoutTrailingSlash],
217
+ }));
218
+ const isIndexRegExp = new RegExp(`^((${base})|/)$`);
219
+ server.use(initLoadPPData(isIndexRegExp, mi, ppDevConfig));
220
+ server.use(initRewriteResponse((url) => {
221
+ return isIndexRegExp.test(cutUrlParams(url));
222
+ }, (response, req) => {
223
+ return Buffer.from(urlReplacer(baseUrlHost, req.headers.host ?? '', mi.buildPage(response, miHudLess)));
224
+ }));
225
+ }
226
+ server.all('*', (req, res) => {
227
+ const parsedUrl = parse(req.url, true);
228
+ handle(req, res, parsedUrl);
229
+ });
230
+ try {
231
+ await new Promise((resolve) => {
232
+ if (opts.host) {
233
+ resolve(server.listen(opts.port, opts.host, () => {
234
+ }));
235
+ }
236
+ else {
237
+ resolve(server.listen(opts.port, () => {
238
+ }));
239
+ }
240
+ });
241
+ const info = server.config.logger.info;
242
+ const ppDevStartTime = global.__pp_dev_start_time ?? false;
243
+ const startupDurationString = ppDevStartTime
244
+ ? colors.dim(`ready in ${colors.reset(colors.bold(Math.ceil(performance.now() - ppDevStartTime)))} ms`)
245
+ : '';
246
+ info(`\n ${colors.green(`${colors.bold('PP-DEV')} v${VERSION}`)} ${startupDurationString}\n`, {
247
+ clear: true,
248
+ });
249
+ server.printUrls(base);
250
+ }
251
+ catch (e) {
252
+ const logger = createLogger(options.logLevel);
253
+ logger.error(colors.red(`error when starting dev server:\n${e.stack}`), {
254
+ error: e,
255
+ });
256
+ stopProfiler(logger.info);
257
+ process.exit(1);
258
+ }
259
+ });
157
260
  cli
158
261
  .command('build [root]', 'build for production')
159
262
  .option('--target <target>', `[string] transpile target (default: 'modules')`)
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { InlineConfig } from 'vite';
2
2
  import { VitePPDevOptions } from './plugin.js';
3
+ import type { NextConfig } from 'next';
3
4
  export type PPDevConfig = Omit<VitePPDevOptions, 'templateName'>;
4
5
  export type PPWatchConfig = {
5
6
  baseURL: string;
@@ -7,3 +8,6 @@ export type PPWatchConfig = {
7
8
  };
8
9
  export declare function getConfig(): Promise<PPDevConfig>;
9
10
  export declare function getViteConfig(): Promise<InlineConfig>;
11
+ export declare function withPPDev(nextjsConfig: NextConfig, ppDevConfig?: PPDevConfig): (phase: string, nextConfig?: {
12
+ defaultConfig?: any;
13
+ }) => Promise<NextConfig>;
package/dist/index.js CHANGED
@@ -7,6 +7,7 @@ import { pathToFileURL } from 'url';
7
7
  import { PP_WATCH_CONFIG_NAMES, PP_DEV_CONFIG_NAMES } from './constants.js';
8
8
  import { clientInjectionPlugin } from './plugins/client-injection-plugin.js';
9
9
  import header from './banner/header.js';
10
+ import { PHASE_DEVELOPMENT_SERVER } from 'next/constants.js';
10
11
  async function loadTsConfig(filePath) {
11
12
  const cwd = process.cwd();
12
13
  let isESM = false;
@@ -79,6 +80,18 @@ async function loadConfig(dirFiles, configNames) {
79
80
  }
80
81
  return null;
81
82
  }
83
+ function getPkg() {
84
+ const cwd = process.cwd();
85
+ try {
86
+ return JSON.parse(readFileSync(path.resolve(cwd, 'package.json'), {
87
+ encoding: 'utf-8',
88
+ flag: 'r',
89
+ }));
90
+ }
91
+ catch {
92
+ return {};
93
+ }
94
+ }
82
95
  export async function getConfig() {
83
96
  const endsWithRegExp = /\.config\.((ts)|(js(on)?))$/;
84
97
  const cwd = process.cwd();
@@ -104,20 +117,14 @@ export async function getConfig() {
104
117
  }
105
118
  }
106
119
  }
107
- const pkg = JSON.parse(readFileSync(path.resolve(cwd, 'package.json'), {
108
- encoding: 'utf-8',
109
- flag: 'r',
110
- }));
120
+ const pkg = getPkg();
111
121
  if (!configFound && typeof pkg['pp-dev'] === 'object') {
112
122
  config = pkg['pp-dev'];
113
123
  }
114
124
  return config;
115
125
  }
116
126
  export async function getViteConfig() {
117
- const pkg = JSON.parse(readFileSync(path.resolve(process.cwd(), 'package.json'), {
118
- encoding: 'utf-8',
119
- flag: 'r',
120
- }));
127
+ const pkg = getPkg();
121
128
  const templateName = pkg.name;
122
129
  return {
123
130
  base: `/pt/${templateName}`,
@@ -147,4 +154,29 @@ export async function getViteConfig() {
147
154
  ],
148
155
  };
149
156
  }
157
+ export function withPPDev(nextjsConfig, ppDevConfig) {
158
+ return async (phase, nextConfig = {}) => {
159
+ const config = await getConfig();
160
+ const pkg = getPkg();
161
+ const templateName = pkg.name;
162
+ if (phase === PHASE_DEVELOPMENT_SERVER) {
163
+ const devConfig = Object.assign(config, ppDevConfig);
164
+ return Object.assign({ basePath: `/pt/${templateName}`, trailingSlash: true }, nextjsConfig, {
165
+ serverRuntimeConfig: {
166
+ templateName,
167
+ ppDevConfig: devConfig,
168
+ },
169
+ publicRuntimeConfig: {
170
+ templateName,
171
+ ppDevConfig: {
172
+ backendBaseURL: devConfig.backendBaseURL,
173
+ portalPageId: devConfig.portalPageId,
174
+ templateLess: devConfig.templateLess,
175
+ },
176
+ },
177
+ });
178
+ }
179
+ return Object.assign({ basePath: `/pt/${templateName}` }, nextjsConfig);
180
+ };
181
+ }
150
182
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="node" />
2
+ export declare function decodeContent(content: Buffer, contentEncoding?: string): Buffer;
3
+ export declare function encodeContent(content: Buffer, contentEncoding?: string): Buffer;
@@ -0,0 +1,26 @@
1
+ import { unzipSync, brotliDecompressSync, deflateSync, gzipSync, brotliCompressSync, inflateSync } from 'zlib';
2
+ export function decodeContent(content, contentEncoding) {
3
+ switch (contentEncoding) {
4
+ case 'gzip':
5
+ return unzipSync(content);
6
+ case 'br':
7
+ return brotliDecompressSync(content);
8
+ case 'deflate':
9
+ return deflateSync(content);
10
+ default:
11
+ return content;
12
+ }
13
+ }
14
+ export function encodeContent(content, contentEncoding) {
15
+ switch (contentEncoding) {
16
+ case 'gzip':
17
+ return gzipSync(content);
18
+ case 'br':
19
+ return brotliCompressSync(content);
20
+ case 'deflate':
21
+ return inflateSync(content);
22
+ default:
23
+ return content;
24
+ }
25
+ }
26
+ //# sourceMappingURL=content-encoding.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-encoding.helper.js","sourceRoot":"","sources":["../../../src/lib/helpers/content-encoding.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE/G,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,eAAwB;IACrE,QAAQ,eAAe,EAAE;QACvB,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;QAE5B,KAAK,IAAI;YACP,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAEvC,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;QAE9B;YACE,OAAO,OAAO,CAAC;KAClB;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,eAAwB;IACrE,QAAQ,eAAe,EAAE;QACvB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3B,KAAK,IAAI;YACP,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAErC,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;QAE9B;YACE,OAAO,OAAO,CAAC;KAClB;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import * as express from 'express';
2
+ import * as winston from 'winston';
3
+ import * as memoryCache from 'memory-cache';
4
+ import type { CacheItem } from '../proxy-cache.middleware.js';
5
+ declare module 'express' {
6
+ interface Express {
7
+ cache?: memoryCache.CacheClass<string, CacheItem>;
8
+ config: {
9
+ logger: winston.Logger;
10
+ };
11
+ printUrls: (base?: string) => void;
12
+ }
13
+ }
14
+ export declare function createDevServer(logLevel?: string): express.Express;
@@ -0,0 +1,40 @@
1
+ import * as express from 'express';
2
+ import * as winston from 'winston';
3
+ import { createColors } from 'picocolors';
4
+ import { URL } from 'url';
5
+ const colors = createColors();
6
+ export function createDevServer(logLevel = 'info') {
7
+ const server = express.default();
8
+ const logger = winston.createLogger({
9
+ level: logLevel,
10
+ format: winston.format.cli({ level: true }),
11
+ transports: [new winston.transports.Console()],
12
+ });
13
+ server.config = {
14
+ logger,
15
+ };
16
+ const originalListen = server.listen;
17
+ let listener;
18
+ server.listen = function (...args) {
19
+ listener = originalListen.apply(this, args);
20
+ };
21
+ server.printUrls = function (base) {
22
+ if (!listener) {
23
+ throw new Error('Server is not listening');
24
+ }
25
+ const colorUrl = (url) => colors.cyan(url.replace(/:(\d+)\//, (_, port) => `:${colors.bold(port)}/`));
26
+ const address = listener.address();
27
+ if (address && typeof address === 'object') {
28
+ if (address.address === '::') {
29
+ const url = new URL(base || '', `http://localhost:${address.port}`);
30
+ logger.info(` ${colors.green('➜')} ${colors.bold('Local')}: ${colorUrl(url.toString())}`);
31
+ }
32
+ else {
33
+ const url = new URL(base || '', `http://[${address.address}]:${address.port}`);
34
+ logger.info(` ${colors.green('➜')} ${colors.bold('Local')}: ${colorUrl(url.toString())}`);
35
+ }
36
+ }
37
+ };
38
+ return server;
39
+ }
40
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/lib/helpers/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAY1B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;AAE9B,MAAM,UAAU,eAAe,CAAC,QAAQ,GAAG,MAAM;IAC/C,MAAM,MAAM,GAAI,OAAe,CAAC,OAAO,EAAa,CAAC;IAErD,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;QAClC,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3C,UAAU,EAAE,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;KAC/C,CAAC,CAAC;IAEH,MAAM,CAAC,MAAM,GAAG;QACd,MAAM;KACP,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;IAErC,IAAI,QAA+C,CAAC;IAEpD,MAAM,CAAC,MAAM,GAAG,UAAiC,GAAG,IAA2C;QAC7F,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAyB,CAAC;IAE1B,MAAM,CAAC,SAAS,GAAG,UAAU,IAAa;QACxC,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QAED,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAE9G,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAEnC,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC1C,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE;gBAC5B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,oBAAoB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBAEpE,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;aAC/F;iBAAM;gBACL,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,WAAW,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBAE/E,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;aAC/F;SACF;IACH,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,3 +1,7 @@
1
+ import type { ServerResponse } from 'http';
1
2
  export declare const stringIsAValidUrl: (s: string, protocols: string[]) => boolean;
2
3
  export declare const urlReplacer: (originalHost: string, destinationHost: string, content: string) => string;
3
4
  export declare const urlPathReplacer: (urlPath: string, destinationPath: string, content: string) => string;
5
+ export declare const redirect: (res: ServerResponse, url: string, statusCode?: number) => void;
6
+ export declare function cutUrlParams(url: string): string;
7
+ export declare function cutUrlHash(url: string): string;
@@ -24,4 +24,17 @@ export const urlPathReplacer = (urlPath, destinationPath, content) => {
24
24
  const urlReplaceRegExp = new RegExp(`${urlPath.replace(/\\*\//gi, '\\\\/')}`, 'gi');
25
25
  return content.replace(urlReplaceRegExp, destinationPath);
26
26
  };
27
+ export const redirect = (res, url, statusCode) => {
28
+ res.setHeader('location', url);
29
+ res.statusCode = statusCode || 302;
30
+ res.end();
31
+ };
32
+ export function cutUrlParams(url) {
33
+ const urlParts = url.split('?');
34
+ return urlParts[0];
35
+ }
36
+ export function cutUrlHash(url) {
37
+ const urlParts = url.split('#');
38
+ return urlParts[0];
39
+ }
27
40
  //# sourceMappingURL=url.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"url.helper.js","sourceRoot":"","sources":["../../../src/lib/helpers/url.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAE,SAAmB,EAAE,EAAE;IAClE,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,SAAS,EAAE;YACb,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;SACxG;QAED,OAAO,IAAI,CAAC;KACb;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,YAAoB,EAAE,eAAuB,EAAE,OAAe,EAAE,EAAE;IAC5F,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,kCAAkC,YAAY,GAAG,EAAE,IAAI,CAAC,CAAC;IAE7F,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE;QAC9D,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC9B,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;SAChB;QAED,OAAO,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,eAAe,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAe,EAAE,eAAuB,EAAE,OAAe,EAAE,EAAE;IAC3F,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAEpF,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;AAC5D,CAAC,CAAC"}
1
+ {"version":3,"file":"url.helper.js","sourceRoot":"","sources":["../../../src/lib/helpers/url.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAG1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAE,SAAmB,EAAE,EAAE;IAClE,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,SAAS,EAAE;YACb,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;SACxG;QAED,OAAO,IAAI,CAAC;KACb;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,YAAoB,EAAE,eAAuB,EAAE,OAAe,EAAE,EAAE;IAC5F,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,kCAAkC,YAAY,GAAG,EAAE,IAAI,CAAC,CAAC;IAE7F,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE;QAC9D,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC9B,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;SAChB;QAED,OAAO,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,eAAe,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAe,EAAE,eAAuB,EAAE,OAAe,EAAE,EAAE;IAC3F,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAEpF,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAmB,EAAE,GAAW,EAAE,UAAmB,EAAE,EAAE;IAChF,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC/B,GAAG,CAAC,UAAU,GAAG,UAAU,IAAI,GAAG,CAAC;IAEnC,GAAG,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEhC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEhC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { PPDevConfig } from '../index.js';
2
+ import { Connect } from 'vite';
3
+ import NextHandleFunction = Connect.NextHandleFunction;
4
+ import { MiAPI } from './pp.middleware.js';
5
+ export declare function initLoadPPData(applyUrlRegExp: RegExp, mi: MiAPI, opts: PPDevConfig): NextHandleFunction;
@@ -0,0 +1,28 @@
1
+ import { cutUrlParams, redirect } from './helpers/url.helper.js';
2
+ export function initLoadPPData(applyUrlRegExp, mi, opts) {
3
+ const { templateLess = false, miHudLess = false, portalPageId } = opts;
4
+ return (req, res, next) => {
5
+ const isNeedTemplateLoad = !(templateLess && miHudLess);
6
+ const isApplyRequest = applyUrlRegExp.test(cutUrlParams(req.url ?? ''));
7
+ if (isNeedTemplateLoad && isApplyRequest) {
8
+ const headers = (req.headers ?? {});
9
+ const loadPageData = !templateLess && typeof portalPageId !== 'undefined'
10
+ ? mi.getPageVariables(portalPageId, headers)
11
+ : mi.getPageTemplate(headers);
12
+ loadPageData
13
+ .then(() => {
14
+ next();
15
+ })
16
+ .catch((reason) => {
17
+ if (reason.response) {
18
+ return redirect(res, `/home?proxyRedirect=${encodeURIComponent('/')}`, 302);
19
+ }
20
+ next(reason);
21
+ });
22
+ }
23
+ else {
24
+ next();
25
+ }
26
+ };
27
+ }
28
+ //# sourceMappingURL=load-pp-data.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-pp-data.middleware.js","sourceRoot":"","sources":["../../src/lib/load-pp-data.middleware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGjE,MAAM,UAAU,cAAc,CAAC,cAAsB,EAAE,EAAS,EAAE,IAAiB;IACjF,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,SAAS,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAEvE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,IAAI,SAAS,CAAC,CAAC;QACxD,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAExE,IAAI,kBAAkB,IAAI,cAAc,EAAE;YACxC,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAY,CAAC;YAE/C,MAAM,YAAY,GAChB,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,WAAW;gBAClD,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC5C,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAElC,YAAY;iBACT,IAAI,CAAC,GAAG,EAAE;gBACT,IAAI,EAAE,CAAC;YACT,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE;gBAChB,IAAI,MAAM,CAAC,QAAQ,EAAE;oBACnB,OAAO,QAAQ,CAAC,GAAG,EAAE,uBAAuB,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;iBAC7E;gBAED,IAAI,CAAC,MAAM,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;SACN;aAAM;YACL,IAAI,EAAE,CAAC;SACR;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Connect } from 'vite';
2
+ import NextHandleFunction = Connect.NextHandleFunction;
3
+ export declare function initPPRedirect(base: string, templateName?: string): NextHandleFunction;
@@ -0,0 +1,21 @@
1
+ import { redirect } from './helpers/url.helper.js';
2
+ import { URL } from 'url';
3
+ export function initPPRedirect(base, templateName) {
4
+ base = base.startsWith('/') ? base : `/${base}`;
5
+ base = base.endsWith('/') ? base : `${base}/`;
6
+ const baseWithoutTrailingSlash = base.endsWith('/') ? base.slice(0, -1) : base;
7
+ return (req, res, next) => {
8
+ const parsedUrl = new URL(req.url ?? '', 'http://localhost');
9
+ const { pathname, search } = parsedUrl;
10
+ const findPaths = ['/', baseWithoutTrailingSlash];
11
+ if (templateName) {
12
+ findPaths.push(`/pt/${templateName}`);
13
+ }
14
+ if (findPaths.includes(pathname)) {
15
+ const redirectUrl = `${base}${search}`;
16
+ return redirect(res, redirectUrl, 302);
17
+ }
18
+ next();
19
+ };
20
+ }
21
+ //# sourceMappingURL=pp-redirect.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pp-redirect.middleware.js","sourceRoot":"","sources":["../../src/lib/pp-redirect.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,YAAqB;IAChE,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IAChD,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;IAE9C,MAAM,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE/E,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC7D,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QACvC,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;QAElD,IAAI,YAAY,EAAE;YAChB,SAAS,CAAC,IAAI,CAAC,OAAO,YAAY,EAAE,CAAC,CAAC;SACvC;QAGD,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,WAAW,GAAG,GAAG,IAAI,GAAG,MAAM,EAAE,CAAC;YAEvC,OAAO,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;SACxC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC"}
@@ -1,14 +1,15 @@
1
1
  import { Connect, ViteDevServer } from 'vite';
2
2
  import * as memoryCache from 'memory-cache';
3
3
  import NextHandleFunction = Connect.NextHandleFunction;
4
- export interface ProxyCacheOpts {
5
- viteDevServer: ViteDevServer;
6
- ttl?: number;
7
- }
4
+ import { Express } from 'express';
8
5
  export interface CacheItem {
9
6
  headers: Record<string, any>;
10
7
  content: any;
11
8
  }
9
+ export interface ProxyCacheOpts {
10
+ devServer: ViteDevServer | Express;
11
+ ttl?: number;
12
+ }
12
13
  declare module 'vite' {
13
14
  interface ViteDevServer {
14
15
  cache?: memoryCache.CacheClass<string, CacheItem>;
@@ -3,14 +3,14 @@ import { PROXY_HEADER } from './proxy-pass.middleware.js';
3
3
  const cache = new memoryCache.Cache();
4
4
  const testCacheUrlRegExp = /\.[a-z0-9]+$/i;
5
5
  export function initProxyCache(opts) {
6
- const { viteDevServer, ttl = 10 * 60 * 1000 } = opts;
7
- viteDevServer.cache = cache;
6
+ const { devServer, ttl = 10 * 60 * 1000 } = opts;
7
+ devServer.cache = cache;
8
8
  return (req, res, next) => {
9
9
  const url = req.originalUrl || req.url || '';
10
10
  if (testCacheUrlRegExp.test(url.split('?')[0] || '')) {
11
11
  const cacheItem = cache.get(url);
12
- if (cacheItem) {
13
- viteDevServer.config.logger.info(`Proxies request: ${req.method} ${url} -> Cache ${url}`);
12
+ if (cacheItem && devServer.config) {
13
+ devServer.config.logger.info(`Proxies request: ${req.method} ${url} -> Cache ${url}`);
14
14
  for (const [header, value] of Object.entries(cacheItem.headers)) {
15
15
  res.setHeader(header, value);
16
16
  }
@@ -39,7 +39,7 @@ export function initProxyCache(opts) {
39
39
  buffer = Buffer.concat([buffer, chunk]);
40
40
  }
41
41
  if (res.hasHeader(PROXY_HEADER)) {
42
- viteDevServer.config.logger?.info(`[Cached] ${url}`);
42
+ devServer.config.logger?.info(`[Cached] ${url}`);
43
43
  cache.put(url, { headers: res.getHeaders(), content: buffer }, ttl);
44
44
  }
45
45
  end.call(this, buffer, encoding, cb);
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-cache.middleware.js","sourceRoot":"","sources":["../../src/lib/proxy-cache.middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy-cache.middleware.js","sourceRoot":"","sources":["../../src/lib/proxy-cache.middleware.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { ViteDevServer } from 'vite';
2
+ import { Express } from 'express';
2
3
  export interface ProxyOpts {
3
4
  rewritePath?: string | string[] | RegExp;
4
5
  baseURL: string;
5
6
  proxyIgnore?: (string | RegExp)[];
6
- viteDevServer: ViteDevServer;
7
+ devServer: ViteDevServer | Express;
7
8
  }
8
9
  export declare const PROXY_HEADER = "X-PP-Proxy";
9
10
  export declare function initProxy(opts: ProxyOpts): import("http-proxy-middleware").RequestHandler;
@@ -3,7 +3,7 @@ import { urlReplacer, urlPathReplacer } from './helpers/url.helper.js';
3
3
  const hostOriginRegExp = /^(https?:\/\/)([^/]+)(\/.*)?$/i;
4
4
  export const PROXY_HEADER = 'X-PP-Proxy';
5
5
  export function initProxy(opts) {
6
- const { rewritePath = /^\/(?!pt).*/i, baseURL = '', viteDevServer } = opts;
6
+ const { rewritePath = /^\/(?!pt).*/i, baseURL = '', devServer } = opts;
7
7
  if (!baseURL) {
8
8
  throw new Error('Base url is required');
9
9
  }
@@ -45,7 +45,7 @@ export function initProxy(opts) {
45
45
  onProxyReq(proxyReq, req, res) {
46
46
  const host = req.headers.host;
47
47
  const referer = proxyReq.getHeader('referer');
48
- viteDevServer.config.logger.info(`Proxies request: ${req.method} ${req.url} -> ${proxyReq.method} ${proxyReq.protocol}//${proxyReq.host}${proxyReq.path}`);
48
+ devServer.config.logger.info(`Proxies request: ${req.method} ${req.url} -> ${proxyReq.method} ${proxyReq.protocol}//${proxyReq.host}${proxyReq.path}`);
49
49
  if (host && referer && typeof referer === 'string') {
50
50
  proxyReq.setHeader('referer', referer.replace(new RegExp(`https?://${host}`), baseURL));
51
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-pass.middleware.js","sourceRoot":"","sources":["../../src/lib/proxy-pass.middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy-pass.middleware.js","sourceRoot":"","sources":["../../src/lib/proxy-pass.middleware.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { Connect } from 'vite';
4
+ import NextHandleFunction = Connect.NextHandleFunction;
5
+ import type { ServerResponse } from 'http';
6
+ export declare function initRewriteResponse(predicate: (url: string, req: Connect.IncomingMessage, res: ServerResponse<Connect.IncomingMessage>) => boolean, rewrite: (response: Buffer, req: Connect.IncomingMessage, res: ServerResponse<Connect.IncomingMessage>) => Buffer): NextHandleFunction;
@@ -0,0 +1,23 @@
1
+ import { decodeContent, encodeContent } from './helpers/content-encoding.helper.js';
2
+ export function initRewriteResponse(predicate, rewrite) {
3
+ return (req, res, next) => {
4
+ if (predicate(req.url ?? '', req, res)) {
5
+ const end = res.end;
6
+ const buffers = [];
7
+ res.write = function (body) {
8
+ buffers.push(body);
9
+ return true;
10
+ };
11
+ res.end = function (chunk, encoding, cb) {
12
+ if (typeof chunk === 'string') {
13
+ buffers.push(Buffer.from(chunk));
14
+ }
15
+ const contentEncoding = res.getHeader('content-encoding');
16
+ const content = decodeContent(Buffer.from(Buffer.concat(buffers)), contentEncoding);
17
+ end.call(this, encodeContent(rewrite(content, req, res), contentEncoding), encoding, cb);
18
+ };
19
+ }
20
+ next();
21
+ };
22
+ }
23
+ //# sourceMappingURL=rewrite-response.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rewrite-response.middleware.js","sourceRoot":"","sources":["../../src/lib/rewrite-response.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AASpF,MAAM,UAAU,mBAAmB,CACjC,SAA+G,EAC/G,OAAiH;IAEjH,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;YACtC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;YAEpB,MAAM,OAAO,GAAa,EAAE,CAAC;YAE7B,GAAG,CAAC,KAAK,GAAG,UAAU,IAAI;gBACxB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEnB,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;YAIF,GAAG,CAAC,GAAG,GAAG,UAAU,KAAU,EAAE,QAAwB,EAAE,EAAe;gBACvE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;iBAClC;gBAED,MAAM,eAAe,GAAG,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAW,CAAC;gBACpE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;gBAEpF,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC3F,CAAC,CAAC;SACH;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC"}
package/dist/plugin.d.ts CHANGED
@@ -5,6 +5,8 @@ export interface VitePPDevOptions {
5
5
  templateName: string;
6
6
  templateLess?: boolean;
7
7
  miHudLess?: boolean;
8
+ enableProxyCache?: boolean;
9
+ proxyCacheTTL?: number;
8
10
  }
9
11
  declare function vitePPDev(options: VitePPDevOptions): Plugin;
10
12
  export default vitePPDev;
package/dist/plugin.js CHANGED
@@ -1,20 +1,14 @@
1
1
  import proxyPassMiddleware from './lib/proxy-pass.middleware.js';
2
2
  import { MiAPI } from './lib/pp.middleware.js';
3
- import { urlReplacer } from './lib/helpers/url.helper.js';
3
+ import { cutUrlParams, urlReplacer } from './lib/helpers/url.helper.js';
4
4
  import { ClientService } from './lib/client.service.js';
5
5
  import { initProxyCache } from './lib/proxy-cache.middleware.js';
6
6
  import { DistService } from './lib/dist.service.js';
7
- const redirect = (res, url, statusCode) => {
8
- res.setHeader('location', url);
9
- res.statusCode = statusCode || 302;
10
- res.end();
11
- };
12
- function cutUrlParams(url) {
13
- const urlParts = url.split('?');
14
- return urlParts[0];
15
- }
7
+ import { initRewriteResponse } from './lib/rewrite-response.middleware.js';
8
+ import { initPPRedirect } from './lib/pp-redirect.middleware.js';
9
+ import { initLoadPPData } from './lib/load-pp-data.middleware.js';
16
10
  function vitePPDev(options) {
17
- const { templateName, templateLess = false, miHudLess = false, backendBaseURL, portalPageId } = options || {};
11
+ const { templateName, templateLess = false, backendBaseURL, miHudLess = false, portalPageId, enableProxyCache = true, proxyCacheTTL = 10 * 60 * 1000, } = options || {};
18
12
  let isFirstRequest = true;
19
13
  return {
20
14
  name: 'vite-pp-dev',
@@ -41,15 +35,7 @@ function vitePPDev(options) {
41
35
  base += '/';
42
36
  }
43
37
  const baseWithoutTrailingSlash = base.substring(0, base.lastIndexOf('/'));
44
- server.middlewares.use(function (req, res, next) {
45
- if (req.url === '/' || req.url === `/pt/${templateName}` || req.url === baseWithoutTrailingSlash) {
46
- return redirect(res, base, 302);
47
- }
48
- else if (req.url?.includes('?') && req.url.split('?')[0] === baseWithoutTrailingSlash) {
49
- return redirect(res, `${base}?${req.url.split('?')[1]}`, 302);
50
- }
51
- next();
52
- });
38
+ server.middlewares.use(initPPRedirect(base, templateName));
53
39
  if (backendBaseURL) {
54
40
  const baseUrlHost = new URL(backendBaseURL).host;
55
41
  const mi = new MiAPI(backendBaseURL, {
@@ -61,53 +47,25 @@ function vitePPDev(options) {
61
47
  portalPageId,
62
48
  templateLess,
63
49
  });
64
- server.middlewares.use(initProxyCache({ viteDevServer: server, ttl: 10 * 60 * 1000 }));
50
+ if (enableProxyCache) {
51
+ let ttl = +proxyCacheTTL;
52
+ if (!ttl || Number.isNaN(ttl) || ttl < 0) {
53
+ ttl = 10 * 60 * 1000;
54
+ }
55
+ server.middlewares.use(initProxyCache({ devServer: server, ttl }));
56
+ }
65
57
  server.middlewares.use(proxyPassMiddleware({
66
- viteDevServer: server,
58
+ devServer: server,
67
59
  baseURL: backendBaseURL,
68
60
  proxyIgnore: ['/@vite', '/@metricinsights', '/@', baseWithoutTrailingSlash],
69
61
  }));
70
62
  const isIndexRegExp = new RegExp(`^((${base})|/)$`);
71
- server.middlewares.use(function (req, res, next) {
72
- const isNeedTemplateLoad = !(templateLess && miHudLess);
73
- const isIndexRequest = isIndexRegExp.test(cutUrlParams(req.url ?? ''));
74
- if (isNeedTemplateLoad && isIndexRequest) {
75
- const headers = (req.headers ?? {});
76
- const loadPageData = !templateLess && typeof portalPageId !== 'undefined'
77
- ? mi.getPageVariables(portalPageId, headers)
78
- : mi.getPageTemplate(headers);
79
- loadPageData
80
- .then(() => {
81
- next();
82
- })
83
- .catch((reason) => {
84
- if (reason.response) {
85
- return redirect(res, `/home?proxyRedirect=${encodeURIComponent('/')}`, 302);
86
- }
87
- next(reason);
88
- });
89
- }
90
- else {
91
- next();
92
- }
93
- });
94
- server.middlewares.use(function (req, res, next) {
95
- if (isIndexRegExp.test(cutUrlParams(req.url ?? ''))) {
96
- const end = res.end;
97
- const buffers = [];
98
- res.write = function (body) {
99
- buffers.push(body);
100
- return true;
101
- };
102
- res.end = function (chunk, encoding, cb) {
103
- if (typeof chunk === 'string') {
104
- buffers.push(Buffer.from(chunk));
105
- }
106
- end.call(this, Buffer.from(urlReplacer(baseUrlHost, req.headers.host ?? '', mi.buildPage(Buffer.concat(buffers), miHudLess))), encoding, cb);
107
- };
108
- }
109
- next();
110
- });
63
+ server.middlewares.use(initLoadPPData(isIndexRegExp, mi, options));
64
+ server.middlewares.use(initRewriteResponse((url) => {
65
+ return isIndexRegExp.test(cutUrlParams(url));
66
+ }, (response, req) => {
67
+ return Buffer.from(urlReplacer(baseUrlHost, req.headers.host ?? '', mi.buildPage(response, miHudLess)));
68
+ }));
111
69
  const distService = new DistService(templateName);
112
70
  const eventHandler = new ClientService(server, { distService, miAPI: mi });
113
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@metricinsights/pp-dev",
3
3
  "type": "module",
4
- "version": "0.2.0",
4
+ "version": "0.3.0",
5
5
  "description": "Portal Page dev build tool",
6
6
  "bin": {
7
7
  "pp-dev": "bin/pp-dev.js"
@@ -30,6 +30,9 @@
30
30
  },
31
31
  "author": "Serhii Shpak",
32
32
  "license": "ISC",
33
+ "peerDependencies": {
34
+ "next": "^13.5.4"
35
+ },
33
36
  "dependencies": {
34
37
  "axios": "^1.4.0",
35
38
  "cac": "^6.7.14",
@@ -46,14 +49,15 @@
46
49
  "source-map-support": "^0.5.21",
47
50
  "typescript": "^5.0.4",
48
51
  "vite": "^4.3.4",
49
- "vite-plugin-zip-pack": "^1.0.5"
52
+ "vite-plugin-zip-pack": "^1.0.5",
53
+ "winston": "^3.11.0"
50
54
  },
51
55
  "devDependencies": {
52
56
  "@rollup/plugin-node-resolve": "^15.0.2",
53
57
  "@rollup/plugin-typescript": "^11.1.1",
54
58
  "@rollup/plugin-url": "^8.0.1",
55
59
  "@types/ejs": "^3.1.2",
56
- "@types/express": "^4.17.17",
60
+ "@types/express": "^4.17.18",
57
61
  "@types/jsdom": "^21.1.1",
58
62
  "@types/memory-cache": "^0.2.3",
59
63
  "prettier": "^2.8.8",