@teambit/preview 0.0.1158 → 0.0.1160

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 (54) hide show
  1. package/dist/artifact-file-middleware.js +1 -2
  2. package/dist/artifact-file-middleware.js.map +1 -1
  3. package/dist/bundler/chunks.js +4 -10
  4. package/dist/bundler/chunks.js.map +1 -1
  5. package/dist/bundler/create-peers-link.js +1 -4
  6. package/dist/bundler/create-peers-link.js.map +1 -1
  7. package/dist/bundler/html-plugin.js +2 -4
  8. package/dist/bundler/html-plugin.js.map +1 -1
  9. package/dist/component-preview.route.js +6 -12
  10. package/dist/component-preview.route.js.map +1 -1
  11. package/dist/env-preview-template.task.js +13 -24
  12. package/dist/env-preview-template.task.js.map +1 -1
  13. package/dist/env-template.route.js +7 -13
  14. package/dist/env-template.route.js.map +1 -1
  15. package/dist/events/click-inside-an-iframe.js +4 -11
  16. package/dist/events/click-inside-an-iframe.js.map +1 -1
  17. package/dist/execution-ref.js +4 -9
  18. package/dist/execution-ref.js.map +1 -1
  19. package/dist/generate-link.js +1 -4
  20. package/dist/generate-link.js.map +1 -1
  21. package/dist/gql/fetch-component-aspects.js +0 -1
  22. package/dist/gql/fetch-component-aspects.js.map +1 -1
  23. package/dist/html-utils.js +0 -1
  24. package/dist/html-utils.js.map +1 -1
  25. package/dist/{preview-1694575035715.js → preview-1694661423555.js} +2 -2
  26. package/dist/preview-assets.route.js +6 -12
  27. package/dist/preview-assets.route.js.map +1 -1
  28. package/dist/preview-modules.js +4 -10
  29. package/dist/preview-modules.js.map +1 -1
  30. package/dist/preview.composition.js +1 -1
  31. package/dist/preview.composition.js.map +1 -1
  32. package/dist/preview.graphql.js +1 -1
  33. package/dist/preview.graphql.js.map +1 -1
  34. package/dist/preview.main.runtime.js +20 -29
  35. package/dist/preview.main.runtime.js.map +1 -1
  36. package/dist/preview.preview.runtime.js +15 -26
  37. package/dist/preview.preview.runtime.js.map +1 -1
  38. package/dist/preview.route.js +6 -12
  39. package/dist/preview.route.js.map +1 -1
  40. package/dist/preview.service.js +4 -9
  41. package/dist/preview.service.js.map +1 -1
  42. package/dist/preview.start-plugin.js +10 -17
  43. package/dist/preview.start-plugin.js.map +1 -1
  44. package/dist/preview.task.js +8 -15
  45. package/dist/preview.task.js.map +1 -1
  46. package/dist/size-event.js +4 -9
  47. package/dist/size-event.js.map +1 -1
  48. package/dist/strategies/component-strategy.js +4 -13
  49. package/dist/strategies/component-strategy.js.map +1 -1
  50. package/dist/strategies/env-strategy.js +5 -15
  51. package/dist/strategies/env-strategy.js.map +1 -1
  52. package/dist/strategies/generate-component-link.js +0 -1
  53. package/dist/strategies/generate-component-link.js.map +1 -1
  54. package/package.json +23 -25
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.promise.js");
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -20,6 +18,7 @@ function _uiFoundationUiPages() {
20
18
  };
21
19
  return data;
22
20
  }
21
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
22
  function getArtifactFileMiddleware(logger, getCacheControlFunc) {
24
23
  return async (req, res) => {
25
24
  try {
@@ -1 +1 @@
1
- {"version":3,"names":["_mime","data","_interopRequireDefault","require","_uiFoundationUiPages","getArtifactFileMiddleware","logger","getCacheControlFunc","req","res","artifact","isLegacyPath","file","getEnvTemplateFile","params","previewName","filePath","getPreviewFile","status","send","noPreview","contents","str","cwd","path","contentType","mime","getType","set","cacheControl","e","error","serverError","prevName","finalFilePath","matchedFile","getFileEndsWith","parts","filter","x","join"],"sources":["artifact-file-middleware.ts"],"sourcesContent":["import mime from 'mime';\nimport type { Request, Response } from '@teambit/express';\nimport { noPreview, serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport type { Logger } from '@teambit/logger';\nimport type { PreviewArtifact } from './preview-artifact';\n\nexport type PreviewUrlParams = {\n /**\n * preview name like overview or composition\n */\n previewName?: string;\n /** `/preview/:filePath(*)` */\n filePath?: string;\n};\n\nexport type GetCacheControlFunc = (filePath: string, contents: string, mimeType?: string | null) => string | undefined;\n\nexport function getArtifactFileMiddleware(logger: Logger, getCacheControlFunc?: GetCacheControlFunc) {\n return async (req: Request<PreviewUrlParams>, res: Response) => {\n try {\n // @ts-ignore\n const artifact: PreviewArtifact = req.artifact;\n // @ts-ignore\n const isLegacyPath = req.isLegacyPath;\n let file;\n if (!isLegacyPath) {\n file = getEnvTemplateFile(artifact, req.params.previewName, req.params.filePath);\n } else {\n file = getPreviewFile(artifact, req.params.previewName, req.params.filePath);\n }\n if (!file) return res.status(404).send(noPreview());\n\n const contents = file.contents;\n const str = `${file.cwd}/${file.path}`;\n const contentType = mime.getType(str);\n if (contentType) res.set('Content-Type', contentType);\n if (getCacheControlFunc) {\n const cacheControl = getCacheControlFunc(str, contents, contentType);\n if (cacheControl) {\n res.set('Cache-control', cacheControl);\n }\n }\n return res.send(contents);\n } catch (e: any) {\n logger.error('failed getting preview', e);\n return res.status(500).send(serverError());\n }\n };\n}\n\nfunction getEnvTemplateFile(artifact: PreviewArtifact, previewName?: string, filePath?: string) {\n const prevName = previewName || 'overview';\n const finalFilePath = filePath || `${prevName}.html`;\n const matchedFile = artifact?.getFileEndsWith(finalFilePath);\n return matchedFile;\n}\n\nfunction getPreviewFile(artifact: PreviewArtifact, previewName?: string, filePath?: string) {\n let finalFilePath = 'index.html';\n if (previewName || filePath) {\n const parts = [previewName, filePath].filter((x) => x);\n finalFilePath = parts.join('/');\n }\n const matchedFile = artifact?.getFileEndsWith(finalFilePath);\n return matchedFile;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_mime","data","_interopRequireDefault","require","_uiFoundationUiPages","obj","__esModule","default","getArtifactFileMiddleware","logger","getCacheControlFunc","req","res","artifact","isLegacyPath","file","getEnvTemplateFile","params","previewName","filePath","getPreviewFile","status","send","noPreview","contents","str","cwd","path","contentType","mime","getType","set","cacheControl","e","error","serverError","prevName","finalFilePath","matchedFile","getFileEndsWith","parts","filter","x","join"],"sources":["artifact-file-middleware.ts"],"sourcesContent":["import mime from 'mime';\nimport type { Request, Response } from '@teambit/express';\nimport { noPreview, serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport type { Logger } from '@teambit/logger';\nimport type { PreviewArtifact } from './preview-artifact';\n\nexport type PreviewUrlParams = {\n /**\n * preview name like overview or composition\n */\n previewName?: string;\n /** `/preview/:filePath(*)` */\n filePath?: string;\n};\n\nexport type GetCacheControlFunc = (filePath: string, contents: string, mimeType?: string | null) => string | undefined;\n\nexport function getArtifactFileMiddleware(logger: Logger, getCacheControlFunc?: GetCacheControlFunc) {\n return async (req: Request<PreviewUrlParams>, res: Response) => {\n try {\n // @ts-ignore\n const artifact: PreviewArtifact = req.artifact;\n // @ts-ignore\n const isLegacyPath = req.isLegacyPath;\n let file;\n if (!isLegacyPath) {\n file = getEnvTemplateFile(artifact, req.params.previewName, req.params.filePath);\n } else {\n file = getPreviewFile(artifact, req.params.previewName, req.params.filePath);\n }\n if (!file) return res.status(404).send(noPreview());\n\n const contents = file.contents;\n const str = `${file.cwd}/${file.path}`;\n const contentType = mime.getType(str);\n if (contentType) res.set('Content-Type', contentType);\n if (getCacheControlFunc) {\n const cacheControl = getCacheControlFunc(str, contents, contentType);\n if (cacheControl) {\n res.set('Cache-control', cacheControl);\n }\n }\n return res.send(contents);\n } catch (e: any) {\n logger.error('failed getting preview', e);\n return res.status(500).send(serverError());\n }\n };\n}\n\nfunction getEnvTemplateFile(artifact: PreviewArtifact, previewName?: string, filePath?: string) {\n const prevName = previewName || 'overview';\n const finalFilePath = filePath || `${prevName}.html`;\n const matchedFile = artifact?.getFileEndsWith(finalFilePath);\n return matchedFile;\n}\n\nfunction getPreviewFile(artifact: PreviewArtifact, previewName?: string, filePath?: string) {\n let finalFilePath = 'index.html';\n if (previewName || filePath) {\n const parts = [previewName, filePath].filter((x) => x);\n finalFilePath = parts.join('/');\n }\n const matchedFile = artifact?.getFileEndsWith(finalFilePath);\n return matchedFile;\n}\n"],"mappings":"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"}
@@ -1,21 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.array.iterator.js");
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.CHUNK_NAMES = void 0;
9
7
  exports.generateTemplateEntries = generateTemplateEntries;
10
- function _defineProperty2() {
11
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
- _defineProperty2 = function () {
13
- return data;
14
- };
15
- return data;
16
- }
17
8
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2().default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
+ 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; }
11
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
12
+ 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); }
19
13
  // TODO - we can remove the need to depenedOn preview-root, if we output chunks as "jsonp".
20
14
  //
21
15
  // for example:
