miniprogram-ci 1.9.26 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -166
- package/README.md +10 -5
- package/bin/.DS_Store +0 -0
- package/bin/miniprogram-ci.js +1 -1
- package/dist/@types/ci/checkCodeQuality.d.ts +2 -2
- package/dist/@types/ci/cloud/cloudapi.d.ts +7 -0
- package/dist/@types/ci/cloud/createTimeTrigger.d.ts +13 -0
- package/dist/@types/ci/cloud/uploadContainer.d.ts +71 -0
- package/dist/@types/ci/cloud/uploadFile.d.ts +9 -0
- package/dist/@types/ci/cloud/uploadFunction.d.ts +13 -0
- package/dist/@types/ci/cloud/utils.d.ts +17 -0
- package/dist/@types/ci/code-analyse.d.ts +1 -1
- package/dist/@types/ci/getcompiler.d.ts +5 -0
- package/dist/@types/ci/index.d.ts +39 -0
- package/dist/@types/ci/project.d.ts +1 -47
- package/dist/@types/ci/utils/codeDenpendencyQualityChecker.d.ts +1 -1
- package/dist/@types/ci/utils/tools.d.ts +5 -0
- package/dist/@types/cli/cmdForDonutH5.d.ts +22 -0
- package/dist/@types/common/cloud-api/src/apis/tcb/tcb.apis.d.ts +180 -0
- package/dist/@types/common/cloud-api/src/transaction/contracts/account.contracts.d.ts +2 -0
- package/dist/@types/common/cloud-api/src/transaction/contracts/contracts.d.ts +9 -0
- package/dist/@types/common/cloud-api/src/transaction/contracts/lowcode.contracts.d.ts +3 -0
- package/dist/@types/common/cloud-api/src/transaction/contracts/tcb.contracts.d.ts +183 -0
- package/dist/@types/common/cloud-api/src/transaction/validations/account.validations.d.ts +2 -0
- package/dist/@types/common/cloud-api/src/transaction/validations/common.validations.d.ts +118 -0
- package/dist/@types/common/cloud-api/src/transaction/validations/lowcode.validations.d.ts +3 -0
- package/dist/@types/common/cloud-api/src/transaction/validations/tcb.validations.d.ts +188 -0
- package/dist/@types/common/cloud-api/src/transaction/validations/validations.d.ts +8 -0
- package/dist/@types/common/code-analyse/index.d.ts +371 -0
- package/dist/@types/config/compiletype.config.d.ts +17 -0
- package/dist/@types/config/config.d.ts +93 -0
- package/dist/@types/config/define.d.ts +5 -0
- package/dist/@types/config/url.config.d.ts +25 -0
- package/dist/@types/index.d.ts +27 -38
- package/dist/@types/modules/corecompiler/baseCompiler.d.ts +132 -0
- package/dist/@types/modules/corecompiler/original/analyse/partial.d.ts +25 -0
- package/dist/@types/modules/corecompiler/original/compile/common.d.ts +17 -0
- package/dist/@types/modules/corecompiler/original/compile/game.d.ts +5 -0
- package/dist/@types/modules/corecompiler/original/compile/gamePlugin.d.ts +8 -0
- package/dist/@types/modules/corecompiler/original/compile/handler/js.d.ts +15 -0
- package/dist/@types/modules/corecompiler/original/compile/handler/mpjson.d.ts +10 -0
- package/dist/@types/modules/corecompiler/original/compile/handler/wxml.d.ts +9 -0
- package/dist/@types/modules/corecompiler/original/compile/handler/wxss.d.ts +10 -0
- package/dist/@types/modules/corecompiler/original/compile/index.d.ts +5 -0
- package/dist/@types/modules/corecompiler/original/compile/miniprogram.d.ts +5 -0
- package/dist/@types/modules/corecompiler/original/compile/miniprogramPlugin.d.ts +8 -0
- package/dist/@types/modules/corecompiler/original/index.d.ts +51 -0
- package/dist/@types/modules/corecompiler/original/js/index.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/js/minifyjs.d.ts +16 -0
- package/dist/@types/modules/corecompiler/original/js/minifyjsAfterWrap.d.ts +12 -0
- package/dist/@types/modules/corecompiler/original/json/app/appJSON.d.ts +6 -0
- package/dist/@types/modules/corecompiler/original/json/app/checkAppFields.d.ts +43 -0
- package/dist/@types/modules/corecompiler/original/json/app/extJSON.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/json/app/index.d.ts +4 -0
- package/dist/@types/modules/corecompiler/original/json/common.d.ts +19 -0
- package/dist/@types/modules/corecompiler/original/json/game.d.ts +4 -0
- package/dist/@types/modules/corecompiler/original/json/page/checkPageJSON.d.ts +6 -0
- package/dist/@types/modules/corecompiler/original/json/page/getPageJSON.d.ts +14 -0
- package/dist/@types/modules/corecompiler/original/json/plugin/plugin.d.ts +12 -0
- package/dist/@types/modules/corecompiler/original/json/plugin/pluginPage.d.ts +9 -0
- package/dist/@types/modules/corecompiler/original/json/projectconfig.d.ts +2 -0
- package/dist/@types/modules/corecompiler/original/json/reactiveCache.d.ts +24 -0
- package/dist/@types/modules/corecompiler/original/json/signaturejson.d.ts +21 -0
- package/dist/@types/modules/corecompiler/original/json/sitemap.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/json/theme.d.ts +18 -0
- package/dist/@types/modules/corecompiler/original/npm/packnpm.d.ts +13 -0
- package/dist/@types/modules/corecompiler/original/protect/uglifyfilenames.d.ts +9 -0
- package/dist/@types/modules/corecompiler/original/utils/env.d.ts +7 -0
- package/dist/@types/modules/corecompiler/original/validate/appjson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/extjson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/gamejson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/gamepluginjson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/pagejson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/pluginjson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/pluginpagejson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/projectconfig.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/schemaValidate.d.ts +8 -0
- package/dist/@types/modules/corecompiler/original/validate/signaturejson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/validate/sitemapjson.d.ts +3 -0
- package/dist/@types/modules/corecompiler/original/workerThread/childprocessManager.d.ts +16 -0
- package/dist/@types/modules/corecompiler/original/workerThread/index.d.ts +4 -0
- package/dist/@types/modules/corecompiler/original/workerThread/task/compilejs.d.ts +43 -0
- package/dist/@types/modules/corecompiler/original/workerThread/task/compilewxss.d.ts +21 -0
- package/dist/@types/modules/corecompiler/original/workerThread/task/index.d.ts +2 -0
- package/dist/@types/modules/corecompiler/original/workerThread/task/minifywxml.d.ts +46 -0
- package/dist/@types/modules/corecompiler/original/workerThread/workerManager.d.ts +19 -0
- package/dist/@types/modules/corecompiler/originalCompiler.d.ts +106 -0
- package/dist/@types/modules/corecompiler/summer/graph/appconf.d.ts +36 -0
- package/dist/@types/modules/corecompiler/summer/graph/appgraph.d.ts +24 -0
- package/dist/@types/modules/corecompiler/summer/graph/baseconf.d.ts +16 -0
- package/dist/@types/modules/corecompiler/summer/graph/basegraph.d.ts +88 -0
- package/dist/@types/modules/corecompiler/summer/graph/gameconf.d.ts +20 -0
- package/dist/@types/modules/corecompiler/summer/graph/gamegraph.d.ts +24 -0
- package/dist/@types/modules/corecompiler/summer/graph/gamepluginconf.d.ts +11 -0
- package/dist/@types/modules/corecompiler/summer/graph/gameplugingraph.d.ts +23 -0
- package/dist/@types/modules/corecompiler/summer/graph/pluginconf.d.ts +21 -0
- package/dist/@types/modules/corecompiler/summer/graph/plugingraph.d.ts +23 -0
- package/dist/@types/modules/corecompiler/summer/graph/util.d.ts +2 -0
- package/dist/@types/modules/corecompiler/summer/index.d.ts +3 -0
- package/dist/@types/modules/corecompiler/summer/initPlugin.d.ts +2 -0
- package/dist/@types/modules/corecompiler/summer/module.d.ts +44 -0
- package/dist/@types/modules/corecompiler/summer/persistCache.d.ts +13 -0
- package/dist/@types/modules/corecompiler/summer/pluginDriver.d.ts +45 -0
- package/dist/@types/modules/corecompiler/summer/pluginconfig.d.ts +4 -0
- package/dist/@types/modules/corecompiler/summer/plugins/base/es6module.d.ts +21 -0
- package/dist/@types/modules/corecompiler/summer/plugins/base/javascript.d.ts +3 -0
- package/dist/@types/modules/corecompiler/summer/plugins/base/swc.d.ts +6 -0
- package/dist/@types/modules/corecompiler/summer/plugins/base/wxss.d.ts +6 -0
- package/dist/@types/modules/corecompiler/summer/plugins/enhance.d.ts +4 -0
- package/dist/@types/modules/corecompiler/summer/plugins/less.d.ts +5 -0
- package/dist/@types/modules/corecompiler/summer/plugins/minifywxml.d.ts +5 -0
- package/dist/@types/modules/corecompiler/summer/plugins/sass.d.ts +3 -0
- package/dist/@types/modules/corecompiler/summer/plugins/terser.d.ts +2 -0
- package/dist/@types/modules/corecompiler/summer/plugins/typescript.d.ts +2 -0
- package/dist/@types/modules/corecompiler/summer/plugins/worklet.d.ts +4 -0
- package/dist/@types/modules/corecompiler/summer/resolver.d.ts +29 -0
- package/dist/@types/modules/corecompiler/summer/summer.d.ts +40 -0
- package/dist/@types/modules/corecompiler/summer/utils/ensureArray.d.ts +1 -0
- package/dist/@types/modules/corecompiler/summer/utils/inputsourcemap.d.ts +2 -0
- package/dist/@types/modules/corecompiler/summer/worker.d.ts +16 -0
- package/dist/@types/modules/corecompiler/summerCompiler.d.ts +121 -0
- package/dist/@types/modules/createSummer.d.ts +18 -0
- package/dist/@types/modules/fullcompiler/app/app.d.ts +74 -0
- package/dist/@types/modules/fullcompiler/app/contactandlaunch/originalcontactbase64.d.ts +2 -0
- package/dist/@types/modules/fullcompiler/app/contactandlaunch/originallaunchbase64.d.ts +2 -0
- package/dist/@types/modules/fullcompiler/app/contactandlaunch/updateContactForSubpkg.d.ts +2 -0
- package/dist/@types/modules/fullcompiler/app/contactandlaunch/updatecontactandlaunch.d.ts +3 -0
- package/dist/@types/modules/fullcompiler/appservice/appservice.config.d.ts +4 -0
- package/dist/@types/modules/fullcompiler/appservice/generatecode.utils.d.ts +12 -0
- package/dist/@types/modules/fullcompiler/appservice/getappservice.d.ts +9 -0
- package/dist/@types/modules/fullcompiler/appservice/getcompiledjs.d.ts +32 -0
- package/dist/@types/modules/fullcompiler/appservice/getjsfile.d.ts +18 -0
- package/dist/@types/modules/fullcompiler/appservice/getmainpkgsortedjsfiles.d.ts +12 -0
- package/dist/@types/modules/fullcompiler/appservice/getsubpackage.d.ts +7 -0
- package/dist/@types/modules/fullcompiler/appservice/getsubpkgsortedjsfiles.d.ts +10 -0
- package/dist/@types/modules/fullcompiler/appservice/getwxappcode.d.ts +13 -0
- package/dist/@types/modules/fullcompiler/config/apperrcode.config.d.ts +48 -0
- package/dist/@types/modules/fullcompiler/filerules.d.ts +5 -0
- package/dist/@types/modules/fullcompiler/getallrawfiles.d.ts +11 -0
- package/dist/@types/modules/fullcompiler/getallwmltohtmlmap.d.ts +11 -0
- package/dist/@types/modules/fullcompiler/index.d.ts +28 -0
- package/dist/@types/modules/fullcompiler/pageframe/getsubpackage.d.ts +10 -0
- package/dist/@types/modules/fullcompiler/pageframe/getwxappcode.d.ts +13 -0
- package/dist/@types/modules/fullcompiler/pageframe/index.d.ts +10 -0
- package/dist/@types/modules/fullcompiler/trans/transwxmltojs.d.ts +11 -0
- package/dist/@types/modules/fullcompiler/trans/transwxsstojs.d.ts +21 -0
- package/dist/@types/modules/fullcompiler/trans/wcc/index.d.ts +2 -0
- package/dist/@types/modules/fullcompiler/trans/wxml/compilewxml.d.ts +18 -0
- package/dist/@types/modules/fullcompiler/trans/wxss/compilewxss.d.ts +11 -0
- package/dist/@types/modules/fullcompiler/utils/appconfig/appconfig.d.ts +12 -0
- package/dist/@types/modules/fullcompiler/utils/appconfig/appjson.d.ts +3 -0
- package/dist/@types/modules/fullcompiler/utils/appconfig/checkcustomcomponent.d.ts +14 -0
- package/dist/@types/modules/fullcompiler/utils/appconfig/pagejson.d.ts +3 -0
- package/dist/@types/modules/fullcompiler/utils/appconfig/wxappcodejson.d.ts +3 -0
- package/dist/@types/modules/fullcompiler/utils/filewriter/index.d.ts +14 -0
- package/dist/@types/modules/fullcompiler/utils/handleerror/errorconfig.d.ts +9 -0
- package/dist/@types/modules/fullcompiler/utils/handleerror/handleError.d.ts +3 -0
- package/dist/@types/modules/fullcompiler/utils/handleerror/parseerr.d.ts +41 -0
- package/dist/@types/modules/fullcompiler/utils/index.d.ts +4 -0
- package/dist/@types/modules/fullcompiler/utils/taskmanager.d.ts +23 -0
- package/dist/@types/modules/fullcompiler/utils/theme/index.d.ts +40 -0
- package/dist/@types/modules/fullcompiler/utils/tools.d.ts +15 -0
- package/dist/@types/modules/fullcompiler/utils/transformsourcemap.d.ts +1 -0
- package/dist/@types/modules/index.d.ts +52 -0
- package/dist/@types/modules/nativecompiler/android/adb.d.ts +7 -0
- package/dist/@types/modules/nativecompiler/android/device.d.ts +15 -0
- package/dist/@types/modules/nativecompiler/android/index.d.ts +17 -0
- package/dist/@types/modules/nativecompiler/android/projectconfig.d.ts +11 -0
- package/dist/@types/modules/nativecompiler/index.d.ts +32 -0
- package/dist/@types/modules/nativecompiler/ios/buildCloud.d.ts +56 -0
- package/dist/@types/modules/nativecompiler/ios/device.d.ts +24 -0
- package/dist/@types/modules/nativecompiler/ios/index.d.ts +52 -0
- package/dist/@types/modules/nativecompiler/ios/projectconfig.d.ts +3 -0
- package/dist/@types/modules/nativecompiler/nativeCompiler.d.ts +40 -0
- package/dist/@types/modules/nativecompiler/nativeEntryProcess.d.ts +1 -0
- package/dist/@types/modules/precompiler/conditioncompile/compiler/base.d.ts +27 -0
- package/dist/@types/modules/precompiler/conditioncompile/compiler/json.d.ts +10 -0
- package/dist/@types/modules/precompiler/conditioncompile/compiler/macro.d.ts +44 -0
- package/dist/@types/modules/precompiler/conditioncompile/compiler/plant.d.ts +10 -0
- package/dist/@types/modules/precompiler/conditioncompile/define.d.ts +18 -0
- package/dist/@types/modules/precompiler/conditioncompile/index.d.ts +24 -0
- package/dist/@types/modules/precompiler/index.d.ts +10 -0
- package/dist/@types/project/advance/precompileProject.d.ts +35 -0
- package/dist/@types/project/advance/reactiveProject.d.ts +39 -0
- package/dist/@types/project/baseProject.d.ts +74 -0
- package/dist/@types/project/ciProject.d.ts +25 -0
- package/dist/@types/project/ciProjectWithMockBuffer.d.ts +11 -0
- package/dist/@types/project/devtoolsProject.d.ts +11 -0
- package/dist/@types/project/summerCPProject.d.ts +14 -0
- package/dist/@types/project/webProject.d.ts +10 -0
- package/dist/@types/types/ci.d.ts +182 -0
- package/dist/@types/types/core.d.ts +129 -0
- package/dist/@types/types/devtools.d.ts +220 -0
- package/dist/@types/types/index.d.ts +5 -169
- package/dist/@types/types/miniapp/index.d.ts +246 -0
- package/dist/@types/types/miniprogram-json/app.d.ts +26 -11
- package/dist/@types/types/miniprogram-json/index.d.ts +1 -0
- package/dist/@types/types/miniprogram-json/page.d.ts +5 -1
- package/dist/@types/types/miniprogram-json/plugin.d.ts +6 -1
- package/dist/@types/types/miniprogram-json/projectconfig.d.ts +6 -9
- package/dist/@types/types/summer.d.ts +161 -0
- package/dist/@types/utils/babel_helper.d.ts +7 -4
- package/dist/@types/utils/babel_plugin_worklet.d.ts +0 -1
- package/dist/@types/utils/codesign.d.ts +19 -0
- package/dist/@types/utils/common.d.ts +2 -4
- package/dist/@types/utils/cp.d.ts +3 -0
- package/dist/@types/utils/customError.d.ts +22 -0
- package/dist/@types/utils/download.d.ts +1 -0
- package/dist/@types/utils/env.d.ts +2 -0
- package/dist/@types/utils/expression.d.ts +61 -0
- package/dist/@types/utils/filerules.d.ts +0 -0
- package/dist/@types/utils/fs.d.ts +3 -3
- package/dist/@types/utils/fsagent.d.ts +9 -9
- package/dist/@types/utils/generateIpa.d.ts +2 -0
- package/dist/@types/utils/helper_util.d.ts +11 -0
- package/dist/@types/utils/interruptibletask.d.ts +4 -4
- package/dist/@types/utils/jsonlint.d.ts +2 -2
- package/dist/@types/utils/locales/locales.d.ts +18 -0
- package/dist/@types/utils/locales/zh.d.ts +18 -0
- package/dist/@types/utils/log.d.ts +13 -19
- package/dist/@types/utils/messageHub.d.ts +17 -0
- package/dist/@types/utils/miniapp-builder.d.ts +68 -0
- package/dist/@types/utils/miniappJson.d.ts +151 -0
- package/dist/@types/utils/packOptionsHelper.d.ts +17 -0
- package/dist/@types/utils/progressRecorder.d.ts +14 -0
- package/dist/@types/utils/request.d.ts +4 -4
- package/dist/@types/utils/signature.d.ts +13 -0
- package/dist/@types/utils/singletontask.d.ts +29 -0
- package/dist/@types/utils/subprocess/entryProcess.d.ts +7 -0
- package/dist/@types/utils/subprocess/processManager.d.ts +25 -0
- package/dist/@types/utils/swc_config.d.ts +3 -0
- package/dist/@types/utils/swc_helper.d.ts +11 -0
- package/dist/@types/utils/taskmanager.d.ts +22 -0
- package/dist/@types/utils/taskqueue.d.ts +0 -0
- package/dist/@types/utils/taskstatus.d.ts +2 -2
- package/dist/@types/utils/tools.d.ts +16 -1
- package/dist/@types/utils/waitable.d.ts +12 -0
- package/dist/@types/utils/wxapkg/pack.d.ts +7 -0
- package/dist/@types/utils/zip.d.ts +3 -0
- package/dist/ci/checkCodeQuality.js +1 -3
- package/dist/ci/cloud/cloudapi.js +1 -0
- package/dist/ci/cloud/createTimeTrigger.js +1 -0
- package/dist/ci/cloud/uploadContainer.js +1 -0
- package/dist/ci/cloud/uploadFile.js +1 -0
- package/dist/ci/cloud/uploadFunction.js +1 -0
- package/dist/ci/cloud/utils.js +1 -0
- package/dist/ci/code-analyse.js +1 -3
- package/dist/ci/cos-upload.js +1 -3
- package/dist/ci/getCompiledResult.js +1 -3
- package/dist/ci/getDevSourceMap.js +1 -3
- package/dist/ci/getLatestVersion.js +1 -3
- package/dist/ci/getcompiler.js +1 -0
- package/dist/ci/index.js +1 -0
- package/dist/ci/jsserver.js +1 -3
- package/dist/ci/preview.js +1 -3
- package/dist/ci/project.js +1 -3
- package/dist/ci/projectattr.js +1 -3
- package/dist/ci/upload.js +1 -3
- package/dist/ci/utils/codeDenpendencyQualityChecker.js +1 -3
- package/dist/ci/utils/filterUnusedFile.js +1 -3
- package/dist/ci/utils/pack.js +1 -3
- package/dist/ci/utils/packfile.js +1 -3
- package/dist/ci/utils/qualitycheckoption.js +1 -3
- package/dist/ci/utils/terminalQrcode.js +1 -3
- package/dist/ci/utils/tools.js +1 -0
- package/dist/cli/index.js +1 -0
- package/dist/common/cloud-api/index.js +279 -0
- package/dist/common/cloud-api/src/apis/apis.js +1 -0
- package/dist/common/cloud-api/src/apis/cdn/cdn.apis.js +1 -0
- package/dist/common/cloud-api/src/apis/cdn/index.js +1 -0
- package/dist/common/cloud-api/src/apis/flexdb/flexdb.apis.js +1 -0
- package/dist/common/cloud-api/src/apis/flexdb/index.js +1 -0
- package/dist/common/cloud-api/src/apis/scf/index.js +1 -0
- package/dist/common/cloud-api/src/apis/scf/scf.apis.js +1 -0
- package/dist/common/cloud-api/src/apis/ssl/index.js +1 -0
- package/dist/common/cloud-api/src/apis/ssl/ssl.apis.js +1 -0
- package/dist/common/cloud-api/src/apis/tcb/general.apis.js +1 -0
- package/dist/common/cloud-api/src/apis/tcb/index.js +1 -0
- package/dist/common/cloud-api/src/apis/tcb/tcb.apis.js +1 -0
- package/dist/common/cloud-api/src/index.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/account.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/cdn.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/factory.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/flexdb.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/lowcode.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/scf.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/ssl.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/contracts/tcb.contracts.js +1 -0
- package/dist/common/cloud-api/src/transaction/transactor.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/account.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/cdn.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/common.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/flexdb.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/lowcode.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/scf.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/ssl.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/tcb.validations.js +1 -0
- package/dist/common/cloud-api/src/transaction/validations/validations.js +1 -0
- package/dist/common/cloud-api/src/utils/common.js +1 -0
- package/dist/common/cloud-api/src/utils/validator.js +1 -0
- package/dist/common/code-analyse/index.js +2 -0
- package/dist/config/compiletype.config.js +1 -0
- package/dist/config/config.js +1 -0
- package/dist/config/define.js +1 -0
- package/dist/config/url.config.js +1 -0
- package/dist/index.js +1 -3
- package/dist/manifest.json +2 -2
- package/dist/modules/corecompiler/baseCompiler.js +1 -0
- package/dist/modules/corecompiler/original/analyse/partial.js +1 -0
- package/dist/modules/corecompiler/original/compile/common.js +1 -0
- package/dist/modules/corecompiler/original/compile/game.js +1 -0
- package/dist/modules/corecompiler/original/compile/gamePlugin.js +1 -0
- package/dist/modules/corecompiler/original/compile/handler/js.js +1 -0
- package/dist/modules/corecompiler/original/compile/handler/mpjson.js +1 -0
- package/dist/modules/corecompiler/original/compile/handler/wxml.js +1 -0
- package/dist/modules/corecompiler/original/compile/handler/wxss.js +1 -0
- package/dist/modules/corecompiler/original/compile/index.js +1 -0
- package/dist/modules/corecompiler/original/compile/miniprogram.js +1 -0
- package/dist/modules/corecompiler/original/compile/miniprogramPlugin.js +1 -0
- package/dist/modules/corecompiler/original/index.js +1 -0
- package/dist/modules/corecompiler/original/js/enhance.js +1 -0
- package/dist/modules/corecompiler/original/js/es6Transform.js +1 -0
- package/dist/modules/corecompiler/original/js/index.js +1 -0
- package/dist/modules/corecompiler/original/js/minifyjs.js +1 -0
- package/dist/modules/corecompiler/original/js/minifyjsAfterWrap.js +1 -0
- package/dist/modules/corecompiler/original/js/workletCompile.js +1 -0
- package/dist/modules/corecompiler/original/json/app/appJSON.js +1 -0
- package/dist/modules/corecompiler/original/json/app/checkAppFields.js +1 -0
- package/dist/modules/corecompiler/original/json/app/extJSON.js +1 -0
- package/dist/modules/corecompiler/original/json/app/index.js +1 -0
- package/dist/modules/corecompiler/original/json/common.js +1 -0
- package/dist/modules/corecompiler/original/json/game.js +1 -0
- package/dist/modules/corecompiler/original/json/page/checkPageJSON.js +1 -0
- package/dist/modules/corecompiler/original/json/page/getPageJSON.js +1 -0
- package/dist/modules/corecompiler/original/json/plugin/plugin.js +1 -0
- package/dist/modules/corecompiler/original/json/plugin/pluginPage.js +1 -0
- package/dist/modules/corecompiler/original/json/projectconfig.js +1 -0
- package/dist/modules/corecompiler/original/json/reactiveCache.js +1 -0
- package/dist/modules/corecompiler/original/json/signaturejson.js +1 -0
- package/dist/modules/corecompiler/original/json/sitemap.js +1 -0
- package/dist/modules/corecompiler/original/json/theme.js +1 -0
- package/dist/modules/corecompiler/original/npm/filterdeps.js +1 -0
- package/dist/modules/corecompiler/original/npm/packnpm.js +1 -0
- package/dist/modules/corecompiler/original/protect/fileFlatter.js +1 -0
- package/dist/modules/corecompiler/original/protect/uglifyfilenames.js +1 -0
- package/dist/modules/corecompiler/original/utils/env.js +1 -0
- package/dist/modules/corecompiler/original/utils/logger.js +1 -0
- package/dist/modules/corecompiler/original/validate/appjson.js +1 -0
- package/dist/modules/corecompiler/original/validate/extjson.js +1 -0
- package/dist/modules/corecompiler/original/validate/gamejson.js +1 -0
- package/dist/modules/corecompiler/original/validate/gamepluginjson.js +1 -0
- package/dist/modules/corecompiler/original/validate/pagejson.js +1 -0
- package/dist/modules/corecompiler/original/validate/pluginjson.js +1 -0
- package/dist/modules/corecompiler/original/validate/pluginpagejson.js +1 -0
- package/dist/modules/corecompiler/original/validate/projectconfig.js +1 -0
- package/dist/modules/corecompiler/original/validate/schemaValidate.js +1 -0
- package/dist/modules/corecompiler/original/validate/signaturejson.js +1 -0
- package/dist/modules/corecompiler/original/validate/sitemapjson.js +1 -0
- package/dist/modules/corecompiler/original/validate/validate.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/childprocess.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/childprocessManager.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/fork.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/index.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/task/compilejs.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/task/compilewxss.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/task/minifywxml.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/worker.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/workerManager.js +1 -0
- package/dist/modules/corecompiler/originalCompiler.js +1 -0
- package/dist/modules/corecompiler/summer/graph/appconf.js +1 -0
- package/dist/modules/corecompiler/summer/graph/appgraph.js +1 -0
- package/dist/modules/corecompiler/summer/graph/baseconf.js +1 -0
- package/dist/modules/corecompiler/summer/graph/basegraph.js +1 -0
- package/dist/modules/corecompiler/summer/graph/gameconf.js +1 -0
- package/dist/modules/corecompiler/summer/graph/gamegraph.js +1 -0
- package/dist/modules/corecompiler/summer/graph/gamepluginconf.js +1 -0
- package/dist/modules/corecompiler/summer/graph/gameplugingraph.js +1 -0
- package/dist/modules/corecompiler/summer/graph/pluginconf.js +1 -0
- package/dist/modules/corecompiler/summer/graph/plugingraph.js +1 -0
- package/dist/modules/corecompiler/summer/graph/util.js +1 -0
- package/dist/modules/corecompiler/summer/index.js +1 -0
- package/dist/modules/corecompiler/summer/initPlugin.js +1 -0
- package/dist/modules/corecompiler/summer/module.js +1 -0
- package/dist/modules/corecompiler/summer/persistCache.js +1 -0
- package/dist/modules/corecompiler/summer/pluginDriver.js +1 -0
- package/dist/modules/corecompiler/summer/pluginconfig.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/base/es6module.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/base/javascript.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/base/swc.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/base/wxss.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/enhance.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/index.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/less.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/minifywxml.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/sass.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/terser.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/typescript.js +1 -0
- package/dist/modules/corecompiler/summer/plugins/worklet.js +1 -0
- package/dist/modules/corecompiler/summer/resolver.js +1 -0
- package/dist/modules/corecompiler/summer/summer.js +1 -0
- package/dist/modules/corecompiler/summer/utils/async.js +1 -0
- package/dist/modules/corecompiler/summer/utils/ensureArray.js +1 -0
- package/dist/modules/corecompiler/summer/utils/inputsourcemap.js +1 -0
- package/dist/modules/corecompiler/summer/worker.js +1 -0
- package/dist/modules/corecompiler/summerCompiler.js +1 -0
- package/dist/modules/corecompiler/summerEntryProcess.js +1 -0
- package/dist/modules/createSummer.js +1 -0
- package/dist/modules/fullcompiler/app/app.js +1 -0
- package/dist/modules/fullcompiler/app/contactandlaunch/originalcontactbase64.js +1 -0
- package/dist/modules/fullcompiler/app/contactandlaunch/originallaunchbase64.js +1 -0
- package/dist/modules/fullcompiler/app/contactandlaunch/updateContactForSubpkg.js +1 -0
- package/dist/modules/fullcompiler/app/contactandlaunch/updatecontactandlaunch.js +1 -0
- package/dist/modules/fullcompiler/appservice/appservice.config.js +1 -0
- package/dist/modules/fullcompiler/appservice/generatecode.utils.js +1 -0
- package/dist/modules/fullcompiler/appservice/getappservice.js +1 -0
- package/dist/modules/fullcompiler/appservice/getcompiledjs.js +1 -0
- package/dist/modules/fullcompiler/appservice/getjsfile.js +1 -0
- package/dist/modules/fullcompiler/appservice/getmainpkgsortedjsfiles.js +1 -0
- package/dist/modules/fullcompiler/appservice/getsubpackage.js +1 -0
- package/dist/modules/fullcompiler/appservice/getsubpkgsortedjsfiles.js +1 -0
- package/dist/modules/fullcompiler/appservice/getwxappcode.js +1 -0
- package/dist/modules/fullcompiler/config/apperrcode.config.js +1 -0
- package/dist/modules/fullcompiler/filerules.js +1 -0
- package/dist/modules/fullcompiler/getallrawfiles.js +1 -0
- package/dist/modules/fullcompiler/getallwmltohtmlmap.js +1 -0
- package/dist/modules/fullcompiler/index.js +1 -0
- package/dist/modules/fullcompiler/pageframe/getsubpackage.js +1 -0
- package/dist/modules/fullcompiler/pageframe/getwxappcode.js +1 -0
- package/dist/modules/fullcompiler/pageframe/index.js +1 -0
- package/dist/modules/fullcompiler/trans/transwxmltojs.js +1 -0
- package/dist/modules/fullcompiler/trans/transwxsstojs.js +1 -0
- package/dist/modules/fullcompiler/trans/wcc/build/darwin_arm64/wcc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/darwin_arm64/wcsc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/darwin_x64/wcc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/darwin_x64/wcsc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/node_16.1.0_darwin_arm64_release/wcc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/node_16.1.0_darwin_arm64_release/wcsc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/node_16.1.0_darwin_x64_release/wcc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/node_16.1.0_darwin_x64_release/wcsc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/win32_ia32/wcc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/win32_ia32/wcsc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/win32_x64/wcc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/build/win32_x64/wcsc.node +0 -0
- package/dist/modules/fullcompiler/trans/wcc/index.js +1 -0
- package/dist/modules/fullcompiler/trans/wcc/lib/addonVersion.js +19 -0
- package/dist/modules/fullcompiler/trans/wcc/lib/index.js +4 -0
- package/dist/modules/fullcompiler/trans/wcc/lib/util.js +1134 -0
- package/dist/modules/fullcompiler/trans/wcc/lib/wcc.js +94 -0
- package/dist/modules/fullcompiler/trans/wcc/lib/wcsc.js +93 -0
- package/dist/modules/fullcompiler/trans/wxml/compilewxml.js +1 -0
- package/dist/modules/fullcompiler/trans/wxss/compilewxss.js +1 -0
- package/dist/modules/fullcompiler/utils/appconfig/appconfig.js +1 -0
- package/dist/modules/fullcompiler/utils/appconfig/appjson.js +1 -0
- package/dist/modules/fullcompiler/utils/appconfig/checkcustomcomponent.js +1 -0
- package/dist/modules/fullcompiler/utils/appconfig/pagejson.js +1 -0
- package/dist/modules/fullcompiler/utils/appconfig/wxappcodejson.js +1 -0
- package/dist/modules/fullcompiler/utils/filewriter/index.js +1 -0
- package/dist/modules/fullcompiler/utils/handleerror/errorconfig.js +1 -0
- package/dist/modules/fullcompiler/utils/handleerror/handleError.js +1 -0
- package/dist/modules/fullcompiler/utils/handleerror/parseerr.js +1 -0
- package/dist/modules/fullcompiler/utils/index.js +1 -0
- package/dist/modules/fullcompiler/utils/taskmanager.js +1 -0
- package/dist/modules/fullcompiler/utils/theme/index.js +1 -0
- package/dist/modules/fullcompiler/utils/tools.js +1 -0
- package/dist/modules/fullcompiler/utils/transformsourcemap.js +1 -0
- package/dist/modules/index.js +1 -0
- package/dist/modules/nativecompiler/android/adb.js +1 -0
- package/dist/modules/nativecompiler/android/device.js +1 -0
- package/dist/modules/nativecompiler/android/index.js +1 -0
- package/dist/modules/nativecompiler/android/projectconfig.js +1 -0
- package/dist/modules/nativecompiler/index.js +1 -0
- package/dist/modules/nativecompiler/ios/buildCloud.js +1 -0
- package/dist/modules/nativecompiler/ios/device.js +1 -0
- package/dist/modules/nativecompiler/ios/index.js +1 -0
- package/dist/modules/nativecompiler/ios/projectconfig.js +1 -0
- package/dist/modules/nativecompiler/nativeCompiler.js +1 -0
- package/dist/modules/nativecompiler/nativeEntryProcess.js +1 -0
- package/dist/modules/precompiler/conditioncompile/compiler/base.js +1 -0
- package/dist/modules/precompiler/conditioncompile/compiler/json.js +1 -0
- package/dist/modules/precompiler/conditioncompile/compiler/macro.js +1 -0
- package/dist/modules/precompiler/conditioncompile/compiler/plant.js +1 -0
- package/dist/modules/precompiler/conditioncompile/define.js +1 -0
- package/dist/modules/precompiler/conditioncompile/index.js +1 -0
- package/dist/modules/precompiler/index.js +1 -0
- package/dist/project/advance/precompileProject.js +1 -0
- package/dist/project/advance/reactiveProject.js +1 -0
- package/dist/project/baseProject.js +1 -0
- package/dist/project/ciProject.js +1 -0
- package/dist/project/ciProjectWithMockBuffer.js +1 -0
- package/dist/project/devtoolsProject.js +1 -0
- package/dist/project/summerCPProject.js +1 -0
- package/dist/project/webProject.js +1 -0
- package/dist/schema/dist/app.js +2221 -0
- package/dist/schema/dist/ext.js +1088 -0
- package/dist/schema/dist/game.js +211 -0
- package/dist/schema/dist/page.js +516 -0
- package/dist/schema/dist/plugin.js +53 -0
- package/dist/schema/dist/pluginpage.js +14 -0
- package/dist/schema/dist/projectconfig.js +655 -0
- package/dist/schema/dist/projectprivateconfig.js +371 -0
- package/dist/schema/dist/sitemap.js +53 -0
- package/dist/schema/dist/theme.js +20 -0
- package/dist/static/images/donut-icon1024x1024.png +0 -0
- package/dist/static/images/donut-icon120x120.png +0 -0
- package/dist/static/images/donut-icon152x152.png +0 -0
- package/dist/static/images/donut-icon167x167.png +0 -0
- package/dist/static/scripts/assetsCar/Assets.xcassets/AppIcon.appiconset/Contents.json +119 -0
- package/dist/static/scripts/assetsCar/Assets.xcassets/Contents.json +6 -0
- package/dist/static/scripts/assetsCar/Assets.xcassets/disconnect.imageset/Contents.json +21 -0
- package/dist/static/scripts/assetsCar/Assets.xcassets/disconnect.imageset/disconnect.png +0 -0
- package/dist/static/scripts/assetsCar/createAssetsCar +9 -0
- package/dist/static/scripts/checkXcodeEnv +18 -0
- package/dist/static/scripts/resignIpa +269 -0
- package/dist/types/ci.js +1 -0
- package/dist/types/core.js +1 -0
- package/dist/types/devtools.js +1 -0
- package/dist/types/index.js +1 -3
- package/dist/types/miniapp/index.js +1 -0
- package/dist/types/miniprogram-json/app.js +1 -3
- package/dist/types/miniprogram-json/base.js +1 -3
- package/dist/types/miniprogram-json/ext.js +1 -3
- package/dist/types/miniprogram-json/game.js +1 -3
- package/dist/types/miniprogram-json/index.js +1 -3
- package/dist/types/miniprogram-json/page.js +1 -3
- package/dist/types/miniprogram-json/plugin.js +1 -3
- package/dist/types/miniprogram-json/projectconfig.js +1 -3
- package/dist/types/miniprogram-json/sitemap.js +1 -3
- package/dist/types/miniprogram-json/theme.js +1 -3
- package/dist/types/summer.js +1 -0
- package/dist/utils/babel_helper.js +1 -3
- package/dist/utils/babel_plugin_worklet.js +1 -3
- package/dist/utils/babel_transform_plugin.js +1 -3
- package/dist/utils/cache.js +1 -3
- package/dist/utils/codesign.js +1 -0
- package/dist/utils/common.js +1 -3
- package/dist/utils/cp.js +1 -0
- package/dist/utils/customError.js +1 -0
- package/dist/utils/download.js +1 -0
- package/dist/utils/env.js +1 -0
- package/dist/utils/error.js +1 -3
- package/dist/utils/expression.js +1 -0
- package/dist/utils/filerules.js +1 -0
- package/dist/utils/fs.js +1 -3
- package/dist/utils/fsagent.js +1 -3
- package/dist/utils/generateIpa.js +1 -0
- package/dist/utils/glob.js +1 -3
- package/dist/utils/hackrequire/fs.js +1 -1
- package/dist/utils/hackrequire/module.js +1 -1
- package/dist/utils/helper_util.js +1 -0
- package/dist/utils/interruptibletask.js +1 -3
- package/dist/utils/jsonParse.js +1 -3
- package/dist/utils/jsonlint.js +1 -3
- package/dist/utils/locales/en.js +1 -3
- package/dist/utils/locales/fomatable_string.js +1 -3
- package/dist/utils/locales/locales.js +1 -3
- package/dist/utils/locales/zh.js +1 -3
- package/dist/utils/log.js +1 -3
- package/dist/utils/messageHub.js +1 -0
- package/dist/utils/miniapp-builder.js +1 -0
- package/dist/utils/miniappJson.js +1 -0
- package/dist/utils/packOptionsHelper.js +1 -0
- package/dist/utils/progressRecorder.js +1 -0
- package/dist/utils/report.js +1 -3
- package/dist/utils/request.js +1 -3
- package/dist/utils/sign.js +1 -3
- package/dist/utils/signature.js +1 -0
- package/dist/utils/singletontask.js +1 -0
- package/dist/utils/subprocess/entryProcess.js +1 -0
- package/dist/utils/subprocess/processManager.js +1 -0
- package/dist/utils/swc_config.js +1 -0
- package/dist/utils/swc_helper.js +1 -0
- package/dist/utils/taskmanager.js +1 -0
- package/dist/utils/taskqueue.js +1 -0
- package/dist/utils/taskstatus.js +1 -3
- package/dist/utils/tools.js +1 -3
- package/dist/utils/waitable.js +1 -0
- package/dist/utils/white_ext_list.js +1 -3
- package/dist/utils/wxapkg/pack.js +1 -0
- package/dist/utils/wxvpkgreader/wxvpkg/unpack/version0.js +1 -1
- package/dist/utils/wxvpkgreader/wxvpkg/unpack/version10.js +1 -1
- package/dist/utils/wxvpkgreader/wxvpkgreader.js +1 -1
- package/dist/utils/zip.js +1 -0
- package/dist/vendor/ios-deploy/ios-deploy +0 -0
- package/dist/vendor/swc_runtime/_apply_decorated_descriptor.js +1 -0
- package/dist/vendor/swc_runtime/_apply_decs_2203_r.js +1 -0
- package/dist/vendor/swc_runtime/_array_like_to_array.js +1 -0
- package/dist/vendor/swc_runtime/_array_with_holes.js +1 -0
- package/dist/vendor/swc_runtime/_array_without_holes.js +1 -0
- package/dist/vendor/swc_runtime/_assert_this_initialized.js +1 -0
- package/dist/vendor/swc_runtime/_async_generator.js +1 -0
- package/dist/vendor/swc_runtime/_async_generator_delegate.js +1 -0
- package/dist/vendor/swc_runtime/_async_iterator.js +1 -0
- package/dist/vendor/swc_runtime/_async_to_generator.js +1 -0
- package/dist/vendor/swc_runtime/_await_async_generator.js +1 -0
- package/dist/vendor/swc_runtime/_await_value.js +1 -0
- package/dist/vendor/swc_runtime/_check_private_redeclaration.js +1 -0
- package/dist/vendor/swc_runtime/_class_apply_descriptor_destructure.js +1 -0
- package/dist/vendor/swc_runtime/_class_apply_descriptor_get.js +1 -0
- package/dist/vendor/swc_runtime/_class_apply_descriptor_set.js +1 -0
- package/dist/vendor/swc_runtime/_class_apply_descriptor_update.js +1 -0
- package/dist/vendor/swc_runtime/_class_call_check.js +1 -0
- package/dist/vendor/swc_runtime/_class_check_private_static_access.js +1 -0
- package/dist/vendor/swc_runtime/_class_check_private_static_field_descriptor.js +1 -0
- package/dist/vendor/swc_runtime/_class_extract_field_descriptor.js +1 -0
- package/dist/vendor/swc_runtime/_class_name_tdz_error.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_destructure.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_get.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_init.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_loose_base.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_loose_key.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_set.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_field_update.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_method_get.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_method_init.js +1 -0
- package/dist/vendor/swc_runtime/_class_private_method_set.js +1 -0
- package/dist/vendor/swc_runtime/_class_static_private_field_destructure.js +1 -0
- package/dist/vendor/swc_runtime/_class_static_private_field_spec_get.js +1 -0
- package/dist/vendor/swc_runtime/_class_static_private_field_spec_set.js +1 -0
- package/dist/vendor/swc_runtime/_class_static_private_field_update.js +1 -0
- package/dist/vendor/swc_runtime/_class_static_private_method_get.js +1 -0
- package/dist/vendor/swc_runtime/_construct.js +1 -0
- package/dist/vendor/swc_runtime/_create_class.js +1 -0
- package/dist/vendor/swc_runtime/_create_for_of_iterator_helper_loose.js +1 -0
- package/dist/vendor/swc_runtime/_create_super.js +1 -0
- package/dist/vendor/swc_runtime/_decorate.js +1 -0
- package/dist/vendor/swc_runtime/_defaults.js +1 -0
- package/dist/vendor/swc_runtime/_define_enumerable_properties.js +1 -0
- package/dist/vendor/swc_runtime/_define_property.js +1 -0
- package/dist/vendor/swc_runtime/_dispose.js +1 -0
- package/dist/vendor/swc_runtime/_export_star.js +1 -0
- package/dist/vendor/swc_runtime/_extends.js +1 -0
- package/dist/vendor/swc_runtime/_get.js +1 -0
- package/dist/vendor/swc_runtime/_get_prototype_of.js +1 -0
- package/dist/vendor/swc_runtime/_identity.js +1 -0
- package/dist/vendor/swc_runtime/_inherits.js +1 -0
- package/dist/vendor/swc_runtime/_inherits_loose.js +1 -0
- package/dist/vendor/swc_runtime/_initializer_define_property.js +1 -0
- package/dist/vendor/swc_runtime/_initializer_warning_helper.js +1 -0
- package/dist/vendor/swc_runtime/_instanceof.js +1 -0
- package/dist/vendor/swc_runtime/_interop_require_default.js +1 -0
- package/dist/vendor/swc_runtime/_interop_require_wildcard.js +1 -0
- package/dist/vendor/swc_runtime/_is_native_function.js +1 -0
- package/dist/vendor/swc_runtime/_is_native_reflect_construct.js +1 -0
- package/dist/vendor/swc_runtime/_iterable_to_array.js +1 -0
- package/dist/vendor/swc_runtime/_iterable_to_array_limit.js +1 -0
- package/dist/vendor/swc_runtime/_iterable_to_array_limit_loose.js +1 -0
- package/dist/vendor/swc_runtime/_jsx.js +1 -0
- package/dist/vendor/swc_runtime/_new_arrow_check.js +1 -0
- package/dist/vendor/swc_runtime/_non_iterable_rest.js +1 -0
- package/dist/vendor/swc_runtime/_non_iterable_spread.js +1 -0
- package/dist/vendor/swc_runtime/_object_destructuring_empty.js +1 -0
- package/dist/vendor/swc_runtime/_object_spread.js +1 -0
- package/dist/vendor/swc_runtime/_object_spread_props.js +1 -0
- package/dist/vendor/swc_runtime/_object_without_properties.js +1 -0
- package/dist/vendor/swc_runtime/_object_without_properties_loose.js +1 -0
- package/dist/vendor/swc_runtime/_possible_constructor_return.js +1 -0
- package/dist/vendor/swc_runtime/_read_only_error.js +1 -0
- package/dist/vendor/swc_runtime/_set.js +1 -0
- package/dist/vendor/swc_runtime/_set_prototype_of.js +1 -0
- package/dist/vendor/swc_runtime/_skip_first_generator_next.js +1 -0
- package/dist/vendor/swc_runtime/_sliced_to_array.js +1 -0
- package/dist/vendor/swc_runtime/_sliced_to_array_loose.js +1 -0
- package/dist/vendor/swc_runtime/_super_prop_base.js +1 -0
- package/dist/vendor/swc_runtime/_tagged_template_literal.js +1 -0
- package/dist/vendor/swc_runtime/_tagged_template_literal_loose.js +1 -0
- package/dist/vendor/swc_runtime/_throw.js +1 -0
- package/dist/vendor/swc_runtime/_to_array.js +1 -0
- package/dist/vendor/swc_runtime/_to_consumable_array.js +1 -0
- package/dist/vendor/swc_runtime/_to_primitive.js +1 -0
- package/dist/vendor/swc_runtime/_to_property_key.js +1 -0
- package/dist/vendor/swc_runtime/_ts_decorate.js +1 -0
- package/dist/vendor/swc_runtime/_ts_generator.js +1 -0
- package/dist/vendor/swc_runtime/_ts_metadata.js +1 -0
- package/dist/vendor/swc_runtime/_ts_param.js +1 -0
- package/dist/vendor/swc_runtime/_ts_values.js +1 -0
- package/dist/vendor/swc_runtime/_type_of.js +1 -0
- package/dist/vendor/swc_runtime/_unsupported_iterable_to_array.js +1 -0
- package/dist/vendor/swc_runtime/_update.js +1 -0
- package/dist/vendor/swc_runtime/_using.js +1 -0
- package/dist/vendor/swc_runtime/_wrap_async_generator.js +1 -0
- package/dist/vendor/swc_runtime/_wrap_native_super.js +1 -0
- package/dist/vendor/swc_runtime/_write_only_error.js +1 -0
- package/dist/vendor/swc_runtime/index.js +1 -0
- package/package.json +46 -10
- package/dist/@types/cloud/cloudapi.d.ts +0 -7
- package/dist/@types/cloud/createTimeTrigger.d.ts +0 -13
- package/dist/@types/cloud/uploadContainer.d.ts +0 -71
- package/dist/@types/cloud/uploadFile.d.ts +0 -9
- package/dist/@types/cloud/uploadFunction.d.ts +0 -13
- package/dist/@types/cloud/utils.d.ts +0 -17
- package/dist/@types/config.d.ts +0 -78
- package/dist/@types/core/analyse/partial.d.ts +0 -25
- package/dist/@types/core/compile/common.d.ts +0 -17
- package/dist/@types/core/compile/game.d.ts +0 -5
- package/dist/@types/core/compile/game_plugin.d.ts +0 -8
- package/dist/@types/core/compile/handler/js.d.ts +0 -15
- package/dist/@types/core/compile/handler/mpjson.d.ts +0 -10
- package/dist/@types/core/compile/handler/wxml.d.ts +0 -9
- package/dist/@types/core/compile/handler/wxss.d.ts +0 -10
- package/dist/@types/core/compile/index.d.ts +0 -5
- package/dist/@types/core/compile/mini_program.d.ts +0 -5
- package/dist/@types/core/compile/mini_program_plugin.d.ts +0 -8
- package/dist/@types/core/js/index.d.ts +0 -3
- package/dist/@types/core/js/minifyjs.d.ts +0 -16
- package/dist/@types/core/js/minifyjs_after_wrap.d.ts +0 -12
- package/dist/@types/core/json/app/checkAppFields.d.ts +0 -42
- package/dist/@types/core/json/app/getAppJSON.d.ts +0 -10
- package/dist/@types/core/json/app/getExtJSON.d.ts +0 -5
- package/dist/@types/core/json/app/index.d.ts +0 -5
- package/dist/@types/core/json/common.d.ts +0 -20
- package/dist/@types/core/json/game.d.ts +0 -6
- package/dist/@types/core/json/page/checkPageJSON.d.ts +0 -6
- package/dist/@types/core/json/page/getPageJSON.d.ts +0 -10
- package/dist/@types/core/json/plugin/plugin.d.ts +0 -14
- package/dist/@types/core/json/plugin/plugin_page.d.ts +0 -9
- package/dist/@types/core/json/projectWithMockBuffer.d.ts +0 -14
- package/dist/@types/core/json/projectconfig.d.ts +0 -3
- package/dist/@types/core/json/reactiveCache.d.ts +0 -63
- package/dist/@types/core/json/signaturejson.d.ts +0 -21
- package/dist/@types/core/json/sitemap.d.ts +0 -5
- package/dist/@types/core/json/theme.d.ts +0 -20
- package/dist/@types/core/npm/packnpm.d.ts +0 -17
- package/dist/@types/core/protect/uglifyfilenames.d.ts +0 -9
- package/dist/@types/core/utils/env.d.ts +0 -6
- package/dist/@types/core/validate/appjson.d.ts +0 -3
- package/dist/@types/core/validate/extjson.d.ts +0 -3
- package/dist/@types/core/validate/gamejson.d.ts +0 -3
- package/dist/@types/core/validate/gamepluginjson.d.ts +0 -3
- package/dist/@types/core/validate/pagejson.d.ts +0 -3
- package/dist/@types/core/validate/pluginjson.d.ts +0 -3
- package/dist/@types/core/validate/pluginpagejson.d.ts +0 -3
- package/dist/@types/core/validate/projectconfig.d.ts +0 -3
- package/dist/@types/core/validate/schemaValidate.d.ts +0 -7
- package/dist/@types/core/validate/signaturejson.d.ts +0 -3
- package/dist/@types/core/validate/sitemapjson.d.ts +0 -3
- package/dist/@types/core/worker_thread/childprocess_manager.d.ts +0 -16
- package/dist/@types/core/worker_thread/index.d.ts +0 -4
- package/dist/@types/core/worker_thread/task/compilejs.d.ts +0 -43
- package/dist/@types/core/worker_thread/task/compilewxss.d.ts +0 -21
- package/dist/@types/core/worker_thread/task/index.d.ts +0 -28
- package/dist/@types/core/worker_thread/task/minifywxml.d.ts +0 -46
- package/dist/@types/core/worker_thread/worker_manager.d.ts +0 -19
- package/dist/@types/core.d.ts +0 -26
- package/dist/@types/summer/ci.d.ts +0 -3
- package/dist/@types/summer/devtool.d.ts +0 -254
- package/dist/@types/summer/error.d.ts +0 -22
- package/dist/@types/summer/graph/appconf.d.ts +0 -25
- package/dist/@types/summer/graph/appgraph.d.ts +0 -25
- package/dist/@types/summer/graph/basegraph.d.ts +0 -64
- package/dist/@types/summer/graph/pluginconf.d.ts +0 -19
- package/dist/@types/summer/graph/plugingraph.d.ts +0 -22
- package/dist/@types/summer/index.d.ts +0 -1
- package/dist/@types/summer/initPlugin.d.ts +0 -2
- package/dist/@types/summer/module.d.ts +0 -42
- package/dist/@types/summer/persist_cache.d.ts +0 -12
- package/dist/@types/summer/plugin_driver.d.ts +0 -45
- package/dist/@types/summer/plugins/base/es6module.d.ts +0 -18
- package/dist/@types/summer/plugins/base/javascript.d.ts +0 -3
- package/dist/@types/summer/plugins/base/wxss.d.ts +0 -6
- package/dist/@types/summer/plugins/enhance.d.ts +0 -4
- package/dist/@types/summer/plugins/less.d.ts +0 -5
- package/dist/@types/summer/plugins/minifywxml.d.ts +0 -5
- package/dist/@types/summer/plugins/sass.d.ts +0 -3
- package/dist/@types/summer/plugins/terser.d.ts +0 -2
- package/dist/@types/summer/plugins/typescript.d.ts +0 -2
- package/dist/@types/summer/plugins/worklet.d.ts +0 -4
- package/dist/@types/summer/project.d.ts +0 -47
- package/dist/@types/summer/recorder.d.ts +0 -12
- package/dist/@types/summer/resolver.d.ts +0 -28
- package/dist/@types/summer/summer.d.ts +0 -32
- package/dist/@types/summer/types.d.ts +0 -164
- package/dist/@types/summer/utils/ensureArray.d.ts +0 -1
- package/dist/@types/summer/worker.d.ts +0 -16
- package/dist/@types/utils/url_config.d.ts +0 -19
- package/dist/@types/vendor/cloud-api/src/apis/tcb/tcb.apis.d.ts +0 -162
- package/dist/@types/vendor/cloud-api/src/transaction/contracts/contracts.d.ts +0 -7
- package/dist/@types/vendor/cloud-api/src/transaction/contracts/tcb.contracts.d.ts +0 -165
- package/dist/@types/vendor/cloud-api/src/transaction/validations/common.validations.d.ts +0 -106
- package/dist/@types/vendor/cloud-api/src/transaction/validations/tcb.validations.d.ts +0 -170
- package/dist/@types/vendor/cloud-api/src/transaction/validations/validations.d.ts +0 -6
- package/dist/@types/vendor/code-analyse/index.d.ts +0 -374
- package/dist/cli.js +0 -3
- package/dist/cloud/cloudapi.js +0 -3
- package/dist/cloud/createTimeTrigger.js +0 -3
- package/dist/cloud/uploadContainer.js +0 -3
- package/dist/cloud/uploadFile.js +0 -3
- package/dist/cloud/uploadFunction.js +0 -3
- package/dist/cloud/utils.js +0 -3
- package/dist/config.js +0 -3
- package/dist/core/analyse/partial.js +0 -3
- package/dist/core/compile/common.js +0 -3
- package/dist/core/compile/game.js +0 -3
- package/dist/core/compile/game_plugin.js +0 -3
- package/dist/core/compile/handler/js.js +0 -3
- package/dist/core/compile/handler/mpjson.js +0 -3
- package/dist/core/compile/handler/wxml.js +0 -3
- package/dist/core/compile/handler/wxss.js +0 -3
- package/dist/core/compile/index.js +0 -3
- package/dist/core/compile/mini_program.js +0 -3
- package/dist/core/compile/mini_program_plugin.js +0 -3
- package/dist/core/js/enhance.js +0 -1
- package/dist/core/js/es6_transform.js +0 -1
- package/dist/core/js/index.js +0 -1
- package/dist/core/js/minifyjs.js +0 -1
- package/dist/core/js/minifyjs_after_wrap.js +0 -1
- package/dist/core/js/workletCompile.js +0 -1
- package/dist/core/json/app/checkAppFields.js +0 -3
- package/dist/core/json/app/getAppJSON.js +0 -3
- package/dist/core/json/app/getExtJSON.js +0 -3
- package/dist/core/json/app/index.js +0 -3
- package/dist/core/json/common.js +0 -3
- package/dist/core/json/game.js +0 -3
- package/dist/core/json/page/checkPageJSON.js +0 -3
- package/dist/core/json/page/getPageJSON.js +0 -3
- package/dist/core/json/plugin/plugin.js +0 -3
- package/dist/core/json/plugin/plugin_page.js +0 -3
- package/dist/core/json/projectWithMockBuffer.js +0 -3
- package/dist/core/json/projectconfig.js +0 -3
- package/dist/core/json/reactiveCache.js +0 -3
- package/dist/core/json/signaturejson.js +0 -3
- package/dist/core/json/sitemap.js +0 -3
- package/dist/core/json/theme.js +0 -3
- package/dist/core/npm/filterdeps.js +0 -3
- package/dist/core/npm/packnpm.js +0 -3
- package/dist/core/protect/file_flatter.js +0 -3
- package/dist/core/protect/uglifyfilenames.js +0 -3
- package/dist/core/utils/env.js +0 -3
- package/dist/core/utils/logger.js +0 -3
- package/dist/core/validate/appjson.js +0 -1
- package/dist/core/validate/extjson.js +0 -1
- package/dist/core/validate/gamejson.js +0 -1
- package/dist/core/validate/gamepluginjson.js +0 -1
- package/dist/core/validate/pagejson.js +0 -1
- package/dist/core/validate/pluginjson.js +0 -1
- package/dist/core/validate/pluginpagejson.js +0 -1
- package/dist/core/validate/projectconfig.js +0 -1
- package/dist/core/validate/schemaValidate.js +0 -1
- package/dist/core/validate/signaturejson.js +0 -1
- package/dist/core/validate/sitemapjson.js +0 -1
- package/dist/core/validate/validate.js +0 -1
- package/dist/core/worker_thread/childprocess.js +0 -1
- package/dist/core/worker_thread/childprocess_manager.js +0 -1
- package/dist/core/worker_thread/fork.js +0 -1
- package/dist/core/worker_thread/index.js +0 -1
- package/dist/core/worker_thread/task/compilejs.js +0 -1
- package/dist/core/worker_thread/task/compilewxss.js +0 -1
- package/dist/core/worker_thread/task/minifywxml.js +0 -1
- package/dist/core/worker_thread/worker.js +0 -1
- package/dist/core/worker_thread/worker_manager.js +0 -1
- package/dist/core.js +0 -3
- package/dist/summer/ci.js +0 -3
- package/dist/summer/devtool.js +0 -3
- package/dist/summer/entry_process.js +0 -1
- package/dist/summer/error.js +0 -3
- package/dist/summer/graph/appconf.js +0 -3
- package/dist/summer/graph/appgraph.js +0 -3
- package/dist/summer/graph/basegraph.js +0 -3
- package/dist/summer/graph/pluginconf.js +0 -3
- package/dist/summer/graph/plugingraph.js +0 -3
- package/dist/summer/index.js +0 -3
- package/dist/summer/initPlugin.js +0 -3
- package/dist/summer/module.js +0 -3
- package/dist/summer/persist_cache.js +0 -3
- package/dist/summer/plugin_driver.js +0 -3
- package/dist/summer/plugins/base/es6module.js +0 -1
- package/dist/summer/plugins/base/javascript.js +0 -1
- package/dist/summer/plugins/base/wxss.js +0 -1
- package/dist/summer/plugins/enhance.js +0 -1
- package/dist/summer/plugins/index.js +0 -1
- package/dist/summer/plugins/less.js +0 -1
- package/dist/summer/plugins/minifywxml.js +0 -1
- package/dist/summer/plugins/sass.js +0 -1
- package/dist/summer/plugins/terser.js +0 -1
- package/dist/summer/plugins/typescript.js +0 -1
- package/dist/summer/plugins/worklet.js +0 -1
- package/dist/summer/project.js +0 -3
- package/dist/summer/recorder.js +0 -3
- package/dist/summer/resolver.js +0 -3
- package/dist/summer/summer.js +0 -3
- package/dist/summer/types.js +0 -3
- package/dist/summer/utils/async.js +0 -3
- package/dist/summer/utils/ensureArray.js +0 -3
- package/dist/summer/worker.js +0 -3
- package/dist/utils/url_config.js +0 -3
- package/dist/vendor/cloud-api/index.js +0 -2
- package/dist/vendor/cloud-api/src/apis/apis.js +0 -3
- package/dist/vendor/cloud-api/src/apis/cdn/cdn.apis.js +0 -3
- package/dist/vendor/cloud-api/src/apis/cdn/index.js +0 -3
- package/dist/vendor/cloud-api/src/apis/flexdb/flexdb.apis.js +0 -3
- package/dist/vendor/cloud-api/src/apis/flexdb/index.js +0 -3
- package/dist/vendor/cloud-api/src/apis/scf/index.js +0 -3
- package/dist/vendor/cloud-api/src/apis/scf/scf.apis.js +0 -3
- package/dist/vendor/cloud-api/src/apis/ssl/index.js +0 -3
- package/dist/vendor/cloud-api/src/apis/ssl/ssl.apis.js +0 -3
- package/dist/vendor/cloud-api/src/apis/tcb/general.apis.js +0 -3
- package/dist/vendor/cloud-api/src/apis/tcb/index.js +0 -3
- package/dist/vendor/cloud-api/src/apis/tcb/tcb.apis.js +0 -3
- package/dist/vendor/cloud-api/src/index.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/cdn.contracts.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/contracts.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/factory.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/flexdb.contracts.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/scf.contracts.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/ssl.contracts.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/contracts/tcb.contracts.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/transactor.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/cdn.validations.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/common.validations.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/flexdb.validations.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/scf.validations.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/ssl.validations.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/tcb.validations.js +0 -3
- package/dist/vendor/cloud-api/src/transaction/validations/validations.js +0 -3
- package/dist/vendor/cloud-api/src/utils/common.js +0 -3
- package/dist/vendor/cloud-api/src/utils/validator.js +0 -3
- package/dist/vendor/code-analyse/index.js +0 -2
- package/dist/vendor/schema/dist/app.js +0 -618
- package/dist/vendor/schema/dist/ext.js +0 -862
- package/dist/vendor/schema/dist/game.js +0 -211
- package/dist/vendor/schema/dist/page.js +0 -313
- package/dist/vendor/schema/dist/plugin.js +0 -41
- package/dist/vendor/schema/dist/pluginpage.js +0 -14
- package/dist/vendor/schema/dist/projectconfig.js +0 -474
- package/dist/vendor/schema/dist/projectprivateconfig.js +0 -358
- package/dist/vendor/schema/dist/sitemap.js +0 -53
- package/dist/vendor/schema/dist/theme.js +0 -20
- /package/dist/@types/{cli.d.ts → cli/index.d.ts} +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/apis.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/cdn/cdn.apis.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/cdn/index.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/flexdb/flexdb.apis.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/flexdb/index.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/scf/index.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/scf/scf.apis.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/ssl/index.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/ssl/ssl.apis.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/tcb/general.apis.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/apis/tcb/index.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/index.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/contracts/cdn.contracts.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/contracts/factory.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/contracts/flexdb.contracts.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/contracts/scf.contracts.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/contracts/ssl.contracts.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/transactor.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/validations/cdn.validations.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/validations/flexdb.validations.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/validations/scf.validations.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/transaction/validations/ssl.validations.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/utils/common.d.ts +0 -0
- /package/dist/@types/{vendor → common}/cloud-api/src/utils/validator.d.ts +0 -0
- /package/dist/@types/{core → modules/corecompiler/original}/js/enhance.d.ts +0 -0
- /package/dist/@types/{core/js/es6_transform.d.ts → modules/corecompiler/original/js/es6Transform.d.ts} +0 -0
- /package/dist/@types/{core → modules/corecompiler/original}/js/generateMap.d.ts +0 -0
- /package/dist/@types/{core → modules/corecompiler/original}/js/workletCompile.d.ts +0 -0
- /package/dist/@types/{core → modules/corecompiler/original}/npm/filterdeps.d.ts +0 -0
- /package/dist/@types/{core/protect/file_flatter.d.ts → modules/corecompiler/original/protect/fileFlatter.d.ts} +0 -0
- /package/dist/@types/{core → modules/corecompiler/original}/utils/logger.d.ts +0 -0
- /package/dist/@types/{core → modules/corecompiler/original}/validate/validate.d.ts +0 -0
- /package/dist/@types/{core/worker_thread → modules/corecompiler/original/workerThread}/childprocess.d.ts +0 -0
- /package/dist/@types/{core/worker_thread → modules/corecompiler/original/workerThread}/config.d.ts +0 -0
- /package/dist/@types/{core/worker_thread → modules/corecompiler/original/workerThread}/fork.d.ts +0 -0
- /package/dist/@types/{core/worker_thread → modules/corecompiler/original/workerThread}/task/call_func.d.ts +0 -0
- /package/dist/@types/{core/worker_thread → modules/corecompiler/original/workerThread}/task/func.d.ts +0 -0
- /package/dist/@types/{core/worker_thread → modules/corecompiler/original/workerThread}/worker.d.ts +0 -0
- /package/dist/@types/{summer → modules/corecompiler/summer}/plugins/index.d.ts +0 -0
- /package/dist/@types/{summer → modules/corecompiler/summer}/utils/async.d.ts +0 -0
- /package/dist/@types/{summer/entry_process.d.ts → modules/corecompiler/summerEntryProcess.d.ts} +0 -0
- /package/dist/{schema → @types/schema}/dist/index.d.ts +0 -0
- /package/dist/{core → modules/corecompiler/original}/js/generateMap.js +0 -0
- /package/dist/{core/worker_thread → modules/corecompiler/original/workerThread}/config.js +0 -0
- /package/dist/{core/worker_thread → modules/corecompiler/original/workerThread}/task/call_func.js +0 -0
- /package/dist/{core/worker_thread → modules/corecompiler/original/workerThread}/task/func.js +0 -0
- /package/dist/{core/worker_thread → modules/corecompiler/original/workerThread}/task/index.js +0 -0
- /package/dist/{vendor/schema → schema}/dist/index.js +0 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-misused-promises */
|
|
2
|
+
const util = require('./util');
|
|
3
|
+
const path = require('path');
|
|
4
|
+
|
|
5
|
+
let wcc;
|
|
6
|
+
|
|
7
|
+
function loadWccAddon() {
|
|
8
|
+
if (wcc) return;
|
|
9
|
+
const { getAddonRelativePath } = require('./addonVersion');
|
|
10
|
+
const relaPath = getAddonRelativePath('wcc');
|
|
11
|
+
wcc = require(relaPath);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const { fs } = util;
|
|
15
|
+
|
|
16
|
+
exports = async function (options) {
|
|
17
|
+
loadWccAddon();
|
|
18
|
+
|
|
19
|
+
if (!options) throw Error('options is required');
|
|
20
|
+
|
|
21
|
+
const lazyload = !!options.lazyloadConfig;
|
|
22
|
+
|
|
23
|
+
options = Object.assign(
|
|
24
|
+
{
|
|
25
|
+
files: [],
|
|
26
|
+
contents: [],
|
|
27
|
+
replaceContent: {},
|
|
28
|
+
verbose: false,
|
|
29
|
+
debug: false,
|
|
30
|
+
debugWXS: false,
|
|
31
|
+
showNewTree: false,
|
|
32
|
+
isPlugin: false,
|
|
33
|
+
addTestAttre: false,
|
|
34
|
+
independent: false,
|
|
35
|
+
genfuncname: '$gwx',
|
|
36
|
+
isCut: false,
|
|
37
|
+
cwd: process.cwd,
|
|
38
|
+
debug: false,
|
|
39
|
+
lazyload,
|
|
40
|
+
lazyloadConfig: '',
|
|
41
|
+
},
|
|
42
|
+
options,
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
return new Promise(async (resolve, reject) => {
|
|
46
|
+
// 获取文件内容
|
|
47
|
+
if (!options.contents.length) {
|
|
48
|
+
const tasks = options.files.map((file) => {
|
|
49
|
+
if (typeof options.replaceContent[file] === 'string') {
|
|
50
|
+
return options.replaceContent[file];
|
|
51
|
+
}
|
|
52
|
+
return fs.readFile(path.resolve(options.cwd, file), 'utf8');
|
|
53
|
+
});
|
|
54
|
+
options.contents = await Promise.all(tasks) || [];
|
|
55
|
+
}
|
|
56
|
+
// console.log('wcc get files', Date.now() - st, options.contents)
|
|
57
|
+
let result;
|
|
58
|
+
try {
|
|
59
|
+
result = wcc(options);
|
|
60
|
+
} catch (errmsg) {
|
|
61
|
+
reject(new Error(errmsg));
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// console.log('wcc get compile', Date.now() - st)
|
|
66
|
+
if (options.output) {
|
|
67
|
+
const output = path.resolve(options.cwd, options.output);
|
|
68
|
+
const dir = path.dirname(output);
|
|
69
|
+
if (lazyload) {
|
|
70
|
+
// lazyload 为 true时,wcc 返回值是个对象, 需要序列化一下
|
|
71
|
+
result = JSON.stringify(result);
|
|
72
|
+
}
|
|
73
|
+
try {
|
|
74
|
+
await fs.stat(dir);
|
|
75
|
+
} catch (e) {
|
|
76
|
+
await fs.mkdir(dir, {
|
|
77
|
+
recursive: true,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
await fs.writeFile(output, result, 'utf8');
|
|
81
|
+
}
|
|
82
|
+
// console.log('wcc get output', Date.now() - st)
|
|
83
|
+
resolve(result);
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
Object.defineProperty(exports, 'version', {
|
|
88
|
+
get() {
|
|
89
|
+
loadWccAddon();
|
|
90
|
+
return wcc.version;
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
module.exports = exports;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
const util = require('./util');
|
|
2
|
+
const path = require('path');
|
|
3
|
+
const { fs } = util;
|
|
4
|
+
|
|
5
|
+
let wcsc;
|
|
6
|
+
|
|
7
|
+
function loadWcscAddon() {
|
|
8
|
+
if (wcsc) return;
|
|
9
|
+
const { getAddonRelativePath } = require('./addonVersion');
|
|
10
|
+
const relaPath = getAddonRelativePath('wcsc');
|
|
11
|
+
wcsc = require(relaPath);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
function tranWcscResultToObject(resultStr) {
|
|
15
|
+
const resultArr = resultStr.split('=');
|
|
16
|
+
const result = {};
|
|
17
|
+
for (let i = 0, len = resultArr.length; i < len && resultArr[i + 1]; i += 2) {
|
|
18
|
+
result[resultArr[i]] = resultArr[i + 1];
|
|
19
|
+
}
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports = async function (options) {
|
|
24
|
+
loadWcscAddon();
|
|
25
|
+
|
|
26
|
+
if (!options) throw Error('options is required');
|
|
27
|
+
|
|
28
|
+
// avoid undefined or null
|
|
29
|
+
if (typeof options.subPackage !== 'string') {
|
|
30
|
+
delete options.subPackage;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
if (typeof options.lazyload !== 'boolean') {
|
|
34
|
+
delete options.lazyload;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
options = Object.assign(
|
|
38
|
+
{
|
|
39
|
+
files: [],
|
|
40
|
+
contents: [],
|
|
41
|
+
pageCount: 0,
|
|
42
|
+
cwd: process.cwd,
|
|
43
|
+
replaceContent: {},
|
|
44
|
+
debug: false,
|
|
45
|
+
classPrefix: '',
|
|
46
|
+
lazyload: false,
|
|
47
|
+
},
|
|
48
|
+
options,
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
if (!options.contents.length) {
|
|
52
|
+
const tasks = options.files.map((file) => {
|
|
53
|
+
if (typeof options.replaceContent[file] === 'string') {
|
|
54
|
+
return options.replaceContent[file];
|
|
55
|
+
}
|
|
56
|
+
return fs.readFile(path.resolve(options.cwd, file), 'utf8');
|
|
57
|
+
});
|
|
58
|
+
options.contents = await Promise.all(tasks) || [];
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
let wccResult;
|
|
62
|
+
try {
|
|
63
|
+
wccResult = wcsc(options);
|
|
64
|
+
} catch (errmsg) {
|
|
65
|
+
throw new Error(errmsg);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
const result = options.lazyload ? wccResult : tranWcscResultToObject(wccResult);
|
|
69
|
+
|
|
70
|
+
if (options.output) {
|
|
71
|
+
const output = path.resolve(options.cwd, options.output);
|
|
72
|
+
const dir = path.dirname(output);
|
|
73
|
+
try {
|
|
74
|
+
await fs.stat(dir);
|
|
75
|
+
} catch (e) {
|
|
76
|
+
await fs.mkdir(dir, {
|
|
77
|
+
recursive: true,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
await fs.writeFile(output, JSON.stringify(result, null, 2), 'utf8');
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
return result;
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
Object.defineProperty(exports, 'version', {
|
|
87
|
+
get() {
|
|
88
|
+
loadWcscAddon();
|
|
89
|
+
return wcsc.version;
|
|
90
|
+
},
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
module.exports = exports;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.compileWxml=void 0;const tslib_1=require("tslib"),index_1=tslib_1.__importDefault(require("../wcc/index")),wccnode=index_1.default.wcc;async function compileWxml(e){return compileUseWCCNode(e)}async function compileUseWCCNode(e){var o;const{files:i,configSplit:n,cwd:c,configContent:l,isCut:t,genfuncName:s,hasWxs:r=!0,isPlugin:u,replaceContent:d={}}=e,m=Date.now(),p=await wccnode({files:i,debugWXS:r,debug:!0,genfuncname:s,isPlugin:u,isCut:t,wxmlCompileConfig:l,wxmlCompileConfigSplit:n,replaceContent:d,cwd:c});return(null===(o=process.env)||void 0===o?void 0:o.isDevtools)&&console.warn("[wcc-node] compile cost:",Date.now()-m),{code:p,name:s}}exports.compileWxml=compileWxml;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.compileWxss=void 0;const tslib_1=require("tslib"),index_1=tslib_1.__importDefault(require("../wcc/index")),wcscnode=index_1.default.wcsc;async function compileWxss(e){const{files:s}=e;let{pageCount:o}=e;1===s.length&&s[0].includes("app.wxss")&&(o=1);return compileUseWCSCNode(Object.assign(Object.assign({},e),{pageCount:o}))}async function compileUseWCSCNode(e){var s;const o=Date.now(),c=await wcscnode(Object.assign(Object.assign({},e),{debug:!0}));return(null===(s=process.env)||void 0===s?void 0:s.isDevtools)&&console.warn("[wcsc-node] compile cost:",Date.now()-o),c}exports.compileWxss=compileWxss;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const tslib_1=require("tslib"),theme_1=require("../theme"),tools=tslib_1.__importStar(require("../tools")),pagejson_1=tslib_1.__importDefault(require("./pagejson")),appjson_1=tslib_1.__importDefault(require("./appjson")),path=require("path"),_=require("lodash");async function mergeThemeJSON(e){var a;const{project:t,isDarkMode:n,themeLocation:i,themeJSON:o,appConfig:s}=e,r=path.join(t.projectPath,t.miniprogramRoot||""),{windowConfigRules:g,tabbarRules:c,tabbarListItemRules:p}=(0,theme_1.checkThemeRules)(r);(0,theme_1.checkVariables)({isDarkMode:n,themeLocation:i,themeJSON:o,filePath:"app.json or ext.json",windowConfig:s.global.window,rules:g,keyPrefix:'["window"]',isPlugin:!1});for(const e in s.page){const a=e.replace(/\.html$/,"");(0,theme_1.checkVariables)({isDarkMode:n,themeLocation:i,themeJSON:o,filePath:a+".json",windowConfig:s.page[e].window||{},rules:g,keyPrefix:"",isPlugin:!1})}if(s.tabBar){(0,theme_1.checkVariables)({isDarkMode:n,themeLocation:i,themeJSON:o,filePath:"app.json or ext.json",windowConfig:s.tabBar||{},rules:c,keyPrefix:'["tabBar"]',isPlugin:!1});for(let e=0;e<(null===(a=s.tabBar)||void 0===a?void 0:a.list.length);e++)(0,theme_1.checkVariables)({isDarkMode:n,themeLocation:i,themeJSON:o,filePath:"app.json or ext.json",windowConfig:s.tabBar.list[e],rules:p,keyPrefix:`["tabBar"]["list"][${e}]`,isPlugin:!1})}}function getAppConfigJSON(e,a){return{pages:e.pages||[],resizable:!!e.resizable,subPackages:e.subPackages,debug:!!e.debug,widgets:e.widgets||[],customClose:!!e.customClose,workers:e.workers||"",cloud:!!e.cloud,global:{window:Object.assign(Object.assign({},(0,theme_1.getDefaultWindowConfig)(e.darkmode&&a)),e.window)},page:{},networkTimeout:Object.assign({request:6e4,uploadFile:6e4,connectSocket:6e4,downloadFile:6e4},e.networkTimeout),ext:e.ext||{},extAppid:e.extAppid||"",plugins:e.plugins||{},mainPlugins:Object.assign({},e.plugins),preloadRule:e.preloadRule,permission:e.permission,requiredBackgroundModes:e.requiredBackgroundModes,functionalPages:e.functionalPages,style:e.style,useExtendedLib:e.useExtendedLib||{},supportedMaterials:e.supportedMaterials||[],usingShopPlugin:e.usingShopPlugin||void 0,embeddedAppIdList:e.embeddedAppIdList,halfPage:e.halfPage,resolveAlias:e.resolveAlias,renderer:e.renderer,enablePassiveEvent:e.enablePassiveEvent,debugOptions:e.debugOptions,__warning__:e.__warning__||""}}async function checkAppConfig(e,a,t){const n=await(0,appjson_1.default)(e,a),i=getAppConfigJSON(n,t),o=e=>{e.__warning__&&(i.__warning__&&(i.__warning__+="、"),i.__warning__+=""+e.__warning__)},{pages:s}=i;i.entryPagePath=n.entryPagePath?n.entryPagePath+".html":s[0]+".html";for(const t of s){const n=await(0,pagejson_1.default)(e,a,""+t)||{};o(n);const{singlePage:s}=n,r=tslib_1.__rest(n,["singlePage"]);i.page[t+".html"]={window:r||{},singlePage:s,renderer:n.renderer}}if(i.subPackages){let t={};for(const n of i.subPackages){for(const t of n.pages){const s=path.posix.join(n.root,t),r=await(0,pagejson_1.default)(e,a,""+s)||{};o(r);const{singlePage:g}=r,c=tslib_1.__rest(r,["singlePage"]);i.page[s+".html"]={window:c||{},singlePage:g,renderer:r.renderer}}t=Object.assign(Object.assign({},t),n.plugins)}i.plugins=Object.assign(Object.assign({},i.plugins),t)}i.page=Object.assign({},i.page);const r=Object.assign({},n.tabBar),g=[].concat(r.list||[]),c=[];for(const e of g){const a=Object.assign({},e);a.pagePath+=".html",c.push(a)}r.list=c,i.tabBar=r,n.darkmode&&(i.supportDarkmode=!0);let p={};const{themeLocation:l}=n;return void 0!==l&&""!==l.trim().replace(/^\.\//,"")&&(p=await a.checkThemeJSON({themeLocation:l})),await mergeThemeJSON({project:e,summerCompiler:a,themeJSON:p,themeLocation:l,isDarkMode:!(!n.darkmode||!t),appConfig:i}),i}let appConfigCache=null;async function checkLightAppConfig(e,a,t=!0){let n;return appConfigCache?n=appConfigCache:(n=await checkAppConfig(e,a,!1),appConfigCache=n),t?_.cloneDeep(n):n}let appDarkConfigCache=null;async function checkDarkmodeAppConfig(e,a,t=!0){let n;return appDarkConfigCache?n=appDarkConfigCache:(n=await checkAppConfig(e,a,!0),appDarkConfigCache=n),t?_.cloneDeep(n):n}const getAppConfig=async(e,a,t=!0)=>{const n=await checkLightAppConfig(e,a,t);return t?_.cloneDeep(n):n},checkIsInSubPackage=async(e,a,t)=>{const n=await getAppConfig(e,a,!1);return tools.checkIsInSubPackage(n,t)},DealSubPackages=e=>{if(Array.isArray(e.subPackages||e.subpackages)&&Array.isArray(e.pages)){const a=_.cloneDeep(e);return(a.subPackages||a.subpackages).forEach(e=>{const t=[];e.pages.forEach(n=>{const i=path.join(e.root,n);t.push(i),a.pages.includes(i)||a.pages.push(i)}),e.pages=t}),a}return e};module.exports={checkLightAppConfig:checkLightAppConfig,checkDarkmodeAppConfig:checkDarkmodeAppConfig,getAppConfig:getAppConfig,checkIsInSubPackage:checkIsInSubPackage,DealSubPackages:DealSubPackages};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const _=require("lodash");async function getCompiledAppJSON(e,t){try{const e=await t.getAppJSON();return _.cloneDeep(e)}catch(e){throw console.log("getCompiledAppJSON error:",e),e}}exports.default=getCompiledAppJSON;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCustomComponentsConfig=exports.getFileListJustInPack=exports.getWxssCompileConfig=exports.getWxmlCompileConfig=void 0;const tslib_1=require("tslib"),tools_1=require("../../../../utils/tools"),packOptionsHelper_1=tslib_1.__importDefault(require("../../../../utils/packOptionsHelper")),pagejson_1=tslib_1.__importDefault(require("./pagejson")),path=require("path"),friendlyPathMake=(t,o)=>path.posix.normalize(path.join(t,o).replace(/^\/+/,"")).replace(/\\/g,"/"),trailing=(t,o)=>t.endsWith(o)?t:t+o;async function getWxmlCompileConfig(t,o,e,n){let s=[],i=0;const a=await getCustomComponentsConfig(t,o,e);for(const t in a){const o=a[t];if(!o)continue;if(!n&&o.config||n&&!o.config||n&&o.config&&n.root!==o.config.root)continue;const{pageJSON:e}=o;if(e&&(e.usingComponents||e.componentGenerics)){s.push(`./${t}.wxml`);const o=Object.assign(Object.assign({},e.usingComponents),e.componentGenerics);i++,s.push(Object.keys(o).length),s=s.concat(Object.keys(o))}}return s.unshift(i),s}async function getWxssCompileConfig(t,o,e,n){return await getFileListJustInPack(t,o,e,n)}async function getFileListJustInPack(t,o,e,n){const s=await getCustomComponentsConfig(t,o,e),i=[];for(const t in s){const o=s[t];n?o.config&&o.config.root===n.root&&i.push(t):o.config||i.push(t)}return[...i]}async function getCustomComponentsConfig(t,o,e){const n=await getAllJSON(t,o);if(e.pages){const t=new Set(n);for(const o of e.pages)t.has(o+".json")||n.push(o+".json")}const s=e.subPackages||e.subpackages;if(Array.isArray(s))for(const t of s)if(t&&"string"==typeof t.root&&Array.isArray(t.pages))for(const o of t.pages){const e=new Set(n),s=(i=t.root,a=String(o),path.posix.normalize(path.join(i,a).replace(/^\/+/,"")).replace(/\\/g,"/"));e.has(s+".json")||n.push(s+".json")}var i,a;const r={};for(const s of n){const n=s.replace(/\.json$/,"");if("app"===(0,tools_1.normalizePath)(n))continue;const i=await(0,pagejson_1.default)(t,o,n);if(i.usingComponents||i.componentGenerics||!0===i.component){const t=findSubpackageForFile(n,e);r[n]={config:t,file:s,pageJSON:i}}}return r}async function getAllJSON(t,o){let e=[];return e=await o.getAllPageAndComponent(),packOptionsHelper_1.default.updateState(t),e=packOptionsHelper_1.default.filter(e.map(t=>t+".json")),e}exports.getWxmlCompileConfig=getWxmlCompileConfig,exports.getWxssCompileConfig=getWxssCompileConfig,exports.getFileListJustInPack=getFileListJustInPack,exports.getCustomComponentsConfig=getCustomComponentsConfig;const findSubpackageForFile=(t,o)=>{let e;const n=o.subPackages||o.subpackages;if(Array.isArray(n))for(const o of n)if(o&&"string"==typeof o.root&&t.startsWith((s=o.root,i="/",s.endsWith(i)?s:s+i))){e=o;break}var s,i;return e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),lodash_1=tslib_1.__importDefault(require("lodash"));async function getCompiledPageJSON(e,t,l){const o=await t.getPageJSON(l);return lodash_1.default.cloneDeep(o)}exports.default=getCompiledPageJSON;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),tools_1=require("../../../../utils/tools"),pagejson_1=tslib_1.__importDefault(require("./pagejson")),_=require("lodash"),appConfigHelper=require("./appconfig");async function getWXAppCodeJSON(e,n,o){const i=await appConfigHelper.getAppConfig(e,n,!1),s=(0,tools_1.checkIsInSubPackage)(i,o),t=await(0,pagejson_1.default)(e,n,o);if(t.usingComponents&&Object.keys(t.usingComponents).length>0){const e={};for(const n in t.usingComponents){const o=t.usingComponents[n]||"";i.plugins||(null==s?void 0:s.plugins)?e[n]=o.replace(/^plugin:\/\/([^/]*)\/(.*)/,(e,n,o,t,p)=>{var l,u;const r=(null===(l=i.plugins)||void 0===l?void 0:l[n])||(null===(u=null==s?void 0:s.plugins)||void 0===u?void 0:u[n]);return r?`plugin://${r.provider}/${o}`:p}):e[n]=o}t.usingComponents=e}return _.cloneDeep(t)}exports.default=getWXAppCodeJSON;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),fs_extra_1=tslib_1.__importDefault(require("fs-extra"));class FileWriter{constructor(t){if(this.projectPath="",this.dist="",this.projectPath=t.projectPath||"",this.dist=t.dist,fs_extra_1.default.ensureDirSync(this.dist),!0===t.clearDist&&fs_extra_1.default.emptyDirSync(this.dist),!fs_extra_1.default.existsSync(this.projectPath))throw new Error("目标地址不存在")}getFinalPath(t){return path_1.default.join(this.dist,t)}writeFile(t,e){const i=this.getFinalPath(t);fs_extra_1.default.ensureDirSync(path_1.default.dirname(i)),fs_extra_1.default.writeFileSync(i,e)}copyFile(t,e=""){const i=path_1.default.join(this.projectPath,t),r=this.getFinalPath(path_1.default.join(e,t));fs_extra_1.default.ensureDirSync(path_1.default.dirname(r)),fs_extra_1.default.copyFileSync(i,r)}}exports.default=FileWriter;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.errorPrefix=void 0,exports.errorPrefix={COMPONENT_FOR_DEVELOPER:"For developer:",WXML_RUNTIME_ERROR:"WXMLRT",WXML_RUNTIME_ERROR_REG:/^WXMLRT_[^:]*:/,WXML_PLUGIN_RUNTIME_ERROR_REG:/^WXMLRT_\$gwx_(wx[0-9a-zA-Z]{16}):/,WXS_RUNTIME_ERROR:"WXSRT:",WEBVIEW_ERROR:"WEBVIEW_ERROR",CODE_ERROR:"CODE_ERROR"};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.handleError=void 0;const apperrcode_config_1=require("../../config/apperrcode.config"),tools_1=require("../../../../utils/tools"),parseErr=require("./parseerr"),errorTpl="\n <p>{{error}}</p>\n";function displayInConsole(e){var r;const o=`\n\n${e.title?`title: ${e.title}\n`:""}${e.file?`file: ${e.file}\n`:""}${e.msg?`msg: ${e.msg} \n`:""}${e.message?e.message:""}`;null===(r=(0,tools_1.getTerm)())||void 0===r||r.error.red(o)}async function handleError(e,r,o,s=!0){let n;if(o.code===apperrcode_config_1.appErrCode.TRANS_WXML_JS_ERR?n=await parseErr.parseWxmlErr(e,r,o.msgForConsole):o.code===apperrcode_config_1.appErrCode.TRANS_WXSS_JS_ERR&&(n=await parseErr.parseWxssErr(e,r,o)),n){const e=errorTpl.replace("{{error}}",(n.title?""+n.title:"")+(n.file?"in File: "+n.file:"")+(n.msg?`<pre style="white-space:pre-wrap; font-family: monospace;">${n.msg.replace(/</g,"<").replace(/>/g,">")}</pre>`:"")+(o.message?`<p>${o.message}</p>`:""));if(s){const r=unescape(decodeURI(encodeURIComponent(e)));return displayInConsole(n),r}}else if(s){const e=unescape(decodeURI(o.message));return displayInConsole(o),e}return o.msg}exports.handleError=handleError;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const tslib_1=require("tslib"),locales_1=tslib_1.__importDefault(require("../../../../utils/locales/locales")),errorconfig_1=require("./errorconfig"),path=require("path"),babelCodeFrame=require("babel-code-frame"),jsonlint=require("../../../../utils/jsonlint"),jsonParse=jsonlint.parser;function getErrLine(r,e,s,n){return`${n}\n${babelCodeFrame(r,e,s=s>0?s:1)}`}const parseWXMLRuntimeErr=async(r,e,s)=>{let n=s.message,i=[],t="",a="";n=n.replace(errorconfig_1.errorPrefix.WXML_RUNTIME_ERROR_REG,""),n=n.replace("WXMLRT:",""),i=n.split(":"),t=i[0];try{a=e.getFileString(r.miniprogramRoot,t)}catch(r){return{file:t,msg:n}}const l=parseInt(i[2],10),o=parseInt(i[3],10);if(-1!==l)try{const r=n.replace(`${i[0]}:${i[1]}:${i[2]}:${i[3]}:`,"");n=getErrLine(a,l,o,r)}catch(r){}return{file:t,msg:n}},parseJsonFileErr=r=>({file:r.file,msg:locales_1.default.config.PARSEERR_ENTRANCE_FILE_ERROR.format(r.file)}),parseJsonParseErr=(r,e)=>{const s=e.data||"";try{jsonParse.parse(s)}catch(n){try{const i=`Expecting ${n.expected}, got ${n.token}`;let t=getErrLine(s,n.line,n.loc.first_column,i);if(e.fileName){const a=getErrorFileInfo(r,{fileName:e.fileName,line:n.line,isPlugin:e.isPlugin});t=`${getErrLine(s,n.line,n.loc.first_column,i)}\n${a}`}return`${e.fileName}\n${t}`}catch(r){}}return`${e.fileName}\n${e.error}`},_parseWxmlErr=async(r,e,s,n)=>{const i=(s||"").trim().split(":");try{if(i.length){const s=parseInt(i[1].trim(),10),t=parseInt(i[2].trim(),10)-1,a=getErrorFileInfo(r,{fileName:i[0],line:s,isPlugin:n}),l=e.getFileString(r.miniprogramRoot,i[0]),o=`${getErrLine(l,s,t,i[3])}\n${a}`;return{file:i[0],msg:o}}}catch(r){}return{file:"",msg:s}},parsePluginWxmlErr=async(r,e,s)=>await _parseWxmlErr(r,e,s,!0),parseWxmlErr=async(r,e,s)=>await _parseWxmlErr(r,e,s,!1),getErrorFileInfo=(r,e)=>{const{fileName:s,line:n,isPlugin:i=!1}=e;if(!s)return"";const t=i?r.pluginRoot:r.miniprogramRoot;return`at files://${t?path.join(t,s):s.replace(/^\.\//,"")}#${n}`},_parseWxssErr=async(r,e,s,n)=>{let i="string"==typeof s?s:s.msgForConsole||"";i=i.split("\n")[0];try{if(/not found from/.test(i)){const r=i.match(/ERR:.+?`(.+)`.+?`(.+)`/);if(!r)return{file:"",msg:i};const e=r[1],s=r[2];return{file:s,msg:"File not found: "+e}}const s=i.match(/ERR:\s(.+)\((\d*):(\d*)\):\s*?(.+)/);if(!s)return{file:"",msg:i};const t=parseInt(s[2],10),a=parseInt(s[3],10)-1,l=s[4].replace(/`/g,'"'),o=s[1],c=e.getFileString(r.miniprogramRoot,o),p=getErrorFileInfo(r,{fileName:o,line:t,isPlugin:n}),m=`${getErrLine(c,t,a,l)}\n${p}`;return{file:o,reason:l,msg:m}}catch(r){return{file:"",msg:i}}},parsePluginWxssErr=async(r,e,s)=>await _parseWxssErr(r,e,s,!0),parseWxssErr=async(r,e,s)=>await _parseWxssErr(r,e,s,!1);module.exports={parseWXMLRuntimeErr:parseWXMLRuntimeErr,parseJsonFileErr:parseJsonFileErr,parseJsonParseErr:parseJsonParseErr,parsePluginWxmlErr:parsePluginWxmlErr,parsePluginWxssErr:parsePluginWxssErr,parseWxmlErr:parseWxmlErr,parseWxssErr:parseWxssErr};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.escapeByEval=exports.wrapCodeByEval=exports.flatSubPackage=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),lodash_1=tslib_1.__importDefault(require("lodash"));function flatSubPackage(e){const a=lodash_1.default.cloneDeep(e);if(a.subpackages||a.subPackages){a.pages||(a.pages=[]);return(a.subpackages||a.subPackages).forEach(e=>{e.pages.forEach(t=>{a.pages.push(path_1.default.join(e.root,t))})}),delete a.subpackages,delete a.subPackages,a}return!1}function wrapCodeByEval(e){return`;(window.eval)('${e}')`}function escapeByEval(code){const str="",evalStr=`eval('str = \`${code}\`')`;return eval(evalStr),str}exports.flatSubPackage=flatSubPackage,exports.wrapCodeByEval=wrapCodeByEval,exports.escapeByEval=escapeByEval;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";async function taskTool(t,s,i){const n=[],r=[];let e=0;const a=function(){if(e===i.length)return Promise.resolve();const h=i[e],o=Promise.resolve().then(()=>h());return n.push(o),r.push(o),e+=1,r.length>=t?Promise.race(r).then(()=>(r.splice(r.indexOf(o),1),a())).catch(t=>{if(s)throw t;return r.splice(r.indexOf(o),1),a()}):a()};return a().then(()=>Promise.all(n))}class TaskManager{constructor(t={}){this.breakWhenError=!0;const{poolLimit:s=50,breakWhenError:i=!0}=t;this._tasks=[],this.poolLimit=s,this.breakWhenError=i,this.isRuning=!1,this.taskPool=null}static get shared(){return this._instance||(this._instance=new this),this._instance}addTask(t,...s){this._tasks.push(t.bind(null,...s))}async runAllAsync(t){if(!this._tasks.length)return[];if(this.isRuning)return this.taskPool;let s;try{this.isRuning=!0,this.taskPool=taskTool(t||this.poolLimit,this.breakWhenError,this._tasks),s=await this.taskPool}catch(t){throw t}finally{this.isRuning=!1,this.taskPool=null,this._tasks=[]}return s}async runAllSerial(){const t=[];try{for(let s=0,i=this._tasks.length;s<i;s++){const i=await this._tasks[s]();t.push(i)}}catch(t){}finally{this._tasks=[]}return t}}module.exports=TaskManager;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.checkVariables=exports.getDefaultWindowConfig=exports.checkThemeRules=exports.checkTabbarListItemIconPath=void 0;const tslib_1=require("tslib"),locales_1=tslib_1.__importDefault(require("../../../../utils/locales/locales")),tools_1=require("../../../../utils/tools"),config_1=require("../../../../config/config"),path=require("path"),fs=require("fs"),TABBAR_ICON_WHITE_LIST=[".png",".jpg",".jpeg"];function checkTabbarListItemIconPath(e,o){const t=config_1.DefaultProjectAttr,{setting:r}=t,a=[];if(!fs.existsSync(o))return a.push(locales_1.default.config.NOT_FOUND.format(e)),a;const i=fs.statSync(o);if(i.isDirectory())return a.push(locales_1.default.config.JSON_CONTENT_SHOULD_NOT_BE.format(e,locales_1.default.config.DIRECTORY)),a;i.size>1024*r.MaxTabbarIconSize&&a.push(locales_1.default.config.EXCEED_LIMIT.format(e,r.MaxTabbarIconSize+"kb"));const l=path.extname(o);return TABBAR_ICON_WHITE_LIST.indexOf(l)<0&&a.push(locales_1.default.config.FILE_EXT_FORMAT_ERROR.format(e,TABBAR_ICON_WHITE_LIST.join("、"))),a}function throwError(e={msg:"",filePath:"app.json"}){const{msg:o,filePath:t}=e,r=new Error(o);throw r.code=config_1.JSON_CONTENT_ERR,r.path=t,r}function checkThemeRules(e){const o=(o,t)=>{const r=checkTabbarListItemIconPath(o,path.join(e,t));r.length>0&&throwError({msg:r.join("\n"),filePath:"app.json or ext.json"})};return{windowConfigRules:[{key:"navigationBarTextStyle",valids:["black","white"]},{key:"backgroundTextStyle",valids:["dark","light"]},{key:"navigationBarBackgroundColor",hexColor:!0},{key:"backgroundColor",hexColor:!0},{key:"backgroundColorTop",hexColor:!0},{key:"backgroundColorBottom",hexColor:!0}],tabbarRules:[{key:"selectedColor",hexColor:!0},{key:"color",hexColor:!0},{key:"backgroundColor",hexColor:!0},{key:"borderStyle",valids:["black","white"]}],tabbarListItemRules:[{key:"iconPath",validate:o},{key:"selectedIconPath",validate:o}]}}function getDefaultWindowConfig(e){return e?{backgroundColor:"#232323",backgroundTextStyle:"light"}:{backgroundColor:"#ffffff",backgroundTextStyle:"dark"}}function checkVariables(e){var o;const{windowConfig:t,themeLocation:r,filePath:a,isDarkMode:i,themeJSON:l,rules:c,keyPrefix:n,isPlugin:s=!1}=e,f=i?l.dark||{}:l.light||{},h=i?"dark":"light";for(const e of c)if((t[e.key]||"").startsWith("@")){const i=(null===(o=t[e.key])||void 0===o?void 0:o.slice(1))||"";if(i&&void 0===r){if(s)continue;throwError({msg:locales_1.default.config.THEME_JSON_SHOULD_EXIST.format(`${n}["${e.key}"]`,`"@${i}"`,'appJSON["themeLocation"]'),filePath:a})}const l=f[i];if(void 0===l){if(s)continue;throwError({msg:locales_1.default.config.JSON_VARIABLE_VALUE_NOT_FOUND.format(`${n}["${e.key}"]: "@${i}"`,`${r}["${h}"]`),filePath:a})}void 0!==l&&(Array.isArray(e.valids)&&e.valids.indexOf(l)<0&&throwError({msg:locales_1.default.config.THEME_JSON_VALUE_SHOULD_BE.format(`${r}["${h}"]["${i}"]`,`${a} ${n}["${e.key}"]`,""+JSON.stringify(e.valids)),filePath:r}),e.hexColor&&!(0,tools_1.isHexColor)(l)&&throwError({msg:locales_1.default.config.THEME_JSON_VALUE_SHOULD_BE.format(`${r}["${h}"]["${i}"]`,`${a} ${n}["${e.key}"]`,"hexColor"),filePath:r}),e.validate&&e.validate(`${n}["${e.key}"]`,l),t[e.key]=l)}}exports.checkTabbarListItemIconPath=checkTabbarListItemIconPath,exports.checkThemeRules=checkThemeRules,exports.getDefaultWindowConfig=getDefaultWindowConfig,exports.checkVariables=checkVariables;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getPluginByAliasOrProvider=exports.checkPluginByAliasOrProvider=exports.checkIsInSubPackage=void 0;const startWith=require("licia/startWith");function checkIsInSubPackage(r,i=""){let e;if(startWith(i,"plugin://")){const e=i.match(/^plugin:\/\/([^/]*)\/(.*)/),s=null==e?void 0:e[1];if(!s)return;const t=checkPluginByAliasOrProvider(r,s);return null==t?void 0:t.config}if(r.subPackages)for(let s=0,t=r.subPackages.length;s<t;s++){const t=r.subPackages[s];if(i.startsWith(t.root)){e=t;break}}return e}function checkPluginByAliasOrProvider(r,i){let e;if(r.subPackages)for(const s of r.subPackages)if(e=getPluginByAliasOrProvider(s.plugins,i),e)return Object.assign(Object.assign({},e),{config:s});if(e=getPluginByAliasOrProvider(r.plugins,i),e)return e}function getPluginByAliasOrProvider(r,i){if(r){const e=r[i];if(e)return{alias:i,provider:e.provider,version:e.version};for(const e in r){const s=r[e];if(s.provider===i)return{alias:e,provider:s.provider,version:s.version}}}}exports.checkIsInSubPackage=checkIsInSubPackage,exports.checkPluginByAliasOrProvider=checkPluginByAliasOrProvider,exports.getPluginByAliasOrProvider=getPluginByAliasOrProvider;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.transformSourceMapSources=void 0;const url=require("url"),path=require("path");function transformSourceMapSources(r=[]){return r?r.map(transformSourceFilePath):[]}function transformSourceFilePath(r){if(!r)return r;try{return new url.URL(r),r}catch(r){}return path.basename(r)}exports.transformSourceMapSources=transformSourceMapSources;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Builder=void 0;const index_1=require("./precompiler/index"),fullcompiler_1=require("./fullcompiler"),nativecompiler_1=require("./nativecompiler"),originalCompiler_1=require("./corecompiler/originalCompiler"),createSummer_1=require("./createSummer"),singletontask_1=require("../utils/singletontask"),tools_1=require("../utils/tools");class Builder{constructor(e,i){this.originProject=e,this._options=i}async getCompiler(){if((0,tools_1.checkIsUseCompilerPlugins)(this.originProject))return this.getSummerCompiler();if(!this._originalCompiler){const e=await this.getPreCompileProject();this._originalCompiler=new originalCompiler_1.OriginalCompiler(e),await this._originalCompiler.ready()}return this._originalCompiler}async getPreCompileProject(){if(!this._precompileProject){const{targetPlatform:e,targetPlatformDefines:i}=this._options,t=await this.getPreCompiler();this._precompileProject=await t.getPreCompileProject({targetPlatform:e,targetPlatformDefines:i,runEnv:"main process"}),await this._precompileProject.ready()}return this._precompileProject}async getPreCompiler(){if(!this._preCompiler){const{devtoolMessagehub:e}=this._options;this._preCompiler=new index_1.PreCompiler(this.originProject,e)}return this._preCompiler}async getSummerCompiler(){if(!this._summerCompiler){const{summerCompilerClass:e,projectInfo:i,cachePath:t="",devtoolMessagehub:r}=this._options,o=await this.getPreCompileProject();e?(this._summerCompiler=new e(o,t,i,r),await this._summerCompiler.ready()):this._summerCompiler=await(0,createSummer_1.getSummerCompiler)(o)}return this._summerCompiler}async ready(){return this._checkReadyTask||(this._checkReadyTask=new singletontask_1.SingletonTask(this.init.bind(this,this._options))),await this._checkReadyTask.getResult()}async init(){await this.getSummerCompiler(),await this.getFullCompiler(),await this.getNativeCompiler()}get summerCompiler(){return this._summerCompiler}get nativeCompiler(){return this._nativeCompiler}get fullCompiler(){return this._fullCompiler}async getNativeCompiler(){return this._nativeCompiler||await this.initNativeCompiler(this._options),this._nativeCompiler}async getFullCompiler(){if(!this._fullCompiler){const e=await this.getPreCompileProject(),i=await this.getSummerCompiler();this._fullCompiler=new fullcompiler_1.FullCompiler(e,{summerCompiler:i,outputDir:this._options.outputDir})}return this._fullCompiler}async initNativeCompiler(e){if("multiPlatform"!==this.originProject.projectArchitecture)return;const{miniappDirPath:i,devtoolsVersion:t,devtoolMessagehub:r}=e;this._nativeCompiler=new nativecompiler_1.NativeCompiler({project:this._precompileProject,devtoolMessagehub:r,devtoolsVersion:t,miniappDirPath:i}),await this._nativeCompiler.ready()}getPreCompileOptions(){var e,i;return{targetPlatform:null===(e=this._precompileProject)||void 0===e?void 0:e.targetPlatform,targetPlatformDefines:null===(i=this._precompileProject)||void 0===i?void 0:i.targetPlatformDefines}}async changePreCompileOptions(e){var i;(null===(i=this._precompileProject)||void 0===i?void 0:i.targetPlatform)!==e.targetPlatform&&(this._precompileProject.updateConditionCompileOptions(e),await new Promise(e=>setTimeout(e,500)))}async setLocale(e){(await this.getSummerCompiler()).setLocale(e)}destroy(){var e,i;(null===(e=this._summerCompiler)||void 0===e?void 0:e.isSummer)&&this._summerCompiler.destroy(),null===(i=this._nativeCompiler)||void 0===i||i.destroy()}}exports.Builder=Builder;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.tryRunAdbReverse=exports.getAdbPath=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),fs_extra_1=tslib_1.__importDefault(require("fs-extra")),child_process_1=require("child_process"),env_1=require("../../../utils/env");function getAdbPath(){const e=(0,env_1.getProcessEnv)();let t;return e.ANDROID_HOME?(t=path_1.default.join(e.ANDROID_HOME,"platform-tools","adb"),fs_extra_1.default.existsSync(t)||(t="adb")):t="adb","adb"}function tryRunAdbReverse(e){try{const{packagerPort:t,device:r,recorder:s}=e,o=getAdbPath(),n=["reverse","tcp:"+t,"tcp:"+t];r&&n.unshift("-s",r),s.progress("Connecting to the development server..."),console.log(`Running command "${o} ${n.join(" ")}"`),(0,child_process_1.execFileSync)(o,n,{stdio:"inherit",env:(0,env_1.getProcessEnv)()})}catch(e){throw new Error('Failed to connect to development server using "adb reverse": '+e.message)}}exports.getAdbPath=getAdbPath,exports.tryRunAdbReverse=tryRunAdbReverse;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.tryLaunchAppOnDevice=exports.tryInstantInstall=exports.tryBuild=exports.tryInstantBuild=exports.getCPU=exports.getAvailableCPUs=exports.getDevices=exports.tryLaunchEmulator=exports.getEmulators=void 0;const tslib_1=require("tslib"),os=tslib_1.__importStar(require("os")),child_process_1=require("child_process"),env_1=require("../../../utils/env"),adb_1=require("./adb"),cp_1=require("../../../utils/cp");function getElumatorCommand(){const t=(0,env_1.getProcessEnv)();return t.ANDROID_HOME?t.ANDROID_HOME+"/emulator/emulator":"emulator"}const getEmulators=()=>{try{const t=getElumatorCommand();return(0,child_process_1.execSync)(t+" -list-avds",{env:(0,env_1.getProcessEnv)()}).toString().split(os.EOL).filter(t=>""!==t).map(t=>({name:t,type:"simulator",attach:!1}))}catch(t){return[]}};exports.getEmulators=getEmulators;const realLaunchEmulator=(t,e)=>new Promise(async(r,s)=>{var n,a;const o=getElumatorCommand();console.log(`Running command:${o} @${t}`),e.progress(`launch emulator ${t}...`);const c=await getDevices(),i=(0,child_process_1.spawn)(o,["@"+t],{detached:!0,stdio:["pipe","pipe","pipe","ipc"],env:(0,env_1.getProcessEnv)()});i.unref();let l="";null===(n=i.stdout)||void 0===n||n.on("data",t=>{e.progress(t.toString())}),null===(a=i.stderr)||void 0===a||a.on("data",t=>{const r=t.toString();l+=r,e.progress(r)});const u=setTimeout(()=>{d(),s(new Error("Could not start emulator within 30 seconds."))},3e4),p=setInterval(async()=>{const t=(await getDevices()).find(t=>c.every(e=>e.name!==t.name));t&&(d(),r(t))},1e3),d=()=>{clearTimeout(u),clearInterval(p)};i.on("exit",async()=>{if(d(),null==l?void 0:l.includes("Running multiple emulators with the same AVD")){const t=(await getDevices()).find(t=>"simulator"===t.type&&t.attach);r(t)}else s(new Error("Emulator exited before boot:"+l))}),i.on("error",t=>{d(),s(t.message)})}),tryLaunchEmulator=async(t,e)=>{if(!t){t=(0,exports.getEmulators)()[0].name}if(t)try{return{success:!0,device:await realLaunchEmulator(t,e)}}catch(t){return{success:!1,error:t.message}}return{success:!1,error:"No emulators found, please check `emulator -list-avds`"}};function parseDevicesResult(t){var e;if(!t)return[];const r=[],s=t.trim().split(/\r?\n/);for(const t of s){const s=t.split(/[ ,\t]+/).filter(t=>""!==t);"device"===s[1]&&((null===(e=s[0])||void 0===e?void 0:e.startsWith("emulator-"))?r.push({name:s[0],type:"simulator",attach:!0}):r.push({name:s[0],type:"device",attach:!0}))}return r}function getDevices(){return new Promise(t=>{const e=(0,adb_1.getAdbPath)();(0,child_process_1.exec)(`"${e}" devices -l`,{env:(0,env_1.getProcessEnv)()},(e,r)=>{const s=parseDevicesResult(r);e&&t([...(0,exports.getEmulators)()]),t([...(0,exports.getEmulators)(),...s])})})}function getAvailableCPUs(t){try{const e=(0,adb_1.getAdbPath)(),r=["-s",t,"shell","getprop"];let s=(0,child_process_1.execFileSync)(e,r.concat(["ro.product.cpu.abilist"]),{env:(0,env_1.getProcessEnv)()}).toString();return s&&0!==s.trim().length||(s=(0,child_process_1.execFileSync)(e,r.concat(["ro.product.cpu.abi"]),{env:(0,env_1.getProcessEnv)()}).toString()),(s||"").trim().split(",")}catch(t){return[]}}function getCPU(t){try{const e=(0,adb_1.getAdbPath)(),r=(0,child_process_1.execFileSync)(e,["-s",t,"shell","getprop","ro.product.cpu.abi"],{env:(0,env_1.getProcessEnv)()}).toString().trim();return r.length>0?r:null}catch(t){return null}}async function tryInstantBuild(t,e,r){const s=process.platform.startsWith("win")?"gradlew.bat":"./gradlew",n=["assemble"+e];await(0,cp_1.spawnSync)(s,n,{cwd:t.sourceDir},r)}async function tryBuild(t,e,r){const s=process.platform.startsWith("win")?"gradlew.bat":"./gradlew";await(0,cp_1.spawnSync)(s,e,{cwd:t},r)}async function tryInstantInstall(t,e,r){try{const s=process.platform.startsWith("win")?"gradlew.bat":"./gradlew",n=["install"+e];await(0,cp_1.spawnSync)(s,n,{cwd:t.sourceDir},r)}catch(t){throw createInstallError(t)}}async function tryLaunchAppOnDevice(t,e,r,s){const{mainActivity:n=""}=r;try{const r=["shell","am","start","-n",`${e}/${n}`];t?(r.unshift("-s",t),s.progress(`Starting the app on "${t}"...`)):s.progress("Starting the app...");const a=(0,adb_1.getAdbPath)();await(0,cp_1.spawnSync)(a,r,{stdio:"inherit"},s)}catch(t){throw new Error("Failed to start the app."+t.message)}}function createInstallError(t){const e=(t.stderr||"").toString();let r="Make sure you have the Android development environment set up";throw e.includes("No connected devices")?r="Make sure you have an Android emulator running or a device connected":(e.includes("licences have not been accepted")||e.includes("accept the SDK license"))&&(r="Please accept all necessary Android SDK licenses using Android SDK Manager: \n '$ANDROID_HOME/tools/bin/sdkmanager --licenses',\n "),new Error(`Failed to install the app. ${r}: ${e}.`)}exports.tryLaunchEmulator=tryLaunchEmulator,exports.getDevices=getDevices,exports.getAvailableCPUs=getAvailableCPUs,exports.getCPU=getCPU,exports.tryInstantBuild=tryInstantBuild,exports.tryBuild=tryBuild,exports.tryInstantInstall=tryInstantInstall,exports.tryLaunchAppOnDevice=tryLaunchAppOnDevice;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AndroidUtils=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),fs_extra_1=tslib_1.__importDefault(require("fs-extra")),deviceUtils=tslib_1.__importStar(require("./device")),projectconfig_1=tslib_1.__importDefault(require("./projectconfig"));class AndroidUtils{constructor(e,t={},i,r){this.root=e,this.userConfig=t,this.miniappDirPath=i,this.devtoolsVersion=r}getProjectConfig(e){const t=projectconfig_1.default.getProjectConfig(this.root,this.userConfig,e);if(!t)throw new Error("Android project not found. Are you sure this is a miniapp project?");return t}async runLocal(e,t){const i=this.getProjectConfig(t);return process.chdir(i.sourceDir),e.device?await this.runOnSpecificDevice(e,i,t):await this.runOnAllDevices(e,i,t)}async runCloud(){}async buildLocal(e,t){t.progress("start build apk...");const i=this.getProjectConfig(t),{sourceDir:r,appName:s}=i,o=`${r}/${s}/build/outputs/apk`;return fs_extra_1.default.ensureDirSync(o),fs_extra_1.default.emptyDirSync(o),process.chdir(i.sourceDir),await deviceUtils.tryInstantBuild(i,e.variant,t),console.log("build apk successfully"),o}async buildCloud(){}async runOnAllDevices(e,t,i){let r=await deviceUtils.getDevices();if(0===r.length){i.progress("Launching emulator...");const e=await deviceUtils.tryLaunchEmulator(null,i);if(!e.success)throw new Error(`Failed to launch emulator. Reason: ${e.error}.`);i.progress("Successfully launched emulator."),r=await deviceUtils.getDevices()}else i.progress("Get Devices:"+r.join(","));await deviceUtils.tryInstantBuild(t,e.variant,i),await deviceUtils.tryInstantInstall(t,e.variant,i),(r.length>0?r:[]).forEach(r=>{deviceUtils.tryLaunchAppOnDevice(r.name,t.packageName,e,i)})}async runOnSpecificDevice(e,t,i){const{variant:r}=e;let{device:s}=e;const o=await deviceUtils.getDevices();if(!(o.length>0&&s))throw new Error("No Android device or emulator connected.");{const a=o.find(e=>e.name===s);if(!a)throw new Error(`Could not find device with the id: "${s}". Please choose one of the following:${o.join(",")}`);if("simulator"===a.type&&!a.attach){const e=await deviceUtils.tryLaunchEmulator(s,i);if(!e.success)throw new Error(e.error);s=e.device.name}await deviceUtils.tryInstantBuild(t,r,i),await deviceUtils.tryInstantInstall(t,r,i),deviceUtils.tryLaunchAppOnDevice(s,t.packageName,e,i)}}async buildPlugin(e,t){t.progress("start build android native plugin..."),t.progress("projectPath: "+e.projectPath);let i=this.root;!path_1.default.isAbsolute(i)&&e.projectPath&&(i=path_1.default.posix.join(e.projectPath,i)),t.progress("sourceDir: "+i);const r=i+"/localAar";fs_extra_1.default.ensureDirSync(r),fs_extra_1.default.emptyDirSync(r),process.chdir(i);const s=e.gradleArgs||[":plugin:build"];return await deviceUtils.tryBuild(i,s,t),console.log("build plugin successfully"),r}}exports.AndroidUtils=AndroidUtils;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const tslib_1=require("tslib"),fs=tslib_1.__importStar(require("fs")),path=tslib_1.__importStar(require("path")),glob=tslib_1.__importStar(require("glob"));class ProjectConfigUtils{getProjectConfig(e,a={},t){const i=e,n=this.getAppName(i,a.appName),r=a.manifestPath?path.join(i,a.manifestPath):this.findManifest(path.join(i,n));if(!r)return null;const o=a.packageName||this.getPackageName(r,t);if(!o)throw new Error("Package name not found in "+r);return{sourceDir:i,appName:n,packageName:o}}findManifest(e){const a=glob.sync(path.join("**","AndroidManifest.xml"),{cwd:e,ignore:["node_modules/**","**/build/**","**/debug/**","Examples/**","examples/**"]})[0];return a?path.join(e,a):null}getPackageName(e,a){const t=fs.readFileSync(e,"utf8").match(/package="(.+?)"/);if(!t||0===t.length)throw new Error("Failed to build the app: No package name found. Found errors in "+e);const i=t[1];return this.validatePackageName(i)||a.progress(`Invalid application's package name "${i}" in 'AndroidManifest.xml'. Read guidelines for setting the package name here: https://developer.android.com/studio/build/application-id`),i}validatePackageName(e){return/^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)+$/.test(e)}getAppName(e,a){let t="";return"string"==typeof a&&fs.existsSync(path.join(e,a))?t=a:fs.existsSync(path.join(e,"app"))&&(t="app"),t}}module.exports=new ProjectConfigUtils;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.NativeCompiler=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),define_1=require("../../config/define"),processManager_1=require("../../utils/subprocess/processManager"),messageHub_1=require("../../utils/messageHub"),singletontask_1=require("../../utils/singletontask");class NativeCompiler{constructor(s){this.initedPromise=null,this.onProgressUpdate=(s,e,i)=>{const t="doing"===e?"doing":"done"===e?"success":"error";this.messageHub.showBuildLog(""+s,t,i)},this.messageHub=new messageHub_1.MessageHub(s.devtoolMessagehub),this.project=s.project,this.miniappDirPath=s.miniappDirPath,this.devtoolsVersion=s.devtoolsVersion}async ready(){return this._checkReadyTask||(this._checkReadyTask=new singletontask_1.SingletonTask(this.init.bind(this))),await this._checkReadyTask.getResult()}async init(){return this.initedPromise||(this.initedPromise=(async()=>{await this.createSubProcessManager()})()),this.initedPromise}async createSubProcessManager(){const s=path_1.default.posix.join(__dirname,"./nativeEntryProcess.js");this.subProcessManager=new processManager_1.SubProcessProxy(this.project,s,{miniappDirPath:this.miniappDirPath,devtoolsVersion:this.devtoolsVersion},{},8892)}async runAndroid(s){const e=define_1.PLATFORM["mini-android"];return await this.subProcessManager.runTask("runNative",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}async runIOS(s){const e=define_1.PLATFORM["mini-ios"];return await this.subProcessManager.runTask("runNative",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}async buildAndroidAPK(s){const e=define_1.PLATFORM["mini-android"];return await this.subProcessManager.runTask("buildNative",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}async buildIOSIPA(s){const e=define_1.PLATFORM["mini-ios"];return await this.subProcessManager.runTask("buildNative",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}async buildAndroidPlugin(s){const e=define_1.PLATFORM["mini-android"];return await this.subProcessManager.runTask("buildNativePlugin",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}async buildIOSPlugin(s){const e=define_1.PLATFORM["mini-ios"];return await this.subProcessManager.runTask("buildNativePlugin",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}async packIOSCloudBuildMaterial(s){const e=define_1.PLATFORM["mini-ios"];return await this.subProcessManager.runTask("packIOSCloudBuildMaterial",{targetPlatform:e,opts:s,fullEnv:global.fullEnv},this.onProgressUpdate)}destroy(){this.subProcessManager.destroy()}}exports.NativeCompiler=NativeCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.privateDescriptions=exports.remoteBuildProjectMaterialAbsoluteCacheDir=void 0;const tslib_1=require("tslib"),child_process=tslib_1.__importStar(require("child_process")),path_1=tslib_1.__importDefault(require("path")),fs_extra_1=tslib_1.__importDefault(require("fs-extra")),glob_1=tslib_1.__importDefault(require("glob")),env_1=require("../../../utils/env"),miniapp_builder_1=require("../../../utils/miniapp-builder"),codesign_1=require("../../../utils/codesign"),miniappJson_1=require("../../../utils/miniappJson"),lodash_1=require("lodash"),tools_1=require("../../../utils/tools"),uuidv4=require("uuid/v4"),sizeOf=require("image-size"),plist=require("simple-plist"),errorIOSSdkVersions=["1.0.19"],APPEX_PROFILES_MAPS_FILE="__appexProfilesCacheDir__/profilesMap.json",APPEX_PROFILES_MAPS_FOR_SHELL_FILE="__appexProfilesCacheDir__/profilesMapForShell.txt",defaultIconDirPath=path_1.default.join(__dirname,"../../../static/images/"),getDepReg=e=>new RegExp(`s.subspec '${e}'.*\n(?:.*\n)*?(?:.*sp.vendored_frameworks = \\[\n)((?:.*'.*?'.*\n)*?)(?:.*\\]\n)`,"m"),allowTheme=["Light","LightSpecial","Dark","DarkSpecial","Default"];exports.remoteBuildProjectMaterialAbsoluteCacheDir="__absoluteFile";const iconInfoMap={appStore1024:{size:[1024,1024],scale:1,idiom:"ios-marketing",required:!0},mainIcon120:{size:[60,60],scale:2,idiom:"iphone",required:!0},mainIcon180:{size:[60,60],scale:3,idiom:"iphone"},spotlightIcon80:{size:[40,40],scale:2,idiom:"iphone"},spotlightIcon120:{size:[40,40],scale:3,idiom:"iphone"},settingsIcon58:{size:[29,29],scale:2,idiom:"iphone"},settingsIcon87:{size:[29,29],scale:3,idiom:"iphone"},notificationIcon40:{size:[20,20],scale:2,idiom:"iphone"},notificationIcon60:{size:[20,20],scale:3,idiom:"iphone"},ipadMainIcon152:{size:[76,76],scale:2,idiom:"ipad"},ipadMainIcon167:{size:[83.5,83.5],scale:2,idiom:"ipad"},ipadSpotlightIcon40:{size:[40,40],scale:1,idiom:"ipad"},ipadSpotlightIcon80:{size:[40,40],scale:2,idiom:"ipad"},ipadSettingsIcon29:{size:[29,29],scale:1,idiom:"ipad"},ipadSpotlightIcon58:{size:[29,29],scale:2,idiom:"ipad"},ipadNotificationIcon20:{size:[20,20],scale:1,idiom:"ipad"},ipadNotificationIcon40:{size:[20,20],scale:2,idiom:"ipad"}};exports.privateDescriptions=["NSPhotoLibraryUsageDescription","NSPhotoLibraryAddUsageDescription","NSCameraUsageDescription","NSMicrophoneUsageDescription","NSLocationWhenInUseUsageDescription","NSLocationAlwaysUsageDescription","NSLocationAlwaysAndWhenInUseUsageDescription","NSCalendarsUsageDescription","NSContactsUsageDescription","NSBluetoothPeripheralUsageDescription","NSBluetoothAlwaysUsageDescription","NSSpeechRecognitionUsageDescription","NSRemindersUsageDescription","NSMotionUsageDescription","NSHealthUpdateUsageDescription","NSHealthShareUsageDescription","NSAppleMusicUsageDescription","NFCReaderUsageDescription","NSHealthClinicalHealthRecordsShareUsageDescription","NSHomeKitUsageDescription","NSSiriUsageDescription","NSFaceIDUsageDescription","NSLocalNetworkUsageDescription","NSUserTrackingUsageDescription","NSLocationUsageDescription"];class buildCloudManager{generateTempDemoIpaPath(e){const i=path_1.default.join(e,"../.."),t=path_1.default.basename(i),n=path_1.default.dirname(i),a=path_1.default.join(n,t+"-operateDir");fs_extra_1.default.existsSync(a)&&fs_extra_1.default.removeSync(a),fs_extra_1.default.ensureDirSync(a);const s=path_1.default.join(a,"Payload/demo.app");return fs_extra_1.default.copySync(e,s),s}generateInfoPlistCFBundleURLTypesItem(e){const i={};return e.CFBundleURLName&&(i.CFBundleURLName=e.CFBundleURLName),e.CFBundleURLSchemes&&(i.CFBundleURLSchemes=[e.CFBundleURLSchemes]),e.CFBundleTypeRole&&(i.CFBundleTypeRole=e.CFBundleTypeRole),i}updatePrivacyBackgroundImage(e,i,t,n,a){t.message("doing","updatePrivacyBackgroundImage "+n);if(fs_extra_1.default.readdirSync(i).forEach(e=>{"privacy_"+n===path_1.default.basename(e,path_1.default.extname(e))&&fs_extra_1.default.removeSync(path_1.default.join(i,e))}),!a)return;path_1.default.isAbsolute(a)||(a=path_1.default.join(e,a)),a=this.getMaterialFilePath(e,a);const s=path_1.default.extname(a),o=path_1.default.join(i,`privacy_${n}${s}`);try{fs_extra_1.default.copyFileSync(a,o)}catch(e){throw t.message("fail",`copy privacy image failed: ${n}, ${a} to ${o}`),e}}async updateIOSInfoPlistInfo(e,i,t,n,a,s){var o,r,l,p,d,c,u,f;a.progress("update app base info...");const{mobileapp_info:_={}}=i,h=_.mobileapp_id,g=path_1.default.join(t,"Info.plist"),m={},y=(e,i)=>{var t,n;if(i.startsWith("%")&&i.endsWith("%")){const o=i.slice(1,-1);m[e]=o;const r=(null===(n=null===(t=null==s?void 0:s.base)||void 0===t?void 0:t.ios)||void 0===n?void 0:n[o])||"";return r||a.message("fail",`未在国际化配置 base.json 中找到字段 ${o},请检查`),r}return i},S=plist.readFileSync(g);if(S.CFBundleName=y("CFBundleName",n.name),S.CFBundleDisplayName=y("CFBundleDisplayName",n.name),S.CFBundleShortVersionString=n.version,"number"==typeof n.versionCode?S.CFBundleVersion=parseInt(n.versionCode.toString(),10).toString():S.CFBundleVersion=(parseInt(S.CFBundleVersion,10)+1).toString(),S.CFBundleIdentifier=this.getBundleIdentifier(_),Array.isArray(S.CFBundleURLTypes)||(S.CFBundleURLTypes=[]),(null===(r=null===(o=S.CFBundleURLTypes)||void 0===o?void 0:o[0])||void 0===r?void 0:r.CFBundleURLSchemes)&&(S.CFBundleURLTypes[0].CFBundleURLSchemes=[h]),S.CFBundleURLTypes[0]&&(S.CFBundleURLTypes=[S.CFBundleURLTypes[0]]),exports.privateDescriptions.forEach(e=>{var i,t;(null===(i=null==n?void 0:n.privateDescriptions)||void 0===i?void 0:i[e])?S[e]=y(e,null===(t=n.privateDescriptions)||void 0===t?void 0:t[e]):delete S[e]}),!0===(null===(l=null==n?void 0:n.infoPlist)||void 0===l?void 0:l.DisableAppUsesNonExemptEncryption)?S.ITSAppUsesNonExemptEncryption=!1:delete S.ITSAppUsesNonExemptEncryption,S.UIBackgroundModes=[],!0===(null===(p=null==n?void 0:n.infoPlist)||void 0===p?void 0:p.AudioInBackgroundMode)&&S.UIBackgroundModes.push("audio"),!0===(null===(d=null==n?void 0:n.infoPlist)||void 0===d?void 0:d.LocationInBackgroundMode)&&S.UIBackgroundModes.push("location"),!0===(null===(c=null==n?void 0:n.infoPlist)||void 0===c?void 0:c.requiresFullScreen)?S.UIRequiresFullScreen=!0:delete S.UIRequiresFullScreen,"object"==typeof(null===(u=null==n?void 0:n.infoPlist)||void 0===u?void 0:u.CFBundleURLTypes)){const e=this.generateInfoPlistCFBundleURLTypesItem(n.infoPlist.CFBundleURLTypes);S.CFBundleURLTypes.push(e);const{additionalCFBundleURLTypes:i}=n.infoPlist.CFBundleURLTypes;Array.isArray(i)&&i.forEach(e=>{if("object"==typeof e){const i=this.generateInfoPlistCFBundleURLTypesItem(e);S.CFBundleURLTypes.push(i)}})}if(!0===n.enableIpad&&((0,miniappJson_1.iOSAppJsonIsUsingIPadResizable)(e)?(S["UISupportedInterfaceOrientations~ipad"]=["UIInterfaceOrientationPortrait","UIInterfaceOrientationPortraitUpsideDown","UIInterfaceOrientationLandscapeLeft","UIInterfaceOrientationLandscapeRight"],a.progress("ipad is support Landscape")):(S["UISupportedInterfaceOrientations~ipad"]=["UIInterfaceOrientationPortrait","UIInterfaceOrientationPortraitUpsideDown"],a.progress("ipad is not support Landscape"))),null===(f=n.infoPlist)||void 0===f?void 0:f.LSApplicationQueriesSchemes){const e=n.infoPlist.LSApplicationQueriesSchemes.split(",");e.length&&S.LSApplicationQueriesSchemes.push(...e.filter(e=>e))}return plist.writeFileSync(g,S),await this.writeI18NInfoFile(t,s,m),S.CFBundleVersion}getBundleIdentifier(e){return e.ios_flag&&e.bundle_id||e.debug_ios_bundle_id}useGDT(e){return(0,miniappJson_1.iOSMiniAppJsonIsUsingGDT)(e)}async updateIOSAppConfigPlistInfo(e,i,t,n,a,s,o,r="Dark",l){var p,d,c,u;o.progress("update app module info...");const{module_info:f={},cpa_info:_={},cpa_package_info:h={enable_remove_watermark:!1}}=i;if(!_.sdk_key||!_.sdk_key_secret)throw new Error("sdkKey and sdkSecret not found");const g=path_1.default.join(t,"MiniApp.bundle"),m=path_1.default.join(g,"AppConfig.plist"),y=plist.readFileSync(m);h.enable_remove_watermark?y.enableRemoveWatermark=!0:y.splashscreenTheme=r,y.miniModuleId=f.module_id,y.sdkKey=_.sdk_key,y.sdkSecret=_.sdk_key_secret;const{privacy:S={}}=n;y.privacy||(y.privacy={}),y.privacy.enable=!!S.enable;const I=path_1.default.posix.join(g,"configs/privacy.json"),{contentViewImage:x,cancelButtonImage:b,confirmButtonImage:v,template:P}=S;if(S.enable){let i=P||"";if(fs_extra_1.default.ensureDirSync(path_1.default.posix.join(g,"configs")),i.startsWith("%")&&i.endsWith("%")){const t=P.slice(1,-1);i=(null===(d=null===(p=null==l?void 0:l.base)||void 0===p?void 0:p.ios)||void 0===d?void 0:d[t])||"",i||o.message("fail",`未在国际化配置 base.json 中找到字段 ${t},请检查`),Object.keys(l).forEach(i=>{var n,a;if("base"===i)return;let s=null===(a=null===(n=l[i])||void 0===n?void 0:n.ios)||void 0===a?void 0:a[t];if(s){s=this.getMaterialFilePath(e,s);const t=`configs/privacy-${i}.json`,n=path_1.default.posix.join(g,t);fs_extra_1.default.existsSync(s)?fs_extra_1.default.copyFileSync(s,n):o.message("fail",`未找到隐私协议在国际化配置 ${i}.json 中配置的文件 ${s},请检查`)}})}i?(i=this.getMaterialFilePath(e,i),fs_extra_1.default.existsSync(i)?(fs_extra_1.default.copyFileSync(i,I),y.privacy.template="configs/privacy.json"):(o.message("fail",`未找到隐私协议中配置的文件 ${i},请检查`),y.privacy.template="configs/defaultPrivacy.json")):y.privacy.template="configs/defaultPrivacy.json",!0===S.enableNativePlugin&&"string"==typeof S.nativePluginId&&S.nativePluginId.length>2&&(y.privacy.plugin={pluginId:S.nativePluginId,enable:!0})}else y.privacy.template="",fs_extra_1.default.removeSync(I);this.updatePrivacyBackgroundImage(e,t,o,"contentViewImage",x),this.updatePrivacyBackgroundImage(e,t,o,"confirmButtonImage",v),this.updatePrivacyBackgroundImage(e,t,o,"cancelButtonImage",b);const{appMenuEnable:F=!0}=n;y.appMenuEnable=F;const{enableVConsole:B="undefined"}=n;y.enableVConsole=B;const{tpush:j}=n;let D=!1;if("object"==typeof j){const e=path_1.default.posix.join(t,"PlugIns/TPNSService.appex"),i=path_1.default.posix.join(e,"AppConfig.plist");if(this.useTpush(n)){y.TPNSAccessID=j.accessID,y.TPNSAccessKey=j.accessKey,j.clusterDomainName?y.clusterDomainName=j.clusterDomainName:delete y.clusterDomainName;const t=s?"x86_64":"arm64",n=path_1.default.join(a,`appex/${t}/TPNSService.appex`);if(!fs_extra_1.default.existsSync(n))throw new Error("can not found extendsdk: "+n);try{fs_extra_1.default.copySync(n,e),plist.writeFileSync(i,y),D=!0}catch(e){throw new Error("copy TPNSService.appex to app failed: "+e)}}}if(!D)try{const e=path_1.default.posix.join(t,"PlugIns");fs_extra_1.default.existsSync(e)?(fs_extra_1.default.removeSync(e),o.progress("removed PlugIns folder...")):o.progress("no PlugIns folder...")}catch(e){throw new Error("remove TPNSService.appex from app failed: "+e)}if(null===(c=n.useExtendedSdk)||void 0===c?void 0:c.WeAppLBS){if(!n.qmapAPIKey)throw new Error("You need to provide the Tencent Location Service API Key when using LBS SDK.");y.qmapAPIKey=n.qmapAPIKey}const{gdt:C}=n,w=this.useGDT(n);if(y.GDTAd=w?{appid:C.appid,enable:!0,SplashAd:{placementId:C.splashAd_placementId,fetchDelay:C.splashAd_fetchDelay||3,defaultEnable:null===(u=C.splashAd_defaultEnable)||void 0===u||u}}:{appid:"",enable:!1,SplashAd:{placementId:"",fetchDelay:3}},n["mini-plugin"]&&Array.isArray(n["mini-plugin"].ios)){const e=n["mini-plugin"].ios.filter(e=>!!(e.open&&e.pluginId&&e.loadWhenStart)).map(e=>e.pluginId);y.plugins={loadWhenStart:e}}const{enableDebugLog:U=!1}=n;y.enableDebugLog=U;const{debugLogSizeLimit:A=10}=n;isNaN(Number(A))?o.message("fail",`ios debugLogSizeLimit ${A} is NaN`):y.debugLogSizeLimit=Number(A);const{enableOpenUrlNavigate:E=!1}=n;y.enableOpenUrlNavigate=E,plist.writeFileSync(m,y)}async updateIOSAppexInfoPlistInfo(e,i,t,n,a){if(this.useTpush(t)){a.progress("update appex for notification base info...");const{mobileapp_info:s={}}=e,o=path_1.default.join(i,"PlugIns/TPNSService.appex"),r=path_1.default.join(o,"Info.plist"),l=plist.readFileSync(r);l.CFBundleShortVersionString=t.version,a.progress("update appex for CFBundleVersion: "+n),l.CFBundleVersion=n;const p=s.ios_flag&&s.bundle_id||s.debug_ios_bundle_id;l.CFBundleIdentifier=t.tpush.serviceBundleId||p+".service",a.progress("update appex bundle identifier for infoPlist : "+l.CFBundleIdentifier),plist.writeFileSync(r,l)}else a.progress("not using tpush...")}updateBundleIcons(e,i,t,n,a){const s=[],o=[],r=[];for(const l in t){if(!t[l])continue;const p=this.getMaterialFilePath(e,t[l]);if(!p)return void a.message("fail","getMatrialFailed: "+t[l]);const d=iconInfoMap[l];try{const e=sizeOf(p),i=d.size[0]*d.scale,n=d.size[1]*d.scale;if(e.width!==i||e.height!==n){a.progress(`check ${l} size failed, require [${i}, ${n}] but [${e.width}, ${e.height}] ingore ${t[l]} `);continue}}catch(e){a.progress(`get ${l} info failed, ingore ${t[l]}(e: ${e.message})`);continue}const c=path_1.default.extname(p),u=1===d.scale?"":`@${d.scale}x`,f=`${d.size[0]}x${d.size[1]}`,_=l.startsWith("ipad"),h="appStore1024"===l,g=n,m=path_1.default.join(i,`${g}${f}${u}${_?"~ipad":""}${c}`),y={from:p,to:m,filename:path_1.default.basename(m),size:f,scale:d.scale+"x",idiom:d.idiom,key:l};s.push(y),h||(_?r.includes(`${g}${f}`)||r.push(`${g}${f}${u}`):o.includes(`${g}${f}`)||o.push(`${g}${f}${u}`))}return{iphoneBundleIconFiles:o,ipadBundleIconFiles:r,addFiles:s}}async updateIOSIcons(e,i,t,n,a,s){s.progress("update app icons...");const{icons:o={}}=n,r=a&&!env_1.isWin&&!!t;s.progress("genAssetCar: "+r);const l=glob_1.default.sync("AppIcon*.+(png|jpg|jpeg|webp)",{nodir:!0,cwd:i}).map(e=>path_1.default.join(i,e)),p="AppIcon-"+uuidv4().slice(0,8),d=this.updateBundleIcons(e,i,o,p,s);if(!d)throw new Error("updateBundleIcons failed");const{iphoneBundleIconFiles:c=[],ipadBundleIconFiles:u=[],addFiles:f=[]}=d,_={};for(const e in iconInfoMap){if(!iconInfoMap[e].required||o[e])continue;const i=iconInfoMap[e].size[0]*iconInfoMap[e].scale,t=iconInfoMap[e].size[1]*iconInfoMap[e].scale;if(_[e]=path_1.default.join(defaultIconDirPath,`donut-icon${i}x${t}.png`),s.progress(`using default app icons when ${e} is not config...`),!fs_extra_1.default.existsSync(_[e]))throw new Error(`required ${e} but not default or set`)}const h=this.updateBundleIcons(e,i,_,p,s);if(!h)throw new Error("updateBundleIcons WithDefaultIcon failed");const{iphoneBundleIconFiles:g,ipadBundleIconFiles:m,addFiles:y}=h;if(c.push(...g),u.push(...m),f.push(...y),!c.length&&!u.length)return;l.forEach(e=>{fs_extra_1.default.existsSync(e)&&fs_extra_1.default.removeSync(e)});const S=path_1.default.join(t,"__assetCarOperateDir/assetsCar/"),I=path_1.default.join(S,`Assets.xcassets/${p}.appiconset/`);r&&(fs_extra_1.default.ensureDirSync(I),fs_extra_1.default.emptyDirSync(I));const x=[];if(f.forEach(e=>{fs_extra_1.default.existsSync(e.to)&&fs_extra_1.default.removeSync(e.to),fs_extra_1.default.copyFileSync(e.from,e.to),r&&(fs_extra_1.default.copySync(e.from,path_1.default.join(I,e.filename)),x.push({filename:e.filename,size:e.size,scale:e.scale,idiom:e.idiom}))}),r&&fs_extra_1.default.writeJsonSync(path_1.default.join(I,"Contents.json"),{images:x,info:{author:"xcode",version:1}},{spaces:"\t"}),r){const e=path_1.default.join(__dirname,"../../../static/scripts/assetsCar/"),t=path_1.default.join(S,"createAssetsCar");fs_extra_1.default.copySync(e,S);try{await(0,codesign_1.checkXcodeEnv)(s),child_process.execSync(`"${t}" ${p}`,{env:(0,env_1.getProcessEnv)()})}catch(e){s.progress("createAssetsCar failed "+(e.message||""))}const n=path_1.default.join(S,"build/Assets.car"),a=path_1.default.join(i,"Assets.car");fs_extra_1.default.copyFileSync(n,a)}else{const e=path_1.default.join(i,"Assets.car");fs_extra_1.default.removeSync(e)}const b=path_1.default.join(i,"Info.plist"),v=plist.readFileSync(b);v.CFBundleIcons||(v.CFBundleIcons={CFBundlePrimaryIcon:{}}),v.CFBundleIcons.CFBundlePrimaryIcon.CFBundleIconName=p,v.CFBundleIcons.CFBundlePrimaryIcon.CFBundleIconFiles=c,v["CFBundleIcons~ipad"]||(v["CFBundleIcons~ipad"]={CFBundlePrimaryIcon:{}}),v["CFBundleIcons~ipad"].CFBundlePrimaryIcon.CFBundleIconName=p,v["CFBundleIcons~ipad"].CFBundlePrimaryIcon.CFBundleIconFiles=u,v.NSAppTransportSecurity={NSAllowsArbitraryLoads:!0},plist.writeFileSync(b,v)}async updateSplashScreen(e,i,t,n,a="Dark"){n.progress("update splashscreen image...");const{splashscreen:s={}}=t;let o;if(allowTheme.includes(a)&&(o=path_1.default.join(i,`/Base.lproj/LaunchScreen${a}.storyboardc`)),o&&fs_extra_1.default.existsSync(o)&&fs_extra_1.default.copySync(o,path_1.default.join(i,"/Base.lproj/LaunchScreen.storyboardc")),allowTheme.forEach(e=>{const t=path_1.default.join(i,`/Base.lproj/LaunchScreen${e}.storyboardc`);fs_extra_1.default.existsSync(t)&&fs_extra_1.default.removeSync(t)}),s.customImage){const t=path_1.default.join(i,"/Base.lproj/LaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib");let a=fs_extra_1.default.readFileSync(t).toString("hex");if(!s.customImage.endsWith(".png"))return void n.message("fail","IOS 启动页图片配置格式错误,必须为 PNG 格式");let o=s.customImage;o=this.getMaterialFilePath(e,s.customImage);const r=path_1.default.join(i,"Info.plist"),l=plist.readFileSync(r),p=l.UISplashScreenImageName+".png";glob_1.default.sync("LaunchScreen-*.+(png|jpg|jpeg|webp)",{nodir:!0,cwd:i}).forEach(e=>{const t=path_1.default.join(i,e);fs_extra_1.default.removeSync(t)});const d="LaunchScreen-"+uuidv4().slice(0,12),c=d+".png",u=path_1.default.join(i,c);fs_extra_1.default.copyFileSync(o,u),l.UISplashScreenImageName=d,plist.writeFileSync(r,l);const f=Buffer.from(p,"utf-8").toString("hex"),_=Buffer.from(c,"utf-8").toString("hex");-1!==a.indexOf(f)?(a=a.replace(f,_),console.log("replace storyboard customImage success")):console.log("replace storyboard customImage fail"),fs_extra_1.default.writeFileSync(t,Buffer.from(a,"hex"))}return!1}genUseExtendedSdk(e){const i=Object.assign({},e.useExtendedSdk||{});for(const t in e)if("object"==typeof e[t])for(const n in e[t])if(n.startsWith("useExtendedLib_WeApp")&&!0===e[t][n]){i[n.slice("useExtendedLib_".length)]=!0}return!i.WeAppLBS||i.WeAppOpenFuns||i.WeAppOpenFuns_HasPay||(i.WeAppOpenFuns=!0),i}async updateExtendedSdk(e,i,t,n,a,s){const o=path_1.default.join(i,"Frameworks");fs_extra_1.default.ensureDirSync(o),s.progress("update extendsdk...");const r=path_1.default.join(t,"WeAppSDK.podspec"),l=fs_extra_1.default.readFileSync(r,"utf-8"),p=this.genUseExtendedSdk(a);s.progress("useExtendedSdks: "+JSON.stringify(p));const{mobileapp_info:d={}}=e,c=this.getBundleIdentifier(d);if(p.WeAppOpenFuns&&p.WeAppOpenFuns_HasPay)throw new Error("OpenFuncs SDK 只可勾选使用一个,请按需勾选使用");const u={};for(const e in p){if(!p[e])continue;const i=getDepReg(e),a=l.match(i);if(!(null==a?void 0:a[1]))throw new Error(`拓展模块 ${e} 不存在或已被移除,请检查 project.miniapp.json -> 对应平台 -> useExtendedSdk 删除配置 ${e},版本配置差异请参考更新日志或 https://dev.weixin.qq.com/docs/framework/dev/sdk/difflog.html`);const s=[];if(a[1].split("\n").forEach(e=>{const i=e.match(/.*'(.*?)',/);if(null==i?void 0:i[1]){const e=i[1].split("/").pop(),a=path_1.default.join(t,"Libs",n,e);if(!fs_extra_1.default.existsSync(a))throw new Error(`拓展模块 ${e} 不存在或已被移除,请检查 project.miniapp.json -> 对应平台 -> useExtendedSdk 删除配置 ${e},版本配置差异请参考更新日志或 https://dev.weixin.qq.com/docs/framework/dev/sdk/difflog.html`);const r=path_1.default.join(o,e);fs_extra_1.default.copySync(a,r),s.push(path_1.default.basename(e));const l=path_1.default.join(r,"info.plist");if(!fs_extra_1.default.existsSync(l))throw new Error("can not found extendsdk info.plist: "+e);this.changeExtendSDKInfoplistBundleId(l,c,e)}}),s.length){u[s.shift()]=s}}const f=path_1.default.join(i,"DyFrameworks.plist");fs_extra_1.default.existsSync(f)&&fs_extra_1.default.removeSync(f),plist.writeFileSync(f,u)}async updatePrivacyInfo(e,i,t){var n;const a=null===(n=null==i?void 0:i.privacy)||void 0===n?void 0:n.privacyInfo;a&&(a.endsWith("PrivacyInfo.xcprivacy")?fs_extra_1.default.existsSync(a)?(fs_extra_1.default.copySync(a,path_1.default.join(e,"/PrivacyInfo.xcprivacy")),t.progress("隐私清单文件替换成功")):t.message("fail","隐私清单文件替换失败,文件不存在,将使用默认文件"):t.message("fail","隐私清单文件替换失败,文件名必须为 PrivacyInfo.xcprivacy,将使用默认文件"))}async updatePlugin(e,i,t,n,a,s,o,r){if(!i.length)return;const l=path_1.default.join(e,"Frameworks"),p=path_1.default.join(e,"PlugIns");fs_extra_1.default.ensureDirSync(l),r.progress("update plugin...");const d=this.prepareAppexProfileConfig(i,n,t,a,s,o,n.version,r);if(!d)throw new Error("依赖的多端插件需要配置对应的profile");const c={};if(n["mini-plugin"]&&Array.isArray(n["mini-plugin"].ios)){n["mini-plugin"].ios.forEach(e=>{e.open&&e.pluginId&&"string"==typeof e.resourcePath&&e.resourcePath.length>0&&(c[e.pluginId]=e.resourcePath)})}i.forEach(i=>{const{pluginId:n}=i,a=i.dir,s=n+".framework",o=path_1.default.join(l,s);if(-1!==a.indexOf("local-miniapp-plugin")){const e=fs_extra_1.default.statSync(a),{mtime:i}=e;r.progress(`${n}.framework 正在使用本地版本,修改时间为 ${i}`)}fs_extra_1.default.existsSync(o)&&fs_extra_1.default.removeSync(o);const u=path_1.default.join(a,s);if(fs_extra_1.default.existsSync(u)){fs_extra_1.default.copySync(u,o),this.copyResourcesToMainBundle(u,e),this.copyUserResourcePathIntoPlugins(n,t,c[n],path_1.default.join(o,"MiniPlugin.bundle"),r);fs_extra_1.default.readdirSync(a).forEach(i=>{if(i.endsWith(".appex")){const s=path_1.default.parse(i).name,o=d[s],l=path_1.default.join(p,i);if(!o||!0!==o.enable)return;r.progress(`${n} 插件使用 appex 中 : ${i}`),fs_extra_1.default.existsSync(l)&&fs_extra_1.default.removeSync(l),fs_extra_1.default.ensureDirSync(l);const u=path_1.default.join(a,i);fs_extra_1.default.copySync(u,l),(null==o?void 0:o.profilePath)&&fs_extra_1.default.copySync(o.profilePath,path_1.default.join(l,"embedded.mobileprovision")),this.copyResourcesToMainBundle(u,e),this.copyUserResourcePathIntoPlugins(n,t,c[n],path_1.default.join(l,"MiniPlugin.bundle"),r)}})}else fs_extra_1.default.copySync(a,o),this.copyResourcesToMainBundle(a,e),this.copyUserResourcePathIntoPlugins(n,t,c[n],path_1.default.join(o,"MiniPlugin.bundle"),r)})}copyUserResourcePathIntoPlugins(e,i,t,n,a){const s=n;if(t){const n=path_1.default.basename(t),o=this.getMaterialFilePath(i,t);if(o){a.progress(`${e}.framework 正在拷贝配置的资源:${t}`);const i=fs_extra_1.default.lstatSync(o);fs_extra_1.default.ensureDirSync(s),i.isDirectory()?fs_extra_1.default.copySync(o,s):i.isFile()&&fs_extra_1.default.copyFileSync(o,path_1.default.join(s,n))}}}copyResourcesToMainBundle(e,i){const t=path_1.default.join(e,"MiniPlugin.bundle"),n=path_1.default.join(t,"PluginConfig.plist");if(fs_extra_1.default.existsSync(n)){const e=plist.readFileSync(n).CopyResourcesToMainBundle;(null==e?void 0:e.length)&&e.forEach(e=>{const n=path_1.default.join(t,e);fs_extra_1.default.existsSync(n)&&fs_extra_1.default.copySync(n,path_1.default.join(i,e))})}}prepareAppexProfileConfig(e,i,t,n,a,s,o,r){if(!n)return void r.message("doing","miniappCacheDirPath is missing");let l=!1;const p={};if(i["mini-plugin"]&&Array.isArray(i["mini-plugin"].ios)){i["mini-plugin"].ios.forEach(e=>{if(e.open&&e.pluginId&&"object"==typeof e.appexProfiles)for(const i in e.appexProfiles){r.message("doing",`检查插件 ${e.pluginId} ${i} appex 配置中 ...`);const n=e.appexProfiles[i];if(!0===n.enable){const s=`${e.pluginId}_${i}`;p[s]={enable:!0};let o=n.profilePath;if(a&&(o=n.distributeProfilePath),n.bundleID&&o){const a=path_1.default.join(t,o);fs_extra_1.default.existsSync(a)?(p[s].bundleID=n.bundleID,p[s].profilePath=path_1.default.join(t,o)):(l=!0,r.message("fail",`${e.pluginId} 中 ${i} 的 profilePath 无法找到对应的文件:${a}(需要在小程序项目路径下,填入相对于项目根目录的路径)`))}else l=!0,r.message("fail",`${e.pluginId}中${i} 是 无效的appexProfiles配置。需要配置 bundleID,profilePath,distributeProfilePath。profile 文件需要放置在小程序项目内,然后配置相对于小程序项目根目录的相对路径。分发证书构建的情况下, 一定需要配置distributeProfilePath。查看文档了解详情。`)}}})}if(e.forEach(e=>{fs_extra_1.default.readdirSync(e.dir).forEach(i=>{if(i.endsWith(".appex")){const t=path_1.default.parse(i).name,n=p[t];if(n&&!0===n.enable)if(n.bundleID&&n.profilePath){if(n.bundleID&&n.profilePath){const t=path_1.default.join(e.dir,i,"info.plist"),a=n.bundleID;this.changeInfoplistBundleId(t,a),this.changeInfoplistBundleVersion(t,s,o),r.message("doing",`${e.pluginId} ${i} ${a} ${t} 处理 appex bundle ID 中`)}}else l=!0,r.message("fail",`${e.pluginId} 的 多端插件包含了${t.slice(e.pluginId.length+1)} 的 appex。开发者需要在project.miniapp.json 中 mini-plugin 配置下对应合理的 profile 文件。查看文档了解详情。`)}})}),l)return!1;if(!(0,lodash_1.isEmpty)(p)){const e=path_1.default.join(n,APPEX_PROFILES_MAPS_FILE);fs_extra_1.default.existsSync(e)&&fs_extra_1.default.removeSync(e),fs_extra_1.default.ensureFileSync(e);const i={};for(const e in p)i[e]={bundleID:p[e].bundleID,profilePath:p[e].profilePath};fs_extra_1.default.writeFileSync(e,JSON.stringify(i));const t=path_1.default.join(n,APPEX_PROFILES_MAPS_FOR_SHELL_FILE);fs_extra_1.default.existsSync(t)&&fs_extra_1.default.removeSync(t),fs_extra_1.default.ensureFileSync(t);const a=Object.keys(p).map(e=>{const i=p[e];return`pluginAppexName:${e};_;_;bundleID:${i.bundleID};_;_;profile:${i.profilePath}\n\n`}).join("");fs_extra_1.default.writeFileSync(t,a)}return p}changeExtendSDKInfoplistBundleId(e,i,t){const n=`${i}.${path_1.default.parse(t).name.replace(/_/g,"")}`;return this.changeInfoplistBundleId(e,n)}changeInfoplistBundleId(e,i){const t=plist.readFileSync(e);return t.CFBundleIdentifier=i,plist.writeFileSync(e,t),t.CFBundleIdentifier}changeInfoplistBundleVersion(e,i,t){const n=plist.readFileSync(e);return n.CFBundleVersion=i,n.CFBundleShortVersionString=t,plist.writeFileSync(e,n),n.CFBundleIdentifier}async getEntitlements(e,i,t,n){const{mobileapp_info:a={}}=e;let s=a.ios_universal_link||a.debug_ios_universal_link;return(s.startsWith("https://")||s.startsWith("http://"))&&(s=s.replace(/^http(s)?:\/\//g,"applinks:")),{"com.apple.developer.associated-domains":s}}useTpush(e){return(0,miniappJson_1.iOSMiniAppJsonIsUsingTpush)(e)}async buildCloud(e,i){const{projectPath:t,demoIpaPath:n,sdkPath:a,arch:s="arm64",bindingInfo:o,certificateInfo:r,output:l,miniappCacheDirPath:p,pluginDirList:d,inLandun:c,theme:u,i18nInfo:f}=e,_=this.generateTempDemoIpaPath(n),{selfCertificate:h={}}=r,g=(null==h?void 0:h.isPublish)||!1,m=(0,miniappJson_1.tryGetIOSMiniappJson)(t),y=this.useTpush(m);if((0,lodash_1.isEmpty)(m))throw new Error("获取project.miniapp.json失败");if(errorIOSSdkVersions.includes(m.sdkVersion))throw new Error("当前 mini-ios.sdkVersion 存在缺陷,请参考更新日志进行修改");let S=o;if(r.signType===miniapp_builder_1.miniappSinTypes.appleId.type){const{mobileapp_info:e={}}=S;S=Object.assign(Object.assign({},S),{mobileapp_info:Object.assign(Object.assign({},e),{bundle_id:miniapp_builder_1.DEFAULT_BUNDLE_ID,debug_ios_bundle_id:miniapp_builder_1.DEFAULT_BUNDLE_ID})})}const I=await this.updateIOSInfoPlistInfo(t,S,_,m,i,f);await this.updateIOSAppConfigPlistInfo(t,S,_,m,a,!1,i,u,f),await this.updateIOSAppexInfoPlistInfo(S,_,m,I,i),await this.updateIOSIcons(t,_,p,m,g,i),await this.updateSplashScreen(t,_,m,i,u),await this.updateExtendedSdk(S,_,a,s,m,i),await this.updatePlugin(_,d,t,m,p,g,I,i),await this.updatePrivacyInfo(_,m,i);const x=await this.getEntitlements(S,_,m,i),{mobileapp_info:b={}}=S;let v;v=r.signType===miniapp_builder_1.miniappSinTypes.appleId.type?miniapp_builder_1.DEFAULT_BUNDLE_ID:b.ios_flag&&b.bundle_id||b.debug_ios_bundle_id;const P={bundleId:v,output:l,entitlements:x};if(m.buildCloud&&(m.buildCloud.certificate&&"string"==typeof m.buildCloud.certificate&&(P.certificate=m.buildCloud.certificate),m.buildCloud.profile&&"string"==typeof m.buildCloud.profile&&(P.profile=path_1.default.join(t,m.buildCloud.profile)),y&&m.buildCloud.tpnsProfile&&"string"==typeof m.buildCloud.tpnsProfile&&(P.tpnsProfile=path_1.default.join(t,m.buildCloud.tpnsProfile))),h.isPublish){const e=await(0,codesign_1.codesignAndExport)(t,_,p||"",P,i,y,!0===c);if(!0!==e.success)throw new Error("Build ipa failed:"+(e.errMsg||"codesignAndExport failed"))}return{projectPath:t,demoIpaPath:_,opts:P,iosMiniappJson:m,isPublish:g}}async writeI18NInfoFile(e,i,t){Object.keys(i).forEach(n=>{if("base"===n)return;let a="";Object.keys(t).forEach(e=>{var s,o,r,l;(null===(o=null===(s=i[n])||void 0===s?void 0:s.ios)||void 0===o?void 0:o[t[e]])&&(a+=`${e} = "${null===(l=null===(r=i[n])||void 0===r?void 0:r.ios)||void 0===l?void 0:l[t[e]]}";\n`)}),a&&(fs_extra_1.default.ensureDirSync(path_1.default.join(e,n+".lproj")),fs_extra_1.default.writeFileSync(path_1.default.join(e,n+".lproj/InfoPlist.strings"),a))})}getMaterialFilePath(e,i){if(!i)return"";let t=i;if(path_1.default.isAbsolute(i)||(t=path_1.default.join(e,i)),fs_extra_1.default.existsSync(t))return t;const n=(0,tools_1.generateMD5)(i),a=path_1.default.basename(i),s=path_1.default.join(e,exports.remoteBuildProjectMaterialAbsoluteCacheDir,`${n}_${a}`);return fs_extra_1.default.existsSync(s)?s:""}}exports.default=new buildCloudManager;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.printFoundDevices=exports.formattedDeviceName=exports.matchingDevice=exports.findMatchingSimulator=exports.getDevices=exports.parseXctraceIOSDevicesList=void 0;const tslib_1=require("tslib"),execa=tslib_1.__importStar(require("execa")),env_1=require("../../../utils/env"),miniappBuilder=tslib_1.__importStar(require("../../../utils/miniapp-builder"));function parseIOSDevicesList(e){const i=[];return e.split("\n").forEach(e=>{const t=e.match(/(.*?) (\(([0-9.]+)\) )?\[([0-9A-F-]+)\]( \(Simulator\))?/i);if(t){const[,e,,r,n,s]=t,c={name:e,udid:n};r?(c.version=r,c.type=s?"simulator":"device"):c.type="catalyst",i.push(c)}}),i}function parseXctraceIOSDevicesList(e){const i=[];let t=!1;return-1===e.indexOf("== Simulators ==")?[]:(e.split("\n").forEach(e=>{"== Simulators =="===e&&(t=!0);const r=e.match(/(.*?) (\(([0-9.]+)\) )?\(([0-9A-F-]+)\)/i);if(r){const[,e,,n,s]=r,c={name:e,udid:s};n?(c.version=n,c.type=t?"simulator":"device"):c.type="catalyst",i.push(c)}}),i)}async function getDevices(e){let i=[];const{recorder:t}=e||{};try{const e=await execa.default("xcrun",["xctrace","list","devices"],{env:(0,env_1.getProcessEnv)()});i=parseXctraceIOSDevicesList(""===e.stderr?e.stdout:e.stderr)}catch(e){try{i=parseIOSDevicesList(execa.sync("xcrun",["instruments","-s"],{env:(0,env_1.getProcessEnv)()}).stdout)}catch(e){}}let r=i.filter(e=>"device"===e.type);if(!r.length)try{r=await miniappBuilder.getIOSDevices(e||{}),r.forEach(e=>{i.find(i=>i.udid===e.udid)||i.push(e)})}catch(e){t?t.progress("get Devices error:"+e.message):console.error("get Devices error:",e)}return i.filter(e=>!!e.version)}function findMatchingSimulator(e,i){if(!e.devices)return null;const{devices:t}=e;let r,n,s=null;if(null==i?void 0:i.device){const e=i.device.match(/(.*)? (?:\((\d+\.\d+)?\))$/);void 0!==(null==e?void 0:e[2])?(r=e[2],s=e[1]):s=i.device}for(const e in t){const c=t[e];let o=e;if(o.startsWith("com.apple.CoreSimulator.SimRuntime.")&&(o=o.replace(/^com\.apple\.CoreSimulator\.SimRuntime\.([^-]+)-([^-]+)-([^-]+)$/g,"$1 $2.$3")),(o.includes("iOS")||o.includes("tvOS"))&&(!r||o.endsWith(r)))for(const e of c){if("(available)"!==e.availability&&"YES"!==e.isAvailable&&!0!==e.isAvailable)continue;const t="Booted"===e.state,r={udid:e.udid,name:e.name,booted:t,version:o};if(null==i?void 0:i.udid){if(e.udid===i.udid)return r}else{if(t&&null===s)return r;e.name!==s||n||(n=r)}}}return n}function matchingDevice(e,i,t){if(!0===i){const i=e.find(e=>"device"===e.type);return i?(t.progress(`Using first available device named "${i.name}" due to lack of name supplied.`),i):void t.progress("No iOS devices connected.")}const r=e.find(e=>e.name===i||formattedDeviceName(e)===i);if(!r)throw new Error(`Could not find a device named: "${String(i)} ${printFoundDevices(e)}}".`);return r}function formattedDeviceName(e){return e.version?`${e.name} (${e.version})`:e.name}function printFoundDevices(e){return["Available devices:",...e.map(e=>` - ${e.name} (${e.udid})`)].join("\n")}exports.parseXctraceIOSDevicesList=parseXctraceIOSDevicesList,exports.getDevices=getDevices,exports.findMatchingSimulator=findMatchingSimulator,exports.matchingDevice=matchingDevice,exports.formattedDeviceName=formattedDeviceName,exports.printFoundDevices=printFoundDevices;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.IOSUtils=void 0;const tslib_1=require("tslib"),child_process=tslib_1.__importStar(require("child_process")),path_1=tslib_1.__importDefault(require("path")),fs_extra_1=tslib_1.__importDefault(require("fs-extra")),env_1=require("../../../utils/env"),deviceUtils=tslib_1.__importStar(require("./device")),projectConfigUtils=tslib_1.__importStar(require("./projectconfig")),cp_1=require("../../../utils/cp"),miniapp_builder_1=require("../../../utils/miniapp-builder"),miniappJson_1=require("../../../utils/miniappJson"),singletontask_1=require("../../../utils/singletontask"),buildCloud_1=tslib_1.__importStar(require("./buildCloud")),tools_1=require("../../../utils/tools"),ProjectMiniappJsonSplashScreenThemeKey="__splashscreenTheme",_iconInfoMap={appStore1024:{size:[1024,1024],scale:1,idiom:"ios-marketing",required:!0},mainIcon120:{size:[60,60],scale:2,idiom:"iphone",required:!0},mainIcon180:{size:[60,60],scale:3,idiom:"iphone"},spotlightIcon80:{size:[40,40],scale:2,idiom:"iphone"},spotlightIcon120:{size:[40,40],scale:3,idiom:"iphone"},settingsIcon58:{size:[29,29],scale:2,idiom:"iphone"},settingsIcon87:{size:[29,29],scale:3,idiom:"iphone"},notificationIcon40:{size:[20,20],scale:2,idiom:"iphone"},notificationIcon60:{size:[20,20],scale:3,idiom:"iphone"},ipadMainIcon152:{size:[76,76],scale:2,idiom:"ipad"},ipadMainIcon167:{size:[83.5,83.5],scale:2,idiom:"ipad"},ipadSpotlightIcon40:{size:[40,40],scale:1,idiom:"ipad"},ipadSpotlightIcon80:{size:[40,40],scale:2,idiom:"ipad"},ipadSettingsIcon29:{size:[29,29],scale:1,idiom:"ipad"},ipadSpotlightIcon58:{size:[29,29],scale:2,idiom:"ipad"},ipadNotificationIcon20:{size:[20,20],scale:1,idiom:"ipad"},ipadNotificationIcon40:{size:[20,20],scale:2,idiom:"ipad"}},_allowTheme=["Light","LightSpecial","Dark","DarkSpecial","Default"],_getDepReg=e=>new RegExp(`s.subspec '${e}'.*\n(?:.*\n)*?(?:.*sp.vendored_frameworks = \\[\n)((?:.*'.*?'.*\n)*?)(?:.*\\]\n)`,"m"),buildIOSPluginTask={};class IOSUtils{constructor(e,i={},t,n){this.root=e,this.userConfig=i,this.miniappDirPath=t,this.devtoolsVersion=n}getProjectConfig(){const e=projectConfigUtils.getProjectConfig(this.root,this.userConfig);if(!e)throw new Error("iOS project folder not found. Are you sure this is a miniapp project?");return e}getBundleId(e){return child_process.execFileSync("/usr/libexec/PlistBuddy",["-c","Print:CFBundleIdentifier",path_1.default.join(e,"Info.plist")],{encoding:"utf8",env:(0,env_1.getProcessEnv)()}).trim()}tryInstallPod(e,i){const t=this.getProjectConfig(),{sourceDir:n}=t,o={cwd:n,env:(0,env_1.getProcessEnv)()};i.progress("export LANG=en_US.UTF-8 && pod install"),child_process.execSync("export LANG=en_US.UTF-8 && pod install",o)}async runLocal(e,i){const t=this.getProjectConfig(),{sourceDir:n}=t;process.chdir(n),this.tryInstallPod(e,i);const o=path_1.default.basename(t.name,path_1.default.extname(t.name)),a=e.scheme||o;if(i.progress(`Found Xcode ${t.isWorkspace?"workspace":"project"} "${t.name}"`),e.device||e.udid){if(e.udid||e.device){const n=await deviceUtils.getDevices({recorder:i}),o=n.find(i=>i.udid===e.udid||i.name===e.device);if(!o)throw new Error(`Could not find a device with udid(${e.udid}) or device(${e.device}). ${deviceUtils.printFoundDevices(n)}`);if("simulator"===o.type)return void await this.runOnSimulatorLocal(t,a,e,i);await this.runOnDeviceLocal(t,a,o,i)}}else await this.runOnSimulatorLocal(t,a,e,i)}async runCloud(e,i){try{const{deviceType:t,udid:n,projectPath:o,demoIpaPath:a,sdkPath:s,bindingInfo:r,certificateInfo:c,arch:l="arm64",pluginDirList:d,miniappCacheDirPath:p,theme:u,i18nInfo:h}=e,f=buildCloud_1.default.generateTempDemoIpaPath(a),_="simulator"===t,m=(0,miniappJson_1.tryGetIOSMiniappJson)(o);let g=r;if(c.signType===miniapp_builder_1.miniappSinTypes.appleId.type){const{mobileapp_info:e={}}=g;g=Object.assign(Object.assign({},g),{mobileapp_info:Object.assign(Object.assign({},e),{bundle_id:miniapp_builder_1.DEFAULT_BUNDLE_ID,debug_ios_bundle_id:miniapp_builder_1.DEFAULT_BUNDLE_ID})})}const b=await buildCloud_1.default.updateIOSInfoPlistInfo(o,g,f,m,i,h);await buildCloud_1.default.updateIOSAppConfigPlistInfo(o,g,f,m,s,_,i,u,h),await buildCloud_1.default.updateIOSAppexInfoPlistInfo(g,f,m,b,i),await buildCloud_1.default.updateIOSIcons(o,f,"",m,!1,i),await buildCloud_1.default.updateSplashScreen(o,f,m,i,u),await buildCloud_1.default.updateExtendedSdk(g,f,s,l,m,i),await buildCloud_1.default.updatePlugin(f,d,o,m,p,!1,b,i);const v=await buildCloud_1.default.getEntitlements(g,f,m,i);if("device"===t){const{mobileapp_info:e={}}=g,t=e.ios_flag&&e.bundle_id||e.debug_ios_bundle_id;await(0,miniapp_builder_1.signAndInstallOrExport)(o,f,p,c,{bundleId:t,install:!0,deviceId:n,entitlements:v},{recorder:i,miniappDirPath:this.miniappDirPath,devtoolsVersion:this.devtoolsVersion})}else await this.runOnSimulatorCloud(f,{udid:n},i)}catch(e){throw new Error("Run the app failed:"+e.message)}}async buildLocal(e,i){const t=this.getProjectConfig();process.chdir(t.sourceDir);const n=path_1.default.basename(t.name,path_1.default.extname(t.name)),o=e.scheme||n;this.tryInstallPod(e,i),i.progress("start build ipa...");const a=await this.buildProjectArchive(t,{output:e.output,scheme:o},i),s=await this.exportArchive(t,a,e,i);return console.log("Successfully build ipa: "+s),s}async buildCloud(e,i){try{const{projectPath:t,certificateInfo:n,miniappCacheDirPath:o}=e,a=await buildCloud_1.default.buildCloud(e,i),{demoIpaPath:s,opts:r}=a,c={recorder:i,miniappDirPath:this.miniappDirPath,devtoolsVersion:this.devtoolsVersion};a.isPublish||await(0,miniapp_builder_1.signAndInstallOrExport)(t,s,o,n,r,c)}catch(e){throw new Error("Build ipa failed:"+e.message)}}async genProjectMaterialMap(e,i,t,n){var o,a;const s=buildCloud_1.remoteBuildProjectMaterialAbsoluteCacheDir,r=path_1.default.join(i,s),c=(0,miniappJson_1.tryGetIOSMiniappJson)(e);function l(e,i){fs_extra_1.default.ensureDirSync(path_1.default.dirname(i)),fs_extra_1.default.copyFileSync(e,i)}function d(t,n,o=!0){if(!n){if(o)return"";throw new Error(`file cant be empty for cloud build, key: ${t} , fileName: ${n}`)}if(path_1.default.isAbsolute(n)){const e=path_1.default.basename(n);if(!fs_extra_1.default.existsSync(n)){if(o)return"";throw new Error(`file cant be empty for cloud build, key: ${t} , fileName: ${n}`)}const i=(0,tools_1.generateMD5)(n);return l(n,path_1.default.join(r,`${i}_${e}`)),path_1.default.join(s,e)}const a=path_1.default.join(e,n),c=path_1.default.join(i,n);if(!fs_extra_1.default.existsSync(a)){if(o)return"";throw new Error(`file cant be empty for cloud build, key: ${t} , fileName: ${n}`)}return l(a,c),n}fs_extra_1.default.ensureDirSync(r);const{privacy:p={},icons:u={},splashscreen:h={},buildCloud:f={}}=c,_=d("project.miniapp.json","project.miniapp.json",!1),m=d("project.config.json","project.config.json",!1),g=(0,miniappJson_1.getMiniprogramRoot)(e),b=d("app.json",path_1.default.join(g,"app.json"),!1),{template:v,contentViewImage:y,cancelButtonImage:S,confirmButtonImage:w}=p,P=d("privacy template",v),I=d("privacy contentViewImage",y),x=d("privacy cancelButtonImage",S),j=d("privacy confirmButtonImage",w),E=[];for(const e in u)if(u[e]){const i=d("icons."+e,u[e],!1);i&&E.push(i)}const O=d("splashscreen.customImage",h.customImage),{p12:D,profile:C,tpnsProfile:A}=f,$=d("p12 Path",D,!1),T=d("profile Path",C,!1);let k=void 0;!0===(null===(o=null==c?void 0:c.tpush)||void 0===o?void 0:o.useExtendedLib_WeAppTPNS)&&(k=d("tpns profile Path",A,!0!==(null===(a=null==c?void 0:c.tpush)||void 0===a?void 0:a.useExtendedLib_WeAppTPNS)));const B="miniapp/ios/i18nInfo.json",F=path_1.default.join(e,B),U=d("i18n",B,!0);if(fs_extra_1.default.existsSync(F)){const i=function(e,i){function t(i,t,n){if(t[n]&&"object"==typeof t[n][i])for(const o in t[n][i])if("object"==typeof t[n][i]){const a=t[n][i][o];if("string"==typeof a&&a.length>0){fs_extra_1.default.existsSync(path_1.default.isAbsolute(a)?a:path_1.default.join(e,a))&&d(`i18nFiles.${n}.${o}`,a,!0)}}}try{const n=fs_extra_1.default.readJSONSync(path_1.default.join(e,i));for(const e in n)t("ios",n,e),t("android",n,e)}catch(e){return e.message}}(e,B);if(i)throw n.message("fail",i),new Error("copyi18NFiles error "+i)}const L=path_1.default.join(i,"project.miniapp.json");try{const e=fs_extra_1.default.readJsonSync(L);let{theme:i}=t;t.theme||(i="Dark"),e.__splashscreenTheme=i,fs_extra_1.default.writeJSONSync(L,e)}catch(e){throw new Error(`ReadWriteJsonFailed projectMiniappJsonCacheFilePath: ${L},error ${e.message}`)}const M=c["mini-plugin"];return M&&Array.isArray(M.ios)&&M.ios.forEach(e=>{!0===e.open&&e.resourcePath&&d(`mini-plugin ios ${e.pluginId}:${e.resourcePath}`,e.resourcePath)}),{projectMiniappJson:_,projectConfigJson:m,appJson:b,privacyJson:P,privacyContentViewImage:I,privacyCancelButtonImage:x,privacyConfirmButtonImage:j,icons:E,splashScreen:O,p12:$,profile:T,tpnsProfile:k,i18nJson:U}}async packIOSCloudBuildMaterial(e,i){i.progress("start uploadProjectAllMaterial");const{projectPath:t,matrialDistPath:n,theme:o}=e;await this.genProjectMaterialMap(t,n,e,i);i.progress("packIOSCloudBuildMaterial done")}launchSimulator(e,i){let t;try{t=JSON.parse(child_process.execFileSync("xcrun",["simctl","list","--json","devices"],{encoding:"utf8",env:(0,env_1.getProcessEnv)()}))}catch(e){throw new Error("Could not get the simulator list from Xcode. Please open Xcode and try running project directly from there to resolve the remaining issues."+e.message)}const n=["iPhone 13","iPhone 12","iPhone 11"].reduce((e,i)=>e||deviceUtils.findMatchingSimulator(t,{device:i}),deviceUtils.findMatchingSimulator(t,e));if(!n)throw new Error("No simulator available with "+(e.device?`name "${e.device}"`:`udid "${e.udid}"`));const o=child_process.execFileSync("xcode-select",["-p"],{encoding:"utf8",env:(0,env_1.getProcessEnv)()}).trim();if(child_process.execFileSync("open",[o+"/Applications/Simulator.app","--args","-CurrentDeviceUDID",n.udid],{env:(0,env_1.getProcessEnv)()}),!n.booted){const e=deviceUtils.formattedDeviceName(n);i.progress("Launching "+e),child_process.spawnSync("xcrun",["simctl","boot",n.udid],{env:(0,env_1.getProcessEnv)()})}return n}async runOnSimulatorCloud(e,i,t){const{udid:n}=i,o=this.launchSimulator({udid:n},t);await this.installAppOnSimulator(o,e,t),await this.launchAppOnSimulator(o,e,t)}async runOnSimulatorLocal(e,i,t,n){const o=this.launchSimulator(t,n),{appPath:a}=await this.buildProjectApp(e,{udid:o.udid,scheme:i},n);await this.installAppOnSimulator(o,a,n),await this.launchAppOnSimulator(o,a,n)}async runOnDeviceLocal(e,i,t,n){const{appPath:o}=await this.buildProjectApp(e,{udid:t.udid,scheme:i},n);if("catalyst"===t.type){child_process.spawn(`${o}/${i}`,[],{detached:!0,stdio:"ignore",env:(0,env_1.getProcessEnv)()}).unref()}else{const e=["--bundle",o,"--id",t.udid,"--justlaunch"];n.progress("Installing and launching your app on "+t.name);const i=path_1.default.join(__dirname,"../../../vendor/ios-deploy/ios-deploy");await(0,cp_1.spawnSync)(i,e,{},n)}return n.progress("Install successfully the app to the device.")}buildProjectApp(e,i,t){return new Promise((n,o)=>{const{scheme:a,udid:s}=i,r=[e.isWorkspace?"-workspace":"-project",e.name,"-scheme",a];let c;s&&r.push("-destination","id="+s),t.progress(`Building (using "xcodebuild ${r.join(" ")}")`),this.xcbeautifyAvailable()?c=child_process.spawn("xcbeautify",[],{stdio:["pipe",process.stdout,process.stderr],env:(0,env_1.getProcessEnv)()}):this.xcprettyAvailable()&&(c=child_process.spawn("xcpretty",[],{stdio:["pipe",process.stdout,process.stderr],env:(0,env_1.getProcessEnv)()}));const l=child_process.spawn("xcodebuild",r,{env:(0,env_1.getProcessEnv)()});let d="",p="";l.stdout.on("data",e=>{const i=e.toString();t.progress(i),d+=i,c&&c.stdin.write(e)}),l.stderr.on("data",e=>{const i=e.toString();p+=i,t.progress(i)}),l.on("close",i=>{if(c&&c.stdin.end(),0!==i)return void o(new Error(` Failed to build iOS project.\n We ran "xcodebuild" command but it exited with error code ${i}. To debug build\n logs further, consider building your app with Xcode.app, by opening\n ${e.name}.\n ${c?void 0:`${d}\n${p}`}\n `));let s;try{s=this.getBuildInfo(e,d,a)}catch(e){o(e)}t.progress("Successfully built the app"),n(s)})})}async installAppOnSimulator(e,i,t){const n=["simctl","install",e.udid,i];await(0,cp_1.spawnSync)("xcrun",n,{},t)}async launchAppOnSimulator(e,i,t){const n=this.getBundleId(i),o=["simctl","launch",e.udid,n];await(0,cp_1.spawnSync)("xcrun",o,{},t),t.progress("Successfully launched the app on the simulator")}async buildProjectArchive(e,i,t){const{output:n,scheme:o,udid:a}=i,s=path_1.default.join(n,"./app"),{sourceDir:r}=e;fs_extra_1.default.ensureDirSync(path_1.default.dirname(s));const c=["archive",e.isWorkspace?"-workspace":"-project",e.name,"-scheme",o,"-archivePath",s];a&&c.push("-destination","id="+a);try{if(await(0,cp_1.spawnSync)("xcodebuild",c,{cwd:r},t),!fs_extra_1.default.existsSync(s+".xcarchive"))throw new Error(`Failed to build iOS project.\n ${s+".xcarchive"} does not found\n `);return t.progress(`Successfully archive the app: ${s}.xcarchive`),s+".xcarchive"}catch(i){throw new Error(`Failed to build iOS project. To debug build\n logs further, consider building your app with Xcode.app, by opening\n ${e.name}.\n `)}}async exportArchive(e,i,t,n){const o=path_1.default.join(t.output,"ipa");fs_extra_1.default.ensureDirSync(o),fs_extra_1.default.emptyDirSync(o);const{exportOptionPlistPath:a}=t;if(!a)throw new Error("build ios ipa require exportOptionPlistPath in project.miniapp.json");let s="";s=path_1.default.isAbsolute(a)?a:path_1.default.join(t.projectPath,a);const r=["-exportArchive","-archivePath",i,"-exportOptionsPlist",s,"-exportPath",o];try{await(0,cp_1.spawnSync)("xcodebuild",r,{cwd:e.sourceDir},n)}catch(i){throw new Error(`To debug build\n logs further, consider building your app with Xcode.app, by opening\n ${e.name}.\n `)}return fs_extra_1.default.removeSync(i),o}getTargetPaths(e){const i=JSON.parse(e);for(const e in i){if("app"===i[e].buildSettings.WRAPPER_EXTENSION)return{targetBuildDir:i[e].buildSettings.TARGET_BUILD_DIR,executableFolderPath:i[e].buildSettings.EXECUTABLE_FOLDER_PATH}}return{}}getBuildInfo(e,i,t){const n=this.getPlatformName(i),o=[e.isWorkspace?"-workspace":"-project",e.name,"-scheme",t,"-sdk",n,"-showBuildSettings","-json"].join(" "),a=child_process.execSync("xcodebuild "+o,{encoding:"utf8",cwd:e.sourceDir,env:(0,env_1.getProcessEnv)()}),s=this.getBuildProductDir(i),{executableFolderPath:r}=this.getTargetPaths(a);if(!r)throw new Error("Failed to get the app name.");return{sdk:n,appPath:`${s}/${r}`}}getPlatformName(e){const i=/export PLATFORM_NAME\\?="?(\w+)"?$/m.exec(e);if(!i)throw new Error("Couldn't find PLATFORM_NAME in xcodebuild output.");return i[1]}getBuildProductDir(e){const i=/export BUILT_PRODUCTS_DIR\\?="?(.+)"?$/m.exec(e);if(!i)throw new Error("Couldn't find BUILT_PRODUCTS_DIR in xcodebuild output.");return i[1]}xcbeautifyAvailable(){try{child_process.execSync("xcbeautify --version",{stdio:[0,"pipe","ignore"],env:(0,env_1.getProcessEnv)()})}catch(e){return!1}return!0}xcprettyAvailable(){try{child_process.execSync("xcpretty --version",{stdio:[0,"pipe","ignore"],env:(0,env_1.getProcessEnv)()})}catch(e){return!1}return!0}async buildPlugin(e,i){const{pluginId:t,projectPath:n,buildShellPath:o}=e;i.progress("start build native plugin...");try{const e=[n,t];fs_extra_1.default.chmodSync(o,"777"),buildIOSPluginTask[t]?(i.message("fail","存在未结束的插件构建任务,需等待构建结束..."),await buildIOSPluginTask[t].getResult(!0)):(buildIOSPluginTask[t]=new singletontask_1.SingletonTask(cp_1.spawnSyncExecShell.bind(null,o,e,{},i)),await buildIOSPluginTask[t].getResult(!0),buildIOSPluginTask[t]=void 0)}catch(e){throw buildIOSPluginTask[t]=void 0,new Error("build plugin failed: "+e)}}async writeI18NInfoFile(e,i,t){Object.keys(i).forEach(n=>{if("base"===n)return;let o="";Object.keys(t).forEach(e=>{var a,s,r,c;(null===(s=null===(a=i[n])||void 0===a?void 0:a.ios)||void 0===s?void 0:s[t[e]])&&(o+=`${e} = "${null===(c=null===(r=i[n])||void 0===r?void 0:r.ios)||void 0===c?void 0:c[t[e]]}";\n`)}),o&&(fs_extra_1.default.ensureDirSync(path_1.default.join(e,n+".lproj")),fs_extra_1.default.writeFileSync(path_1.default.join(e,n+".lproj/InfoPlist.strings"),o))})}}exports.IOSUtils=IOSUtils;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findAllPodfilePaths=exports.getProjectConfig=void 0;const tslib_1=require("tslib"),path=tslib_1.__importStar(require("path")),fs=tslib_1.__importStar(require("fs")),glob=tslib_1.__importStar(require("glob")),GLOB_EXCLUDE_PATTERN=["**/@(Pods|node_modules|Carthage)/**"];function getProjectConfig(e,t={}){const o=findXcodeProject(e);return o?Object.assign({sourceDir:e},o):null}function findXcodeProject(e){const t=fs.readdirSync(e);for(let e=t.sort().length-1;e>=0;e--){const o=t[e],r=path.extname(o);if(".xcworkspace"===r)return{name:o,isWorkspace:!0};if(".xcodeproj"===r)return{name:o,isWorkspace:!1}}return null}function findAllPodfilePaths(e){return glob.sync("**/Podfile",{cwd:e,ignore:GLOB_EXCLUDE_PATTERN})}exports.getProjectConfig=getProjectConfig,exports.findAllPodfilePaths=findAllPodfilePaths;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.NativeCompiler=void 0;const define_1=require("../../config/define"),miniappJson_1=require("../../utils/miniappJson"),android_1=require("./android"),ios_1=require("./ios");class NativeCompiler{constructor(t){this.projectPath=t.projectInfo.projectPath,this.miniappDirPath=t.miniappDirPath,this.devtoolsVersion=t.devtoolsVersion}getHandler(t){let i=null;const e=(0,miniappJson_1.getMiniappJson)(this.projectPath,t);return t===define_1.PLATFORM["mini-android"]?i=new android_1.AndroidUtils(e.projectPath,e.project,this.miniappDirPath,this.devtoolsVersion):t===define_1.PLATFORM["mini-ios"]&&(i=new ios_1.IOSUtils(e.projectPath,e.project,this.miniappDirPath,this.devtoolsVersion)),i}validNativePlatform(t){return t===define_1.PLATFORM["mini-android"]||t===define_1.PLATFORM["mini-ios"]}async getAndroidDevices(){const t=this.getHandler(define_1.PLATFORM["mini-android"]);return await t.getDevices()}async getIOSDevices(){const t=this.getHandler(define_1.PLATFORM["mini-ios"]);return await t.getDevices()}async run(t,i){const{targetPlatform:e,opts:a}=t;if(!this.validNativePlatform(e))return;const r=(0,miniappJson_1.getMiniappJson)(this.projectPath,e),n=this.getHandler(e);let s={};const{buildType:o="LOCAL"}=a;return"LOCAL"===o?(s=r.runArgs||{},await n.runLocal(Object.assign(Object.assign({projectPath:this.projectPath},s),a),i)):await n.runCloud(Object.assign({projectPath:this.projectPath},a),i)}async build(t,i){const{targetPlatform:e,opts:a={}}=t;if(!this.validNativePlatform(e))return;const r=this.getHandler(e),n=(0,miniappJson_1.getMiniappJson)(this.projectPath,e);let s={};const{buildType:o="LOCAL"}=a;return"LOCAL"===o?(s=n.buildArgs||{},await r.buildLocal(Object.assign(Object.assign({projectPath:this.projectPath},s),a),i)):await r.buildCloud(Object.assign({projectPath:this.projectPath},a),i)}async buildPlugin(t,i){const{targetPlatform:e,opts:a={}}=t;if(!this.validNativePlatform(e))return;const r=this.getHandler(e);return await r.buildPlugin(Object.assign({projectPath:this.projectPath},a),i)}async packIOSCloudBuildMaterial(t,i){const{targetPlatform:e,opts:a={}}=t;if(!this.validNativePlatform(e))return;const r=this.getHandler(e);return await r.packIOSCloudBuildMaterial(Object.assign({projectPath:this.projectPath},a),i)}}exports.NativeCompiler=NativeCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _a,_b;process.env&&process.env.isDevtools&&require("../../utils/hackrequire/index"),Object.defineProperty(exports,"__esModule",{value:!0}),(null===(_a=process.env)||void 0===_a?void 0:_a.isDevtools)&&require("../../utils/hackrequire/index");const entryProcess_1=require("../../utils/subprocess/entryProcess"),progressRecorder_1=require("../../utils/progressRecorder"),nativeCompiler_1=require("./nativeCompiler");let nativeCompiler;async function initHandler(e){const{projectInfo:r,passData:i}=e.data,{miniappDirPath:s,devtoolsVersion:a}=i;nativeCompiler=new nativeCompiler_1.NativeCompiler({projectInfo:r,miniappDirPath:s,devtoolsVersion:a})}async function messageHandler(e){if(e.type,"request"===e.type){const{id:r,name:i,data:s}=e,a=r,t=new progressRecorder_1.Recorder((e,r,i)=>{process.send({type:"progress",id:e,taskId:a,status:r,message:i})});s.fullEnv&&(global.fullEnv=s.fullEnv);try{let e;const n=`${i}-${a}`;if("buildNative"===i)e=await t.run(n,async()=>await nativeCompiler.build(s,t));else if("runNative"===i)e=await t.run(n,async()=>await nativeCompiler.run(s,t));else if("buildNativePlugin"===i)e=await t.run(n,async()=>await nativeCompiler.buildPlugin(s,t));else{if("packIOSCloudBuildMaterial"!==i)throw new Error("unknown command "+i);e=await t.run(n,async()=>await nativeCompiler.packIOSCloudBuildMaterial(s,t))}process.send({type:"response",id:r,data:e})}catch(e){process.send({type:"response",id:r,data:null,error:{code:e.code||-1,message:e.message,stack:e.stack,path:e.path||""}})}}}(0,entryProcess_1.runSubProcess)({initHandler:initHandler,messageHandler:messageHandler,timeout:(null===(_b=process.env)||void 0===_b?void 0:_b.timeout)||3e5});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.BaseConditionCompiler=void 0;const define_1=require("../define");class BaseConditionCompiler{constructor({targetPlatform:e,targetPlatformDefines:t,type:i,verbose:r,tripleSlash:o}){this.targetPlatform="mini-weixin",this.targetPlatformDefines={},this.type="ts",this.verbose=!1,this.tripleSlash=!1,e||console.error("platform is required"),this.targetPlatform=e,this.targetPlatformDefines=t,this.type=i,this.verbose=r,this.tripleSlash=o}compile(e,t){const i=new define_1.MacroDefine({targetPlatform:this.targetPlatform,filePath:e});return this.doCompile({filePath:e,content:t,macroDefine:i})}}exports.BaseConditionCompiler=BaseConditionCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.JSONConditionCompiler=void 0;const tslib_1=require("tslib"),lodash_1=tslib_1.__importDefault(require("lodash")),define_1=require("../../../../config/define"),config_1=require("../../../../config/config"),common_1=require("../../../../utils/common"),tools_1=require("../../../../utils/tools"),base_1=require("./base");class JSONConditionCompiler extends base_1.BaseConditionCompiler{doCompile(e){const{filePath:o,content:i,macroDefine:r}=e,t=i.toString();t||(0,common_1.throwError)({filePath:o,msg:"Empty file is NOT a valid json file",code:config_1.JSON_PARSE_ERR});const s=r.getDefines(),n=Object.values(define_1.PLATFORM),a=s.PLATFORM;let c={};try{c=JSON.parse(t)}catch(e){const i=(0,tools_1.formatJSONParseErr)({filePath:o,data:t,error:e});(0,common_1.throwError)({filePath:o,msg:i,code:config_1.JSON_PARSE_ERR})}const l=c[a]||("mini-weixin"===a?c["mini-wechat"]:{});n.forEach(e=>{c[e]&&delete c[e]});const f=c.subPackages||c.subpackages,d=l.subPackages||l.subpackages;if(Array.isArray(f)&&Array.isArray(d)){for(const e in d){const o=d[e].root,i=d[e].pages;if(o&&i){const r=f.find(e=>e.root===o);r?(r.pages=[...new Set([...r.pages,...i])],r.name=d[e].name):f.push(d[e])}}return delete l.subPackages,delete l.subpackages,JSON.stringify(lodash_1.default.merge(c,l))}return JSON.stringify(lodash_1.default.merge(c,l))}}exports.JSONConditionCompiler=JSONConditionCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MacroConditionCompiler=void 0;const tslib_1=require("tslib"),expression_1=tslib_1.__importDefault(require("../../../../utils/expression")),base_1=require("./base");var IfType;!function(e){e[e.If=0]="If",e[e.Elif=1]="Elif"}(IfType||(IfType={}));const deleteFlag="-----mini-delete-flag-----";let useTripleSlash;class IfBlock{constructor(e,s,t=[],i=null,n=[]){this.startIx=e,this.endIx=s,this.elifIxs=t,this.elseIx=i,this.innerIfs=n}getIfRange(){const e=this.elifIxs.length>0?this.elifIxs[0]:null!==this.elseIx?this.elseIx:this.endIx;return[this.startIx,e]}getElifRange(e){if(this.elifIxs.length>e){return[this.elifIxs[e],this.elifIxs.length>e+1?this.elifIxs[e+1]:null!==this.elseIx?this.elseIx:this.endIx]}throw new Error(`Invalid elif index '${e}', there are only ${this.elifIxs.length} elifs.`)}getElseRange(){if(null!==this.elseIx)return[this.elseIx,this.endIx];throw new Error("Cannot use elseRange when elseIx is null.")}}class MacroConditionCompiler extends base_1.BaseConditionCompiler{constructor(){super(...arguments),this.getIFRegex=()=>".wxml"===this.type?/^[\s]*<!--[\s]*#(if|elif)[\s]+([\s\S]+)-->[\s]*$/g:".wxss"===this.type?/^[\s]*\/\*[\s]*#(if|elif)[\s]+([\s\S]+)\*\/[\s]*$/g:useTripleSlash?/^[\s]*\/\/\/[\s]*#(if|elif)[\s]+([\s\S]+)$/g:/^[\s]*\/\/[\s]*#(if|elif)[\s]+([\s\S]+)$/g,this.getELSERegex=()=>".wxml"===this.type?/^[\s]*<!--[\s]*#(else)[\s]*-->[\s]*$/g:".wxss"===this.type?/^[\s]*\/\*[\s]*#(else)[\s]*\*\/[\s]*$/g:useTripleSlash?/^[\s]*\/\/\/[\s]*#(else)[\s]*$/g:/^[\s]*\/\/[\s]*#(else)[\s]*$/g,this.getENDIFRegex=()=>".wxml"===this.type?/^[\s]*<!--[\s]*#(endif)[\s]*-->[\s]*$/g:".wxss"===this.type?/^[\s]*\/\*[\s]*#(endif)[\s]*\*\/[\s]*$/g:useTripleSlash?/^[\s]*\/\/\/[\s]*#(endif)[\s]*$/g:/^[\s]*\/\/[\s]*#(endif)[\s]*$/g,this.getFefineRegex=()=>".wxml"===this.type?/^[\s]*<!--[\s]*#define[\s]+(\S+)[\s]+(\S+)[\s]*-->[\s]*$/g:".wxss"===this.type?/^[\s]*\/\*[\s]*#define[\s]+(\S+)[\s]+(\S+)[\s]*\*\/[\s]*$/g:useTripleSlash?/^[\s]*\/\/\/[\s]*#define[\s]+(\S+)[\s]+(\S+)[\s]*$/g:/^[\s]*\/\/[\s]*#define[\s]+(\S+)[\s]+(\S+)[\s]*$/g}getFileDefines(e){if(-1===e.indexOf("#define"))return{};const s=e.split("\n"),t={};for(let e=0;e<s.length;e++)if(this.matchDefine(s[e])){const{key:i,val:n}=this.parseDefine(s[e]);t[i]=n}return t}matchDefine(e){return null!==this.getFefineRegex().exec(e)}parseDefine(e){const s=this.getFefineRegex().exec(e);if(s)return{key:s[1].trim(),val:s[2].trim()};throw new Error(`Could not parse #if: '${e}'.`)}applyDefines(e){for(let s=0;s<e.length;s++)this.matchDefine(e[s])&&(e[s]=deleteFlag)}findIFBlocks(e){const s=[];for(let t=0;t<e.length;t++)if(this.matchIF(e[t])){const i=this.parseIFBlock(e,t);s.push(i),t=i.endIx}return s}parseIFBlock(e,s){const t=[];let i,n=null;const l=[];for(let r=s+1;r<e.length;r++){const s=e[r];if(this.matchIF(s)){const s=this.parseIFBlock(e,r);l.push(s),r=s.endIx;continue}if(this.matchIF(s,IfType.Elif)){t.push(r);continue}if(this.matchELSE(s)){n=r;continue}if(this.matchENDIF(s)){i=r;break}}if(void 0===i)throw new Error(`#if without #endif on line ${s+1}.`);return new IfBlock(s,i,t,n,l)}matchIF(e,s=IfType.If){const t=this.getIFRegex().exec(e);return null!==t&&(s===IfType.If&&"if"===t[1]||s===IfType.Elif&&"elif"===t[1])}parseIF(e){const s=this.getIFRegex().exec(e);if(s)return s[2].trim();throw new Error(`Could not parse #if: '${e}'.`)}matchENDIF(e){const s=this.getENDIFRegex().exec(e);return Boolean(s)}matchELSE(e){const s=this.getELSERegex().exec(e);return Boolean(s)}applyIF(e,s,t,i=!1,n){let l=null;const r=this.parseIF(e[s.startIx]),o=(e,t)=>{if(i)throw new Error(`#if block lines [${s.startIx+1}-${s.endIx+1}]: Condition '${e}' is ${t?"TRUE":"FALSE"}. ${null!==l?`Including lines [${l[0]+1}-${l[1]+1}]`:"Excluding everything"} (${n})`)};if(this.evaluate(r,t))l=s.getIfRange(),o(r,!0);else{for(let i=0;i<s.elifIxs.length;i++){const n=e[s.elifIxs[i]],r=this.parseIF(n);if(this.evaluate(r,t)){l=s.getElifRange(i),o(r,!0);break}}null===l&&(null!==s.elseIx&&(l=s.getElseRange()),o(r,!1))}null!==l?(this.blankCode(e,s.startIx,l[0]),this.blankCode(e,l[1],s.endIx)):this.blankCode(e,s.startIx,s.endIx);for(const i of s.innerIfs)null!==l&&i.startIx>=l[0]&&i.startIx<=l[1]&&this.applyIF(e,i,t,this.verbose)}evaluate(e,s){let t;e=e.replace(/defined\(([a-z0-9]*)\)/gi,(e,s)=>`(typeof ${s} !== "undefined")`);try{t=new expression_1.default(e).parse()(s)}catch(e){t=!1}return t}blankCode(e,s,t=s){for(let i=s;i<=t;i++)e[i]=deleteFlag}doCompile(e){const{filePath:s,content:t,macroDefine:i}=e;try{const e=t.toString(),n=this.getFileDefines(e),l=Object.assign(Object.assign({},i.getDefines()),n);void 0===this.tripleSlash&&(this.tripleSlash=!1),useTripleSlash=this.tripleSlash;const r=e.split("\n");if(this.applyDefines(r),-1!==t.indexOf("#if")){const e=this.findIFBlocks(r);for(const t of e)this.applyIF(r,t,l,this.verbose,s)}return r.filter(e=>e!==deleteFlag).join("\n")}catch(e){throw new Error(`[PreCompiler]compile ${s} error:${e.message}`)}}}exports.MacroConditionCompiler=MacroConditionCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.PlantConditionCompiler=void 0;const base_1=require("./base");class PlantConditionCompiler extends base_1.BaseConditionCompiler{doCompile(e){return e.content}}exports.PlantConditionCompiler=PlantConditionCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MacroDefine=void 0;const define_1=require("../../../config/define"),defaultDefine={};class MacroDefine{constructor({filePath:t,targetPlatform:e,targetPlatformDefines:s={}}){this.defaultConstants=defaultDefine,this.customConstants={},this.defaultConstants.FILE=t,this.defaultConstants.PLATFORM=e,this.defaultConstants.MP=e===define_1.PLATFORM["mini-weixin"],this.defaultConstants.ANDROID=e===define_1.PLATFORM["mini-android"],this.defaultConstants.IOS=e===define_1.PLATFORM["mini-ios"],this.defaultConstants.NATIVE=e===define_1.PLATFORM["mini-android"]||e===define_1.PLATFORM["mini-ios"],this.defines(s)}defines(t){for(const e in t)this.define(e,t[e])}define(t,e){if(this.defaultConstants[t])throw new Error(`macro ${t} is forbidden`);this.customConstants[t]=e}isDefined(t){return!!this.defaultConstants[t]||!!this.customConstants[t]}getDefines(){return Object.assign(Object.assign({},this.defaultConstants),this.customConstants)}}exports.MacroDefine=MacroDefine;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ConditionCompiler=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),fs_1=tslib_1.__importDefault(require("fs")),define_1=require("../../../config/define"),plant_1=require("./compiler/plant"),json_1=require("./compiler/json"),macro_1=require("./compiler/macro"),minimatch_1=tslib_1.__importDefault(require("minimatch")),tools_1=require("../../../utils/tools"),defaultCompileSetting={targetPlatform:define_1.PLATFORM["mini-weixin"],targetPlatformDefines:{}};class ConditionCompiler{constructor(t,e){this.extToCompiler={},this.project=t,this.devtoolMessagehub=e}getCompiler(t,e){const{targetPlatform:o,targetPlatformDefines:i={}}=e;if(!Object.values(define_1.PLATFORM).includes(o))throw new Error(`platform ${o} is not supported`);if(!this.extToCompiler[t]){let e=null;const r={targetPlatform:o,targetPlatformDefines:i,type:t};e=[".wxml",".wxss",".less",".scss",".wxs",".ts",".js"].includes(t)?new macro_1.MacroConditionCompiler(r):".json"===t?new json_1.JSONConditionCompiler(r):new plant_1.PlantConditionCompiler(r),this.extToCompiler[t]=e}return this.extToCompiler[t].targetPlatform=e.targetPlatform,this.extToCompiler[t].targetPlatformDefines=e.targetPlatformDefines||{},this.extToCompiler[t]}shouldCompile(t){return!this.project.miniprogramRoot||this.project.miniprogramRoot&&t.startsWith(this.project.miniprogramRoot)||"project.config.json"===t||"project.private.config.json"===t}compileFile(t,e=defaultCompileSetting){var o;try{const o=path_1.default.join(this.project.projectPath,t);if(!fs_1.default.existsSync(o))throw Error("no such file or direactory: "+o);const i=path_1.default.extname(o),r=this.getCompiler(i,e).compile(o,this.project.getFile("",t));return Buffer.isBuffer(r)?r:Buffer.from(r)}catch(t){throw null===(o=this.devtoolMessagehub)||void 0===o||o.showBuildLog("compileFile","error",t.message),t}}compileProject(t=defaultCompileSetting){var e;if(!Object.values(define_1.PLATFORM).includes(t.targetPlatform))throw new Error(`platform ${t.targetPlatform} is not supported`);try{const e={},{targetPlatform:o,targetPlatformDefines:i={}}=t,r=this.project.getFileList();for(const t of r){if(!this.shouldCompile(t))continue;const r=this.compileFile(t,{targetPlatform:o,targetPlatformDefines:i});e[t]=r}}catch(t){throw null===(e=this.devtoolMessagehub)||void 0===e||e.showBuildLog("compileProject","error",t.message),t}return{}}filterResourceByPlatfrom(t=defaultCompileSetting){const{targetPlatform:e=define_1.PLATFORM["mini-weixin"]}=t;let o=this.project.getFileList();const i=(0,tools_1.getAppJson)(this.project,e).static||[];for(const t of i){const{pattern:i="",platforms:r=[]}=t,s=path_1.default.join(this.project.miniprogramRoot||"",i);if(!r.includes(e)){const t=o.filter(t=>(0,minimatch_1.default)(t,s));o=o.filter(e=>!t.includes(e)&&e!==s&&!(0,tools_1.normalizePath)(e).startsWith((0,tools_1.normalizePath)(s)))}}return o}}exports.ConditionCompiler=ConditionCompiler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ConditionCompiler=exports.PreCompiler=void 0;const precompileProject_1=require("../../project/advance/precompileProject"),define_1=require("../../config/define"),conditioncompile_1=require("./conditioncompile"),defaultCompileSetting={targetPlatform:define_1.PLATFORM["mini-weixin"],targetPlatformDefines:{}};class PreCompiler{constructor(e,o){this.project=e,this.devtoolMessagehub=o}async getPreCompileProject(e=defaultCompileSetting){const{targetPlatform:o=define_1.PLATFORM["mini-weixin"],targetPlatformDefines:i={},runEnv:t}=e,r=new conditioncompile_1.ConditionCompiler(this.project,this.devtoolMessagehub),n=new precompileProject_1.PreCompileProject(this.project,r,{targetPlatform:o,targetPlatformDefines:i,runEnv:t});return await n.ready(),n}}exports.PreCompiler=PreCompiler;var conditioncompile_2=require("./conditioncompile");Object.defineProperty(exports,"ConditionCompiler",{enumerable:!0,get:function(){return conditioncompile_2.ConditionCompiler}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.PreCompileProject=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),stream_1=require("stream"),baseProject_1=require("../baseProject"),tools_1=require("../../utils/tools"),define_1=require("../../config/define");class PreCompileProject extends baseProject_1.BaseProject{constructor(t,e,i){var r,s,o;if(super(),this.event=new stream_1.EventEmitter,this.targetPlatform=define_1.PLATFORM["mini-weixin"],this.targetPlatformDefines={},this._fileBufferCache={},this.onFileChange=async(t,e)=>{if(e=(0,tools_1.normalizePath)(e).replace(/\/$/,"").replace(/^\//,""),"add"===t&&(this.cacheDirName(this._dirSet,path_1.default.posix.dirname(e)),this._fileSet.add(e),this.shouldConditionalCompile()?this._fileBufferCache[e]=this.conditionCompiler.compileFile(e,{targetPlatform:this.targetPlatform,targetPlatformDefines:this.targetPlatformDefines}):this._fileBufferCache[e]=this.project.getFile("",e)),"addDir"===t&&this.cacheDirName(this._dirSet,e),"unlink"===t&&(this.deleteDirOrFileOfSet(this._dirSet,this._fileSet,e),this._fileBufferCache[e]&&delete this._fileBufferCache[e]),"unlinkDir"===t&&this.deleteDirOrFileOfSet(this._dirSet,this._fileSet,e),"change"===t&&delete this._fileBufferCache[e],this.event.emit("fileChange",t,e),"change"===t&&e===path_1.default.posix.join(this.project.miniprogramRoot||"","app.json")){const t=Array.from(this._fileSet);this.updateFileAndDirs(),this.notifyRefreshFileOrDirs(t)}},this.project=t,this._projectPath=(0,tools_1.normalizePath)(t.projectPath),this._projectArchitecture=t.projectArchitecture,this._miniprogramRoot=t.miniprogramRoot||"",this._pluginRoot=t.pluginRoot,this._appid=t.appid,this._type=t.type?t.type:"miniProgram",this._privateKey=t.privateKey,this.ignores=t.ignores||[],null===(r=this.project.event)||void 0===r||r.on("fileChange",(t,e)=>{this.onFileChange(t,e)}),null===(s=this.project.event)||void 0===s||s.on("optionsChange",t=>{this.updateOptions(t)}),this.runEnv=i.runEnv,null===(o=this.project)||void 0===o?void 0:o.setting)this.setting=this.project.setting;else{const t=this.getProjectConfig();(null==t?void 0:t.setting)&&(this.setting=t.setting)}this.conditionCompiler=e,this.updateConditionCompileOptions({targetPlatform:i.targetPlatform||define_1.PLATFORM["mini-weixin"],targetPlatformDefines:i.targetPlatformDefines})}async ready(){await this.wait(this.init.bind(this))}async init(){this.updateFileAndDirs()}shouldConditionalCompile(){var t;return!!(null===(t=this.project.setting)||void 0===t?void 0:t.condition)}updateOptions(t){this._appid=t.appid,this._attr=t.attr,this._type=this.getProjectType(t.attr,t.compileType),this._miniprogramRoot=t.miniprogramRoot,this._pluginRoot=t.pluginRoot,this._projectArchitecture=t.projectArchitecture}updateConditionCompileOptions(t){const e=this.targetPlatform;if(this.targetPlatform=t.targetPlatform||define_1.PLATFORM["mini-weixin"],this.targetPlatformDefines=t.targetPlatformDefines||{},this.targetPlatform!==e){this._fileBufferCache={};const t=Array.from(this._fileSet);this.updateFileAndDirs(),this.notifyRefreshFileOrDirs(t),this.event.emit("precompileOptionsChange",{targetPlatform:this.targetPlatform,targetPlatformDefines:this.targetPlatformDefines})}}updateFileAndDirs(){var t,e;if(null===(t=this._fileSet)||void 0===t||t.clear(),null===(e=this._dirSet)||void 0===e||e.clear(),this.shouldConditionalCompile()){const t=this.conditionCompiler.filterResourceByPlatfrom({targetPlatform:this.targetPlatform});for(const e of t){const t=e.replace(/\\/g,path_1.default.posix.sep);this._fileSet.add(t),this.cacheDirName(this._dirSet,t)}}else{const{files:t,dirs:e}=this.project.getFilesAndDirs();this._fileSet=new Set(t),this._dirSet=new Set(e)}}get srcPath(){return this.project.srcPath||""}async attr(){return await this.project.attr()}async serialize(){const t=await super.serialize();return Object.assign(Object.assign({},t),{targetPlatform:this.targetPlatform,targetPlatformDefines:this.targetPlatformDefines})}getSrcFile(t="",e){return this.project.getFile(t,e)}getFile(t="",e){const i=this.getTargetPath(t,e);return this._fileBufferCache[i]||(this.shouldConditionalCompile()?this._fileBufferCache[i]=this.conditionCompiler.compileFile(i,{targetPlatform:this.targetPlatform,targetPlatformDefines:this.targetPlatformDefines}):this._fileBufferCache[i]=this.project.getFile(t,e)),this._fileBufferCache[i]}notifyRefreshFileOrDirs(t){const e=Array.from(this._fileSet);e.length!==t.length&&(e.forEach(e=>{t.includes(e)||this.event.emit("fileChange","add",e)}),t.forEach(t=>{e.includes(t)||this.event.emit("fileChange","unlink",t)}))}clearCache(){var t,e;this._fileBufferCache={},null===(e=(t=this.project).clearCache)||void 0===e||e.call(t)}}exports.PreCompileProject=PreCompileProject;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ReactiveProject=void 0;const reactivity_1=require("@vue/reactivity"),lodash_1=require("lodash"),tools_1=require("../../utils/tools"),config_1=require("../../config/config"),baseProject_1=require("../baseProject");function isAttrEqual(t,e){return"object"==typeof t&&"object"==typeof e&&(!(!t||!e)&&(t.platform===e.platform&&t.appType===e.appType&&t.gameApp===e.gameApp&&t.isSandbox===e.isSandbox&&t.released===e.released&&(t.setting.MaxCodeSize===e.setting.MaxCodeSize&&t.setting.MaxSubpackageSubCodeSize===e.setting.MaxSubpackageSubCodeSize&&t.setting.MaxSubpackageFullCodeSize===e.setting.MaxSubpackageFullCodeSize&&t.setting.NavigateMiniprogramLimit===e.setting.NavigateMiniprogramLimit&&t.setting.MaxSubPackageLimit===e.setting.MaxSubPackageLimit&&t.setting.MinTabbarCount===e.setting.MinTabbarCount&&t.setting.MaxTabbarCount===e.setting.MaxTabbarCount&&t.setting.MaxCustomTabbarCount===e.setting.MaxCustomTabbarCount&&t.setting.MaxTabbarIconSize===e.setting.MaxTabbarIconSize)))}class ReactiveProject extends baseProject_1.BaseProject{constructor(t){var e;super(),this.fileBoxs=new Map,this.statBoxs=new Map,this.onFileChange=async(t,e)=>{if("change"===t){const t=this.fileBoxs.get(e);if(t){let i;try{i=this.project.getFile("",e)}catch(t){i=t}i instanceof Error||t.value instanceof Error?t.value=i:t.value&&0===i.compare(t.value)||(t.value=i)}}else if("unlink"===t){const t=this.fileBoxs.get(e);t&&(this.fileBoxs.delete(e),t.value=void 0);const i=this.statBoxs.get(e);if(i){const t=this.project.stat("",e);(0,lodash_1.isEqual)(t,i.value)||(i.value=t)}}else if("unlinkDir"===t){const t=e+"/";let i=Array.from(this.fileBoxs.keys());for(const e of i)if(e.startsWith(t)){const t=this.fileBoxs.get(e);this.fileBoxs.delete(e),t.value=void 0}i=Array.from(this.statBoxs.keys());for(const e of i)if(e.startsWith(t)){const t=this.statBoxs.get(e);void 0!==t.value&&(this.statBoxs.delete(e),t.value=void 0)}}else if("add"===t||"addDir"===t){const t=this.statBoxs.get(e);if(t){const i=this.project.stat("",e);(0,lodash_1.isEqual)(i,t.value)||(t.value=i)}}},this.project=t,null===(e=this.project.event)||void 0===e||e.on("fileChange",this.onFileChange),this._projectArchitecture=t.projectArchitecture,this.miniprogramRootBox=(0,reactivity_1.ref)(t.miniprogramRoot),this.pluginRootBox=(0,reactivity_1.ref)(t.pluginRoot),this.appidBox=(0,reactivity_1.ref)(t.appid),this.typeBox=(0,reactivity_1.ref)(t.type),this.attrBox=(0,reactivity_1.ref)(config_1.DefaultProjectAttr),this.init()}get appid(){return this.appidBox.value}get type(){return this.typeBox.value}get nameMappingFromDevtools(){return this.project.nameMappingFromDevtools}get projectPath(){return this.project.projectPath}get privateKey(){return this.project.privateKey}get miniprogramRoot(){return this.miniprogramRootBox.value}set miniprogramRoot(t){this.miniprogramRootBox.value=t,this.project.miniprogramRoot=t}get pluginRoot(){return this.pluginRootBox.value}set pluginRoot(t){this.pluginRootBox.value=t,this.project.pluginRoot=t}async init(){}updateFileAndDirs(){throw new Error("Method updateFileAndDirs not implemented.")}async updateProject(){this.appidBox.value!==this.project.appid&&(this.appidBox.value=this.project.appid),this.typeBox.value!==this.project.type&&(this.typeBox.value=this.project.type),this.miniprogramRootBox.value!==this.project.miniprogramRoot&&(this.miniprogramRootBox.value=this.project.miniprogramRoot),this.pluginRootBox.value!==this.project.pluginRoot&&(this.pluginRootBox.value=this.project.pluginRoot);const t=await this.project.attr();return isAttrEqual(t,this.attrBox.value)||(this.attrBox.value=t),new Promise(t=>{setTimeout(t,0)})}release(){(0,tools_1.devtoolsLog)("[reactiveCache] reactiveProject release")}async attr(){return this.attrSync()}getSrcFile(t,e){return this.project.getSrcFile(t,e)}getFileList(t="",e=""){return this.project.getFileList(t,e)}getFilesAndDirs(){return this.project.getFilesAndDirs()}getExtAppid(){return this.project.getExtAppid()}getFile(t,e){const i=this.getTargetPath(t,e),o=this.fileBoxs.get(i);if(o){if(o.value instanceof Error)throw o.value;return o.value}const r=this.project.getFile(t,e),a=(0,reactivity_1.ref)(r);return this.fileBoxs.set(i,a),a.value}stat(t,e){const i=this.getTargetPath(t,e),o=this.statBoxs.get(i);if(o)return o.value;const r=this.project.stat(t,e),a=(0,reactivity_1.ref)(r);return this.statBoxs.set(i,a),a.value}attrSync(){return this.attrBox.value}}exports.ReactiveProject=ReactiveProject;
|