@dcloudio/uni-app-plus 3.0.0-alpha-3080420230602001 → 3.0.0-alpha-3080520230612001
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/dist/style.css +1 -1
- package/dist/uni-app-view.umd.js +1 -1
- package/dist/uni.compiler.js +3 -1
- package/dist/uni.runtime.esm.js +32 -17
- package/lib/automator.js +2 -2
- package/lib/uni.automator.js +1 -1
- package/package.json +10 -8
package/dist/uni.compiler.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var appVite = require('@dcloudio/uni-app-vite');
|
|
4
|
+
var appUVue = require('@dcloudio/uni-app-uts');
|
|
4
5
|
|
|
5
6
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
7
|
|
|
7
8
|
var appVite__default = /*#__PURE__*/_interopDefault(appVite);
|
|
9
|
+
var appUVue__default = /*#__PURE__*/_interopDefault(appUVue);
|
|
8
10
|
|
|
9
|
-
var index = [appVite__default.default];
|
|
11
|
+
var index = [process.env.UNI_APP_X === 'true' ? appUVue__default.default : appVite__default.default];
|
|
10
12
|
|
|
11
13
|
module.exports = index;
|
package/dist/uni.runtime.esm.js
CHANGED
|
@@ -1394,23 +1394,30 @@ const initI18nScanCodeMsgsOnce = /*#__PURE__*/ once(() => {
|
|
|
1394
1394
|
});
|
|
1395
1395
|
const initI18nStartSoterAuthenticationMsgsOnce = /*#__PURE__*/ once(() => {
|
|
1396
1396
|
const name = 'uni.startSoterAuthentication.';
|
|
1397
|
-
const keys = ['authContent'];
|
|
1397
|
+
const keys = ['authContent', 'waitingContent'];
|
|
1398
1398
|
{
|
|
1399
|
-
useI18n().add(LOCALE_EN, normalizeMessages(name, keys, [
|
|
1399
|
+
useI18n().add(LOCALE_EN, normalizeMessages(name, keys, [
|
|
1400
|
+
'Fingerprint recognition',
|
|
1401
|
+
'Unrecognizable',
|
|
1402
|
+
]), false);
|
|
1400
1403
|
}
|
|
1401
1404
|
{
|
|
1402
|
-
useI18n().add(LOCALE_ES, normalizeMessages(name, keys, [
|
|
1405
|
+
useI18n().add(LOCALE_ES, normalizeMessages(name, keys, [
|
|
1406
|
+
'Reconocimiento de huellas dactilares',
|
|
1407
|
+
'Irreconocible',
|
|
1408
|
+
]), false);
|
|
1403
1409
|
}
|
|
1404
1410
|
{
|
|
1405
1411
|
useI18n().add(LOCALE_FR, normalizeMessages(name, keys, [
|
|
1406
1412
|
"Reconnaissance de l'empreinte digitale",
|
|
1413
|
+
'Méconnaissable',
|
|
1407
1414
|
]), false);
|
|
1408
1415
|
}
|
|
1409
1416
|
{
|
|
1410
|
-
useI18n().add(LOCALE_ZH_HANS, normalizeMessages(name, keys, ['指纹识别中...']), false);
|
|
1417
|
+
useI18n().add(LOCALE_ZH_HANS, normalizeMessages(name, keys, ['指纹识别中...', '无法识别']), false);
|
|
1411
1418
|
}
|
|
1412
1419
|
{
|
|
1413
|
-
useI18n().add(LOCALE_ZH_HANT, normalizeMessages(name, keys, ['指紋識別中...']), false);
|
|
1420
|
+
useI18n().add(LOCALE_ZH_HANT, normalizeMessages(name, keys, ['指紋識別中...', '無法識別']), false);
|
|
1414
1421
|
}
|
|
1415
1422
|
});
|
|
1416
1423
|
|
|
@@ -1802,21 +1809,21 @@ function showPage({ context = {}, url, data = {}, style = {}, onMessage, onClose
|
|
|
1802
1809
|
const invokeOnCallback = (name, res) => UniServiceJSBridge.emit('api.' + name, res);
|
|
1803
1810
|
|
|
1804
1811
|
let invokeViewMethodId = 1;
|
|
1805
|
-
function publishViewMethodName() {
|
|
1806
|
-
return getCurrentPageId() + '.' + INVOKE_VIEW_API;
|
|
1812
|
+
function publishViewMethodName(pageId) {
|
|
1813
|
+
return (pageId || getCurrentPageId()) + '.' + INVOKE_VIEW_API;
|
|
1807
1814
|
}
|
|
1808
1815
|
const invokeViewMethod = (name, args, pageId, callback) => {
|
|
1809
1816
|
const { subscribe, publishHandler } = UniServiceJSBridge;
|
|
1810
1817
|
const id = callback ? invokeViewMethodId++ : 0;
|
|
1811
1818
|
callback && subscribe(INVOKE_VIEW_API + '.' + id, callback, true);
|
|
1812
|
-
publishHandler(publishViewMethodName(), { id, name, args }, pageId);
|
|
1819
|
+
publishHandler(publishViewMethodName(pageId), { id, name, args }, pageId);
|
|
1813
1820
|
};
|
|
1814
1821
|
const invokeViewMethodKeepAlive = (name, args, callback, pageId) => {
|
|
1815
1822
|
const { subscribe, unsubscribe, publishHandler } = UniServiceJSBridge;
|
|
1816
1823
|
const id = invokeViewMethodId++;
|
|
1817
1824
|
const subscribeName = INVOKE_VIEW_API + '.' + id;
|
|
1818
1825
|
subscribe(subscribeName, callback);
|
|
1819
|
-
publishHandler(publishViewMethodName(), { id, name, args }, pageId);
|
|
1826
|
+
publishHandler(publishViewMethodName(pageId), { id, name, args }, pageId);
|
|
1820
1827
|
return () => {
|
|
1821
1828
|
unsubscribe(subscribeName);
|
|
1822
1829
|
};
|
|
@@ -14151,7 +14158,7 @@ const startSoterAuthentication = defineAsyncApi(API_START_SOTER_AUTHENTICATION,
|
|
|
14151
14158
|
4: () => {
|
|
14152
14159
|
if (waiting) {
|
|
14153
14160
|
clearTimeout(waitingTimer);
|
|
14154
|
-
waiting.setTitle('
|
|
14161
|
+
waiting.setTitle(t('uni.startSoterAuthentication.waitingContent'));
|
|
14155
14162
|
waitingTimer = setTimeout(() => {
|
|
14156
14163
|
waiting && waiting.setTitle(authenticateMessage);
|
|
14157
14164
|
}, 1000);
|
|
@@ -17311,14 +17318,22 @@ function getProxy() {
|
|
|
17311
17318
|
}
|
|
17312
17319
|
return proxy;
|
|
17313
17320
|
}
|
|
17314
|
-
function resolveSyncResult(res, returnOptions, instanceId, proxy) {
|
|
17315
|
-
// devtools 环境是字符串?
|
|
17316
|
-
if (isString(res)) {
|
|
17317
|
-
res = JSON.parse(res);
|
|
17318
|
-
}
|
|
17321
|
+
function resolveSyncResult(args, res, returnOptions, instanceId, proxy) {
|
|
17319
17322
|
if ((process.env.NODE_ENV !== 'production')) {
|
|
17320
17323
|
console.log('uts.invokeSync.result', res, returnOptions, instanceId, typeof proxy);
|
|
17321
17324
|
}
|
|
17325
|
+
if (!res) {
|
|
17326
|
+
throw new Error(JSON.stringify(args));
|
|
17327
|
+
}
|
|
17328
|
+
// devtools 环境是字符串?
|
|
17329
|
+
if (isString(res)) {
|
|
17330
|
+
try {
|
|
17331
|
+
res = JSON.parse(res);
|
|
17332
|
+
}
|
|
17333
|
+
catch (e) {
|
|
17334
|
+
throw new Error(`JSON.parse(${res}): ` + e);
|
|
17335
|
+
}
|
|
17336
|
+
}
|
|
17322
17337
|
if (res.errMsg) {
|
|
17323
17338
|
throw new Error(res.errMsg);
|
|
17324
17339
|
}
|
|
@@ -17347,7 +17362,7 @@ function invokePropGetter(args) {
|
|
|
17347
17362
|
if ((process.env.NODE_ENV !== 'production')) {
|
|
17348
17363
|
console.log('uts.invokePropGetter.args', args);
|
|
17349
17364
|
}
|
|
17350
|
-
return resolveSyncResult(getProxy().invokeSync(args, () => { }));
|
|
17365
|
+
return resolveSyncResult(args, getProxy().invokeSync(args, () => { }));
|
|
17351
17366
|
}
|
|
17352
17367
|
function initProxyFunction(async, { moduleName, moduleType, package: pkg, class: cls, name: propOrMethod, method, companion, params: methodParams, return: returnOptions, errMsg, }, instanceId, proxy) {
|
|
17353
17368
|
const invokeCallback = ({ id, name, params, keepAlive, }) => {
|
|
@@ -17412,7 +17427,7 @@ function initProxyFunction(async, { moduleName, moduleType, package: pkg, class:
|
|
|
17412
17427
|
if ((process.env.NODE_ENV !== 'production')) {
|
|
17413
17428
|
console.log('uts.invokeSync.args', invokeArgs);
|
|
17414
17429
|
}
|
|
17415
|
-
return resolveSyncResult(getProxy().invokeSync(invokeArgs, invokeCallback), returnOptions, instanceId, proxy);
|
|
17430
|
+
return resolveSyncResult(invokeArgs, getProxy().invokeSync(invokeArgs, invokeCallback), returnOptions, instanceId, proxy);
|
|
17416
17431
|
};
|
|
17417
17432
|
}
|
|
17418
17433
|
function initUTSStaticMethod(async, opts) {
|
package/lib/automator.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var CALL_METHOD_ERROR,hasOwnProperty=Object.prototype.hasOwnProperty,isUndef=function(v){return null==v},isArray=Array.isArray,cacheStringFunction=function(fn){var cache=Object.create(null);return function(str){return cache[str]||(cache[str]=fn(str))}},hyphenateRE=/\B([A-Z])/g,hyphenate=cacheStringFunction((function(str){return str.replace(hyphenateRE,"-$1").toLowerCase()})),camelizeRE=/-(\w)/g,camelize=cacheStringFunction((function(str){return str.replace(camelizeRE,(function(_,c){return c?c.toUpperCase():""}))})),capitalize=cacheStringFunction((function(str){return str.charAt(0).toUpperCase()+str.slice(1)})),PATH_RE=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;function getPaths(path,data){if(isArray(path))return path;if(data&&(val=data,key=path,hasOwnProperty.call(val,key)))return[path];var val,key,res=[];return path.replace(PATH_RE,(function(match,p1,offset,string){return res.push(offset?string.replace(/\\(\\)?/g,"$1"):p1||match),string})),res}function getDataByPath(data,path){var dataPath,paths=getPaths(path,data);for(dataPath=paths.shift();!isUndef(dataPath);){if(null==(data=data[dataPath]))return;dataPath=paths.shift()}return data}function getPageId(page){return page.__wxWebviewId__?page.__wxWebviewId__:page.privateProperties?page.privateProperties.slaveId:page.$page?page.$page.id:void 0}function getPagePath(page){return page.route||page.uri}function getPageQuery(page){return page.options||page.$page&&page.$page.options||{}}function parsePage(page){return{id:getPageId(page),path:getPagePath(page),query:getPageQuery(page)}}function getPageVm(id){var page=function(id){return getCurrentPages().find((function(page){return getPageId(page)===id}))}(id);return page&&page.$vm}function findComponentVm(vm,nodeId){var res;return vm&&(!function(vm,nodeId){return function(vm){if(vm._$weex)return vm._uid;if(vm._$id)return vm._$id;var parent_1=function(vm){for(var parent=vm.$parent;parent;){if(parent._$id)return parent;parent=parent.$parent}}(vm);if(!vm.$parent)return"-1";var vnode=vm.$vnode,context=vnode.context;return context&&context!==parent_1&&context._$id?context._$id+";"+parent_1._$id+","+vnode.data.attrs._i:parent_1._$id+","+vnode.data.attrs._i}(vm)===nodeId}(vm,nodeId)?vm.$children.find((function(child){return res=findComponentVm(child,nodeId)})):res=vm),res}function getComponentVm(pageId,nodeId){var pageVm=getPageVm(pageId);return pageVm&&findComponentVm(pageVm,nodeId)}function getData(vm,path){var data;return vm&&(data=path?getDataByPath(vm.$data,path):Object.assign({},vm.$data)),Promise.resolve({data:data})}function setData(vm,data){return vm&&Object.keys(data).forEach((function(name){vm[name]=data[name]})),Promise.resolve()}function callMethod(vm,method,args){return new Promise((function(resolve,reject){if(!vm)return reject(CALL_METHOD_ERROR.VM_NOT_EXISTS);if(!vm[method])return reject(CALL_METHOD_ERROR.
|
|
1
|
+
var CALL_METHOD_ERROR,hasOwnProperty=Object.prototype.hasOwnProperty,isUndef=function(v){return null==v},isArray=Array.isArray,cacheStringFunction=function(fn){var cache=Object.create(null);return function(str){return cache[str]||(cache[str]=fn(str))}},hyphenateRE=/\B([A-Z])/g,hyphenate=cacheStringFunction((function(str){return str.replace(hyphenateRE,"-$1").toLowerCase()})),camelizeRE=/-(\w)/g,camelize=cacheStringFunction((function(str){return str.replace(camelizeRE,(function(_,c){return c?c.toUpperCase():""}))})),capitalize=cacheStringFunction((function(str){return str.charAt(0).toUpperCase()+str.slice(1)})),PATH_RE=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;function getPaths(path,data){if(isArray(path))return path;if(data&&(val=data,key=path,hasOwnProperty.call(val,key)))return[path];var val,key,res=[];return path.replace(PATH_RE,(function(match,p1,offset,string){return res.push(offset?string.replace(/\\(\\)?/g,"$1"):p1||match),string})),res}function getDataByPath(data,path){var dataPath,paths=getPaths(path,data);for(dataPath=paths.shift();!isUndef(dataPath);){if(null==(data=data[dataPath]))return;dataPath=paths.shift()}return data}function getPageId(page){return page.__wxWebviewId__?page.__wxWebviewId__:page.privateProperties?page.privateProperties.slaveId:page.$page?page.$page.id:void 0}function getPagePath(page){return page.route||page.uri}function getPageQuery(page){return page.options||page.$page&&page.$page.options||{}}function parsePage(page){return{id:getPageId(page),path:getPagePath(page),query:getPageQuery(page)}}function getPageVm(id){var page=function(id){return getCurrentPages().find((function(page){return getPageId(page)===id}))}(id);return page&&page.$vm}function findComponentVm(vm,nodeId){var res;return vm&&(!function(vm,nodeId){return function(vm){if(vm._$weex)return vm._uid;if(vm._$id)return vm._$id;var parent_1=function(vm){for(var parent=vm.$parent;parent;){if(parent._$id)return parent;parent=parent.$parent}}(vm);if(!vm.$parent)return"-1";var vnode=vm.$vnode,context=vnode.context;return context&&context!==parent_1&&context._$id?context._$id+";"+parent_1._$id+","+vnode.data.attrs._i:parent_1._$id+","+vnode.data.attrs._i}(vm)===nodeId}(vm,nodeId)?vm.$children.find((function(child){return res=findComponentVm(child,nodeId)})):res=vm),res}function getComponentVm(pageId,nodeId){var pageVm=getPageVm(pageId);return pageVm&&findComponentVm(pageVm,nodeId)}function getData(vm,path){var data;return vm&&(data=path?getDataByPath(vm.$data,path):Object.assign({},vm.$data)),Promise.resolve({data:data})}function setData(vm,data){return vm&&Object.keys(data).forEach((function(name){vm[name]=data[name]})),Promise.resolve()}function callMethod(vm,method,args){return new Promise((function(resolve,reject){if(!vm)return reject(CALL_METHOD_ERROR.VM_NOT_EXISTS);if(!vm[method])return reject(CALL_METHOD_ERROR.METHOD_NOT_EXISTS);var obj,ret=vm[method].apply(vm,args);!(obj=ret)||"object"!=typeof obj&&"function"!=typeof obj||"function"!=typeof obj.then?resolve({result:ret}):ret.then((function(res){resolve({result:res})}))}))}!function(CALL_METHOD_ERROR){CALL_METHOD_ERROR.VM_NOT_EXISTS="VM_NOT_EXISTS",CALL_METHOD_ERROR.METHOD_NOT_EXISTS="METHOD_NOT_EXISTS"}(CALL_METHOD_ERROR||(CALL_METHOD_ERROR={}));var SYNC_APIS=["stopRecord","getRecorderManager","pauseVoice","stopVoice","pauseBackgroundAudio","stopBackgroundAudio","getBackgroundAudioManager","createAudioContext","createInnerAudioContext","createVideoContext","createCameraContext","createMapContext","canIUse","startAccelerometer","stopAccelerometer","startCompass","stopCompass","hideToast","hideLoading","showNavigationBarLoading","hideNavigationBarLoading","navigateBack","createAnimation","pageScrollTo","createSelectorQuery","createCanvasContext","createContext","drawCanvas","hideKeyboard","stopPullDownRefresh","arrayBufferToBase64","base64ToArrayBuffer"],originUni={},SYNC_API_RE=/Sync$/,MOCK_API_BLACKLIST_RE=/^on|^off/;function isSyncApi(method){return SYNC_API_RE.test(method)||-1!==SYNC_APIS.indexOf(method)}var App$1={getPageStack:function(){return Promise.resolve({pageStack:getCurrentPages().map((function(page){return parsePage(page)}))})},getCurrentPage:function(){var pages=getCurrentPages(),len=pages.length;return new Promise((function(resolve,reject){len?resolve(parsePage(pages[len-1])):reject(Error("getCurrentPages().length=0"))}))},callUniMethod:function(params){var method=params.method,args=params.args;return new Promise((function(resolve,reject){if(!uni[method])return reject(Error("uni."+method+" not exists"));if(isSyncApi(method))return resolve({result:uni[method].apply(uni,args)});var params=[Object.assign({},args[0]||{},{success:function(result){setTimeout((function(){resolve({result:result})}),"pageScrollTo"===method?350:0)},fail:function(res){reject(Error(res.errMsg.replace(method+":fail ","")))}})];uni[method].apply(uni,params)}))},mockUniMethod:function(params){var method=params.method;if(!uni[method])throw Error("uni."+method+" not exists");if(!function(method){return!MOCK_API_BLACKLIST_RE.test(method)}(method))throw Error("You can't mock uni."+method);var mockFn,result=params.result,functionDeclaration=params.functionDeclaration;return isUndef(result)&&isUndef(functionDeclaration)?(originUni[method]&&(uni[method]=originUni[method],delete originUni[method]),Promise.resolve()):(mockFn=isUndef(functionDeclaration)?isSyncApi(method)?function(){return result}:function(params){setTimeout((function(){result.errMsg&&-1!==result.errMsg.indexOf(":fail")?params.fail&¶ms.fail(result):params.success&¶ms.success(result),params.complete&¶ms.complete(result)}),4)}:function(){for(var args=[],_i=0;_i<arguments.length;_i++)args[_i]=arguments[_i];return new Function("return "+functionDeclaration)().apply(mockFn,args.concat(params.args))},mockFn.origin=originUni[method]||uni[method],originUni[method]||(originUni[method]=uni[method]),uni[method]=mockFn,Promise.resolve())},captureScreenshot:function(params){return new Promise((function(resolve,reject){var pages=getCurrentPages(),len=pages.length;if(len){var page=pages[len-1];if(page){var webview=page.$getAppWebview(),bitmap_1=new plus.nativeObj.Bitmap("captureScreenshot","captureScreenshot.png");webview.draw(bitmap_1,(function(res){var data=bitmap_1.toBase64Data().replace("data:image/png;base64,","");bitmap_1.clear(),resolve({data:data})}),(function(err){reject(Error("captureScreenshot fail: "+err.message))}),{wholeContent:!!params.fullPage})}}else reject(Error("getCurrentPage fail."))}))}},Page$1={getData:function(params){return getData(getPageVm(params.pageId),params.path)},setData:function(params){return setData(getPageVm(params.pageId),params.data)},callMethod:function(params){var _a,err=((_a={})[CALL_METHOD_ERROR.VM_NOT_EXISTS]="Page["+params.pageId+"] not exists",_a[CALL_METHOD_ERROR.METHOD_NOT_EXISTS]="page."+params.method+" not exists",_a);return new Promise((function(resolve,reject){callMethod(getPageVm(params.pageId),params.method,params.args).then((function(res){return resolve(res)})).catch((function(type){reject(Error(err[type]))}))}))},callMethodWithCallback:function(params){var _a,err=((_a={})[CALL_METHOD_ERROR.VM_NOT_EXISTS]="callMethodWithCallback:fail, Page["+params.pageId+"] not exists",_a[CALL_METHOD_ERROR.METHOD_NOT_EXISTS]="callMethodWithCallback:fail, page."+params.method+" not exists",_a),callback=params.args[params.args.length-1];callMethod(getPageVm(params.pageId),params.method,params.args).catch((function(type){callback({errMsg:err[type]})}))}};function getNodeId(params){return params.nodeId||params.elementId}var Element$1={getData:function(params){return getData(getComponentVm(params.pageId,getNodeId(params)),params.path)},setData:function(params){return setData(getComponentVm(params.pageId,getNodeId(params)),params.data)},callMethod:function(params){var _a,nodeId=getNodeId(params),err=((_a={})[CALL_METHOD_ERROR.VM_NOT_EXISTS]="Component["+params.pageId+":"+nodeId+"] not exists",_a[CALL_METHOD_ERROR.METHOD_NOT_EXISTS]="component."+params.method+" not exists",_a);return new Promise((function(resolve,reject){callMethod(getComponentVm(params.pageId,nodeId),params.method,params.args).then((function(res){return resolve(res)})).catch((function(type){reject(Error(err[type]))}))}))}};
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
|
@@ -13,4 +13,4 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
15
|
***************************************************************************** */
|
|
16
|
-
function __spreadArrays(){for(var s=0,i=0,il=arguments.length;i<il;i++)s+=arguments[i].length;var r=Array(s),k=0;for(i=0;i<il;i++)for(var a=arguments[i],j=0,jl=a.length;j<jl;j++,k++)r[k]=a[j];return r}function getDocument(pageId){var page=getCurrentPages().find((function(page){return page.$page.id===pageId}));if(!page)throw Error("page["+pageId+"] not found");var weex=page.$vm._$weex;return weex.document.__$weex__||(weex.document.__$weex__=weex),weex.document}var TAGS={},U_TAGS={};["text","image","input","textarea","video","web-view","slider"].forEach((function(tag){TAGS[tag]=!0,U_TAGS["u-"+tag]=!0}));var BUILITIN=["movable-view","picker","ad","button","checkbox-group","checkbox","form","icon","label","movable-area","navigator","picker-view-column","picker-view","progress","radio-group","radio","rich-text","u-slider","swiper-item","swiper","switch"],BUILITIN_ALIAS=BUILITIN.map((function(tag){return capitalize(camelize(tag))}));function transTagName(el){var tagName=el.type;if(U_TAGS[tagName])return tagName.replace("u-","");var componentName=el.__vue__&&el.__vue__.$options.name;return"USlider"===componentName?"slider":componentName&&-1!==BUILITIN_ALIAS.indexOf(componentName)?hyphenate(componentName):tagName}function transEl(el){var elem={elementId:el.nodeId,tagName:transTagName(el),nvue:!0},vm=el.__vue__;return vm&&!vm.$options.isReserved&&(elem.nodeId=vm._uid),"video"===elem.tagName&&(elem.videoId=elem.nodeId),elem}function querySelectorByFn(node,match,result){for(var children=node.children,i=0;i<children.length;i++){var childNode=children[i];if(match(childNode)){if(!result)return childNode;result.push(childNode)}if(result)querySelectorByFn(childNode,match,result);else{var res=querySelectorByFn(childNode,match,result);if(res)return res}}return result}function querySelector(context,selector,result){var matchSelector,match;if(0===selector.indexOf("#")?(matchSelector=selector.substr(1),match=function(node){return node.attr&&node.attr.id===matchSelector}):0===selector.indexOf(".")&&(matchSelector=selector.substr(1),match=function(node){return node.classList&&-1!==node.classList.indexOf(matchSelector)}),match){var ret_1=querySelectorByFn(context,match,result);if(!ret_1)throw Error("Node("+selector+") not exists");return ret_1}if("body"===selector)return Object.assign({},context,{type:"page"});0===selector.indexOf("uni-")&&(selector=selector.replace("uni-",""));var tagName=TAGS[selector]?"u-"+selector:selector,aliasTagName=-1!==BUILITIN.indexOf(tagName)?capitalize(camelize(tagName)):"",ret=querySelectorByFn(context,(function(node){return node.type===tagName||aliasTagName&&node.__vue__&&node.__vue__.$options.name===aliasTagName}),result);if(!ret)throw Error("Node("+selector+") not exists");return ret}var DOM_PROPERTIES=[{test:function(names){return 2===names.length&&-1!==names.indexOf("document.documentElement.scrollWidth")&&-1!==names.indexOf("document.documentElement.scrollHeight")},call:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){"scroll-view"===node.type&&1===node.children.length&&(node=node.children[0]),weex.requireModule("dom").getComponentRect(node.ref,(function(res){res.result?resolve([res.size.width,res.size.height]):resolve([0,0])}))}))}},{test:function(names){return 1===names.length&&"document.documentElement.scrollTop"===names[0]},call:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){"scroll-view"===node.type&&1===node.children.length&&(node=node.children[0]),weex.requireModule("dom").getComponentRect(node.ref,(function(res){resolve([res.size&&Math.abs(res.size.top)||0])}))}))}},{test:function(names){return 2===names.length&&-1!==names.indexOf("offsetWidth")&&-1!==names.indexOf("offsetHeight")},call:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){weex.requireModule("dom").getComponentRect(node.ref,(function(res){res.result?resolve([res.size.width,res.size.height]):resolve([0,0])}))}))}},{test:function(names,node){return 1===names.length&&"innerText"===names[0]},call:function(node){return Promise.resolve([toText(node,[]).join("")])}}];function toText(node,res){return"u-text"===node.type?res.push(node.attr.value):node.pureChildren.map((function(child){return toText(child,res)})),res}function formatHTML(html){return html.replace(/\n/g,"").replace(/<u-/g,"<").replace(/<\/u-/g,"</")}function toHTML(node,type){return"outer"===type?"body"===node.role&&"scroll-view"===node.type?"<page>"+formatHTML(toHTML(node,"inner"))+"</page>":formatHTML(node.toString()):formatHTML(node.pureChildren.map((function(child){return child.toString()})).join(""))}var FUNCTIONS={input:{input:function(el,value){el.setValue(value)}},textarea:{input:function(el,value){el.setValue(value)}},"scroll-view":{scrollTo:function(el,x,y){el.scrollTo(y)},scrollTop:function(el){return 0},scrollLeft:function(el){return 0},scrollWidth:function(el){return 0},scrollHeight:function(el){return 0}},swiper:{swipeTo:function(el,index){el.__vue__.current=index}},"movable-view":{moveTo:function(el,x,y){var vm=el.__vue__;vm.x=x,vm.y=y}},switch:{tap:function(el){var vm=el.__vue__;vm.checked=!vm.checked}},slider:{slideTo:function(el,value){el.__vue__.value=value}}};function getRoot(pageId){return getDocument(pageId).body}var NativeAdapter={getWindow:function(pageId){return getRoot(pageId)},getDocument:function(pageId){return getRoot(pageId)},getEl:function(elementId,pageId){var element=getDocument(pageId).getRef(elementId);if(!element)throw Error("element destroyed");return element},getOffset:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){weex.requireModule("dom").getComponentRect(node.ref,(function(res){res.result?resolve({left:res.size.left,top:res.size.top}):resolve({left:0,top:0})}))}))},querySelector:function(context,selector){return Promise.resolve(transEl(querySelector(context,selector)))},querySelectorAll:function(context,selector){return Promise.resolve({elements:querySelector(context,selector,[]).map((function(el){return transEl(el)}))})},queryProperties:function(context,names){var options=DOM_PROPERTIES.find((function(options){return options.test(names,context)}));return options?options.call(context).then((function(properties){return{properties:properties}})):Promise.resolve({properties:names.map((function(name){return getDataByPath(context,name)}))})},queryAttributes:function(context,names){var attr=context.attr;return Promise.resolve({attributes:names.map((function(name){return"class"===name?(context.classList||[]).join(" "):String(attr[name]||attr[camelize(name)]||"")}))})},queryStyles:function(context,names){var style=context.style;return Promise.resolve({styles:names.map((function(name){return style[name]}))})},queryHTML:function(context,type){return Promise.resolve({html:toHTML(context,type)})},dispatchTapEvent:function(el){return el.fireEvent("click",{timeStamp:Date.now(),target:el,currentTarget:el},!0),Promise.resolve()},dispatchLongpressEvent:function(el){return el.fireEvent("longpress",{timeStamp:Date.now(),target:el,currentTarget:el},!0),Promise.resolve()},dispatchTouchEvent:function(el,type,eventInitDict){return eventInitDict||(eventInitDict={}),eventInitDict.touches||(eventInitDict.touches=[]),eventInitDict.changedTouches||(eventInitDict.changedTouches=[]),eventInitDict.touches.length||eventInitDict.touches.push({identifier:Date.now(),target:el}),el.fireEvent(type,Object.assign({timeStamp:Date.now(),target:el,currentTarget:el},eventInitDict),!0),Promise.resolve()},callFunction:function(el,functionName,args){var fn=getDataByPath(FUNCTIONS,functionName);return fn?Promise.resolve({result:fn.apply(null,__spreadArrays([el],args))}):Promise.reject(Error(functionName+" not exists"))},triggerEvent:function(el,type,detail){var vm=el.__vue__;return vm?vm.$trigger&&vm.$trigger(type,{},detail):el.fireEvent(type,{timeStamp:Date.now(),target:el,currentTarget:el},!1,{params:[{detail:detail}]}),Promise.resolve()}};var Api={};Object.keys(App$1).forEach((function(method){Api["App."+method]=App$1[method]})),Object.keys(Page$1).forEach((function(method){Api["Page."+method]=Page$1[method]})),Object.keys(Element$1).forEach((function(method){Api["Element."+method]=Element$1[method]}));var NVueApi,fallback,socketTask,wsEndpoint=process.env.UNI_AUTOMATOR_WS_ENDPOINT;function send(data){socketTask.send({data:JSON.stringify(data)})}function onMessage(res){var _a=JSON.parse(res.data),id=_a.id,method=_a.method,params=_a.params,data={id:id},fn=Api[method];if(!fn){if(fallback){var result=fallback(id,method,params,data);if(!0===result)return;fn=result}if(!fn)return data.error={message:method+" unimplemented"},send(data)}try{fn(params).then((function(res){res&&(data.result=res)})).catch((function(err){data.error={message:err.message}})).finally((function(){send(data)}))}catch(err){data.error={message:err.message},send(data)}}fallback=function(id,method,params,data){var pageId=params.pageId,page=function(pageId){var pages=getCurrentPages();if(!pageId)return pages[pages.length-1];return pages.find((function(page){return page.$page.id===pageId}))}(pageId);return page?!page.$page.meta.isNVue?(UniServiceJSBridge.publishHandler("sendAutoMessage",{id:id,method:method,params:params},pageId),!0):(NVueApi||(NVueApi=Object.assign({},function(adapter){return{"Page.getElement":function(params){return adapter.querySelector(adapter.getDocument(params.pageId),params.selector)},"Page.getElements":function(params){return adapter.querySelectorAll(adapter.getDocument(params.pageId),params.selector)},"Page.getWindowProperties":function(params){return adapter.queryProperties(adapter.getWindow(params.pageId),params.names)}}}(NativeAdapter),function(adapter){var getEl=function(params){return adapter.getEl(params.elementId,params.pageId)};return{"Element.getElement":function(params){return adapter.querySelector(getEl(params),params.selector)},"Element.getElements":function(params){return adapter.querySelectorAll(getEl(params),params.selector)},"Element.getDOMProperties":function(params){return adapter.queryProperties(getEl(params),params.names)},"Element.getProperties":function(params){var el=getEl(params),ctx=el.__vue__||el.attr||{};return adapter.queryProperties(ctx,params.names)},"Element.getOffset":function(params){return adapter.getOffset(getEl(params))},"Element.getAttributes":function(params){return adapter.queryAttributes(getEl(params),params.names)},"Element.getStyles":function(params){return adapter.queryStyles(getEl(params),params.names)},"Element.getHTML":function(params){return adapter.queryHTML(getEl(params),params.type)},"Element.tap":function(params){return adapter.dispatchTapEvent(getEl(params))},"Element.longpress":function(params){return adapter.dispatchLongpressEvent(getEl(params))},"Element.touchstart":function(params){return adapter.dispatchTouchEvent(getEl(params),"touchstart",params)},"Element.touchmove":function(params){return adapter.dispatchTouchEvent(getEl(params),"touchmove",params)},"Element.touchend":function(params){return adapter.dispatchTouchEvent(getEl(params),"touchend",params)},"Element.callFunction":function(params){return adapter.callFunction(getEl(params),params.functionName,params.args)},"Element.triggerEvent":function(params){return adapter.triggerEvent(getEl(params),params.type,params.detail)}}}(NativeAdapter))),NVueApi[method]):(data.error={message:"page["+pageId+"] not exists"},send(data),!0)},UniServiceJSBridge.subscribe("onAutoMessageReceive",(function(res){send(res)})),setTimeout((function(){var options;void 0===options&&(options={}),(socketTask=uni.connectSocket({url:wsEndpoint,complete:function(){}})).onMessage(onMessage),socketTask.onOpen((function(res){options.success&&options.success(),console.log("已开启自动化测试...")})),socketTask.onError((function(res){console.log("automator.onError",res)})),socketTask.onClose((function(){options.fail&&options.fail({errMsg:"$$initRuntimeAutomator:fail"}),console.log("automator.onClose")}))}),500);
|
|
16
|
+
function __spreadArrays(){for(var s=0,i=0,il=arguments.length;i<il;i++)s+=arguments[i].length;var r=Array(s),k=0;for(i=0;i<il;i++)for(var a=arguments[i],j=0,jl=a.length;j<jl;j++,k++)r[k]=a[j];return r}function getDocument(pageId){var page=getCurrentPages().find((function(page){return page.$page.id===pageId}));if(!page)throw Error("page["+pageId+"] not found");var weex=page.$vm._$weex;return weex.document.__$weex__||(weex.document.__$weex__=weex),weex.document}var TAGS={},U_TAGS={};["text","image","input","textarea","video","web-view","slider"].forEach((function(tag){TAGS[tag]=!0,U_TAGS["u-"+tag]=!0}));var BUILITIN=["movable-view","picker","ad","button","checkbox-group","checkbox","form","icon","label","movable-area","navigator","picker-view-column","picker-view","progress","radio-group","radio","rich-text","u-slider","swiper-item","swiper","switch"],BUILITIN_ALIAS=BUILITIN.map((function(tag){return capitalize(camelize(tag))}));function transTagName(el){var tagName=el.type;if(U_TAGS[tagName])return tagName.replace("u-","");var componentName=el.__vue__&&el.__vue__.$options.name;return"USlider"===componentName?"slider":componentName&&-1!==BUILITIN_ALIAS.indexOf(componentName)?hyphenate(componentName):tagName}function transEl(el){var elem={elementId:el.nodeId,tagName:transTagName(el),nvue:!0},vm=el.__vue__;return vm&&!vm.$options.isReserved&&(elem.nodeId=vm._uid),"video"===elem.tagName&&(elem.videoId=elem.nodeId),elem}function querySelectorByFn(node,match,result){for(var children=node.children,i=0;i<children.length;i++){var childNode=children[i];if(match(childNode)){if(!result)return childNode;result.push(childNode)}if(result)querySelectorByFn(childNode,match,result);else{var res=querySelectorByFn(childNode,match,result);if(res)return res}}return result}function querySelector(context,selector,result){var matchSelector,match;if(0===selector.indexOf("#")?(matchSelector=selector.substr(1),match=function(node){return node.attr&&node.attr.id===matchSelector}):0===selector.indexOf(".")&&(matchSelector=selector.substr(1),match=function(node){return node.classList&&-1!==node.classList.indexOf(matchSelector)}),match){var ret_1=querySelectorByFn(context,match,result);if(!ret_1)throw Error("Node("+selector+") not exists");return ret_1}if("body"===selector)return Object.assign({},context,{type:"page"});0===selector.indexOf("uni-")&&(selector=selector.replace("uni-",""));var tagName=TAGS[selector]?"u-"+selector:selector,aliasTagName=-1!==BUILITIN.indexOf(tagName)?capitalize(camelize(tagName)):"",ret=querySelectorByFn(context,(function(node){return node.type===tagName||aliasTagName&&node.__vue__&&node.__vue__.$options.name===aliasTagName}),result);if(!ret)throw Error("Node("+selector+") not exists");return ret}var DOM_PROPERTIES=[{test:function(names){return 2===names.length&&-1!==names.indexOf("document.documentElement.scrollWidth")&&-1!==names.indexOf("document.documentElement.scrollHeight")},call:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){"scroll-view"===node.type&&1===node.children.length&&(node=node.children[0]),weex.requireModule("dom").getComponentRect(node.ref,(function(res){res.result?resolve([res.size.width,res.size.height]):resolve([0,0])}))}))}},{test:function(names){return 1===names.length&&"document.documentElement.scrollTop"===names[0]},call:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){"scroll-view"===node.type&&1===node.children.length&&(node=node.children[0]),weex.requireModule("dom").getComponentRect(node.ref,(function(res){resolve([res.size&&Math.abs(res.size.top)||0])}))}))}},{test:function(names){return 2===names.length&&-1!==names.indexOf("offsetWidth")&&-1!==names.indexOf("offsetHeight")},call:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){weex.requireModule("dom").getComponentRect(node.ref,(function(res){res.result?resolve([res.size.width,res.size.height]):resolve([0,0])}))}))}},{test:function(names,node){return 1===names.length&&"innerText"===names[0]},call:function(node){return Promise.resolve([toText(node,[]).join("")])}}];function toText(node,res){return"u-text"===node.type?res.push(node.attr.value):node.pureChildren.map((function(child){return toText(child,res)})),res}function formatHTML(html){return html.replace(/\n/g,"").replace(/<u-/g,"<").replace(/<\/u-/g,"</")}function toHTML(node,type){return"outer"===type?"body"===node.role&&"scroll-view"===node.type?"<page>"+formatHTML(toHTML(node,"inner"))+"</page>":formatHTML(node.toString()):formatHTML(node.pureChildren.map((function(child){return child.toString()})).join(""))}var FUNCTIONS={input:{input:function(el,value){el.setValue(value)}},textarea:{input:function(el,value){el.setValue(value)}},"scroll-view":{scrollTo:function(el,x,y){el.scrollTo(y)},scrollTop:function(el){return 0},scrollLeft:function(el){return 0},scrollWidth:function(el){return 0},scrollHeight:function(el){return 0}},swiper:{swipeTo:function(el,index){el.__vue__.current=index}},"movable-view":{moveTo:function(el,x,y){var vm=el.__vue__;vm.x=x,vm.y=y}},switch:{tap:function(el){var vm=el.__vue__;vm.checked=!vm.checked}},slider:{slideTo:function(el,value){el.__vue__.value=value}}};function getRoot(pageId){return getDocument(pageId).body}var NativeAdapter={getWindow:function(pageId){return getRoot(pageId)},getDocument:function(pageId){return getRoot(pageId)},getEl:function(elementId,pageId){var element=getDocument(pageId).getRef(elementId);if(!element)throw Error("element destroyed");return element},getOffset:function(node){var weex=node.__$weex__||node.ownerDocument.__$weex__;return new Promise((function(resolve){weex.requireModule("dom").getComponentRect(node.ref,(function(res){res.result?resolve({left:res.size.left,top:res.size.top}):resolve({left:0,top:0})}))}))},querySelector:function(context,selector){return Promise.resolve(transEl(querySelector(context,selector)))},querySelectorAll:function(context,selector){return Promise.resolve({elements:querySelector(context,selector,[]).map((function(el){return transEl(el)}))})},queryProperties:function(context,names){var options=DOM_PROPERTIES.find((function(options){return options.test(names,context)}));return options?options.call(context).then((function(properties){return{properties:properties}})):Promise.resolve({properties:names.map((function(name){return getDataByPath(context,name)}))})},queryAttributes:function(context,names){var attr=context.attr;return Promise.resolve({attributes:names.map((function(name){return"class"===name?(context.classList||[]).join(" "):String(attr[name]||attr[camelize(name)]||"")}))})},queryStyles:function(context,names){var style=context.style;return Promise.resolve({styles:names.map((function(name){return style[name]}))})},queryHTML:function(context,type){return Promise.resolve({html:toHTML(context,type)})},dispatchTapEvent:function(el){return el.fireEvent("click",{timeStamp:Date.now(),target:el,currentTarget:el},!0),Promise.resolve()},dispatchLongpressEvent:function(el){return el.fireEvent("longpress",{timeStamp:Date.now(),target:el,currentTarget:el},!0),Promise.resolve()},dispatchTouchEvent:function(el,type,eventInitDict){return eventInitDict||(eventInitDict={}),eventInitDict.touches||(eventInitDict.touches=[]),eventInitDict.changedTouches||(eventInitDict.changedTouches=[]),eventInitDict.touches.length||eventInitDict.touches.push({identifier:Date.now(),target:el}),el.fireEvent(type,Object.assign({timeStamp:Date.now(),target:el,currentTarget:el},eventInitDict),!0),Promise.resolve()},callFunction:function(el,functionName,args){var fn=getDataByPath(FUNCTIONS,functionName);return fn?Promise.resolve({result:fn.apply(null,__spreadArrays([el],args))}):Promise.reject(Error(functionName+" not exists"))},triggerEvent:function(el,type,detail){var vm=el.__vue__;return vm?vm.$trigger&&vm.$trigger(type,{},detail):el.fireEvent(type,{timeStamp:Date.now(),target:el,currentTarget:el},!1,{params:[{detail:detail}]}),Promise.resolve()}};var Api={};Object.keys(App$1).forEach((function(method){Api["App."+method]=App$1[method]})),Object.keys(Page$1).forEach((function(method){Api["Page."+method]=Page$1[method]})),Object.keys(Element$1).forEach((function(method){Api["Element."+method]=Element$1[method]}));var NVueApi,fallback,socketTask,wsEndpoint=process.env.UNI_AUTOMATOR_WS_ENDPOINT;function send(data){socketTask.send({data:JSON.stringify(data)})}function onMessage(res){var _a=JSON.parse(res.data),id=_a.id,method=_a.method,params=_a.params,data={id:id},fn=Api[method];if(!fn){if(fallback){var result=fallback(id,method,params,data);if(!0===result)return;fn=result}if(!fn)return data.error={message:method+" unimplemented"},send(data)}try{if("Page.callMethodWithCallback"===method){params.args=params.args||[];return params.args.push((function(result){null!==result&&(data.result=result),send(data)})),void fn(params)}fn(params).then((function(res){res&&(data.result=res)})).catch((function(err){data.error={message:err.message}})).finally((function(){send(data)}))}catch(err){data.error={message:err.message},send(data)}}fallback=function(id,method,params,data){var pageId=params.pageId,page=function(pageId){var pages=getCurrentPages();if(!pageId)return pages[pages.length-1];return pages.find((function(page){return page.$page.id===pageId}))}(pageId);return page?!page.$page.meta.isNVue?(UniServiceJSBridge.publishHandler("sendAutoMessage",{id:id,method:method,params:params},pageId),!0):(NVueApi||(NVueApi=Object.assign({},function(adapter){return{"Page.getElement":function(params){return adapter.querySelector(adapter.getDocument(params.pageId),params.selector)},"Page.getElements":function(params){return adapter.querySelectorAll(adapter.getDocument(params.pageId),params.selector)},"Page.getWindowProperties":function(params){return adapter.queryProperties(adapter.getWindow(params.pageId),params.names)}}}(NativeAdapter),function(adapter){var getEl=function(params){return adapter.getEl(params.elementId,params.pageId)};return{"Element.getElement":function(params){return adapter.querySelector(getEl(params),params.selector)},"Element.getElements":function(params){return adapter.querySelectorAll(getEl(params),params.selector)},"Element.getDOMProperties":function(params){return adapter.queryProperties(getEl(params),params.names)},"Element.getProperties":function(params){var el=getEl(params),ctx=el.__vue__||el.attr||{};return adapter.queryProperties(ctx,params.names)},"Element.getOffset":function(params){return adapter.getOffset(getEl(params))},"Element.getAttributes":function(params){return adapter.queryAttributes(getEl(params),params.names)},"Element.getStyles":function(params){return adapter.queryStyles(getEl(params),params.names)},"Element.getHTML":function(params){return adapter.queryHTML(getEl(params),params.type)},"Element.tap":function(params){return adapter.dispatchTapEvent(getEl(params))},"Element.longpress":function(params){return adapter.dispatchLongpressEvent(getEl(params))},"Element.touchstart":function(params){return adapter.dispatchTouchEvent(getEl(params),"touchstart",params)},"Element.touchmove":function(params){return adapter.dispatchTouchEvent(getEl(params),"touchmove",params)},"Element.touchend":function(params){return adapter.dispatchTouchEvent(getEl(params),"touchend",params)},"Element.callFunction":function(params){return adapter.callFunction(getEl(params),params.functionName,params.args)},"Element.triggerEvent":function(params){return adapter.triggerEvent(getEl(params),params.type,params.detail)}}}(NativeAdapter))),NVueApi[method]):(data.error={message:"page["+pageId+"] not exists"},send(data),!0)},UniServiceJSBridge.subscribe("onAutoMessageReceive",(function(res){send(res)})),setTimeout((function(){var options;void 0===options&&(options={}),(socketTask=uni.connectSocket({url:wsEndpoint,complete:function(){}})).onMessage(onMessage),socketTask.onOpen((function(res){options.success&&options.success(),console.log("已开启自动化测试...")})),socketTask.onError((function(res){console.log("automator.onError",res)})),socketTask.onClose((function(){options.fail&&options.fail({errMsg:"$$initRuntimeAutomator:fail"}),console.log("automator.onClose")}))}),500);
|
package/lib/uni.automator.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var t=require("fs"),e=require("debug"),s=require("postcss-selector-parser"),r=require("fs-extra"),
|
|
1
|
+
"use strict";var t=require("fs"),e=require("debug"),s=require("licia/sleep"),i=require("postcss-selector-parser"),r=require("fs-extra"),a=require("licia/dateFormat"),o=require("path"),n=require("util");function l(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var c=l(t),d=l(e),u=l(s),h=l(i),p=l(r),y=l(a);function m(t){t.walk((t=>{if("tag"===t.type){const e=t.value;t.value="page"===e?"body":"uni-"+e}}))}d.default("automator:devtool");const f=["Page.getElement","Page.getElements","Element.getElement","Element.getElements"];const $=/^win/.test(process.platform);function v(t){try{return require(t)}catch(e){return require(require.resolve(t,{paths:[process.cwd()]}))}}const M=d.default("automator:launcher"),w=n.promisify(c.default.readdir),g=n.promisify(c.default.stat);async function P(t){const e=await w(t);return(await Promise.all(e.map((async e=>{const s=o.resolve(t,e);return(await g(s)).isDirectory()?P(s):s})))).reduce(((t,e)=>t.concat(e)),[])}class E{constructor(t){this.isX=!1,"true"===process.env.UNI_APP_X&&(this.isX=!0),this.id=t.id,this.app=t.executablePath,this.appid=t.appid||process.env.UNI_APP_ID||"HBuilder",this.package=t.package||(this.isX?"io.dcloud.uniappx":"io.dcloud.HBuilder"),this.activity=t.activity||(this.isX?"io.dcloud.uniapp.UniAppActivity":"io.dcloud.PandoraEntry")}shouldPush(){return this.exists(this.FILE_APP_SERVICE).then((()=>(M(`${y.default("yyyy-mm-dd HH:MM:ss:l")} ${this.FILE_APP_SERVICE} exists`),!1))).catch((()=>(M(`${y.default("yyyy-mm-dd HH:MM:ss:l")} ${this.FILE_APP_SERVICE} not exists`),!0)))}push(t){return P(t).then((e=>{const s=e.map((e=>{const s=(t=>$?t.replace(/\\/g,"/"):t)(o.join(this.DIR_WWW,o.relative(t,e)));return M(`${y.default("yyyy-mm-dd HH:MM:ss:l")} push ${e} ${s}`),this.pushFile(e,s)}));return Promise.all(s)})).then((t=>!0))}get FILE_APP_SERVICE(){return`${this.DIR_WWW}/app-service.js`}}const A=d.default("automator:simctl");function _(t){const e=parseInt(t);return e>9?String(e):"0"+e}class H extends E{constructor(){super(...arguments),this.bundleVersion=""}async init(){const t=v("node-simctl").Simctl;this.tool=new t({udid:this.id});try{await this.tool.bootDevice()}catch(t){}await this.initSDCard(),A(`${y.default("yyyy-mm-dd HH:MM:ss:l")} init ${this.id}`)}async initSDCard(){const t=await this.tool.appInfo(this.package);A(`${y.default("yyyy-mm-dd HH:MM:ss:l")} appInfo ${t}`);const e=t.match(/DataContainer\s+=\s+"(.*)"/);if(!e)return Promise.resolve("");const s=t.match(/CFBundleVersion\s+=\s+(.*);/);if(!s)return Promise.resolve("");this.sdcard=e[1].replace("file:",""),this.bundleVersion=s[1],A(`${y.default("yyyy-mm-dd HH:MM:ss:l")} install ${this.sdcard}`)}async version(){return Promise.resolve(this.bundleVersion)}formatVersion(t){const e=t.split(".");return 3!==e.length?t:e[0]+_(e[1])+_(e[2])}async install(){return A(`${y.default("yyyy-mm-dd HH:MM:ss:l")} install ${this.app}`),await this.tool.installApp(this.app),await this.tool.grantPermission(this.package,"all"),await this.initSDCard(),Promise.resolve(!0)}async start(){try{await this.tool.terminateApp(this.package)}catch(t){}try{await this.tool.launchApp(this.package)}catch(t){console.error(t)}return Promise.resolve(!0)}async exit(){return await this.tool.terminateApp(this.package),await this.tool.shutdownDevice(),Promise.resolve(!0)}async captureScreenshot(){return Promise.resolve(await this.tool.getScreenshot())}exists(t){return p.default.existsSync(t)?Promise.resolve(!0):Promise.reject(Error(`${t} not exists`))}pushFile(t,e){return Promise.resolve(p.default.copySync(t,e))}get DIR_WWW(){return`${this.sdcard}/Documents/Pandora/apps/${this.appid}/www/`}}const S=v("adbkit"),x=d.default("automator:adb");class D extends E{async init(){if(this.tool=S.createClient(),!this.id){const t=await this.tool.listDevices();if(!t.length)throw Error("Device not found");this.id=t[0].id}await this.root(),this.sdcard=(await this.shell(this.COMMAND_EXTERNAL)).trim(),x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} init ${this.id} ${this.sdcard}`)}root(){return this.tool.root(this.id).then((()=>{x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} root ${this.id} ${this.sdcard}`)})).catch((t=>{x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} root ${this.id} ${t}`)}))}version(){return this.shell(this.COMMAND_VERSION).then((t=>{const e=t.match(/versionName=(.*)/);return e&&e.length>1?e[1]:""}))}formatVersion(t){return t}async install(){let t=!0;try{const e=(await this.tool.getProperties(this.id))["ro.build.version.release"].split(".")[0];parseInt(e)<6&&(t=!1)}catch(t){}if(x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} install ${this.app} permission=${t}`),t){const t=v("adbkit/lib/adb/command.js"),e=t.prototype._send;t.prototype._send=function(t){return 0===t.indexOf("shell:pm install -r ")&&(t=t.replace("shell:pm install -r ","shell:pm install -r -g "),x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} ${t} `)),e.call(this,t)}}return this.tool.install(this.id,this.app).then((()=>this.init()))}start(){return this.exit().then((()=>this.shell(this.COMMAND_START)))}exit(){return this.shell(this.COMMAND_STOP)}captureScreenshot(){return this.tool.screencap(this.id).then((t=>new Promise((e=>{const s=[];t.on("data",(function(t){s.push(t)})),t.on("end",(function(){e(Buffer.concat(s).toString("base64"))}))}))))}exists(t){return this.tool.stat(this.id,t)}pushFile(t,e){return this.tool.push(this.id,t,e)}shell(t){return x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} SEND ► ${t}`),this.tool.shell(this.id,t).then(S.util.readAll).then((t=>{const e=t.toString();return x(`${y.default("yyyy-mm-dd HH:MM:ss:l")} ◀ RECV ${e}`),e}))}get DIR_WWW(){return`/storage/emulated/0/Android/data/${this.package}/apps/${this.appid}/www`}get COMMAND_EXTERNAL(){return"echo $EXTERNAL_STORAGE"}get COMMAND_VERSION(){return`dumpsys package ${this.package}`}get COMMAND_STOP(){return`am force-stop ${this.package}`}get COMMAND_START(){return`am start -n ${this.package}/${this.activity} --es ${this.appid} --ez needUpdateApp false --ez reload true`}}const I=d.default("automator:devtool");let b,C=!1;const N={android:/android_version=(.*)/,ios:/iphone_version=(.*)/};const R={"Tool.close":{reflect:async()=>{}},"App.exit":{reflect:async()=>b.exit()},"App.enableLog":{reflect:()=>Promise.resolve()}};!function(t){f.forEach((e=>{t[e]=function(t){return{reflect:async(e,s)=>e(t,s,!1),params:t=>(t.selector&&(t.selector=h.default(m).processSync(t.selector)),t)}}(e)}))}(R);const O={devtools:{name:"App",paths:[],required:["manifest.json","app-service.js"],validate:async function(t,e){t.platform=(t.platform||process.env.UNI_OS_NAME).toLocaleLowerCase(),Object.assign(t,t[t.platform]),b=function(t,e){return"ios"===t?new H(e):new D(e)}(t.platform,t),await b.init();const s=await b.version();if(s){if(t.version){const e=b.formatVersion(function(t,e){if(t.endsWith(".txt"))try{const s=c.default.readFileSync(t).toString().match(N[e]);if(s)return s[1]}catch(t){console.error(t)}return t}(t.version,t.platform));I(`version: ${s}`),I(`newVersion: ${e}`),e!==s&&(C=!0)}}else C=!0;if(C){if(!t.executablePath)throw Error(`app-plus->${t.platform}->executablePath is not provided`);if(!c.default.existsSync(t.executablePath))throw Error(`${t.executablePath} not exists`)}return t},create:async function(t,e,s){C&&await b.install(),(C||s.compiled||await b.shouldPush())&&(await b.push(t),await u.default(1e3)),await b.start()}},adapter:R};module.exports=O;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dcloudio/uni-app-plus",
|
|
3
|
-
"version": "3.0.0-alpha-
|
|
3
|
+
"version": "3.0.0-alpha-3080520230612001",
|
|
4
4
|
"description": "@dcloudio/uni-app-plus",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -25,22 +25,24 @@
|
|
|
25
25
|
"apply": [
|
|
26
26
|
"app"
|
|
27
27
|
],
|
|
28
|
+
"uvue": true,
|
|
28
29
|
"main": "dist/uni.compiler.js"
|
|
29
30
|
},
|
|
30
31
|
"dependencies": {
|
|
31
|
-
"@dcloudio/uni-app-
|
|
32
|
-
"@dcloudio/uni-app-
|
|
32
|
+
"@dcloudio/uni-app-uts": "3.0.0-alpha-3080520230612001",
|
|
33
|
+
"@dcloudio/uni-app-vite": "3.0.0-alpha-3080520230612001",
|
|
34
|
+
"@dcloudio/uni-app-vue": "3.0.0-alpha-3080520230612001",
|
|
33
35
|
"debug": "^4.3.3",
|
|
34
36
|
"fs-extra": "^10.0.0",
|
|
35
37
|
"licia": "^1.29.0",
|
|
36
38
|
"postcss-selector-parser": "^6.0.6"
|
|
37
39
|
},
|
|
38
40
|
"devDependencies": {
|
|
39
|
-
"@dcloudio/uni-cli-shared": "3.0.0-alpha-
|
|
40
|
-
"@dcloudio/uni-components": "3.0.0-alpha-
|
|
41
|
-
"@dcloudio/uni-h5": "3.0.0-alpha-
|
|
42
|
-
"@dcloudio/uni-i18n": "3.0.0-alpha-
|
|
43
|
-
"@dcloudio/uni-shared": "3.0.0-alpha-
|
|
41
|
+
"@dcloudio/uni-cli-shared": "3.0.0-alpha-3080520230612001",
|
|
42
|
+
"@dcloudio/uni-components": "3.0.0-alpha-3080520230612001",
|
|
43
|
+
"@dcloudio/uni-h5": "3.0.0-alpha-3080520230612001",
|
|
44
|
+
"@dcloudio/uni-i18n": "3.0.0-alpha-3080520230612001",
|
|
45
|
+
"@dcloudio/uni-shared": "3.0.0-alpha-3080520230612001",
|
|
44
46
|
"@types/pako": "1.0.2",
|
|
45
47
|
"@vue/compiler-sfc": "3.2.47",
|
|
46
48
|
"autoprefixer": "^10.4.14",
|