@@ -1 +1 @@
1
- {"version":3,"names":["CHUNK_NAMES","previewRoot","peers","exports","generateTemplateEntries","options","previewChunks","previewModules","forEach","name","entry","include","dependOn","import","_objectSpread","previewRootPath"],"sources":["chunks.ts"],"sourcesContent":["import type { BundlerEntryMap } from '@teambit/bundler';\n\n// TODO - we can remove the need to depenedOn preview-root, if we output chunks as \"jsonp\".\n//\n// for example:\n// config.entry.someJsonpChunk = {\n// import: \"./xxx\",\n// library: { type: \"jsonp\", name: \"foobar\" }\n// }\n// will result in this output:\n// foobar(() => { ...; return MODULE })\n\nexport const CHUNK_NAMES = {\n previewRoot: 'preview-root',\n peers: 'peers',\n};\n\ntype TemplateEntryOptions = {\n previewRootPath: string;\n peers: string | string[];\n previewModules: {\n name: string;\n entry: string;\n /** other preview modules to includes */\n include?: string[];\n }[];\n};\n\nexport function generateTemplateEntries(options: TemplateEntryOptions): BundlerEntryMap {\n const previewChunks = {};\n options.previewModules.forEach(({ name, entry, include = [] }) => {\n previewChunks[name] = {\n dependOn: [CHUNK_NAMES.peers, CHUNK_NAMES.previewRoot, ...include],\n import: entry,\n };\n });\n\n return {\n [CHUNK_NAMES.peers]: options.peers,\n [CHUNK_NAMES.previewRoot]: {\n dependOn: [CHUNK_NAMES.peers],\n import: options.previewRootPath,\n },\n ...previewChunks,\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMA,WAAW,GAAG;EACzBC,WAAW,EAAE,cAAc;EAC3BC,KAAK,EAAE;AACT,CAAC;AAACC,OAAA,CAAAH,WAAA,GAAAA,WAAA;AAaK,SAASI,uBAAuBA,CAACC,OAA6B,EAAmB;EACtF,MAAMC,aAAa,GAAG,CAAC,CAAC;EACxBD,OAAO,CAACE,cAAc,CAACC,OAAO,CAAC,CAAC;IAAEC,IAAI;IAAEC,KAAK;IAAEC,OAAO,GAAG;EAAG,CAAC,KAAK;IAChEL,aAAa,CAACG,IAAI,CAAC,GAAG;MACpBG,QAAQ,EAAE,CAACZ,WAAW,CAACE,KAAK,EAAEF,WAAW,CAACC,WAAW,EAAE,GAAGU,OAAO,CAAC;MAClEE,MAAM,EAAEH;IACV,CAAC;EACH,CAAC,CAAC;EAEF,OAAAI,aAAA;IACE,CAACd,WAAW,CAACE,KAAK,GAAGG,OAAO,CAACH,KAAK;IAClC,CAACF,WAAW,CAACC,WAAW,GAAG;MACzBW,QAAQ,EAAE,CAACZ,WAAW,CAACE,KAAK,CAAC;MAC7BW,MAAM,EAAER,OAAO,CAACU;IAClB;EAAC,GACET,aAAa;AAEpB"}
1
+ {"version":3,"names":["CHUNK_NAMES","previewRoot","peers","exports","generateTemplateEntries","options","previewChunks","previewModules","forEach","name","entry","include","dependOn","import","_objectSpread","previewRootPath"],"sources":["chunks.ts"],"sourcesContent":["import type { BundlerEntryMap } from '@teambit/bundler';\n\n// TODO - we can remove the need to depenedOn preview-root, if we output chunks as \"jsonp\".\n//\n// for example:\n// config.entry.someJsonpChunk = {\n// import: \"./xxx\",\n// library: { type: \"jsonp\", name: \"foobar\" }\n// }\n// will result in this output:\n// foobar(() => { ...; return MODULE })\n\nexport const CHUNK_NAMES = {\n previewRoot: 'preview-root',\n peers: 'peers',\n};\n\ntype TemplateEntryOptions = {\n previewRootPath: string;\n peers: string | string[];\n previewModules: {\n name: string;\n entry: string;\n /** other preview modules to includes */\n include?: string[];\n }[];\n};\n\nexport function generateTemplateEntries(options: TemplateEntryOptions): BundlerEntryMap {\n const previewChunks = {};\n options.previewModules.forEach(({ name, entry, include = [] }) => {\n previewChunks[name] = {\n dependOn: [CHUNK_NAMES.peers, CHUNK_NAMES.previewRoot, ...include],\n import: entry,\n };\n });\n\n return {\n [CHUNK_NAMES.peers]: options.peers,\n [CHUNK_NAMES.previewRoot]: {\n dependOn: [CHUNK_NAMES.peers],\n import: options.previewRootPath,\n },\n ...previewChunks,\n };\n}\n"],"mappings":";;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMA,WAAW,GAAG;EACzBC,WAAW,EAAE,cAAc;EAC3BC,KAAK,EAAE;AACT,CAAC;AAACC,OAAA,CAAAH,WAAA,GAAAA,WAAA;AAaK,SAASI,uBAAuBA,CAACC,OAA6B,EAAmB;EACtF,MAAMC,aAAa,GAAG,CAAC,CAAC;EACxBD,OAAO,CAACE,cAAc,CAACC,OAAO,CAAC,CAAC;IAAEC,IAAI;IAAEC,KAAK;IAAEC,OAAO,GAAG;EAAG,CAAC,KAAK;IAChEL,aAAa,CAACG,IAAI,CAAC,GAAG;MACpBG,QAAQ,EAAE,CAACZ,WAAW,CAACE,KAAK,EAAEF,WAAW,CAACC,WAAW,EAAE,GAAGU,OAAO,CAAC;MAClEE,MAAM,EAAEH;IACV,CAAC;EACH,CAAC,CAAC;EAEF,OAAAI,aAAA;IACE,CAACd,WAAW,CAACE,KAAK,GAAGG,OAAO,CAACH,KAAK;IAClC,CAACF,WAAW,CAACC,WAAW,GAAG;MACzBW,QAAQ,EAAE,CAACZ,WAAW,CAACE,KAAK,CAAC;MAC7BW,MAAM,EAAER,OAAO,CAACU;IAClB;EAAC,GACET,aAAa;AAEpB"}
@@ -1,9 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.promise.js");
5
- require("core-js/modules/es.regexp.exec.js");
6
- require("core-js/modules/es.string.replace.js");
7
3
  Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
@@ -37,6 +33,7 @@ function _objectHash() {
37
33
  };
38
34
  return data;
39
35
  }
36
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
40
37
  async function writePeerLink(peers, workdir) {
41
38
  const content = generatePeerLink(peers);
42
39
  const fullpath = (0, _path().join)(workdir, `peers-link.${(0, _objectHash().default)(content)}.js`);
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","require","_fsExtra","_camelcase","_interopRequireDefault","_objectHash","writePeerLink","peers","workdir","content","generatePeerLink","fullpath","join","hash","writeFile","links","map","p","packageName","varName","toVarName","x","localName","camelcase","replace","pascalCase"],"sources":["create-peers-link.ts"],"sourcesContent":["import { join } from 'path';\nimport { writeFile } from 'fs-extra';\nimport camelcase from 'camelcase';\nimport hash from 'object-hash';\n\nexport async function writePeerLink(peers: string[], workdir: string) {\n const content = generatePeerLink(peers);\n const fullpath = join(workdir, `peers-link.${hash(content)}.js`);\n\n await writeFile(fullpath, content);\n\n return fullpath;\n}\n\n// TODO - this exposes the packages in the \"window\" strategy,\n// should use a better strategy like umd, systemjs, or jsonp\n\nexport function generatePeerLink(peers: string[]) {\n if (!peers) return '';\n\n const links = peers.map((p) => ({\n packageName: p,\n varName: toVarName(p),\n }));\n\n return `// @ts-nocheck\n${links.map((x) => `import * as ${x.varName} from \"${x.packageName}\"`).join(';\\n')};\n\nconst globalObj = window;\n\n${links.map(({ varName: localName }) => `guard(\"${localName}\", ${localName})`).join(';\\n')};\n\n${links.map((x) => `globalObj[\"${x.varName}\"] = ${x.varName}`).join(';\\n')};\n\nfunction guard(property, expected) {\n var existing = globalObj[property];\n\n if (existing === expected && expected !== undefined)\n console.warn('[expose-peers] \"' + property + '\" already exists in global scope, but with correct value');\n else if (existing !== undefined)\n throw new Error('[expose-peers] \"' + property + '\" already exists in the global scope, cannot overwrite');\n}\n`;\n}\n\nfunction toVarName(packageName: string) {\n return camelcase(packageName.replace('@', '__').replace('/', '_'), { pascalCase: true });\n}\n"],"mappings":";;;;;;;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,SAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,WAAA;EAAA,MAAAH,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAI,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,eAAeM,aAAaA,CAACC,KAAe,EAAEC,OAAe,EAAE;EACpE,MAAMC,OAAO,GAAGC,gBAAgB,CAACH,KAAK,CAAC;EACvC,MAAMI,QAAQ,GAAG,IAAAC,YAAI,EAACJ,OAAO,EAAG,cAAa,IAAAK,qBAAI,EAACJ,OAAO,CAAE,KAAI,CAAC;EAEhE,MAAM,IAAAK,oBAAS,EAACH,QAAQ,EAAEF,OAAO,CAAC;EAElC,OAAOE,QAAQ;AACjB;;AAEA;AACA;;AAEO,SAASD,gBAAgBA,CAACH,KAAe,EAAE;EAChD,IAAI,CAACA,KAAK,EAAE,OAAO,EAAE;EAErB,MAAMQ,KAAK,GAAGR,KAAK,CAACS,GAAG,CAAEC,CAAC,KAAM;IAC9BC,WAAW,EAAED,CAAC;IACdE,OAAO,EAAEC,SAAS,CAACH,CAAC;EACtB,CAAC,CAAC,CAAC;EAEH,OAAQ;AACV,EAAEF,KAAK,CAACC,GAAG,CAAEK,CAAC,IAAM,eAAcA,CAAC,CAACF,OAAQ,UAASE,CAAC,CAACH,WAAY,GAAE,CAAC,CAACN,IAAI,CAAC,KAAK,CAAE;AACnF;AACA;AACA;AACA,EAAEG,KAAK,CAACC,GAAG,CAAC,CAAC;IAAEG,OAAO,EAAEG;EAAU,CAAC,KAAM,UAASA,SAAU,MAAKA,SAAU,GAAE,CAAC,CAACV,IAAI,CAAC,KAAK,CAAE;AAC3F;AACA,EAAEG,KAAK,CAACC,GAAG,CAAEK,CAAC,IAAM,cAAaA,CAAC,CAACF,OAAQ,QAAOE,CAAC,CAACF,OAAQ,EAAC,CAAC,CAACP,IAAI,CAAC,KAAK,CAAE;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AAEA,SAASQ,SAASA,CAACF,WAAmB,EAAE;EACtC,OAAO,IAAAK,oBAAS,EAACL,WAAW,CAACM,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAACA,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;IAAEC,UAAU,EAAE;EAAK,CAAC,CAAC;AAC1F"}
1
+ {"version":3,"names":["_path","data","require","_fsExtra","_camelcase","_interopRequireDefault","_objectHash","obj","__esModule","default","writePeerLink","peers","workdir","content","generatePeerLink","fullpath","join","hash","writeFile","links","map","p","packageName","varName","toVarName","x","localName","camelcase","replace","pascalCase"],"sources":["create-peers-link.ts"],"sourcesContent":["import { join } from 'path';\nimport { writeFile } from 'fs-extra';\nimport camelcase from 'camelcase';\nimport hash from 'object-hash';\n\nexport async function writePeerLink(peers: string[], workdir: string) {\n const content = generatePeerLink(peers);\n const fullpath = join(workdir, `peers-link.${hash(content)}.js`);\n\n await writeFile(fullpath, content);\n\n return fullpath;\n}\n\n// TODO - this exposes the packages in the \"window\" strategy,\n// should use a better strategy like umd, systemjs, or jsonp\n\nexport function generatePeerLink(peers: string[]) {\n if (!peers) return '';\n\n const links = peers.map((p) => ({\n packageName: p,\n varName: toVarName(p),\n }));\n\n return `// @ts-nocheck\n${links.map((x) => `import * as ${x.varName} from \"${x.packageName}\"`).join(';\\n')};\n\nconst globalObj = window;\n\n${links.map(({ varName: localName }) => `guard(\"${localName}\", ${localName})`).join(';\\n')};\n\n${links.map((x) => `globalObj[\"${x.varName}\"] = ${x.varName}`).join(';\\n')};\n\nfunction guard(property, expected) {\n var existing = globalObj[property];\n\n if (existing === expected && expected !== undefined)\n console.warn('[expose-peers] \"' + property + '\" already exists in global scope, but with correct value');\n else if (existing !== undefined)\n throw new Error('[expose-peers] \"' + property + '\" already exists in the global scope, cannot overwrite');\n}\n`;\n}\n\nfunction toVarName(packageName: string) {\n return camelcase(packageName.replace('@', '__').replace('/', '_'), { pascalCase: true });\n}\n"],"mappings":";;;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,SAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,WAAA;EAAA,MAAAH,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAI,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA+B,SAAAI,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAExB,eAAeG,aAAaA,CAACC,KAAe,EAAEC,OAAe,EAAE;EACpE,MAAMC,OAAO,GAAGC,gBAAgB,CAACH,KAAK,CAAC;EACvC,MAAMI,QAAQ,GAAG,IAAAC,YAAI,EAACJ,OAAO,EAAG,cAAa,IAAAK,qBAAI,EAACJ,OAAO,CAAE,KAAI,CAAC;EAEhE,MAAM,IAAAK,oBAAS,EAACH,QAAQ,EAAEF,OAAO,CAAC;EAElC,OAAOE,QAAQ;AACjB;;AAEA;AACA;;AAEO,SAASD,gBAAgBA,CAACH,KAAe,EAAE;EAChD,IAAI,CAACA,KAAK,EAAE,OAAO,EAAE;EAErB,MAAMQ,KAAK,GAAGR,KAAK,CAACS,GAAG,CAAEC,CAAC,KAAM;IAC9BC,WAAW,EAAED,CAAC;IACdE,OAAO,EAAEC,SAAS,CAACH,CAAC;EACtB,CAAC,CAAC,CAAC;EAEH,OAAQ;AACV,EAAEF,KAAK,CAACC,GAAG,CAAEK,CAAC,IAAM,eAAcA,CAAC,CAACF,OAAQ,UAASE,CAAC,CAACH,WAAY,GAAE,CAAC,CAACN,IAAI,CAAC,KAAK,CAAE;AACnF;AACA;AACA;AACA,EAAEG,KAAK,CAACC,GAAG,CAAC,CAAC;IAAEG,OAAO,EAAEG;EAAU,CAAC,KAAM,UAASA,SAAU,MAAKA,SAAU,GAAE,CAAC,CAACV,IAAI,CAAC,KAAK,CAAE;AAC3F;AACA,EAAEG,KAAK,CAACC,GAAG,CAAEK,CAAC,IAAM,cAAaA,CAAC,CAACF,OAAQ,QAAOE,CAAC,CAACF,OAAQ,EAAC,CAAC,CAACP,IAAI,CAAC,KAAK,CAAE;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AAEA,SAASQ,SAASA,CAACF,WAAmB,EAAE;EACtC,OAAO,IAAAK,oBAAS,EAACL,WAAW,CAACM,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAACA,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;IAAEC,UAAU,EAAE;EAAK,CAAC,CAAC;AAC1F"}
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.array.iterator.js");
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -27,13 +25,13 @@ function _chunks() {
27
25
  };
28
26
  return data;
29
27
  }
