{"version":3,"sources":["../src/runtime/index.ts","../src/helper/index.ts","../src/helper/config.ts"],"sourcesContent":["import type {ModuleFederation} from '@module-federation/runtime'\nimport {deepAssign} from 'src/helper'\nimport {shareGlobalName} from 'src/helper/config'\nimport type {EMPShareRuntimeType, EmpRuntimeOptions, InitOptionsType, LoadRemoteType} from 'src/types'\n\ntype EmpInitOptionsType = Partial<InitOptionsType>\nlet globalLib = window[shareGlobalName] || {}\n// 根据 injectGlobalValToHtml 提前把库赋值到 EMPRuntime\nconst win: any = window\nconst {EMPShareGlobalVal} = win || {}\nif (EMPShareGlobalVal && EMPShareGlobalVal.runtimeLib) {\n  globalLib = win[EMPShareGlobalVal.runtimeLib]\n}\n\nexport class EMPRuntime {\n  public libs: EMPShareRuntimeType = globalLib\n  public initOptions!: InitOptionsType\n  public options: EmpRuntimeOptions = {\n    showLog: false,\n  }\n  public shareGlobalName = shareGlobalName\n  constructor(op?: EMPShareRuntimeType) {\n    if (op) this.setup(op)\n  }\n  public mfInstance?: ModuleFederation\n  public setup(o?: EMPShareRuntimeType | string) {\n    if (o) {\n      if (typeof o === 'string') o = window[o]\n      this.libs = o as any\n    }\n    if (!this.libs.MFRuntime || !this.libs.MFSDK) {\n      throw new Error('MFRuntime and MFSDK Required!')\n    }\n  }\n  public init(options: EmpInitOptionsType = {}) {\n    if (this.mfInstance) return this.mfInstance\n    let op: InitOptionsType = {\n      name: 'empRuntimeProject',\n      remotes: [],\n      // plugins: [catchErrorNextPlugin(this.options.showLog)],\n    }\n    op = deepAssign<InitOptionsType>(op, options)\n    this.mfInstance = this.libs.MFRuntime.createInstance(op)\n  }\n  public load<T = any>(...args: LoadRemoteType) {\n    return this.mfInstance?.loadRemote<T>(...args) as Promise<T>\n  }\n  public register(...args: Parameters<NonNullable<typeof this.mfInstance>['registerRemotes']>) {\n    return this.mfInstance?.registerRemotes(...args)\n  }\n  public preload(...args: Parameters<NonNullable<typeof this.mfInstance>['preloadRemote']>) {\n    return this.mfInstance?.preloadRemote(...args)\n  }\n  public loadShare(...args: Parameters<NonNullable<typeof this.mfInstance>['loadShare']>) {\n    return this.mfInstance?.loadShare(...args)\n  }\n  public preloadRemote(...args: Parameters<NonNullable<typeof this.mfInstance>['preloadRemote']>) {\n    return this.mfInstance?.preloadRemote(...args)\n  }\n}\n//\nexport default new EMPRuntime()\n","export const importJsVm = (content: string) => `data:text/javascript,${content}`\n\nexport function deepAssign<T>(target: any, ...sources: any): T {\n  for (const source of sources) {\n    for (const k in source) {\n      const vs = source[k],\n        vt = target[k]\n      if (Object(vs) == vs && Object(vt) === vt) {\n        target[k] = deepAssign(vt, vs)\n        continue\n      }\n      target[k] = source[k]\n    }\n  }\n  return target\n}\n\nexport const checkVersion = (version: string) => (version ? Number(version.split('.')[0]) : 0)\nexport const isPromise = (p: any) => p && Object.prototype.toString.call(p) === '[object Promise]'\n\n//\nexport const isDev = process.env.EMPSHARE_ENV === 'dev'\nexport const log = isDev ? console.log.bind(console, '[EMP Share]') : () => {}\n","export const shareGlobalName = 'EMP_SHARE_RUNTIME'\nexport const shareGlobalVal = 'EMPShareGlobalVal'\nexport const shareForceRemote = 'EMP_FORCE_REMOTES'\n"],"mappings":"ijBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gBAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GCEO,SAASK,EAAcC,KAAgBC,EAAiB,CAC7D,QAAWC,KAAUD,EACnB,QAAWE,KAAKD,EAAQ,CACtB,IAAME,EAAKF,EAAOC,CAAC,EACjBE,EAAKL,EAAOG,CAAC,EACf,GAAI,OAAOC,CAAE,GAAKA,GAAM,OAAOC,CAAE,IAAMA,EAAI,CACzCL,EAAOG,CAAC,EAAIJ,EAAWM,EAAID,CAAE,EAC7B,QACF,CACAJ,EAAOG,CAAC,EAAID,EAAOC,CAAC,CACtB,CAEF,OAAOH,CACT,CAMO,IAAMM,EAAQ,GACRC,EAAMD,EAAQ,QAAQ,IAAI,KAAK,QAAS,aAAa,EAAI,IAAM,CAAC,ECtBtE,IAAME,EAAkB,oBFM/B,IAAIC,EAAY,OAAOC,CAAe,GAAK,CAAC,EAEtCC,EAAW,OACX,CAAC,kBAAAC,CAAiB,EAAID,GAAO,CAAC,EAChCC,GAAqBA,EAAkB,aACzCH,EAAYE,EAAIC,EAAkB,UAAU,GAGvC,IAAMC,EAAN,KAAiB,CAOtB,YAAYC,EAA0B,CANtCC,EAAA,KAAO,OAA4BN,GACnCM,EAAA,KAAO,eACPA,EAAA,KAAO,UAA6B,CAClC,QAAS,EACX,GACAA,EAAA,KAAO,kBAAkBL,GAIzBK,EAAA,KAAO,cAFDD,GAAI,KAAK,MAAMA,CAAE,CACvB,CAEO,MAAME,EAAkC,CAK7C,GAJIA,IACE,OAAOA,GAAM,WAAUA,EAAI,OAAOA,CAAC,GACvC,KAAK,KAAOA,GAEV,CAAC,KAAK,KAAK,WAAa,CAAC,KAAK,KAAK,MACrC,MAAM,IAAI,MAAM,+BAA+B,CAEnD,CACO,KAAKC,EAA8B,CAAC,EAAG,CAC5C,GAAI,KAAK,WAAY,OAAO,KAAK,WACjC,IAAIH,EAAsB,CACxB,KAAM,oBACN,QAAS,CAAC,CAEZ,EACAA,EAAKI,EAA4BJ,EAAIG,CAAO,EAC5C,KAAK,WAAa,KAAK,KAAK,UAAU,eAAeH,CAAE,CACzD,CACO,QAAiBK,EAAsB,CA5ChD,IAAAC,EA6CI,OAAOA,EAAA,KAAK,aAAL,YAAAA,EAAiB,WAAc,GAAGD,EAC3C,CACO,YAAYA,EAA0E,CA/C/F,IAAAC,EAgDI,OAAOA,EAAA,KAAK,aAAL,YAAAA,EAAiB,gBAAgB,GAAGD,EAC7C,CACO,WAAWA,EAAwE,CAlD5F,IAAAC,EAmDI,OAAOA,EAAA,KAAK,aAAL,YAAAA,EAAiB,cAAc,GAAGD,EAC3C,CACO,aAAaA,EAAoE,CArD1F,IAAAC,EAsDI,OAAOA,EAAA,KAAK,aAAL,YAAAA,EAAiB,UAAU,GAAGD,EACvC,CACO,iBAAiBA,EAAwE,CAxDlG,IAAAC,EAyDI,OAAOA,EAAA,KAAK,aAAL,YAAAA,EAAiB,cAAc,GAAGD,EAC3C,CACF,EAEOE,EAAQ,IAAIR","names":["runtime_exports","__export","EMPRuntime","runtime_default","__toCommonJS","deepAssign","target","sources","source","k","vs","vt","isDev","log","shareGlobalName","globalLib","shareGlobalName","win","EMPShareGlobalVal","EMPRuntime","op","__publicField","o","options","deepAssign","args","_a","runtime_default"]}