@metricinsights/pp-dev 0.3.3 → 0.5.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.
@@ -2,8 +2,11 @@
2
2
 
3
3
  var httpProxyMiddleware = require('http-proxy-middleware');
4
4
  var url = require('url');
5
+ var vite = require('vite');
6
+ var picocolors = require('picocolors');
5
7
  var axios = require('axios');
6
8
  var jsdom = require('jsdom');
9
+ var https = require('https');
7
10
  var memoryCache = require('memory-cache');
8
11
  var path = require('path');
9
12
  var fs = require('fs');
@@ -61,16 +64,37 @@ function cutUrlParams(url) {
61
64
  return urlParts[0];
62
65
  }
63
66
 
67
+ // import pino from 'pino';
68
+ // import { PrettyOptions } from 'pino-pretty';
69
+ const storage = new Map();
70
+ const DEFAULT_LOGGER_KEY = 'default';
71
+ const createLogger = (level = 'info', name = DEFAULT_LOGGER_KEY) => {
72
+ if (storage.has(name)) {
73
+ return storage.get(name);
74
+ }
75
+ if (name === DEFAULT_LOGGER_KEY) {
76
+ const logger = vite.createLogger(level);
77
+ storage.set(name, logger);
78
+ return logger;
79
+ }
80
+ const logger = vite.createLogger(level);
81
+ storage.set(name, logger);
82
+ return logger;
83
+ };
84
+
85
+ const colors = picocolors.createColors();
86
+
64
87
  const hostOriginRegExp = /^(https?:\/\/)([^/]+)(\/.*)?$/i;
65
88
  const PROXY_HEADER = 'X-PP-Proxy';