28
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
30
29
  function generateHtmlConfig(previewDef, options) {
31
- var _options$dev;
32
30
  const chunks = (0, _lodash().default)([previewDef.includePeers && _chunks().CHUNK_NAMES.peers, _chunks().CHUNK_NAMES.previewRoot, ...(previewDef.include || []), previewDef.prefix]);
33
31
  const config = {
34
32
  title: 'Preview',
35
33
  templateContent: (0, _htmlTemplate().html)('Preview'),
36
- minify: (_options$dev = options === null || options === void 0 ? void 0 : options.dev) !== null && _options$dev !== void 0 ? _options$dev : true,
34
+ minify: (options === null || options === void 0 ? void 0 : options.dev) ?? true,
37
35
  chunks,
38
36
  filename: `${previewDef.prefix}.html`
39
37
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_lodash","data","_interopRequireDefault","require","_htmlTemplate","_chunks","generateHtmlConfig","previewDef","options","_options$dev","chunks","compact","includePeers","CHUNK_NAMES","peers","previewRoot","include","prefix","config","title","templateContent","html","minify","dev","filename"],"sources":["html-plugin.ts"],"sourcesContent":["import compact from 'lodash.compact';\nimport type { BundlerHtmlConfig } from '@teambit/bundler';\nimport { PreviewDefinition } from '../preview-definition';\nimport { html } from './html-template';\n\nimport { CHUNK_NAMES } from './chunks';\n\nexport function generateHtmlConfig(previewDef: PreviewDefinition, options: { dev?: boolean }) {\n const chunks = compact([\n previewDef.includePeers && CHUNK_NAMES.peers,\n CHUNK_NAMES.previewRoot,\n ...(previewDef.include || []),\n previewDef.prefix,\n ]);\n\n const config: BundlerHtmlConfig = {\n title: 'Preview',\n templateContent: html('Preview'),\n minify: options?.dev ?? true,\n chunks,\n filename: `${previewDef.prefix}.html`,\n };\n return config;\n}\n"],"mappings":";;;;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAG,cAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,aAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,QAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,OAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,SAASK,kBAAkBA,CAACC,UAA6B,EAAEC,OAA0B,EAAE;EAAA,IAAAC,YAAA;EAC5F,MAAMC,MAAM,GAAG,IAAAC,iBAAO,EAAC,CACrBJ,UAAU,CAACK,YAAY,IAAIC,qBAAW,CAACC,KAAK,EAC5CD,qBAAW,CAACE,WAAW,EACvB,IAAIR,UAAU,CAACS,OAAO,IAAI,EAAE,CAAC,EAC7BT,UAAU,CAACU,MAAM,CAClB,CAAC;EAEF,MAAMC,MAAyB,GAAG;IAChCC,KAAK,EAAE,SAAS;IAChBC,eAAe,EAAE,IAAAC,oBAAI,EAAC,SAAS,CAAC;IAChCC,MAAM,GAAAb,YAAA,GAAED,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEe,GAAG,cAAAd,YAAA,cAAAA,YAAA,GAAI,IAAI;IAC5BC,MAAM;IACNc,QAAQ,EAAG,GAAEjB,UAAU,CAACU,MAAO;EACjC,CAAC;EACD,OAAOC,MAAM;AACf"}
1
+ {"version":3,"names":["_lodash","data","_interopRequireDefault","require","_htmlTemplate","_chunks","obj","__esModule","default","generateHtmlConfig","previewDef","options","chunks","compact","includePeers","CHUNK_NAMES","peers","previewRoot","include","prefix","config","title","templateContent","html","minify","dev","filename"],"sources":["html-plugin.ts"],"sourcesContent":["import compact from 'lodash.compact';\nimport type { BundlerHtmlConfig } from '@teambit/bundler';\nimport { PreviewDefinition } from '../preview-definition';\nimport { html } from './html-template';\n\nimport { CHUNK_NAMES } from './chunks';\n\nexport function generateHtmlConfig(previewDef: PreviewDefinition, options: { dev?: boolean }) {\n const chunks = compact([\n previewDef.includePeers && CHUNK_NAMES.peers,\n CHUNK_NAMES.previewRoot,\n ...(previewDef.include || []),\n previewDef.prefix,\n ]);\n\n const config: BundlerHtmlConfig = {\n title: 'Preview',\n templateContent: html('Preview'),\n minify: options?.dev ?? true,\n chunks,\n filename: `${previewDef.prefix}.html`,\n };\n return config;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAG,cAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,aAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,QAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,OAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAuC,SAAAC,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEhC,SAASG,kBAAkBA,CAACC,UAA6B,EAAEC,OAA0B,EAAE;EAC5F,MAAMC,MAAM,GAAG,IAAAC,iBAAO,EAAC,CACrBH,UAAU,CAACI,YAAY,IAAIC,qBAAW,CAACC,KAAK,EAC5CD,qBAAW,CAACE,WAAW,EACvB,IAAIP,UAAU,CAACQ,OAAO,IAAI,EAAE,CAAC,EAC7BR,UAAU,CAACS,MAAM,CAClB,CAAC;EAEF,MAAMC,MAAyB,GAAG;IAChCC,KAAK,EAAE,SAAS;IAChBC,eAAe,EAAE,IAAAC,oBAAI,EAAC,SAAS,CAAC;IAChCC,MAAM,EAAE,CAAAb,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEc,GAAG,KAAI,IAAI;IAC5Bb,MAAM;IACNc,QAAQ,EAAG,GAAEhB,UAAU,CAACS,MAAO;EACjC,CAAC;EACD,OAAOC,MAAM;AACf"}
@@ -1,18 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.promise.js");
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.ComponentPreviewRoute = void 0;
9
- function _defineProperty2() {
10
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- _defineProperty2 = function () {
12
- return data;
13
- };
14
- return data;
15
- }
16
7
  function _uiFoundationUiPages() {
17
8
  const data = require("@teambit/ui-foundation.ui.pages.static-error");
18
9
  _uiFoundationUiPages = function () {
@@ -27,6 +18,9 @@ function _artifactFileMiddleware() {
27
18
  };
28
19
  return data;
29
20
  }
21
+ 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; }
22
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
23
+ 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); }
30
24
  class ComponentPreviewRoute {
31
25
  constructor(
32
26
  /**
@@ -35,9 +29,9 @@ class ComponentPreviewRoute {
35
29
  preview, logger) {
36
30
  this.preview = preview;
37
31
  this.logger = logger;
38
- (0, _defineProperty2().default)(this, "route", `/component-preview/:filePath(*)`);
39
- (0, _defineProperty2().default)(this, "method", 'get');
40
- (0, _defineProperty2().default)(this, "middlewares", [async (req, res, next) => {
32
+ _defineProperty(this, "route", `/component-preview/:filePath(*)`);
33
+ _defineProperty(this, "method", 'get');
34
+ _defineProperty(this, "middlewares", [async (req, res, next) => {
41
35
  try {
42
36
  let isLegacyPath = false;
43
37
  // @ts-ignore TODO: @guy please fix.
@@ -1 +1 @@
1
- {"version":3,"names":["_uiFoundationUiPages","data","require","_artifactFileMiddleware","ComponentPreviewRoute","constructor","preview","logger","_defineProperty2","default","req","res","next","isLegacyPath","component","status","send","noPreview","artifact","getPreview","e","error","serverError","getArtifactFileMiddleware","exports"],"sources":["component-preview.route.ts"],"sourcesContent":["import type { NextFunction, Request, Response, Route } from '@teambit/express';\nimport type { Component } from '@teambit/component';\nimport { noPreview, serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport type { Logger } from '@teambit/logger';\n\nimport { PreviewMain } from './preview.main.runtime';\nimport type { PreviewArtifact } from './preview-artifact';\nimport type { PreviewUrlParams } from './artifact-file-middleware';\nimport { getArtifactFileMiddleware } from './artifact-file-middleware';\n\nexport class ComponentPreviewRoute implements Route {\n constructor(\n /**\n * preview extension.\n */\n private preview: PreviewMain,\n private logger: Logger\n ) {}\n\n route = `/component-preview/:filePath(*)`;\n method = 'get';\n\n middlewares = [\n async (req: Request<PreviewUrlParams>, res: Response, next: NextFunction) => {\n try {\n let isLegacyPath = false;\n // @ts-ignore TODO: @guy please fix.\n const component = req.component as Component | undefined;\n if (!component) return res.status(404).send(noPreview());\n\n let artifact: PreviewArtifact | undefined;\n // TODO - prevent error `getVinylsAndImportIfMissing is not a function` #4680\n try {\n isLegacyPath = true;\n artifact = await this.preview.getPreview(component);\n } catch (e: any) {\n this.logger.error(`preview.getPreview has failed`, e);\n return res.status(404).send(noPreview());\n }\n // @ts-ignore\n req.artifact = artifact;\n // @ts-ignore\n req.isLegacyPath = isLegacyPath;\n return next();\n } catch (e: any) {\n this.logger.error('failed getting preview', e);\n return res.status(500).send(serverError());\n }\n },\n getArtifactFileMiddleware(this.logger),\n ];\n}\n"],"mappings":";;;;;;;;;;;;;;;AAEA,SAAAA,qBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,oBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMA,SAAAE,wBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,uBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,qBAAqB,CAAkB;EAClDC,WAAWA;EACT;AACJ;AACA;EACYC,OAAoB,EACpBC,MAAc,EACtB;IAAA,KAFQD,OAAoB,GAApBA,OAAoB;IAAA,KACpBC,MAAc,GAAdA,MAAc;IAAA,IAAAC,gBAAA,GAAAC,OAAA,iBAGf,iCAAgC;IAAA,IAAAD,gBAAA,GAAAC,OAAA,kBAChC,KAAK;IAAA,IAAAD,gBAAA,GAAAC,OAAA,uBAEA,CACZ,OAAOC,GAA8B,EAAEC,GAAa,EAAEC,IAAkB,KAAK;MAC3E,IAAI;QACF,IAAIC,YAAY,GAAG,KAAK;QACxB;QACA,MAAMC,SAAS,GAAGJ,GAAG,CAACI,SAAkC;QACxD,IAAI,CAACA,SAAS,EAAE,OAAOH,GAAG,CAACI,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAC,gCAAS,EAAC,CAAC,CAAC;QAExD,IAAIC,QAAqC;QACzC;QACA,IAAI;UACFL,YAAY,GAAG,IAAI;UACnBK,QAAQ,GAAG,MAAM,IAAI,CAACZ,OAAO,CAACa,UAAU,CAACL,SAAS,CAAC;QACrD,CAAC,CAAC,OAAOM,CAAM,EAAE;UACf,IAAI,CAACb,MAAM,CAACc,KAAK,CAAE,+BAA8B,EAAED,CAAC,CAAC;UACrD,OAAOT,GAAG,CAACI,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAC,gCAAS,EAAC,CAAC,CAAC;QAC1C;QACA;QACAP,GAAG,CAACQ,QAAQ,GAAGA,QAAQ;QACvB;QACAR,GAAG,CAACG,YAAY,GAAGA,YAAY;QAC/B,OAAOD,IAAI,CAAC,CAAC;MACf,CAAC,CAAC,OAAOQ,CAAM,EAAE;QACf,IAAI,CAACb,MAAM,CAACc,KAAK,CAAC,wBAAwB,EAAED,CAAC,CAAC;QAC9C,OAAOT,GAAG,CAACI,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAM,kCAAW,EAAC,CAAC,CAAC;MAC5C;IACF,CAAC,EACD,IAAAC,mDAAyB,EAAC,IAAI,CAAChB,MAAM,CAAC,CACvC;EAjCE;AAkCL;AAACiB,OAAA,CAAApB,qBAAA,GAAAA,qBAAA"}
1
+ {"version":3,"names":["_uiFoundationUiPages","data","require","_artifactFileMiddleware","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","ComponentPreviewRoute","constructor","preview","logger","req","next","isLegacyPath","component","status","send","noPreview","artifact","getPreview","e","error","serverError","getArtifactFileMiddleware","exports"],"sources":["component-preview.route.ts"],"sourcesContent":["import type { NextFunction, Request, Response, Route } from '@teambit/express';\nimport type { Component } from '@teambit/component';\nimport { noPreview, serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport type { Logger } from '@teambit/logger';\n\nimport { PreviewMain } from './preview.main.runtime';\nimport type { PreviewArtifact } from './preview-artifact';\nimport type { PreviewUrlParams } from './artifact-file-middleware';\nimport { getArtifactFileMiddleware } from './artifact-file-middleware';\n\nexport class ComponentPreviewRoute implements Route {\n constructor(\n /**\n * preview extension.\n */\n private preview: PreviewMain,\n private logger: Logger\n ) {}\n\n route = `/component-preview/:filePath(*)`;\n method = 'get';\n\n middlewares = [\n async (req: Request<PreviewUrlParams>, res: Response, next: NextFunction) => {\n try {\n let isLegacyPath = false;\n // @ts-ignore TODO: @guy please fix.\n const component = req.component as Component | undefined;\n if (!component) return res.status(404).send(noPreview());\n\n let artifact: PreviewArtifact | undefined;\n // TODO - prevent error `getVinylsAndImportIfMissing is not a function` #4680\n try {\n isLegacyPath = true;\n artifact = await this.preview.getPreview(component);\n } catch (e: any) {\n this.logger.error(`preview.getPreview has failed`, e);\n return res.status(404).send(noPreview());\n }\n // @ts-ignore\n req.artifact = artifact;\n // @ts-ignore\n req.isLegacyPath = isLegacyPath;\n return next();\n } catch (e: any) {\n this.logger.error('failed getting preview', e);\n return res.status(500).send(serverError());\n }\n },\n getArtifactFileMiddleware(this.logger),\n ];\n}\n"],"mappings":";;;;;;AAEA,SAAAA,qBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,oBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMA,SAAAE,wBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,uBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAuE,SAAAG,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAEhE,MAAMU,qBAAqB,CAAkB;EAClDC,WAAWA;EACT;AACJ;AACA;EACYC,OAAoB,EACpBC,MAAc,EACtB;IAAA,KAFQD,OAAoB,GAApBA,OAAoB;IAAA,KACpBC,MAAc,GAAdA,MAAc;IAAA1B,eAAA,gBAGf,iCAAgC;IAAAA,eAAA,iBAChC,KAAK;IAAAA,eAAA,sBAEA,CACZ,OAAO2B,GAA8B,EAAER,GAAa,EAAES,IAAkB,KAAK;MAC3E,IAAI;QACF,IAAIC,YAAY,GAAG,KAAK;QACxB;QACA,MAAMC,SAAS,GAAGH,GAAG,CAACG,SAAkC;QACxD,IAAI,CAACA,SAAS,EAAE,OAAOX,GAAG,CAACY,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAC,gCAAS,EAAC,CAAC,CAAC;QAExD,IAAIC,QAAqC;QACzC;QACA,IAAI;UACFL,YAAY,GAAG,IAAI;UACnBK,QAAQ,GAAG,MAAM,IAAI,CAACT,OAAO,CAACU,UAAU,CAACL,SAAS,CAAC;QACrD,CAAC,CAAC,OAAOM,CAAM,EAAE;UACf,IAAI,CAACV,MAAM,CAACW,KAAK,CAAE,+BAA8B,EAAED,CAAC,CAAC;UACrD,OAAOjB,GAAG,CAACY,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAC,gCAAS,EAAC,CAAC,CAAC;QAC1C;QACA;QACAN,GAAG,CAACO,QAAQ,GAAGA,QAAQ;QACvB;QACAP,GAAG,CAACE,YAAY,GAAGA,YAAY;QAC/B,OAAOD,IAAI,CAAC,CAAC;MACf,CAAC,CAAC,OAAOQ,CAAM,EAAE;QACf,IAAI,CAACV,MAAM,CAACW,KAAK,CAAC,wBAAwB,EAAED,CAAC,CAAC;QAC9C,OAAOjB,GAAG,CAACY,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAM,kCAAW,EAAC,CAAC,CAAC;MAC5C;IACF,CAAC,EACD,IAAAC,mDAAyB,EAAC,IAAI,CAACb,MAAM,CAAC,CACvC;EAjCE;AAkCL;AAACc,OAAA,CAAAjB,qBAAA,GAAAA,qBAAA"}
@@ -1,28 +1,11 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.array.iterator.js");
5
- require("core-js/modules/es.promise.js");
6
3
  Object.defineProperty(exports, "__esModule", {
7
4
  value: true
8
5
  });
9
6
  exports.GENERATE_ENV_TEMPLATE_TASK_NAME = exports.EnvPreviewTemplateTask = void 0;
10
7
  exports.getArtifactDef = getArtifactDef;
11
8
  exports.getArtifactDirectory = getArtifactDirectory;
12
- function _objectWithoutProperties2() {
13
- const data = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
14
- _objectWithoutProperties2 = function () {
15
- return data;
16
- };
17
- return data;
18
- }
19
- function _defineProperty2() {
20
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
- _defineProperty2 = function () {
22
- return data;
23
- };
24
- return data;
25
- }
26
9
  function _builder() {
27
10
  const data = require("@teambit/builder");
28
11
  _builder = function () {
@@ -93,8 +76,15 @@ function _createPeersLink() {
93
76
  };
94
77
  return data;
95
78
  }
79
+ const _excluded = ["name", "path"];
80
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
96
81
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
97
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2().default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
82
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
83
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
84
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
85
+ 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; }
86
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
87
+ 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); }
98
88
  const GENERATE_ENV_TEMPLATE_TASK_NAME = 'GenerateEnvTemplate';
99
89
  exports.GENERATE_ENV_TEMPLATE_TASK_NAME = GENERATE_ENV_TEMPLATE_TASK_NAME;
100
90
  class EnvPreviewTemplateTask {
@@ -106,9 +96,9 @@ class EnvPreviewTemplateTask {
106
96
  this.aspectLoader = aspectLoader;
107
97
  this.dependencyResolver = dependencyResolver;
108
98
  this.logger = logger;
109
- (0, _defineProperty2().default)(this, "aspectId", 'teambit.preview/preview');
110
- (0, _defineProperty2().default)(this, "name", GENERATE_ENV_TEMPLATE_TASK_NAME);
111
- (0, _defineProperty2().default)(this, "location", 'end');
99
+ _defineProperty(this, "aspectId", 'teambit.preview/preview');
100
+ _defineProperty(this, "name", GENERATE_ENV_TEMPLATE_TASK_NAME);
101
+ _defineProperty(this, "location", 'end');
112
102
  }
113
103
  async execute(context) {
114
104
  const previewDefs = this.preview.getDefs();
@@ -184,7 +174,6 @@ class EnvPreviewTemplateTask {
184
174
  return true;
185
175
  }
186
176
  async getEnvTargetFromComponent(context, envComponent, envDef, htmlConfig) {
187
- var _envPreviewConfig$spl;
188
177
  const envPreviewConfig = this.preview.getEnvPreviewConfig(envDef.env);
189
178
  const peers = await this.dependencyResolver.getPreviewHostDependenciesFromEnv(envDef.env);
190
179
  // const module = await this.getPreviewModule(envComponent);
@@ -196,7 +185,7 @@ class EnvPreviewTemplateTask {
196
185
  const previewRoot = await this.preview.writePreviewRuntime(context, [envComponent.id.toString()]);
197
186
  const entries = await this.generateEntries({
198
187
  envDef,
199
- splitComponentBundle: (_envPreviewConfig$spl = envPreviewConfig.splitComponentBundle) !== null && _envPreviewConfig$spl !== void 0 ? _envPreviewConfig$spl : false,
188
+ splitComponentBundle: envPreviewConfig.splitComponentBundle ?? false,
200
189
  workDir: capsule.path,
201
190
  peers,
202
191
  previewRoot
@@ -241,7 +230,7 @@ class EnvPreviewTemplateTask {
241
230
  name,
242
231
  path
243
232
  } = _ref,
244
- rest = (0, _objectWithoutProperties2().default)(_ref, ["name", "path"]);
233
+ rest = _objectWithoutProperties(_ref, _excluded);
245
234
  const linkFile = this.preview.writeLink(name, _component().ComponentMap.create([]), {
246
235
  default: path
247
236
  }, workDir, splitComponentBundle);
@@ -1 +1 @@
1
- {"version":3,"names":["_builder","data","require","_cli","_pMapSeries","_interopRequireDefault","_component","_path","_lodash","_fsExtra","_chunks","_htmlPlugin","_createPeersLink","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","GENERATE_ENV_TEMPLATE_TASK_NAME","exports","EnvPreviewTemplateTask","constructor","preview","envs","aspectLoader","dependencyResolver","logger","execute","context","previewDefs","getDefs","htmlConfig","map","previewModule","generateHtmlConfig","dev","originalSeedersIds","capsuleNetwork","originalSeedersCapsules","c","component","id","toString","grouped","mapSeries","components","includes","undefined","envDef","getEnvFromComponent","env","bundlingStrategy","getBundlingStrategy","name","getEnvTargetFromComponent","shouldUseDefaultBundler","envToGetBundler","getEnvsEnvDefinition","groupEnvId","targets","isEmpty","componentsResults","runBundlerForGroups","groups","bundlerContext","assign","entry","development","metaData","initiator","envId","isEnvTemplate","bundlerResults","entries","targetsGroup","bundler","getTemplateBundler","bundlerResult","run","results","computeResults","flatten","isCoreEnv","envComponent","_envPreviewConfig$spl","envPreviewConfig","getEnvPreviewConfig","peers","getPreviewHostDependenciesFromEnv","capsule","graphCapsules","getCapsule","Error","previewRoot","writePreviewRuntime","generateEntries","splitComponentBundle","workDir","path","outputPath","computeOutputPath","existsSync","mkdirpSync","resolvedEnvAspects","resolveAspects","MainRuntime","requestedOnly","filterByRuntime","resolvedEnv","hostRootDir","aspectPath","warn","html","chunking","splitChunks","hostDependencies","aliasHostDependencies","previewModules","getPreviewModules","previewEntries","_ref","rest","_objectWithoutProperties2","linkFile","writeLink","ComponentMap","create","peerLink","writePeerLink","generateTemplateEntries","previewRootPath","allResults","result","errors","err","message","warning","warnings","startTime","endTime","artifacts","getArtifactDef","modules","compact","Promise","all","def","renderTemplatePathByEnv","prefix","include","join","getArtifactDirectory","CAPSULE_ARTIFACTS_DIR","globPatterns","rootDir"],"sources":["env-preview-template.task.ts"],"sourcesContent":["import {\n BuildContext,\n BuiltTaskResult,\n BuildTask,\n TaskLocation,\n ComponentResult,\n CAPSULE_ARTIFACTS_DIR,\n} from '@teambit/builder';\nimport { MainRuntime } from '@teambit/cli';\nimport mapSeries from 'p-map-series';\nimport { Component, ComponentMap } from '@teambit/component';\nimport { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { Bundler, BundlerContext, BundlerHtmlConfig, BundlerResult, Target } from '@teambit/bundler';\nimport type { EnvDefinition, Environment, EnvsMain } from '@teambit/envs';\nimport { join } from 'path';\nimport { compact, flatten, isEmpty } from 'lodash';\nimport { Logger } from '@teambit/logger';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { existsSync, mkdirpSync } from 'fs-extra';\nimport type { PreviewMain } from './preview.main.runtime';\nimport { generateTemplateEntries } from './bundler/chunks';\nimport { generateHtmlConfig } from './bundler/html-plugin';\nimport { writePeerLink } from './bundler/create-peers-link';\n\nexport type ModuleExpose = {\n name: string;\n path: string;\n include?: string[];\n};\n\ntype TargetsGroup = {\n env: Environment;\n envToGetBundler: Environment;\n targets: Target[];\n};\ntype TargetsGroupMap = {\n [envId: string]: TargetsGroup;\n};\n\nexport const GENERATE_ENV_TEMPLATE_TASK_NAME = 'GenerateEnvTemplate';\n\nexport class EnvPreviewTemplateTask implements BuildTask {\n aspectId = 'teambit.preview/preview';\n name = GENERATE_ENV_TEMPLATE_TASK_NAME;\n location: TaskLocation = 'end';\n // readonly dependencies = [CompilerAspect.id];\n\n constructor(\n private preview: PreviewMain,\n private envs: EnvsMain,\n private aspectLoader: AspectLoaderMain,\n private dependencyResolver: DependencyResolverMain,\n private logger: Logger\n ) {}\n\n async execute(context: BuildContext): Promise<BuiltTaskResult> {\n const previewDefs = this.preview.getDefs();\n const htmlConfig = previewDefs.map((previewModule) => generateHtmlConfig(previewModule, { dev: context.dev }));\n const originalSeedersIds = context.capsuleNetwork.originalSeedersCapsules.map((c) => c.component.id.toString());\n const grouped: TargetsGroupMap = {};\n // avoid running them with `Promise.all` because getEnv methods do import/isolate which can't be in parallel.\n await mapSeries(context.components, async (component) => {\n // Do not run over other components in the graph. it make the process much longer with no need\n if (originalSeedersIds && originalSeedersIds.length && !originalSeedersIds.includes(component.id.toString())) {\n return undefined;\n }\n const envDef = this.envs.getEnvFromComponent(component);\n if (!envDef) return undefined;\n const env = envDef.env;\n const bundlingStrategy = this.preview.getBundlingStrategy(envDef.env);\n if (bundlingStrategy.name === 'env') {\n return undefined;\n }\n const target = await this.getEnvTargetFromComponent(context, component, envDef, htmlConfig);\n if (!target) return undefined;\n const shouldUseDefaultBundler = this.shouldUseDefaultBundler(envDef);\n let envToGetBundler = this.envs.getEnvsEnvDefinition().env;\n let groupEnvId = 'default';\n if (!shouldUseDefaultBundler) {\n envToGetBundler = env;\n groupEnvId = envDef.id;\n }\n if (!grouped[groupEnvId]) {\n grouped[groupEnvId] = {\n env,\n envToGetBundler,\n targets: [target],\n };\n } else {\n grouped[groupEnvId].targets.push(target);\n }\n return undefined;\n });\n if (isEmpty(grouped)) {\n return { componentsResults: [] };\n }\n\n return this.runBundlerForGroups(context, grouped);\n }\n\n private async runBundlerForGroups(context: BuildContext, groups: TargetsGroupMap): Promise<BuiltTaskResult> {\n const bundlerContext: BundlerContext = Object.assign(context, {\n targets: [],\n entry: [],\n development: context.dev,\n metaData: {\n initiator: `${GENERATE_ENV_TEMPLATE_TASK_NAME} task`,\n envId: context.id,\n isEnvTemplate: true,\n },\n });\n\n const bundlerResults = await mapSeries(Object.entries(groups), async ([, targetsGroup]) => {\n bundlerContext.targets = targetsGroup.targets;\n const bundler: Bundler = await targetsGroup.envToGetBundler.getTemplateBundler(bundlerContext);\n const bundlerResult = await bundler.run();\n return bundlerResult;\n });\n\n const results = await this.computeResults(bundlerContext, flatten(bundlerResults));\n return results;\n }\n\n private shouldUseDefaultBundler(envDef: EnvDefinition): boolean {\n if (this.aspectLoader.isCoreEnv(envDef.id) && envDef.id !== 'teambit.react/react-native') return true;\n const env = envDef.env;\n if (env.getTemplateBundler && typeof env.getTemplateBundler === 'function') return false;\n return true;\n }\n\n private async getEnvTargetFromComponent(\n context: BuildContext,\n envComponent: Component,\n envDef: EnvDefinition,\n htmlConfig: BundlerHtmlConfig[]\n ): Promise<Target | undefined> {\n const envPreviewConfig = this.preview.getEnvPreviewConfig(envDef.env);\n\n const peers = await this.dependencyResolver.getPreviewHostDependenciesFromEnv(envDef.env);\n // const module = await this.getPreviewModule(envComponent);\n // const entries = Object.keys(module).map((key) => module.exposes[key]);\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(envComponent.id);\n if (!capsule) throw new Error('no capsule found');\n // Passing here the env itself to make sure it's preview runtime will be part of the preview root file\n // that's needed to make sure the providers register there are running correctly\n const previewRoot = await this.preview.writePreviewRuntime(context, [envComponent.id.toString()]);\n const entries = await this.generateEntries({\n envDef,\n splitComponentBundle: envPreviewConfig.splitComponentBundle ?? false,\n workDir: capsule.path,\n peers,\n previewRoot,\n });\n\n const outputPath = this.computeOutputPath(context, envComponent);\n if (!existsSync(outputPath)) mkdirpSync(outputPath);\n const resolvedEnvAspects = await this.preview.resolveAspects(MainRuntime.name, [envComponent.id], undefined, {\n requestedOnly: true,\n // required to support envs that are plguins (.bit-env files)\n filterByRuntime: false,\n });\n const resolvedEnv = resolvedEnvAspects[0];\n const hostRootDir = resolvedEnv?.aspectPath;\n\n if (!hostRootDir) {\n this.logger.warn(`env preview template task, hostRootDir is not defined, for env ${envComponent.id.toString()}`);\n }\n\n return {\n peers,\n html: htmlConfig,\n entries,\n chunking: { splitChunks: true },\n components: [envComponent],\n outputPath,\n /* It's a path to the root of the host component. */\n hostRootDir,\n hostDependencies: peers,\n aliasHostDependencies: true,\n };\n }\n\n private async generateEntries({\n previewRoot,\n workDir,\n peers,\n envDef,\n splitComponentBundle,\n }: {\n previewRoot: string;\n workDir: string;\n peers: string[];\n envDef: EnvDefinition;\n splitComponentBundle: boolean;\n }) {\n const previewModules = await this.getPreviewModules(envDef);\n const previewEntries = previewModules.map(({ name, path, ...rest }) => {\n const linkFile = this.preview.writeLink(\n name,\n ComponentMap.create([]),\n { default: path },\n workDir,\n splitComponentBundle\n );\n\n return { name, path, ...rest, entry: linkFile };\n });\n const peerLink = await writePeerLink(peers, workDir);\n\n const entries = generateTemplateEntries({\n peers: peerLink,\n previewRootPath: previewRoot,\n previewModules: previewEntries,\n });\n return entries;\n }\n\n async computeResults(context: BundlerContext, results: BundlerResult[]) {\n const allResults = results.map((result) => {\n const componentsResults: ComponentResult[] = result.components.map((component) => {\n return {\n component,\n errors: result.errors.map((err) => (typeof err === 'string' ? err : err.message)),\n warning: result.warnings,\n startTime: result.startTime,\n endTime: result.endTime,\n };\n });\n return componentsResults;\n });\n\n const componentsResults = flatten(allResults);\n\n const artifacts = getArtifactDef();\n\n return {\n componentsResults,\n artifacts,\n };\n }\n\n private async getPreviewModules(envDef: EnvDefinition): Promise<ModuleExpose[]> {\n const previewDefs = this.preview.getDefs();\n\n const modules = compact(\n await Promise.all(\n previewDefs.map(async (def) => {\n if (!def.renderTemplatePathByEnv) return undefined;\n return {\n name: def.prefix,\n path: (await def.renderTemplatePathByEnv(envDef.env)) || '',\n include: def.include,\n };\n })\n )\n );\n\n return modules;\n }\n\n private computeOutputPath(context: BuildContext, component: Component) {\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(component.id);\n if (!capsule) throw new Error('no capsule found');\n return join(capsule.path, getArtifactDirectory());\n }\n}\n\nexport function getArtifactDirectory() {\n return join(CAPSULE_ARTIFACTS_DIR, 'env-template');\n}\n\nexport function getArtifactDef() {\n return [\n {\n name: 'env-template',\n globPatterns: ['**'],\n rootDir: getArtifactDirectory(),\n },\n ];\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_builder","data","require","_cli","_pMapSeries","_interopRequireDefault","_component","_path","_lodash","_fsExtra","_chunks","_htmlPlugin","_createPeersLink","_excluded","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","GENERATE_ENV_TEMPLATE_TASK_NAME","exports","EnvPreviewTemplateTask","constructor","preview","envs","aspectLoader","dependencyResolver","logger","execute","context","previewDefs","getDefs","htmlConfig","map","previewModule","generateHtmlConfig","dev","originalSeedersIds","capsuleNetwork","originalSeedersCapsules","c","component","id","toString","grouped","mapSeries","components","includes","envDef","getEnvFromComponent","env","bundlingStrategy","getBundlingStrategy","name","getEnvTargetFromComponent","shouldUseDefaultBundler","envToGetBundler","getEnvsEnvDefinition","groupEnvId","targets","isEmpty","componentsResults","runBundlerForGroups","groups","bundlerContext","assign","entry","development","metaData","initiator","envId","isEnvTemplate","bundlerResults","entries","targetsGroup","bundler","getTemplateBundler","bundlerResult","run","results","computeResults","flatten","isCoreEnv","envComponent","envPreviewConfig","getEnvPreviewConfig","peers","getPreviewHostDependenciesFromEnv","capsule","graphCapsules","getCapsule","Error","previewRoot","writePreviewRuntime","generateEntries","splitComponentBundle","workDir","path","outputPath","computeOutputPath","existsSync","mkdirpSync","resolvedEnvAspects","resolveAspects","MainRuntime","requestedOnly","filterByRuntime","resolvedEnv","hostRootDir","aspectPath","warn","html","chunking","splitChunks","hostDependencies","aliasHostDependencies","previewModules","getPreviewModules","previewEntries","_ref","rest","linkFile","writeLink","ComponentMap","create","peerLink","writePeerLink","generateTemplateEntries","previewRootPath","allResults","result","errors","err","message","warning","warnings","startTime","endTime","artifacts","getArtifactDef","modules","compact","Promise","all","def","renderTemplatePathByEnv","prefix","include","join","getArtifactDirectory","CAPSULE_ARTIFACTS_DIR","globPatterns","rootDir"],"sources":["env-preview-template.task.ts"],"sourcesContent":["import {\n BuildContext,\n BuiltTaskResult,\n BuildTask,\n TaskLocation,\n ComponentResult,\n CAPSULE_ARTIFACTS_DIR,\n} from '@teambit/builder';\nimport { MainRuntime } from '@teambit/cli';\nimport mapSeries from 'p-map-series';\nimport { Component, ComponentMap } from '@teambit/component';\nimport { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { Bundler, BundlerContext, BundlerHtmlConfig, BundlerResult, Target } from '@teambit/bundler';\nimport type { EnvDefinition, Environment, EnvsMain } from '@teambit/envs';\nimport { join } from 'path';\nimport { compact, flatten, isEmpty } from 'lodash';\nimport { Logger } from '@teambit/logger';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { existsSync, mkdirpSync } from 'fs-extra';\nimport type { PreviewMain } from './preview.main.runtime';\nimport { generateTemplateEntries } from './bundler/chunks';\nimport { generateHtmlConfig } from './bundler/html-plugin';\nimport { writePeerLink } from './bundler/create-peers-link';\n\nexport type ModuleExpose = {\n name: string;\n path: string;\n include?: string[];\n};\n\ntype TargetsGroup = {\n env: Environment;\n envToGetBundler: Environment;\n targets: Target[];\n};\ntype TargetsGroupMap = {\n [envId: string]: TargetsGroup;\n};\n\nexport const GENERATE_ENV_TEMPLATE_TASK_NAME = 'GenerateEnvTemplate';\n\nexport class EnvPreviewTemplateTask implements BuildTask {\n aspectId = 'teambit.preview/preview';\n name = GENERATE_ENV_TEMPLATE_TASK_NAME;\n location: TaskLocation = 'end';\n // readonly dependencies = [CompilerAspect.id];\n\n constructor(\n private preview: PreviewMain,\n private envs: EnvsMain,\n private aspectLoader: AspectLoaderMain,\n private dependencyResolver: DependencyResolverMain,\n private logger: Logger\n ) {}\n\n async execute(context: BuildContext): Promise<BuiltTaskResult> {\n const previewDefs = this.preview.getDefs();\n const htmlConfig = previewDefs.map((previewModule) => generateHtmlConfig(previewModule, { dev: context.dev }));\n const originalSeedersIds = context.capsuleNetwork.originalSeedersCapsules.map((c) => c.component.id.toString());\n const grouped: TargetsGroupMap = {};\n // avoid running them with `Promise.all` because getEnv methods do import/isolate which can't be in parallel.\n await mapSeries(context.components, async (component) => {\n // Do not run over other components in the graph. it make the process much longer with no need\n if (originalSeedersIds && originalSeedersIds.length && !originalSeedersIds.includes(component.id.toString())) {\n return undefined;\n }\n const envDef = this.envs.getEnvFromComponent(component);\n if (!envDef) return undefined;\n const env = envDef.env;\n const bundlingStrategy = this.preview.getBundlingStrategy(envDef.env);\n if (bundlingStrategy.name === 'env') {\n return undefined;\n }\n const target = await this.getEnvTargetFromComponent(context, component, envDef, htmlConfig);\n if (!target) return undefined;\n const shouldUseDefaultBundler = this.shouldUseDefaultBundler(envDef);\n let envToGetBundler = this.envs.getEnvsEnvDefinition().env;\n let groupEnvId = 'default';\n if (!shouldUseDefaultBundler) {\n envToGetBundler = env;\n groupEnvId = envDef.id;\n }\n if (!grouped[groupEnvId]) {\n grouped[groupEnvId] = {\n env,\n envToGetBundler,\n targets: [target],\n };\n } else {\n grouped[groupEnvId].targets.push(target);\n }\n return undefined;\n });\n if (isEmpty(grouped)) {\n return { componentsResults: [] };\n }\n\n return this.runBundlerForGroups(context, grouped);\n }\n\n private async runBundlerForGroups(context: BuildContext, groups: TargetsGroupMap): Promise<BuiltTaskResult> {\n const bundlerContext: BundlerContext = Object.assign(context, {\n targets: [],\n entry: [],\n development: context.dev,\n metaData: {\n initiator: `${GENERATE_ENV_TEMPLATE_TASK_NAME} task`,\n envId: context.id,\n isEnvTemplate: true,\n },\n });\n\n const bundlerResults = await mapSeries(Object.entries(groups), async ([, targetsGroup]) => {\n bundlerContext.targets = targetsGroup.targets;\n const bundler: Bundler = await targetsGroup.envToGetBundler.getTemplateBundler(bundlerContext);\n const bundlerResult = await bundler.run();\n return bundlerResult;\n });\n\n const results = await this.computeResults(bundlerContext, flatten(bundlerResults));\n return results;\n }\n\n private shouldUseDefaultBundler(envDef: EnvDefinition): boolean {\n if (this.aspectLoader.isCoreEnv(envDef.id) && envDef.id !== 'teambit.react/react-native') return true;\n const env = envDef.env;\n if (env.getTemplateBundler && typeof env.getTemplateBundler === 'function') return false;\n return true;\n }\n\n private async getEnvTargetFromComponent(\n context: BuildContext,\n envComponent: Component,\n envDef: EnvDefinition,\n htmlConfig: BundlerHtmlConfig[]\n ): Promise<Target | undefined> {\n const envPreviewConfig = this.preview.getEnvPreviewConfig(envDef.env);\n\n const peers = await this.dependencyResolver.getPreviewHostDependenciesFromEnv(envDef.env);\n // const module = await this.getPreviewModule(envComponent);\n // const entries = Object.keys(module).map((key) => module.exposes[key]);\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(envComponent.id);\n if (!capsule) throw new Error('no capsule found');\n // Passing here the env itself to make sure it's preview runtime will be part of the preview root file\n // that's needed to make sure the providers register there are running correctly\n const previewRoot = await this.preview.writePreviewRuntime(context, [envComponent.id.toString()]);\n const entries = await this.generateEntries({\n envDef,\n splitComponentBundle: envPreviewConfig.splitComponentBundle ?? false,\n workDir: capsule.path,\n peers,\n previewRoot,\n });\n\n const outputPath = this.computeOutputPath(context, envComponent);\n if (!existsSync(outputPath)) mkdirpSync(outputPath);\n const resolvedEnvAspects = await this.preview.resolveAspects(MainRuntime.name, [envComponent.id], undefined, {\n requestedOnly: true,\n // required to support envs that are plguins (.bit-env files)\n filterByRuntime: false,\n });\n const resolvedEnv = resolvedEnvAspects[0];\n const hostRootDir = resolvedEnv?.aspectPath;\n\n if (!hostRootDir) {\n this.logger.warn(`env preview template task, hostRootDir is not defined, for env ${envComponent.id.toString()}`);\n }\n\n return {\n peers,\n html: htmlConfig,\n entries,\n chunking: { splitChunks: true },\n components: [envComponent],\n outputPath,\n /* It's a path to the root of the host component. */\n hostRootDir,\n hostDependencies: peers,\n aliasHostDependencies: true,\n };\n }\n\n private async generateEntries({\n previewRoot,\n workDir,\n peers,\n envDef,\n splitComponentBundle,\n }: {\n previewRoot: string;\n workDir: string;\n peers: string[];\n envDef: EnvDefinition;\n splitComponentBundle: boolean;\n }) {\n const previewModules = await this.getPreviewModules(envDef);\n const previewEntries = previewModules.map(({ name, path, ...rest }) => {\n const linkFile = this.preview.writeLink(\n name,\n ComponentMap.create([]),\n { default: path },\n workDir,\n splitComponentBundle\n );\n\n return { name, path, ...rest, entry: linkFile };\n });\n const peerLink = await writePeerLink(peers, workDir);\n\n const entries = generateTemplateEntries({\n peers: peerLink,\n previewRootPath: previewRoot,\n previewModules: previewEntries,\n });\n return entries;\n }\n\n async computeResults(context: BundlerContext, results: BundlerResult[]) {\n const allResults = results.map((result) => {\n const componentsResults: ComponentResult[] = result.components.map((component) => {\n return {\n component,\n errors: result.errors.map((err) => (typeof err === 'string' ? err : err.message)),\n warning: result.warnings,\n startTime: result.startTime,\n endTime: result.endTime,\n };\n });\n return componentsResults;\n });\n\n const componentsResults = flatten(allResults);\n\n const artifacts = getArtifactDef();\n\n return {\n componentsResults,\n artifacts,\n };\n }\n\n private async getPreviewModules(envDef: EnvDefinition): Promise<ModuleExpose[]> {\n const previewDefs = this.preview.getDefs();\n\n const modules = compact(\n await Promise.all(\n previewDefs.map(async (def) => {\n if (!def.renderTemplatePathByEnv) return undefined;\n return {\n name: def.prefix,\n path: (await def.renderTemplatePathByEnv(envDef.env)) || '',\n include: def.include,\n };\n })\n )\n );\n\n return modules;\n }\n\n private computeOutputPath(context: BuildContext, component: Component) {\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(component.id);\n if (!capsule) throw new Error('no capsule found');\n return join(capsule.path, getArtifactDirectory());\n }\n}\n\nexport function getArtifactDirectory() {\n return join(CAPSULE_ARTIFACTS_DIR, 'env-template');\n}\n\nexport function getArtifactDef() {\n return [\n {\n name: 'env-template',\n globPatterns: ['**'],\n rootDir: getArtifactDirectory(),\n },\n ];\n}\n"],"mappings":"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"}
@@ -1,18 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.promise.js");
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.EnvTemplateRoute = void 0;
9
- function _defineProperty2() {
10
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- _defineProperty2 = function () {
12
- return data;
13
- };
14
- return data;
15
- }
16
7
  function _uiFoundationUiPages() {
17
8
  const data = require("@teambit/ui-foundation.ui.pages.static-error");
18
9
  _uiFoundationUiPages = function () {
@@ -27,6 +18,9 @@ function _artifactFileMiddleware() {
27
18
  };
28
19
  return data;
29
20
  }
21
+ 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; }
22
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
23
+ 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); }
30
24
  // Week for now
31
25
  const CACHE_MAX_AGE = 60 * 60 * 24 * 7;
32
26
  const getCacheControl = (_filePath, _contents, mimeType) => {
@@ -44,13 +38,13 @@ class EnvTemplateRoute {
44
38
  preview, logger) {
45
39
  this.preview = preview;
46
40
  this.logger = logger;
47
- (0, _defineProperty2().default)(this, "route", `/env-template/:previewName/:filePath(*)`);
48
- (0, _defineProperty2().default)(this, "method", 'get');
41
+ _defineProperty(this, "route", `/env-template/:previewName/:filePath(*)`);
42
+ _defineProperty(this, "method", 'get');
49
43
  // Since we might give it a core env id
50
44
  // Then in the component route when we do host.get(id) it will fail, as we don't have the core envs in the scope/workspace
51
- (0, _defineProperty2().default)(this, "resolveComponent", false);
45
+ _defineProperty(this, "resolveComponent", false);
52
46
  // @ts-ignore
53
- (0, _defineProperty2().default)(this, "middlewares", [async (req, res, next) => {
47
+ _defineProperty(this, "middlewares", [async (req, res, next) => {
54
48
  try {
55
49
  // @ts-ignore TODO: @guy please fix.
56
50
  // const component = req.component as Component | undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["_uiFoundationUiPages","data","require","_artifactFileMiddleware","CACHE_MAX_AGE","getCacheControl","_filePath","_contents","mimeType","undefined","EnvTemplateRoute","constructor","preview","logger","_defineProperty2","default","req","res","next","artifact","componentId","envId","params","getEnvTemplateByEnvId","e","error","status","send","noPreview","isLegacyPath","serverError","getArtifactFileMiddleware","exports"],"sources":["env-template.route.ts"],"sourcesContent":["import type { NextFunction, Request, Response } from '@teambit/express';\nimport type { ComponentUrlParams, RegisteredComponentRoute } from '@teambit/component';\nimport { noPreview, serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport type { Logger } from '@teambit/logger';\n\nimport type { PreviewMain } from './preview.main.runtime';\nimport type { PreviewArtifact } from './preview-artifact';\nimport { getArtifactFileMiddleware, GetCacheControlFunc } from './artifact-file-middleware';\n\ntype UrlParams = ComponentUrlParams & {\n filePath?: string;\n};\n\n// Week for now\nconst CACHE_MAX_AGE = 60 * 60 * 24 * 7;\n\nconst getCacheControl: GetCacheControlFunc = (_filePath: string, _contents: string, mimeType?: string | null) => {\n // Do not cache the html files\n if (mimeType && mimeType === 'text/html') {\n return undefined;\n }\n return `private, max-age=${CACHE_MAX_AGE}`;\n};\n\nexport class EnvTemplateRoute implements RegisteredComponentRoute {\n constructor(\n /**\n * preview extension.\n */\n private preview: PreviewMain,\n private logger: Logger\n ) {}\n\n route = `/env-template/:previewName/:filePath(*)`;\n method = 'get';\n\n // Since we might give it a core env id\n // Then in the component route when we do host.get(id) it will fail, as we don't have the core envs in the scope/workspace\n resolveComponent = false;\n\n // @ts-ignore\n middlewares = [\n async (req: Request<UrlParams>, res: Response, next: NextFunction) => {\n try {\n // @ts-ignore TODO: @guy please fix.\n // const component = req.component as Component | undefined;\n // if (!component) return res.status(404).send(noPreview());\n\n let artifact: PreviewArtifact | undefined;\n // TODO - prevent error `getVinylsAndImportIfMissing is not a function` #4680\n try {\n const { componentId: envId } = req.params;\n artifact = await this.preview.getEnvTemplateByEnvId(envId);\n } catch (e: any) {\n this.logger.error(`getEnvTemplateByEnvId has failed`, e);\n return res.status(404).send(noPreview());\n }\n\n // @ts-ignore\n req.artifact = artifact;\n // @ts-ignore\n req.isLegacyPath = false;\n\n return next();\n } catch (e: any) {\n this.logger.error('failed getting preview', e);\n return res.status(500).send(serverError());\n }\n },\n getArtifactFileMiddleware(this.logger, getCacheControl),\n ];\n}\n"],"mappings":";;;;;;;;;;;;;;;AAEA,SAAAA,qBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,oBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAE,wBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,uBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMA;AACA,MAAMG,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;AAEtC,MAAMC,eAAoC,GAAGA,CAACC,SAAiB,EAAEC,SAAiB,EAAEC,QAAwB,KAAK;EAC/G;EACA,IAAIA,QAAQ,IAAIA,QAAQ,KAAK,WAAW,EAAE;IACxC,OAAOC,SAAS;EAClB;EACA,OAAQ,oBAAmBL,aAAc,EAAC;AAC5C,CAAC;AAEM,MAAMM,gBAAgB,CAAqC;EAChEC,WAAWA;EACT;AACJ;AACA;EACYC,OAAoB,EACpBC,MAAc,EACtB;IAAA,KAFQD,OAAoB,GAApBA,OAAoB;IAAA,KACpBC,MAAc,GAAdA,MAAc;IAAA,IAAAC,gBAAA,GAAAC,OAAA,iBAGf,yCAAwC;IAAA,IAAAD,gBAAA,GAAAC,OAAA,kBACxC,KAAK;IAEd;IACA;IAAA,IAAAD,gBAAA,GAAAC,OAAA,4BACmB,KAAK;IAExB;IAAA,IAAAD,gBAAA,GAAAC,OAAA,uBACc,CACZ,OAAOC,GAAuB,EAAEC,GAAa,EAAEC,IAAkB,KAAK;MACpE,IAAI;QACF;QACA;QACA;;QAEA,IAAIC,QAAqC;QACzC;QACA,IAAI;UACF,MAAM;YAAEC,WAAW,EAAEC;UAAM,CAAC,GAAGL,GAAG,CAACM,MAAM;UACzCH,QAAQ,GAAG,MAAM,IAAI,CAACP,OAAO,CAACW,qBAAqB,CAACF,KAAK,CAAC;QAC5D,CAAC,CAAC,OAAOG,CAAM,EAAE;UACf,IAAI,CAACX,MAAM,CAACY,KAAK,CAAE,kCAAiC,EAAED,CAAC,CAAC;UACxD,OAAOP,GAAG,CAACS,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAC,gCAAS,EAAC,CAAC,CAAC;QAC1C;;QAEA;QACAZ,GAAG,CAACG,QAAQ,GAAGA,QAAQ;QACvB;QACAH,GAAG,CAACa,YAAY,GAAG,KAAK;QAExB,OAAOX,IAAI,CAAC,CAAC;MACf,CAAC,CAAC,OAAOM,CAAM,EAAE;QACf,IAAI,CAACX,MAAM,CAACY,KAAK,CAAC,wBAAwB,EAAED,CAAC,CAAC;QAC9C,OAAOP,GAAG,CAACS,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,IAAAG,kCAAW,EAAC,CAAC,CAAC;MAC5C;IACF,CAAC,EACD,IAAAC,mDAAyB,EAAC,IAAI,CAAClB,MAAM,EAAER,eAAe,CAAC,CACxD;EAvCE;AAwCL;AAAC2B,OAAA,CAAAtB,gBAAA,GAAAA,gBAAA"}
1
+ {"version":3,"names":["_uiFoundationUiPages","data","require","_artifactFileMiddleware","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","CACHE_MAX_AGE","getCacheControl","_filePath","_contents","mimeType","EnvTemplateRoute","constructor","preview","logger","req","next","artifact","componentId","envId","params","getEnvTemplateByEnvId","e","error","status","send","noPreview","isLegacyPath","serverError","getArtifactFileMiddleware","exports"],"sources":["env-template.route.ts"],"sourcesContent":["import type { NextFunction, Request, Response } from '@teambit/express';\nimport type { ComponentUrlParams, RegisteredComponentRoute } from '@teambit/component';\nimport { noPreview, serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport type { Logger } from '@teambit/logger';\n\nimport type { PreviewMain } from './preview.main.runtime';\nimport type { PreviewArtifact } from './preview-artifact';\nimport { getArtifactFileMiddleware, GetCacheControlFunc } from './artifact-file-middleware';\n\ntype UrlParams = ComponentUrlParams & {\n filePath?: string;\n};\n\n// Week for now\nconst CACHE_MAX_AGE = 60 * 60 * 24 * 7;\n\nconst getCacheControl: GetCacheControlFunc = (_filePath: string, _contents: string, mimeType?: string | null) => {\n // Do not cache the html files\n if (mimeType && mimeType === 'text/html') {\n return undefined;\n }\n return `private, max-age=${CACHE_MAX_AGE}`;\n};\n\nexport class EnvTemplateRoute implements RegisteredComponentRoute {\n constructor(\n /**\n * preview extension.\n */\n private preview: PreviewMain,\n private logger: Logger\n ) {}\n\n route = `/env-template/:previewName/:filePath(*)`;\n method = 'get';\n\n // Since we might give it a core env id\n // Then in the component route when we do host.get(id) it will fail, as we don't have the core envs in the scope/workspace\n resolveComponent = false;\n\n // @ts-ignore\n middlewares = [\n async (req: Request<UrlParams>, res: Response, next: NextFunction) => {\n try {\n // @ts-ignore TODO: @guy please fix.\n // const component = req.component as Component | undefined;\n // if (!component) return res.status(404).send(noPreview());\n\n let artifact: PreviewArtifact | undefined;\n // TODO - prevent error `getVinylsAndImportIfMissing is not a function` #4680\n try {\n const { componentId: envId } = req.params;\n artifact = await this.preview.getEnvTemplateByEnvId(envId);\n } catch (e: any) {\n this.logger.error(`getEnvTemplateByEnvId has failed`, e);\n return res.status(404).send(noPreview());\n }\n\n // @ts-ignore\n req.artifact = artifact;\n // @ts-ignore\n req.isLegacyPath = false;\n\n return next();\n } catch (e: any) {\n this.logger.error('failed getting preview', e);\n return res.status(500).send(serverError());\n }\n },\n getArtifactFileMiddleware(this.logger, getCacheControl),\n ];\n}\n"],"mappings":"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"}
@@ -1,17 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.ClickInsideAnIframeEvent = void 0;
8
- function _defineProperty2() {
9
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- _defineProperty2 = function () {
11
- return data;
12
- };
13
- return data;
14
- }
15
7
  function _pubsub() {
16
8
  const data = require("@teambit/pubsub");
17
9
  _pubsub = function () {
@@ -19,8 +11,9 @@ function _pubsub() {
19
11
  };
20
12
  return data;
21
13
  }
22
- /* eslint-disable max-classes-per-file */
23
-
14
+ 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; }
15
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
16
+ 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); } /* eslint-disable max-classes-per-file */
24
17
  class ClickInsideAnIframeEventData {
25
18
  constructor(clickEvent) {
26
19
  this.clickEvent = clickEvent;
@@ -34,6 +27,6 @@ class ClickInsideAnIframeEvent extends _pubsub().BitBaseEvent {
34
27
  }
35
28
  }
36
29
  exports.ClickInsideAnIframeEvent = ClickInsideAnIframeEvent;
37
- (0, _defineProperty2().default)(ClickInsideAnIframeEvent, "TYPE", 'click-inside-an-iframe');
30
+ _defineProperty(ClickInsideAnIframeEvent, "TYPE", 'click-inside-an-iframe');
38
31
 
39
32
  //# sourceMappingURL=click-inside-an-iframe.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_pubsub","data","require","ClickInsideAnIframeEventData","constructor","clickEvent","ClickInsideAnIframeEvent","BitBaseEvent","timestamp","Date","now","TYPE","exports","_defineProperty2","default"],"sources":["click-inside-an-iframe.ts"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass ClickInsideAnIframeEventData {\n constructor(private clickEvent: any) {}\n}\n\nexport class ClickInsideAnIframeEvent extends BitBaseEvent<ClickInsideAnIframeEventData> {\n static readonly TYPE = 'click-inside-an-iframe';\n\n constructor(readonly timestamp = Date.now(), readonly clickEvent) {\n super(ClickInsideAnIframeEvent.TYPE, '0.0.1', timestamp, new ClickInsideAnIframeEventData(clickEvent));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AACA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AADA;;AAGA,MAAME,4BAA4B,CAAC;EACjCC,WAAWA,CAASC,UAAe,EAAE;IAAA,KAAjBA,UAAe,GAAfA,UAAe;EAAG;AACxC;AAEO,MAAMC,wBAAwB,SAASC,sBAAY,CAA+B;EAGvFH,WAAWA,CAAUI,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAWL,UAAU,EAAE;IAChE,KAAK,CAACC,wBAAwB,CAACK,IAAI,EAAE,OAAO,EAAEH,SAAS,EAAE,IAAIL,4BAA4B,CAACE,UAAU,CAAC,CAAC;IAAC,KADpFG,SAAS,GAATA,SAAS;IAAA,KAAwBH,UAAU,GAAVA,UAAU;EAEhE;AACF;AAACO,OAAA,CAAAN,wBAAA,GAAAA,wBAAA;AAAA,IAAAO,gBAAA,GAAAC,OAAA,EANYR,wBAAwB,UACZ,wBAAwB"}
1
+ {"version":3,"names":["_pubsub","data","require","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","ClickInsideAnIframeEventData","constructor","clickEvent","ClickInsideAnIframeEvent","BitBaseEvent","timestamp","Date","now","TYPE","exports"],"sources":["click-inside-an-iframe.ts"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass ClickInsideAnIframeEventData {\n constructor(private clickEvent: any) {}\n}\n\nexport class ClickInsideAnIframeEvent extends BitBaseEvent<ClickInsideAnIframeEventData> {\n static readonly TYPE = 'click-inside-an-iframe';\n\n constructor(readonly timestamp = Date.now(), readonly clickEvent) {\n super(ClickInsideAnIframeEvent.TYPE, '0.0.1', timestamp, new ClickInsideAnIframeEventData(clickEvent));\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA+C,SAAAE,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA,KAD/C;AAGA,MAAMU,4BAA4B,CAAC;EACjCC,WAAWA,CAASC,UAAe,EAAE;IAAA,KAAjBA,UAAe,GAAfA,UAAe;EAAG;AACxC;AAEO,MAAMC,wBAAwB,SAASC,sBAAY,CAA+B;EAGvFH,WAAWA,CAAUI,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAWL,UAAU,EAAE;IAChE,KAAK,CAACC,wBAAwB,CAACK,IAAI,EAAE,OAAO,EAAEH,SAAS,EAAE,IAAIL,4BAA4B,CAACE,UAAU,CAAC,CAAC;IAAC,KADpFG,SAAS,GAATA,SAAS;IAAA,KAAwBH,UAAU,GAAVA,UAAU;EAEhE;AACF;AAACO,OAAA,CAAAN,wBAAA,GAAAA,wBAAA;AAAA1B,eAAA,CANY0B,wBAAwB,UACZ,wBAAwB"}
@@ -1,22 +1,17 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.ExecutionRef = void 0;
8
- function _defineProperty2() {
9
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- _defineProperty2 = function () {
11
- return data;
12
- };
13
- return data;
14
- }
7
+ 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; }
8
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
9
+ 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
10
  // TODO - use workspace.list() instead of this
16
11
  class ExecutionRef {
17
12
  constructor(executionCtx) {
18
13
  this.executionCtx = executionCtx;
19
- (0, _defineProperty2().default)(this, "currentComponents", void 0);
14
+ _defineProperty(this, "currentComponents", void 0);
20
15
  this.currentComponents = executionCtx.components;
21
16
  }
22
17
  add(added) {