This commit is contained in:
zoujiandong
2025-07-17 09:05:31 +08:00
parent 6e84da988c
commit dc39275e6e
88 changed files with 316 additions and 541 deletions
+217 -130
View File
@@ -2886,21 +2886,21 @@ function injectHook(type2, hook, target = currentInstance, prepend = false) {
);
}
}
const createHook$1 = (lifecycle) => (hook, target = currentInstance) => (
const createHook = (lifecycle) => (hook, target = currentInstance) => (
// post-create lifecycle registrations are noops during SSR (except for serverPrefetch)
(!isInSSRComponentSetup || lifecycle === "sp") && injectHook(lifecycle, (...args) => hook(...args), target)
);
const onBeforeMount = createHook$1("bm");
const onMounted = createHook$1("m");
const onBeforeUpdate = createHook$1("bu");
const onUpdated = createHook$1("u");
const onBeforeUnmount = createHook$1("bum");
const onUnmounted = createHook$1("um");
const onServerPrefetch = createHook$1("sp");
const onRenderTriggered = createHook$1(
const onBeforeMount = createHook("bm");
const onMounted = createHook("m");
const onBeforeUpdate = createHook("bu");
const onUpdated = createHook("u");
const onBeforeUnmount = createHook("bum");
const onUnmounted = createHook("um");
const onServerPrefetch = createHook("sp");
const onRenderTriggered = createHook(
"rtg"
);
const onRenderTracked = createHook$1(
const onRenderTracked = createHook(
"rtc"
);
function onErrorCaptured(hook, target = currentInstance) {
@@ -2913,11 +2913,15 @@ const getPublicInstance = (i) => {
return getExposeProxy(i) || i.proxy;
return getPublicInstance(i.parent);
};
function getComponentInternalInstance(i) {
return i;
}
const publicPropertiesMap = (
// Move PURE marker to new line to workaround compiler discarding it
// due to type annotation
/* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {
$: (i) => i,
// fixed by xxxxxx
$: getComponentInternalInstance,
// fixed by xxxxxx vue-i18n 在 dev 模式,访问了 $el,故模拟一个假的
// $el: i => i.vnode.el,
$el: (i) => i.__$el || (i.__$el = {}),
@@ -4788,6 +4792,7 @@ function warnRef(ref2) {
const queuePostRenderEffect = queuePostFlushCb;
function mountComponent(initialVNode, options) {
const instance = initialVNode.component = createComponentInstance(initialVNode, options.parentComponent, null);
instance.renderer = options.mpType ? options.mpType : "component";
{
instance.ctx.$onApplyOptions = onApplyOptions;
instance.ctx.$children = [];
@@ -5126,7 +5131,8 @@ function injectLifecycleHook(name, hook, publicThis, instance) {
}
function initHooks$1(options, instance, publicThis) {
const mpType = options.mpType || publicThis.$mpType;
if (!mpType || mpType === "component") {
if (!mpType || mpType === "component" || // instance.renderer 标识页面是否作为组件渲染
mpType === "page" && instance.renderer === "component") {
return;
}
Object.keys(options).forEach((name) => {
@@ -5498,9 +5504,10 @@ function createApp$1(rootComponent, rootProps = null) {
}
const createSSRApp = createApp$1;
function getLocaleLanguage$1() {
var _a;
let localeLanguage = "";
{
const appBaseInfo = wx.getAppBaseInfo();
const appBaseInfo = ((_a = wx.getAppBaseInfo) === null || _a === void 0 ? void 0 : _a.call(wx)) || wx.getSystemInfoSync();
const language = appBaseInfo && appBaseInfo.language ? appBaseInfo.language : LOCALE_EN;
localeLanguage = normalizeLocale(language) || LOCALE_EN;
}
@@ -5810,10 +5817,10 @@ function handlePromise(promise2) {
function promisify$1(name, fn) {
return (args = {}, ...rest) => {
if (hasCallback(args)) {
return wrapperReturnValue(name, invokeApi(name, fn, args, rest));
return wrapperReturnValue(name, invokeApi(name, fn, extend({}, args), rest));
}
return wrapperReturnValue(name, handlePromise(new Promise((resolve2, reject) => {
invokeApi(name, fn, extend(args, { success: resolve2, fail: reject }), rest);
invokeApi(name, fn, extend({}, args, { success: resolve2, fail: reject }), rest);
})));
};
}
@@ -5911,9 +5918,15 @@ let isIOS = false;
let deviceWidth = 0;
let deviceDPR = 0;
function checkDeviceWidth() {
const { windowWidth: windowWidth2, pixelRatio, platform: platform2 } = Object.assign({}, wx.getWindowInfo(), {
platform: wx.getDeviceInfo().platform
});
var _a, _b;
let windowWidth2, pixelRatio, platform2;
{
const windowInfo = ((_a = wx.getWindowInfo) === null || _a === void 0 ? void 0 : _a.call(wx)) || wx.getSystemInfoSync();
const deviceInfo = ((_b = wx.getDeviceInfo) === null || _b === void 0 ? void 0 : _b.call(wx)) || wx.getSystemInfoSync();
windowWidth2 = windowInfo.windowWidth;
pixelRatio = windowInfo.pixelRatio;
platform2 = deviceInfo.platform;
}
deviceWidth = windowWidth2;
deviceDPR = pixelRatio;
isIOS = platform2 === "ios";
@@ -6204,7 +6217,7 @@ function promisify(name, api) {
}
return function promiseApi(options = {}, ...rest) {
if (isFunction(options.success) || isFunction(options.fail) || isFunction(options.complete)) {
return wrapperReturnValue(name, invokeApi(name, api, options, rest));
return wrapperReturnValue(name, invokeApi(name, api, extend({}, options), rest));
}
return wrapperReturnValue(name, handlePromise(new Promise((resolve2, reject) => {
invokeApi(name, api, extend({}, options, {
@@ -6368,11 +6381,29 @@ function getOSInfo(system2, platform2) {
osName = platform2;
osVersion = system2;
} else {
osName = system2.split(" ")[0] || "";
osName = system2.split(" ")[0] || platform2;
osVersion = system2.split(" ")[1] || "";
}
osName = osName.toLowerCase();
switch (osName) {
case "harmony":
case "ohos":
case "openharmony":
osName = "harmonyos";
break;
case "iphone os":
osName = "ios";
break;
case "mac":
case "darwin":
osName = "macos";
break;
case "windows_nt":
osName = "windows";
break;
}
return {
osName: osName.toLocaleLowerCase(),
osName,
osVersion
};
}
@@ -6393,9 +6424,9 @@ function populateParameters(fromRes, toRes) {
appVersion: "1.0.0",
appVersionCode: "100",
appLanguage: getAppLanguage(hostLanguage),
uniCompileVersion: "4.57",
uniCompilerVersion: "4.57",
uniRuntimeVersion: "4.57",
uniCompileVersion: "4.75",
uniCompilerVersion: "4.75",
uniRuntimeVersion: "4.75",
uniPlatform: "mp-weixin",
deviceBrand,
deviceModel: model,
@@ -6432,7 +6463,7 @@ function getGetDeviceType(fromRes, model) {
mac: "pc"
};
const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);
const _model = model.toLocaleLowerCase();
const _model = model.toLowerCase();
for (let index2 = 0; index2 < deviceTypeMapsKeys.length; index2++) {
const _m = deviceTypeMapsKeys[index2];
if (_model.indexOf(_m) !== -1) {
@@ -6446,7 +6477,7 @@ function getGetDeviceType(fromRes, model) {
function getDeviceBrand(brand) {
let deviceBrand = brand;
if (deviceBrand) {
deviceBrand = deviceBrand.toLocaleLowerCase();
deviceBrand = deviceBrand.toLowerCase();
}
return deviceBrand;
}
@@ -6544,9 +6575,9 @@ const getAppBaseInfo = {
appLanguage: getAppLanguage(hostLanguage),
isUniAppX: false,
uniPlatform: "mp-weixin",
uniCompileVersion: "4.57",
uniCompilerVersion: "4.57",
uniRuntimeVersion: "4.57"
uniCompileVersion: "4.75",
uniCompilerVersion: "4.75",
uniRuntimeVersion: "4.75"
};
extend(toRes, parameters);
}
@@ -6827,6 +6858,91 @@ function tryConnectSocket(host2, port, id) {
});
});
}
const CONSOLE_TYPES = ["log", "warn", "error", "info", "debug"];
const originalConsole = /* @__PURE__ */ CONSOLE_TYPES.reduce((methods, type2) => {
methods[type2] = console[type2].bind(console);
return methods;
}, {});
let sendError = null;
const errorQueue = /* @__PURE__ */ new Set();
const errorExtra = {};
function sendErrorMessages(errors) {
if (sendError == null) {
errors.forEach((error2) => {
errorQueue.add(error2);
});
return;
}
const data = errors.map((err) => {
if (typeof err === "string") {
return err;
}
const isPromiseRejection = err && "promise" in err && "reason" in err;
const prefix = isPromiseRejection ? "UnhandledPromiseRejection: " : "";
if (isPromiseRejection) {
err = err.reason;
}
if (err instanceof Error && err.stack) {
if (err.message && !err.stack.includes(err.message)) {
return `${prefix}${err.message}
${err.stack}`;
}
return `${prefix}${err.stack}`;
}
if (typeof err === "object" && err !== null) {
try {
return prefix + JSON.stringify(err);
} catch (err2) {
return prefix + String(err2);
}
}
return prefix + String(err);
}).filter(Boolean);
if (data.length > 0) {
sendError(JSON.stringify(Object.assign({
type: "error",
data
}, errorExtra)));
}
}
function setSendError(value2, extra = {}) {
sendError = value2;
Object.assign(errorExtra, extra);
if (value2 != null && errorQueue.size > 0) {
const errors = Array.from(errorQueue);
errorQueue.clear();
sendErrorMessages(errors);
}
}
function initOnError() {
function onError2(error2) {
try {
if (typeof PromiseRejectionEvent !== "undefined" && error2 instanceof PromiseRejectionEvent && error2.reason instanceof Error && error2.reason.message && error2.reason.message.includes(`Cannot create property 'errMsg' on string 'taskId`)) {
return;
}
if (true) {
originalConsole.error(error2);
}
sendErrorMessages([error2]);
} catch (err) {
originalConsole.error(err);
}
}
if (typeof index$1.onError === "function") {
index$1.onError(onError2);
}
if (typeof index$1.onUnhandledRejection === "function") {
index$1.onUnhandledRejection(onError2);
}
return function offError2() {
if (typeof index$1.offError === "function") {
index$1.offError(onError2);
}
if (typeof index$1.offUnhandledRejection === "function") {
index$1.offUnhandledRejection(onError2);
}
};
}
function formatMessage(type2, args) {
try {
return {
@@ -6859,7 +6975,16 @@ function formatArg(arg, depth = 0) {
case "boolean":
return formatBoolean(arg);
case "object":
return formatObject(arg, depth);
try {
return formatObject(arg, depth);
} catch (e2) {
return {
type: "object",
value: {
properties: []
}
};
}
case "undefined":
return formatUndefined();
case "function":
@@ -7005,14 +7130,21 @@ function formatObject(value2, depth) {
}
}
}
let entries = Object.entries(value2);
if (isHarmonyBuilderParams(value2)) {
entries = entries.filter(([key]) => key !== "modifier" && key !== "nodeContent");
}
return {
type: "object",
className,
value: {
properties: Object.entries(value2).map((entry) => formatObjectProperty(entry[0], entry[1], depth + 1))
properties: entries.map((entry) => formatObjectProperty(entry[0], entry[1], depth + 1))
}
};
}
function isHarmonyBuilderParams(value2) {
return value2.modifier && value2.modifier._attribute && value2.nodeContent;
}
function isComponentPublicInstance(value2) {
return value2.$ && isComponentInternalInstance(value2.$);
}
@@ -7090,10 +7222,11 @@ function formatMapEntry(value2, depth) {
value: formatArg(value2[1], depth)
};
}
const CONSOLE_TYPES = ["log", "warn", "error", "info", "debug"];
let sendConsole = null;
const messageQueue = [];
const messageExtra = {};
const EXCEPTION_BEGIN_MARK = "---BEGIN:EXCEPTION---";
const EXCEPTION_END_MARK = "---END:EXCEPTION---";
function sendConsoleMessages(messages3) {
if (sendConsole == null) {
messageQueue.push(...messages3);
@@ -7113,24 +7246,32 @@ function setSendConsole(value2, extra = {}) {
sendConsoleMessages(messages3);
}
}
const originalConsole = /* @__PURE__ */ CONSOLE_TYPES.reduce((methods, type2) => {
methods[type2] = console[type2].bind(console);
return methods;
}, {});
const atFileRegex = /^\s*at\s+[\w/./-]+:\d+$/;
function rewriteConsole() {
function wrapConsole(type2) {
return function(...args) {
const originalArgs = [...args];
if (originalArgs.length) {
const maybeAtFile = originalArgs[originalArgs.length - 1];
if (typeof maybeAtFile === "string" && atFileRegex.test(maybeAtFile)) {
originalArgs.pop();
}
}
{
const originalArgs = [...args];
if (originalArgs.length) {
const maybeAtFile = originalArgs[originalArgs.length - 1];
if (typeof maybeAtFile === "string" && atFileRegex.test(maybeAtFile)) {
originalArgs.pop();
}
}
originalConsole[type2](...originalArgs);
}
if (type2 === "error" && args.length === 1) {
const arg = args[0];
if (typeof arg === "string" && arg.startsWith(EXCEPTION_BEGIN_MARK)) {
const startIndex = EXCEPTION_BEGIN_MARK.length;
const endIndex = arg.length - EXCEPTION_END_MARK.length;
sendErrorMessages([arg.slice(startIndex, endIndex)]);
return;
} else if (arg instanceof Error) {
sendErrorMessages([arg]);
return;
}
}
sendConsoleMessages([formatMessage(type2, args)]);
};
}
@@ -7175,87 +7316,10 @@ function isConsoleWritable() {
console.log = value2;
return isWritable;
}
let sendError = null;
const errorQueue = /* @__PURE__ */ new Set();
const errorExtra = {};
function sendErrorMessages(errors) {
if (sendError == null) {
errors.forEach((error2) => {
errorQueue.add(error2);
});
return;
}
const data = errors.map((err) => {
const isPromiseRejection = err && "promise" in err && "reason" in err;
const prefix = isPromiseRejection ? "UnhandledPromiseRejection: " : "";
if (isPromiseRejection) {
err = err.reason;
}
if (err instanceof Error && err.stack) {
if (err.message && !err.stack.includes(err.message)) {
return `${prefix}${err.message}
${err.stack}`;
}
return `${prefix}${err.stack}`;
}
if (typeof err === "object" && err !== null) {
try {
return prefix + JSON.stringify(err);
} catch (err2) {
return prefix + String(err2);
}
}
return prefix + String(err);
}).filter(Boolean);
if (data.length > 0) {
sendError(JSON.stringify(Object.assign({
type: "error",
data
}, errorExtra)));
}
}
function setSendError(value2, extra = {}) {
sendError = value2;
Object.assign(errorExtra, extra);
if (value2 != null && errorQueue.size > 0) {
const errors = Array.from(errorQueue);
errorQueue.clear();
sendErrorMessages(errors);
}
}
function initOnError() {
function onError2(error2) {
try {
if (typeof PromiseRejectionEvent !== "undefined" && error2 instanceof PromiseRejectionEvent && error2.reason instanceof Error && error2.reason.message && error2.reason.message.includes(`Cannot create property 'errMsg' on string 'taskId`)) {
return;
}
if (true) {
originalConsole.error(error2);
}
sendErrorMessages([error2]);
} catch (err) {
originalConsole.error(err);
}
}
if (typeof index$1.onError === "function") {
index$1.onError(onError2);
}
if (typeof index$1.onUnhandledRejection === "function") {
index$1.onUnhandledRejection(onError2);
}
return function offError2() {
if (typeof index$1.offError === "function") {
index$1.offError(onError2);
}
if (typeof index$1.offUnhandledRejection === "function") {
index$1.offUnhandledRejection(onError2);
}
};
}
function initRuntimeSocketService() {
const hosts = "192.168.100.165,127.0.0.1";
const port = "8090";
const id = "mp-weixin_qjJx8y";
const id = "mp-weixin_0mdIp0";
const lazy = typeof swan !== "undefined";
let restoreError = lazy ? () => {
} : initOnError();
@@ -7271,13 +7335,19 @@ function initRuntimeSocketService() {
restoreError();
restoreConsole();
originalConsole.error(wrapError("开发模式下日志通道建立 socket 连接失败。"));
originalConsole.error(wrapError("如果是小程序平台,请勾选不校验合法域名配置。"));
{
originalConsole.error(wrapError("小程序平台,请勾选不校验合法域名配置。"));
}
originalConsole.error(wrapError("如果是运行到真机,请确认手机与电脑处于同一网络。"));
return false;
}
initMiniProgramGlobalFlag();
{
initMiniProgramGlobalFlag();
}
socket.onClose(() => {
originalConsole.error(wrapError("开发模式下日志通道 socket 连接关闭,请在 HBuilderX 中重新运行。"));
{
originalConsole.error(wrapError("开发模式下日志通道 socket 连接关闭,请在 HBuilderX 中重新运行。"));
}
restoreError();
restoreConsole();
});
@@ -7418,9 +7488,10 @@ function findVmByVueId(instance, vuePid) {
}
}
function getLocaleLanguage() {
var _a;
let localeLanguage = "";
{
const appBaseInfo = wx.getAppBaseInfo();
const appBaseInfo = ((_a = wx.getAppBaseInfo) === null || _a === void 0 ? void 0 : _a.call(wx)) || wx.getSystemInfoSync();
const language = appBaseInfo && appBaseInfo.language ? appBaseInfo.language : LOCALE_EN;
localeLanguage = normalizeLocale(language) || LOCALE_EN;
}
@@ -8194,13 +8265,29 @@ const createSubpackageApp = initCreateSubpackageApp();
wx.createPluginApp = global.createPluginApp = createPluginApp;
wx.createSubpackageApp = global.createSubpackageApp = createSubpackageApp;
}
const createHook = (lifecycle) => (hook, target = getCurrentInstance()) => {
const createLifeCycleHook = (lifecycle, flag2 = 0) => (hook, target = getCurrentInstance()) => {
!isInSSRComponentSetup && injectHook(lifecycle, hook, target);
};
const onShow = /* @__PURE__ */ createHook(ON_SHOW);
const onHide = /* @__PURE__ */ createHook(ON_HIDE);
const onLaunch = /* @__PURE__ */ createHook(ON_LAUNCH);
const onLoad = /* @__PURE__ */ createHook(ON_LOAD);
const onShow = /* @__PURE__ */ createLifeCycleHook(
ON_SHOW,
1 | 2
/* HookFlags.PAGE */
);
const onHide = /* @__PURE__ */ createLifeCycleHook(
ON_HIDE,
1 | 2
/* HookFlags.PAGE */
);
const onLaunch = /* @__PURE__ */ createLifeCycleHook(
ON_LAUNCH,
1
/* HookFlags.APP */
);
const onLoad = /* @__PURE__ */ createLifeCycleHook(
ON_LOAD,
2
/* HookFlags.PAGE */
);
const defineMixin = (options) => {
return options;
};