66
89
  function initProxy(opts) {
67
- const { rewritePath = /^\/(?!pt).*/i, baseURL = '', devServer } = opts;
90
+ const { rewritePath = /^\/(?!pt).*/i, baseURL = '', devServer, disableSSLValidation = false } = opts;
68
91
  if (!baseURL) {
69
92
  throw new Error('Base url is required');
70
93
  }
71
94
  const host = baseURL.replace(hostOriginRegExp, '$2');
72
95
  const origin = baseURL.replace(hostOriginRegExp, '$1$2');
73
96
  const fileType = import('file-type');
97
+ const logger = createLogger();
74
98
  return httpProxyMiddleware.createProxyMiddleware((pathname) => {
75
99
  if ((opts.proxyIgnore || []).some((value) => {
76
100
  if (typeof value === 'string') {
@@ -102,6 +126,7 @@ function initProxy(opts) {
102
126
  changeOrigin: true,
103
127
  autoRewrite: true,
104
128
  logLevel: 'silent',
129
+ secure: !disableSSLValidation,
105
130
  headers: {
106
131
  host,
107
132
  origin,
@@ -109,7 +134,7 @@ function initProxy(opts) {
109
134
  onProxyReq(proxyReq, req, res) {
110
135
  const host = req.headers.host;
111
136
  const referer = proxyReq.getHeader('referer');
112
- devServer.config.logger.info(`Proxies request: ${req.method} ${req.url} -> ${proxyReq.method} ${proxyReq.protocol}//${proxyReq.host}${proxyReq.path}`);
137
+ logger.info(`${colors.blue('Proxies request:')} ${colors.green(req.method)} ${req.url} -> ${colors.green(proxyReq.method)} ${proxyReq.protocol}//${proxyReq.host}${proxyReq.path}`);
113
138
  if (host && referer && typeof referer === 'string') {
114
139
  proxyReq.setHeader('referer', referer.replace(new RegExp(`https?://${host}`), baseURL));
115
140
  }
@@ -150,6 +175,14 @@ function initProxy(opts) {
150
175
  return urlPathReplacer('/auth/saml/login', '/login', urlReplacer(host, reqHost, response));
151
176
  }
152
177
  }),
178
+ onError(err, req, res) {
179
+ const errorMessage = `Proxy error: "${err.message}" when trying to "${req.method} ${req.url}"\n\n${err.stack}`;
180
+ logger.error(errorMessage);
181
+ res.writeHead(500, {
182
+ 'Content-Type': 'text/plain',
183
+ });
184
+ res.end(errorMessage);
185
+ },
153
186
  });
154
187
  }
155
188
 
@@ -158,6 +191,15 @@ class BaseAPI {
158
191
  constructor(axios) {
159
192
  this.axios = axios;
160
193
  }
194
+ async checkAuth(headers) {
195
+ return this.axios
196
+ .get('/data/page/index/auth/info', {
197
+ headers: Object.assign({}, headers, { accept: 'text/html' }),
198
+ maxRedirects: 0,
199
+ })
200
+ .then(() => true)
201
+ .catch(() => false);
202
+ }
161
203
  }
162
204
 
163
205
  class AssetsAPI extends BaseAPI {
@@ -274,6 +316,7 @@ class PageAPI extends BaseAPI {
274
316
  }
275
317
  }
276
318
 
319
+ const TEMPLATE_PAGE_NAME = '[DEV PAGE. DO NOT DELETE]';
277
320
  class MiAPI {
278
321
  #headers;
279
322
  #axios;
@@ -286,25 +329,31 @@ class MiAPI {
286
329
  templateLess;
287
330
  assetsApi;
288
331
  pageApi;
332
+ logger;
289
333
  constructor(baseURL, opts) {
290
- const { headers = {}, portalPageId, templateLess = true } = opts || {};
334
+ const { headers = {}, portalPageId, templateLess = true, disableSSLValidation = false } = opts || {};
291
335
  this.#headers = headers;
292
336
  this.#pageVars = [];
293
337
  this.#pageTitle = '';
294
- this.#templateLoaded = new Promise((resolve) => {
295
- this.#templateLoadedResolve = resolve;
338
+ this.#templateLoaded = Promise.resolve(false);
339
+ if (disableSSLValidation) {
340
+ axios.defaults.httpsAgent = new https.Agent({ rejectUnauthorized: false });
341
+ }
342
+ this.#axios = axios.create({
343
+ baseURL,
344
+ headers,
296
345
  });
297
- this.#axios = axios.create({ baseURL, headers });
298
346
  this.portalPageId = portalPageId;
299
347
  this.templateLess = templateLess;
300
348
  this.assetsApi = new AssetsAPI(this.#axios);
301
349
  this.pageApi = new PageAPI(this.#axios);
350
+ this.logger = createLogger();
302
351
  }
303
352
  async isTemplateLoaded() {
304
353
  return this.#templateLoaded;
305
354
  }
306
355
  #clearHeaders(headers) {
307
- const obj = Object.assign({}, headers, { host: undefined });
356
+ const obj = Object.assign({}, headers, { host: undefined, referer: undefined });
308
357
  Object.keys(obj).forEach((key) => obj[key] === undefined && delete obj[key]);
309
358
  this.#headers = obj;
310
359
  return obj;
@@ -317,27 +366,65 @@ class MiAPI {
317
366
  * @param headers
318
367
  */
319
368
  async getPageTemplate(headers) {
369
+ if (!(await this.#templateLoaded)) {
370
+ this.#templateLoaded = new Promise((resolve) => {
371
+ this.#templateLoadedResolve = resolve;
372
+ });
373
+ }
320
374
  if (this.#pageTemplate) {
321
375
  return Promise.resolve(this.#pageTemplate);
322
376
  }
323
377
  if (typeof this.templateLess === 'undefined') {
324
378
  this.templateLess = false;
325
379
  }
326
- const pageList = await this.pageApi.getAll(this.#clearHeaders(headers));
327
- let page = pageList.find((p) => p.name === '[DEV PAGE. DO NOT DELETE]');
380
+ const pageList = await this.pageApi
381
+ .getAll(this.#clearHeaders(headers))
382
+ .then((response) => {
383
+ this.logger.info(colors.green('Page list fetched'));
384
+ return response;
385
+ })
386
+ .catch(async (e) => {
387
+ if (await this.pageApi.checkAuth(this.#clearHeaders(headers))) {
388
+ this.logger.error(colors.red(`Error fetching page list: ${e.message}\n${e.stack}`));
389
+ throw new Error('Current user does not have access to page list');
390
+ }
391
+ else {
392
+ throw e;
393
+ }
394
+ });
395
+ let page = pageList.find((p) => p.name === TEMPLATE_PAGE_NAME);
328
396
  if (!page) {
329
- page = await this.pageApi.create({
397
+ this.logger.warn(colors.yellow('Creating dev page template...'));
398
+ page = await this.pageApi
399
+ .create({
330
400
  enabled: 'Y',
331
- name: '[DEV PAGE. DO NOT DELETE]',
401
+ name: TEMPLATE_PAGE_NAME,
332
402
  internal_name: 'dev-page-template',
333
403
  visible_in_homepage: 'Y',
334
- }, this.#clearHeaders(headers));
404
+ }, this.#clearHeaders(headers))
405
+ .then((response) => {
406
+ this.logger.info(colors.green('Dev page created'));
407
+ return response;
408
+ })
409
+ .catch((e) => {
410
+ this.logger.error(colors.red(`Error creating dev page: ${e.message}`));
411
+ throw new Error(`Error when creating dev page.
412
+ That can be caused by missing permissions or page with name "${TEMPLATE_PAGE_NAME}" already exists`);
413
+ });
335
414
  }
336
415
  return await this.pageApi
337
416
  .getPageContent(page.internal_name, this.#clearHeaders(headers))
338
417
  .then((response) => {
339
418
  this.#pageTemplate = response;
340
419
  return response;
420
+ })
421
+ .then((response) => {
422
+ this.logger.info(colors.green('Page template fetched'));
423
+ return response;
424
+ })
425
+ .catch((e) => {
426
+ this.logger.error(colors.red(`Error fetching page template: ${e.message}`));
427
+ throw new Error('Error fetching page template');
341
428
  })
342
429
  .finally(() => {
343
430
  this.#templateLoadedResolve(true);
@@ -370,9 +457,13 @@ class MiAPI {
370
457
  return [];
371
458
  })
372
459
  .catch((reason) => {
460
+ this.logger.error(colors.red(`Error fetching page variables: ${reason.message}`));
373
461
  if (reason.response?.status === 404) {
374
462
  throw new Error(`Portal Page with id "${pageId}" not found on instance ${this.#axios.getUri()}`);
375
463
  }
464
+ if (reason.response?.status === 401) {
465
+ throw new Error(`Current user does not have access to page with id "${pageId}" on instance ${this.#axios.getUri()}`);
466
+ }
376
467
  throw reason;
377
468
  });
378
469
  }
@@ -446,12 +537,14 @@ class ClientService {
446
537
  server;
447
538
  opts;
448
539
  eventMap;
540
+ logger;
449
541
  constructor(server, opts) {
450
542
  this.server = server;
451
543
  this.opts = opts || {};
452
544
  this.eventMap = new Map();
453
545
  this.eventMap.set('info-data:request', this.onInfoDataRequest.bind(this));
454
546
  this.eventMap.set('template:sync', this.onTemplateSync.bind(this));
547
+ this.logger = createLogger();
455
548
  this.init();
456
549
  }
457
550
  init() {
@@ -484,18 +577,22 @@ class ClientService {
484
577
  currentHash,
485
578
  backupFilename,
486
579
  });
580
+ this.logger.info(colors.green('Template synced'));
487
581
  }
488
582
  else {
489
583
  this.server.ws.send('template:sync:response', { error: 'Failed to update assets' });
584
+ this.logger.error(colors.red('Failed to update assets'));
490
585
  }
491
586
  }
492
587
  else {
493
588
  this.server.ws.send('template:sync:response', { error: 'Failed to build new assets' });
589
+ this.logger.error(colors.red('Failed to build new assets'));
494
590
  return;
495
591
  }
496
592
  }
497
593
  else {
498
594
  this.server.ws.send('template:sync:response', { error: 'Dist service or MiAPI is not defined' });
595
+ this.logger.error(colors.red('Dist service or MiAPI is not defined'));
499
596
  return;
500
597
  }
501
598
  }
@@ -505,13 +602,14 @@ const cache = new memoryCache__namespace.Cache();
505
602
  const testCacheUrlRegExp = /\.[a-z0-9]+$/i;
506
603
  function initProxyCache(opts) {
507
604
  const { devServer, ttl = 10 * 60 * 1000 } = opts;
605
+ const logger = createLogger();
508
606
  devServer.cache = cache;
509
607
  return (req, res, next) => {
510
608
  const url = req.originalUrl || req.url || '';
511
609
  if (testCacheUrlRegExp.test(url.split('?')[0] || '')) {
512
610
  const cacheItem = cache.get(url);
513
- if (cacheItem && devServer.config) {
514
- devServer.config.logger.info(`Proxies request: ${req.method} ${url} -> Cache ${url}`);
611
+ if (cacheItem) {
612
+ logger.info(`${colors.blue('Proxies request:')} ${colors.green(req.method)} ${url} -> ${colors.blue('Cache')} ${url}`);
515
613
  for (const [header, value] of Object.entries(cacheItem.headers)) {
516
614
  res.setHeader(header, value);
517
615
  }
@@ -543,7 +641,7 @@ function initProxyCache(opts) {
543
641
  buffer = Buffer.concat([buffer, chunk]);
544
642
  }
545
643
  if (res.hasHeader(PROXY_HEADER)) {
546
- devServer.config.logger?.info(`[Cached] ${url}`);
644
+ logger.info(`${colors.blue('[Cached]')} ${url}`);
547
645
  cache.put(url, { headers: res.getHeaders(), content: buffer }, ttl);
548
646
  }
549
647
  end.call(this, buffer, encoding, cb);
@@ -555,7 +653,7 @@ function initProxyCache(opts) {
555
653
 
556
654
  const TEMPLATE_PART_PAGE_NAME = 'pageName';
557
655
  const TEMPLATE_PART_DATE = 'date';
558
- const DIRNAME = path__namespace.dirname((typeof __filename !== 'undefined' && __filename) || url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.src || new URL('plugin-24dd0a43.js', document.baseURI).href))));
656
+ const DIRNAME = path__namespace.dirname((typeof __filename !== 'undefined' && __filename) || url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.src || new URL('plugin-34b9bc89.js', document.baseURI).href))));
559
657
  const pluginPath = path__namespace.resolve(DIRNAME, '..', '..');
560
658
  const node_modules_path = path__namespace.resolve(pluginPath, '..', '..');
561
659
  const metaDirName = '.pp-dev-meta';
@@ -567,13 +665,19 @@ class DistService {
567
665
  dateFormat;
568
666
  pageName;
569
667
  currentMeta = null;
668
+ distZipFolder;
669
+ distZipFilename;
670
+ logger;
570
671
  constructor(pageName, syncOptions) {
571
- const { backupFolder = path__namespace.resolve(process__namespace.cwd(), 'backups'), backupNameTemplate = `{${TEMPLATE_PART_PAGE_NAME}}-{${TEMPLATE_PART_DATE}}.zip`, dateFormat = (date) => date.toISOString().replace(/:/g, '-').replace(/\..*$/, ''), } = syncOptions || {};
672
+ this.pageName = pageName;
673
+ const { backupFolder = path__namespace.resolve(process__namespace.cwd(), 'backups'), distZipFolder = path__namespace.resolve(process__namespace.cwd(), 'dist-zip'), distZipFilename = `${this.pageName}.zip`, backupNameTemplate = `{${TEMPLATE_PART_PAGE_NAME}}-{${TEMPLATE_PART_DATE}}.zip`, dateFormat = (date) => date.toISOString().replace(/:/g, '-').replace(/\..*$/, ''), } = syncOptions || {};
572
674
  this.backupFolder = backupFolder;
573
675
  this.backupNameTemplate = backupNameTemplate;
574
676
  this.dateFormat = dateFormat;
575
- this.pageName = pageName;
677
+ this.distZipFolder = distZipFolder;
678
+ this.distZipFilename = distZipFilename;
576
679
  this.syncMeta();
680
+ this.logger = createLogger();
577
681
  }
578
682
  async checkMeta() {
579
683
  try {
@@ -648,13 +752,15 @@ class DistService {
648
752
  this.currentMeta.lastBackupHash = backupFileHash;
649
753
  this.currentMeta.lastBackupDate = backupDate.toISOString();
650
754
  await this.syncMeta();
651
- return await fs.promises.writeFile(path__namespace.resolve(this.backupFolder, filename), backupFile);
755
+ return await fs.promises.writeFile(path__namespace.resolve(this.backupFolder, filename), backupFile).finally(() => {
756
+ this.logger.info(`Backup saved to ${filename}`);
757
+ });
652
758
  }
653
759
  async buildNewAssets() {
654
- const buildCommand = new Promise(function (resolve, reject) {
760
+ const buildCommand = new Promise((resolve, reject) => {
655
761
  let data = '';
656
762
  // Colorized log output with message about build start
657
- console__namespace.log('\x1b[36m%s\x1b[0m', '[DistService] Build started');
763
+ this.logger.info(colors.cyan('[DistService] Build started'));
658
764
  const proc = child_process__namespace.spawn('node', [path__namespace.resolve(pluginPath, './bin/pp-dev.js'), 'build'], {
659
765
  cwd: process__namespace.cwd(),
660
766
  env: process__namespace.env,
@@ -677,9 +783,9 @@ class DistService {
677
783
  try {
678
784
  await buildCommand.finally(() => {
679
785
  // Colorized log output with message about build end
680
- console__namespace.log('\x1b[36m%s\x1b[0m', '[DistService] Build finished');
786
+ this.logger.info(colors.cyan('[DistService] Build finished'));
681
787
  });
682
- const assetFile = path__namespace.resolve(process__namespace.cwd(), `./dist-zip/${this.pageName}.zip`);
788
+ const assetFile = path__namespace.resolve(process__namespace.cwd(), this.distZipFolder, this.distZipFilename);
683
789
  if (!(await fs.promises.stat(assetFile))) {
684
790
  throw new Error(`File ${assetFile} not found`);
685
791
  }
@@ -755,6 +861,7 @@ function initPPRedirect(base, templateName) {
755
861
  base = base.startsWith('/') ? base : `/${base}`;
756
862
  base = base.endsWith('/') ? base : `${base}/`;
757
863
  const baseWithoutTrailingSlash = base.endsWith('/') ? base.slice(0, -1) : base;
864
+ const logger = createLogger();
758
865
  return (req, res, next) => {
759
866
  const parsedUrl = new url.URL(req.url ?? '', 'http://localhost');
760
867
  const { pathname, search } = parsedUrl;
@@ -765,6 +872,7 @@ function initPPRedirect(base, templateName) {
765
872
  // Redirect from `/` and `/pt/${templateName}` and `${base}` (without a training slash) to portal page address
766
873
  if (findPaths.includes(pathname)) {
767
874
  const redirectUrl = `${base}${search}`;
875
+ logger.info(colors.yellow(`Redirecting to: ${redirectUrl}`));
768
876
  return redirect(res, redirectUrl, 302);
769
877
  }
770
878
  next();
@@ -773,6 +881,7 @@ function initPPRedirect(base, templateName) {
773
881
 
774
882
  function initLoadPPData(applyUrlRegExp, mi, opts) {
775
883
  const { templateLess = false, miHudLess = false, portalPageId } = opts;
884
+ const logger = createLogger();
776
885
  return (req, res, next) => {
777
886
  const isNeedTemplateLoad = !(templateLess && miHudLess);
778
887
  const isApplyRequest = applyUrlRegExp.test(cutUrlParams(req.url ?? ''));
@@ -787,7 +896,9 @@ function initLoadPPData(applyUrlRegExp, mi, opts) {
787
896
  })
788
897
  .catch((reason) => {
789
898
  if (reason.response) {
790
- return redirect(res, `/home?proxyRedirect=${encodeURIComponent('/')}`, 302);
899
+ const redirectUrl = `/home?proxyRedirect=${encodeURIComponent('/')}`;
900
+ logger.info(colors.yellow(`Redirecting to: ${redirectUrl}`));
901
+ return redirect(res, redirectUrl, 302);
791
902
  }
792
903
  next(reason);
793
904
  });
@@ -798,8 +909,111 @@ function initLoadPPData(applyUrlRegExp, mi, opts) {
798
909
  };
799
910
  }
800
911
 
912
+ function isVitePPDevOptions(options) {
913
+ return (typeof options === 'object' &&
914
+ typeof options.templateName === 'string' &&
915
+ (typeof options.backendBaseURL === 'string' || options.backendBaseURL === undefined) &&
916
+ (typeof options.portalPageId === 'number' || options.portalPageId === undefined) &&
917
+ (typeof options.templateLess === 'boolean' || options.templateLess === undefined) &&
918
+ (typeof options.miHudLess === 'boolean' || options.miHudLess === undefined) &&
919
+ (typeof options.enableProxyCache === 'boolean' || options.enableProxyCache === undefined) &&
920
+ (typeof options.proxyCacheTTL === 'number' || options.proxyCacheTTL === undefined) &&
921
+ (typeof options.disableSSLValidation === 'boolean' || options.disableSSLValidation === undefined) &&
922
+ (typeof options.imageOptimizer === 'boolean' ||
923
+ typeof options.imageOptimizer === 'object' ||
924
+ options.imageOptimizer === undefined) &&
925
+ (typeof options.outDir === 'string' || options.outDir === undefined) &&
926
+ (typeof options.distZip === 'boolean' || typeof options.distZip === 'object' || options.distZip === undefined) &&
927
+ (typeof options.syncBackupsDir === 'string' || options.syncBackupsDir === undefined));
928
+ }
929
+ function throwConfigError(config) {
930
+ if (typeof config !== 'object') {
931
+ throw new Error('VitePPDevOptions must be an object');
932
+ }
933
+ if (typeof config.templateName !== 'string') {
934
+ throw new Error('VitePPDevOptions.templateName must be a string');
935
+ }
936
+ if (config.backendBaseURL !== undefined && typeof config.backendBaseURL !== 'string') {
937
+ throw new Error('VitePPDevOptions.backendBaseURL must be a string');
938
+ }
939
+ if (config.portalPageId !== undefined && typeof config.portalPageId !== 'number') {
940
+ throw new Error('VitePPDevOptions.portalPageId must be a number');
941
+ }
942
+ if (config.templateLess !== undefined && typeof config.templateLess !== 'boolean') {
943
+ throw new Error('VitePPDevOptions.templateLess must be a boolean');
944
+ }
945
+ if (config.miHudLess !== undefined && typeof config.miHudLess !== 'boolean') {
946
+ throw new Error('VitePPDevOptions.miHudLess must be a boolean');
947
+ }
948
+ if (config.enableProxyCache !== undefined && typeof config.enableProxyCache !== 'boolean') {
949
+ throw new Error('VitePPDevOptions.enableProxyCache must be a boolean');
950
+ }
951
+ if (config.proxyCacheTTL !== undefined && typeof config.proxyCacheTTL !== 'number') {
952
+ throw new Error('VitePPDevOptions.proxyCacheTTL must be a number');
953
+ }
954
+ if (config.disableSSLValidation !== undefined && typeof config.disableSSLValidation !== 'boolean') {
955
+ throw new Error('VitePPDevOptions.disableSSLValidation must be a boolean');
956
+ }
957
+ if (config.imageOptimizer !== undefined &&
958
+ typeof config.imageOptimizer !== 'boolean' &&
959
+ typeof config.imageOptimizer !== 'object') {
960
+ throw new Error('VitePPDevOptions.imageOptimizer must be a boolean or an object');
961
+ }
962
+ if (config.outDir !== undefined && typeof config.outDir !== 'string') {
963
+ throw new Error('VitePPDevOptions.outDir must be a string');
964
+ }
965
+ if (config.distZip !== undefined && typeof config.distZip !== 'boolean' && typeof config.distZip !== 'object') {
966
+ throw new Error('VitePPDevOptions.distZip must be a boolean or an object');
967
+ }
968
+ if (config.syncBackupsDir !== undefined && typeof config.syncBackupsDir !== 'string') {
969
+ throw new Error('VitePPDevOptions.syncBackupsDir must be a string');
970
+ }
971
+ }
972
+ function normalizeVitePPDevConfig(config) {
973
+ !isVitePPDevOptions(config) && throwConfigError(config);
974
+ const { enableProxyCache = true, proxyCacheTTL = 10 * 60 * 1000, disableSSLValidation = false, imageOptimizer = true, miHudLess = false, templateLess = false, outDir = 'dist', distZip = true, syncBackupsDir = 'backups', } = config || {};
975
+ let distZipConfig = distZip;
976
+ if (distZipConfig === true) {
977
+ distZipConfig = {
978
+ outFileName: `${config.templateName}.zip`,
979
+ outDir: 'dist-zip',
980
+ };
981
+ }
982
+ else if (typeof distZip === 'object') {
983
+ distZipConfig = {
984
+ outFileName: typeof distZip.outFileName === 'string'
985
+ ? distZip.outFileName.replace('[templateName]', config.templateName)
986
+ : `${config.templateName}.zip`,
987
+ outDir: distZip.outDir ?? 'dist-zip',
988
+ };
989
+ }
990
+ else {
991
+ distZipConfig = false;
992
+ }
993
+ let imageOptimizerConfig = imageOptimizer;
994
+ if (typeof imageOptimizer === 'boolean') {
995
+ if (imageOptimizerConfig === true) {
996
+ imageOptimizerConfig = {};
997
+ }
998
+ }
999
+ else if (typeof imageOptimizer !== 'object') {
1000
+ imageOptimizerConfig = false;
1001
+ }
1002
+ return {
1003
+ enableProxyCache,
1004
+ proxyCacheTTL,
1005
+ disableSSLValidation,
1006
+ imageOptimizer: imageOptimizerConfig,
1007
+ templateLess,
1008
+ miHudLess,
1009
+ outDir,
1010
+ distZip: distZipConfig,
1011
+ syncBackupsDir,
1012
+ ...config,
1013
+ };
1014
+ }
801
1015
  function vitePPDev(options) {
802
- const { templateName, templateLess = false, backendBaseURL, miHudLess = false, portalPageId, enableProxyCache = true, proxyCacheTTL = 10 * 60 * 1000, } = options || {};
1016
+ const { templateName, templateLess, backendBaseURL, miHudLess, portalPageId, enableProxyCache, proxyCacheTTL, disableSSLValidation, distZip, syncBackupsDir, } = options || {};
803
1017
  // Avoid server caching for index.html file when first loading
804
1018
  let isFirstRequest = true;
805
1019
  return {
@@ -838,6 +1052,7 @@ function vitePPDev(options) {
838
1052
  },
839
1053
  portalPageId,
840
1054
  templateLess,
1055
+ disableSSLValidation,
841
1056
  });
842
1057
  if (enableProxyCache) {
843
1058
  let ttl = +proxyCacheTTL;
@@ -850,6 +1065,7 @@ function vitePPDev(options) {
850
1065
  devServer: server,
851
1066
  baseURL: backendBaseURL,
852
1067
  proxyIgnore: ['/@vite', '/@metricinsights', '/@', baseWithoutTrailingSlash],
1068
+ disableSSLValidation,
853
1069
  }));
854
1070
  const isIndexRegExp = new RegExp(`^((${base})|/)$`);
855
1071
  // Get portal page variables from the backend (also, redirect magic)
@@ -859,7 +1075,11 @@ function vitePPDev(options) {
859
1075
  }, (response, req) => {
860
1076
  return Buffer.from(urlReplacer(baseUrlHost, req.headers.host ?? '', mi.buildPage(response, miHudLess)));
861
1077
  }));
862
- const distService = new DistService(templateName);
1078
+ const distService = distZip !== false
1079
+ ? new DistService(templateName, Object.assign({ backupDir: syncBackupsDir }, typeof distZip === 'object'
1080
+ ? { distZipFolder: distZip.outDir, distZipFilename: distZip.outFileName }
1081
+ : undefined))
1082
+ : undefined;
863
1083
  new ClientService(server, { distService, miAPI: mi });
864
1084
  }
865
1085
  },
@@ -867,12 +1087,15 @@ function vitePPDev(options) {
867
1087
  }
868
1088
 
869
1089
  exports.MiAPI = MiAPI;
1090
+ exports.colors = colors;
1091
+ exports.createLogger = createLogger;
870
1092
  exports.cutUrlParams = cutUrlParams;
871
1093
  exports.initLoadPPData = initLoadPPData;
872
1094
  exports.initPPRedirect = initPPRedirect;
873
1095
  exports.initProxy = initProxy;
874
1096
  exports.initProxyCache = initProxyCache;
875
1097
  exports.initRewriteResponse = initRewriteResponse;
1098
+ exports.normalizeVitePPDevConfig = normalizeVitePPDevConfig;
876
1099
  exports.urlReplacer = urlReplacer;
877
1100
  exports.vitePPDev = vitePPDev;
878
- //# sourceMappingURL=plugin-24dd0a43.js.map
1101
+ //# sourceMappingURL=plugin-34b9bc89.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-34b9bc89.js","sources":["url.helper.ts","logger.ts","color.helper.ts","proxy-pass.middleware.ts","base.ts","assets.ts","page.ts","pp.middleware.ts","client.service.ts","proxy-cache.middleware.ts","dist.service.ts","content-encoding.helper.ts","rewrite-response.middleware.ts","pp-redirect.middleware.ts","load-pp-data.middleware.ts","plugin.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["cL","createColors","createProxyMiddleware","responseInterceptor","Agent","JSDOM","memoryCache","path","fileURLToPath","process","fs","crypto","child_process","console","unzipSync","brotliDecompressSync","deflateSync","gzipSync","brotliCompressSync","inflateSync","URL","proxyPassMiddleware"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]}
@@ -1,10 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var plugin = require('./plugin-24dd0a43.js');
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var plugin = require('./plugin-34b9bc89.js');
4
6
  require('http-proxy-middleware');
5
7
  require('url');
8
+ require('vite');
9
+ require('picocolors');
6
10
  require('axios');
7
11
  require('jsdom');
12
+ require('https');
8
13
  require('memory-cache');
9
14
  require('path');
10
15
  require('fs');
@@ -16,5 +21,6 @@ require('zlib');
16
21
 
17
22
 
18
23
 
19
- module.exports = plugin.vitePPDev;
24
+ exports.default = plugin.vitePPDev;
25
+ exports.normalizeVitePPDevConfig = plugin.normalizeVitePPDevConfig;
20
26
  //# sourceMappingURL=plugin.js.map