UNPKG

@aiot-toolkit/packager

Version:

@aiot-toolkit/packager

3 lines (2 loc) 3.91 kB
"use strict";const path=require("path"),{readJson:readJson}=require("@aiot-toolkit/shared-utils"),globalConfig=require("@aiot-toolkit/shared-utils/config"),{compileOptionsMeta:compileOptionsMeta,compileOptionsObject:compileOptionsObject}=require("@aiot-toolkit/shared-utils/compilation-config"),CopyDslPlugin=require("./plugins/copy-dsl-plugin"),CopyStaticResourcesPlugin=require("./plugins/copy-static-resources-plugin"),HandlerPlugin=require("./plugins/handler-plugin"),ResourcePlugin=require("./plugins/resource-plugin"),DeviceTypePlugin=require("./plugins/device-type-plugin"),ZipPlugin=require("./plugins/zip-plugin"),ServeForIDEPlugin=require("./plugins/serve-for-ide-plugin"),NotifyPlugin=require("./plugins/notify-plugin"),SourcemapFixPlugin=require("./plugins/sourcemap-fix-plugin"),SplitChunksAdaptPlugin=require("./plugins/splitchunks-adapt-plugin"),{genPriorities:genPriorities,getBabelConfigJsPath:getBabelConfigJsPath}=require("./common/utils"),{getSkeletonConfig:getSkeletonConfig}=require("./common/info"),BinaryPlugin=require("./plugins/binary-plugin");function postHook(e,i,o={}){const n=globalConfig.projectPath,{appPackageName:s,appIcon:t,banner:l="",versionName:p,versionCode:r,pathDist:u,pathBuild:a,pathSignFolder:c,pathSrc:g,subpackages:d,workers:m,originType:b}=i,O=readJson(path.join(g,"manifest.json")),h=getSkeletonConfig(g),P=genPriorities(O,h),f=[require.resolve("./loaders/module-loader.js"),{loader:require.resolve("babel-loader"),options:{configFile:getBabelConfigJsPath(n),cwd:n,cacheDirectory:!0}}];compileOptionsObject.enableIstanbul&&f.unshift({loader:"istanbul-instrumenter-loader"}),e.module.rules.push({test:/\.js$/,use:f}),e.module.rules.push({test:/\.json$/,include:[path.join(g,"manifest.json")],use:[{loader:require.resolve("./loaders/device-type-loader.js"),options:{srcPath:g}}]});const j="prod"!==process.env.NODE_PHASE,k={originType:b,toolkit:require("../package.json").version,timeStamp:(new Date).toJSON(),node:process.version,platform:process.platform,arch:process.arch};let{enableMirtos:S,enableCustomComponent:y,enableProtobuf:q}=compileOptionsObject;S&&(k.component=y),q&&(k.protobuf=!0);const w=JSON.stringify(k);if(compileOptionsObject.includeDslFromLib&&e.plugins.unshift(new CopyDslPlugin({cwd:n,config:O.config})),compileOptionsObject.splitChunksMode===compileOptionsMeta.splitChunksModeEnum.SMART&&e.plugins.push(new SplitChunksAdaptPlugin({subpackages:d,disableSubpackages:compileOptionsObject.disableSubpackages})),e.plugins.push(new HandlerPlugin({pathSrc:g,workers:m,enableE2e:compileOptionsObject.enableE2e}),new DeviceTypePlugin({srcPath:g,buildPath:a}),new ResourcePlugin({src:g,dest:a,comment:w,projectRoot:globalConfig.projectPath,configDebugInManifest:j,optimizeUnusedResource:compileOptionsObject.optimizeUnusedResource}),new ServeForIDEPlugin(compileOptionsObject)),compileOptionsObject.enableProtobuf&&e.plugins.push(new BinaryPlugin),compileOptionsObject.disableBuildRpk||e.plugins.push(new ZipPlugin({name:s,icon:t,banner:l,versionName:p,versionCode:r,output:u,pathSrc:g,pathBuild:a,pathSignFolder:c,priorities:P,subpackages:d,comment:w,cwd:n,disableStreamPack:compileOptionsObject.disableStreamPack,disableSubpackages:compileOptionsObject.disableSubpackages,signMode:compileOptionsObject.signMode,buildNameFormat:compileOptionsObject.buildNameFormat,setPreviewPkgPath:compileOptionsObject.setPreviewPkgPath}),new NotifyPlugin({doNotNotifyAtFirst:compileOptionsObject.enableServerWatch})),compileOptionsObject.matchSourcemap&&e.plugins.push(new SourcemapFixPlugin),compileOptionsObject.stats){const i=require("webpack-bundle-analyzer").BundleAnalyzerPlugin;e.plugins.push(new i({analyzerMode:"static",openAnalyzer:!1,excludeAssets:/^@(system|service)\./}))}compileOptionsObject.includeStaticResources&&e.plugins.push(new CopyStaticResourcesPlugin({cwd:n}))}module.exports={postHook:postHook}; //# sourceMappingURL=webpack.post.js.map