@atomicservice/ascf-toolkit 1.0.13 → 1.0.14

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.
@@ -1 +1 @@
1
- function _createForOfIteratorHelper(e,r){var n,t,o,a,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(t=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return t=e.done,e},e:function(e){o=!0,n=e},f:function(){try{t||null==s.return||s.return()}finally{if(o)throw n}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length)return s&&(e=s),a=0,{s:r=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,r){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,r):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,r):void 0}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var n=0,t=Array(r);n<r;n++)t[n]=e[n];return t}var loaderUtils=require("./loader-utils"),checkAppJson=require("./common/appjson-validator"),_require=require("path"),relative=_require.relative,fs=require("fs"),path=require("path"),_require2=require("../common/utils"),getProjectInfo=_require2.getProjectInfo,readJsonFile=_require2.readJsonFile,_require3=require("./common/utils"),resolve=_require3.resolve,packOptions=require("./common/packoptions-utils"),_require4=require("../common/config"),configs=_require4.configs,_require5=require("../ascf-compiler/common/manifest-manager"),manifestManager=_require5.manifestManager,hasCheckAppJson=!1;function generateIgnoreRule(e){var r;return(r=e?packOptions.parseIgnoreRules(e):r)||{}}function getComponents(e){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:[],n=[];return null!=e&&e.forEach(function(e){r.includes(e.path)||n.push(e.path)}),JSON.stringify(n)}function appProcess(r,e,n,t){configs.isInjectDebugTimer()&&r.push("const NOOP=()=>{}; setInterval(NOOP, 1000);"),r.push("global.__globalComponents = ".concat(JSON.stringify(e),";")),r.push("global.__qaRoute = '".concat(t,"';")),Object.keys(n).forEach(function(e){"app"===e?r.push("require('./app.js');"):r.push('import(/* webpackChunkName: "'.concat(e.endsWith("/")?e:"".concat(e,"/"),"index.js\" */'./app.json?package=").concat(e,"');"))})}function appJsonLoader(e){var i=this,r=(hasCheckAppJson=hasCheckAppJson||checkAppJson(this),(null==(r=loaderUtils.parseQuery(this.resourceQuery).get("package"))?void 0:r.replace(/\\/g,"/"))||""),n=manifestManager.getManifestData(),t=n.projectComponentsMap,n=n.manifest,c=manifestManager.getIsOpenLazyCodeLoad(),u=this.options.srcPath,p=Object.values(n.usingComponents||{}),l=[],n=(c&&l.push("var {ascfDefine, ascfRequire} = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./ascf-define"))),");")),"app"===r&&appProcess(l,p,t,r),t[r]||t["".concat(r,"/")]);return n&&0<n.size&&n.forEach(function(e,r){var n=e.componentList,t=e.jsonContent,e="./"+relative(u,e.compJsonPath).replace(/\\/g,"/"),o=getComponents(n,p),a=e.replace(/\.json$/g,".js"),e=path.resolve(getProjectInfo().ascfSrcPath,e),s=e.replace(/\.json$/g,".js"),t=JSON.stringify(null!=t&&t.styleIsolation?{styleIsolation:null==t?void 0:t.styleIsolation}:{});fs.existsSync(e)&&i.addDependency(e),fs.existsSync(s)&&i.addDependency(s),c?(e=getLazyCodeLoadUsingCmp(n),l.push("ascfDefine(() => require('".concat(a,"'), '").concat(r,"', ").concat(e,", ").concat(t,")"))):(l.push("global.__qaJson= ".concat(t,";")),l.push("global.__qaRoute = '".concat(r,"';")),l.push("global.usingComponents = ".concat(o,";")),l.push("require('".concat(a,"');")))}),"app"===r&&c&&(t=getRequireGlobalCmpStr(p),l.push(t)),asyncProcess(r,l,this),l.join("\r\n")}function getRequireGlobalCmpStr(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[],r=[];return(r=e.length?e.map(function(e){return'ascfRequire("'.concat(e,'")')}):r).join("\r\n")}function getLazyCodeLoadUsingCmp(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[],r=[];return e.length&&(r=e.filter(function(e){return!e.hasPlaceHolder||"customTabBar"===e.key}).map(function(e){return e.path})),JSON.stringify(r)}function asyncProcess(e,r,n){var t,o=getProjectInfo(),a=generateIgnoreRule(o.projectCfg);if(null==(t=configs.asyncJsList[e])?void 0:t.keys()){var s,i=_createForOfIteratorHelper(configs.asyncJsList[e].keys());try{for(i.s();!(s=i.n()).done;){var c=s.value,u=path.relative(o.ascfSrcPath,c).replace(/\\/g,"/");u.endsWith(".js")||(u+=".js"),packOptions.isIgnoreFile(path.relative(o.ascfSrcPath,c),a)||(n.addDependency(c.replace(/\//g,"\\")),r.push("require('./".concat(u,"');")))}}catch(e){i.e(e)}finally{i.f()}}}module.exports=appJsonLoader;
1
+ function _createForOfIteratorHelper(e,r){var n,t,o,a,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(t=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return t=e.done,e},e:function(e){o=!0,n=e},f:function(){try{t||null==s.return||s.return()}finally{if(o)throw n}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length)return s&&(e=s),a=0,{s:r=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,r){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,r):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,r):void 0}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var n=0,t=Array(r);n<r;n++)t[n]=e[n];return t}var loaderUtils=require("./loader-utils"),checkAppJson=require("./common/appjson-validator"),_require=require("path"),relative=_require.relative,fs=require("fs"),path=require("path"),_require2=require("../common/utils"),getProjectInfo=_require2.getProjectInfo,_require3=require("./common/utils"),resolve=_require3.resolve,packOptions=require("./common/packoptions-utils"),_require4=require("../common/config"),configs=_require4.configs,_require5=require("../ascf-compiler/common/manifest-manager"),manifestManager=_require5.manifestManager,hasCheckAppJson=!1;function generateIgnoreRule(e){var r;return(r=e?packOptions.parseIgnoreRules(e):r)||{}}function getComponents(e){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:[],n=[];return null!=e&&e.forEach(function(e){r.includes(e.path)||n.push(e.path)}),JSON.stringify(n)}function isNeedClearJsonp(){return configs.serve&&(configs.templateHoist||!0===configs.emptyWebpackJsonp)}function appProcess(r,e,n,t){isNeedClearJsonp()&&r.push("if (typeof has !== 'undefined' && has['webpackJsonp']) { has['webpackJsonp']=[]; }"),configs.isInjectDebugTimer()&&r.push("const NOOP=()=>{}; setInterval(NOOP, 1000);"),r.push("global.__globalComponents = ".concat(JSON.stringify(e),";")),r.push("global.__qaRoute = '".concat(t,"';")),Object.keys(n).forEach(function(e){"app"===e?r.push("require('./app.js');"):r.push('import(/* webpackChunkName: "'.concat(e.endsWith("/")?e:"".concat(e,"/"),"index.js\" */'./app.json?package=").concat(e,"');"))})}function appJsonLoader(e){var i=this,r=(hasCheckAppJson=hasCheckAppJson||checkAppJson(this),(null==(r=loaderUtils.parseQuery(this.resourceQuery).get("package"))?void 0:r.replace(/\\/g,"/"))||""),n=manifestManager.getManifestData(),t=n.projectComponentsMap,n=n.manifest,c=manifestManager.getIsOpenLazyCodeLoad(),u=this.options.srcPath,p=Object.values(n.usingComponents||{}),l=[],n=(c&&l.push("var {ascfDefine, ascfRequire} = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./ascf-define"))),");")),"app"===r&&appProcess(l,p,t,r),t[r]||t["".concat(r,"/")]);return 0<(null==n?void 0:n.size)&&n.forEach(function(e,r){var n=e.componentList,t=e.jsonContent,e="./"+relative(u,e.compJsonPath).replace(/\\/g,"/"),o=getComponents(n,p),a=e.replace(/\.json$/g,".js"),e=path.resolve(getProjectInfo().ascfSrcPath,e),s=e.replace(/\.json$/g,".js"),t=JSON.stringify(null!=t&&t.styleIsolation?{styleIsolation:null==t?void 0:t.styleIsolation}:{});fs.existsSync(e)&&i.addDependency(e),fs.existsSync(s)&&i.addDependency(s),c?(e=getLazyCodeLoadUsingCmp(n),l.push("ascfDefine(() => require('".concat(a,"'), '").concat(r,"', ").concat(e,", ").concat(t,")"))):(l.push("global.__qaJson= ".concat(t,";")),l.push("global.__qaRoute = '".concat(r,"';")),l.push("global.usingComponents = ".concat(o,";")),l.push("require('".concat(a,"');")))}),"app"===r&&c&&(t=getRequireGlobalCmpStr(p),l.push(t)),asyncProcess(r,l,this),l.join("\r\n")}function getRequireGlobalCmpStr(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[],r=[];return(r=e.length?e.map(function(e){return'ascfRequire("'.concat(e,'")')}):r).join("\r\n")}function getLazyCodeLoadUsingCmp(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[],r=[];return e.length&&(r=e.filter(function(e){return!e.hasPlaceHolder||"customTabBar"===e.key}).map(function(e){return e.path})),JSON.stringify(r)}function asyncProcess(e,r,n){var t=getProjectInfo(),o=generateIgnoreRule(t.projectCfg),e=null==(e=configs.asyncJsList[e])?void 0:e.keys();if(e){var a,s=_createForOfIteratorHelper(e);try{for(s.s();!(a=s.n()).done;){var i=a.value,c=path.relative(t.ascfSrcPath,i).replace(/\\/g,"/");c.endsWith(".js")||(c+=".js"),packOptions.isIgnoreFile(path.relative(t.ascfSrcPath,i),o)||(n.addDependency(i.replace(/\//g,"\\")),r.push("require('./".concat(c,"');")))}}catch(e){s.e(e)}finally{s.f()}}}module.exports=appJsonLoader;
@@ -1 +1 @@
1
- function _regenerator(){var p,e="function"==typeof Symbol?Symbol:{},r=e.iterator||"@@iterator",t=e.toStringTag||"@@toStringTag";function n(e,r,t,n){var a,o,c,i,s,l,u,g,f,r=r&&r.prototype instanceof h?r:h,r=Object.create(r.prototype);return _regeneratorDefine2(r,"_invoke",(a=e,o=t,u=n||[],g=!1,f={p:l=0,n:0,v:p,a:d,f:d.bind(p,4),d:function(e,r){return c=e,i=0,s=p,f.n=r,y}},function(e,r,t){if(1<l)throw TypeError("Generator is already running");for(g&&1===r&&d(r,t),i=r,s=t;(_=i<2?p:s)||!g;){c||(i?i<3?(1<i&&(f.n=-1),d(i,s)):f.n=s:f.v=s);try{if(l=2,c){if(_=c[e=i?e:"next"]){if(!(_=_.call(c,s)))throw TypeError("iterator result is not an object");if(!_.done)return _;s=_.value,i<2&&(i=0)}else 1===i&&(_=c.return)&&_.call(c),i<2&&(s=TypeError("The iterator does not provide a '"+e+"' method"),i=1);c=p}else if((_=(g=f.n<0)?s:a.call(o,f))!==y)break}catch(e){c=p,i=1,s=e}finally{l=1}}return{value:_,done:g}}),!0),r;function d(e,r){for(i=e,s=r,_=0;!g&&l&&!t&&_<u.length;_++){var t,n=u[_],a=f.p,o=n[2];3<e?(t=o===r)&&(s=n[(i=n[4])?5:i=3],n[4]=n[5]=p):n[0]<=a&&((t=e<2&&a<n[1])?(i=0,f.v=r,f.n=n[1]):a<o&&(t=e<3||n[0]>r||o<r)&&(n[4]=e,n[5]=r,f.n=o,i=0))}if(t||1<e)return y;throw g=!0,r}}var y={};function h(){}function a(){}function o(){}var _=Object.getPrototypeOf,e=[][r]?_(_([][r]())):(_regeneratorDefine2(_={},r,function(){return this}),_),c=o.prototype=h.prototype=Object.create(e);function i(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,o):(e.__proto__=o,_regeneratorDefine2(e,t,"GeneratorFunction")),e.prototype=Object.create(c),e}return _regeneratorDefine2(c,"constructor",a.prototype=o),_regeneratorDefine2(o,"constructor",a),_regeneratorDefine2(o,t,a.displayName="GeneratorFunction"),_regeneratorDefine2(c),_regeneratorDefine2(c,t,"Generator"),_regeneratorDefine2(c,r,function(){return this}),_regeneratorDefine2(c,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:n,m:i}})()}function _regeneratorDefine2(e,r,t,n){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}(_regeneratorDefine2=function(e,r,t,n){function a(r,t){_regeneratorDefine2(e,r,function(e){return this._invoke(r,t,e)})}r?o?o(e,r,{value:t,enumerable:!n,configurable:!n,writable:!n}):e[r]=t:(a("next",0),a("throw",1),a("return",2))})(e,r,t,n)}function asyncGeneratorStep(e,r,t,n,a,o,c){try{var i=e[o](c),s=i.value}catch(e){return void t(e)}i.done?r(s):Promise.resolve(s).then(n,a)}function _asyncToGenerator(i){return function(){var e=this,c=arguments;return new Promise(function(r,t){var n=i.apply(e,c);function a(e){asyncGeneratorStep(n,r,t,a,o,"next",e)}function o(e){asyncGeneratorStep(n,r,t,a,o,"throw",e)}a(void 0)})}}var path=require("path"),fs=require("fs"),_require=require("@atomicservice/ascf-base"),getPath=_require.getPath,execSafe=_require.execSafe,getAdbPath=_require.getAdbPath,getProjectConfig=_require.getProjectConfig,tryAdbPortReversing=_require.tryAdbPortReversing,startServer=_require.startServer,getDevEcoSdkHome=_require.getDevEcoSdkHome,hdcShared=_require.hdcShared,getHdcPath=_require.getHdcPath,getHvigorwPath=_require.getHvigorwPath,$async=_require.$async,LEGACY_DEVICE=_require.LEGACY_DEVICE,_require2=require("../../common/utils"),getProjectInfo=_require2.getProjectInfo,getEntryPkgPath=_require2.getEntryPkgPath,getModuleNames=_require2.getModuleNames,getBundleName=_require2.getBundleName,log4js=require("../../common/log4js"),_require3=require("../../common/config"),configs=_require3.configs,logger=log4js.getLogger("hdc-executor"),_hdcShared=hdcShared({logger:logger,getDevEcoSdkHome:getDevEcoSdkHome,getPath:getPath,getHdcPath:getHdcPath}),runCmdAsync=_hdcShared.runCmdAsync,runHdcCmdAsync=_hdcShared.runHdcCmdAsync,HDC_ERR_REGREX=/error|Fail/g;function assembleHap(){return _assembleHap.apply(this,arguments)}function _assembleHap(){return(_assembleHap=_asyncToGenerator(_regenerator().m(function e(){return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return logger.info("assembleHap"),e.n=1,$async(runCmdAsync(getHvigorwPath(),["assembleHap","--parallel","--incremental","--daemon","-p","skipAscfCompile=true"],{chdir:!0,cwd:getProjectInfo().projectPath}));case 1:return e.a(2,e.v)}},e)}))).apply(this,arguments)}function stopHvigorDaemon(){return _stopHvigorDaemon.apply(this,arguments)}function _stopHvigorDaemon(){return(_stopHvigorDaemon=_asyncToGenerator(_regenerator().m(function e(){return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return logger.info("stop-daemon"),e.n=1,$async(runCmdAsync(getHvigorwPath(),["--stop-daemon"],{chdir:!0,cwd:getProjectInfo().projectPath}));case 1:return e.a(2)}},e)}))).apply(this,arguments)}function installPkg(){return _installPkg.apply(this,arguments)}function _installPkg(){return(_installPkg=_asyncToGenerator(_regenerator().m(function e(){var r,t,n,a;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if((r=getModuleNames()).name){e.n=1;break}return logger.error("module.name is null, in the file of module.json5"),e.a(2);case 1:if(t=path.join(getEntryPkgPath(),"build","default","outputs","default","".concat(r.name,"-default-signed.hap")),fs.existsSync(t)){e.n=2;break}return logger.error("hapPath is not exists",t),e.a(2);case 2:return logger.info("installing package bundleName to sn"),e.n=3,$async(runHdcCmdAsync(["-t",getDeviceId(),"install",t],{chdir:!0,cwd:getProjectInfo().projectPath}));case 3:if(n=e.v,a=(null==n||null==(a=n.data)?void 0:a.err)||(null==n?void 0:n.data),HDC_ERR_REGREX.test(a))return logger.fatal("install package err: ",a),e.a(2);e.n=4;break;case 4:return e.a(2,n)}},e)}))).apply(this,arguments)}function startAbilityWithBrk(e,r){return _startAbilityWithBrk.apply(this,arguments)}function _startAbilityWithBrk(){return(_startAbilityWithBrk=_asyncToGenerator(_regenerator().m(function e(r,t){var n,a,o;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return"brk"===(null==(n=getProjectConfig(r))?void 0:n.ascfDebugger)&&t.push("--ps ascfDebugger brk"),e.n=1,$async(runHdcCmdAsync(t));case 1:if(a=e.v,o=(null==a||null==(n=a.data)?void 0:n.err)||(null==a?void 0:a.data),HDC_ERR_REGREX.test(o))return logger.fatal("startAbility err: ",o),e.a(2);e.n=2;break;case 2:return e.a(2,a)}},e)}))).apply(this,arguments)}function legacyHosAssemble(e){return _legacyHosAssemble.apply(this,arguments)}function _legacyHosAssemble(){return(_legacyHosAssemble=_asyncToGenerator(_regenerator().m(function e(r){var t,n,a,o,c,i,s,l,u,g,f,d,p,y,h,_,m;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(t=getProjectInfo().projectPath,n=configs.qsHostPkg||"com.enjoy.now.hmos",a=global.ASCF_QS_BUILT_PATH?path.basename(global.ASCF_QS_BUILT_PATH):null==(a=fs.readdirSync("".concat(t,"/build/dist")))||null==(a=a.filter(function(e){return/.*-debug-.*\.spk/.test(e)}))?void 0:a[0],o=getBundleNameQs(t),r._deviceType===LEGACY_DEVICE)return y=path.join(t,"build/dist"),e.n=1,startServer(3e3,y);e.n=8;break;case 1:return c=e.v,g=tryAdbPortReversing,e.n=2,getLegacyDeviceId();case 2:return e.n=3,g(e.v,c.port,0);case 3:if(i=e.v){e.n=4;break}return logger.error("hdc rport error, maybe find remote port error"),e.a(2);case 4:return s="http://127.0.0.1:".concat(i,"/").concat(a),f=$async,d=runCmdAsync,e.n=5,getAdbPath();case 5:return p=e.v,e.n=6,getLegacyDeviceId();case 6:return y=e.v,h=n,_=s,m=o,e.n=7,f(d(p,["-s",y,"shell","am","start","-n",h,"--es","startMode","installAndRunDebugPkg","--es","pkgUrl",_,"--es","ascfPackageName",m]));case 7:logger.info("waiting download and install package ..."),l=0,u=setInterval(function(){c.hasReq(s)||60<l?(hdcRemovePort(i,c.port,LEGACY_DEVICE),c.close(),clearInterval(u)):l++},1e3),e.n=9;break;case 8:return h="-t ".concat(getDeviceId()," shell aa start -a MpEntryAbility -b ").concat(n," --ps startMode installAndRunDebugPkg --ps pkgUrl http://127.0.0.1:").concat(r.remotePort,"/build/dist/").concat(a," --ps ascfPackageName ").concat(o),e.n=9,startAbilityWithBrk(t,[h]);case 9:return e.a(2)}},e)}))).apply(this,arguments)}function assembleAndInstallHap(e){return _assembleAndInstallHap.apply(this,arguments)}function _assembleAndInstallHap(){return(_assembleAndInstallHap=_asyncToGenerator(_regenerator().m(function e(r){var t;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(global._supportLegacyHos)return e.n=1,legacyHosAssemble(r);e.n=2;break;case 1:return e.a(2);case 2:return e.n=3,assembleHap();case 3:if((t=e.v).err)return logger.fatal("assembleHap err: ",t.err),e.a(2);e.n=4;break;case 4:return e.n=5,installPkg();case 5:return e.a(2)}},e)}))).apply(this,arguments)}function uninstallPkg(){return _uninstallPkg.apply(this,arguments)}function _uninstallPkg(){return(_uninstallPkg=_asyncToGenerator(_regenerator().m(function e(){var r,t,n;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(global._supportLegacyHos)return e.a(2);e.n=1;break;case 1:return r=getBundleName(),logger.info("Uninstall package"),e.n=2,$async(runHdcCmdAsync(["-t",getDeviceId(),"uninstall",r],{chdir:!0,cwd:getProjectInfo().projectPath}));case 2:if(t=e.v,n=(null==t||null==(r=t.data)?void 0:r.err)||(null==t?void 0:t.data),HDC_ERR_REGREX.test(n))return logger.fatal("uninstallPkg err: ",n),e.a(2);e.n=3;break;case 3:return e.a(2,t)}},e)}))).apply(this,arguments)}function getBundleNameQs(e){e=path.resolve(e,"ascf","ascf_src","app.json");if(fs.existsSync(e)){e=JSON.parse(fs.readFileSync(e,"utf8"));if(null!=e&&e.package)return null==e?void 0:e.package;logger.error("app.json package is null")}else logger.error("app.json is not found")}function legacyHosStartAbility(e){return _legacyHosStartAbility.apply(this,arguments)}function _legacyHosStartAbility(){return(_legacyHosStartAbility=_asyncToGenerator(_regenerator().m(function e(r){var t,n,a,o,c,i,s,l,u;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(t=getProjectInfo().projectPath,n=getBundleNameQs(t),a=configs.qsHostPkg||"com.enjoy.now.hmos",r===LEGACY_DEVICE)return o=$async,c=runCmdAsync,e.n=1,getAdbPath();e.n=4;break;case 1:return i=e.v,e.n=2,getLegacyDeviceId();case 2:return s=e.v,l=a,u=n,e.n=3,o(c(i,["-s",s,"shell","am","start","-n",l,"--es","ascfPackageName",u,"--es","launchMode","forceUpdate"]));case 3:e.n=5;break;case 4:return e.n=5,startAbilityWithBrk(t,["-t",getDeviceId(),"shell","aa","start","-a","MpEntryAbility","-b",a,"--ps","ascfPackageName",n,"--ps","launchMode","forceUpdate"]);case 5:return e.a(2)}},e)}))).apply(this,arguments)}function startAbility(e){return _startAbility.apply(this,arguments)}function _startAbility(){return(_startAbility=_asyncToGenerator(_regenerator().m(function e(r){var t,n,a;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(t=getProjectInfo().projectPath,logger.info("start startAbility under ".concat(t)),global._supportLegacyHos)return e.n=1,legacyHosStartAbility(r);e.n=2;break;case 1:return e.a(2);case 2:if(n=getBundleName()){e.n=3;break}return logger.error("bundleName is null"),e.a(2);case 3:if((a=getModuleNames()).name){e.n=4;break}return logger.error("module.name is null, in the file of module.json5"),e.a(2);case 4:if(a.entryAbility){e.n=5;break}return logger.error("abilities.name is null, in the file of module.json5"),e.a(2);case 5:return logger.info("start ability ".concat(n)),e.n=6,startAbilityWithBrk(t,["-t ".concat(getDeviceId()," shell aa start -a ").concat(a.entryAbility," -b ").concat(n," -m ").concat(a.name," --ps launchMode forceUpdate")]);case 6:return e.a(2)}},e)}))).apply(this,arguments)}function hdcRemovePort(e,r,t){return _hdcRemovePort.apply(this,arguments)}function _hdcRemovePort(){return(_hdcRemovePort=_asyncToGenerator(_regenerator().m(function e(r,t,n){var a,o,c,i;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(0===r||0===t)return e.a(2);e.n=1;break;case 1:if(logger.info("Remove forward port"),n===LEGACY_DEVICE)return o=execSafe,i="",e.n=2,getAdbPath();e.n=4;break;case 2:return c=i.concat.call(i,e.v," -s "),e.n=3,getLegacyDeviceId();case 3:a=o(c.concat.call(c,e.v," reverse --remove tcp:").concat(r)),e.n=5;break;case 4:a=execSafe("".concat(getHdcPath()," -t ").concat(getDeviceId()," fport rm tcp:").concat(r," tcp:").concat(t));case 5:logger.debug(a);case 6:return e.a(2)}},e)}))).apply(this,arguments)}function tryHdcPortReversing(e){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,t=Math.floor(64512*Math.random())+1024,n=execSafe("".concat(getHdcPath()," -t ").concat(getDeviceId()," rport tcp:").concat(t," tcp:").concat(e));return n&&5!==r?n.includes("Forwardport result:OK")?t:tryHdcPortReversing(e,++r):0}function getDeviceId(){var e;return configs.deviceId||((e=execSafe("".concat(getHdcPath()," list targets")))&&!/(Empty|Fail)/.test(e)||(logger.error("App Launch: select a device first"),process.exit(1)),e=e.split("\n"),configs.deviceId=e[0].trim()),configs.deviceId}function getLegacyDeviceId(){return _getLegacyDeviceId.apply(this,arguments)}function _getLegacyDeviceId(){return(_getLegacyDeviceId=_asyncToGenerator(_regenerator().m(function e(){var r,t,n,a;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return n=execSafe,a="",e.n=1,getAdbPath();case 1:if((r=n(a.concat.call(a,e.v," devices -l"))).err||null==r||!r.length||/^List of devices attached$/.test(r))return this.adapter.logger.debug("legacy listTargets error or no devices found"),e.a(2,[]);e.n=2;break;case 2:return(t=r.split("\n")).shift(),t=t.map(function(e){return e.split(" ")[0]}),e.a(2,t[0].trim())}},e,this)}))).apply(this,arguments)}module.exports={stopHvigorDaemon:stopHvigorDaemon,assembleAndInstallHap:assembleAndInstallHap,assembleHap:assembleHap,installPkg:installPkg,uninstallPkg:uninstallPkg,startAbility:startAbility,hdcRemovePort:hdcRemovePort,tryHdcPortReversing:tryHdcPortReversing,getDeviceId:getDeviceId,getLegacyDeviceId:getLegacyDeviceId};
1
+ function _regenerator(){var p,e="function"==typeof Symbol?Symbol:{},r=e.iterator||"@@iterator",t=e.toStringTag||"@@toStringTag";function n(e,r,t,n){var a,o,c,i,s,l,u,g,f,r=r&&r.prototype instanceof h?r:h,r=Object.create(r.prototype);return _regeneratorDefine2(r,"_invoke",(a=e,o=t,u=n||[],g=!1,f={p:l=0,n:0,v:p,a:d,f:d.bind(p,4),d:function(e,r){return c=e,i=0,s=p,f.n=r,y}},function(e,r,t){if(1<l)throw TypeError("Generator is already running");for(g&&1===r&&d(r,t),i=r,s=t;(_=i<2?p:s)||!g;){c||(i?i<3?(1<i&&(f.n=-1),d(i,s)):f.n=s:f.v=s);try{if(l=2,c){if(_=c[e=i?e:"next"]){if(!(_=_.call(c,s)))throw TypeError("iterator result is not an object");if(!_.done)return _;s=_.value,i<2&&(i=0)}else 1===i&&(_=c.return)&&_.call(c),i<2&&(s=TypeError("The iterator does not provide a '"+e+"' method"),i=1);c=p}else if((_=(g=f.n<0)?s:a.call(o,f))!==y)break}catch(e){c=p,i=1,s=e}finally{l=1}}return{value:_,done:g}}),!0),r;function d(e,r){for(i=e,s=r,_=0;!g&&l&&!t&&_<u.length;_++){var t,n=u[_],a=f.p,o=n[2];3<e?(t=o===r)&&(s=n[(i=n[4])?5:i=3],n[4]=n[5]=p):n[0]<=a&&((t=e<2&&a<n[1])?(i=0,f.v=r,f.n=n[1]):a<o&&(t=e<3||n[0]>r||o<r)&&(n[4]=e,n[5]=r,f.n=o,i=0))}if(t||1<e)return y;throw g=!0,r}}var y={};function h(){}function a(){}function o(){}var _=Object.getPrototypeOf,e=[][r]?_(_([][r]())):(_regeneratorDefine2(_={},r,function(){return this}),_),c=o.prototype=h.prototype=Object.create(e);function i(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,o):(e.__proto__=o,_regeneratorDefine2(e,t,"GeneratorFunction")),e.prototype=Object.create(c),e}return _regeneratorDefine2(c,"constructor",a.prototype=o),_regeneratorDefine2(o,"constructor",a),_regeneratorDefine2(o,t,a.displayName="GeneratorFunction"),_regeneratorDefine2(c),_regeneratorDefine2(c,t,"Generator"),_regeneratorDefine2(c,r,function(){return this}),_regeneratorDefine2(c,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:n,m:i}})()}function _regeneratorDefine2(e,r,t,n){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}(_regeneratorDefine2=function(e,r,t,n){function a(r,t){_regeneratorDefine2(e,r,function(e){return this._invoke(r,t,e)})}r?o?o(e,r,{value:t,enumerable:!n,configurable:!n,writable:!n}):e[r]=t:(a("next",0),a("throw",1),a("return",2))})(e,r,t,n)}function asyncGeneratorStep(e,r,t,n,a,o,c){try{var i=e[o](c),s=i.value}catch(e){return void t(e)}i.done?r(s):Promise.resolve(s).then(n,a)}function _asyncToGenerator(i){return function(){var e=this,c=arguments;return new Promise(function(r,t){var n=i.apply(e,c);function a(e){asyncGeneratorStep(n,r,t,a,o,"next",e)}function o(e){asyncGeneratorStep(n,r,t,a,o,"throw",e)}a(void 0)})}}var path=require("path"),fs=require("fs"),_require=require("@atomicservice/ascf-base"),getPath=_require.getPath,execSafe=_require.execSafe,getAdbPath=_require.getAdbPath,getProjectConfig=_require.getProjectConfig,tryAdbPortReversing=_require.tryAdbPortReversing,startServer=_require.startServer,getDevEcoSdkHome=_require.getDevEcoSdkHome,hdcShared=_require.hdcShared,getHdcPath=_require.getHdcPath,getHvigorwPath=_require.getHvigorwPath,$async=_require.$async,LEGACY_DEVICE=_require.LEGACY_DEVICE,LEGACY_PKG_NAME=_require.LEGACY_PKG_NAME,qsHostPkg=_require.qsHostPkg,_require2=require("../../common/utils"),getProjectInfo=_require2.getProjectInfo,getEntryPkgPath=_require2.getEntryPkgPath,getModuleNames=_require2.getModuleNames,getBundleName=_require2.getBundleName,log4js=require("../../common/log4js"),_require3=require("../../common/config"),configs=_require3.configs,logger=log4js.getLogger("hdc-executor"),_hdcShared=hdcShared({logger:logger,getDevEcoSdkHome:getDevEcoSdkHome,getPath:getPath,getHdcPath:getHdcPath}),runCmdAsync=_hdcShared.runCmdAsync,runHdcCmdAsync=_hdcShared.runHdcCmdAsync,HDC_ERR_REGREX=/error|Fail/g;function assembleHap(){return _assembleHap.apply(this,arguments)}function _assembleHap(){return(_assembleHap=_asyncToGenerator(_regenerator().m(function e(){return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return logger.info("assembleHap"),e.n=1,$async(runCmdAsync(getHvigorwPath(),["assembleHap","--parallel","--incremental","--daemon","-p","skipAscfCompile=true"],{chdir:!0,cwd:getProjectInfo().projectPath}));case 1:return e.a(2,e.v)}},e)}))).apply(this,arguments)}function stopHvigorDaemon(){return _stopHvigorDaemon.apply(this,arguments)}function _stopHvigorDaemon(){return(_stopHvigorDaemon=_asyncToGenerator(_regenerator().m(function e(){return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return logger.info("stop-daemon"),e.n=1,$async(runCmdAsync(getHvigorwPath(),["--stop-daemon"],{chdir:!0,cwd:getProjectInfo().projectPath}));case 1:return e.a(2)}},e)}))).apply(this,arguments)}function installPkg(){return _installPkg.apply(this,arguments)}function _installPkg(){return(_installPkg=_asyncToGenerator(_regenerator().m(function e(){var r,t,n,a;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if((r=getModuleNames()).name){e.n=1;break}return logger.error("module.name is null, in the file of module.json5"),e.a(2);case 1:if(t=path.join(getEntryPkgPath(),"build","default","outputs","default","".concat(r.name,"-default-signed.hap")),fs.existsSync(t)){e.n=2;break}return logger.error("hapPath is not exists",t),e.a(2);case 2:return logger.info("installing package bundleName to sn"),e.n=3,$async(runHdcCmdAsync(["-t",getDeviceId(),"install",t],{chdir:!0,cwd:getProjectInfo().projectPath}));case 3:if(n=e.v,a=(null==n||null==(a=n.data)?void 0:a.err)||(null==n?void 0:n.data),HDC_ERR_REGREX.test(a))return logger.fatal("install package err: ",a),e.a(2);e.n=4;break;case 4:return e.a(2,n)}},e)}))).apply(this,arguments)}function startAbilityWithBrk(e,r){return _startAbilityWithBrk.apply(this,arguments)}function _startAbilityWithBrk(){return(_startAbilityWithBrk=_asyncToGenerator(_regenerator().m(function e(r,t){var n,a,o;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return"brk"===(null==(n=getProjectConfig(r))?void 0:n.ascfDebugger)&&t.push("--ps ascfDebugger brk"),e.n=1,$async(runHdcCmdAsync(t));case 1:if(a=e.v,o=(null==a||null==(n=a.data)?void 0:n.err)||(null==a?void 0:a.data),HDC_ERR_REGREX.test(o))return logger.fatal("startAbility err: ",o),e.a(2);e.n=2;break;case 2:return e.a(2,a)}},e)}))).apply(this,arguments)}function legacyHosAssemble(e){return _legacyHosAssemble.apply(this,arguments)}function _legacyHosAssemble(){return(_legacyHosAssemble=_asyncToGenerator(_regenerator().m(function e(r){var t,n,a,o,c,i,s,l,u,g,f,d,p,y,h,_,m;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(t=getProjectInfo().projectPath,n=configs.qsHostPkg||"com.enjoy.now.hmos",a=global.ASCF_QS_BUILT_PATH?path.basename(global.ASCF_QS_BUILT_PATH):null==(a=fs.readdirSync("".concat(t,"/build/dist")))||null==(a=a.filter(function(e){return/.*-debug-.*\.spk/.test(e)}))?void 0:a[0],o=getBundleNameQs(t),r._deviceType===LEGACY_DEVICE)return y=path.join(t,"build/dist"),e.n=1,startServer(3e3,y);e.n=8;break;case 1:return c=e.v,g=tryAdbPortReversing,e.n=2,getLegacyDeviceId();case 2:return e.n=3,g(e.v,c.port,0);case 3:if(i=e.v){e.n=4;break}return logger.error("hdc rport error, maybe find remote port error"),e.a(2);case 4:return s="http://127.0.0.1:".concat(i,"/").concat(a),f=$async,d=runCmdAsync,e.n=5,getAdbPath();case 5:return p=e.v,e.n=6,getLegacyDeviceId();case 6:return y=e.v,h=n,_=s,m=o,e.n=7,f(d(p,["-s",y,"shell","am","start","-n",h,"--es","startMode","installAndRunDebugPkg","--es","pkgUrl",_,"--es","ascfPackageName",m]));case 7:logger.info("waiting download and install package ..."),l=0,u=setInterval(function(){c.hasReq(s)||60<l?(hdcRemovePort(i,c.port,LEGACY_DEVICE),c.close(),clearInterval(u)):l++},1e3),e.n=9;break;case 8:return h="-t ".concat(getDeviceId()," shell aa start -a MpEntryAbility -b ").concat(n," --ps startMode installAndRunDebugPkg --ps pkgUrl http://127.0.0.1:").concat(r.remotePort,"/build/dist/").concat(a," --ps ascfPackageName ").concat(o),e.n=9,startAbilityWithBrk(t,[h]);case 9:return e.a(2)}},e)}))).apply(this,arguments)}function assembleAndInstallHap(e){return _assembleAndInstallHap.apply(this,arguments)}function _assembleAndInstallHap(){return(_assembleAndInstallHap=_asyncToGenerator(_regenerator().m(function e(r){var t;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(global._supportLegacyHos)return e.n=1,legacyHosAssemble(r);e.n=2;break;case 1:return e.a(2);case 2:return e.n=3,assembleHap();case 3:if((t=e.v).err)return logger.fatal("assembleHap err: ",t.err),e.a(2);e.n=4;break;case 4:return e.n=5,installPkg();case 5:return e.a(2)}},e)}))).apply(this,arguments)}function uninstallPkg(){return _uninstallPkg.apply(this,arguments)}function _uninstallPkg(){return(_uninstallPkg=_asyncToGenerator(_regenerator().m(function e(){var r,t,n;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(global._supportLegacyHos)return e.a(2);e.n=1;break;case 1:return r=getBundleName(),logger.info("Uninstall package"),e.n=2,$async(runHdcCmdAsync(["-t",getDeviceId(),"uninstall",r],{chdir:!0,cwd:getProjectInfo().projectPath}));case 2:if(t=e.v,n=(null==t||null==(r=t.data)?void 0:r.err)||(null==t?void 0:t.data),HDC_ERR_REGREX.test(n))return logger.fatal("uninstallPkg err: ",n),e.a(2);e.n=3;break;case 3:return e.a(2,t)}},e)}))).apply(this,arguments)}function getBundleNameQs(e){e=path.resolve(e,"ascf","ascf_src","app.json");if(fs.existsSync(e)){e=JSON.parse(fs.readFileSync(e,"utf8"));if(null!=e&&e.package)return null==e?void 0:e.package;logger.error("app.json package is null")}else logger.error("app.json is not found")}function legacyHosStartAbility(e){return _legacyHosStartAbility.apply(this,arguments)}function _legacyHosStartAbility(){return(_legacyHosStartAbility=_asyncToGenerator(_regenerator().m(function e(r){var t,n,a,o,c,i,s,l,u;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(t=getProjectInfo().projectPath,n=getBundleNameQs(t),r===LEGACY_DEVICE)return a=configs.qsHostPkg||qsHostPkg,o=$async,c=runCmdAsync,e.n=1,getAdbPath();e.n=4;break;case 1:return i=e.v,e.n=2,getLegacyDeviceId();case 2:return s=e.v,l=a,u=n,e.n=3,o(c(i,["-s",s,"shell","am","start","-n",l,"--es","ascfPackageName",u,"--es","launchMode","forceUpdate"]));case 3:e.n=5;break;case 4:return s=configs.qsHostPkg||LEGACY_PKG_NAME,e.n=5,startAbilityWithBrk(t,["-t",getDeviceId(),"shell","aa","start","-a","MpEntryAbility","-b",s,"--ps","ascfPackageName",n,"--ps","launchMode","forceUpdate"]);case 5:return e.a(2)}},e)}))).apply(this,arguments)}function startAbility(e){return _startAbility.apply(this,arguments)}function _startAbility(){return(_startAbility=_asyncToGenerator(_regenerator().m(function e(r){var t,n,a;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(t=getProjectInfo().projectPath,logger.info("start startAbility under ".concat(t)),global._supportLegacyHos)return e.n=1,legacyHosStartAbility(r);e.n=2;break;case 1:return e.a(2);case 2:if(n=getBundleName()){e.n=3;break}return logger.error("bundleName is null"),e.a(2);case 3:if((a=getModuleNames()).name){e.n=4;break}return logger.error("module.name is null, in the file of module.json5"),e.a(2);case 4:if(a.entryAbility){e.n=5;break}return logger.error("abilities.name is null, in the file of module.json5"),e.a(2);case 5:return logger.info("start ability ".concat(n)),e.n=6,startAbilityWithBrk(t,["-t ".concat(getDeviceId()," shell aa start -a ").concat(a.entryAbility," -b ").concat(n," -m ").concat(a.name," --ps launchMode forceUpdate")]);case 6:return e.a(2)}},e)}))).apply(this,arguments)}function hdcRemovePort(e,r,t){return _hdcRemovePort.apply(this,arguments)}function _hdcRemovePort(){return(_hdcRemovePort=_asyncToGenerator(_regenerator().m(function e(r,t,n){var a,o,c,i;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:if(0===r||0===t)return e.a(2);e.n=1;break;case 1:if(logger.info("Remove forward port"),n===LEGACY_DEVICE)return o=execSafe,i="",e.n=2,getAdbPath();e.n=4;break;case 2:return c=i.concat.call(i,e.v," -s "),e.n=3,getLegacyDeviceId();case 3:a=o(c.concat.call(c,e.v," reverse --remove tcp:").concat(r)),e.n=5;break;case 4:a=execSafe("".concat(getHdcPath()," -t ").concat(getDeviceId()," fport rm tcp:").concat(r," tcp:").concat(t));case 5:logger.debug(a);case 6:return e.a(2)}},e)}))).apply(this,arguments)}function tryHdcPortReversing(e){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,t=Math.floor(64512*Math.random())+1024,n=execSafe("".concat(getHdcPath()," -t ").concat(getDeviceId()," rport tcp:").concat(t," tcp:").concat(e));return n&&5!==r?n.includes("Forwardport result:OK")?t:tryHdcPortReversing(e,++r):0}function getDeviceId(){var e;return configs.deviceId||((e=execSafe("".concat(getHdcPath()," list targets")))&&!/(Empty|Fail)/.test(e)||(logger.error("App Launch: select a device first"),process.exit(1)),e=e.split("\n"),configs.deviceId=e[0].trim()),configs.deviceId}function getLegacyDeviceId(){return _getLegacyDeviceId.apply(this,arguments)}function _getLegacyDeviceId(){return(_getLegacyDeviceId=_asyncToGenerator(_regenerator().m(function e(){var r,t,n,a;return _regenerator().w(function(e){for(;;)switch(e.n){case 0:return n=execSafe,a="",e.n=1,getAdbPath();case 1:if((r=n(a.concat.call(a,e.v," devices -l"))).err||null==r||!r.length||/^List of devices attached$/.test(r))return this.adapter.logger.debug("legacy listTargets error or no devices found"),e.a(2,[]);e.n=2;break;case 2:return(t=r.split("\n")).shift(),t=t.map(function(e){return e.split(" ")[0]}),e.a(2,t[0].trim())}},e,this)}))).apply(this,arguments)}module.exports={stopHvigorDaemon:stopHvigorDaemon,assembleAndInstallHap:assembleAndInstallHap,assembleHap:assembleHap,installPkg:installPkg,uninstallPkg:uninstallPkg,startAbility:startAbility,hdcRemovePort:hdcRemovePort,tryHdcPortReversing:tryHdcPortReversing,getDeviceId:getDeviceId,getLegacyDeviceId:getLegacyDeviceId};
@@ -1 +1 @@
1
- var expUtils=require("./exp-utils"),fs=require("fs"),utils=require("./utils"),path=require("path"),vm=require("vm"),ATTR_NAME="ATTR_NAME",syncViewEventsMap={checkbox:["checked"],radio:["checked"],switch:["checked"],swiper:["current"],"picker-view":["value"],slider:["value"],progress:["percent"],video:["muted","initial-time"],"movable-view":["x","y","scale-value"],"scroll-view":["scroll-top","scroll-left"]},tagCommon={attrs:[{name:"id"},{name:"class"},{name:"style"},{name:"has:for"},{name:"has:if"},{name:"has:elif"},{name:"has:else"},{name:"has:key",combDiectives:["has:for","has:for-items"]},{name:"has:for-items"},{name:"has:for-index",combDiectives:["has:for","has:for-items"]},{name:"has:for-item",combDiectives:["has:for","has:for-items"]},{name:"data"},{name:"bind"},{name:"data"},{name:"data-"},{name:"catch"},{name:"capture-catch:"}]},tagComponentMap={map:{events:["bindtap","bindmarketap","bindlabeltap","bindcontroltap","bindcallouttap","bindupdated","bindregionchange","bindpoitap"],attrs:[{name:"longitude",type:["number"],required:!0},{name:"latitude",type:["number"],required:!0},{name:"scale",type:["number"],default:16,enum:[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]},{name:"marker",type:["array"]},{name:"cover",type:["array"]},{name:"polyline",type:["array"]},{name:"circles",type:["array"]},{name:"controls",type:["array"]},{name:"include-points",type:["array"]},{name:"show-location",type:["boolean"],default:!1},{name:"polygons",type:["array"]},{name:"subkey",type:["string"]},{name:"layer-style",type:["number"],default:1},{name:"rotate",type:["number"],default:0},{name:"skew",type:["number"],default:0},{name:"show-compass",type:["boolean"],default:!1},{name:"enable-3D",type:["boolean"],default:!1},{name:"show-scale",type:["boolean"],default:!1},{name:"enable-overlooking",type:["boolean"],default:!1},{name:"enable-zoom",type:["boolean"],default:!0},{name:"enable-sttellite",type:["boolean"],default:!1},{name:"enable-traffic",type:["boolean"],default:!1},{name:"enable-scroll",type:["boolean"],default:!0},{name:"enable-rotate",type:["boolean"],default:!1},{name:"setting",type:["object"]}]},video:{events:["bindplay","bindpause","bindended","bindtimeupdate","bindfullscreenchange","bindwating","binderror","bindprogress","bindloadmetadata"],attrs:[{name:"src",type:["string"],checkPath:!0,required:!0},{name:"duration",type:["number"]},{name:"controls",type:["boolean"],default:!0},{name:"danmu-list",type:["array"]},{name:"danmu-list",type:["array"]},{name:"danmu-button",type:["boolean"],default:!1},{name:"enable-danmu",type:["boolean"],default:!1},{name:"autoplay",type:["boolean"],default:!1},{name:"loop",type:["boolean"],default:!1},{name:"muted",type:["boolean"],default:!1},{name:"initial-time",type:["number"],default:0},{name:"page-gesture",type:["boolean"],default:!1},{name:"object-fit",type:["string"],default:"contain",enum:["contain","fill","cover"]},{name:"poster",type:["string"],checkPath:!0},{name:"direction",type:["number"],enum:[0,-90,90]},{name:"show-progress",type:["boolean"],default:!0},{name:"show-fullscreen-btn",type:["boolean"],default:!0},{name:"show-play-btn",type:["boolean"],default:!0},{name:"show-center-play-btn",type:["boolean"],default:!0},{name:"enable-prgress-gesture",type:["boolean"],default:!0},{name:"show-mute-btn",type:["boolean"],default:!1},{name:"title",type:["string"]},{name:"play-btn-postion",type:["string"],default:"buttom",enum:["buttom","center"]},{name:"enable-play-gesture",type:["boolean"],default:!1},{name:"auto-pause-if-navigate",type:["boolean"],default:!0},{name:"auto-pause-if-open-native",type:["boolean"],default:!0},{name:"vslide-gesture",type:["boolean"],default:!1},{name:"vslide-gesture-in-fullscreen",type:["boolean"],default:!0},{name:"ad-unit-id",type:["string"]}]},"live-pusher":{events:["bindstatechange","bindnetstatus","binderror","bindbgmstart","bindbgmprogress","bindbgmcomplete"],attrs:[{name:"url",type:["string"],checkPath:!0},{name:"mode",type:["string"],default:"live",enum:["live","RTC"]},{name:"autopush",type:["boolean"],default:!1},{name:"muted",type:["boolean"],default:!1},{name:"enable-camera",type:["boolean"],default:!0},{name:"atuo-foucus",type:["boolean"],default:!0},{name:"orientation",type:["string"],default:"vertical",enum:["vertical","horizontal"]},{name:"beauty",type:["number"],default:0,enum:[0,1,2,3,4,5,6,7,8,9]},{name:"whiteness",type:["number"],default:0,enum:[0,1,2,3,4,5,6,7,8,9]},{name:"aspect",type:["string"],default:"9:16",enum:["9:16","3:4"]},{name:"mini-bitrate",type:["number"],default:200},{name:"max-bitrate",type:["number"],default:1e3},{name:"audio-quality",type:["string"],default:"high",enum:["low","high"]},{name:"waiting-image",type:["string"]},{name:"waiting-image-hash",type:["string"]},{name:"zoom",type:["boolean"],default:!1},{name:"device-position",type:["string"],default:"front",enum:["front","back"]},{name:"background-mute",type:["boolean"],default:!1},{name:"mirror",type:["boolean"],default:!1}]},"live-player":{events:["bindstatechange","bindfullscreenchange","bindnetstatus"],attrs:[{name:"src",type:["string"],checkPath:!0},{name:"mode",type:["string"],default:"RTC",enum:["HD","FHD","SD","RTC"]},{name:"autoplay",type:["boolean"],default:!1},{name:"muted",type:["boolean"],default:!1},{name:"orientation",type:["string"],default:"vertical",enum:["vertical","horizontal"]},{name:"object-fit",type:["string"],default:"contain",enum:["contain","fillCrop"]},{name:"background-mute",type:["boolean"],default:!1},{name:"min-cache",type:["number"],default:1},{name:"min-cache",type:["number"],default:3},{name:"sound-mode",type:["string"],default:"speaker",enum:["speaker","ear"]},{name:"auto-pause-if-open-native",type:["boolean"],default:!0},{name:"auto-pause-if-navigate",type:["boolean"],default:!0}]},camrea:{events:["bindstop","binderror","bindinitdone","bindscancode"],attrs:[{name:"mode",type:["boolean"],default:"normal",enum:["front","back"]},{name:"device-position",type:["string"],default:"back"},{name:"flash",type:["string"],default:"auto",enum:["auto","on","off","torch"]},{name:"frame-size",type:["string"],default:"medium",enum:["small","medium","large"]},{name:"flash",type:["string"],default:"auto"}]},view:{attrs:[{name:"hover-class",type:["string"],default:"node"},{name:"hover-stop-propagation",type:["boolean"],default:!1},{name:"hover-start-time",type:["number"],default:50},{name:"hover-stay-time",type:["number"],default:400}]},"scroll-view":{events:["bindscrolltoupper","bindscrolltolower","bindscroll"],attrs:[{name:"scroll-x",type:["boolean"],default:!1},{name:"scroll-y",type:["boolean"],default:!1},{name:"upper-threshold",type:["number","string"],default:50},{name:"lower-threshold",type:["number","string"],default:50},{name:"scroll-top",type:["number","string"]},{name:"scroll-left",type:["number","string"]},{name:"scroll-into-view",type:["string"]},{name:"scroll-with-animation",type:["boolean"],default:!1},{name:"scroll-flex",type:["boolean"],default:!1},{name:"scroll-anchoring",type:["boolean"],default:!1}]},"movable-area":{attrs:[{name:"scale-area",type:["boolean"],default:!1}]},"movable-view":{events:["bindchange","bindscale","htouchmove","vtouchmove"],attrs:[{name:"direction",type:["string"],default:"none"},{name:"inertia",type:["boolean"],default:!1},{name:"out-of-bounds",type:["boolean"],default:!1},{name:"x",type:["number"]},{name:"y",type:["number"]},{name:"damping",type:["number"],default:20},{name:"friction",type:["number"],default:2},{name:"disabled",type:["boolean"],default:!1},{name:"scale",type:["boolean"],default:!1},{name:"scale-min",type:["number"],default:.5},{name:"scale-max",type:["number"],default:10},{name:"scale-value",type:["number"],default:1},{name:"animation",type:["boolean"],default:!0}]},audio:{events:["binderror","bindplay","bindpause","bindtimeupdate","bindended"],attrs:[{name:"id",type:["string"]},{name:"src",type:["string"],checkPath:!0},{name:"loop",type:["boolean"],default:!1},{name:"controls",type:["boolean"],default:!1},{name:"poster",type:["string"],checkPath:!0},{name:"name",type:["string"]},{name:"author",type:["string"]}]},progress:{events:["bindactiveend"],attrs:[{name:"percent",type:["number"]},{name:"show-info",type:["boolean"],default:!1},{name:"border-radius",type:["number","string"],default:0},{name:"font-size",type:["number","string"],default:16},{name:"stroke-width",type:["number","string"],default:6},{name:"color",type:["string"],default:"#09BB07"},{name:"active-color",type:["string"],default:"#09BB07"},{name:"backgroundColor",type:["string"],default:"#EBEBEB"},{name:"active",type:["boolean"],default:!1},{name:"active-mode",type:["string"],default:"backwards"},{name:"durations",type:["number"],default:30}]},"rich-text":{attrs:[{name:"nodes",type:["array","string"],default:[]},{name:"space",type:["string"]}]},text:{attrs:[{name:"autoplay",type:["boolean"],default:!1},{name:"autoplay",type:["string"]},{name:"decode",type:["boolean"],default:!1}]},swiper:{events:["bindchang","bindtransition","bindanimationfinish"],attrs:[{name:"indicator-dots",type:["boolean"],default:!1},{name:"indicator-color",type:["string"],default:"rgba(0, 0, 0, .3)"},{name:"indicator-active-color",type:["string"],default:"#000000"},{name:"autoplay",type:["boolean"],default:!1},{name:"current",type:["number","string"],default:0},{name:"interval",type:["number","string"],default:5e3},{name:"duration",type:["number","string"],default:500},{name:"vertical",type:["boolean"],default:!1},{name:"circular",type:["boolean"],default:!1},{name:"previous-margin",type:["string","number"],default:"0px"},{name:"next-margin",type:["string","number"],default:"0px"},{name:"display-multiple-items",type:["number"],default:1},{name:"skip-hidden-item-layout",type:["boolean"],default:!1},{name:"easing-function",type:["string"],default:"default",enum:["default","linear","easeInCubic","easeOutCubic","easeInOutCubic"]}]},"swiper-item":{parent:"swiper",attrs:[{name:"item-id"}]},image:{events:["binderror","bindload"],attrs:[{name:"src",checkPath:!0},{name:"mode"},{name:"webp"},{name:"lazy-load"},{name:"show-menu-by-longpress"}]},icon:{attrs:[{name:"type",type:["string"]},{name:"size",type:["number","string"],default:23},{name:"color",type:["string"]}]},"cover-image":{attrs:[{name:"src",required:!0,checkPath:!0}],events:["bindload","binderror"]},"cover-view":{attrs:[{name:"scroll-top",type:["number","string"]}]},checkbox:{attrs:[{name:"value",type:["string","number"]},{name:"disabled",type:["boolean"],default:!1},{name:"checked",type:["boolean"],default:!1},{name:"color",type:["string"],default:"#09BB07"}]},button:{events:["bindgetuserinfo","bindcontact","bindgetphonenumber","binderror","bindopensetting","bindlaunchapp"],attrs:[{name:"size",type:["string"],default:"default",enum:["default","mini"]},{name:"type",type:["string"],default:"default",enum:["primary","default","warn"]},{name:"plain",type:["boolean"],default:!1},{name:"disabled",type:["boolean"],default:!1},{name:"loading",type:["boolean"],default:!1},{name:"form-type",type:["string"],enum:["submit","reset"]},{name:"open-type",type:["string"],enum:["contact","share","getPhoneNumber","getUserInfo","launchApp","openSetting","feedback"]},{name:"hover-class",type:["string"],default:"button-hover"},{name:"hover-stop-propagation",type:["boolean"],default:!1},{name:"hover-start-time",type:["number"],default:20},{name:"hover-stay-time",type:["number"],default:70},{name:"lang",type:["string"],default:"en",enum:["en","zh_CN","zh_TW"]},{name:"session-from",type:["string"]},{name:"send-message-title",type:["string"]},{name:"send-message-path",type:["string"]},{name:"send-message-img",type:["string"]},{name:"app-parameter",type:["string"]},{name:"show-message-card",type:["boolean"],default:!1}]},"checkbox-group":{events:["bindchange"],attrs:[]},editor:{events:["bindready","bindfocus","bindblur","bindinput","bindstatuschange"],attrs:[{name:"read-only",type:["boolean"],default:!1},{name:"placeholder",type:["string","number"]},{name:"show-img-size",type:["boolean"],default:!1},{name:"show-img-toolbar",type:["boolean"],default:!1},{name:"show-img-resize",type:["boolean"],default:!1}]},form:{events:["bindsubmit","bindreset"],attrs:[{name:"report-submit",type:["boolean"],default:!1},{name:"report-submit-timeout",type:["number"],default:0}]},input:{events:["bindinput","bindfocus","bindblur","bindconfirm","bindkeyboardheightchange"],attrs:[{name:"value",type:["string","number"]},{name:"type",type:["string"],default:"text",enum:["text","number","idcard","digit"]},{name:"password",type:["boolean"],default:!1},{name:"placeholder",type:["string","number"]},{name:"placeholder-style",type:["string"]},{name:"placeholder-class",type:["string"],default:"input-placeholder"},{name:"disabled",type:["boolean"],default:!1},{name:"maxlength",type:["number"],default:140},{name:"cursor-spacing",type:["number"],default:0},{name:"auto-focus",type:["boolean"],default:!1},{name:"focus",type:["boolean"],default:!1},{name:"confirm-type",type:["string"],default:"done",enum:["send","search","next","go","done"]},{name:"confirm-hold",type:["boolean"],default:!1},{name:"cursor",type:["number"]},{name:"selection-start",type:["number"],default:-1},{name:"selection-end",type:["number"],default:-1},{name:"adjust-position",type:["boolean"],default:!0},{name:"hold-keyboard",type:["boolean"],default:!1}]},label:{attrs:[{name:"for",type:["string"]}]},picker:{events:["bindcancel","bindchange","bindcolumnchange"],attrs:[{name:"mode",type:["string"],default:"selector",enum:["selector","multiSelector","time","date","region"]},{name:"disabled",type:["boolean"],default:!1},{name:"range",type:["array"]},{name:"range-key",type:["boolean"],string:!1},{name:"value",type:["number","array","string"]},{name:"start",type:["string","number"]},{name:"end",type:["string","number"]},{name:"fields",type:["string"],default:"day",enum:["year","month","day"]},{name:"custom-item",type:["string"]}]},"picker-view":{events:["bindchange","bindpickstart","bindpickend"],attrs:[{name:"value",type:["array"],default:"selector"},{name:"indicator-style",type:["string"]},{name:"indicator-class",type:["string"]},{name:"mask-style",type:["string"]},{name:"mask-class",type:["string"]}]},"picker-view-column":{attrs:[]},radio:{attrs:[{name:"value",type:["string","number"]},{name:"color",type:["string"],default:"#09BB07"},{name:"checked",type:["boolean"],default:!1},{name:"disabled",type:["boolean"],default:!1}]},"radio-group":{events:["bindchange"],attrs:[]},slider:{events:["bindchange","bindchanging"],attrs:[{name:"min",type:["number"],default:0},{name:"max",type:["number"],default:100},{name:"step",type:["number"],default:1},{name:"disabled",type:["boolean"],default:!1},{name:"value",type:["number"],default:0},{name:"color",type:["string"],default:"#e9e9e9"},{name:"selected-color",type:["string"],default:"#1aad19"},{name:"active-color",type:["string"],default:"#1aad19"},{name:"background-color",type:["string"],default:"#e9e9e9"},{name:"block-size",type:["number"],default:28},{name:"block-color",type:["string"],default:"#ffffff"},{name:"show-value",type:["boolean"],default:!1}]},switch:{events:["bindchange"],attrs:[{name:"checked",type:["boolean"],default:!1},{name:"disabled",type:["boolean"],default:!1},{name:"type",type:["string"],default:"switch"},{name:"color",type:["string"],default:"#04BE02"}]},textarea:{events:["bindfocus","bindblur","bindlinechange","bindinput","bindconfirm","bindkeyboardheightchange"],attrs:[{name:"value",type:["string"]},{name:"placeholder",type:["string","number"]},{name:"placeholder-style",type:["string"]},{name:"placeholder-class",type:["string"],default:"textarea-placeholde"},{name:"disabled",type:["boolean"],default:!1},{name:"maxlength",type:["number"],default:140},{name:"auto-focus",type:["boolean"],default:!1},{name:"focus",type:["boolean"],default:!1},{name:"auto-height",type:["boolean"],default:!1},{name:"fixed",type:["boolean"],default:!1},{name:"cursor-spacing",type:["number"],default:0},{name:"cursor",type:["number"],default:-1},{name:"show-confirm-bar",type:["boolean"],default:!1},{name:"selection-start",type:["number"],default:-1},{name:"selection-end",type:["number"],default:-1},{name:"adjust-position",type:["boolean"],default:!0},{name:"hold-keyboard",type:["boolean"],default:!1}]},"functional-page-navigator":{events:["bindsuccess","bindfail","bindcancel"],attrs:[{name:"version",type:["string"],default:"release"},{name:"name",type:["string"]},{name:"args",type:["object"]}]},navigator:{events:["bindsuccess","bindfail","bindcomplete"],attrs:[{name:"target",type:["string"],default:"self"},{name:"url",type:["string"]},{name:"open-type",type:["string"],default:"navigate",enum:["navigate","redirect","switchTab","reLaunch","navigateBack","exit"]},{name:"delta",type:["number"],default:1},{name:"app-id",type:["string"]},{name:"path",type:["string"]},{name:"extra-data",type:["object"]},{name:"version",type:["string"],default:"release",enum:["develop","trial","release"]},{name:"hover-class",type:["string"],default:"navigator-hover"},{name:"hover-stop-propagation",type:["boolean"],default:!1},{name:"hover-start-time",type:["number"],default:50},{name:"hover-stay-time",type:["number"],default:600}]},"open-data":{events:["binderror"],attrs:[{name:"type",type:["string"],enum:["groupName","userNickName","userAvatarUrl","userGender","userCity","userProvince","userCountry","userLanguage"]},{name:"open-gid",type:["string"]},{name:"lang",type:["string"],default:"en",enum:["en","zh_CN","zh_TW"]},{name:"default-text",type:["string"]},{name:"default-avatar",type:["string"]}]},"official-account":{events:["bindload","binderror"],attrs:[]},ad:{events:["bindload","binderror","bindclose"],attrs:[{name:"unit-id",type:["string"],required:!0},{name:"ad-intervals",type:["number"]}]},"web-view":{events:["bindmessage","bindload","binderror"],attrs:[{name:"src",type:["string"],checkPath:!0}]},canvas:{events:["bindtouchstart","bindtouchmove","bindtouchend","bindtouchcancel","bindlongtap","binderror"],attrs:[{name:"type",type:["string"]},{name:"canvas-id",type:["string"]},{name:"disable-scroll",type:["boolean"],default:!1}]},"navigation-bar":{events:[],attrs:[{name:"title",type:["string"]},{name:"loading",type:["boolean"],default:!1},{name:"front-color",type:["string"]},{name:"background-color",type:["string"]},{name:"color-animation-duration",type:["number"],default:0},{name:"page-style",type:["string"],default:""},{name:"color-animation-timing-func",type:["string"],default:"linear",enum:["linear","easeIn","easeOut","easeInOut"]}]},"page-meta":{events:["bindresize","bindscroll","bindscrolldone"],attrs:[{name:"background-text-style",type:["string"]},{name:"background-color",type:["string"]},{name:"background-color-top",type:["string"]},{name:"background-color-bottom",type:["string"]},{name:"scroll-top",type:["string"],default:""},{name:"scroll-duration",type:["number"],default:300},{name:"page-style",type:["string"],default:""},{name:"root-font-size",type:["string"],default:""}]},"ad-button":{events:["bindtap"],attrs:[{name:"adid",type:["string"],required:!0},{name:"adunitid",type:["string"],required:!0},{name:"valuetype",type:["number"],default:0},{name:"open-type",type:["number"],default:0}]}},tagRequiredParent={},tagRequiredAttrs={},tagAllowedAttrs={},tagAttrsAllowedType={},tagAttrsNeedCheckPath={},attrsNeedCombine={},URL_MATCH_REG_EXP=/url\s*\(\s*['"]?\s*([^\(\)]+?)\s*['"]?\s*\)/g,URL_CONTENT_REG_EXP=/url\s*\(\s*['"]?([^'"]*)['"]?\s*\)/;function initData(n){tagCommon.attrs.filter(function(e){return e.combDiectives}).forEach(function(e){return attrsNeedCombine[e.name]=e.combDiectives}),Object.keys(n).forEach(function(e){var t=n[e],a=t.attrs;t.parent&&t.parent.length&&(tagRequiredParent[e]=t.parent),tagRequiredAttrs[e]=a.filter(function(e){return e.required}),tagAllowedAttrs[e]=a.concat(tagCommon.attrs),tagAttrsAllowedType[e]=a.filter(function(e){return e.type}),tagAttrsNeedCheckPath[e]=a.filter(function(e){return e.checkPath}).map(function(e){return e.name})})}function getRelativePath(e,t){return path.relative(e,t).replace(/\\/g,"/")}function findIncldeTagSrcChain(e,t){for(var a,n=[],r=e.parentNode,o=t.rootPath,l=t.resourcePath;r;)"_@template@_"===r.nodeName.replace(/^q\-/,"")&&(a=r.attrs.filter(function(e){return"src"===e.name})[0])&&n.unshift(a.value),r=r.parentNode;return n.length&&(l=n.reduce(function(e,t){t=utils.getAbsPath(t,l,o).filePath;return l=t},"")),/\.hxml$/.test(l)?l:"".concat(l,".hxml")}function findIncludeSrcPath(e,t){var a=e;return/^\//.test(t)?{srcPath:e}:((e=e.split(/\/|\\/)).pop(),e=e.join("/"),{sourcePath:a,filePath:path.join(e,t).replace(/\\/g,"/")})}function checkSourcePath(e,t,a,n,r){var o;/^(https?:)?\/\//.test(t.value)||(o=t.value,e=e.tagName,tagAttrsNeedCheckPath[e].includes(t.name)&&fileExistHandle(e,t,a,n,r),"style"!==t.name)||"string"!=typeof o||o.includes("rpx")||checkStyleUrlPath(e,t,a,n,r)}function fileExistHandle(e,t,a,n,r){var o,l,i;return/^(https?:)?\/\//.test(t.value)||"string"==typeof t.value&&(l=n.rootPath,n=n.resourcePath,i=findIncludeSrcPath(r,o=t.value),n=utils.getAbsPath(o,n,l).filePath.replace(/\s/g,""),n=i&&i.filePath?i.filePath:n,fs.existsSync(n)?(i=getRelativePath(l,n),t.value="/".concat(i)):/^\/[^\/]+|(\.?\.\/)/.test(o)&&a.push({filePath:r,loc:t.loc||{start:0,end:0},reason:"WRANNING: Component <".concat(e,"> attribute '").concat(t.name,"' ")+"source path '".concat(t.value,"' is not exist, ")+"Please check."})),t.value}function checkStyleUrlPath(a,e,n,r,o){URL_MATCH_REG_EXP.test(e.value)&&(e.value=e.value.replace(URL_MATCH_REG_EXP,function(e){var t=e.replace(/(\\")|(\\')/g,"").match(URL_CONTENT_REG_EXP);return t?(t=fileExistHandle(a,{value:t[1],name:"style"},n,r,o),"url(".concat(t,")")):e}))}function checkAttrValType(e,t,a,n){var r=tagAttrsAllowedType[e].find(function(e){return e.name===t.name});r&&(r=r.type)&&(r=r.filter(function(e){return"boolean"!==e})).length&&!r.includes(getAttrValType(t.value))&&a.push({filePath:n,loc:t.loc,reason:"WRANNING: Component <".concat(e,"> attribute '").concat(t.name,"' ")+"value '".concat(t.value,"' is not allowed type: <").concat(getAttrValType(t.value),">, ")+"Use below types ".concat(JSON.stringify(r.join(", ")))})}function getAttrValType(e){try{var t;return/^{(:+)}$/.test(e)?"object":(t=vm.runInThisContext(e),Object.prototype.toString.call(t).slice(8,-1).toLowerCase())}catch(e){return"string"}}function isParentTagExist(e,t){for(var a=e.parentNode;a&&a.nodeName.replace(/^q\-/,"")!==t;)a=a.parentNode;return!!a}function checkTagName(e,t,a){var n=e.tagName,t=t.buildLog;tagRequiredParent[n]&&!isParentTagExist(e,e=tagRequiredParent[n])&&t.push({filePath:a,reason:"WRANING: Component <".concat(n,"> cant not find parent component: <").concat(e,">, ")+"Please check it"})}function checkAttrValInAllowedList(e,t,a,n,r){var o="number"===getAttrValType(t.value)?Number(t.value):t.value,n=("string"==typeof o&&(o=o.trim()),n.buildLog);a.includes(o)||n.push({filePath:r,loc:t.loc,reason:"WRANNING: Component <".concat(e,"> attribute '").concat(t.name,"' value '").concat(t.value,"' is not allowed,")+" Use below values \n ".concat(JSON.stringify(a.join(", ")))})}function checkElseIf(e,t,a,n){var r,o,l=!1;["has:else","has:elif"].includes(t.name)&&((o=e.parentNode.childNodes)&&1<o.length&&(r=o.indexOf(e),l=(o=o.slice(0,r)).length&&o.some(function(e){return e.attrs&&e.attrs.find(function(e){return"v-if"===e.name})})),l||(a.buildLog.push({filePath:n,loc:t.loc,trigger:ATTR_NAME,reason:"WRANNING: ".concat(t.name,"=").concat(t.value," used on element <").concat(e.tagName,"> ")+"without corresponding has:if."}),e.attrs.splice(e.attrs.indexOf(t),1)))}function checkAttrFor(e,t,a,n){var r,o,l=attrsNeedCombine[t.name];l&&(o=(r=e.attrs).indexOf(t),!r.find(function(e){return l.includes(e.name)}))&&(a.buildLog.push({filePath:n,loc:t.loc,trigger:ATTR_NAME,reason:"WRANNING: ".concat(t.name,"=").concat(t.value," used on element <").concat(e.tagName,"> ")+"without corresponding has:for."}),/^has:key$/.test(t.name))&&e.attrs.splice(o,1)}function checkAttrAllowed(e,t,a){return/^(v-|:)/.test(e.name)?(t.push({filePath:a,loc:e.loc,trigger:ATTR_NAME,reason:"WARNING: Unexpected attribute name: ".concat(e.name,", attribute can not start with 'v-' or ':'. ")}),!1):(["key"].includes(e.name)&&t.push({filePath:a,loc:e.loc,trigger:ATTR_NAME,reason:"WARNING: Unexpected JavaScript keyword as attribute name: '".concat(e.name,"', please change it.")}),!0)}function checkTagAttrs(a,n,r,o){var l,i,s=a.tagName,u=n.buildLog,e=a.attrs,m=tagAllowedAttrs[s],t=tagRequiredAttrs[s];m?(t.forEach(function(t){e.find(function(e){return e.name===t.name})||u.push({filePath:o,loc:a.loc,reason:"WRANNING: Component <".concat(s,"> missing required attribute '").concat(t.name,"'")})}),l=[],e.forEach(function(t){var e;checkAttrAllowed(t,u,o)&&l.push(t),!expUtils.isExpr(t.value)&&!utils.isEmptyStr(t.value)&&(/^data\-/.test(t.name)||(t.name=utils.camelCaseToHyphened(t.name)),e=m.find(function(e){return new RegExp("^".concat(e.name)).test(t.name)}))&&(e.enum?checkAttrValInAllowedList(s,t,e.enum,n,o):checkAttrValType(s,t,u,o),checkSourcePath(a,t,u,r,o)),checkElseIf(a,t,n,o),checkAttrFor(a,t,n,o)}),a.attrs=l):e&&0<e.length&&(i=[],e.forEach(function(e,t,a){checkAttrAllowed(e,u,o)&&i.push(e)}),a.attrs=i)}function checkNode(e,t,a){var n=findIncldeTagSrcChain(e,a);checkTagName(e,t,n),checkTagAttrs(e,t,a,n)}initData(tagComponentMap),module.exports={checkTagAttrs:checkTagAttrs,checkTagName:checkTagName,isParentTagExist:isParentTagExist,checkNode:checkNode,findIncldeTagSrcChain:findIncldeTagSrcChain,syncViewEventsMap:syncViewEventsMap};
1
+ var expUtils=require("./exp-utils"),fs=require("fs"),utils=require("./utils"),path=require("path"),vm=require("vm"),ATTR_NAME="ATTR_NAME",syncViewEventsMap={checkbox:["checked"],radio:["checked"],switch:["checked"],swiper:["current"],"picker-view":["value"],slider:["value"],progress:["percent"],video:["muted","initial-time"],"movable-view":["x","y","scale-value"],"scroll-view":["scroll-top","scroll-left","refresher-triggered"]},tagCommon={attrs:[{name:"id"},{name:"class"},{name:"style"},{name:"has:for"},{name:"has:if"},{name:"has:elif"},{name:"has:else"},{name:"has:key",combDiectives:["has:for","has:for-items"]},{name:"has:for-items"},{name:"has:for-index",combDiectives:["has:for","has:for-items"]},{name:"has:for-item",combDiectives:["has:for","has:for-items"]},{name:"data"},{name:"bind"},{name:"data"},{name:"data-"},{name:"catch"},{name:"capture-catch:"}]},tagComponentMap={map:{events:["bindtap","bindmarketap","bindlabeltap","bindcontroltap","bindcallouttap","bindupdated","bindregionchange","bindpoitap"],attrs:[{name:"longitude",type:["number"],required:!0},{name:"latitude",type:["number"],required:!0},{name:"scale",type:["number"],default:16,enum:[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]},{name:"marker",type:["array"]},{name:"cover",type:["array"]},{name:"polyline",type:["array"]},{name:"circles",type:["array"]},{name:"controls",type:["array"]},{name:"include-points",type:["array"]},{name:"show-location",type:["boolean"],default:!1},{name:"polygons",type:["array"]},{name:"subkey",type:["string"]},{name:"layer-style",type:["number"],default:1},{name:"rotate",type:["number"],default:0},{name:"skew",type:["number"],default:0},{name:"show-compass",type:["boolean"],default:!1},{name:"enable-3D",type:["boolean"],default:!1},{name:"show-scale",type:["boolean"],default:!1},{name:"enable-overlooking",type:["boolean"],default:!1},{name:"enable-zoom",type:["boolean"],default:!0},{name:"enable-sttellite",type:["boolean"],default:!1},{name:"enable-traffic",type:["boolean"],default:!1},{name:"enable-scroll",type:["boolean"],default:!0},{name:"enable-rotate",type:["boolean"],default:!1},{name:"setting",type:["object"]}]},video:{events:["bindplay","bindpause","bindended","bindtimeupdate","bindfullscreenchange","bindwating","binderror","bindprogress","bindloadmetadata"],attrs:[{name:"src",type:["string"],checkPath:!0,required:!0},{name:"duration",type:["number"]},{name:"controls",type:["boolean"],default:!0},{name:"danmu-list",type:["array"]},{name:"danmu-list",type:["array"]},{name:"danmu-button",type:["boolean"],default:!1},{name:"enable-danmu",type:["boolean"],default:!1},{name:"autoplay",type:["boolean"],default:!1},{name:"loop",type:["boolean"],default:!1},{name:"muted",type:["boolean"],default:!1},{name:"initial-time",type:["number"],default:0},{name:"page-gesture",type:["boolean"],default:!1},{name:"object-fit",type:["string"],default:"contain",enum:["contain","fill","cover"]},{name:"poster",type:["string"],checkPath:!0},{name:"direction",type:["number"],enum:[0,-90,90]},{name:"show-progress",type:["boolean"],default:!0},{name:"show-fullscreen-btn",type:["boolean"],default:!0},{name:"show-play-btn",type:["boolean"],default:!0},{name:"show-center-play-btn",type:["boolean"],default:!0},{name:"enable-prgress-gesture",type:["boolean"],default:!0},{name:"show-mute-btn",type:["boolean"],default:!1},{name:"title",type:["string"]},{name:"play-btn-postion",type:["string"],default:"buttom",enum:["buttom","center"]},{name:"enable-play-gesture",type:["boolean"],default:!1},{name:"auto-pause-if-navigate",type:["boolean"],default:!0},{name:"auto-pause-if-open-native",type:["boolean"],default:!0},{name:"vslide-gesture",type:["boolean"],default:!1},{name:"vslide-gesture-in-fullscreen",type:["boolean"],default:!0},{name:"ad-unit-id",type:["string"]}]},"live-pusher":{events:["bindstatechange","bindnetstatus","binderror","bindbgmstart","bindbgmprogress","bindbgmcomplete"],attrs:[{name:"url",type:["string"],checkPath:!0},{name:"mode",type:["string"],default:"live",enum:["live","RTC"]},{name:"autopush",type:["boolean"],default:!1},{name:"muted",type:["boolean"],default:!1},{name:"enable-camera",type:["boolean"],default:!0},{name:"atuo-foucus",type:["boolean"],default:!0},{name:"orientation",type:["string"],default:"vertical",enum:["vertical","horizontal"]},{name:"beauty",type:["number"],default:0,enum:[0,1,2,3,4,5,6,7,8,9]},{name:"whiteness",type:["number"],default:0,enum:[0,1,2,3,4,5,6,7,8,9]},{name:"aspect",type:["string"],default:"9:16",enum:["9:16","3:4"]},{name:"mini-bitrate",type:["number"],default:200},{name:"max-bitrate",type:["number"],default:1e3},{name:"audio-quality",type:["string"],default:"high",enum:["low","high"]},{name:"waiting-image",type:["string"]},{name:"waiting-image-hash",type:["string"]},{name:"zoom",type:["boolean"],default:!1},{name:"device-position",type:["string"],default:"front",enum:["front","back"]},{name:"background-mute",type:["boolean"],default:!1},{name:"mirror",type:["boolean"],default:!1}]},"live-player":{events:["bindstatechange","bindfullscreenchange","bindnetstatus"],attrs:[{name:"src",type:["string"],checkPath:!0},{name:"mode",type:["string"],default:"RTC",enum:["HD","FHD","SD","RTC"]},{name:"autoplay",type:["boolean"],default:!1},{name:"muted",type:["boolean"],default:!1},{name:"orientation",type:["string"],default:"vertical",enum:["vertical","horizontal"]},{name:"object-fit",type:["string"],default:"contain",enum:["contain","fillCrop"]},{name:"background-mute",type:["boolean"],default:!1},{name:"min-cache",type:["number"],default:1},{name:"min-cache",type:["number"],default:3},{name:"sound-mode",type:["string"],default:"speaker",enum:["speaker","ear"]},{name:"auto-pause-if-open-native",type:["boolean"],default:!0},{name:"auto-pause-if-navigate",type:["boolean"],default:!0}]},camrea:{events:["bindstop","binderror","bindinitdone","bindscancode"],attrs:[{name:"mode",type:["boolean"],default:"normal",enum:["front","back"]},{name:"device-position",type:["string"],default:"back"},{name:"flash",type:["string"],default:"auto",enum:["auto","on","off","torch"]},{name:"frame-size",type:["string"],default:"medium",enum:["small","medium","large"]},{name:"flash",type:["string"],default:"auto"}]},view:{attrs:[{name:"hover-class",type:["string"],default:"node"},{name:"hover-stop-propagation",type:["boolean"],default:!1},{name:"hover-start-time",type:["number"],default:50},{name:"hover-stay-time",type:["number"],default:400}]},"scroll-view":{events:["bindscrolltoupper","bindscrolltolower","bindscroll"],attrs:[{name:"scroll-x",type:["boolean"],default:!1},{name:"scroll-y",type:["boolean"],default:!1},{name:"upper-threshold",type:["number","string"],default:50},{name:"lower-threshold",type:["number","string"],default:50},{name:"scroll-top",type:["number","string"]},{name:"scroll-left",type:["number","string"]},{name:"scroll-into-view",type:["string"]},{name:"scroll-with-animation",type:["boolean"],default:!1},{name:"scroll-flex",type:["boolean"],default:!1},{name:"scroll-anchoring",type:["boolean"],default:!1}]},"movable-area":{attrs:[{name:"scale-area",type:["boolean"],default:!1}]},"movable-view":{events:["bindchange","bindscale","htouchmove","vtouchmove"],attrs:[{name:"direction",type:["string"],default:"none"},{name:"inertia",type:["boolean"],default:!1},{name:"out-of-bounds",type:["boolean"],default:!1},{name:"x",type:["number"]},{name:"y",type:["number"]},{name:"damping",type:["number"],default:20},{name:"friction",type:["number"],default:2},{name:"disabled",type:["boolean"],default:!1},{name:"scale",type:["boolean"],default:!1},{name:"scale-min",type:["number"],default:.5},{name:"scale-max",type:["number"],default:10},{name:"scale-value",type:["number"],default:1},{name:"animation",type:["boolean"],default:!0}]},audio:{events:["binderror","bindplay","bindpause","bindtimeupdate","bindended"],attrs:[{name:"id",type:["string"]},{name:"src",type:["string"],checkPath:!0},{name:"loop",type:["boolean"],default:!1},{name:"controls",type:["boolean"],default:!1},{name:"poster",type:["string"],checkPath:!0},{name:"name",type:["string"]},{name:"author",type:["string"]}]},progress:{events:["bindactiveend"],attrs:[{name:"percent",type:["number"]},{name:"show-info",type:["boolean"],default:!1},{name:"border-radius",type:["number","string"],default:0},{name:"font-size",type:["number","string"],default:16},{name:"stroke-width",type:["number","string"],default:6},{name:"color",type:["string"],default:"#09BB07"},{name:"active-color",type:["string"],default:"#09BB07"},{name:"backgroundColor",type:["string"],default:"#EBEBEB"},{name:"active",type:["boolean"],default:!1},{name:"active-mode",type:["string"],default:"backwards"},{name:"durations",type:["number"],default:30}]},"rich-text":{attrs:[{name:"nodes",type:["array","string"],default:[]},{name:"space",type:["string"]}]},text:{attrs:[{name:"autoplay",type:["boolean"],default:!1},{name:"autoplay",type:["string"]},{name:"decode",type:["boolean"],default:!1}]},swiper:{events:["bindchang","bindtransition","bindanimationfinish"],attrs:[{name:"indicator-dots",type:["boolean"],default:!1},{name:"indicator-color",type:["string"],default:"rgba(0, 0, 0, .3)"},{name:"indicator-active-color",type:["string"],default:"#000000"},{name:"autoplay",type:["boolean"],default:!1},{name:"current",type:["number","string"],default:0},{name:"interval",type:["number","string"],default:5e3},{name:"duration",type:["number","string"],default:500},{name:"vertical",type:["boolean"],default:!1},{name:"circular",type:["boolean"],default:!1},{name:"previous-margin",type:["string","number"],default:"0px"},{name:"next-margin",type:["string","number"],default:"0px"},{name:"display-multiple-items",type:["number"],default:1},{name:"skip-hidden-item-layout",type:["boolean"],default:!1},{name:"easing-function",type:["string"],default:"default",enum:["default","linear","easeInCubic","easeOutCubic","easeInOutCubic"]}]},"swiper-item":{parent:"swiper",attrs:[{name:"item-id"}]},image:{events:["binderror","bindload"],attrs:[{name:"src",checkPath:!0},{name:"mode"},{name:"webp"},{name:"lazy-load"},{name:"show-menu-by-longpress"}]},icon:{attrs:[{name:"type",type:["string"]},{name:"size",type:["number","string"],default:23},{name:"color",type:["string"]}]},"cover-image":{attrs:[{name:"src",required:!0,checkPath:!0}],events:["bindload","binderror"]},"cover-view":{attrs:[{name:"scroll-top",type:["number","string"]}]},checkbox:{attrs:[{name:"value",type:["string","number"]},{name:"disabled",type:["boolean"],default:!1},{name:"checked",type:["boolean"],default:!1},{name:"color",type:["string"],default:"#09BB07"}]},button:{events:["bindgetuserinfo","bindcontact","bindgetphonenumber","binderror","bindopensetting","bindlaunchapp"],attrs:[{name:"size",type:["string"],default:"default",enum:["default","mini"]},{name:"type",type:["string"],default:"default",enum:["primary","default","warn"]},{name:"plain",type:["boolean"],default:!1},{name:"disabled",type:["boolean"],default:!1},{name:"loading",type:["boolean"],default:!1},{name:"form-type",type:["string"],enum:["submit","reset"]},{name:"open-type",type:["string"],enum:["contact","share","getPhoneNumber","getUserInfo","launchApp","openSetting","feedback"]},{name:"hover-class",type:["string"],default:"button-hover"},{name:"hover-stop-propagation",type:["boolean"],default:!1},{name:"hover-start-time",type:["number"],default:20},{name:"hover-stay-time",type:["number"],default:70},{name:"lang",type:["string"],default:"en",enum:["en","zh_CN","zh_TW"]},{name:"session-from",type:["string"]},{name:"send-message-title",type:["string"]},{name:"send-message-path",type:["string"]},{name:"send-message-img",type:["string"]},{name:"app-parameter",type:["string"]},{name:"show-message-card",type:["boolean"],default:!1}]},"checkbox-group":{events:["bindchange"],attrs:[]},editor:{events:["bindready","bindfocus","bindblur","bindinput","bindstatuschange"],attrs:[{name:"read-only",type:["boolean"],default:!1},{name:"placeholder",type:["string","number"]},{name:"show-img-size",type:["boolean"],default:!1},{name:"show-img-toolbar",type:["boolean"],default:!1},{name:"show-img-resize",type:["boolean"],default:!1}]},form:{events:["bindsubmit","bindreset"],attrs:[{name:"report-submit",type:["boolean"],default:!1},{name:"report-submit-timeout",type:["number"],default:0}]},input:{events:["bindinput","bindfocus","bindblur","bindconfirm","bindkeyboardheightchange"],attrs:[{name:"value",type:["string","number"]},{name:"type",type:["string"],default:"text",enum:["text","number","idcard","digit"]},{name:"password",type:["boolean"],default:!1},{name:"placeholder",type:["string","number"]},{name:"placeholder-style",type:["string"]},{name:"placeholder-class",type:["string"],default:"input-placeholder"},{name:"disabled",type:["boolean"],default:!1},{name:"maxlength",type:["number"],default:140},{name:"cursor-spacing",type:["number"],default:0},{name:"auto-focus",type:["boolean"],default:!1},{name:"focus",type:["boolean"],default:!1},{name:"confirm-type",type:["string"],default:"done",enum:["send","search","next","go","done"]},{name:"confirm-hold",type:["boolean"],default:!1},{name:"cursor",type:["number"]},{name:"selection-start",type:["number"],default:-1},{name:"selection-end",type:["number"],default:-1},{name:"adjust-position",type:["boolean"],default:!0},{name:"hold-keyboard",type:["boolean"],default:!1}]},label:{attrs:[{name:"for",type:["string"]}]},picker:{events:["bindcancel","bindchange","bindcolumnchange"],attrs:[{name:"mode",type:["string"],default:"selector",enum:["selector","multiSelector","time","date","region"]},{name:"disabled",type:["boolean"],default:!1},{name:"range",type:["array"]},{name:"range-key",type:["boolean"],string:!1},{name:"value",type:["number","array","string"]},{name:"start",type:["string","number"]},{name:"end",type:["string","number"]},{name:"fields",type:["string"],default:"day",enum:["year","month","day"]},{name:"custom-item",type:["string"]}]},"picker-view":{events:["bindchange","bindpickstart","bindpickend"],attrs:[{name:"value",type:["array"],default:"selector"},{name:"indicator-style",type:["string"]},{name:"indicator-class",type:["string"]},{name:"mask-style",type:["string"]},{name:"mask-class",type:["string"]}]},"picker-view-column":{attrs:[]},radio:{attrs:[{name:"value",type:["string","number"]},{name:"color",type:["string"],default:"#09BB07"},{name:"checked",type:["boolean"],default:!1},{name:"disabled",type:["boolean"],default:!1}]},"radio-group":{events:["bindchange"],attrs:[]},slider:{events:["bindchange","bindchanging"],attrs:[{name:"min",type:["number"],default:0},{name:"max",type:["number"],default:100},{name:"step",type:["number"],default:1},{name:"disabled",type:["boolean"],default:!1},{name:"value",type:["number"],default:0},{name:"color",type:["string"],default:"#e9e9e9"},{name:"selected-color",type:["string"],default:"#1aad19"},{name:"active-color",type:["string"],default:"#1aad19"},{name:"background-color",type:["string"],default:"#e9e9e9"},{name:"block-size",type:["number"],default:28},{name:"block-color",type:["string"],default:"#ffffff"},{name:"show-value",type:["boolean"],default:!1}]},switch:{events:["bindchange"],attrs:[{name:"checked",type:["boolean"],default:!1},{name:"disabled",type:["boolean"],default:!1},{name:"type",type:["string"],default:"switch"},{name:"color",type:["string"],default:"#04BE02"}]},textarea:{events:["bindfocus","bindblur","bindlinechange","bindinput","bindconfirm","bindkeyboardheightchange"],attrs:[{name:"value",type:["string"]},{name:"placeholder",type:["string","number"]},{name:"placeholder-style",type:["string"]},{name:"placeholder-class",type:["string"],default:"textarea-placeholde"},{name:"disabled",type:["boolean"],default:!1},{name:"maxlength",type:["number"],default:140},{name:"auto-focus",type:["boolean"],default:!1},{name:"focus",type:["boolean"],default:!1},{name:"auto-height",type:["boolean"],default:!1},{name:"fixed",type:["boolean"],default:!1},{name:"cursor-spacing",type:["number"],default:0},{name:"cursor",type:["number"],default:-1},{name:"show-confirm-bar",type:["boolean"],default:!1},{name:"selection-start",type:["number"],default:-1},{name:"selection-end",type:["number"],default:-1},{name:"adjust-position",type:["boolean"],default:!0},{name:"hold-keyboard",type:["boolean"],default:!1}]},"functional-page-navigator":{events:["bindsuccess","bindfail","bindcancel"],attrs:[{name:"version",type:["string"],default:"release"},{name:"name",type:["string"]},{name:"args",type:["object"]}]},navigator:{events:["bindsuccess","bindfail","bindcomplete"],attrs:[{name:"target",type:["string"],default:"self"},{name:"url",type:["string"]},{name:"open-type",type:["string"],default:"navigate",enum:["navigate","redirect","switchTab","reLaunch","navigateBack","exit"]},{name:"delta",type:["number"],default:1},{name:"app-id",type:["string"]},{name:"path",type:["string"]},{name:"extra-data",type:["object"]},{name:"version",type:["string"],default:"release",enum:["develop","trial","release"]},{name:"hover-class",type:["string"],default:"navigator-hover"},{name:"hover-stop-propagation",type:["boolean"],default:!1},{name:"hover-start-time",type:["number"],default:50},{name:"hover-stay-time",type:["number"],default:600}]},"open-data":{events:["binderror"],attrs:[{name:"type",type:["string"],enum:["groupName","userNickName","userAvatarUrl","userGender","userCity","userProvince","userCountry","userLanguage"]},{name:"open-gid",type:["string"]},{name:"lang",type:["string"],default:"en",enum:["en","zh_CN","zh_TW"]},{name:"default-text",type:["string"]},{name:"default-avatar",type:["string"]}]},"official-account":{events:["bindload","binderror"],attrs:[]},ad:{events:["bindload","binderror","bindclose"],attrs:[{name:"unit-id",type:["string"],required:!0},{name:"ad-intervals",type:["number"]}]},"web-view":{events:["bindmessage","bindload","binderror"],attrs:[{name:"src",type:["string"],checkPath:!0}]},canvas:{events:["bindtouchstart","bindtouchmove","bindtouchend","bindtouchcancel","bindlongtap","binderror"],attrs:[{name:"type",type:["string"]},{name:"canvas-id",type:["string"]},{name:"disable-scroll",type:["boolean"],default:!1}]},"navigation-bar":{events:[],attrs:[{name:"title",type:["string"]},{name:"loading",type:["boolean"],default:!1},{name:"front-color",type:["string"]},{name:"background-color",type:["string"]},{name:"color-animation-duration",type:["number"],default:0},{name:"page-style",type:["string"],default:""},{name:"color-animation-timing-func",type:["string"],default:"linear",enum:["linear","easeIn","easeOut","easeInOut"]}]},"page-meta":{events:["bindresize","bindscroll","bindscrolldone"],attrs:[{name:"background-text-style",type:["string"]},{name:"background-color",type:["string"]},{name:"background-color-top",type:["string"]},{name:"background-color-bottom",type:["string"]},{name:"scroll-top",type:["string"],default:""},{name:"scroll-duration",type:["number"],default:300},{name:"page-style",type:["string"],default:""},{name:"root-font-size",type:["string"],default:""}]},"ad-button":{events:["bindtap"],attrs:[{name:"adid",type:["string"],required:!0},{name:"adunitid",type:["string"],required:!0},{name:"valuetype",type:["number"],default:0},{name:"open-type",type:["number"],default:0}]}},tagRequiredParent={},tagRequiredAttrs={},tagAllowedAttrs={},tagAttrsAllowedType={},tagAttrsNeedCheckPath={},attrsNeedCombine={},URL_MATCH_REG_EXP=/url\s*\(\s*['"]?\s*([^\(\)]+?)\s*['"]?\s*\)/g,URL_CONTENT_REG_EXP=/url\s*\(\s*['"]?([^'"]*)['"]?\s*\)/;function initData(n){tagCommon.attrs.filter(function(e){return e.combDiectives}).forEach(function(e){return attrsNeedCombine[e.name]=e.combDiectives}),Object.keys(n).forEach(function(e){var t=n[e],a=t.attrs;t.parent&&t.parent.length&&(tagRequiredParent[e]=t.parent),tagRequiredAttrs[e]=a.filter(function(e){return e.required}),tagAllowedAttrs[e]=a.concat(tagCommon.attrs),tagAttrsAllowedType[e]=a.filter(function(e){return e.type}),tagAttrsNeedCheckPath[e]=a.filter(function(e){return e.checkPath}).map(function(e){return e.name})})}function getRelativePath(e,t){return path.relative(e,t).replace(/\\/g,"/")}function findIncldeTagSrcChain(e,t){for(var a,n=[],r=e.parentNode,o=t.rootPath,l=t.resourcePath;r;)"_@template@_"===r.nodeName.replace(/^q\-/,"")&&(a=r.attrs.filter(function(e){return"src"===e.name})[0])&&n.unshift(a.value),r=r.parentNode;return n.length&&(l=n.reduce(function(e,t){t=utils.getAbsPath(t,l,o).filePath;return l=t},"")),/\.hxml$/.test(l)?l:"".concat(l,".hxml")}function findIncludeSrcPath(e,t){var a=e;return/^\//.test(t)?{srcPath:e}:((e=e.split(/\/|\\/)).pop(),e=e.join("/"),{sourcePath:a,filePath:path.join(e,t).replace(/\\/g,"/")})}function checkSourcePath(e,t,a,n,r){var o;/^(https?:)?\/\//.test(t.value)||(o=t.value,e=e.tagName,tagAttrsNeedCheckPath[e].includes(t.name)&&fileExistHandle(e,t,a,n,r),"style"!==t.name)||"string"!=typeof o||o.includes("rpx")||checkStyleUrlPath(e,t,a,n,r)}function fileExistHandle(e,t,a,n,r){var o,l,i;return/^(https?:)?\/\//.test(t.value)||"string"==typeof t.value&&(l=n.rootPath,n=n.resourcePath,i=findIncludeSrcPath(r,o=t.value),n=utils.getAbsPath(o,n,l).filePath.replace(/\s/g,""),n=i&&i.filePath?i.filePath:n,fs.existsSync(n)?(i=getRelativePath(l,n),t.value="/".concat(i)):/^\/[^\/]+|(\.?\.\/)/.test(o)&&a.push({filePath:r,loc:t.loc||{start:0,end:0},reason:"WRANNING: Component <".concat(e,"> attribute '").concat(t.name,"' ")+"source path '".concat(t.value,"' is not exist, ")+"Please check."})),t.value}function checkStyleUrlPath(a,e,n,r,o){URL_MATCH_REG_EXP.test(e.value)&&(e.value=e.value.replace(URL_MATCH_REG_EXP,function(e){var t=e.replace(/(\\")|(\\')/g,"").match(URL_CONTENT_REG_EXP);return t?(t=fileExistHandle(a,{value:t[1],name:"style"},n,r,o),"url(".concat(t,")")):e}))}function checkAttrValType(e,t,a,n){var r=tagAttrsAllowedType[e].find(function(e){return e.name===t.name});r&&(r=r.type)&&(r=r.filter(function(e){return"boolean"!==e})).length&&!r.includes(getAttrValType(t.value))&&a.push({filePath:n,loc:t.loc,reason:"WRANNING: Component <".concat(e,"> attribute '").concat(t.name,"' ")+"value '".concat(t.value,"' is not allowed type: <").concat(getAttrValType(t.value),">, ")+"Use below types ".concat(JSON.stringify(r.join(", ")))})}function getAttrValType(e){try{var t;return/^{(:+)}$/.test(e)?"object":(t=vm.runInThisContext(e),Object.prototype.toString.call(t).slice(8,-1).toLowerCase())}catch(e){return"string"}}function isParentTagExist(e,t){for(var a=e.parentNode;a&&a.nodeName.replace(/^q\-/,"")!==t;)a=a.parentNode;return!!a}function checkTagName(e,t,a){var n=e.tagName,t=t.buildLog;tagRequiredParent[n]&&!isParentTagExist(e,e=tagRequiredParent[n])&&t.push({filePath:a,reason:"WRANING: Component <".concat(n,"> cant not find parent component: <").concat(e,">, ")+"Please check it"})}function checkAttrValInAllowedList(e,t,a,n,r){var o="number"===getAttrValType(t.value)?Number(t.value):t.value,n=("string"==typeof o&&(o=o.trim()),n.buildLog);a.includes(o)||n.push({filePath:r,loc:t.loc,reason:"WRANNING: Component <".concat(e,"> attribute '").concat(t.name,"' value '").concat(t.value,"' is not allowed,")+" Use below values \n ".concat(JSON.stringify(a.join(", ")))})}function checkElseIf(e,t,a,n){var r,o,l=!1;["has:else","has:elif"].includes(t.name)&&((o=e.parentNode.childNodes)&&1<o.length&&(r=o.indexOf(e),l=(o=o.slice(0,r)).length&&o.some(function(e){return e.attrs&&e.attrs.find(function(e){return"v-if"===e.name})})),l||(a.buildLog.push({filePath:n,loc:t.loc,trigger:ATTR_NAME,reason:"WRANNING: ".concat(t.name,"=").concat(t.value," used on element <").concat(e.tagName,"> ")+"without corresponding has:if."}),e.attrs.splice(e.attrs.indexOf(t),1)))}function checkAttrFor(e,t,a,n){var r,o,l=attrsNeedCombine[t.name];l&&(o=(r=e.attrs).indexOf(t),!r.find(function(e){return l.includes(e.name)}))&&(a.buildLog.push({filePath:n,loc:t.loc,trigger:ATTR_NAME,reason:"WRANNING: ".concat(t.name,"=").concat(t.value," used on element <").concat(e.tagName,"> ")+"without corresponding has:for."}),/^has:key$/.test(t.name))&&e.attrs.splice(o,1)}function checkAttrAllowed(e,t,a){return/^(v-|:)/.test(e.name)?(t.push({filePath:a,loc:e.loc,trigger:ATTR_NAME,reason:"WARNING: Unexpected attribute name: ".concat(e.name,", attribute can not start with 'v-' or ':'. ")}),!1):(["key"].includes(e.name)&&t.push({filePath:a,loc:e.loc,trigger:ATTR_NAME,reason:"WARNING: Unexpected JavaScript keyword as attribute name: '".concat(e.name,"', please change it.")}),!0)}function checkTagAttrs(a,n,r,o){var l,i,s=a.tagName,u=n.buildLog,e=a.attrs,m=tagAllowedAttrs[s],t=tagRequiredAttrs[s];m?(t.forEach(function(t){e.find(function(e){return e.name===t.name})||u.push({filePath:o,loc:a.loc,reason:"WRANNING: Component <".concat(s,"> missing required attribute '").concat(t.name,"'")})}),l=[],e.forEach(function(t){var e;checkAttrAllowed(t,u,o)&&l.push(t),!expUtils.isExpr(t.value)&&!utils.isEmptyStr(t.value)&&(/^data\-/.test(t.name)||(t.name=utils.camelCaseToHyphened(t.name)),e=m.find(function(e){return new RegExp("^".concat(e.name)).test(t.name)}))&&(e.enum?checkAttrValInAllowedList(s,t,e.enum,n,o):checkAttrValType(s,t,u,o),checkSourcePath(a,t,u,r,o)),checkElseIf(a,t,n,o),checkAttrFor(a,t,n,o)}),a.attrs=l):e&&0<e.length&&(i=[],e.forEach(function(e,t,a){checkAttrAllowed(e,u,o)&&i.push(e)}),a.attrs=i)}function checkNode(e,t,a){var n=findIncldeTagSrcChain(e,a);checkTagName(e,t,n),checkTagAttrs(e,t,a,n)}initData(tagComponentMap),module.exports={checkTagAttrs:checkTagAttrs,checkTagName:checkTagName,isParentTagExist:isParentTagExist,checkNode:checkNode,findIncldeTagSrcChain:findIncldeTagSrcChain,syncViewEventsMap:syncViewEventsMap};
@@ -1 +1 @@
1
- function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,a,c,s=[],i=!0,p=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;i=!1}else for(;!(i=(o=a.call(n)).done)&&(s.push(o.value),s.length!==t);i=!0);}catch(e){p=!0,r=e}finally{try{if(!i&&null!=n.return&&(c=n.return(),Object(c)!==c))return}finally{if(p)throw r}}return s}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _createForOfIteratorHelper(e,t){var n,o,r,a,c="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(c)return r=!(o=!0),{s:function(){c=c.call(e)},n:function(){var e=c.next();return o=e.done,e},e:function(e){r=!0,n=e},f:function(){try{o||null==c.return||c.return()}finally{if(r)throw n}}};if(Array.isArray(e)||(c=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return c&&(e=c),a=0,{s:t=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0===n)return("string"===t?String:Number)(e);n=n.call(e,t||"default");if("object"!=_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}var path=require("path"),_require=require("../../common/utils"),readJsonFile=_require.readJsonFile,getProjectInfo=_require.getProjectInfo,_require2=require("../../common/config"),configs=_require2.configs,_packOptions=require("./packoptions-utils"),utils=require("../common/utils"),fs=require("fs"),_require3=require("../../common/version-check"),isAscfHspSatisfied=_require3.isAscfHspSatisfied,log4js=require("../../common/log4js"),_require4=require("./json-validator"),checkFromSchema=_require4.checkFromSchema,logger=log4js.getLogger("manifest-handler"),APP="app",APP_TYPE="webapp";function handleUsingComponents(e,t){if(e){var n,o,r=getProjectInfo().ascfSrcPath;for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&(o=e[n].trim(),e[n]=utils.getProjectAbsPath(o,t,r))}}function checkTabBarPath(e){var t,r,a=getProjectInfo().ascfSrcPath,c=["iconPath","selectedIconPath","pagePath"],n=(null==(n=e.tabBar)?void 0:n.list)||[],e=e.subPackages||e.subpackages||[];0!==n.length&&0!==e.length&&(utils.hasDuplicatePath(n),t=e.map(function(e){return e.root}).filter(function(e){return e}),r=[],n.forEach(function(o){t.forEach(function(n){c.forEach(function(e){var t;path.join(a,null!=(t=o[e])?t:"").startsWith(path.join(a,n,"/"))&&r.push("ERROR: tabBar ".concat(o.text," ").concat(e," cannot be in the subpackage directory"))})})}),0<r.length)&&(r.forEach(function(e){logger.error(e)}),logger.error("ERROR: modify app.json tabBar and recompile it"))}function checkCommonPackage(e){e.subpackages&&0<(null==(e=e.subpackages.filter(function(e){return null==e?void 0:e.common}))?void 0:e.length)&&isAscfHspSatisfied(10008300)}function readAppJson(e){var t=_defineProperty({},APP,new Map),n=getProjectInfo(),n=path.join(n.ascfSrcPath,"app.json");if(!fs.existsSync(n))throw"ERROR: Can not resolve file : app.json";var o=readJsonFile(n),r=(checkFromSchema("app",o),o=configs.disableSubpackages?mergeSubPkgs(o):o,e&&(checkCommonPackage(o),checkTabBarPath(o)),handleAppType(o),handleUsingComponents(o.usingComponents,n),o.page={},o.independentList=[],[]);if(!o.pages||o.pages.length<=0)throw"ERROR: app.json doesn't contain any page.";if(hasCustomTabBar(o)){var a,n=path.resolve(getProjectInfo().ascfSrcPath,"custom-tab-bar","index.json"),n=readJsonFile(n),c=(configs.tabBarUsingComponents=n.usingComponents,_createForOfIteratorHelper(o.tabBar.list));try{for(c.s();!(a=c.n()).done;){var s=a.value;configs.tabBarList.push(s.pagePath)}}catch(e){c.e(e)}finally{c.f()}}n={packgaePath:"",subpackage:o.subpackages||o.subPackages||[]},putPageInfoToEntryList(o.pages,"",!1,o,t[APP],n,e),n=["subpackages","subPackages"].find(function(e){return Object.prototype.hasOwnProperty.call(o,e)});if(r.length){n&&delete o[n];var i,p=_createForOfIteratorHelper(o.subpackages=r);try{for(p.s();!(i=p.n()).done;){var l=i.value,u=new Map,f={packgaePath:l.root,subpackage:l};t[l.root]=u,putPageInfoToEntryList(l.pages,l.root,l.independent,o,u,f,e)}}catch(e){p.e(e)}finally{p.f()}}else if(n){r=o[n],delete o[n];var h,g=_createForOfIteratorHelper(o.subpackages=r);try{for(g.s();!(h=g.n()).done;){var m=h.value,y=new Map,d={packgaePath:m.root,subpackage:r};t[m.root]=y,putPageInfoToEntryList(m.pages,m.root,m.independent,o,y,d,e)}}catch(e){g.e(e)}finally{g.f()}}return handingCustomTabBar(o),{manifest:o,projectComponentsMap:t}}function handleAppType(e){var t;e.type=null!=(t=null!=(t=e.type)?t:e.appType)?t:APP_TYPE,delete e.appType}function hasCustomTabBar(e){return(e.tabBar||{}).custom&&fs.existsSync(path.resolve(getProjectInfo().ascfSrcPath,"custom-tab-bar/index.hxml"))}function handingCustomTabBar(e){if(hasCustomTabBar(e)){var t,n=_createForOfIteratorHelper(e.tabBar.list);try{for(n.s();!(t=n.n()).done;){var o=t.value;if(!e.page[o.pagePath])throw"ERROR: Can not resolve tabBar list item : "+"'".concat(o.pagePath,"', please check tabBar configuration.");e.page[o.pagePath].useCustomTabBar=!0}}catch(e){n.e(e)}finally{n.f()}}}function mergeSubPkgs(o){return(o.subpackages||o.subPackages||[]).forEach(function(n){var e;null!=(e=n.pages)&&e.forEach(function(e){var t;null!=(t=o.pages)&&t.push(path.join(n.root,e).replace(/\\/g,"/"))})}),o.subpackages=[],o.subPackages=[],o}function getGlobalComponentsInfo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},n=[];return Object.keys(t).forEach(function(e){n.push({key:e,path:t[e]})}),n}function putPageInfoToEntryList(e,t,n,o,r,a,c){if(e){var s,i,p,l,u=getProjectInfo(),f=generateIgnoreRule(u.projectCfg);for(s in e)Object.prototype.hasOwnProperty.call(e,s)&&(p=path.join(u.ascfSrcPath,t,e[s]),i=path.relative(u.ascfSrcPath,p),_packOptions.isIgnoreFile(i,f)||(i=i.replace(/\\/g,"/"),p="".concat(p,".json"),handleUsingComponents((l=readJsonFile(p)).usingComponents,p),n&&o.independentList.push(i),o.page[i]=l,t||getUsingComponents(o,"","",r,"page",a,c),getUsingComponents(l,p,i,r,"page",a,c)))}}function getUsingComponents(r,a,c,s,e,i,p){var l=7<arguments.length&&void 0!==arguments[7]?arguments[7]:[],u=8<arguments.length&&void 0!==arguments[8]&&arguments[8],f=getProjectInfo(),h=[],g=[],m=(getComponentPlaceholderList(g,null==r?void 0:r.componentPlaceholder),r.name);if(utils.adaptCustomTabBar(e,r,c),r.usingComponents)for(var y in r.usingComponents)(()=>{if(Object.prototype.hasOwnProperty.call(r.usingComponents,y)){var t=r.usingComponents[y],e=utils.getComponentAbsPath(t,a,f.ascfSrcPath,".json"),n=e.filePath,e=e.fixEntryPath,o=path.relative(f.ascfSrcPath,n).replace(/\\/g,"/").replace(/\.json/,"");if(r.usingComponents[y]=t=e||o,!m&&a===n)return m=y;if(p&&(e=unifyPath(i),errorJudge(y,r,n,g,e,t,c,i),u=checkPlaceholderExists(t,r),hasPlaceholder(y,g))&&configs.requiredComponents.push(t),l.find(function(e){return e===n}))return;h.some(function(e){return e.path===t})||h.push({path:t,key:y,jsonContent:r,compJsonPath:n,hasPlaceHolder:u});o=readJsonFile(n);handleUsingComponents(o.usingComponents,n),getUsingComponents(o,n,t,s,"component",i,p,l.concat([n]),u)}})();var t=""===a?{}:r;c&&!s.get(c)&&(t={jsonContent:t,componentList:h,type:e,componentName:m,compJsonPath:a,path:c,hasPlaceHolder:u,componentPlaceholderList:g},s.set(c,t))}function unifyPath(e){e=JSON.parse(JSON.stringify((null==e?void 0:e.subpackage)||[]));return e.map(function(e){return e.root+=e.root.endsWith("/")?"":"/",e}),e}function errorJudge(e,t,n,o,r,a,c,s){checkComponentPath(a)||logger.fatal('ERROR: "'.concat(e,'" is not found in the path: ').concat(path.join(getProjectInfo().ascfSrcPath,a),' (using by "').concat(c,'").')),isComponentInMainOrSubPackage(a,r,c,s)||hasPlaceholder(e,o)||logger.fatal('ERROR: "'.concat(e,'" is asyncComponent (using by "').concat(c,'"). Please add placeHolder')),checkPlaceholderNotAsync(e,o)||logger.fatal('ERROR: "'.concat(e,'" placeHolder can not be asyncComponent (using by "').concat(c,'").')),checkPlaceholder(e,o,t)||logger.warn('WARNING: "'.concat(e,'" placeHolder is wrong (using by "').concat(c,'").'))}function checkPlaceholder(t,e,n){var o;return!(null!=e&&e.length&&""!==(o=0<(o=e.filter(function(e){return e.key===t})).length?o[o.length-1].placeholder:"")&&(n=Object.prototype.hasOwnProperty.call(n.usingComponents,o),o=configs.componentList.includes(o),!n)&&!o&&(e.forEach(function(e){e.placeholder=t===e.key?"view":e.placeholder}),1))}function checkPlaceholderNotAsync(e,t){for(var n="",o=0;o<(null==t?void 0:t.length);o++)e===t[o].key&&(n=t[o].placeholder);for(var r=0;r<(null==t?void 0:t.length);r++)if(n===t[r].key)return!1;return!0}function hasPlaceholder(e,t){for(var n=0;n<(null==t?void 0:t.length);n++)if(t[n].key===e)return!0;return!1}function isComponentInMainOrSubPackage(e,t,n,o){for(var r=0;r<(null==t?void 0:t.length);r++){var a=t[r].root;if(n.startsWith(a)&&e.startsWith(a))return!0}return isComponentInSameSubpackageAsPage(o,e,t)}function isComponentInSameSubpackageAsPage(e,t,n){var o="",r="",a=!0,c=!0;return""!==e.packgaePath&&(a=!1,o=e.packgaePath+e.packgaePath.endsWith("/")?"":"/"),null!=n&&n.forEach(function(e){t.startsWith(e.root)&&(r=e.root,c=!1)}),!!c||!a&&o===r}function checkComponentPath(e){e=path.join(getProjectInfo().ascfSrcPath,e)+".json";return!!fs.existsSync(e)}function checkPlaceholderExists(e,t){var n,o=t.usingComponents,r=t.componentPlaceholder;for(n in o)if(Object.prototype.hasOwnProperty.call(o,n)&&o[n]===e&&r&&n in r)return!0;return!1}function getComponentPlaceholderList(e,t){if(t)for(var n=0,o=Object.entries(t);n<o.length;n++){var r=_slicedToArray(o[n],2),a=r[0];e.push({key:a,placeholder:r[1]})}}function generateIgnoreRule(e){var t;return(t=e?_packOptions.parseIgnoreRules(e):t)||{}}function generateEntry(e,n,t){var o=getProjectInfo(),r=e.projectComponentsMap,a=[],c=(Object.keys(r).reverse().forEach(function(e){a.push(r[e])}),n["app.js"]=path.resolve(o.ascfSrcPath,"app.json?package=app").replace(/\\/g,"/"),utils.mergeMap(a)),s=getAppCssExt();return s?n["app.css.js"]=path.resolve(o.ascfSrcPath,"app".concat(s)):delete n["app.css.js"],hasCustomTabBar(e.manifest)&&customTabBarHandle(o,n,e,c,r),c.forEach(function(e,t){n["".concat(t,".pack.js")]=e.compJsonPath.replace(/\.json$/,".hxml"),checkFromSchema(e.path,e.jsonContent)}),utils.defUnfreezeProperty(e,"components",c),generateWidgetsEntry(n,e),n}function getAppCssExt(){for(var e=getProjectInfo(),t=0,n=[".scss",".sass",".less",".css"];t<n.length;t++){var o=n[t],r=path.resolve(e.ascfSrcPath,"".concat("app").concat(o));if(fs.existsSync(r))return o}}function customTabBarHandle(e,t,n,o,r){var a,e=path.resolve(e.ascfSrcPath,"custom-tab-bar/index.hxml"),c=e.replace(/\.hxml$/,".json"),s=(t["custom-tab-bar/index.pack.js"]="".concat(e,"?type=component"),_createForOfIteratorHelper(n.manifest.tabBar.list));try{for(s.s();!(a=s.n()).done;){var i=a.value;o.get(i.pagePath)&&o.get(i.pagePath).componentList.push({path:"custom-tab-bar/index",key:"customTabBar",compJsonPath:c})}}catch(e){s.e(e)}finally{s.f()}r.app.set("custom-tab-bar/index",{componentList:[],type:"component",compJsonPath:c})}function generateWidgetsEntry(o,t){var r,n,a=getProjectInfo(),e=t.manifest;t.manifest&&e.router&&((r=e.router.pages)&&Object.keys(r).forEach(function(e){var t=r[e],n=t.component,t=(t||logger.warn("WARNING:Route information in the manifest.json file is incomplete:\n Page '".concat(e,"' does not have the component attribute configured. ")+"By default, '".concat(n,"' is used.")),path.join(a.ascfSrcPath,e,n)),e="".concat(path.join(e,n),".js");if(fs.existsSync("".concat(t,".ux")))o[e]="".concat(t,".ux");else if(!fs.existsSync("".concat(t,".hxml")))throw"ERROR: Failed to find the file: ".concat(t,".ux")}),e=e.widgets)&&0<e.length&&(t.widgetPathsList=[],n="",e.forEach(function(e){n=e.path,t.widgetPathsList.push(path.join(a.ascfSrcPath,n))}))}function generateRouteMapping(e){var t=getProjectInfo(),n=e.manifest.routeMapping||{},t=path.join(t.ascfSrcPath,"route-mapping.json");if(fs.existsSync(t)){var o=JSON.parse(fs.readFileSync(t).toString());if(o)for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(n[r]=o[r])}0<Object.keys(n).length&&(e.manifest.routeMapping=n)}module.exports={readAppJson:readAppJson,generateEntry:generateEntry,generateRouteMapping:generateRouteMapping,getGlobalComponentsInfo:getGlobalComponentsInfo,mergeSubPkgs:mergeSubPkgs};
1
+ function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _createForOfIteratorHelper(e,t){var n,r,o,a,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(r=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return r=e.done,e},e:function(e){o=!0,n=e},f:function(){try{r||null==s.return||s.return()}finally{if(o)throw n}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return s&&(e=s),a=0,{s:t=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,s,c=[],i=!0,p=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;i=!1}else for(;!(i=(r=a.call(n)).done)&&(c.push(r.value),c.length!==t);i=!0);}catch(e){p=!0,o=e}finally{try{if(!i&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(p)throw o}}return c}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0===n)return("string"===t?String:Number)(e);n=n.call(e,t||"default");if("object"!=_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}var path=require("path"),_require=require("../../common/utils"),readJsonFile=_require.readJsonFile,getProjectInfo=_require.getProjectInfo,_require2=require("../../common/config"),configs=_require2.configs,_packOptions=require("./packoptions-utils"),utils=require("../common/utils"),fs=require("fs"),_require3=require("../../common/version-check"),isAscfHspSatisfied=_require3.isAscfHspSatisfied,log4js=require("../../common/log4js"),_require4=require("./json-validator"),checkFromSchema=_require4.checkFromSchema,logger=log4js.getLogger("manifest-handler"),APP="app",APP_TYPE="ascf";function handleUsingComponents(){var e,t,n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},r=1<arguments.length?arguments[1]:void 0,o=getProjectInfo().ascfSrcPath;for(e in n)Object.prototype.hasOwnProperty.call(n,e)&&(t=n[e].trim(),n[e]=utils.getProjectAbsPath(t,r,o))}function checkTabBarPath(e){var t,o,a=getProjectInfo().ascfSrcPath,s=["iconPath","selectedIconPath","pagePath"],n=(null==(n=e.tabBar)?void 0:n.list)||[],e=e.subPackages||e.subpackages||[];0!==n.length&&0!==e.length&&(utils.hasDuplicatePath(n),t=e.map(function(e){return e.root}).filter(function(e){return e}),o=[],n.forEach(function(r){t.forEach(function(n){s.forEach(function(e){var t;path.join(a,null!=(t=r[e])?t:"").startsWith(path.join(a,n,"/"))&&o.push("ERROR: tabBar ".concat(r.text," ").concat(e," cannot be in the subpackage directory"))})})}),errorListConsole(o))}function errorListConsole(e){0<e.length&&(e.forEach(function(e){logger.error(e)}),logger.error("ERROR: modify app.json tabBar and recompile it"))}function checkCommonPackage(e){e.subpackages&&0<(null==(e=e.subpackages.filter(function(e){return null==e?void 0:e.common}))?void 0:e.length)&&isAscfHspSatisfied(10008300)}function readAppJson(e){var t=_defineProperty({},APP,new Map),n=getProjectInfo(),n=path.join(n.ascfSrcPath,"app.json");if(!fs.existsSync(n))throw"ERROR: Can not resolve file : app.json";var r=readJsonFile(n),o=(checkFromSchema("app",r),r=configs.disableSubpackages?mergeSubPkgs(r):r,e&&(checkCommonPackage(r),checkTabBarPath(r)),handleAppType(r),handleUsingComponents(r.usingComponents,n),r.page={},r.independentList=[],[]);if(!r.pages||r.pages.length<=0)throw"ERROR: app.json doesn't contain any page.";addTarbarListToConfig(r);var a,s,n={packgaePath:"",subpackage:r.subpackages||r.subPackages||[]},c=(!0===r.splitMainPage?(s=r.tabBar?r.tabBar.list.map(function(e){return e.pagePath}):[],c=r.entryPagePath||r.pages[0],putPageInfoToEntryList(a=_toConsumableArray(new Set([c].concat(_toConsumableArray(s)))),"",!1,r,t[APP],n,e),c=r.pages.filter(function(e){return!a.includes(e)}),t.otherPages=new Map,putPageInfoToEntryList(c,"",!1,r,t.otherPages,n,e),s=new Map(_toConsumableArray(t.otherPages).filter(function(e){e=_slicedToArray(e,1)[0];return!t[APP].has(e)})),t.otherPages=s):putPageInfoToEntryList(r.pages,"",!1,r,t[APP],n,e),["subpackages","subPackages"].find(function(e){return Object.prototype.hasOwnProperty.call(r,e)}));if(o.length){c&&delete r[c];var i,p=_createForOfIteratorHelper(r.subpackages=o);try{for(p.s();!(i=p.n()).done;){var l=i.value,u=new Map,f={packgaePath:l.root,subpackage:l};t[l.root]=u,putPageInfoToEntryList(l.pages,l.root,l.independent,r,u,f,e)}}catch(e){p.e(e)}finally{p.f()}}else if(c){o=r[c],delete r[c];var h,g=_createForOfIteratorHelper(r.subpackages=o);try{for(g.s();!(h=g.n()).done;){var m=h.value,y=new Map,d={packgaePath:m.root,subpackage:o};t[m.root]=y,putPageInfoToEntryList(m.pages,m.root,m.independent,r,y,d,e)}}catch(e){g.e(e)}finally{g.f()}}return handingCustomTabBar(r),{manifest:r,projectComponentsMap:t}}function addTarbarListToConfig(e){if(hasCustomTabBar(e)){var t,n=path.resolve(getProjectInfo().ascfSrcPath,"custom-tab-bar","index.json"),n=readJsonFile(n),r=(configs.tabBarUsingComponents=n.usingComponents,_createForOfIteratorHelper(e.tabBar.list));try{for(r.s();!(t=r.n()).done;){var o=t.value;configs.tabBarList.push(o.pagePath)}}catch(e){r.e(e)}finally{r.f()}}}function handleAppType(e){var t;e.type=null!=(t=null!=(t=e.type)?t:e.appType)?t:APP_TYPE,delete e.appType}function hasCustomTabBar(e){return(e.tabBar||{}).custom&&fs.existsSync(path.resolve(getProjectInfo().ascfSrcPath,"custom-tab-bar/index.hxml"))}function handingCustomTabBar(e){if(hasCustomTabBar(e)){var t,n=_createForOfIteratorHelper(e.tabBar.list);try{for(n.s();!(t=n.n()).done;){var r=t.value;if(!e.page[r.pagePath])throw"ERROR: Can not resolve tabBar list item : "+"'".concat(r.pagePath,"', please check tabBar configuration.");e.page[r.pagePath].useCustomTabBar=!0}}catch(e){n.e(e)}finally{n.f()}}}function mergeSubPkgs(r){return(r.subpackages||r.subPackages||[]).forEach(function(n){var e;null!=(e=n.pages)&&e.forEach(function(e){var t;null!=(t=r.pages)&&t.push(path.join(n.root,e).replace(/\\/g,"/"))})}),r.subpackages=[],r.subPackages=[],r}function getGlobalComponentsInfo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},n=[];return Object.keys(t).forEach(function(e){n.push({key:e,path:t[e]})}),n}function putPageInfoToEntryList(e,t,n,r,o,a,s){if(e){var c,i,p,l,u=getProjectInfo(),f=generateIgnoreRule(u.projectCfg);for(c in e)Object.prototype.hasOwnProperty.call(e,c)&&(p=path.join(u.ascfSrcPath,t,e[c]),i=path.relative(u.ascfSrcPath,p),_packOptions.isIgnoreFile(i,f)||(i=i.replace(/\\/g,"/"),p="".concat(p,".json"),handleUsingComponents((l=readJsonFile(p)).usingComponents,p),n&&r.independentList.push(i),r.page[i]=l,t||getUsingComponents(r,"","",o,"page",a,s),getUsingComponents(l,p,i,o,"page",a,s)))}}function getUsingComponents(o,a,s,c,e,i,p){var l=7<arguments.length&&void 0!==arguments[7]?arguments[7]:[],u=8<arguments.length&&void 0!==arguments[8]&&arguments[8],f=getProjectInfo(),h=[],g=[],m=(getComponentPlaceholderList(g,null==o?void 0:o.componentPlaceholder),o.name);if(utils.adaptCustomTabBar(e,o,s),o.usingComponents)for(var y in o.usingComponents)(()=>{if(Object.prototype.hasOwnProperty.call(o.usingComponents,y)){var t=o.usingComponents[y],e=utils.getComponentAbsPath(t,a,f.ascfSrcPath,".json"),n=e.filePath,e=e.fixEntryPath,r=path.relative(f.ascfSrcPath,n).replace(/\\/g,"/").replace(/\.json/,"");if(o.usingComponents[y]=t=e||r,!m&&a===n)return m=y;if(p&&(e=unifyPath(i),errorJudge(y,o,n,g,e,t,s,i),u=checkPlaceholderExists(t,o),hasPlaceholder(y,g))&&configs.requiredComponents.push(t),l.find(function(e){return e===n}))return;h.some(function(e){return e.path===t})||h.push({path:t,key:y,jsonContent:o,compJsonPath:n,hasPlaceHolder:u});r=readJsonFile(n);handleUsingComponents(r.usingComponents,n),getUsingComponents(r,n,t,c,"component",i,p,l.concat([n]),u)}})();var t=""===a?{}:o;s&&!c.get(s)&&(t={jsonContent:t,componentList:h,type:e,componentName:m,compJsonPath:a,path:s,hasPlaceHolder:u,componentPlaceholderList:g},c.set(s,t))}function unifyPath(e){e=JSON.parse(JSON.stringify((null==e?void 0:e.subpackage)||[]));return e.map(function(e){return e.root+=e.root.endsWith("/")?"":"/",e}),e}function errorJudge(e,t,n,r,o,a,s,c){checkComponentPath(a)||logger.fatal('ERROR: "'.concat(e,'" is not found in the path: ').concat(path.join(getProjectInfo().ascfSrcPath,a),' (using by "').concat(s,'").')),isComponentInMainOrSubPackage(a,o,s,c)||hasPlaceholder(e,r)||logger.fatal('ERROR: "'.concat(e,'" is asyncComponent (using by "').concat(s,'"). Please add placeHolder')),checkPlaceholderNotAsync(e,r)||logger.fatal('ERROR: "'.concat(e,'" placeHolder can not be asyncComponent (using by "').concat(s,'").')),checkPlaceholder(e,r,t)||logger.warn('WARNING: "'.concat(e,'" placeHolder is wrong (using by "').concat(s,'").'))}function checkPlaceholder(t,e,n){var r;return!(null!=e&&e.length&&""!==(r=0<(r=e.filter(function(e){return e.key===t})).length?r[r.length-1].placeholder:"")&&(n=Object.prototype.hasOwnProperty.call(n.usingComponents,r),r=configs.componentList.includes(r),!n)&&!r&&(e.forEach(function(e){e.placeholder=t===e.key?"view":e.placeholder}),1))}function checkPlaceholderNotAsync(e,t){for(var n="",r=0;r<(null==t?void 0:t.length);r++)e===t[r].key&&(n=t[r].placeholder);for(var o=0;o<(null==t?void 0:t.length);o++)if(n===t[o].key)return!1;return!0}function hasPlaceholder(e,t){for(var n=0;n<(null==t?void 0:t.length);n++)if(t[n].key===e)return!0;return!1}function isComponentInMainOrSubPackage(e,t,n,r){for(var o=0;o<(null==t?void 0:t.length);o++){var a=t[o].root;if(n.startsWith(a)&&e.startsWith(a))return!0}return isComponentInSameSubpackageAsPage(r,e,t)}function isComponentInSameSubpackageAsPage(e,t,n){var r="",o="",a=!0,s=!0;return""!==e.packgaePath&&(a=!1,r=e.packgaePath+e.packgaePath.endsWith("/")?"":"/"),null!=n&&n.forEach(function(e){t.startsWith(e.root)&&(o=e.root,s=!1)}),!!s||!a&&r===o}function checkComponentPath(e){e=path.join(getProjectInfo().ascfSrcPath,e)+".json";return!!fs.existsSync(e)}function checkPlaceholderExists(e,t){var n,r=t.usingComponents,o=t.componentPlaceholder;for(n in r)if(Object.prototype.hasOwnProperty.call(r,n)&&r[n]===e&&o&&n in o)return!0;return!1}function getComponentPlaceholderList(e,t){if(t)for(var n=0,r=Object.entries(t);n<r.length;n++){var o=_slicedToArray(r[n],2),a=o[0];e.push({key:a,placeholder:o[1]})}}function generateIgnoreRule(e){var t;return(t=e?_packOptions.parseIgnoreRules(e):t)||{}}function generateEntry(e,n,t){var r=getProjectInfo(),o=e.projectComponentsMap,a=[],s=(Object.keys(o).reverse().forEach(function(e){a.push(o[e])}),n["app.js"]=path.resolve(r.ascfSrcPath,"app.json?package=app").replace(/\\/g,"/"),utils.mergeMap(a)),c=getAppCssExt();return c?n["app.css.js"]=path.resolve(r.ascfSrcPath,"app".concat(c)):delete n["app.css.js"],hasCustomTabBar(e.manifest)&&customTabBarHandle(r,n,e,s,o),s.forEach(function(e,t){n["".concat(t,".pack.js")]=e.compJsonPath.replace(/\.json$/,".hxml"),checkFromSchema(e.path,e.jsonContent)}),utils.defUnfreezeProperty(e,"components",s),generateWidgetsEntry(n,e),n}function getAppCssExt(){for(var e=getProjectInfo(),t=0,n=[".scss",".sass",".less",".css"];t<n.length;t++){var r=n[t],o=path.resolve(e.ascfSrcPath,"".concat("app").concat(r));if(fs.existsSync(o))return r}}function customTabBarHandle(e,t,n,r,o){var a,e=path.resolve(e.ascfSrcPath,"custom-tab-bar/index.hxml"),s=e.replace(/\.hxml$/,".json"),c=(t["custom-tab-bar/index.pack.js"]="".concat(e,"?type=component"),_createForOfIteratorHelper(n.manifest.tabBar.list));try{for(c.s();!(a=c.n()).done;){var i=a.value;r.get(i.pagePath)&&r.get(i.pagePath).componentList.push({path:"custom-tab-bar/index",key:"customTabBar",compJsonPath:s})}}catch(e){c.e(e)}finally{c.f()}o.app.set("custom-tab-bar/index",{componentList:[],type:"component",compJsonPath:s})}function generateWidgetsEntry(r,t){var o,n,a=getProjectInfo(),e=t.manifest;t.manifest&&e.router&&((o=e.router.pages)&&Object.keys(o).forEach(function(e){var t=o[e],n=t.component,t=(t||logger.warn("WARNING:Route information in the manifest.json file is incomplete:\n Page '".concat(e,"' does not have the component attribute configured. ")+"By default, '".concat(n,"' is used.")),path.join(a.ascfSrcPath,e,n)),e="".concat(path.join(e,n),".js");if(fs.existsSync("".concat(t,".ux")))r[e]="".concat(t,".ux");else if(!fs.existsSync("".concat(t,".hxml")))throw"ERROR: Failed to find the file: ".concat(t,".ux")}),e=e.widgets)&&0<e.length&&(t.widgetPathsList=[],n="",e.forEach(function(e){n=e.path,t.widgetPathsList.push(path.join(a.ascfSrcPath,n))}))}function generateRouteMapping(e){var t=getProjectInfo(),n=e.manifest.routeMapping||{},t=path.join(t.ascfSrcPath,"route-mapping.json");if(fs.existsSync(t)){var r=JSON.parse(fs.readFileSync(t).toString());if(r)for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(n[o]=r[o])}0<Object.keys(n).length&&(e.manifest.routeMapping=n)}module.exports={readAppJson:readAppJson,generateEntry:generateEntry,generateRouteMapping:generateRouteMapping,getGlobalComponentsInfo:getGlobalComponentsInfo,mergeSubPkgs:mergeSubPkgs,getAppCssExt:getAppCssExt};
@@ -1 +1 @@
1
- function _createForOfIteratorHelper(e,r){var t,n,o,a,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(n=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return n=e.done,e},e:function(e){o=!0,t=e},f:function(){try{n||null==s.return||s.return()}finally{if(o)throw t}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length)return s&&(e=s),a=0,{s:r=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,r){var t;if(e)return"string"==typeof e?_arrayLikeToArray(e,r):"Map"===(t="Object"===(t={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,r):void 0}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}var path=require("path"),css=require("postcss"),loaderUtils=require("./loader-utils"),utils=require("./common/utils"),nodeNameUtils=require("./template/node-name-utils");function getBuildInfo(e,r){e.get("scoped")&&e.get("scopeId")&&(r.scoped=!0,r.scopeId=e.get("scopeId"))}function transQType(e,r,t){return e&&(e.get("type")&&(r=e.get("type")),getBuildInfo(e,t)),r}function hcssLoader(e){var r=[],t=initBuildInfo(),n=path.relative(this.rootContext,this.resourcePath).replace(/.(css|sass|scss|styl|less|stylus)$/,"").replace(/\\/g,"/"),o="app"===n?"app":"page",e=("?"===this.resourceQuery[0]&&(o=transQType(loaderUtils.parseQuery(this.resourceQuery),o,t)),e.replace(/\/\*[\s\S]*?\*\//g,""));try{var a=getSegs(getCssAst(this,e,r,t)),s="app"===o?"\n\tvar segs = module.exports.segs\n\tvar sourcemap = module.exports.sourcemap\n\tvar info = module.exports.info\n\tinjectStyle(segs, sourcemap, info)":"";return 0<r.length&&utils.logWarn(this,r),"module.exports = {\n segs:".concat(JSON.stringify(a),',\n info:{path:"').concat(n,'", type:"').concat(o,'"}\n }').concat(s)}catch(e){r.push({reason:"ERROR: Cannot parse css : ".concat(this.resourcePath,"\n ").concat(e)}),utils.logWarn(this,r)}return""}function initBuildInfo(){var e={scoped:!1};return e}function getCssAst(e,r,t,n){var o;try{o=css.parse(r,{from:e.resourcePath})}catch(e){t.push({line:e.line,column:e.column,reason:e.toString()})}return o&&traverseSelectors(o.nodes,n),o}function traverseSelectors(e,r){if(e){var t,n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){var o=t.value;"rule"===o.type?transSelectorName(o,r):"atrule"===o.type&&"media"===o.name&&traverseSelectors(o.nodes,r)}}catch(e){n.e(e)}finally{n.f()}}}function transSelectorName(e,r){var t=e.selector.replace("/\n/g","").split(",");if(t){for(var n,o=0,a=t.length;o<a;o++)t[o]=nodeNameUtils.transformSelectorName(t[o]),r.scoped&&(0<(n=t[o].indexOf(":"))?t[o]=t[o].replace(":","[".concat(r.scopeId,"]:")):n<0&&(t[o]="".concat(t[o],"[").concat(r.scopeId,"]")));e.selector=t.join(",")}}function getSegs(e){var r=[];e&&(e.nodes=checkRules(e.nodes));var t,n=_createForOfIteratorHelper(null!=(e=(l=null!=(e=null==e?void 0:e.toString())?e:"").match(/\$ascf[+\-]?[0-9.]+(?=rpx)/g))?e:[]);try{for(n.s();!(t=n.n()).done;){var o=t.value,a=l.indexOf("".concat(o,"rpx")),s=parseFloat(o.substring(5)),c=l.substring(0,a),l=l.substring(a+o.length+3);r.push(c),r.push([2,s])}}catch(e){n.e(e)}finally{n.f()}return r.push(l),r}function checkDeclarations(e){var r,t=_createForOfIteratorHelper(e);try{for(t.s();!(r=t.n()).done;){var n=r.value;n.value&&(n.value=n.value.replace(/([+\-]?[0-9.]+)(?=rpx)/g,"$ascf$1"))}}catch(e){t.e(e)}finally{t.f()}return e}function checkRules(e){var r,t=_createForOfIteratorHelper(e);try{for(t.s();!(r=t.n()).done;){var n,o=r.value;"rule"===o.type?(n=o.nodes)&&0<n.length&&(o.nodes=checkDeclarations(n)):"atrule"!==o.type||"media"!==o.name&&"keyframes"!==o.name||(o.nodes=checkRules(o.nodes))}}catch(e){t.e(e)}finally{t.f()}return e}module.exports=hcssLoader;
1
+ function _createForOfIteratorHelper(e,r){var t,n,o,a,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(n=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return n=e.done,e},e:function(e){o=!0,t=e},f:function(){try{n||null==s.return||s.return()}finally{if(o)throw t}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length)return s&&(e=s),a=0,{s:r=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,r){var t;if(e)return"string"==typeof e?_arrayLikeToArray(e,r):"Map"===(t="Object"===(t={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,r):void 0}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}var path=require("path"),css=require("postcss"),loaderUtils=require("./loader-utils"),utils=require("./common/utils"),nodeNameUtils=require("./template/node-name-utils"),AT_RULES=["media","keyframes","supports"];function getBuildInfo(e,r){e.get("scoped")&&e.get("scopeId")&&(r.scoped=!0,r.scopeId=e.get("scopeId"))}function transQType(e,r,t){return e&&(e.get("type")&&(r=e.get("type")),getBuildInfo(e,t)),r}function hcssLoader(e){var r=[],t=initBuildInfo(),n=path.relative(this.rootContext,this.resourcePath).replace(/.(css|sass|scss|styl|less|stylus)$/,"").replace(/\\/g,"/"),o="app"===n?"app":"page",e=("?"===this.resourceQuery[0]&&(o=transQType(loaderUtils.parseQuery(this.resourceQuery),o,t)),e.replace(/\/\*[\s\S]*?\*\//g,""));try{var a=getSegs(getCssAst(this,e,r,t)),s="app"===o?"\n\tvar segs = module.exports.segs\n\tvar sourcemap = module.exports.sourcemap\n\tvar info = module.exports.info\n\tinjectStyle(segs, sourcemap, info)":"";return 0<r.length&&utils.logWarn(this,r),"module.exports = {\n segs:".concat(JSON.stringify(a),',\n info:{path:"').concat(n,'", type:"').concat(o,'"}\n }').concat(s)}catch(e){r.push({reason:"ERROR: Cannot parse css : ".concat(this.resourcePath,"\n ").concat(e)}),utils.logWarn(this,r)}return""}function initBuildInfo(){var e={scoped:!1};return e}function getCssAst(e,r,t,n){var o;try{o=css.parse(r,{from:e.resourcePath})}catch(e){t.push({line:e.line,column:e.column,reason:e.toString()})}return o&&traverseSelectors(o.nodes,n),o}function traverseSelectors(e,r){if(e){var t,n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){var o=t.value;"rule"===o.type?transSelectorName(o,r):"atrule"===o.type&&"media"===o.name&&traverseSelectors(o.nodes,r)}}catch(e){n.e(e)}finally{n.f()}}}function transSelectorName(e,r){var t=e.selector.replace("/\n/g","").split(",");if(t){for(var n,o=0,a=t.length;o<a;o++)t[o]=nodeNameUtils.transformSelectorName(t[o]),r.scoped&&(0<(n=t[o].indexOf(":"))?t[o]=t[o].replace(":","[".concat(r.scopeId,"]:")):n<0&&(t[o]="".concat(t[o],"[").concat(r.scopeId,"]")));e.selector=t.join(",")}}function getSegs(e){var r=[];e&&(e.nodes=checkRules(e.nodes));var t,n=_createForOfIteratorHelper(null!=(e=(l=null!=(e=null==e?void 0:e.toString())?e:"").match(/\$ascf[+\-]?[0-9.]+(?=rpx)/g))?e:[]);try{for(n.s();!(t=n.n()).done;){var o=t.value,a=l.indexOf("".concat(o,"rpx")),s=parseFloat(o.substring(5)),c=l.substring(0,a),l=l.substring(a+o.length+3);r.push(c),r.push([2,s])}}catch(e){n.e(e)}finally{n.f()}return r.push(l),r}function checkDeclarations(e){var r,t=_createForOfIteratorHelper(e);try{for(t.s();!(r=t.n()).done;){var n=r.value;n.value&&(n.value=n.value.replace(/([+\-]?[0-9.]+)(?=rpx)/g,"$ascf$1"))}}catch(e){t.e(e)}finally{t.f()}return e}function checkRules(e){var r,t=_createForOfIteratorHelper(e);try{for(t.s();!(r=t.n()).done;){var n,o=r.value;"rule"===o.type?(n=o.nodes)&&0<n.length&&(o.nodes=checkDeclarations(n)):"atrule"===o.type&&AT_RULES.includes(o.name)&&(o.nodes=checkRules(o.nodes))}}catch(e){t.e(e)}finally{t.f()}return e}module.exports=hcssLoader;
@@ -1 +1 @@
1
- var _excluded=["componentName"];function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _objectWithoutProperties(e,t){if(null==e)return{};var n,a=_objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),r=0;r<o.length;r++)n=o[r],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};var n,a={};for(n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;a[n]=e[n]}return a}function _createForOfIteratorHelper(e,t){var n,a,o,r,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(a=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return a=e.done,e},e:function(e){o=!0,n=e},f:function(){try{a||null==s.return||s.return()}finally{if(o)throw n}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return s&&(e=s),r=0,{s:t=function(){},n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var path=require("path"),fs=require("fs"),loaderUtils=require("./loader-utils"),nodeNameUtils=require("./template/node-name-utils"),attrUtils=require("./template/attr-utils"),utils=require("./common/utils"),expUtils=require("./common/exp-utils"),Parse5=require("../ascf-converter/compiler-utils/parse5.bundle"),hjsLoader=require("./hjs-loader"),validator=require("./common/hxml-validator"),_require=require("./common/hash-sum"),hashSum=_require.hashSum,_fixComponent=require("./common/fixComponentName"),_require2=require("./template/implicit-model-config"),IMPLICIT_MODEL_ATTRS=_require2.IMPLICIT_MODEL_ATTRS,_require3=require("../common/config"),configs=_require3.configs,log4js=require("../common/log4js.js"),logger=log4js.getLogger("hxml-loader"),_require4=require("../common/utils"),getProjectInfo=_require4.getProjectInfo,_require5=require("../ascf-compiler/common/manifest-manager"),manifestManager=_require5.manifestManager,_require6=require("./template-compiler"),compile=_require6.compile,moduleNameReg=/^((?!_)(?!\$)).*/,functionalPlaceHolder="$style=_vm.parent.$style, $class=_vm.parent.$class, eventHappen = _vm.parent.eventHappen,_t = _t.bind(_vm.parent);",isTemplateOrImport=function(e){return["template","import"].includes(e)},isPageOrComponent=function(e){return["page","component"].includes(e)},resolve=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return path.resolve.apply(path,[__dirname].concat(t))},filterTextNodes=function(e){return e.filter(function(e){return!["#text","#comment"].includes(e.nodeName)})},dependencies=new Map;function addDependency(n,e){e.forEach(function(e,t){return n.addDependency(t)})}function getComponentsObj(a,e,t){var n=e.name,o=e.rootPath,e=(a.usingComponents="",a.hjsComponentList="",a.pageTemplateList="",a.hxmlTemplatestr="",a.lazyLoadComponents="",a.boundKeys=[],a.componentList),r=a.declareTemplates,s=a.usingTemplates,c=a.template.needRequiredHjs,i=[],l=[],e=(e.forEach(function(e){("hjs"===e.type?i:l).push(e)}),c=c.filter(function(t){return!i.find(function(e){return e.name===t.name})}),i.forEach(function(e){return concatTemplateRequiredHjs(t,e,a,o)}),c.forEach(function(e){return concatTemplateRequiredHjs(t,e,a,o)}),r.forEach(function(t){l.find(function(e){return e.name===t.name})||l.push(t)}),s.find(function(e){return utils.isExp(e.name)})),s=l.filter(e?function(e){return e.name!==n}:function(t){return s.find(function(e){return e.name===t.name})});manifestManager.getIsOpenLazyCodeLoad()?s.forEach(function(e){var t=e.name,n=path.join(o,e.path).replace(/\\/g,"/");a.lazyLoadComponents+='\n"'.concat(t,"\": require('").concat(n,"?type=").concat(e.type,"&name=").concat(e.name,"'),")}):s.forEach(function(e){var t=e.name,n=path.join(o,e.path).replace(/\\/g,"/");a.usingComponents+='\n"'.concat(t,"\": require('").concat(n,"?type=").concat(e.type,"&name=").concat(e.name,"'),")}),configs.templateHoist&&generateTemplateInfo(l,o,a)}function generateTemplateInfo(e,a,o){var t;0<(null==e?void 0:e.length)&&(t=e[0].path,t=path.join(a,t).replace(/\\/g,"/"),o.pageTemplateList+="\nrequire('".concat(t,"?type=templateComponents'),")),null!=e&&e.forEach(function(e){var t=e.name,n=path.join(a,e.path).replace(/\\/g,"/");o.hxmlTemplatestr+='\n"'.concat(t,"\": require('").concat(n,"?type=").concat(e.type,"&name=").concat(e.name,"'),")})}function concatTemplateRequiredHjs(e,t,n,a){t.path?(a=path.join(a,t.path).replace(/\\/g,"/"),n.hjsComponentList+="\nvar ".concat(t.name," = require('").concat(a,"');\n")):(a=hjsLoader.hjsLoaderForInnerHjs.call(e,t.value),n.hjsComponentList+="var ".concat(t.name," = (").concat(a,")(require, module, module.exports);\n")),n.boundKeys.push(t.name)}function initParameter(e){var t,n=e.rootContext,a=e.resourcePath,e=e.resourceQuery,o=path.relative(n,a).replace(/.hxml$/,"").replace(/\\/g,"/"),r=manifestManager.getManifestData(),s=r.components,s=s.get(o)?s.get(o):{},c=s.type,c=void 0===c?"":c,i=s.componentName,s=s.componentList,s=void 0===s?[]:s,e=("?"===e[0]&&(e=loaderUtils.parseQuery(e))&&(c=e.get("type"),t=e.get("name")),Object.keys(r.manifest.usingComponents||[]).concat(s.map(function(e){return e.key})));return{rootPath:n,resourcePath:a,basePath:o,type:c,name:t,customComponentNameList:e,useCustomTabBar:(r.manifest.page[o]||{}).useCustomTabBar,componentName:i}}function initBuildInfo(e,t){var n=(0,require("../common/utils").getProjectInfo)(),a={componentList:[],buildLog:[],usingTemplates:[],declareTemplates:[],template:{ast:null,type:null,name:null,propsList:{},forPropsList:[],componentList:[],needRequiredHjs:[],hasDynamicName:!1}};return a.addCatchStatement=!(!1===((n.projectCfgData||{}).setting||{}).tryCatch),a.queryType=t.type,a}function filterCompPropsList(n,e){var a,t;if(isTemplateOrImport(e.type))return t=(e=n.template).propsList,a=e.componentList,(t=Object.keys(t)).forEach(function(t){var e=a.find(function(e){return e.name===t});e&&n.template.needRequiredHjs.push(e)}),e=a.map(function(e){return e.name}),utils.uniqueSymmetricDifference(t,e)}function getPlaceholderList(e){var t,n="",a=_createForOfIteratorHelper(e);try{for(a.s();!(t=a.n()).done;){var o=t.value,r="q-".concat(_fixComponent(o.key)),s="".concat(o.placeholder),c=(configs.componentList.includes(o.placeholder)||(s="".concat(_fixComponent(o.placeholder))),"q-".concat(s));n+='\n"'.concat(r,'": "').concat(c,'",')}}catch(e){a.e(e)}finally{a.f()}return n}function traverseComponentList(e,t,n,a,o,r){if(isPageOrComponent(t)&&e){var s=e.componentList;"page"===t&&(s=s.filter(function(t){return!n.some(function(e){return e.path===t.path})}));a.placeholderComponents=getPlaceholderList(e.componentPlaceholderList);var c,i=getProjectInfo().ascfSrcPath,l=_createForOfIteratorHelper(s);try{for(l.s();!(c=l.n()).done;){var p,u,m,d=c.value,f="q-".concat(_fixComponent(d.key));d.hasPlaceHolder?(p=d.compJsonPath,u=path.relative(i,p).replace(/\.json$/g,"").split("\\").join("/"),a.asyncComponents+='\n"'.concat(f,'": "').concat(u,'",')):"customTabBar"!==d.key&&(m=r?'"'.concat(d.path,'"'):"__pageComponentInfos['".concat(d.path,"']"),o.usingComponents+='\n"'.concat(f,'": ').concat(m,","))}}catch(e){l.e(e)}finally{l.f()}}}function hxmlLoader(e){var t=this,n=(this.cacheable&&this.cacheable(),initParameter(this)),a=n.componentName,o=_objectWithoutProperties(n,_excluded),n=transformToVue(e,o,a),e=n.content,n=n.buildInfo,r=filterCompPropsList(n,o),e=getRenderFunc(e,n),s=e.isV3,c=e.render,e=e.staticRenderFns,i=(getComponentsObj(n,o,this),utils.logWarn(this,n.buildLog),o.type),l=o.basePath,p=o.useCustomTabBar,u=([".css",".json",".js"].forEach(function(e){e=o.resourcePath.replace(/\.hxml$/g,e);fs.existsSync(e)&&t.addDependency(e)}),[]);if(configs.templateHoist&&"templateComponents"===o.type)addDependency(this,dependencies),u.push("\n module.exports = {\n components: {\n ".concat(n.hxmlTemplatestr,"\n },\n };"));else{n.hasHjs&&u.push("var eventHappenHjs = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/eventHappenHjs.js"))),");")),n.template.hasDynamicName&&u.push("var _fixComponent = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/fixComponentName"))),");")),c.includes("_logUndefined")&&u.push("var _logUndefined = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/logUndefined"))),");"));var m=isTemplateOrImport(i)?"var render = function (_createElement, _vm) {":"var render = function () {",m=(u.push(s?"var render = "+c:m),n.boundKeys.length&&u.push(n.hjsComponentList),s||u.push("".concat(c,"};")),u.push("var staticRenderFns = [".concat(e,"];\n render._withStripped = true;")),getHjsFuncObj(n));if(isTemplateOrImport(i))return addDependency(this,dependencies),u.push("const templateConfig = {\n functional:true,\n props: ".concat(JSON.stringify(r),',\n path: "').concat(l,'",\n components: {').concat(configs.templateHoist?"":n.usingComponents,"},\n ").concat(m.length?m:"",'\n render: render,\n type:"').concat(i,'",\n staticRenderFns: staticRenderFns,\n };\n module.exports = templateConfig;')),u.join("\r\n").replace("_vm=this,","").replace("$style=_vm.$style, $class=_vm.$class, $slots = _vm.$slots, eventHappen = _vm.eventHappen;",functionalPlaceHolder);var s=manifestManager.getManifestData(),c=s.globalComponents,e=s.components.get(l),r={asyncComponents:"",placeholderComponents:""},l=manifestManager.getIsOpenLazyCodeLoad(),d=(traverseComponentList(e,i,c,r,n,l),""),f=utils.getComponentCssPath(this.resourcePath.replace(/.hxml$/,"")),h=(fs.existsSync(f)&&(d="data-q-".concat(hashSum(f))),"{".concat(n.usingComponents,"}")),g="{}",y=null==e||null==(y=e.jsonContent)?void 0:y.styleIsolation;y&&(g='{styleIsolation : "'.concat(y,'"}')),l?(u.push("var __ascf_mergeTplCmps = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/merge-tpl-cmps"))),");")),y=getGlobalUsingComponentStr(c),h="{".concat("page"===i?y:"").concat(n.usingComponents,"}"),u.push("const pageConfig = {\n".concat(a?'name: "q-'.concat(_fixComponent(a),'",'):"",'path: "').concat(o.basePath,'",\n components: __ascf_mergeTplCmps({').concat(n.lazyLoadComponents,"},[").concat(n.pageTemplateList,"]),\n componentPaths: ").concat(h,",\n jsonData: ").concat(g,",\n render: render,\n ").concat(m.length?m:"",'\n type:"').concat(i,'",\n staticRenderFns: staticRenderFns,\n ').concat(d?"_scopeId : ".concat(JSON.stringify(d),","):"","\n ").concat(p?'customTabBar: "custom-tab-bar/index",':"","\n asyncComponents: {").concat(r.asyncComponents,"},\n placeholderComponents: {").concat(r.placeholderComponents,"},\n };"))):(configs.templateHoist&&(u.push("var __ascf_mergeTplCmps = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/merge-tpl-cmps"))),");")),h=handleTplComponents(u,h,n)),u.push("const pageConfig = {\n".concat(a?'name: "q-'.concat(_fixComponent(a),'",'):"",'path: "').concat(o.basePath,'",\n ').concat("page"===i?getGlobalUsingComponents(c):"","\n jsonData: ").concat(g,",\n components: ").concat(h||{},",\n render: render,\n ").concat(m.length?m:"",'\n type:"').concat(i,'",\n staticRenderFns: staticRenderFns,\n ').concat(d?"_scopeId : ".concat(JSON.stringify(d),","):"","\n ").concat(p?'customTabBar: __pageComponentInfos["custom-tab-bar/index"],':"","\n asyncComponents: {").concat(r.asyncComponents,"},\n placeholderComponents: {").concat(r.placeholderComponents,"},\n };"))),handlePage(i,u,o,e,s.manifest.subpackages,l),handleCss(f,i,u,d),addDependency(this,dependencies)}return u.join("\r\n")}function handlePage(e,t,n,a,o,r){"page"===e?t.push("global.pageLoaded(pageConfig);"):(t.push("window.__pageComponentInfos = window.__pageComponentInfos || {};\n __pageComponentInfos['".concat(n.basePath,"'] = pageConfig;\n ").concat(r?"global.componentLoaded(pageConfig);":"")),r||addComponentLoaded(a,t,o))}function handleCss(e,t,n,a){var o;fs.existsSync(e)&&(o="","component"===t&&(o="&scoped=true&scopeId=".concat(a)),n.push('const cssData = require("'.concat(e,"?type=").concat(t).concat(o,'"); ')+"injectStyle(cssData.segs, cssData.sourcemap, cssData.info);"))}function handleTplComponents(e,t,n){return"__ascf_mergeTplCmps({".concat(n.usingComponents,"},[").concat(n.pageTemplateList,"])")}function addComponentLoaded(e,t,n){!e||configs.isProd()&&!configs.requiredComponents.includes(e.path)||t.push("global.componentLoaded(pageConfig);")}function getRenderFunc(e,t){var n=manifestManager.isVue3();return isTemplateOrImport(t.queryType)&&!n&&(e="<template functional>".concat(e,"</template>")),compile(e)}function getGlobalUsingComponentStr(){var t=[];return(0<arguments.length&&void 0!==arguments[0]?arguments[0]:[]).forEach(function(e){t.push('"q-'.concat(_fixComponent(e.key),'": "').concat(e.path,'",'))}),t.join("\r\n")}function getGlobalUsingComponents(e){var t=["\nglobalComponents: {"];return e.forEach(function(e){t.push('"q-'.concat(_fixComponent(e.key),"\": __pageComponentInfos['").concat(e.path,"'],"))}),t.push("},"),t.join("\r\n")}function catchInvalidBindingVariable(e,t,n,a){var o=validator.findIncldeTagSrcChain(n,a);(e=e.filter(function(e){return attrUtils.QAFORKEYS.includes(e.name)})).forEach(function(e){utils.isExp(e.value)&&t.buildLog.push({filePath:o,reason:"NOTE: Cannot use dynamic on directive ".concat(e.name,", ")+"binding value: ".concat(e.value," should without {{}}."),loc:e.loc})})}function procImplicitModel(e){var t,n=IMPLICIT_MODEL_ATTRS[e.nodeName];n&&0<(null==(t=e.attrs)?void 0:t.length)&&e.attrs.map(function(e){return n.includes(e.name)&&(e.name="model:".concat(e.name)),e})}function handleTextNode(e,t){var n="text"===e.parentNode.nodeName.replace(/^q\-/,"");e.value=n?e.value.replace(/\r/g,""):e.value.replace(/\n|\r/g,""),t.template.forPropsList=e._forPropsChain||[],e.value=e.value.replace(/{{(\r?\n|\s|\d)*}}/g,""),expUtils.containExpr(e.value)&&(attrUtils.traverseWrapper(e,t),attrUtils.genTextElementVal(e,t))}function moveForKey(e,t){var n=null==e||null==(n=e.attrs)?void 0:n.findIndex(function(e){return":key"===e.name});-1!==n&&(t.push(e.attrs[n]),null!=e)&&null!=(t=e.attrs)&&t.splice(n,1)}function mergeAttrs2Node(e,t){var n,t=utils.deepClone(t);e.attrs?(n=e.attrs).push.apply(n,_toConsumableArray(t)):e.attrs=t}function fixNodeName(e,t,n){n=n&&e.nodeName===n?"q-".concat(_fixComponent(n)):nodeNameUtils.transformNodeName(e.nodeName,t);e.nodeName=n,e.tagName&&(e.tagName=n)}function travelNodes(e,t,n,a){if("#text"===e.nodeName&&handleTextNode(e,t),e.childNodes&&!(e.childNodes.length<=0)){var o,r,s="q-_@template@_"===e.tagName,c=-1,i=[],l=(s&&-1!==(c=null==e||null==(o=e.attrs)?void 0:o.findIndex(function(e){return"v-for"===e.name}))&&moveForKey(e,i),_createForOfIteratorHelper(e.childNodes));try{for(l.s();!(r=l.n()).done;){var p=r.value,u=(t.template.forPropsList=p._forPropsChain||[],p.nodeName&&(validator.checkNode(p,t,n),procImplicitModel(p),fixNodeName(p,n,a)),s&&-1!==c&&mergeAttrs2Node(p,i),p.attrs);u&&0<u.length&&(catchInvalidBindingVariable(utils.deepClone(u),t,p,n),attrUtils.handleAttrs(u,t,p)),travelNodes(p,t,n,a)}}catch(e){l.e(e)}finally{l.f()}}}function handleImport(e,t,n){var a=n.rootPath,n=n.resourcePath,e=e.find(function(e){return"src"===e.name});if(e){e=utils.getAbsPath(e.value,n,a).filePath,e=fs.existsSync(e)?e:"".concat(e,".hxml");if(fs.existsSync(e)){n=fs.readFileSync(e,"utf8"),n=Parse5.parseFragment(n);if(n&&n.childNodes){var o,r=path.relative(a,e),s=_createForOfIteratorHelper(n.childNodes);try{for(s.s();!(o=s.n()).done;){var c,i=o.value;"template"===i.nodeName&&(c=i.attrs.find(function(e){return"name"===e.name}))&&t.push({type:"import",name:_fixComponent(c.value),path:r})}}catch(e){s.e(e)}finally{s.f()}}}}}function handleInclude(n,a,e){var o,r,s;null!=n&&n.attrs&&(r=(o=e).rootPath,s=o.resourcePath,n.attrs.forEach(function(e){var t;"src"===e.name&&(e=utils.getAbsPath(e.value,s,r).filePath,e=fs.existsSync(e)?e:"".concat(e,".hxml"),dependencies.set(e.replace(/\//g,"\\"),!0),fs.existsSync(e))&&(t=fs.readFileSync(e,"utf8"),o=Object.assign({},o,{rootPath:r,resourcePath:e}),Parse5.parseFragment(t).childNodes.forEach(function(e){Parse5.defaultTreeAdapter.appendChild(n,e),"include"===e.tagName&&handleInclude(e,a,o)}),n.nodeName="_@template@_",n.tagName=n.nodeName)}))}function processTemplate(e,t,n){var a=n.rootPath,o=n.resourcePath,r=!1,s=!1;if(e.attrs&&0<e.attrs.length)for(var c=0,i=e.attrs.length;c<i;c++){var l=e.attrs[c],p=("name"!==l.name&&"is"!==l.name||(l.value=_fixComponent(l.value)),{type:"template",name:l.value,path:path.relative(a,o),hxmlPath:o});"name"===l.name?(t.componentList.push(p),t.declareTemplates.push(p),l.value===n.name?(t.templateAst=e).usingTemplates=[]:(t.exculdeTemplates=[],e.usingTemplates=t.exculdeTemplates),s=r=!0):"is"===l.name&&(s=!0,t.usingTemplates.push(p),e.usingTemplates)&&e.usingTemplates.push(p)}return{isDeclaration:r,isComponent:s}}function handleHjs(e,t,n){var a,o,r=n.rootPath,n=n.resourcePath,s=e.attrs.find(function(e){return"module"===e.name}),c=e.attrs.find(function(e){return"src"===e.name});s&&(a=s.value),c&&(o=utils.getProjectAbsPath(c.value,n,r)),a&&(!moduleNameReg.test(a)&&t.buildLog&&t.buildLog.push({reason:"WARNING: Unexpected hjs module name: ".concat(a,', module name can not start with "_" or "$".'),loc:s.loc}),c={type:"hjs",name:a},o?c.path=o:((n=Parse5.serialize(e))||logger.error("hjs error : no module content!"),c.value=n),t.hasHjs=!0,t.componentList.push(c),t.template.componentList.push(c))}function traverseAst(e,t,n){var a=3<arguments.length&&void 0!==arguments[3]?arguments[3]:[];e.childNodes&&e.childNodes.length&&(e.childNodes=e.childNodes.filter(function(e){return traverseAstNode(e,t,n,a)}))}function traverseAstNode(e,t,n){var a,o,r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:[],s=!0,c=manifestManager.isVue3(),i=e.attrs;return e.parentNode.usingTemplates&&utils.defUnfreezeProperty(e,"usingTemplates",e.parentNode.usingTemplates),"template"===e.nodeName?(o=(a=processTemplate(e,t,n)).isComponent,a.isDeclaration?(utils.defUnfreezeProperty(e,"_forPropsChain",[]),s=!1,isTaroCacheTmpl(n)&&globalTmplAst.push(e)):o?(utils.defFreezeProperty(e,"orignNodeName",e.nodeName),e.nodeName="component"):(e.nodeName="_@template@_",c&&v3ProcessTemplateTag(e))):"include"===e.nodeName?handleInclude(e,t,n):"hjs"===e.nodeName||"wxs"===e.nodeName?(handleHjs(e,t,n),s=!1):"import"===e.nodeName?(handleImport(e.attrs,t.declareTemplates,n),s=!1):"block"===e.nodeName?(e.nodeName="_@template@_",e.tagName="_@template@_",c&&v3ProcessTemplateTag(e)):"#text"===e.nodeName&&/^\n\s*$/.test(e.value)?s=!1:"component"===e.nodeName&&(e.nodeName="hasfix-component"),utils.defUnfreezeProperty(e,"_forPropsChain",(r||[]).concat(forPropsCollect(i))),traverseAst(e,t,n,e._forPropsChain),s}function getHjsFuncObj(e){var t,n;return manifestManager.isVue3()&&null!=e&&null!=(t=e.boundKeys)&&t.length?(n="{",e.boundKeys.forEach(function(e){n+='"'.concat(e,'": ').concat(e,",\n")}),n+="}","".concat(e.boundKeys.length?"hjs: ".concat(n,","):"")):""}function v3ProcessTemplateTag(e){var t={name:"has:if",value:"true"},n=["has:if","has:else","has:elif","has:for","has:for-items"];Array.isArray(e.attrs)&&e.attrs.some(function(e){return n.includes(e.name)})||(e.attrs?e.attrs=[t]:e.attrs.push(t))}function forPropsCollect(e){var t,n=[];return e&&(t=e.map(function(e){return attrUtils.attrAliasMap[e.name]||e.name}),e=e.filter(function(e){return attrUtils.QAFORKEYS.includes(e.name)}).map(function(e){return attrUtils.fixAttrInitValue(e),expUtils.removeExprffix(e.value)}),t.includes("has:for"))&&generateCurrentNodeForKeys(t,n,e),n}function generateCurrentNodeForKeys(e,t,n){1===e.filter(function(e){return e.startsWith("has:for")}).length?t.push("index","item"):e.includes("has:for-item")&&!e.includes("has:for-index")?t.push.apply(t,["index"].concat(_toConsumableArray(n))):!e.includes("has:for-item")&&e.includes("has:for-index")?t.push.apply(t,["item"].concat(_toConsumableArray(n))):t.push.apply(t,_toConsumableArray(n))}function rootAddExtraAttr(e,t){t={name:"v-bind:data-internal-update-trigger",value:isTemplateOrImport(t.queryType)?"_vm.props.internal__updateTrigger":"_vm.$dataprops.internal__updateTrigger"};try{var n,a=filterTextNodes(e.childNodes);if(null==a||null==(n=a[0])||!n.attrs)return!1;a[0].attrs.push(t)}catch(e){return!1}}function findTemplateNode(e,t){if(t.name)return!e.templateAst&&configs.templateHoist?null:(e.usingTemplates=e.templateAst.usingTemplates,e.templateAst);if(e.exculdeTemplates&&e.exculdeTemplates.length){if(!e.usingTemplates&&configs.templateHoist)return null;e.usingTemplates=e.usingTemplates.filter(function(t){return e.exculdeTemplates.find(function(e){return e.name!==t.name})})}}var cacheBuildInfo,globalTmplAst=[];function transformToVue(e,t,n){e=utils.transformCurlyLtEscape(e);var a=Parse5.parseFragment(e),o=initBuildInfo(this,t),r=isTaroCacheTmpl(t);if(r){if(cacheBuildInfo?o=utils.deepClone(cacheBuildInfo):(logger.debug("cache base.hxml buildInfo: ".concat(r," ")),traverseAst(a,o,t),delete o.usingTemplates,cacheBuildInfo=utils.deepClone(o)),!(a=utils.deepClone(globalTmplAst.find(function(e){return"template"===e.nodeName&&e.attrs[0].value===t.name}))))return logger.warn("Can't find template components Ast"),{content:e,buildInfo:o};o.usingTemplates=a.usingTemplates,o.templateAst=a}else traverseAst(a,o,t),a=findTemplateNode(o,t)||a;return a?(adaptMultiRootNode(a,t),travelNodes(a,o,t,n),rootAddExtraAttr(a,o),{content:Parse5.serialize(a).replace(/q-_@template@_/g,"template"),buildInfo:o}):{content:e,buildInfo:o}}function adaptMultiRootNode(e,t){var n,a,o,r,s;isTemplateOrImport(t.type)||(n=!1,r=(a=e.childNodes).length,o="page"===t.type?"page":"view",a&&r&&(1<(r=filterTextNodes(a)).length&&(n=!0),n=!!(1===r.length&&((s=(s=r.find(function(e){return"_@template@_"===e.tagName}))&&filterTextNodes(s.childNodes))&&(n=1<s.length||s.some(function(e){return"_@template@_"===e.tagName})),r[0].attrs&&r[0].attrs.some(function(e){return["has:for","has:for-items"].includes(e.name)})||"page"===t.type&&"page"!==r[0].tagName))||n)&&wrapProcess(t,a,o,e))}function wrapProcess(e,t,n,a){var o,r=[],s=("page"!==e.type&&(logger.debug("adapt multi root node @".concat(e.resourcePath)),r=[{name:"class",value:"hasfix-multi-roots"}]),Parse5.defaultTreeAdapter.createElement(n,null,r)),c=_createForOfIteratorHelper(t);try{for(c.s();!(o=c.n()).done;){var i=o.value;Parse5.defaultTreeAdapter.appendChild(s,i)}}catch(e){c.e(e)}finally{c.f()}a.childNodes=[],a.childNodes[0]=s}function isTaroCacheTmpl(e){return utils.checkConfigCacheTaro()&&utils.checkQueryParameterCacheTaro(e)}module.exports=hxmlLoader;
1
+ var _excluded=["componentName"];function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _objectWithoutProperties(e,t){if(null==e)return{};var n,a=_objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),r=0;r<o.length;r++)n=o[r],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};var n,a={};for(n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;a[n]=e[n]}return a}function _createForOfIteratorHelper(e,t){var n,a,o,r,s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return o=!(a=!0),{s:function(){s=s.call(e)},n:function(){var e=s.next();return a=e.done,e},e:function(e){o=!0,n=e},f:function(){try{a||null==s.return||s.return()}finally{if(o)throw n}}};if(Array.isArray(e)||(s=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return s&&(e=s),r=0,{s:t=function(){},n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var path=require("path"),fs=require("fs"),loaderUtils=require("./loader-utils"),nodeNameUtils=require("./template/node-name-utils"),attrUtils=require("./template/attr-utils"),utils=require("./common/utils"),expUtils=require("./common/exp-utils"),Parse5=require("../ascf-converter/compiler-utils/parse5.bundle"),hjsLoader=require("./hjs-loader"),validator=require("./common/hxml-validator"),_require=require("./common/hash-sum"),hashSum=_require.hashSum,_fixComponent=require("./common/fixComponentName"),_require2=require("./template/implicit-model-config"),IMPLICIT_MODEL_ATTRS=_require2.IMPLICIT_MODEL_ATTRS,_require3=require("../common/config"),configs=_require3.configs,log4js=require("../common/log4js.js"),logger=log4js.getLogger("hxml-loader"),_require4=require("../common/utils"),getProjectInfo=_require4.getProjectInfo,_require5=require("../ascf-compiler/common/manifest-manager"),manifestManager=_require5.manifestManager,_require6=require("./template-compiler"),compile=_require6.compile,moduleNameReg=/^((?!_)(?!\$)).*/,functionalPlaceHolder="$style=_vm.parent.$style, $class=_vm.parent.$class, eventHappen = _vm.parent.eventHappen,_t = _t.bind(_vm.parent);",isTemplateOrImport=function(e){return["template","import"].includes(e)},isPageOrComponent=function(e){return["page","component"].includes(e)},resolve=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return path.resolve.apply(path,[__dirname].concat(t))},filterTextNodes=function(e){return e.filter(function(e){return!["#text","#comment"].includes(e.nodeName)})},dependencies=new Map;function addDependency(n,e){e.forEach(function(e,t){return n.addDependency(t)})}function getComponentsObj(a,e,t){var n=e.name,o=e.rootPath,e=(a.usingComponents="",a.hjsComponentList="",a.pageTemplateList="",a.hxmlTemplatestr="",a.lazyLoadComponents="",a.boundKeys=[],a.componentList),r=a.declareTemplates,s=a.usingTemplates,c=a.template.needRequiredHjs,i=[],l=[],e=(e.forEach(function(e){("hjs"===e.type?i:l).push(e)}),c=c.filter(function(t){return!i.find(function(e){return e.name===t.name})}),i.forEach(function(e){return concatTemplateRequiredHjs(t,e,a,o)}),c.forEach(function(e){return concatTemplateRequiredHjs(t,e,a,o)}),r.forEach(function(t){l.find(function(e){return e.name===t.name})||l.push(t)}),s.find(function(e){return utils.isExp(e.name)})),s=l.filter(e?function(e){return e.name!==n}:function(t){return s.find(function(e){return e.name===t.name})});manifestManager.getIsOpenLazyCodeLoad()?s.forEach(function(e){var t=e.name,n=path.join(o,e.path).replace(/\\/g,"/");a.lazyLoadComponents+='\n"'.concat(t,"\": require('").concat(n,"?type=").concat(e.type,"&name=").concat(e.name,"'),")}):s.forEach(function(e){var t=e.name,n=path.join(o,e.path).replace(/\\/g,"/");a.usingComponents+='\n"'.concat(t,"\": require('").concat(n,"?type=").concat(e.type,"&name=").concat(e.name,"'),")}),configs.templateHoist&&generateTemplateInfo(l,o,a)}function generateTemplateInfo(e,a,o){var t;0<(null==e?void 0:e.length)&&(t=e[0].path,t=path.join(a,t).replace(/\\/g,"/"),o.pageTemplateList+="\nrequire('".concat(t,"?type=templateComponents'),")),null!=e&&e.forEach(function(e){var t=e.name,n=path.join(a,e.path).replace(/\\/g,"/");o.hxmlTemplatestr+='\n"'.concat(t,"\": require('").concat(n,"?type=").concat(e.type,"&name=").concat(e.name,"'),")})}function concatTemplateRequiredHjs(e,t,n,a){t.path?(a=path.join(a,t.path).replace(/\\/g,"/"),n.hjsComponentList+="\nvar ".concat(t.name," = require('").concat(a,"');\n")):(a=hjsLoader.hjsLoaderForInnerHjs.call(e,t.value),n.hjsComponentList+="var ".concat(t.name," = (").concat(a,")(require, module, module.exports);\n")),n.boundKeys.push(t.name)}function initParameter(e){var t,n=e.rootContext,a=e.resourcePath,e=e.resourceQuery,o=path.relative(n,a).replace(/.hxml$/,"").replace(/\\/g,"/"),r=manifestManager.getManifestData(),s=r.components,s=s.get(o)?s.get(o):{},c=s.type,c=void 0===c?"":c,i=s.componentName,s=s.componentList,s=void 0===s?[]:s,e=("?"===e[0]&&(e=loaderUtils.parseQuery(e))&&(c=e.get("type"),t=e.get("name")),Object.keys(r.manifest.usingComponents||[]).concat(s.map(function(e){return e.key})));return{rootPath:n,resourcePath:a,basePath:o,type:c,name:t,customComponentNameList:e,useCustomTabBar:(r.manifest.page[o]||{}).useCustomTabBar,componentName:i}}function initBuildInfo(e,t){var n=(0,require("../common/utils").getProjectInfo)(),a={componentList:[],buildLog:[],usingTemplates:[],declareTemplates:[],template:{ast:null,type:null,name:null,propsList:{},forPropsList:[],componentList:[],needRequiredHjs:[],hasDynamicName:!1}};return a.addCatchStatement=!(!1===((n.projectCfgData||{}).setting||{}).tryCatch),a.queryType=t.type,a}function filterCompPropsList(n,e){var a,t;if(isTemplateOrImport(e.type))return t=(e=n.template).propsList,a=e.componentList,(t=Object.keys(t)).forEach(function(t){var e=a.find(function(e){return e.name===t});e&&n.template.needRequiredHjs.push(e)}),e=a.map(function(e){return e.name}),utils.uniqueSymmetricDifference(t,e)}function getPlaceholderList(e){var t,n="",a=_createForOfIteratorHelper(e);try{for(a.s();!(t=a.n()).done;){var o=t.value,r="q-".concat(_fixComponent(o.key)),s="".concat(o.placeholder),c=(configs.componentList.includes(o.placeholder)||(s="".concat(_fixComponent(o.placeholder))),"q-".concat(s));n+='\n"'.concat(r,'": "').concat(c,'",')}}catch(e){a.e(e)}finally{a.f()}return n}function traverseComponentList(e,t,n,a,o,r){if(isPageOrComponent(t)&&e){var s=e.componentList;"page"===t&&(s=s.filter(function(t){return!n.some(function(e){return e.path===t.path})}));a.placeholderComponents=getPlaceholderList(e.componentPlaceholderList);var c,i=getProjectInfo().ascfSrcPath,l=_createForOfIteratorHelper(s);try{for(l.s();!(c=l.n()).done;){var p,u,m,d=c.value,f="q-".concat(_fixComponent(d.key));d.hasPlaceHolder?(p=d.compJsonPath,u=path.relative(i,p).replace(/\.json$/g,"").split("\\").join("/"),a.asyncComponents+='\n"'.concat(f,'": "').concat(u,'",')):"customTabBar"!==d.key&&(m=r?'"'.concat(d.path,'"'):"__pageComponentInfos['".concat(d.path,"']"),o.usingComponents+='\n"'.concat(f,'": ').concat(m,","))}}catch(e){l.e(e)}finally{l.f()}}}function hxmlLoader(e){var t=this,n=(this.cacheable&&this.cacheable(),initParameter(this)),a=n.componentName,o=_objectWithoutProperties(n,_excluded),n=transformToVue(e,o,a),e=n.content,n=n.buildInfo,r=filterCompPropsList(n,o),e=getRenderFunc(e,n),s=e.isV3,c=e.render,e=e.staticRenderFns,i=(getComponentsObj(n,o,this),utils.logWarn(this,n.buildLog),o.type),l=o.basePath,p=o.useCustomTabBar,u=([".css",".json",".js"].forEach(function(e){e=o.resourcePath.replace(/\.hxml$/g,e);fs.existsSync(e)&&t.addDependency(e)}),[]);if(configs.templateHoist&&"templateComponents"===o.type)addDependency(this,dependencies),u.push("\n module.exports = {\n components: {\n ".concat(n.hxmlTemplatestr,"\n },\n };"));else{n.hasHjs&&u.push("var eventHappenHjs = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/eventHappenHjs.js"))),");")),n.template.hasDynamicName&&u.push("var _fixComponent = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/fixComponentName"))),");")),c.includes("_logUndefined")&&u.push("var _logUndefined = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/logUndefined"))),");"));var m=isTemplateOrImport(i)?"var render = function (_createElement, _vm) {":"var render = function () {",m=(u.push(s?"var render = "+c:m),n.boundKeys.length&&u.push(n.hjsComponentList),s||u.push("".concat(c,"};")),u.push("var staticRenderFns = [".concat(e,"];\n render._withStripped = true;")),getHjsFuncObj(n));if(isTemplateOrImport(i))return addDependency(this,dependencies),u.push("const templateConfig = {\n functional:true,\n props: ".concat(JSON.stringify(r),',\n path: "').concat(l,'",\n components: {').concat(configs.templateHoist?"":n.usingComponents,"},\n ").concat(m.length?m:"",'\n render: render,\n type:"').concat(i,'",\n staticRenderFns: staticRenderFns,\n };\n module.exports = templateConfig;')),u.join("\r\n").replace("_vm=this,","").replace("$style=_vm.$style, $class=_vm.$class, $slots = _vm.$slots, eventHappen = _vm.eventHappen;",functionalPlaceHolder);var s=manifestManager.getManifestData(),c=s.globalComponents,e=s.components.get(l),r={asyncComponents:"",placeholderComponents:""},l=manifestManager.getIsOpenLazyCodeLoad(),d=(traverseComponentList(e,i,c,r,n,l),""),f=utils.getComponentCssPath(this.resourcePath.replace(/.hxml$/,"")),h=(fs.existsSync(f)&&(d="data-q-".concat(hashSum(f))),"{".concat(n.usingComponents,"}")),g="{}",y=null==e||null==(y=e.jsonContent)?void 0:y.styleIsolation;y&&(g='{styleIsolation : "'.concat(y,'"}')),l?(u.push("var __ascf_mergeTplCmps = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/merge-tpl-cmps"))),");")),y=getGlobalUsingComponentStr(c),h="{".concat("page"===i?y:"").concat(n.usingComponents,"}"),u.push("const pageConfig = {\n".concat(a?'name: "q-'.concat(_fixComponent(a),'",'):"",'path: "').concat(o.basePath,'",\n components: __ascf_mergeTplCmps({').concat(n.lazyLoadComponents,"},[").concat(n.pageTemplateList,"]),\n componentPaths: ").concat(h,",\n jsonData: ").concat(g,",\n render: render,\n ").concat(m.length?m:"",'\n type:"').concat(i,'",\n staticRenderFns: staticRenderFns,\n ').concat(d?"_scopeId : ".concat(JSON.stringify(d),","):"","\n ").concat(p?'customTabBar: "custom-tab-bar/index",':"","\n asyncComponents: {").concat(r.asyncComponents,"},\n placeholderComponents: {").concat(r.placeholderComponents,"},\n };"))):(configs.templateHoist&&(u.push("var __ascf_mergeTplCmps = require("+"".concat(loaderUtils.stringifyRequest(this,"!".concat(resolve("./common/merge-tpl-cmps"))),");")),h=handleTplComponents(u,h,n)),u.push("const pageConfig = {\n".concat(a?'name: "q-'.concat(_fixComponent(a),'",'):"",'path: "').concat(o.basePath,'",\n ').concat("page"===i?getGlobalUsingComponents(c):"","\n jsonData: ").concat(g,",\n components: ").concat(h||{},",\n render: render,\n ").concat(m.length?m:"",'\n type:"').concat(i,'",\n staticRenderFns: staticRenderFns,\n ').concat(d?"_scopeId : ".concat(JSON.stringify(d),","):"","\n ").concat(p?'customTabBar: __pageComponentInfos["custom-tab-bar/index"],':"","\n asyncComponents: {").concat(r.asyncComponents,"},\n placeholderComponents: {").concat(r.placeholderComponents,"},\n };"))),handlePage(i,u,o,e,s.manifest.subpackages,l),handleCss(f,i,u,d),addDependency(this,dependencies)}return u.join("\r\n")}function handlePage(e,t,n,a,o,r){"page"===e?t.push("global.pageLoaded(pageConfig);"):(t.push("window.__pageComponentInfos = window.__pageComponentInfos || {};\n __pageComponentInfos['".concat(n.basePath,"'] = pageConfig;\n ").concat(r?"global.componentLoaded(pageConfig);":"")),r||addComponentLoaded(a,t,o))}function handleCss(e,t,n,a){var o;fs.existsSync(e)&&(o="","component"===t&&(o="&scoped=true&scopeId=".concat(a)),n.push('const cssData = require("'.concat(e,"?type=").concat(t).concat(o,'"); ')+"injectStyle(cssData.segs, cssData.sourcemap, cssData.info);"))}function handleTplComponents(e,t,n){return"__ascf_mergeTplCmps({".concat(n.usingComponents,"},[").concat(n.pageTemplateList,"])")}function addComponentLoaded(e,t,n){e&&t.push("global.componentLoaded(pageConfig);")}function getRenderFunc(e,t){var n=manifestManager.isVue3();return isTemplateOrImport(t.queryType)&&!n&&(e="<template functional>".concat(e,"</template>")),compile(e)}function getGlobalUsingComponentStr(){var t=[];return(0<arguments.length&&void 0!==arguments[0]?arguments[0]:[]).forEach(function(e){t.push('"q-'.concat(_fixComponent(e.key),'": "').concat(e.path,'",'))}),t.join("\r\n")}function getGlobalUsingComponents(e){var t=["\nglobalComponents: {"];return e.forEach(function(e){t.push('"q-'.concat(_fixComponent(e.key),"\": __pageComponentInfos['").concat(e.path,"'],"))}),t.push("},"),t.join("\r\n")}function catchInvalidBindingVariable(e,t,n,a){var o=validator.findIncldeTagSrcChain(n,a);(e=e.filter(function(e){return attrUtils.QAFORKEYS.includes(e.name)})).forEach(function(e){utils.isExp(e.value)&&t.buildLog.push({filePath:o,reason:"NOTE: Cannot use dynamic on directive ".concat(e.name,", ")+"binding value: ".concat(e.value," should without {{}}."),loc:e.loc})})}function procImplicitModel(e){var t,n=IMPLICIT_MODEL_ATTRS[e.nodeName];n&&0<(null==(t=e.attrs)?void 0:t.length)&&e.attrs.map(function(e){return n.includes(e.name)&&(e.name="model:".concat(e.name)),e})}function handleTextNode(e,t){var n="text"===e.parentNode.nodeName.replace(/^q\-/,"");e.value=n?e.value.replace(/\r/g,""):e.value.replace(/\n|\r/g,""),t.template.forPropsList=e._forPropsChain||[],e.value=e.value.replace(/{{(\r?\n|\s|\d)*}}/g,""),expUtils.containExpr(e.value)&&(attrUtils.traverseWrapper(e,t),attrUtils.genTextElementVal(e,t))}function moveForKey(e,t){var n=null==e||null==(n=e.attrs)?void 0:n.findIndex(function(e){return":key"===e.name});-1!==n&&(t.push(e.attrs[n]),null!=e)&&null!=(t=e.attrs)&&t.splice(n,1)}function mergeAttrs2Node(e,t){var n,t=utils.deepClone(t);e.attrs?(n=e.attrs).push.apply(n,_toConsumableArray(t)):e.attrs=t}function fixNodeName(e,t,n){n=n&&e.nodeName===n?"q-".concat(_fixComponent(n)):nodeNameUtils.transformNodeName(e.nodeName,t);e.nodeName=n,e.tagName&&(e.tagName=n)}function travelNodes(e,t,n,a){if("#text"===e.nodeName&&handleTextNode(e,t),e.childNodes&&!(e.childNodes.length<=0)){var o,r,s="q-_@template@_"===e.tagName,c=-1,i=[],l=(s&&-1!==(c=null==e||null==(o=e.attrs)?void 0:o.findIndex(function(e){return"v-for"===e.name}))&&moveForKey(e,i),_createForOfIteratorHelper(e.childNodes));try{for(l.s();!(r=l.n()).done;){var p=r.value,u=(t.template.forPropsList=p._forPropsChain||[],p.nodeName&&(validator.checkNode(p,t,n),procImplicitModel(p),fixNodeName(p,n,a)),s&&-1!==c&&mergeAttrs2Node(p,i),p.attrs);u&&0<u.length&&(catchInvalidBindingVariable(utils.deepClone(u),t,p,n),attrUtils.handleAttrs(u,t,p)),travelNodes(p,t,n,a)}}catch(e){l.e(e)}finally{l.f()}}}function handleImport(e,t,n){var a=n.rootPath,n=n.resourcePath,e=e.find(function(e){return"src"===e.name});if(e){e=utils.getAbsPath(e.value,n,a).filePath,e=fs.existsSync(e)?e:"".concat(e,".hxml");if(fs.existsSync(e)){n=fs.readFileSync(e,"utf8"),n=Parse5.parseFragment(n);if(n&&n.childNodes){var o,r=path.relative(a,e),s=_createForOfIteratorHelper(n.childNodes);try{for(s.s();!(o=s.n()).done;){var c,i=o.value;"template"===i.nodeName&&(c=i.attrs.find(function(e){return"name"===e.name}))&&t.push({type:"import",name:_fixComponent(c.value),path:r})}}catch(e){s.e(e)}finally{s.f()}}}}}function handleInclude(n,a,e){var o,r,s;null!=n&&n.attrs&&(r=(o=e).rootPath,s=o.resourcePath,n.attrs.forEach(function(e){var t;"src"===e.name&&(e=utils.getAbsPath(e.value,s,r).filePath,e=fs.existsSync(e)?e:"".concat(e,".hxml"),dependencies.set(e.replace(/\//g,"\\"),!0),fs.existsSync(e))&&(t=fs.readFileSync(e,"utf8"),o=Object.assign({},o,{rootPath:r,resourcePath:e}),Parse5.parseFragment(t).childNodes.forEach(function(e){Parse5.defaultTreeAdapter.appendChild(n,e),"include"===e.tagName&&handleInclude(e,a,o)}),n.nodeName="_@template@_",n.tagName=n.nodeName)}))}function processTemplate(e,t,n){var a=n.rootPath,o=n.resourcePath,r=!1,s=!1;if(e.attrs&&0<e.attrs.length)for(var c=0,i=e.attrs.length;c<i;c++){var l=e.attrs[c],p=("name"!==l.name&&"is"!==l.name||(l.value=_fixComponent(l.value)),{type:"template",name:l.value,path:path.relative(a,o),hxmlPath:o});"name"===l.name?(t.componentList.push(p),t.declareTemplates.push(p),l.value===n.name?(t.templateAst=e).usingTemplates=[]:(t.exculdeTemplates=[],e.usingTemplates=t.exculdeTemplates),s=r=!0):"is"===l.name&&(s=!0,t.usingTemplates.push(p),e.usingTemplates)&&e.usingTemplates.push(p)}return{isDeclaration:r,isComponent:s}}function handleHjs(e,t,n){var a,o,r=n.rootPath,n=n.resourcePath,s=e.attrs.find(function(e){return"module"===e.name}),c=e.attrs.find(function(e){return"src"===e.name});s&&(a=s.value),c&&(o=utils.getProjectAbsPath(c.value,n,r)),a&&(!moduleNameReg.test(a)&&t.buildLog&&t.buildLog.push({reason:"WARNING: Unexpected hjs module name: ".concat(a,', module name can not start with "_" or "$".'),loc:s.loc}),c={type:"hjs",name:a},o?c.path=o:((n=Parse5.serialize(e))||logger.error("hjs error : no module content!"),c.value=n),t.hasHjs=!0,t.componentList.push(c),t.template.componentList.push(c))}function traverseAst(e,t,n){var a=3<arguments.length&&void 0!==arguments[3]?arguments[3]:[];e.childNodes&&e.childNodes.length&&(e.childNodes=e.childNodes.filter(function(e){return traverseAstNode(e,t,n,a)}))}function traverseAstNode(e,t,n){var a,o,r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:[],s=!0,c=manifestManager.isVue3(),i=e.attrs;return e.parentNode.usingTemplates&&utils.defUnfreezeProperty(e,"usingTemplates",e.parentNode.usingTemplates),"template"===e.nodeName?(o=(a=processTemplate(e,t,n)).isComponent,a.isDeclaration?(utils.defUnfreezeProperty(e,"_forPropsChain",[]),s=!1,isTaroCacheTmpl(n)&&globalTmplAst.push(e)):o?(utils.defFreezeProperty(e,"orignNodeName",e.nodeName),e.nodeName="component"):(e.nodeName="_@template@_",c&&v3ProcessTemplateTag(e))):"include"===e.nodeName?handleInclude(e,t,n):"hjs"===e.nodeName||"wxs"===e.nodeName?(handleHjs(e,t,n),s=!1):"import"===e.nodeName?(handleImport(e.attrs,t.declareTemplates,n),s=!1):"block"===e.nodeName?(e.nodeName="_@template@_",e.tagName="_@template@_",c&&v3ProcessTemplateTag(e)):"#text"===e.nodeName&&/^\n\s*$/.test(e.value)?s=!1:"component"===e.nodeName&&(e.nodeName="hasfix-component"),utils.defUnfreezeProperty(e,"_forPropsChain",(r||[]).concat(forPropsCollect(i))),traverseAst(e,t,n,e._forPropsChain),s}function getHjsFuncObj(e){var t,n;return manifestManager.isVue3()&&null!=e&&null!=(t=e.boundKeys)&&t.length?(n="{",e.boundKeys.forEach(function(e){n+='"'.concat(e,'": ').concat(e,",\n")}),n+="}","".concat(e.boundKeys.length?"hjs: ".concat(n,","):"")):""}function v3ProcessTemplateTag(e){var t={name:"has:if",value:"true"},n=["has:if","has:else","has:elif","has:for","has:for-items"];Array.isArray(e.attrs)&&e.attrs.some(function(e){return n.includes(e.name)})||(e.attrs?e.attrs=[t]:e.attrs.push(t))}function forPropsCollect(e){var t,n=[];return e&&(t=e.map(function(e){return attrUtils.attrAliasMap[e.name]||e.name}),e=e.filter(function(e){return attrUtils.QAFORKEYS.includes(e.name)}).map(function(e){return attrUtils.fixAttrInitValue(e),expUtils.removeExprffix(e.value)}),t.includes("has:for"))&&generateCurrentNodeForKeys(t,n,e),n}function generateCurrentNodeForKeys(e,t,n){1===e.filter(function(e){return e.startsWith("has:for")}).length?t.push("index","item"):e.includes("has:for-item")&&!e.includes("has:for-index")?t.push.apply(t,["index"].concat(_toConsumableArray(n))):!e.includes("has:for-item")&&e.includes("has:for-index")?t.push.apply(t,["item"].concat(_toConsumableArray(n))):t.push.apply(t,_toConsumableArray(n))}function rootAddExtraAttr(e,t){t={name:"v-bind:data-internal-update-trigger",value:isTemplateOrImport(t.queryType)?"_vm.props.internal__updateTrigger":"_vm.$dataprops.internal__updateTrigger"};try{var n,a=filterTextNodes(e.childNodes);if(null==a||null==(n=a[0])||!n.attrs)return!1;a[0].attrs.push(t)}catch(e){return!1}}function findTemplateNode(e,t){if(t.name)return!e.templateAst&&configs.templateHoist?null:(e.usingTemplates=e.templateAst.usingTemplates,e.templateAst);if(e.exculdeTemplates&&e.exculdeTemplates.length){if(!e.usingTemplates&&configs.templateHoist)return null;e.usingTemplates=e.usingTemplates.filter(function(t){return e.exculdeTemplates.find(function(e){return e.name!==t.name})})}}var cacheBuildInfo,globalTmplAst=[];function transformToVue(e,t,n){e=utils.transformCurlyLtEscape(e);var a=Parse5.parseFragment(e),o=initBuildInfo(this,t),r=isTaroCacheTmpl(t);if(r){if(cacheBuildInfo?o=utils.deepClone(cacheBuildInfo):(logger.debug("cache base.hxml buildInfo: ".concat(r," ")),traverseAst(a,o,t),delete o.usingTemplates,cacheBuildInfo=utils.deepClone(o)),!(a=utils.deepClone(globalTmplAst.find(function(e){return"template"===e.nodeName&&e.attrs[0].value===t.name}))))return logger.warn("Can't find template components Ast"),{content:e,buildInfo:o};o.usingTemplates=a.usingTemplates,o.templateAst=a}else traverseAst(a,o,t),a=findTemplateNode(o,t)||a;return a?(adaptMultiRootNode(a,t),travelNodes(a,o,t,n),rootAddExtraAttr(a,o),{content:Parse5.serialize(a).replace(/q-_@template@_/g,"template"),buildInfo:o}):{content:e,buildInfo:o}}function adaptMultiRootNode(e,t){var n,a,o,r,s;isTemplateOrImport(t.type)||(n=!1,r=(a=e.childNodes).length,o="page"===t.type?"page":"view",a&&r&&(1<(r=filterTextNodes(a)).length&&(n=!0),n=!!(1===r.length&&((s=(s=r.find(function(e){return"_@template@_"===e.tagName}))&&filterTextNodes(s.childNodes))&&(n=1<s.length||s.some(function(e){return"_@template@_"===e.tagName})),r[0].attrs&&r[0].attrs.some(function(e){return["has:for","has:for-items"].includes(e.name)})||"page"===t.type&&"page"!==r[0].tagName))||n)&&wrapProcess(t,a,o,e))}function wrapProcess(e,t,n,a){var o,r=[],s=("page"!==e.type&&(logger.debug("adapt multi root node @".concat(e.resourcePath)),r=[{name:"class",value:"hasfix-multi-roots"}]),Parse5.defaultTreeAdapter.createElement(n,null,r)),c=_createForOfIteratorHelper(t);try{for(c.s();!(o=c.n()).done;){var i=o.value;Parse5.defaultTreeAdapter.appendChild(s,i)}}catch(e){c.e(e)}finally{c.f()}a.childNodes=[],a.childNodes[0]=s}function isTaroCacheTmpl(e){return utils.checkConfigCacheTaro()&&utils.checkQueryParameterCacheTaro(e)}module.exports=hxmlLoader;
@@ -1 +1 @@
1
- function _toConsumableArray(t){return _arrayWithoutHoles(t)||_iterableToArray(t)||_unsupportedIterableToArray(t)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}function _arrayWithoutHoles(t){if(Array.isArray(t))return _arrayLikeToArray(t)}function _createForOfIteratorHelper(t,e){var r,n,a,o,i="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(i)return a=!(n=!0),{s:function(){i=i.call(t)},n:function(){var t=i.next();return n=t.done,t},e:function(t){a=!0,r=t},f:function(){try{n||null==i.return||i.return()}finally{if(a)throw r}}};if(Array.isArray(t)||(i=_unsupportedIterableToArray(t))||e&&t&&"number"==typeof t.length)return i&&(t=i),o=0,{s:e=function(){},n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:e};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(t,e){var r;if(t)return"string"==typeof t?_arrayLikeToArray(t,e):"Map"===(r="Object"===(r={}.toString.call(t).slice(8,-1))&&t.constructor?t.constructor.name:r)||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(t,e):void 0}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var path=require("path"),fs=require("fs"),utils=require("../common/utils"),_require=require("../common/manifest-manager"),manifestManager=_require.manifestManager,_require2=require("../../common/config"),configs=_require2.configs,log4js=require("../../common/log4js"),logger=log4js.getLogger("html-generator-plugin"),HTML_HEAD='<!DOCTYPE html>\n<html>\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0,minimum-scale=1.0, viewport-fit=cover" />\n <link rel="stylesheet" href="assets://base.css" type="text/css" media="screen" charset="utf-8" />\n </head>\n',HTML_BODY=" <body>\n <div id=\"holder\"></div>\n <script src='assets://renderer.js'><\/script>\n",SCRIPT_APP_CSS=" <script type=\"text/javascript\" src='/app.css.js'><\/script>\n",HTML_BODY_END=" </body>\n",HTML_HTML_END="</html>",GLOBAL_COMPONENTS=[];function HtmlGeneratorPlugin(t){this.options=t}function generateHtmlFile(t,e,r,n,a,o){var i=HTML_HEAD;if(i+=HTML_BODY,r||(i+=SCRIPT_APP_CSS),o)n.filter(function(t){return"component"!==t.type}).forEach(function(t){t=t.path;return i+=' <script type="text/javascript" src="/'.concat(t,'.pack.js"><\/script>\n')});else if(t[e].useCustomTabBar&&(i+=' <script type="text/javascript" src="/custom-tab-bar/index.pack.js"><\/script>\n'),n&&0<n.length){var s,c=_createForOfIteratorHelper(n);try{for(c.s();!(s=c.n()).done;){var u=s.value,l=u.path,p=u.needAsync;i+=' <script type="text/javascript" src="/'.concat(l,'.pack.js" ').concat(p?"async":"","><\/script>\n")}}catch(t){c.e(t)}finally{c.f()}}i=i+HTML_BODY_END+HTML_HTML_END,r=path.join(a,"".concat(e,".html"));utils.mkdirsSync(path.dirname(r)),fs.writeFileSync(r,i,"utf8")}function getSubpackageData(t,e,r){e=JSON.parse(JSON.stringify((null==e?void 0:e.subpackages)||[]));return null!=e&&e.forEach(function(t){t.root.endsWith("/")||(t.root+="/")}),{subpackage:e,pagePath:t,srcPath:r}}function deduplicate(t){var e=new Set;return t.filter(function(t){t="".concat(t.path,"-").concat(t.needAsync);return!e.has(t)&&(e.add(t),!0)})}function getPageJSList(t,e,r,n){n=getSubpackageData(t,n,r),r=[];return getUsingComponents(e.get(t),t,r,e,"page",n),r=_toConsumableArray(new Set(utils.flat(r,1/0))),_toConsumableArray(deduplicate(r)).filter(function(t){return"custom-tab-bar/index"!==t.path}).concat({path:t,needAsync:!1,type:"page"})}function getUsingComponents(t,a,o,i){var e=4<arguments.length&&void 0!==arguments[4]?arguments[4]:"component",s=5<arguments.length?arguments[5]:void 0,t=utils.deepClone(t.componentList)||[];"page"===e&&t.push.apply(t,_toConsumableArray(GLOBAL_COMPONENTS)),t.forEach(function(t){var e=t.compJsonPath,t=t.path,r=[],n=isAsyncNeeded(t,s.subpackage,s.pagePath,s.srcPath);if(r.unshift({path:t,needAsync:n,type:"component"}),o.unshift(r),a!==t)if(fs.existsSync(e))i.has(t)&&getUsingComponents(i.get(t),t,r,i,"component",s);else{n="ERROR: Can not resolve file:".concat(e);if(logger.error(n),!configs.serve&&!configs.watch)throw n}})}function isAsyncNeeded(e,t,r,n){var a="",o="",i=!0,s=!0;return null!=t&&t.forEach(function(t){r.startsWith(t.root)&&(a=t.root,i=!1),e.startsWith(t.root)&&(o=t.root,s=!1)}),!(s||!i&&a===o)}HtmlGeneratorPlugin.prototype.apply=function(t){var p=this.options;t.hooks.emit.tapAsync("HtmlGeneratorPlugin",function(t,e){var r,n,a=manifestManager.getManifestData(),o=p.srcPath,i=p.buildPath,s=a.manifest,c=a.components,u=s.page,l=(GLOBAL_COMPONENTS=Object.values(s.usingComponents||{}).map(function(t){return c.has(t)&&c.get(t)}),manifestManager.getIsOpenLazyCodeLoad());for(r in u)Object.prototype.hasOwnProperty.call(u,r)&&(n=getPageJSList(r,c,o,s),generateHtmlFile(u,r,-1!==s.independentList.indexOf(r),n,i,l));e()})},module.exports=HtmlGeneratorPlugin;
1
+ function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _createForOfIteratorHelper(e,t){var r,n,a,o,i="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(i)return a=!(n=!0),{s:function(){i=i.call(e)},n:function(){var e=i.next();return n=e.done,e},e:function(e){a=!0,r=e},f:function(){try{n||null==i.return||i.return()}finally{if(a)throw r}}};if(Array.isArray(e)||(i=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return i&&(e=i),o=0,{s:t=function(){},n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var r;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(r="Object"===(r={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var path=require("path"),fs=require("fs"),utils=require("../common/utils"),_require=require("../common/manifest-manager"),manifestManager=_require.manifestManager,_require2=require("../../common/config"),configs=_require2.configs,log4js=require("../../common/log4js"),_require3=require("../common/manifest-handler"),getAppCssExt=_require3.getAppCssExt,logger=log4js.getLogger("html-generator-plugin"),HTML_HEAD='<!DOCTYPE html>\n<html>\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0,minimum-scale=1.0, viewport-fit=cover" />\n <link rel="stylesheet" href="assets://base.css" type="text/css" media="screen" charset="utf-8" />\n </head>\n',HTML_BODY=" <body>\n <div id=\"holder\"></div>\n <script src='assets://renderer.js'><\/script>\n",SCRIPT_APP_CSS=" <script type=\"text/javascript\" src='/app.css.js'><\/script>\n",HTML_BODY_END=" </body>\n",HTML_HTML_END="</html>",GLOBAL_COMPONENTS=[];function HtmlGeneratorPlugin(e){this.options=e}function generateHtmlFile(e,t,r,n,a,o){var i=HTML_HEAD;if(i+=HTML_BODY,!r&&getAppCssExt()&&(i+=SCRIPT_APP_CSS),o)n.filter(function(e){return"component"!==e.type}).forEach(function(e){e=e.path;return i+=' <script type="text/javascript" src="/'.concat(e,'.pack.js"><\/script>\n')});else if(e[t].useCustomTabBar&&(i+=' <script type="text/javascript" src="/custom-tab-bar/index.pack.js"><\/script>\n'),n&&0<n.length){var s,c=_createForOfIteratorHelper(n);try{for(c.s();!(s=c.n()).done;){var u=s.value,l=u.path,p=u.needAsync;i+=' <script type="text/javascript" src="/'.concat(l,'.pack.js" ').concat(p?"async":"","><\/script>\n")}}catch(e){c.e(e)}finally{c.f()}}i=i+HTML_BODY_END+HTML_HTML_END,r=path.join(a,"".concat(t,".html"));utils.mkdirsSync(path.dirname(r)),fs.writeFileSync(r,i,"utf8")}function getSubpackageData(e,t,r){t=JSON.parse(JSON.stringify((null==t?void 0:t.subpackages)||[]));return null!=t&&t.forEach(function(e){e.root.endsWith("/")||(e.root+="/")}),{subpackage:t,pagePath:e,srcPath:r}}function deduplicate(e){var t=new Set;return e.filter(function(e){e="".concat(e.path,"-").concat(e.needAsync);return!t.has(e)&&(t.add(e),!0)})}function getPageJSList(e,t,r,n){n=getSubpackageData(e,n,r),r=[];return getUsingComponents(t.get(e),e,r,t,"page",n),r=_toConsumableArray(new Set(utils.flat(r,1/0))),_toConsumableArray(deduplicate(r)).filter(function(e){return"custom-tab-bar/index"!==e.path}).concat({path:e,needAsync:!1,type:"page"})}function getUsingComponents(e,a,o,i){var t=4<arguments.length&&void 0!==arguments[4]?arguments[4]:"component",s=5<arguments.length?arguments[5]:void 0,e=utils.deepClone(e.componentList)||[];"page"===t&&e.push.apply(e,_toConsumableArray(GLOBAL_COMPONENTS)),e.forEach(function(e){var t=e.compJsonPath,e=e.path,r=[],n=isAsyncNeeded(e,s.subpackage,s.pagePath,s.srcPath);if(r.unshift({path:e,needAsync:n,type:"component"}),o.unshift(r),a!==e)if(fs.existsSync(t))i.has(e)&&getUsingComponents(i.get(e),e,r,i,"component",s);else{n="ERROR: Can not resolve file:".concat(t);if(logger.error(n),!configs.serve&&!configs.watch)throw n}})}function isAsyncNeeded(t,e,r,n){var a="",o="",i=!0,s=!0;return null!=e&&e.forEach(function(e){r.startsWith(e.root)&&(a=e.root,i=!1),t.startsWith(e.root)&&(o=e.root,s=!1)}),!(s||!i&&a===o)}HtmlGeneratorPlugin.prototype.apply=function(e){var p=this.options;e.hooks.emit.tapAsync("HtmlGeneratorPlugin",function(e,t){var r,n,a=manifestManager.getManifestData(),o=p.srcPath,i=p.buildPath,s=a.manifest,c=a.components,u=s.page,l=(GLOBAL_COMPONENTS=Object.values(s.usingComponents||{}).map(function(e){return c.has(e)&&c.get(e)}),manifestManager.getIsOpenLazyCodeLoad());for(r in u)Object.prototype.hasOwnProperty.call(u,r)&&(n=getPageJSList(r,c,o,s),generateHtmlFile(u,r,-1!==s.independentList.indexOf(r),n,i,l));t()})},module.exports=HtmlGeneratorPlugin;
@@ -1 +1 @@
1
- var fs=require("fs"),path=require("path"),utils=require("../common/utils"),_require=require("../../common/config"),configs=_require.configs,_require2=require("../common/manifest-manager"),manifestManager=_require2.manifestManager,getResource=_require2.getResource,getSubRootMap=_require2.getSubRootMap;function ManifestGeneratorPlugin(e){this.options=e}function genRouter(e){var t,r=Object.keys(e.page),n=[],o=e.entryPagePath||e.pages[0]||"",o=(e.router&&e.router.pages?(t=e.router.pages,Object.keys(t).forEach(function(e){var r=t[e];n.push(path.join(e,r.component).replace(/\\/g,"/"))}),e.router.entry=o):e.router={entry:o,pages:{}},r.forEach(function(r){n.some(function(e){return e===r})||(e.router.pages[r]={component:"",info:e.page[r]})}),r.map(function(e){return e+".json"}));return o.push("app.json"),o}ManifestGeneratorPlugin.prototype.apply=function(e){var r=this.options,a=r.srcPath,s=r.build;e.hooks.emit.tapAsync("ManifestGeneratorPlugin",function(r,e){var t=manifestManager.getManifestData(),t=Object.assign({},t.manifest),n=path.join(s,"manifest.json");configs.isProd()?t.versionType="release":(t.versionType="debug",t.debug=!0,t.debugable=!0,global._supportLegacyHos&&(o=configs.deviceList||process.env.ASCF_DEVICE_LIST||[],t.deviceList=Array.isArray(o)?o.join(","):o)),t.global={};manifestManager.getIsOpenLazyCodeLoad()&&(t.features={lazyCode:"v2"}),t.window&&(t.global.window=t.window,delete t.window);var o=genRouter(t);null!=o&&o.forEach(function(e){return r.fileDependencies.add(path.resolve(a,e))}),delete t.pages,delete t.page,Object.prototype.hasOwnProperty.call(t,"subpackages")&&(t.subpackages=t.subpackages.map(function(e,r){var t=e.root,n=e.name,e=e.pages;return{resource:getResource(t),name:n||"pkg".concat(r+1),pages:e,root:t}})),utils.mkdirsSync(s),fs.writeFileSync(n,JSON.stringify(t,null,4),"utf8"),e()})},module.exports=ManifestGeneratorPlugin,module.exports.getSubRootMap=getSubRootMap;
1
+ var fs=require("fs"),path=require("path"),utils=require("../common/utils"),_require=require("../../common/config"),configs=_require.configs,_require2=require("../common/manifest-manager"),manifestManager=_require2.manifestManager,getResource=_require2.getResource,getSubRootMap=_require2.getSubRootMap;function ManifestGeneratorPlugin(e){this.options=e}function genRouter(e){var n,t=Object.keys(e.page),a=[],r=e.entryPagePath||e.pages[0]||"",r=(e.router&&e.router.pages?(n=e.router.pages,Object.keys(n).forEach(function(e){var t=n[e];a.push(path.join(e,t.component).replace(/\\/g,"/"))}),e.router.entry=r):e.router={entry:r,pages:{}},t.forEach(function(t){a.some(function(e){return e===t})||(e.router.pages[t]={component:"",info:e.page[t]})}),t.map(function(e){return e+".json"}));return r.push("app.json"),r}function modifyManifestFeatures(e){manifestManager.getIsOpenLazyCodeLoad()&&(e.features={lazyCode:"v2"}),!0===e.splitMainPage&&(e.features=e.features||{},e.features.splitMainPage=!0,delete e.splitMainPage)}function modifyManifestKey(e){e.window&&(e.global.window=e.window,delete e.window),Object.prototype.hasOwnProperty.call(e,"subpackages")&&(e.subpackages=e.subpackages.map(function(e,t){var n=e.root,a=e.name,e=e.pages;return{resource:getResource(n),name:a||"pkg".concat(t+1),pages:e,root:n}}))}ManifestGeneratorPlugin.prototype.apply=function(e){var t=this.options,o=t.srcPath,i=t.build;e.hooks.emit.tapAsync("ManifestGeneratorPlugin",function(t,e){var n=manifestManager.getManifestData(),n=Object.assign({},n.manifest),a=path.join(i,"manifest.json"),r=(configs.isProd()?n.versionType="release":(n.versionType="debug",n.debug=!0,n.debugable=!0,global._supportLegacyHos&&(r=configs.deviceList||process.env.ASCF_DEVICE_LIST||[],n.deviceList=Array.isArray(r)?r.join(","):r)),n.global={},modifyManifestFeatures(n),modifyManifestKey(n),genRouter(n));null!=r&&r.forEach(function(e){return t.fileDependencies.add(path.resolve(o,e))}),delete n.pages,delete n.page,utils.mkdirsSync(i),fs.writeFileSync(a,JSON.stringify(n,null,4),"utf8"),e()})},module.exports=ManifestGeneratorPlugin,module.exports.getSubRootMap=getSubRootMap;
@@ -0,0 +1 @@
1
+ function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,r){for(var o=0;o<r.length;o++){var t=r[o];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,_toPropertyKey(t.key),t)}}function _createClass(e,r,o){return r&&_defineProperties(e.prototype,r),o&&_defineProperties(e,o),Object.defineProperty(e,"prototype",{writable:!1}),e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,r){if("object"!=_typeof(e)||!e)return e;var o=e[Symbol.toPrimitive];if(void 0===o)return("string"===r?String:Number)(e);o=o.call(e,r||"default");if("object"!=_typeof(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}var fs=require("fs"),path=require("path"),_require=require("../../common/utils"),readJsonFile=_require.readJsonFile,writeJsonFile=_require.writeJsonFile,log4js=require("../../common/log4js.js"),logger=log4js.getLogger("preload-plugin"),PreloadPlugin=_createClass(function e(r){_classCallCheck(this,e),this.options=r},[{key:"apply",value:function(e){var i=this;e.hooks.afterEmit.tapAsync("PreloadPlugin",function(r,o){try{logger.debug("PreloadPlugin start");var e,t=path.resolve(i.options.projectPath,"preload.json"),n=path.resolve(i.options.entryDir,"preload.json");fs.existsSync(t)&&(e=readJsonFile(t),writeJsonFile(n,e)),logger.debug("PreloadPlugin completed"),o()}catch(e){return r.errors.push({message:"ERROR: Generate preload.json failed : ".concat(e,"\n")+"@ ".concat(i.options.projectPath,"\n")}),o(e)}})}}]);module.exports=PreloadPlugin;