@module-federation/native-federation-typescript 0.1.1 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,33 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [0.2.1](https://github.com/module-federation/nextjs-mf/compare/native-federation-typescript-0.2.0...native-federation-typescript-0.2.1) (2023-05-13)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * [#857](https://github.com/module-federation/nextjs-mf/issues/857) ([#859](https://github.com/module-federation/nextjs-mf/issues/859)) ([2fb609e](https://github.com/module-federation/nextjs-mf/commit/2fb609efb9a3c8f3e6740e0159510d649c1d229d))
11
+ * downgrade next to v13.3.1 ([0032452](https://github.com/module-federation/nextjs-mf/commit/0032452980c70b211b6c04332326b7973f7c8446))
12
+ * removed lock ([82f578e](https://github.com/module-federation/nextjs-mf/commit/82f578e713734f7f6b06e09b794fab4f66af248a))
13
+
14
+
15
+
16
+ # [0.2.0](https://github.com/module-federation/nextjs-mf/compare/native-federation-typescript-0.1.1...native-federation-typescript-0.2.0) (2023-04-29)
17
+
18
+
19
+ ### Bug Fixes
20
+
21
+ * removed any from error logger type ([fb9fcc3](https://github.com/module-federation/nextjs-mf/commit/fb9fcc3a54a13be36335830f076a86557b75bb4a))
22
+ * subpath ([1548501](https://github.com/module-federation/nextjs-mf/commit/1548501bb4679c0c534c02609cb6bc5459f224a4))
23
+ * subpath ([aaad665](https://github.com/module-federation/nextjs-mf/commit/aaad665307d80b49ee19496a5b8b400df243558e))
24
+
25
+
26
+ ### Features
27
+
28
+ * release to npm with next tag to not ruine latest one ([#763](https://github.com/module-federation/nextjs-mf/issues/763)) ([f2d199b](https://github.com/module-federation/nextjs-mf/commit/f2d199b3b3fbbd428514b1ce1f139efc82f7fff0))
29
+
30
+
31
+
5
32
  ## [0.1.1](https://github.com/module-federation/nextjs-mf/compare/native-federation-typescript-0.1.0...native-federation-typescript-0.1.1) (2023-04-12)
6
33
 
7
34
 
@@ -0,0 +1,2 @@
1
+ var I=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,o)=>(typeof require<"u"?require:e)[o]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});import l from"ansi-colors";import{rm as q}from"fs/promises";import{resolve as ne}from"path";import{mergeDeepRight as pe}from"rambda";import{createUnplugin as S}from"unplugin";var L={typesFolder:"@mf-types",deleteTypesFolder:!0},U=(t,e)=>{let o=e.split("@").at(-1),r=new URL(o),s=r.pathname.split("/").slice(0,-1).join("/");return r.pathname=`${s}/${t.typesFolder}.zip`,r.href},z=t=>Object.entries(t.moduleFederationConfig.remotes).reduce((e,[o,r])=>(e[o]=U(t,r),e),{}),T=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...L,...t},o=z(e);return{hostOptions:e,mapRemotesToDownload:o}};import{existsSync as W}from"fs";import{dirname as _,join as d,resolve as Z}from"path";import a from"typescript";var M={tsConfigPath:"./tsconfig.json",typesFolder:"@mf-types",compiledTypesFolder:"compiled-types",deleteTypesFolder:!0,additionalFilesToCompile:[],compilerInstance:"tsc"},B=({tsConfigPath:t,typesFolder:e,compiledTypesFolder:o})=>{let r=Z(t),s=a.readConfigFile(r,a.sys.readFile),i=a.parseJsonConfigFileContent(s.config,a.sys,_(r)),p=d(i.options.outDir||"dist",e,o);return{...i.options,emitDeclarationOnly:!0,noEmit:!1,declaration:!0,outDir:p}},X=["ts","tsx","vue","svelte"],R=t=>{let e=process.cwd();for(let o of X){let r=d(e,`${t}.${o}`);if(W(r))return r}},k=t=>Object.entries(t.moduleFederationConfig.exposes).reduce((e,[o,r])=>(e[o]=R(r)||R(d(r,"index"))||r,e),{}),v=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...M,...t},o=k(e);return{tsConfig:B(e),mapComponentsToExpose:o,remoteOptions:e}};import E from"adm-zip";import oe from"ansi-colors";import re from"axios";import{join as P}from"path";import C from"ansi-colors";import{dirname as J,join as V,normalize as h,relative as G}from"path";import m from"typescript";var K=/^\//,F=".d.ts",Q=t=>{let{line:e}=t.file.getLineAndCharacterOfPosition(t.start);console.error(C.red(`TS Error ${t.code}':' ${m.flattenDiagnosticMessageText(t.messageText,m.sys.newLine)}`)),console.error(C.red(` at ${t.file.fileName}:${e+1} typescript.sys.newLine`))},c=(t,e)=>h(t.outDir.replace(e.compiledTypesFolder,"")),w=(t,e)=>h(t.outDir.replace(e.compiledTypesFolder,"").replace(e.typesFolder,"")),Y=(t,e,o)=>{let r=m.createCompilerHost(e),s=r.writeFile,i=Object.fromEntries(Object.entries(t).map(n=>n.reverse())),p=c(e,o);return r.writeFile=(n,D,f,b,u,j)=>{s(n,D,f,b,u,j);for(let N of u||[]){let y=i[N.fileName];if(y){let g=V(p,`${y}${F}`),A=J(g),O=G(A,n).replace(F,"").replace(K,"");s(g,`export * from './${O}';
2
+ export { default } from './${O}';`,f)}}},r},ee=t=>I("vue-tsc").createProgram(t),te=(t,e)=>{switch(t.compilerInstance){case"vue-tsc":return ee(e);case"tsc":default:return m.createProgram(e)}},x=(t,e,o)=>{let r=Y(t,e,o),i={rootNames:[...Object.values(t),...o.additionalFilesToCompile],host:r,options:e},p=te(o,i),{diagnostics:n=[]}=p.emit();n.forEach(Q)};var se=(t,e)=>P(t.replace(e.typesFolder,""),`${e.typesFolder}.zip`),$=async(t,e)=>{let o=c(t,e),r=new E;return r.addLocalFolder(o),r.writeZipPromise(se(o,e))},ie=(t,e)=>o=>{throw console.error(oe.red(`Unable to download federated types for '${t}' from '${e}' because '${o.message}', skipping...`)),o},H=t=>async([e,o])=>{let r=await re.get(o,{responseType:"arraybuffer"}).catch(ie(e,o)),s=P(t.typesFolder,e);new E(Buffer.from(r.data)).extractAllTo(s,!0)};var be=S(t=>{let{remoteOptions:e,tsConfig:o,mapComponentsToExpose:r}=v(t);return{name:"native-federation-typescript/remote",async writeBundle(){try{x(r,o,e),await $(o,e),e.deleteTypesFolder&&await q(c(o,e),{recursive:!0,force:!0}),console.log(l.green("Federated types created correctly"))}catch(s){console.error(l.red(`Unable to compile federated types, ${s}`))}},webpack:s=>{s.options.devServer=pe(s.options.devServer||{},{static:{directory:ne(w(o,e))}})}}}),je=S(t=>{let{hostOptions:e,mapRemotesToDownload:o}=T(t);return{name:"native-federation-typescript/host",async writeBundle(){e.deleteTypesFolder&&await q(e.typesFolder,{recursive:!0,force:!0}).catch(i=>console.error(l.red(`Unable to remove types folder, ${i}`)));let r=H(e),s=Object.entries(o).map(r);await Promise.allSettled(s),console.log(l.green("Federated types extraction completed"))}}});export{be as a,je as b};
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var I=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,o)=>(typeof require<"u"?require:e)[o]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var _ansicolors = require('ansi-colors'); var _ansicolors2 = _interopRequireDefault(_ansicolors);var _promises = require('fs/promises');var _path = require('path');var _rambda = require('rambda');var _unplugin = require('unplugin');var L={typesFolder:"@mf-types",deleteTypesFolder:!0},U=(t,e)=>{let o=e.split("@").at(-1),r=new URL(o),s=r.pathname.split("/").slice(0,-1).join("/");return r.pathname=`${s}/${t.typesFolder}.zip`,r.href},z=t=>Object.entries(t.moduleFederationConfig.remotes).reduce((e,[o,r])=>(e[o]=U(t,r),e),{}),T=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...L,...t},o=z(e);return{hostOptions:e,mapRemotesToDownload:o}};var _fs = require('fs');var _typescript = require('typescript'); var _typescript2 = _interopRequireDefault(_typescript);var M={tsConfigPath:"./tsconfig.json",typesFolder:"@mf-types",compiledTypesFolder:"compiled-types",deleteTypesFolder:!0,additionalFilesToCompile:[],compilerInstance:"tsc"},B=({tsConfigPath:t,typesFolder:e,compiledTypesFolder:o})=>{let r=_path.resolve.call(void 0, t),s=_typescript2.default.readConfigFile(r,_typescript2.default.sys.readFile),i=_typescript2.default.parseJsonConfigFileContent(s.config,_typescript2.default.sys,_path.dirname.call(void 0, r)),p=_path.join.call(void 0, i.options.outDir||"dist",e,o);return{...i.options,emitDeclarationOnly:!0,noEmit:!1,declaration:!0,outDir:p}},X=["ts","tsx","vue","svelte"],R=t=>{let e=process.cwd();for(let o of X){let r=_path.join.call(void 0, e,`${t}.${o}`);if(_fs.existsSync.call(void 0, r))return r}},k=t=>Object.entries(t.moduleFederationConfig.exposes).reduce((e,[o,r])=>(e[o]=R(r)||R(_path.join.call(void 0, r,"index"))||r,e),{}),v=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...M,...t},o=k(e);return{tsConfig:B(e),mapComponentsToExpose:o,remoteOptions:e}};var _admzip = require('adm-zip'); var _admzip2 = _interopRequireDefault(_admzip);var _axios = require('axios'); var _axios2 = _interopRequireDefault(_axios);var K=/^\//,F=".d.ts",Q=t=>{let{line:e}=t.file.getLineAndCharacterOfPosition(t.start);console.error(_ansicolors2.default.red(`TS Error ${t.code}':' ${_typescript2.default.flattenDiagnosticMessageText(t.messageText,_typescript2.default.sys.newLine)}`)),console.error(_ansicolors2.default.red(` at ${t.file.fileName}:${e+1} typescript.sys.newLine`))},c=(t,e)=>_path.normalize.call(void 0, t.outDir.replace(e.compiledTypesFolder,"")),w=(t,e)=>_path.normalize.call(void 0, t.outDir.replace(e.compiledTypesFolder,"").replace(e.typesFolder,"")),Y=(t,e,o)=>{let r=_typescript2.default.createCompilerHost(e),s=r.writeFile,i=Object.fromEntries(Object.entries(t).map(n=>n.reverse())),p=c(e,o);return r.writeFile=(n,D,f,b,u,j)=>{s(n,D,f,b,u,j);for(let N of u||[]){let y=i[N.fileName];if(y){let g=_path.join.call(void 0, p,`${y}${F}`),A=_path.dirname.call(void 0, g),O=_path.relative.call(void 0, A,n).replace(F,"").replace(K,"");s(g,`export * from './${O}';
2
+ export { default } from './${O}';`,f)}}},r},ee=t=>I("vue-tsc").createProgram(t),te=(t,e)=>{switch(t.compilerInstance){case"vue-tsc":return ee(e);case"tsc":default:return _typescript2.default.createProgram(e)}},x=(t,e,o)=>{let r=Y(t,e,o),i={rootNames:[...Object.values(t),...o.additionalFilesToCompile],host:r,options:e},p=te(o,i),{diagnostics:n=[]}=p.emit();n.forEach(Q)};var se=(t,e)=>_path.join.call(void 0, t.replace(e.typesFolder,""),`${e.typesFolder}.zip`),$=async(t,e)=>{let o=c(t,e),r=new _admzip2.default;return r.addLocalFolder(o),r.writeZipPromise(se(o,e))},ie=(t,e)=>o=>{throw console.error(_ansicolors2.default.red(`Unable to download federated types for '${t}' from '${e}' because '${o.message}', skipping...`)),o},H=t=>async([e,o])=>{let r=await _axios2.default.get(o,{responseType:"arraybuffer"}).catch(ie(e,o)),s=_path.join.call(void 0, t.typesFolder,e);new (0, _admzip2.default)(Buffer.from(r.data)).extractAllTo(s,!0)};var be=_unplugin.createUnplugin.call(void 0, t=>{let{remoteOptions:e,tsConfig:o,mapComponentsToExpose:r}=v(t);return{name:"native-federation-typescript/remote",async writeBundle(){try{x(r,o,e),await $(o,e),e.deleteTypesFolder&&await _promises.rm.call(void 0, c(o,e),{recursive:!0,force:!0}),console.log(_ansicolors2.default.green("Federated types created correctly"))}catch(s){console.error(_ansicolors2.default.red(`Unable to compile federated types, ${s}`))}},webpack:s=>{s.options.devServer=_rambda.mergeDeepRight.call(void 0, s.options.devServer||{},{static:{directory:_path.resolve.call(void 0, w(o,e))}})}}}),je= exports.b =_unplugin.createUnplugin.call(void 0, t=>{let{hostOptions:e,mapRemotesToDownload:o}=T(t);return{name:"native-federation-typescript/host",async writeBundle(){e.deleteTypesFolder&&await _promises.rm.call(void 0, e.typesFolder,{recursive:!0,force:!0}).catch(i=>console.error(_ansicolors2.default.red(`Unable to remove types folder, ${i}`)));let r=H(e),s=Object.entries(o).map(r);await Promise.allSettled(s),console.log(_ansicolors2.default.green("Federated types extraction completed"))}}});exports.a = be; exports.b = je;
package/dist/esbuild.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk46UH43EMjs = require('./chunk-46UH43EM.js');var i=_chunk46UH43EMjs.a.esbuild,r= exports.NativeFederationTypeScriptHost =_chunk46UH43EMjs.b.esbuild;exports.NativeFederationTypeScriptHost = r; exports.NativeFederationTypeScriptRemote = i;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV6C425Djs = require('./chunk-XV6C425D.js');var i=_chunkXV6C425Djs.a.esbuild,r= exports.NativeFederationTypeScriptHost =_chunkXV6C425Djs.b.esbuild;exports.NativeFederationTypeScriptHost = r; exports.NativeFederationTypeScriptRemote = i;
package/dist/esbuild.mjs CHANGED
@@ -1 +1 @@
1
- import{a as e,b as t}from"./chunk-APBNWJ3C.mjs";var i=e.esbuild,r=t.esbuild;export{r as NativeFederationTypeScriptHost,i as NativeFederationTypeScriptRemote};
1
+ import{a as e,b as t}from"./chunk-XSAALZJD.mjs";var i=e.esbuild,r=t.esbuild;export{r as NativeFederationTypeScriptHost,i as NativeFederationTypeScriptRemote};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk46UH43EMjs = require('./chunk-46UH43EM.js');exports.NativeFederationTypeScriptHost = _chunk46UH43EMjs.b; exports.NativeFederationTypeScriptRemote = _chunk46UH43EMjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV6C425Djs = require('./chunk-XV6C425D.js');exports.NativeFederationTypeScriptHost = _chunkXV6C425Djs.b; exports.NativeFederationTypeScriptRemote = _chunkXV6C425Djs.a;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{a,b}from"./chunk-APBNWJ3C.mjs";export{b as NativeFederationTypeScriptHost,a as NativeFederationTypeScriptRemote};
1
+ import{a,b}from"./chunk-XSAALZJD.mjs";export{b as NativeFederationTypeScriptHost,a as NativeFederationTypeScriptRemote};
package/dist/rollup.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk46UH43EMjs = require('./chunk-46UH43EM.js');var r=_chunk46UH43EMjs.a.rollup,i= exports.NativeFederationTypeScriptHost =_chunk46UH43EMjs.b.rollup;exports.NativeFederationTypeScriptHost = i; exports.NativeFederationTypeScriptRemote = r;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV6C425Djs = require('./chunk-XV6C425D.js');var r=_chunkXV6C425Djs.a.rollup,i= exports.NativeFederationTypeScriptHost =_chunkXV6C425Djs.b.rollup;exports.NativeFederationTypeScriptHost = i; exports.NativeFederationTypeScriptRemote = r;
package/dist/rollup.mjs CHANGED
@@ -1 +1 @@
1
- import{a as e,b as t}from"./chunk-APBNWJ3C.mjs";var r=e.rollup,i=t.rollup;export{i as NativeFederationTypeScriptHost,r as NativeFederationTypeScriptRemote};
1
+ import{a as e,b as t}from"./chunk-XSAALZJD.mjs";var r=e.rollup,i=t.rollup;export{i as NativeFederationTypeScriptHost,r as NativeFederationTypeScriptRemote};
package/dist/rspack.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk46UH43EMjs = require('./chunk-46UH43EM.js');var r=_chunk46UH43EMjs.a.rspack,a= exports.NativeFederationTypeScriptHost =_chunk46UH43EMjs.b.rspack;exports.NativeFederationTypeScriptHost = a; exports.NativeFederationTypeScriptRemote = r;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV6C425Djs = require('./chunk-XV6C425D.js');var r=_chunkXV6C425Djs.a.rspack,a= exports.NativeFederationTypeScriptHost =_chunkXV6C425Djs.b.rspack;exports.NativeFederationTypeScriptHost = a; exports.NativeFederationTypeScriptRemote = r;
package/dist/rspack.mjs CHANGED
@@ -1 +1 @@
1
- import{a as e,b as t}from"./chunk-APBNWJ3C.mjs";var r=e.rspack,a=t.rspack;export{a as NativeFederationTypeScriptHost,r as NativeFederationTypeScriptRemote};
1
+ import{a as e,b as t}from"./chunk-XSAALZJD.mjs";var r=e.rspack,a=t.rspack;export{a as NativeFederationTypeScriptHost,r as NativeFederationTypeScriptRemote};
package/dist/vite.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk46UH43EMjs = require('./chunk-46UH43EM.js');var i=_chunk46UH43EMjs.a.vite,p= exports.NativeFederationTypeScriptHost =_chunk46UH43EMjs.b.vite;exports.NativeFederationTypeScriptHost = p; exports.NativeFederationTypeScriptRemote = i;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV6C425Djs = require('./chunk-XV6C425D.js');var i=_chunkXV6C425Djs.a.vite,p= exports.NativeFederationTypeScriptHost =_chunkXV6C425Djs.b.vite;exports.NativeFederationTypeScriptHost = p; exports.NativeFederationTypeScriptRemote = i;
package/dist/vite.mjs CHANGED
@@ -1 +1 @@
1
- import{a as t,b as e}from"./chunk-APBNWJ3C.mjs";var i=t.vite,p=e.vite;export{p as NativeFederationTypeScriptHost,i as NativeFederationTypeScriptRemote};
1
+ import{a as t,b as e}from"./chunk-XSAALZJD.mjs";var i=t.vite,p=e.vite;export{p as NativeFederationTypeScriptHost,i as NativeFederationTypeScriptRemote};
package/dist/webpack.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk46UH43EMjs = require('./chunk-46UH43EM.js');var a=_chunk46UH43EMjs.a.webpack,r= exports.NativeFederationTypeScriptHost =_chunk46UH43EMjs.b.webpack;exports.NativeFederationTypeScriptHost = r; exports.NativeFederationTypeScriptRemote = a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV6C425Djs = require('./chunk-XV6C425D.js');var a=_chunkXV6C425Djs.a.webpack,r= exports.NativeFederationTypeScriptHost =_chunkXV6C425Djs.b.webpack;exports.NativeFederationTypeScriptHost = r; exports.NativeFederationTypeScriptRemote = a;
package/dist/webpack.mjs CHANGED
@@ -1 +1 @@
1
- import{a as e,b as t}from"./chunk-APBNWJ3C.mjs";var a=e.webpack,r=t.webpack;export{r as NativeFederationTypeScriptHost,a as NativeFederationTypeScriptRemote};
1
+ import{a as e,b as t}from"./chunk-XSAALZJD.mjs";var a=e.webpack,r=t.webpack;export{r as NativeFederationTypeScriptHost,a as NativeFederationTypeScriptRemote};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/native-federation-typescript",
3
- "version": "0.1.1",
3
+ "version": "0.2.1",
4
4
  "description": "Bundler agnostic unplugin to share federated types",
5
5
  "keywords": [
6
6
  "module federation",
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _ansicolors = require('ansi-colors'); var _ansicolors2 = _interopRequireDefault(_ansicolors);var _promises = require('fs/promises');var _path = require('path');var _rambda = require('rambda');var _unplugin = require('unplugin');var I={typesFolder:"@mf-types",deleteTypesFolder:!0},L=(t,e)=>{let o=e.split("@").at(-1),r=new URL(o);return r.pathname=`${t.typesFolder}.zip`,r.href},U=t=>Object.entries(t.moduleFederationConfig.remotes).reduce((e,[o,r])=>(e[o]=L(t,r),e),{}),T=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...I,...t},o=U(e);return{hostOptions:e,mapRemotesToDownload:o}};var _fs = require('fs');var _typescript = require('typescript'); var _typescript2 = _interopRequireDefault(_typescript);var Z={tsConfigPath:"./tsconfig.json",typesFolder:"@mf-types",compiledTypesFolder:"compiled-types",deleteTypesFolder:!0,additionalFilesToCompile:[],compilerInstance:"tsc"},M=({tsConfigPath:t,typesFolder:e,compiledTypesFolder:o})=>{let r=_path.resolve.call(void 0, t),s=_typescript2.default.readConfigFile(r,_typescript2.default.sys.readFile),i=_typescript2.default.parseJsonConfigFileContent(s.config,_typescript2.default.sys,_path.dirname.call(void 0, r)),p=_path.join.call(void 0, i.options.outDir||"dist",e,o);return{...i.options,emitDeclarationOnly:!0,noEmit:!1,declaration:!0,outDir:p}},B=["ts","tsx","vue","svelte"],R=t=>{let e=process.cwd();for(let o of B){let r=_path.join.call(void 0, e,`${t}.${o}`);if(_fs.existsSync.call(void 0, r))return r}},X=t=>Object.entries(t.moduleFederationConfig.exposes).reduce((e,[o,r])=>(e[o]=R(r)||R(_path.join.call(void 0, r,"index"))||r,e),{}),v=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...Z,...t},o=X(e);return{tsConfig:M(e),mapComponentsToExpose:o,remoteOptions:e}};var _admzip = require('adm-zip'); var _admzip2 = _interopRequireDefault(_admzip);var _axios = require('axios'); var _axios2 = _interopRequireDefault(_axios);var _vuetsc = require('vue-tsc'); var _vuetsc2 = _interopRequireDefault(_vuetsc);var Q=/^\//,F=".d.ts",V=t=>{let{line:e}=t.file.getLineAndCharacterOfPosition(t.start);console.error(_ansicolors2.default.red(`TS Error ${t.code}':' ${_typescript2.default.flattenDiagnosticMessageText(t.messageText,_typescript2.default.sys.newLine)}`)),console.error(_ansicolors2.default.red(` at ${t.file.fileName}:${e+1} typescript.sys.newLine`))},c=(t,e)=>_path.normalize.call(void 0, t.outDir.replace(e.compiledTypesFolder,"")),w=(t,e)=>_path.normalize.call(void 0, t.outDir.replace(e.compiledTypesFolder,"").replace(e.typesFolder,"")),Y=(t,e,o)=>{let r=_typescript2.default.createCompilerHost(e),s=r.writeFile,i=Object.fromEntries(Object.entries(t).map(n=>n.reverse())),p=c(e,o);return r.writeFile=(n,D,f,b,y,N)=>{s(n,D,f,b,y,N);for(let j of y||[]){let u=i[j.fileName];if(u){let g=_path.join.call(void 0, p,`${u}${F}`),A=_path.dirname.call(void 0, g),O=_path.relative.call(void 0, A,n).replace(F,"").replace(Q,"");s(g,`export * from './${O}';
2
- export { default } from './${O}';`,f)}}},r},ee=(t,e)=>{switch(t.compilerInstance){case"vue-tsc":return _vuetsc2.default.createProgram(e);case"tsc":default:return _typescript2.default.createProgram(e)}},x=(t,e,o)=>{let r=Y(t,e,o),i={rootNames:[...Object.values(t),...o.additionalFilesToCompile],host:r,options:e},p=ee(o,i),{diagnostics:n=[]}=p.emit();n.forEach(V)};var re=(t,e)=>_path.join.call(void 0, t.replace(e.typesFolder,""),`${e.typesFolder}.zip`),H=async(t,e)=>{let o=c(t,e),r=new _admzip2.default;return r.addLocalFolder(o),r.writeZipPromise(re(o,e))},se=(t,e)=>o=>{throw console.error(_ansicolors2.default.red(`Unable to download federated types for '${t}' from '${e}' because '${o.message}', skipping...`)),o},$=t=>async([e,o])=>{let r=await _axios2.default.get(o,{responseType:"arraybuffer"}).catch(se(e,o)),s=_path.join.call(void 0, t.typesFolder,e);new (0, _admzip2.default)(Buffer.from(r.data)).extractAllTo(s,!0)};var De=_unplugin.createUnplugin.call(void 0, t=>{let{remoteOptions:e,tsConfig:o,mapComponentsToExpose:r}=v(t);return{name:"native-federation-typescript/remote",async writeBundle(){try{x(r,o,e),await H(o,e),e.deleteTypesFolder&&await _promises.rm.call(void 0, c(o,e),{recursive:!0,force:!0}),console.log(_ansicolors2.default.green("Federated types created correctly"))}catch(s){console.error(_ansicolors2.default.red(`Unable to compile federated types, ${s}`))}},webpack:s=>{s.options.devServer=_rambda.mergeDeepRight.call(void 0, s.options.devServer||{},{static:{directory:_path.resolve.call(void 0, w(o,e))}})}}}),be= exports.b =_unplugin.createUnplugin.call(void 0, t=>{let{hostOptions:e,mapRemotesToDownload:o}=T(t);return{name:"native-federation-typescript/host",async writeBundle(){e.deleteTypesFolder&&await _promises.rm.call(void 0, e.typesFolder,{recursive:!0,force:!0}).catch(i=>console.error(_ansicolors2.default.red(`Unable to remove types folder, ${i}`)));let r=$(e),s=Object.entries(o).map(r);await Promise.allSettled(s),console.log(_ansicolors2.default.green("Federated types extraction completed"))}}});exports.a = De; exports.b = be;
@@ -1,2 +0,0 @@
1
- import l from"ansi-colors";import{rm as S}from"fs/promises";import{resolve as ie}from"path";import{mergeDeepRight as ne}from"rambda";import{createUnplugin as q}from"unplugin";var I={typesFolder:"@mf-types",deleteTypesFolder:!0},L=(t,e)=>{let o=e.split("@").at(-1),r=new URL(o);return r.pathname=`${t.typesFolder}.zip`,r.href},U=t=>Object.entries(t.moduleFederationConfig.remotes).reduce((e,[o,r])=>(e[o]=L(t,r),e),{}),T=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...I,...t},o=U(e);return{hostOptions:e,mapRemotesToDownload:o}};import{existsSync as z}from"fs";import{dirname as _,join as d,resolve as W}from"path";import m from"typescript";var Z={tsConfigPath:"./tsconfig.json",typesFolder:"@mf-types",compiledTypesFolder:"compiled-types",deleteTypesFolder:!0,additionalFilesToCompile:[],compilerInstance:"tsc"},M=({tsConfigPath:t,typesFolder:e,compiledTypesFolder:o})=>{let r=W(t),s=m.readConfigFile(r,m.sys.readFile),i=m.parseJsonConfigFileContent(s.config,m.sys,_(r)),p=d(i.options.outDir||"dist",e,o);return{...i.options,emitDeclarationOnly:!0,noEmit:!1,declaration:!0,outDir:p}},B=["ts","tsx","vue","svelte"],R=t=>{let e=process.cwd();for(let o of B){let r=d(e,`${t}.${o}`);if(z(r))return r}},X=t=>Object.entries(t.moduleFederationConfig.exposes).reduce((e,[o,r])=>(e[o]=R(r)||R(d(r,"index"))||r,e),{}),v=t=>{if(!t.moduleFederationConfig)throw new Error("moduleFederationConfig is required");let e={...Z,...t},o=X(e);return{tsConfig:M(e),mapComponentsToExpose:o,remoteOptions:e}};import E from"adm-zip";import te from"ansi-colors";import oe from"axios";import{join as P}from"path";import C from"ansi-colors";import{dirname as k,join as J,normalize as h,relative as G}from"path";import a from"typescript";import K from"vue-tsc";var Q=/^\//,F=".d.ts",V=t=>{let{line:e}=t.file.getLineAndCharacterOfPosition(t.start);console.error(C.red(`TS Error ${t.code}':' ${a.flattenDiagnosticMessageText(t.messageText,a.sys.newLine)}`)),console.error(C.red(` at ${t.file.fileName}:${e+1} typescript.sys.newLine`))},c=(t,e)=>h(t.outDir.replace(e.compiledTypesFolder,"")),w=(t,e)=>h(t.outDir.replace(e.compiledTypesFolder,"").replace(e.typesFolder,"")),Y=(t,e,o)=>{let r=a.createCompilerHost(e),s=r.writeFile,i=Object.fromEntries(Object.entries(t).map(n=>n.reverse())),p=c(e,o);return r.writeFile=(n,D,f,b,y,N)=>{s(n,D,f,b,y,N);for(let j of y||[]){let u=i[j.fileName];if(u){let g=J(p,`${u}${F}`),A=k(g),O=G(A,n).replace(F,"").replace(Q,"");s(g,`export * from './${O}';
2
- export { default } from './${O}';`,f)}}},r},ee=(t,e)=>{switch(t.compilerInstance){case"vue-tsc":return K.createProgram(e);case"tsc":default:return a.createProgram(e)}},x=(t,e,o)=>{let r=Y(t,e,o),i={rootNames:[...Object.values(t),...o.additionalFilesToCompile],host:r,options:e},p=ee(o,i),{diagnostics:n=[]}=p.emit();n.forEach(V)};var re=(t,e)=>P(t.replace(e.typesFolder,""),`${e.typesFolder}.zip`),H=async(t,e)=>{let o=c(t,e),r=new E;return r.addLocalFolder(o),r.writeZipPromise(re(o,e))},se=(t,e)=>o=>{throw console.error(te.red(`Unable to download federated types for '${t}' from '${e}' because '${o.message}', skipping...`)),o},$=t=>async([e,o])=>{let r=await oe.get(o,{responseType:"arraybuffer"}).catch(se(e,o)),s=P(t.typesFolder,e);new E(Buffer.from(r.data)).extractAllTo(s,!0)};var De=q(t=>{let{remoteOptions:e,tsConfig:o,mapComponentsToExpose:r}=v(t);return{name:"native-federation-typescript/remote",async writeBundle(){try{x(r,o,e),await H(o,e),e.deleteTypesFolder&&await S(c(o,e),{recursive:!0,force:!0}),console.log(l.green("Federated types created correctly"))}catch(s){console.error(l.red(`Unable to compile federated types, ${s}`))}},webpack:s=>{s.options.devServer=ne(s.options.devServer||{},{static:{directory:ie(w(o,e))}})}}}),be=q(t=>{let{hostOptions:e,mapRemotesToDownload:o}=T(t);return{name:"native-federation-typescript/host",async writeBundle(){e.deleteTypesFolder&&await S(e.typesFolder,{recursive:!0,force:!0}).catch(i=>console.error(l.red(`Unable to remove types folder, ${i}`)));let r=$(e),s=Object.entries(o).map(r);await Promise.allSettled(s),console.log(l.green("Federated types extraction completed"))}}});export{De as a,be as b};