@tarojs/plugin-platform-harmony-ets 4.0.0-beta.11 → 4.0.0-beta.111
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/apis/base/system.ts +73 -20
- package/dist/apis/canvas/index.ts +10 -1
- package/dist/apis/device/clipboard.ts +16 -8
- package/dist/apis/framework/index.ts +1 -5
- package/dist/apis/index.ts +25 -17
- package/dist/apis/media/image/index.ts +1 -1
- package/dist/apis/storage/index.ts +135 -131
- package/dist/apis/ui/animation/animation.ts +71 -29
- package/dist/apis/ui/background.ts +2 -1
- package/dist/apis/ui/interaction/index.ts +42 -59
- package/dist/apis/ui/navigation-bar/index.ts +1 -1
- package/dist/apis/ui/pull-down-refresh.ts +9 -3
- package/dist/apis/ui/scroll/index.ts +5 -5
- package/dist/apis/ui/tab-bar.ts +3 -3
- package/dist/apis/utils/index.ts +2 -1
- package/dist/apis/wxml/IntersectionObserver.ts +18 -10
- package/dist/apis/wxml/selectorQuery.ts +26 -13
- package/dist/components-harmony-ets/button.ets +35 -8
- package/dist/components-harmony-ets/canvas.ets +51 -0
- package/dist/components-harmony-ets/checkbox.ets +70 -60
- package/dist/components-harmony-ets/form.ets +35 -16
- package/dist/components-harmony-ets/icon.ets +16 -8
- package/dist/components-harmony-ets/image.ets +22 -6
- package/dist/components-harmony-ets/index.ets +92 -0
- package/dist/components-harmony-ets/innerHtml.ets +6 -5
- package/dist/components-harmony-ets/input.ets +62 -40
- package/dist/components-harmony-ets/label.ets +44 -21
- package/dist/components-harmony-ets/listView.ets +31 -0
- package/dist/components-harmony-ets/movableArea.ets +112 -53
- package/dist/components-harmony-ets/movableView.ets +75 -48
- package/dist/components-harmony-ets/navigationBar.ets +65 -0
- package/dist/components-harmony-ets/pageMeta.ets +94 -0
- package/dist/components-harmony-ets/picker.ets +41 -38
- package/dist/components-harmony-ets/progress.ets +31 -24
- package/dist/components-harmony-ets/pseudo.ets +80 -0
- package/dist/components-harmony-ets/radio.ets +76 -66
- package/dist/components-harmony-ets/richText.ets +4 -25
- package/dist/components-harmony-ets/scrollList.ets +103 -0
- package/dist/components-harmony-ets/scrollView.ets +47 -47
- package/dist/components-harmony-ets/slider.ets +18 -14
- package/dist/components-harmony-ets/stickySection.ets +42 -0
- package/dist/components-harmony-ets/style.ets +386 -130
- package/dist/components-harmony-ets/swiper.ets +41 -4
- package/dist/components-harmony-ets/switch.ets +35 -31
- package/dist/components-harmony-ets/{index.ts → tag.ts} +6 -0
- package/dist/components-harmony-ets/text.ets +102 -46
- package/dist/components-harmony-ets/textArea.ets +49 -34
- package/dist/components-harmony-ets/utils/AttributeManager.ets +2 -2
- package/dist/components-harmony-ets/utils/DynamicCenter.ts +2 -2
- package/dist/components-harmony-ets/utils/flexManager.ets +49 -19
- package/dist/components-harmony-ets/utils/helper.ets +20 -8
- package/dist/components-harmony-ets/utils/htmlParser/HarmonyHTMLParser.ts +1 -2
- package/dist/components-harmony-ets/utils/htmlParser/index.ts +1 -1
- package/dist/components-harmony-ets/utils/index.ts +54 -50
- package/dist/components-harmony-ets/utils/styles.ets +170 -93
- package/dist/components-harmony-ets/video.ets +27 -19
- package/dist/components-harmony-ets/view.ets +47 -40
- package/dist/components-harmony-ets/webView.ets +6 -5
- package/dist/index.d.ts +152 -0
- package/dist/index.js +69 -43
- package/dist/index.js.map +1 -1
- package/dist/runtime-ets/bom/document.ts +6 -4
- package/dist/runtime-ets/bom/getComputedStyle.ts +2 -2
- package/dist/runtime-ets/bom/window.ts +7 -0
- package/dist/runtime-ets/current.ts +5 -1
- package/dist/runtime-ets/dom/bind.ts +28 -12
- package/dist/runtime-ets/dom/class-list.ts +2 -2
- package/dist/runtime-ets/dom/cssNesting.ts +419 -0
- package/dist/runtime-ets/dom/cssStyleDeclaration.ts +28 -42
- package/dist/runtime-ets/dom/document.ts +8 -11
- package/dist/runtime-ets/dom/element/canvas.ts +136 -0
- package/dist/runtime-ets/dom/element/element.ts +376 -56
- package/dist/runtime-ets/dom/element/form.ts +20 -22
- package/dist/runtime-ets/dom/element/index.ts +22 -2
- package/dist/runtime-ets/dom/element/movableArea.ts +0 -1
- package/dist/runtime-ets/dom/element/movableView.ts +234 -2
- package/dist/runtime-ets/dom/element/normal.ts +27 -6
- package/dist/runtime-ets/dom/element/progress.ts +0 -2
- package/dist/runtime-ets/dom/element/text.ts +0 -8
- package/dist/runtime-ets/dom/element/video.ts +4 -4
- package/dist/runtime-ets/dom/element/webView.ts +4 -5
- package/dist/runtime-ets/dom/event.ts +3 -5
- package/dist/runtime-ets/dom/eventTarget.ts +2 -3
- package/dist/runtime-ets/dom/node.ts +51 -19
- package/dist/runtime-ets/dom/stylesheet/covertWeb2Hm.ts +418 -237
- package/dist/runtime-ets/dom/stylesheet/index.ts +29 -311
- package/dist/runtime-ets/dom/stylesheet/type.ts +51 -9
- package/dist/runtime-ets/dom/stylesheet/util.ts +33 -27
- package/dist/runtime-ets/index.ts +2 -1
- package/dist/runtime-ets/interface/event.ts +1 -1
- package/dist/runtime-ets/utils/index.ts +74 -13
- package/dist/runtime-ets/utils/info.ts +2 -2
- package/dist/runtime-framework/react/app.ts +15 -10
- package/dist/runtime-framework/react/hooks.ts +0 -1
- package/dist/runtime-framework/react/index.ts +0 -2
- package/dist/runtime-framework/react/native-page.ts +185 -78
- package/dist/runtime-framework/react/page.ts +4 -9
- package/dist/runtime-framework/react/utils/index.ts +3 -3
- package/dist/runtime-framework/solid/app.ts +30 -46
- package/dist/runtime-framework/solid/connect.ts +21 -3
- package/dist/runtime-framework/solid/hooks.ts +16 -11
- package/dist/runtime-framework/solid/index.ts +6 -2
- package/dist/runtime-framework/solid/page.ts +85 -31
- package/dist/runtime-framework/solid/reconciler/props.ts +70 -25
- package/dist/runtime-framework/solid/reconciler/render.ts +16 -6
- package/dist/runtime-framework/solid/reconciler/use.ts +0 -1
- package/dist/runtime-framework/solid/utils/index.ts +3 -5
- package/dist/runtime-utils.d.ts +827 -0
- package/dist/runtime-utils.js +425 -253
- package/dist/runtime-utils.js.map +1 -1
- package/dist/runtime.d.ts +1 -0
- package/dist/runtime.js +425 -253
- package/dist/runtime.js.map +1 -1
- package/index.js +3 -1
- package/package.json +14 -15
- package/static/media/cancel.svg +1 -1
- package/static/media/circle.svg +1 -1
- package/static/media/clear.svg +1 -1
- package/static/media/download.svg +1 -1
- package/static/media/info.svg +1 -1
- package/static/media/info_circle.svg +1 -1
- package/static/media/search.svg +1 -1
- package/static/media/success.svg +1 -1
- package/static/media/success_no_circle.svg +1 -1
- package/static/media/warn.svg +1 -1
- package/types/harmony.d.ts +4 -0
- package/types/index.d.ts +4 -0
- package/types/runtime.d.ts +1 -1
- /package/dist/runtime-framework/solid/{contant.ts → constant.ts} +0 -0
package/dist/runtime-utils.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { isFunction, isString, isArray, isObject, isNull, isNumber, isUndefined, queryToJson, PLATFORM_TYPE, singleQuote, internalComponents } from '@tarojs/shared';
|
|
2
2
|
import _display from '@ohos.display';
|
|
3
|
-
import { Current, window, hooks, document as document$1, getPageScrollerOrNode, findChildNodeWithDFS, setNodeEventCallbackAndTriggerComponentUpdate, AREA_CHANGE_EVENT_NAME, disconnectEvent, VISIBLE_CHANGE_EVENT_NAME } from '@tarojs/runtime';
|
|
3
|
+
import { Current, window, eventSource, hooks, document as document$1, getPageScrollerOrNode, findChildNodeWithDFS, setNodeEventCallbackAndTriggerComponentUpdate, AREA_CHANGE_EVENT_NAME, disconnectEvent, VISIBLE_CHANGE_EVENT_NAME, getCurrentInstance } from '@tarojs/runtime';
|
|
4
4
|
import { eventCenter, Events, History } from '@tarojs/runtime/dist/runtime.esm';
|
|
5
|
+
import ConfigurationConstant from '@ohos.app.ability.ConfigurationConstant';
|
|
5
6
|
import deviceInfo from '@ohos.deviceInfo';
|
|
6
7
|
import i18n from '@ohos.i18n';
|
|
7
|
-
import deviceMethod from '@system.device';
|
|
8
8
|
import errorManager from '@ohos.app.ability.errorManager';
|
|
9
9
|
import sensor from '@ohos.sensor';
|
|
10
10
|
import batteryInfo, { BatteryChargeState } from '@ohos.batteryInfo';
|
|
11
11
|
import pasteboard from '@ohos.pasteboard';
|
|
12
|
+
import promptAction from '@ohos.promptAction';
|
|
12
13
|
import inputMethodEngine from '@ohos.inputMethodEngine';
|
|
13
14
|
import network from '@system.network';
|
|
14
15
|
import call from '@ohos.telephony.call';
|
|
@@ -28,11 +29,9 @@ import http from '@ohos.net.http';
|
|
|
28
29
|
import webSocket from '@ohos.net.webSocket';
|
|
29
30
|
import router from '@ohos.router';
|
|
30
31
|
import bundleManager from '@ohos.bundle.bundleManager';
|
|
31
|
-
import
|
|
32
|
-
import hilog from '@ohos.hilog';
|
|
32
|
+
import distributedKVStore from '@ohos.data.distributedKVStore';
|
|
33
33
|
import matrix4 from '@ohos.matrix4';
|
|
34
|
-
import
|
|
35
|
-
import { pxTransformHelper } from '@tarojs/taro';
|
|
34
|
+
import { pxTransformHelper as pxTransformHelper$1 } from '@tarojs/taro';
|
|
36
35
|
|
|
37
36
|
class MethodHandler {
|
|
38
37
|
constructor({ name, success, fail, complete }) {
|
|
@@ -186,7 +185,7 @@ function temporarilyNotSupport(name, recommended) {
|
|
|
186
185
|
return (option = {}, ...args) => {
|
|
187
186
|
const { success, fail, complete } = option;
|
|
188
187
|
const handle = new MethodHandler({ name, success, fail, complete });
|
|
189
|
-
let errMsg =
|
|
188
|
+
let errMsg = `暂时不支持 API ${name}`;
|
|
190
189
|
if (recommended) {
|
|
191
190
|
errMsg += `, 请使用 ${recommended}`;
|
|
192
191
|
}
|
|
@@ -266,16 +265,63 @@ const preloadWebview = /* @__PURE__ */ temporarilyNotSupport('preloadWebview');
|
|
|
266
265
|
const preloadSkylineView = /* @__PURE__ */ temporarilyNotSupport('preloadSkylineView');
|
|
267
266
|
const preloadAssets = /* @__PURE__ */ temporarilyNotSupport('preloadAssets');
|
|
268
267
|
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
let
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
268
|
+
let display$1;
|
|
269
|
+
let navigationIndicatorRect;
|
|
270
|
+
let safeArea = null;
|
|
271
|
+
let statusBarHeight;
|
|
272
|
+
let windowRect;
|
|
273
|
+
Current.contextPromise.then((context) => {
|
|
274
|
+
const win = window.__ohos.getLastWindow(context);
|
|
275
|
+
win.then(mainWindow => {
|
|
276
|
+
const topRect = mainWindow.getWindowAvoidArea(window.__ohos.AvoidAreaType.TYPE_SYSTEM).topRect;
|
|
277
|
+
navigationIndicatorRect = mainWindow.getWindowAvoidArea(window.__ohos.AvoidAreaType.TYPE_NAVIGATION_INDICATOR).bottomRect;
|
|
278
|
+
statusBarHeight = topRect.top + topRect.height;
|
|
279
|
+
windowRect = mainWindow.getWindowProperties().windowRect;
|
|
280
|
+
try {
|
|
281
|
+
display$1 = _display.getDefaultDisplaySync();
|
|
282
|
+
setSafeArea({
|
|
283
|
+
top: statusBarHeight,
|
|
284
|
+
left: 0,
|
|
285
|
+
right: display$1.width,
|
|
286
|
+
bottom: navigationIndicatorRect === null || navigationIndicatorRect === void 0 ? void 0 : navigationIndicatorRect.top
|
|
287
|
+
});
|
|
288
|
+
// @ts-ignore
|
|
289
|
+
display$1.getCutoutInfo((err, { boundingRects = [], waterfallDisplayAreaRects = {} } = {}) => {
|
|
290
|
+
var _a, _b, _c, _d, _e, _f;
|
|
291
|
+
if (err === null || err === void 0 ? void 0 : err.code) {
|
|
292
|
+
console.error('Failed to get cutout info', JSON.stringify(err));
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
295
|
+
const top = Math.max(...boundingRects.map(rect => rect.top + rect.height), ((_a = waterfallDisplayAreaRects.top) === null || _a === void 0 ? void 0 : _a.top) + ((_b = waterfallDisplayAreaRects.top) === null || _b === void 0 ? void 0 : _b.height), statusBarHeight);
|
|
296
|
+
const bottom = Math.min(display$1.height - ((_c = waterfallDisplayAreaRects.bottom) === null || _c === void 0 ? void 0 : _c.top), navigationIndicatorRect === null || navigationIndicatorRect === void 0 ? void 0 : navigationIndicatorRect.top);
|
|
297
|
+
const left = ((_d = waterfallDisplayAreaRects.left) === null || _d === void 0 ? void 0 : _d.left) + ((_e = waterfallDisplayAreaRects.left) === null || _e === void 0 ? void 0 : _e.width);
|
|
298
|
+
const right = display$1.width - ((_f = waterfallDisplayAreaRects.right) === null || _f === void 0 ? void 0 : _f.left);
|
|
299
|
+
setSafeArea({
|
|
300
|
+
top,
|
|
301
|
+
left,
|
|
302
|
+
right,
|
|
303
|
+
bottom
|
|
304
|
+
});
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
catch (e) {
|
|
308
|
+
console.error('Failed to get display', e);
|
|
309
|
+
}
|
|
310
|
+
});
|
|
276
311
|
});
|
|
312
|
+
function setSafeArea({ top, left, right, bottom }) {
|
|
313
|
+
safeArea = {
|
|
314
|
+
top,
|
|
315
|
+
bottom,
|
|
316
|
+
left,
|
|
317
|
+
right,
|
|
318
|
+
height: bottom - top,
|
|
319
|
+
width: right - left,
|
|
320
|
+
};
|
|
321
|
+
}
|
|
277
322
|
/* 同步版本 */
|
|
278
323
|
const getSystemInfoSync = function () {
|
|
324
|
+
var _a, _b;
|
|
279
325
|
const res = {};
|
|
280
326
|
res.SDKVersion = deviceInfo && deviceInfo.sdkApiVersion; // 客户端基础库版本 string
|
|
281
327
|
res.albumAuthorized = false; // 允许使用相册的开关(仅 iOS 有效) boolean
|
|
@@ -285,7 +331,7 @@ const getSystemInfoSync = function () {
|
|
|
285
331
|
res.cameraAuthorized = null; // 允许使用摄像头的开关 boolean
|
|
286
332
|
res.enableDebug = null; // 是否已打开调试 boolean
|
|
287
333
|
res.fontSizeSetting = null; // 用户字体大小(单位px) number
|
|
288
|
-
res.language = i18n
|
|
334
|
+
res.language = (_a = i18n === null || i18n === void 0 ? void 0 : i18n.getSystemLanguage) === null || _a === void 0 ? void 0 : _a.call(i18n); // string
|
|
289
335
|
res.locationAuthorized = null; // 定位的开关 boolean
|
|
290
336
|
res.locationEnabled = null; // 地理位置的系统开关 boolean
|
|
291
337
|
res.microphoneAuthorized = null; // 麦克风的开关 boolean
|
|
@@ -296,17 +342,18 @@ const getSystemInfoSync = function () {
|
|
|
296
342
|
res.notificationSoundAuthorized = false; // 通知带有声音的开关(仅 iOS 有效)boolean
|
|
297
343
|
res.phoneCalendarAuthorized = null; // 使用日历的开关 boolean
|
|
298
344
|
res.wifiEnabled = false; // Wi-Fi 的系统开关 boolean
|
|
299
|
-
res.pixelRatio =
|
|
300
|
-
res.platform = '
|
|
301
|
-
res.safeArea =
|
|
302
|
-
res.screenHeight = display
|
|
303
|
-
res.screenWidth = display
|
|
304
|
-
res.statusBarHeight =
|
|
305
|
-
res.system = deviceInfo
|
|
306
|
-
|
|
307
|
-
res.
|
|
308
|
-
res.windowHeight =
|
|
309
|
-
res.
|
|
345
|
+
res.pixelRatio = display$1 && display$1.densityPixels; // 设备像素比,number
|
|
346
|
+
res.platform = 'harmony'; // 客户端平台 string
|
|
347
|
+
res.safeArea = safeArea; // 在竖屏正方向下的安全区域 General.SafeAreaResult
|
|
348
|
+
res.screenHeight = display$1 === null || display$1 === void 0 ? void 0 : display$1.height; // 屏幕高度,单位px number
|
|
349
|
+
res.screenWidth = display$1 === null || display$1 === void 0 ? void 0 : display$1.width; // 屏幕宽度,单位px number
|
|
350
|
+
res.statusBarHeight = statusBarHeight; // 状态栏的高度,单位px number
|
|
351
|
+
res.system = deviceInfo === null || deviceInfo === void 0 ? void 0 : deviceInfo.osFullName; // 操作系统及版本 string
|
|
352
|
+
// Note: 更新配置时才能记录
|
|
353
|
+
res.theme = ((_b = AppStorage.get('__TARO_APP_CONFIG')) === null || _b === void 0 ? void 0 : _b.colorMode) === ConfigurationConstant.ColorMode.COLOR_MODE_DARK ? 'dark' : 'light'; // 系统当前主题,取值为light或dark 'light' | 'dark'
|
|
354
|
+
res.windowHeight = windowRect === null || windowRect === void 0 ? void 0 : windowRect.height; // 可使用窗口高度,单位px number
|
|
355
|
+
res.windowWidth = windowRect === null || windowRect === void 0 ? void 0 : windowRect.width; // 可使用窗口宽度,单位px number
|
|
356
|
+
res.version = deviceInfo === null || deviceInfo === void 0 ? void 0 : deviceInfo.displayVersion; // 版本号 string
|
|
310
357
|
return res;
|
|
311
358
|
};
|
|
312
359
|
/* 异步版本 */
|
|
@@ -412,7 +459,13 @@ const base64ToArrayBuffer = /* @__PURE__ */ temporarilyNotSupport('base64ToArray
|
|
|
412
459
|
/** 创建离屏 canvas 实例 */
|
|
413
460
|
const createOffscreenCanvas = /* @__PURE__ */ temporarilyNotSupport('createOffscreenCanvas');
|
|
414
461
|
/** 创建 canvas 的绘图上下文 CanvasContext 对象 */
|
|
415
|
-
const createCanvasContext = /* @__PURE__ */ temporarilyNotSupport('createOffscreenCanvas')
|
|
462
|
+
// export const createCanvasContext = /* @__PURE__ */ temporarilyNotSupport('createOffscreenCanvas')
|
|
463
|
+
const createCanvasContext = (canvasId) => {
|
|
464
|
+
const dom = eventSource.get(`canvasId-${canvasId}`);
|
|
465
|
+
// return dom as TaroCanvasElement
|
|
466
|
+
if (dom)
|
|
467
|
+
return dom.context;
|
|
468
|
+
};
|
|
416
469
|
/** 把当前画布指定区域的内容导出生成指定大小的图片 */
|
|
417
470
|
const canvasToTempFilePath = /* @__PURE__ */ temporarilyNotSupport('createOffscreenCanvas');
|
|
418
471
|
/** 将像素数据绘制到画布 */
|
|
@@ -533,7 +586,7 @@ const getBatteryInfoSync = () => ({
|
|
|
533
586
|
isCharging: [BatteryChargeState.ENABLE, BatteryChargeState.FULL].includes(batteryInfo.chargingStatus),
|
|
534
587
|
level: batteryInfo.batterySOC
|
|
535
588
|
});
|
|
536
|
-
const getBatteryInfo = (
|
|
589
|
+
const getBatteryInfo = (...args_1) => __awaiter(void 0, [...args_1], void 0, function* ({ success, fail, complete } = {}) {
|
|
537
590
|
const handle = new MethodHandler({ name: 'getBatteryInfo', success, fail, complete });
|
|
538
591
|
try {
|
|
539
592
|
return handle.success(getBatteryInfoSync());
|
|
@@ -606,8 +659,20 @@ const setClipboardData = function (options) {
|
|
|
606
659
|
}
|
|
607
660
|
return new Promise((resolve, reject) => {
|
|
608
661
|
const systemPasteboard = pasteboard.getSystemPasteboard();
|
|
609
|
-
const pasteData = pasteboard.
|
|
610
|
-
|
|
662
|
+
const pasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, data);
|
|
663
|
+
try {
|
|
664
|
+
systemPasteboard.setDataSync(pasteData);
|
|
665
|
+
promptAction.showToast({
|
|
666
|
+
message: '内容已复制',
|
|
667
|
+
duration: 1500,
|
|
668
|
+
bottom: '50%',
|
|
669
|
+
showMode: 1 // 设置弹窗显示模式,显示在应用之上。
|
|
670
|
+
});
|
|
671
|
+
return handle.success({
|
|
672
|
+
data,
|
|
673
|
+
}, { resolve, reject });
|
|
674
|
+
}
|
|
675
|
+
catch (error) {
|
|
611
676
|
if (error) {
|
|
612
677
|
console.error('Failed to set PasteData. Cause: ' + JSON.stringify(error));
|
|
613
678
|
res = {
|
|
@@ -616,12 +681,7 @@ const setClipboardData = function (options) {
|
|
|
616
681
|
};
|
|
617
682
|
callAsyncFail(reject, res, options);
|
|
618
683
|
}
|
|
619
|
-
|
|
620
|
-
return handle.success({
|
|
621
|
-
data,
|
|
622
|
-
}, { resolve, reject });
|
|
623
|
-
}
|
|
624
|
-
});
|
|
684
|
+
}
|
|
625
685
|
});
|
|
626
686
|
};
|
|
627
687
|
/**
|
|
@@ -632,7 +692,7 @@ const getClipboardData = function (options) {
|
|
|
632
692
|
const handle = new MethodHandler({ name: 'getClipboardData', success, fail, complete });
|
|
633
693
|
return new Promise((resolve, reject) => {
|
|
634
694
|
const systemPasteboard = pasteboard.getSystemPasteboard();
|
|
635
|
-
systemPasteboard.
|
|
695
|
+
systemPasteboard.getData((error, pasteData) => {
|
|
636
696
|
if (error) {
|
|
637
697
|
console.error('Failed to obtain PasteData. Cause: ' + JSON.stringify(error));
|
|
638
698
|
return handle.fail({
|
|
@@ -771,7 +831,7 @@ const getNetworkType = (options = {}) => {
|
|
|
771
831
|
});
|
|
772
832
|
};
|
|
773
833
|
const networkStatusManager = new CallbackManager();
|
|
774
|
-
const networkStatusListener = (
|
|
834
|
+
const networkStatusListener = (data_1, ...args_1) => __awaiter(void 0, [data_1, ...args_1], void 0, function* (data, code = 0) {
|
|
775
835
|
if (code > 0) {
|
|
776
836
|
return networkStatusManager.trigger({ isConnected: false, networkType: 'none' });
|
|
777
837
|
}
|
|
@@ -1984,7 +2044,6 @@ function getEnv() {
|
|
|
1984
2044
|
}
|
|
1985
2045
|
// TODO
|
|
1986
2046
|
const getCurrentPages = () => [];
|
|
1987
|
-
const getCurrentInstance = () => Current;
|
|
1988
2047
|
const requirePlugin$1 = temporarilyNotSupport('requirePlugin');
|
|
1989
2048
|
|
|
1990
2049
|
// @ts-nocheck
|
|
@@ -2014,7 +2073,7 @@ function formatLocation(location) {
|
|
|
2014
2073
|
altitude: location.altitude,
|
|
2015
2074
|
accuracy: location.accuracy,
|
|
2016
2075
|
speed: location.speed,
|
|
2017
|
-
verticalAccuracy: 0,
|
|
2076
|
+
verticalAccuracy: 0, // OHOS 不支持返回此参数,直接设置为默认值
|
|
2018
2077
|
horizontalAccuracy: 0 // OHOS 不支持返回此参数,直接设置为默认值
|
|
2019
2078
|
};
|
|
2020
2079
|
return wxLocate;
|
|
@@ -2293,7 +2352,7 @@ const chooseImage = function (options) {
|
|
|
2293
2352
|
photoSelectOptions.maxSelectNumber = count; // 选择媒体文件的最大数目
|
|
2294
2353
|
photoSelectOptions.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE; // 过滤选择媒体文件类型为IMAGE
|
|
2295
2354
|
photoViewPicker.select(photoSelectOptions).then((photoSelectResult) => {
|
|
2296
|
-
callAsyncSuccess(resolve, { tempFilePaths: photoSelectResult.photoUris });
|
|
2355
|
+
callAsyncSuccess(resolve, { tempFilePaths: photoSelectResult.photoUris }, options);
|
|
2297
2356
|
}).catch((error) => {
|
|
2298
2357
|
callAsyncFail(reject, error, options);
|
|
2299
2358
|
});
|
|
@@ -3195,144 +3254,153 @@ const createCacheManager = /* @__PURE__ */ temporarilyNotSupport('createCacheMan
|
|
|
3195
3254
|
* https://developer.harmonyos.com/cn/docs/documentation/doc-references-V3/js-apis-data-preferences-0000001427745052-V3
|
|
3196
3255
|
*/
|
|
3197
3256
|
let context;
|
|
3198
|
-
let
|
|
3257
|
+
let kvManager;
|
|
3258
|
+
let kvStore;
|
|
3259
|
+
let kvStorePromise;
|
|
3199
3260
|
Current.contextPromise.then((ctx) => {
|
|
3200
3261
|
context = ctx;
|
|
3201
|
-
|
|
3202
|
-
|
|
3203
|
-
|
|
3262
|
+
const kvManagerConfig = {
|
|
3263
|
+
context: context,
|
|
3264
|
+
bundleName: 'com.example.taro'
|
|
3265
|
+
};
|
|
3204
3266
|
try {
|
|
3205
|
-
|
|
3206
|
-
|
|
3207
|
-
|
|
3208
|
-
|
|
3267
|
+
// 创建KVManager实例
|
|
3268
|
+
kvManager = distributedKVStore.createKVManager(kvManagerConfig);
|
|
3269
|
+
// 继续创建获取数据库
|
|
3270
|
+
const options = {
|
|
3271
|
+
createIfMissing: true,
|
|
3272
|
+
encrypt: false,
|
|
3273
|
+
backup: false,
|
|
3274
|
+
autoSync: false,
|
|
3275
|
+
// kvStoreType不填时,默认创建多设备协同数据库
|
|
3276
|
+
kvStoreType: distributedKVStore.KVStoreType.SINGLE_VERSION,
|
|
3277
|
+
// 多设备协同数据库:kvStoreType: distributedKVStore.KVStoreType.DEVICE_COLLABORATION,
|
|
3278
|
+
securityLevel: distributedKVStore.SecurityLevel.S1
|
|
3279
|
+
};
|
|
3280
|
+
const data = bundleManager.getBundleInfoForSelfSync(bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION);
|
|
3281
|
+
kvStorePromise = new Promise(resolve => {
|
|
3282
|
+
kvManager.getKVStore(`${data.appInfo.uid}Store`, options, (err, store) => {
|
|
3283
|
+
if (err) {
|
|
3284
|
+
console.error(`Failed to get KVStore: Code:${err.code},message:${err.message}`);
|
|
3285
|
+
return;
|
|
3286
|
+
}
|
|
3287
|
+
kvStore = store;
|
|
3288
|
+
// 请确保获取到键值数据库实例后,再进行相关数据操作
|
|
3289
|
+
resolve();
|
|
3290
|
+
});
|
|
3291
|
+
});
|
|
3209
3292
|
}
|
|
3210
|
-
catch (
|
|
3211
|
-
|
|
3293
|
+
catch (e) {
|
|
3294
|
+
console.error(`Failed to create KVManager. Code:${e.code},message:${e.message}`);
|
|
3212
3295
|
}
|
|
3213
|
-
return
|
|
3214
|
-
}
|
|
3296
|
+
return context;
|
|
3297
|
+
});
|
|
3215
3298
|
const storageSchema = {
|
|
3216
3299
|
key: 'String'
|
|
3217
3300
|
};
|
|
3218
|
-
function
|
|
3219
|
-
|
|
3220
|
-
|
|
3221
|
-
|
|
3222
|
-
|
|
3223
|
-
|
|
3224
|
-
|
|
3225
|
-
|
|
3226
|
-
const res = { errMsg: error.message };
|
|
3227
|
-
return handle.fail(res, { resolve, reject });
|
|
3228
|
-
}
|
|
3229
|
-
const preferences = getPreferences();
|
|
3230
|
-
if (!preferences)
|
|
3231
|
-
return handle.fail({}, { resolve, reject });
|
|
3232
|
-
const data = preferences.getSync(key, null);
|
|
3233
|
-
if (data) {
|
|
3234
|
-
return handle.success({ data }, { resolve, reject });
|
|
3301
|
+
function checkContextExist(api, isAsync = false) {
|
|
3302
|
+
if (!context) {
|
|
3303
|
+
const message = `${api} 调用失败,Taro 不支持过早地调用 ${api},请确保页面已经渲染完成再调用此 API`;
|
|
3304
|
+
if (isAsync) {
|
|
3305
|
+
return {
|
|
3306
|
+
isExist: false,
|
|
3307
|
+
error: Promise.reject(new Error(message))
|
|
3308
|
+
};
|
|
3235
3309
|
}
|
|
3236
3310
|
else {
|
|
3237
|
-
|
|
3311
|
+
console.warn(message);
|
|
3312
|
+
return {
|
|
3313
|
+
isExist: false,
|
|
3314
|
+
};
|
|
3238
3315
|
}
|
|
3239
|
-
});
|
|
3240
|
-
}
|
|
3241
|
-
function getStorageSync(key) {
|
|
3242
|
-
if (!key) {
|
|
3243
|
-
throw new Error('getStorageSync:fail parameter error: parameter should be String');
|
|
3244
|
-
}
|
|
3245
|
-
const preferences = getPreferences();
|
|
3246
|
-
if (!preferences) {
|
|
3247
|
-
throw new Error('getStorageSync:fail:preferences is null');
|
|
3248
|
-
}
|
|
3249
|
-
const data = preferences.getSync(key, null);
|
|
3250
|
-
if (data) {
|
|
3251
|
-
return data;
|
|
3252
|
-
}
|
|
3253
|
-
else {
|
|
3254
|
-
throw new Error('data not found');
|
|
3255
3316
|
}
|
|
3317
|
+
return {
|
|
3318
|
+
isExist: true,
|
|
3319
|
+
};
|
|
3256
3320
|
}
|
|
3257
|
-
function
|
|
3258
|
-
const
|
|
3259
|
-
const
|
|
3260
|
-
|
|
3261
|
-
|
|
3262
|
-
validateParams('setStorage', options, storageSchema);
|
|
3263
|
-
}
|
|
3264
|
-
catch (error) {
|
|
3265
|
-
const res = { errMsg: error.message };
|
|
3266
|
-
return handle.fail(res, { resolve, reject });
|
|
3267
|
-
}
|
|
3268
|
-
const preferences = getPreferences();
|
|
3269
|
-
if (!preferences)
|
|
3270
|
-
return handle.fail({}, { resolve, reject });
|
|
3271
|
-
preferences.putSync(key, data);
|
|
3272
|
-
preferences.flush();
|
|
3273
|
-
return handle.success({}, { resolve, reject });
|
|
3274
|
-
});
|
|
3275
|
-
}
|
|
3276
|
-
function setStorageSync(key, data) {
|
|
3277
|
-
if (!key) {
|
|
3278
|
-
throw new Error('setStorageSync:fail key error: key should be String');
|
|
3279
|
-
}
|
|
3280
|
-
const preferences = getPreferences();
|
|
3281
|
-
if (!preferences) {
|
|
3282
|
-
throw new Error('setStorageSync:fail:preferences is null');
|
|
3321
|
+
function getStorage(options) {
|
|
3322
|
+
const name = 'getStorage';
|
|
3323
|
+
const { isExist, error } = checkContextExist(name, true);
|
|
3324
|
+
if (!isExist) {
|
|
3325
|
+
return error;
|
|
3283
3326
|
}
|
|
3284
|
-
preferences.putSync(key, data);
|
|
3285
|
-
preferences.flush();
|
|
3286
|
-
}
|
|
3287
|
-
function removeStorage(options) {
|
|
3288
3327
|
const { key, success, fail, complete } = options || {};
|
|
3289
|
-
const handle = new MethodHandler({ name
|
|
3328
|
+
const handle = new MethodHandler({ name, success, fail, complete });
|
|
3290
3329
|
return new Promise((resolve, reject) => {
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
|
|
3298
|
-
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3303
|
-
|
|
3330
|
+
kvStorePromise.then(() => {
|
|
3331
|
+
try {
|
|
3332
|
+
validateParams(name, options, storageSchema);
|
|
3333
|
+
}
|
|
3334
|
+
catch (error) {
|
|
3335
|
+
const res = { errMsg: error.message };
|
|
3336
|
+
return handle.fail(res, { resolve, reject });
|
|
3337
|
+
}
|
|
3338
|
+
kvStore = kvStore;
|
|
3339
|
+
kvStore.get(key, (err, data) => {
|
|
3340
|
+
if (err) {
|
|
3341
|
+
handle.fail({ errMsg: `Failed to get data. Code:${err.code},message:${err.message}` }, { resolve, reject });
|
|
3342
|
+
return;
|
|
3343
|
+
}
|
|
3344
|
+
handle.success({ data }, { resolve, reject });
|
|
3345
|
+
});
|
|
3346
|
+
});
|
|
3304
3347
|
});
|
|
3305
3348
|
}
|
|
3306
|
-
function
|
|
3307
|
-
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
if (!preferences) {
|
|
3312
|
-
throw new Error('removeStorageSync:fail:preferences is null');
|
|
3349
|
+
function setStorage(options) {
|
|
3350
|
+
const name = 'setStorage';
|
|
3351
|
+
const { isExist, error } = checkContextExist(name, true);
|
|
3352
|
+
if (!isExist) {
|
|
3353
|
+
return error;
|
|
3313
3354
|
}
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
}
|
|
3317
|
-
function clearStorage(options) {
|
|
3318
|
-
const { success, fail, complete } = options || {};
|
|
3319
|
-
const handle = new MethodHandler({ name: 'clearStorage', success, fail, complete });
|
|
3355
|
+
const { key, data, success, fail, complete } = options || {};
|
|
3356
|
+
const handle = new MethodHandler({ name, success, fail, complete });
|
|
3320
3357
|
return new Promise((resolve, reject) => {
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3326
|
-
|
|
3358
|
+
kvStorePromise.then(() => {
|
|
3359
|
+
try {
|
|
3360
|
+
validateParams(name, options, storageSchema);
|
|
3361
|
+
}
|
|
3362
|
+
catch (error) {
|
|
3363
|
+
const res = { errMsg: error.message };
|
|
3364
|
+
return handle.fail(res, { resolve, reject });
|
|
3365
|
+
}
|
|
3366
|
+
kvStore = kvStore;
|
|
3367
|
+
kvStore.put(key, data, (err) => {
|
|
3368
|
+
if (err) {
|
|
3369
|
+
handle.fail({ errMsg: `Failed to put data. Code:${err.code},message:${err.message}` }, { resolve, reject });
|
|
3370
|
+
return;
|
|
3371
|
+
}
|
|
3372
|
+
handle.success({}, { resolve, reject });
|
|
3373
|
+
});
|
|
3374
|
+
});
|
|
3327
3375
|
});
|
|
3328
3376
|
}
|
|
3329
|
-
function
|
|
3330
|
-
const
|
|
3331
|
-
|
|
3332
|
-
|
|
3377
|
+
function removeStorage(options) {
|
|
3378
|
+
const name = 'removeStorage';
|
|
3379
|
+
const { isExist, error } = checkContextExist(name, true);
|
|
3380
|
+
if (!isExist) {
|
|
3381
|
+
return error;
|
|
3333
3382
|
}
|
|
3334
|
-
|
|
3335
|
-
|
|
3383
|
+
const { key, success, fail, complete } = options || {};
|
|
3384
|
+
const handle = new MethodHandler({ name, success, fail, complete });
|
|
3385
|
+
return new Promise((resolve, reject) => {
|
|
3386
|
+
kvStorePromise.then(() => {
|
|
3387
|
+
try {
|
|
3388
|
+
validateParams(name, options, storageSchema);
|
|
3389
|
+
}
|
|
3390
|
+
catch (error) {
|
|
3391
|
+
const res = { errMsg: error.message };
|
|
3392
|
+
return handle.fail(res, { resolve, reject });
|
|
3393
|
+
}
|
|
3394
|
+
kvStore = kvStore;
|
|
3395
|
+
kvStore.delete(key, (err) => {
|
|
3396
|
+
if (err) {
|
|
3397
|
+
handle.fail({ errMsg: `Failed to delete data. Code:${err.code},message:${err.message}` }, { resolve, reject });
|
|
3398
|
+
return;
|
|
3399
|
+
}
|
|
3400
|
+
handle.success({}, { resolve, reject });
|
|
3401
|
+
});
|
|
3402
|
+
});
|
|
3403
|
+
});
|
|
3336
3404
|
}
|
|
3337
3405
|
const getStorageInfoSync = temporarilyNotSupport('getStorageInfoSync');
|
|
3338
3406
|
const getStorageInfo = temporarilyNotSupport('getStorageInfo');
|
|
@@ -3342,6 +3410,11 @@ const batchSetStorageSync = /* @__PURE__ */ temporarilyNotSupport('batchSetStora
|
|
|
3342
3410
|
const batchSetStorage = /* @__PURE__ */ temporarilyNotSupport('batchSetStorage');
|
|
3343
3411
|
const batchGetStorageSync = /* @__PURE__ */ temporarilyNotSupport('batchGetStorageSync');
|
|
3344
3412
|
const batchGetStorage = /* @__PURE__ */ temporarilyNotSupport('batchGetStorage');
|
|
3413
|
+
const clearStorage = temporarilyNotSupport('clearStorage');
|
|
3414
|
+
const getStorageSync = temporarilyNotSupport('getStorageSync', 'getStorage');
|
|
3415
|
+
const setStorageSync = temporarilyNotSupport('setStorageSync', 'setStorage');
|
|
3416
|
+
const clearStorageSync = temporarilyNotSupport('clearStorageSync', 'clearStorage');
|
|
3417
|
+
const removeStorageSync = temporarilyNotSupport('removeStorageSync', 'removeStorage');
|
|
3345
3418
|
|
|
3346
3419
|
class Animation {
|
|
3347
3420
|
constructor({ duration = 400, delay = 0, timingFunction = 'linear', transformOrigin = '50% 50% 0', unit = 'px' } = {}) {
|
|
@@ -3374,6 +3447,9 @@ class Animation {
|
|
|
3374
3447
|
transformOrigin,
|
|
3375
3448
|
rule: Object.assign({}, this.rule)
|
|
3376
3449
|
});
|
|
3450
|
+
if (this.rule.transform) {
|
|
3451
|
+
this.rule.transform = Object.assign({}, this.rule.transform);
|
|
3452
|
+
}
|
|
3377
3453
|
return this;
|
|
3378
3454
|
}
|
|
3379
3455
|
matrix(a, b, c, d, tx, ty) {
|
|
@@ -3385,75 +3461,120 @@ class Animation {
|
|
|
3385
3461
|
return this;
|
|
3386
3462
|
}
|
|
3387
3463
|
rotate(angle) {
|
|
3388
|
-
this.rule.
|
|
3464
|
+
if (!this.rule.transform) {
|
|
3465
|
+
this.rule.transform = {};
|
|
3466
|
+
}
|
|
3467
|
+
this.rule.transform.Rotate = { x: 0, y: 0, z: 1, angle };
|
|
3389
3468
|
return this;
|
|
3390
3469
|
}
|
|
3391
3470
|
rotate3d(x, y, z, angle) {
|
|
3392
|
-
this.rule.
|
|
3471
|
+
if (!this.rule.transform) {
|
|
3472
|
+
this.rule.transform = {};
|
|
3473
|
+
}
|
|
3474
|
+
this.rule.transform.Rotate = { x, y, z, angle };
|
|
3393
3475
|
return this;
|
|
3394
3476
|
}
|
|
3395
3477
|
rotateX(angle) {
|
|
3396
|
-
this.rule.
|
|
3478
|
+
if (!this.rule.transform) {
|
|
3479
|
+
this.rule.transform = {};
|
|
3480
|
+
}
|
|
3481
|
+
this.rule.transform.Rotate = { x: 1, y: 0, z: 0, angle };
|
|
3397
3482
|
return this;
|
|
3398
3483
|
}
|
|
3399
3484
|
rotateY(angle) {
|
|
3400
|
-
this.rule.
|
|
3485
|
+
if (!this.rule.transform) {
|
|
3486
|
+
this.rule.transform = {};
|
|
3487
|
+
}
|
|
3488
|
+
this.rule.transform.Rotate = { x: 0, y: 1, z: 0, angle };
|
|
3401
3489
|
return this;
|
|
3402
3490
|
}
|
|
3403
3491
|
rotateZ(angle) {
|
|
3404
|
-
this.rule.
|
|
3492
|
+
if (!this.rule.transform) {
|
|
3493
|
+
this.rule.transform = {};
|
|
3494
|
+
}
|
|
3495
|
+
this.rule.transform.Rotate = { x: 0, y: 0, z: 1, angle };
|
|
3405
3496
|
return this;
|
|
3406
3497
|
}
|
|
3407
3498
|
scale(sx, sy) {
|
|
3408
|
-
this.rule.
|
|
3499
|
+
if (!this.rule.transform) {
|
|
3500
|
+
this.rule.transform = {};
|
|
3501
|
+
}
|
|
3502
|
+
this.rule.transform.Scale = { x: sx, y: isUndefined(sy) ? sx : sy };
|
|
3409
3503
|
return this;
|
|
3410
3504
|
}
|
|
3411
3505
|
scale3d(sx, sy, sz) {
|
|
3412
|
-
this.rule.
|
|
3506
|
+
if (!this.rule.transform) {
|
|
3507
|
+
this.rule.transform = {};
|
|
3508
|
+
}
|
|
3509
|
+
this.rule.transform.Scale = { x: sx, y: sy, z: sz };
|
|
3413
3510
|
return this;
|
|
3414
3511
|
}
|
|
3415
3512
|
scaleX(scale) {
|
|
3416
|
-
this.rule.
|
|
3513
|
+
if (!this.rule.transform) {
|
|
3514
|
+
this.rule.transform = {};
|
|
3515
|
+
}
|
|
3516
|
+
this.rule.transform.Scale = { x: scale };
|
|
3417
3517
|
return this;
|
|
3418
3518
|
}
|
|
3419
3519
|
scaleY(scale) {
|
|
3420
|
-
this.rule.
|
|
3520
|
+
if (!this.rule.transform) {
|
|
3521
|
+
this.rule.transform = {};
|
|
3522
|
+
}
|
|
3523
|
+
this.rule.transform.Scale = { y: scale };
|
|
3421
3524
|
return this;
|
|
3422
3525
|
}
|
|
3423
3526
|
scaleZ(scale) {
|
|
3424
|
-
this.rule.
|
|
3527
|
+
if (!this.rule.transform) {
|
|
3528
|
+
this.rule.transform = {};
|
|
3529
|
+
}
|
|
3530
|
+
this.rule.transform.Scale = { z: scale };
|
|
3425
3531
|
return this;
|
|
3426
3532
|
}
|
|
3427
3533
|
skew(ax, ay) {
|
|
3428
|
-
|
|
3534
|
+
temporarilyNotSupport('animation.skew:' + `${ax}, ${ay}`)(ax, ay);
|
|
3429
3535
|
return this;
|
|
3430
3536
|
}
|
|
3431
3537
|
skewX(angle) {
|
|
3432
|
-
|
|
3538
|
+
temporarilyNotSupport('animation.skewX:' + angle)(angle);
|
|
3433
3539
|
return this;
|
|
3434
3540
|
}
|
|
3435
3541
|
skewY(angle) {
|
|
3436
|
-
|
|
3542
|
+
temporarilyNotSupport('animation.skewY:' + angle)(angle);
|
|
3437
3543
|
return this;
|
|
3438
3544
|
}
|
|
3439
3545
|
translate(tx, ty) {
|
|
3440
|
-
this.rule.
|
|
3546
|
+
if (!this.rule.transform) {
|
|
3547
|
+
this.rule.transform = {};
|
|
3548
|
+
}
|
|
3549
|
+
this.rule.transform.Translate = { x: tx, y: ty };
|
|
3441
3550
|
return this;
|
|
3442
3551
|
}
|
|
3443
3552
|
translate3d(tx, ty, tz) {
|
|
3444
|
-
this.rule.
|
|
3553
|
+
if (!this.rule.transform) {
|
|
3554
|
+
this.rule.transform = {};
|
|
3555
|
+
}
|
|
3556
|
+
this.rule.transform.Translate = { x: tx, y: ty, z: tz };
|
|
3445
3557
|
return this;
|
|
3446
3558
|
}
|
|
3447
3559
|
translateX(translation) {
|
|
3448
|
-
this.rule.
|
|
3560
|
+
if (!this.rule.transform) {
|
|
3561
|
+
this.rule.transform = {};
|
|
3562
|
+
}
|
|
3563
|
+
this.rule.transform.Translate = { x: translation };
|
|
3449
3564
|
return this;
|
|
3450
3565
|
}
|
|
3451
3566
|
translateY(translation) {
|
|
3452
|
-
this.rule.
|
|
3567
|
+
if (!this.rule.transform) {
|
|
3568
|
+
this.rule.transform = {};
|
|
3569
|
+
}
|
|
3570
|
+
this.rule.transform.Translate = { y: translation };
|
|
3453
3571
|
return this;
|
|
3454
3572
|
}
|
|
3455
3573
|
translateZ(translation) {
|
|
3456
|
-
this.rule.
|
|
3574
|
+
if (!this.rule.transform) {
|
|
3575
|
+
this.rule.transform = {};
|
|
3576
|
+
}
|
|
3577
|
+
this.rule.transform.Translate = { z: translation };
|
|
3457
3578
|
return this;
|
|
3458
3579
|
}
|
|
3459
3580
|
opacity(value) {
|
|
@@ -3465,15 +3586,15 @@ class Animation {
|
|
|
3465
3586
|
return this;
|
|
3466
3587
|
}
|
|
3467
3588
|
width(value) {
|
|
3468
|
-
this.rule.
|
|
3589
|
+
this.rule.width = value;
|
|
3469
3590
|
return this;
|
|
3470
3591
|
}
|
|
3471
3592
|
height(value) {
|
|
3472
|
-
this.rule.
|
|
3593
|
+
this.rule.height = value;
|
|
3473
3594
|
return this;
|
|
3474
3595
|
}
|
|
3475
3596
|
left(value) {
|
|
3476
|
-
|
|
3597
|
+
this.rule.left = value;
|
|
3477
3598
|
return this;
|
|
3478
3599
|
}
|
|
3479
3600
|
right(value) {
|
|
@@ -3481,7 +3602,7 @@ class Animation {
|
|
|
3481
3602
|
return this;
|
|
3482
3603
|
}
|
|
3483
3604
|
top(value) {
|
|
3484
|
-
|
|
3605
|
+
this.rule.top = value;
|
|
3485
3606
|
return this;
|
|
3486
3607
|
}
|
|
3487
3608
|
bottom(value) {
|
|
@@ -3500,7 +3621,8 @@ function setBackgroundColor(options) {
|
|
|
3500
3621
|
const handle = new MethodHandler({ name: 'setBackgroundColor', success, fail, complete });
|
|
3501
3622
|
return new Promise((resolve, reject) => {
|
|
3502
3623
|
eventCenter.trigger('__taroPageStyle', {
|
|
3503
|
-
backgroundColor: options.
|
|
3624
|
+
backgroundColor: options.backgroundColorBottom || options.backgroundColor,
|
|
3625
|
+
backgroundColorContext: options.backgroundColorTop || options.backgroundColor
|
|
3504
3626
|
});
|
|
3505
3627
|
return handle.success({}, { resolve, reject });
|
|
3506
3628
|
});
|
|
@@ -3539,10 +3661,11 @@ function showToast(options) {
|
|
|
3539
3661
|
const res = { errMsg: error.message };
|
|
3540
3662
|
return callAsyncFail(reject, res, options);
|
|
3541
3663
|
}
|
|
3542
|
-
|
|
3664
|
+
promptAction.showToast({
|
|
3543
3665
|
message: options.title,
|
|
3544
3666
|
duration: options.duration,
|
|
3545
|
-
bottom: options.bottom
|
|
3667
|
+
bottom: options.bottom,
|
|
3668
|
+
showMode: 1 // 设置弹窗显示模式,显示在应用之上。
|
|
3546
3669
|
});
|
|
3547
3670
|
callAsyncSuccess(resolve, resCallback('showToast'), options);
|
|
3548
3671
|
});
|
|
@@ -3572,25 +3695,24 @@ function showModal(options) {
|
|
|
3572
3695
|
color: confirmColor
|
|
3573
3696
|
});
|
|
3574
3697
|
}
|
|
3575
|
-
return new Promise(resolve => {
|
|
3698
|
+
return new Promise((resolve, reject) => {
|
|
3576
3699
|
const modalOptions = {
|
|
3577
3700
|
title,
|
|
3578
3701
|
message: content,
|
|
3579
3702
|
buttons: buttons,
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3583
|
-
}
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
},
|
|
3588
|
-
// 鸿蒙没有失败方法,只有取消
|
|
3589
|
-
cancel: (_) => {
|
|
3703
|
+
};
|
|
3704
|
+
promptAction.showDialog(modalOptions, (error, data) => {
|
|
3705
|
+
if (error) {
|
|
3706
|
+
const res = { errMsg: error };
|
|
3707
|
+
callAsyncFail(reject, res, options);
|
|
3708
|
+
}
|
|
3709
|
+
if (data.index === 0 && showCancel) {
|
|
3590
3710
|
callAsyncSuccess(resolve, Object.assign(Object.assign({}, resCallback('showModal')), { confirm: false, cancel: true }), options);
|
|
3591
3711
|
}
|
|
3592
|
-
|
|
3593
|
-
|
|
3712
|
+
else {
|
|
3713
|
+
callAsyncSuccess(resolve, Object.assign(Object.assign({}, resCallback('showModal')), { confirm: true, cancel: false, content: null }), options);
|
|
3714
|
+
}
|
|
3715
|
+
});
|
|
3594
3716
|
});
|
|
3595
3717
|
}
|
|
3596
3718
|
const showActionSheetSchema = {
|
|
@@ -3621,28 +3743,18 @@ function showActionSheet(options) {
|
|
|
3621
3743
|
});
|
|
3622
3744
|
const actionSheetOptions = {
|
|
3623
3745
|
title,
|
|
3624
|
-
buttons
|
|
3625
|
-
success: (data) => {
|
|
3626
|
-
callAsyncSuccess(resolve, Object.assign(Object.assign({}, data), resCallback('showActionSheet')), options);
|
|
3627
|
-
},
|
|
3628
|
-
// 取消方法,并非失败
|
|
3629
|
-
fail: (data) => {
|
|
3630
|
-
callAsyncFail(reject, Object.assign(Object.assign({}, data), { errMsg: data.errMsg.replace('showActionMenu', 'showActionSheet') }), options);
|
|
3631
|
-
}
|
|
3746
|
+
buttons
|
|
3632
3747
|
};
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
message: '关闭中',
|
|
3640
|
-
duration: 10,
|
|
3641
|
-
bottom: '9999px'
|
|
3748
|
+
promptAction.showActionMenu(actionSheetOptions, (error, data) => {
|
|
3749
|
+
var _a;
|
|
3750
|
+
if (error) {
|
|
3751
|
+
callAsyncFail(reject, Object.assign(Object.assign({}, data), { errMsg: (_a = data.errMsg) === null || _a === void 0 ? void 0 : _a.replace('showActionMenu', 'showActionSheet') }), options);
|
|
3752
|
+
}
|
|
3753
|
+
callAsyncSuccess(resolve, Object.assign(Object.assign({}, data), resCallback('showActionSheet')), options);
|
|
3642
3754
|
});
|
|
3643
|
-
callAsyncSuccess(resolve, resCallback('hideToast'), options);
|
|
3644
3755
|
});
|
|
3645
3756
|
}
|
|
3757
|
+
const hideToast = /* @__PURE__ */ temporarilyNotSupport('hideToast');
|
|
3646
3758
|
const showLoading = temporarilyNotSupport('showLoading');
|
|
3647
3759
|
const hideLoading = temporarilyNotSupport('hideLoading');
|
|
3648
3760
|
const enableAlertBeforeUnload = /* @__PURE__ */ temporarilyNotSupport('enableAlertBeforeUnload');
|
|
@@ -3663,7 +3775,7 @@ const setNavigationBarTitle = function (options) {
|
|
|
3663
3775
|
};
|
|
3664
3776
|
const setNavigationBarColor = function (options) {
|
|
3665
3777
|
const { success, fail, complete } = options || {};
|
|
3666
|
-
const handle = new MethodHandler({ name: '
|
|
3778
|
+
const handle = new MethodHandler({ name: 'setNavigationBarColor', success, fail, complete });
|
|
3667
3779
|
return new Promise((resolve, reject) => {
|
|
3668
3780
|
eventCenter.trigger('__taroNavigationStyle', {
|
|
3669
3781
|
animation: options.animation,
|
|
@@ -3705,10 +3817,13 @@ const hideHomeButton = function (options) {
|
|
|
3705
3817
|
};
|
|
3706
3818
|
|
|
3707
3819
|
const startPullDownRefresh = function (options) {
|
|
3708
|
-
return new Promise(resolve => {
|
|
3820
|
+
return new Promise((resolve, reject) => {
|
|
3709
3821
|
var _a;
|
|
3710
3822
|
const taro = Current.taro;
|
|
3711
3823
|
const page = taro.getCurrentInstance().page;
|
|
3824
|
+
if (!page) {
|
|
3825
|
+
return callAsyncFail(reject, { errMsg: 'stopPullDownRefresh:fail' }, options);
|
|
3826
|
+
}
|
|
3712
3827
|
if (page.isRefreshing instanceof Array) {
|
|
3713
3828
|
const index = page.tabBarCurrentIndex || 0;
|
|
3714
3829
|
page.isRefreshing[index] = true;
|
|
@@ -3722,10 +3837,13 @@ const startPullDownRefresh = function (options) {
|
|
|
3722
3837
|
});
|
|
3723
3838
|
};
|
|
3724
3839
|
const stopPullDownRefresh = function (options) {
|
|
3725
|
-
return new Promise(resolve => {
|
|
3840
|
+
return new Promise((resolve, reject) => {
|
|
3726
3841
|
var _a;
|
|
3727
3842
|
const taro = Current.taro;
|
|
3728
3843
|
const page = taro.getCurrentInstance().page;
|
|
3844
|
+
if (!page) {
|
|
3845
|
+
return callAsyncFail(reject, { errMsg: 'stopPullDownRefresh:fail' }, options);
|
|
3846
|
+
}
|
|
3729
3847
|
if (page.isRefreshing instanceof Array) {
|
|
3730
3848
|
const index = page.tabBarCurrentIndex || 0;
|
|
3731
3849
|
page.isRefreshing[index] = false;
|
|
@@ -3758,8 +3876,8 @@ const pageScrollTo = (options) => {
|
|
|
3758
3876
|
const taro = Current.taro;
|
|
3759
3877
|
const page = taro.getCurrentInstance().page;
|
|
3760
3878
|
let scrollValue = -1;
|
|
3761
|
-
let scroller = page.scroller;
|
|
3762
|
-
const currentPageNode = getPageScrollerOrNode(page.node, page);
|
|
3879
|
+
let scroller = getPageScrollerOrNode(page === null || page === void 0 ? void 0 : page.scroller, page);
|
|
3880
|
+
const currentPageNode = getPageScrollerOrNode(page === null || page === void 0 ? void 0 : page.node, page);
|
|
3763
3881
|
if (scrollTop || typeof scrollTop === 'number') {
|
|
3764
3882
|
scrollValue = scrollTop;
|
|
3765
3883
|
}
|
|
@@ -3781,15 +3899,15 @@ const pageScrollTo = (options) => {
|
|
|
3781
3899
|
scroller = getPageScrollerOrNode(scroller, page);
|
|
3782
3900
|
const { yOffset } = scroller.currentOffset();
|
|
3783
3901
|
if (areaInfo) {
|
|
3784
|
-
scrollValue = areaInfo.globalPosition.y + yOffset + pxTransformHelper(offsetTop, 'px', true);
|
|
3902
|
+
scrollValue = areaInfo.globalPosition.y + yOffset + pxTransformHelper$1(offsetTop, 'px', true);
|
|
3785
3903
|
}
|
|
3786
3904
|
}
|
|
3787
|
-
|
|
3788
|
-
if (scrollValue === -1) {
|
|
3905
|
+
if (!scroller || scrollValue === -1) {
|
|
3789
3906
|
return handle.fail({
|
|
3790
3907
|
errMsg: '请检查传入的 scrollTop 或 selector 是否合法'
|
|
3791
3908
|
}, { resolve, reject });
|
|
3792
3909
|
}
|
|
3910
|
+
const { xOffset } = scroller.currentOffset();
|
|
3793
3911
|
try {
|
|
3794
3912
|
scroller.scrollTo({
|
|
3795
3913
|
xOffset,
|
|
@@ -3821,7 +3939,7 @@ const toggleTabBar = function (type) {
|
|
|
3821
3939
|
var _a, _b;
|
|
3822
3940
|
const taro = Current.taro;
|
|
3823
3941
|
const page = taro.getCurrentInstance().page;
|
|
3824
|
-
const currentData = ((_a = page._data) === null || _a === void 0 ? void 0 : _a.taroTabBar) || page.tabBar;
|
|
3942
|
+
const currentData = ((_a = page === null || page === void 0 ? void 0 : page._data) === null || _a === void 0 ? void 0 : _a.taroTabBar) || (page === null || page === void 0 ? void 0 : page.tabBar);
|
|
3825
3943
|
const res = { errMsg: `${type}TabBar:ok` };
|
|
3826
3944
|
const error = { errMsg: `${type}TabBar:fail not TabBar page` };
|
|
3827
3945
|
if (!currentData) {
|
|
@@ -3846,7 +3964,7 @@ const setTabBarStyle = function (options = {}) {
|
|
|
3846
3964
|
var _a, _b;
|
|
3847
3965
|
const taro = Current.taro;
|
|
3848
3966
|
const page = taro.getCurrentInstance().page;
|
|
3849
|
-
const currentData = ((_a = page._data) === null || _a === void 0 ? void 0 : _a.taroTabBar) || page.tabBar;
|
|
3967
|
+
const currentData = ((_a = page === null || page === void 0 ? void 0 : page._data) === null || _a === void 0 ? void 0 : _a.taroTabBar) || (page === null || page === void 0 ? void 0 : page.tabBar);
|
|
3850
3968
|
const res = { errMsg: 'setTabBarStyle:ok' };
|
|
3851
3969
|
const error = { errMsg: 'setTabBarStyle:fail not TabBar page' };
|
|
3852
3970
|
if (!currentData) {
|
|
@@ -3873,7 +3991,7 @@ const setTabBarItem = function (options) {
|
|
|
3873
3991
|
var _a, _b;
|
|
3874
3992
|
const taro = Current.taro;
|
|
3875
3993
|
const page = taro.getCurrentInstance().page;
|
|
3876
|
-
const currentData = ((_a = page._data) === null || _a === void 0 ? void 0 : _a.taroTabBar) || page.tabBar;
|
|
3994
|
+
const currentData = ((_a = page === null || page === void 0 ? void 0 : page._data) === null || _a === void 0 ? void 0 : _a.taroTabBar) || (page === null || page === void 0 ? void 0 : page.tabBar);
|
|
3877
3995
|
const res = { errMsg: 'setTabBarItem:ok' };
|
|
3878
3996
|
const error = { errMsg: 'setTabBarItem:fail not TabBar page' };
|
|
3879
3997
|
if (!currentData) {
|
|
@@ -3966,19 +4084,16 @@ class IntersectionObserver {
|
|
|
3966
4084
|
};
|
|
3967
4085
|
const taro = Current.taro;
|
|
3968
4086
|
const page = taro.getCurrentInstance().page;
|
|
3969
|
-
|
|
3970
|
-
this._component = component || currentPage;
|
|
4087
|
+
this._component = component || getPageScrollerOrNode(page === null || page === void 0 ? void 0 : page.node, page);
|
|
3971
4088
|
Object.assign(this._options, options);
|
|
3972
4089
|
}
|
|
3973
4090
|
disconnect() {
|
|
3974
|
-
|
|
3975
|
-
if (this._observerNodes) {
|
|
4091
|
+
if (this._observerNodes && this._component) {
|
|
3976
4092
|
if (this._observerNodes instanceof Array) {
|
|
3977
4093
|
this._observerNodes.forEach((n) => {
|
|
3978
|
-
var _a;
|
|
3979
4094
|
disconnectEvent(n, VISIBLE_CHANGE_EVENT_NAME);
|
|
3980
4095
|
// @ts-ignore
|
|
3981
|
-
|
|
4096
|
+
n._nodeInfo.thresholds = null;
|
|
3982
4097
|
});
|
|
3983
4098
|
}
|
|
3984
4099
|
else {
|
|
@@ -3986,35 +4101,40 @@ class IntersectionObserver {
|
|
|
3986
4101
|
// @ts-ignore
|
|
3987
4102
|
if (this._observerNodes._nodeInfo) {
|
|
3988
4103
|
// @ts-ignore
|
|
3989
|
-
|
|
4104
|
+
this._observerNodes._nodeInfo.thresholds = null;
|
|
3990
4105
|
}
|
|
3991
4106
|
}
|
|
3992
4107
|
}
|
|
3993
4108
|
}
|
|
3994
4109
|
observe(targetSelector, callback) {
|
|
3995
|
-
|
|
4110
|
+
if (!this._component)
|
|
4111
|
+
return;
|
|
3996
4112
|
const { observeAll, thresholds } = this._options;
|
|
3997
4113
|
const node = findChildNodeWithDFS(this._component, targetSelector, observeAll);
|
|
3998
4114
|
this._observerNodes = node;
|
|
3999
4115
|
if (node) {
|
|
4000
4116
|
if (node instanceof Array) {
|
|
4001
4117
|
node.forEach(n => {
|
|
4002
|
-
var _a;
|
|
4003
4118
|
// @ts-ignore
|
|
4004
|
-
|
|
4119
|
+
n._nodeInfo.thresholds = thresholds;
|
|
4005
4120
|
setNodeEventCallbackAndTriggerComponentUpdate(n, VISIBLE_CHANGE_EVENT_NAME, (isVisible, currentRatio) => {
|
|
4006
|
-
callback(this.handleResult(isVisible, currentRatio));
|
|
4121
|
+
callback(this.handleResult(isVisible, currentRatio, n));
|
|
4007
4122
|
});
|
|
4008
4123
|
});
|
|
4009
4124
|
}
|
|
4010
4125
|
else {
|
|
4011
4126
|
// @ts-ignore
|
|
4012
|
-
|
|
4127
|
+
node._nodeInfo.thresholds = thresholds;
|
|
4013
4128
|
setNodeEventCallbackAndTriggerComponentUpdate(node, VISIBLE_CHANGE_EVENT_NAME, (isVisible, currentRatio) => {
|
|
4014
|
-
callback(this.handleResult(isVisible, currentRatio));
|
|
4129
|
+
callback(this.handleResult(isVisible, currentRatio, node));
|
|
4015
4130
|
});
|
|
4016
4131
|
}
|
|
4017
4132
|
}
|
|
4133
|
+
else {
|
|
4134
|
+
callback({
|
|
4135
|
+
errMsg: 'IntersectionObserver.observe:fail cannot find the node for selector.'
|
|
4136
|
+
});
|
|
4137
|
+
}
|
|
4018
4138
|
}
|
|
4019
4139
|
relativeTo() {
|
|
4020
4140
|
temporarilyNotSupport('relativeTo')();
|
|
@@ -4025,8 +4145,10 @@ class IntersectionObserver {
|
|
|
4025
4145
|
return this;
|
|
4026
4146
|
}
|
|
4027
4147
|
// @ts-ignore
|
|
4028
|
-
handleResult(isVisible, currentRatio) {
|
|
4148
|
+
handleResult(isVisible, currentRatio, node) {
|
|
4029
4149
|
const result = {
|
|
4150
|
+
id: node.id,
|
|
4151
|
+
dataset: node.dataset,
|
|
4030
4152
|
intersectionRatio: currentRatio,
|
|
4031
4153
|
// TODO 未做,等待能拿到element的info信息
|
|
4032
4154
|
boundingClientRect: {
|
|
@@ -4234,32 +4356,45 @@ function filter(fields, dom) {
|
|
|
4234
4356
|
}
|
|
4235
4357
|
function querySelector(selector, selectAll) {
|
|
4236
4358
|
if (typeof selector === 'string') {
|
|
4237
|
-
return
|
|
4359
|
+
return selector.split(',').reduce((prev, current) => {
|
|
4360
|
+
const item = current.trim();
|
|
4361
|
+
return prev.concat(parseHandler(item, selectAll));
|
|
4362
|
+
}, []);
|
|
4238
4363
|
}
|
|
4239
|
-
return
|
|
4364
|
+
return [];
|
|
4240
4365
|
}
|
|
4241
4366
|
function queryBat(queue, cb) {
|
|
4242
4367
|
const result = [];
|
|
4243
4368
|
const taro = Current.taro;
|
|
4244
4369
|
const page = taro.getCurrentInstance().page;
|
|
4245
|
-
const element = getPageScrollerOrNode(page.node, page);
|
|
4246
|
-
if (element
|
|
4370
|
+
const element = getPageScrollerOrNode(page === null || page === void 0 ? void 0 : page.node, page);
|
|
4371
|
+
if (!element)
|
|
4247
4372
|
return null;
|
|
4248
4373
|
arr = [];
|
|
4249
4374
|
traversalDFSDom(element);
|
|
4250
|
-
queue.forEach(item => {
|
|
4375
|
+
queue.forEach((item) => {
|
|
4251
4376
|
const { selector, single, fields } = item;
|
|
4252
|
-
|
|
4253
|
-
|
|
4377
|
+
if (single) {
|
|
4378
|
+
const dom = querySelector(selector, !single)[0];
|
|
4254
4379
|
// eslint-disable-next-line no-async-promise-executor
|
|
4255
|
-
|
|
4380
|
+
result.push(new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
|
|
4256
4381
|
yield setNodeEventCallbackAndTriggerComponentUpdate(dom, AREA_CHANGE_EVENT_NAME, null, true);
|
|
4257
4382
|
resolve(filter(fields, dom));
|
|
4383
|
+
})));
|
|
4384
|
+
}
|
|
4385
|
+
else {
|
|
4386
|
+
const nodeList = querySelector(selector, !single);
|
|
4387
|
+
result.push(nodeList.map(dom => {
|
|
4388
|
+
// eslint-disable-next-line no-async-promise-executor
|
|
4389
|
+
return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
|
|
4390
|
+
yield setNodeEventCallbackAndTriggerComponentUpdate(dom, AREA_CHANGE_EVENT_NAME, null, true);
|
|
4391
|
+
resolve(filter(fields, dom));
|
|
4392
|
+
}));
|
|
4258
4393
|
}));
|
|
4259
|
-
}
|
|
4394
|
+
}
|
|
4260
4395
|
});
|
|
4261
4396
|
Promise.all(result.map(item => {
|
|
4262
|
-
return Promise.all(item);
|
|
4397
|
+
return item instanceof Array ? Promise.all(item) : item;
|
|
4263
4398
|
})).then(data => {
|
|
4264
4399
|
cb(data);
|
|
4265
4400
|
});
|
|
@@ -4752,7 +4887,7 @@ const defaultBaseFontSize = 20;
|
|
|
4752
4887
|
const defaultUnitPrecision = 5;
|
|
4753
4888
|
const defaultTargetUnit = 'vp';
|
|
4754
4889
|
function getApp$1() {
|
|
4755
|
-
return Current.app;
|
|
4890
|
+
return Current.app || {};
|
|
4756
4891
|
}
|
|
4757
4892
|
function initPxTransform({ designWidth = defaultDesignWidth, deviceRatio = defaultDesignRatio, baseFontSize = defaultBaseFontSize, unitPrecision = defaultUnitPrecision, targetUnit = defaultTargetUnit }) {
|
|
4758
4893
|
const taro = Current.taro;
|
|
@@ -4766,19 +4901,56 @@ function initPxTransform({ designWidth = defaultDesignWidth, deviceRatio = defau
|
|
|
4766
4901
|
config.unitPrecision = unitPrecision;
|
|
4767
4902
|
}
|
|
4768
4903
|
}
|
|
4769
|
-
_display.getDefaultDisplaySync();
|
|
4904
|
+
const display = _display.getDefaultDisplaySync();
|
|
4905
|
+
let displayWidth = display.width;
|
|
4906
|
+
let ratioCache = false;
|
|
4907
|
+
let designWidthFunc;
|
|
4908
|
+
let designWidth = defaultDesignWidth;
|
|
4909
|
+
function getRatio(value) {
|
|
4910
|
+
var _a;
|
|
4911
|
+
// Note: 提前调用 display 可能无法获取正确值
|
|
4912
|
+
if (ratioCache === false || displayWidth !== display.width) {
|
|
4913
|
+
const config = ((_a = Current.taro) === null || _a === void 0 ? void 0 : _a.config) || {};
|
|
4914
|
+
if (!isFunction(designWidthFunc)) {
|
|
4915
|
+
designWidthFunc = isFunction(config.designWidth)
|
|
4916
|
+
? config.designWidth
|
|
4917
|
+
: () => config.designWidth;
|
|
4918
|
+
designWidth = designWidthFunc(value) || defaultDesignWidth;
|
|
4919
|
+
}
|
|
4920
|
+
displayWidth = display.width;
|
|
4921
|
+
ratioCache = Math.min(display.width, display.height) / designWidth;
|
|
4922
|
+
}
|
|
4923
|
+
return ratioCache;
|
|
4924
|
+
}
|
|
4925
|
+
// Note: 设置为 style 单位时会自动完成设计稿转换,设计开发者调用 API 时也许抹平差异,例如 pageScrollTo[option.offsetTop]
|
|
4926
|
+
function pxTransformHelper(size, unit, isNumber = false) {
|
|
4927
|
+
var _a;
|
|
4928
|
+
const config = ((_a = Current.taro) === null || _a === void 0 ? void 0 : _a.config) || {};
|
|
4929
|
+
const targetUnit = unit || config.targetUnit || defaultTargetUnit;
|
|
4930
|
+
if (targetUnit === 'PX') {
|
|
4931
|
+
return px2vp(size * display.scaledDensity) + 'vp';
|
|
4932
|
+
}
|
|
4933
|
+
const ratio = getRatio(size);
|
|
4934
|
+
let val = size * ratio;
|
|
4935
|
+
switch (targetUnit) {
|
|
4936
|
+
case 'vp':
|
|
4937
|
+
// Note: 在应用创建前调用无效
|
|
4938
|
+
val = px2vp(val);
|
|
4939
|
+
break;
|
|
4940
|
+
}
|
|
4941
|
+
return isNumber ? val : val + targetUnit;
|
|
4942
|
+
}
|
|
4770
4943
|
function pxTransform(size) {
|
|
4771
4944
|
var _a;
|
|
4772
4945
|
const config = ((_a = Current.taro) === null || _a === void 0 ? void 0 : _a.config) || {};
|
|
4773
4946
|
const targetUnit = config.targetUnit || defaultTargetUnit;
|
|
4774
|
-
|
|
4947
|
+
const val = size;
|
|
4775
4948
|
switch (targetUnit) {
|
|
4776
4949
|
case 'vp':
|
|
4777
|
-
|
|
4778
|
-
break;
|
|
4950
|
+
return pxTransformHelper(size, 'px');
|
|
4779
4951
|
// NOTE: 鸿蒙环境下 style 会自动完成设计稿转换,无需在方法内二次调整
|
|
4780
4952
|
}
|
|
4781
|
-
return val +
|
|
4953
|
+
return val + targetUnit;
|
|
4782
4954
|
}
|
|
4783
4955
|
function canIUseWebp() {
|
|
4784
4956
|
return true;
|