wevu 6.7.4 → 6.7.6

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/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { A as track, C as effect, D as onScopeDispose, E as getCurrentScope, M as triggerEffects, N as nextTick, O as startBatch, P as queueJob, S as batch, T as endBatch, _ as ReactiveFlags, a as toValue, b as addMutationRecorder, c as isRaw, d as reactive, f as isShallowReactive, g as touchReactive, h as prelinkReactiveTree, i as ref, j as trigger, k as stop, l as isReactive, m as clearPatchIndices, n as isRef, o as unref, p as shallowReactive, r as markAsRef, s as getReactiveVersion, t as customRef, u as markRaw, v as isObject$1, w as effectScope, x as removeMutationRecorder, y as toRaw } from "./ref-BeA_Is-2.mjs";
2
- import { i as computed, n as defineStore, r as createStore, t as storeToRefs } from "./store-DFP_p2kt.mjs";
3
- import { A as getCurrentInstance, C as onTabItemTap, D as assertInSetup, E as onUnload, F as getMiniProgramGlobalObject, I as getScopedSlotHostGlobalObject, L as readonly, M as pushHook, N as setCurrentInstance, O as callHookList, P as setCurrentSetupContext, S as onShow, T as onUnhandledRejection, _ as onResize, a as onDetached, b as onShareAppMessage, c as onLaunch, d as onMoved, f as onPageNotFound, g as onReady, h as onReachBottom, i as onAttached, j as getCurrentSetupContext, k as callHookReturn, l as onLoad, m as onPullDownRefresh, n as useNativeRouter, o as onError, p as onPageScroll, r as onAddToFavorites, s as onHide, t as useNativePageRouter, u as onMemoryWarning, v as onRouteDone, w as onThemeChange, x as onShareTimeline, y as onSaveExitState } from "./router-5qgy8oOS.mjs";
1
+ import { A as track, C as effect, D as onScopeDispose, E as getCurrentScope, M as triggerEffects, N as nextTick, O as startBatch, P as queueJob, S as batch, T as endBatch, _ as ReactiveFlags, a as toValue, b as addMutationRecorder, c as isRaw, d as reactive, f as isShallowReactive, g as touchReactive, h as prelinkReactiveTree, i as ref, j as trigger, k as stop, l as isReactive, m as clearPatchIndices, n as isRef, o as unref, p as shallowReactive, r as markAsRef, s as getReactiveVersion, t as customRef, u as markRaw, v as isObject$1, w as effectScope, x as removeMutationRecorder, y as toRaw } from "./ref-BjmD-qct.mjs";
2
+ import { i as computed, n as defineStore, r as createStore, t as storeToRefs } from "./store-Ct-o7qtH.mjs";
3
+ import { A as getCurrentInstance, C as onTabItemTap, D as assertInSetup, E as onUnload, F as getMiniProgramGlobalObject, I as getScopedSlotHostGlobalObject, L as readonly, M as pushHook, N as setCurrentInstance, O as callHookList, P as setCurrentSetupContext, S as onShow, T as onUnhandledRejection, _ as onResize, a as onDetached, b as onShareAppMessage, c as onLaunch, d as onMoved, f as onPageNotFound, g as onReady, h as onReachBottom, i as onAttached, j as getCurrentSetupContext, k as callHookReturn, l as onLoad, m as onPullDownRefresh, n as useNativeRouter, o as onError, p as onPageScroll, r as onAddToFavorites, s as onHide, t as useNativePageRouter, u as onMemoryWarning, v as onRouteDone, w as onThemeChange, x as onShareTimeline, y as onSaveExitState } from "./router-CcoGUezU.mjs";
4
4
  //#region src/reactivity/shallowRef.ts
5
5
  /**
6
6
  * 创建一个“浅层” ref:它只在 .value 被整体替换时触发依赖,不会对内部对象做深层响应式处理。
@@ -357,7 +357,7 @@ function setWithSegments(target, segments, value) {
357
357
  if (current[key] == null || typeof current[key] !== "object") current[key] = {};
358
358
  current = current[key];
359
359
  }
360
- current[segments[segments.length - 1]] = value;
360
+ current[segments.at(-1)] = value;
361
361
  }
362
362
  function setByPath(state, computedRefs, computedSetters, segments, value) {
363
363
  if (!segments.length) return;
@@ -540,7 +540,7 @@ function createRuntimeContext(options) {
540
540
  if (isValidNativeCandidate(runtimeNative)) return runtimeNative;
541
541
  };
542
542
  const installNativeMethodBridge = (methodName) => {
543
- if (Object.prototype.hasOwnProperty.call(boundMethods, methodName)) return;
543
+ if (Object.hasOwn(boundMethods, methodName)) return;
544
544
  const bridge = (...args) => {
545
545
  const nativeInstance = resolveNativeInstance(state, state);
546
546
  if (!nativeInstance) return;
@@ -557,9 +557,9 @@ function createRuntimeContext(options) {
557
557
  if (key === "data") return state;
558
558
  if (key === "$state") return state;
559
559
  if (key === "$computed") return computedProxy;
560
- if (Object.prototype.hasOwnProperty.call(boundMethods, key)) return boundMethods[key];
560
+ if (Object.hasOwn(boundMethods, key)) return boundMethods[key];
561
561
  if (computedRefs[key]) return computedRefs[key].value;
562
- if (Object.prototype.hasOwnProperty.call(appConfig.globalProperties, key)) return appConfig.globalProperties[key];
562
+ if (Object.hasOwn(appConfig.globalProperties, key)) return appConfig.globalProperties[key];
563
563
  }
564
564
  if (!Reflect.has(target, key)) {
565
565
  const nativeInstance = resolveNativeInstance(target, receiver);
@@ -583,7 +583,7 @@ function createRuntimeContext(options) {
583
583
  },
584
584
  has(target, key) {
585
585
  if (key === "data") return true;
586
- if (typeof key === "string" && (computedRefs[key] || Object.prototype.hasOwnProperty.call(boundMethods, key))) return true;
586
+ if (typeof key === "string" && (computedRefs[key] || Object.hasOwn(boundMethods, key))) return true;
587
587
  const nativeInstance = resolveNativeInstance(target, target);
588
588
  if (nativeInstance && Reflect.has(nativeInstance, key)) return true;
589
589
  return Reflect.has(target, key);
@@ -595,7 +595,7 @@ function createRuntimeContext(options) {
595
595
  });
596
596
  Object.keys(boundMethods).forEach((key) => keys.add(key));
597
597
  Object.keys(computedRefs).forEach((key) => keys.add(key));
598
- return Array.from(keys);
598
+ return [...keys];
599
599
  },
600
600
  getOwnPropertyDescriptor(target, key) {
601
601
  if (Reflect.has(target, key)) return Object.getOwnPropertyDescriptor(target, key);
@@ -617,7 +617,7 @@ function createRuntimeContext(options) {
617
617
  setComputedValue(computedSetters, key, value);
618
618
  }
619
619
  };
620
- if (Object.prototype.hasOwnProperty.call(boundMethods, key)) return {
620
+ if (Object.hasOwn(boundMethods, key)) return {
621
621
  configurable: true,
622
622
  enumerable: false,
623
623
  value: boundMethods[key]
@@ -758,11 +758,11 @@ function toPlain(value, seen = /* @__PURE__ */ new WeakMap(), options) {
758
758
  if (ArrayBuffer.isView(raw)) {
759
759
  const view = raw;
760
760
  if (typeof view[Symbol.iterator] === "function") {
761
- const values = Array.from(view);
761
+ const values = [...view];
762
762
  seen.set(raw, values);
763
763
  return values.map((item) => toPlain(item, seen));
764
764
  }
765
- const bytes = Array.from(new Uint8Array(view.buffer, view.byteOffset, view.byteLength));
765
+ const bytes = [...new Uint8Array(view.buffer, view.byteOffset, view.byteLength)];
766
766
  seen.set(raw, bytes);
767
767
  return bytes;
768
768
  }
@@ -816,7 +816,7 @@ function isPlainObjectEqual(a, b, compare) {
816
816
  const bKeys = Object.keys(b);
817
817
  if (aKeys.length !== bKeys.length) return false;
818
818
  for (const key of aKeys) {
819
- if (!Object.prototype.hasOwnProperty.call(b, key)) return false;
819
+ if (!Object.hasOwn(b, key)) return false;
820
820
  if (!compare(a[key], b[key])) return false;
821
821
  }
822
822
  return true;
@@ -834,13 +834,13 @@ function assignNestedDiff(prev, next, path, output) {
834
834
  if (isDeepEqual(prev, next)) return;
835
835
  if (isPlainObject$1(prev) && isPlainObject$1(next)) {
836
836
  for (const key of Object.keys(next)) {
837
- if (!Object.prototype.hasOwnProperty.call(prev, key)) {
837
+ if (!Object.hasOwn(prev, key)) {
838
838
  output[`${path}.${key}`] = normalizeSetDataValue$1(next[key]);
839
839
  continue;
840
840
  }
841
841
  assignNestedDiff(prev[key], next[key], `${path}.${key}`, output);
842
842
  }
843
- for (const key of Object.keys(prev)) if (!Object.prototype.hasOwnProperty.call(next, key)) output[`${path}.${key}`] = null;
843
+ for (const key of Object.keys(prev)) if (!Object.hasOwn(next, key)) output[`${path}.${key}`] = null;
844
844
  return;
845
845
  }
846
846
  if (Array.isArray(prev) && Array.isArray(next)) {
@@ -852,7 +852,7 @@ function assignNestedDiff(prev, next, path, output) {
852
852
  function diffSnapshots(prev, next) {
853
853
  const diff = {};
854
854
  for (const key of Object.keys(next)) assignNestedDiff(prev[key], next[key], key, diff);
855
- for (const key of Object.keys(prev)) if (!Object.prototype.hasOwnProperty.call(next, key)) diff[key] = null;
855
+ for (const key of Object.keys(prev)) if (!Object.hasOwn(next, key)) diff[key] = null;
856
856
  return diff;
857
857
  }
858
858
  //#endregion
@@ -864,7 +864,7 @@ function collapsePayload(input) {
864
864
  const prefixStack = [];
865
865
  for (const key of keys) {
866
866
  while (prefixStack.length) {
867
- const prefix = prefixStack[prefixStack.length - 1];
867
+ const prefix = prefixStack.at(-1);
868
868
  if (key.startsWith(prefix)) break;
869
869
  prefixStack.pop();
870
870
  }
@@ -966,7 +966,7 @@ function mergeSiblingPayload(options) {
966
966
  list.push(key);
967
967
  groups.set(parent, list);
968
968
  }
969
- const parents = Array.from(groups.entries()).filter(([parent, list]) => list.length >= mergeSiblingThreshold && !hasDelete.has(parent)).sort((a, b) => b[0].split(".").length - a[0].split(".").length);
969
+ const parents = [...groups.entries()].filter(([parent, list]) => list.length >= mergeSiblingThreshold && !hasDelete.has(parent)).sort((a, b) => b[0].split(".").length - a[0].split(".").length);
970
970
  if (!parents.length) return {
971
971
  out: input,
972
972
  merged: 0
@@ -989,8 +989,8 @@ function mergeSiblingPayload(options) {
989
989
  return 2 + key.length + 1 + estimateValueSize(value);
990
990
  };
991
991
  for (const [parent, list] of parents) {
992
- if (Object.prototype.hasOwnProperty.call(out, parent)) continue;
993
- const existingChildren = list.filter((k) => Object.prototype.hasOwnProperty.call(out, k));
992
+ if (Object.hasOwn(out, parent)) continue;
993
+ const existingChildren = list.filter((k) => Object.hasOwn(out, k));
994
994
  if (existingChildren.length < mergeSiblingThreshold) continue;
995
995
  const parentValue = getPlainByPath(parent);
996
996
  if (mergeSiblingSkipArray && Array.isArray(parentValue)) continue;
@@ -1040,7 +1040,7 @@ function isShallowEqualValue(a, b) {
1040
1040
  const bKeys = Object.keys(b);
1041
1041
  if (aKeys.length !== bKeys.length) return false;
1042
1042
  for (const k of aKeys) {
1043
- if (!Object.prototype.hasOwnProperty.call(b, k)) return false;
1043
+ if (!Object.hasOwn(b, k)) return false;
1044
1044
  if (!Object.is(a[k], b[k])) return false;
1045
1045
  }
1046
1046
  return true;
@@ -1060,7 +1060,7 @@ function isDeepEqualValue(a, b, depth, budget) {
1060
1060
  for (const k of aKeys) {
1061
1061
  budget.keys -= 1;
1062
1062
  if (budget.keys <= 0) return false;
1063
- if (!Object.prototype.hasOwnProperty.call(b, k)) return false;
1063
+ if (!Object.hasOwn(b, k)) return false;
1064
1064
  if (!isDeepEqualValue(a[k], b[k], depth - 1, budget)) return false;
1065
1065
  }
1066
1066
  return true;
@@ -1071,10 +1071,10 @@ function applySnapshotUpdate(snapshot, path, value, op) {
1071
1071
  let current = snapshot;
1072
1072
  for (let i = 0; i < segments.length - 1; i++) {
1073
1073
  const key = segments[i];
1074
- if (!Object.prototype.hasOwnProperty.call(current, key) || current[key] == null || typeof current[key] !== "object") current[key] = Object.create(null);
1074
+ if (!Object.hasOwn(current, key) || current[key] == null || typeof current[key] !== "object") current[key] = Object.create(null);
1075
1075
  current = current[key];
1076
1076
  }
1077
- const leaf = segments[segments.length - 1];
1077
+ const leaf = segments.at(-1);
1078
1078
  if (op === "delete") try {
1079
1079
  delete current[leaf];
1080
1080
  } catch (_unused) {
@@ -1129,7 +1129,7 @@ function runPatchUpdate(options) {
1129
1129
  const seen = /* @__PURE__ */ new WeakMap();
1130
1130
  const plainByPath = /* @__PURE__ */ new Map();
1131
1131
  const payload = Object.create(null);
1132
- const patchEntriesRaw = Array.from(pendingPatches.entries());
1132
+ const patchEntriesRaw = [...pendingPatches.entries()];
1133
1133
  if (Number.isFinite(elevateTopKeyThreshold) && elevateTopKeyThreshold > 0) {
1134
1134
  const counts = /* @__PURE__ */ new Map();
1135
1135
  for (const [path] of patchEntriesRaw) {
@@ -1185,7 +1185,7 @@ function runPatchUpdate(options) {
1185
1185
  let computedDirtyProcessed = 0;
1186
1186
  if (includeComputed && dirtyComputedKeys.size) {
1187
1187
  const computedPatch = Object.create(null);
1188
- const keys = Array.from(dirtyComputedKeys);
1188
+ const keys = [...dirtyComputedKeys];
1189
1189
  dirtyComputedKeys.clear();
1190
1190
  computedDirtyProcessed = keys.length;
1191
1191
  for (const key of keys) {
@@ -1463,7 +1463,7 @@ function createRuntimeMount(options) {
1463
1463
  const { data, resolvedComputed, resolvedMethods, appConfig, setDataOptions } = options;
1464
1464
  return (adapter) => {
1465
1465
  const rawState = (data !== null && data !== void 0 ? data : (() => ({})))();
1466
- if (rawState && typeof rawState === "object" && !Object.prototype.hasOwnProperty.call(rawState, "__wevuProps")) try {
1466
+ if (rawState && typeof rawState === "object" && !Object.hasOwn(rawState, "__wevuProps")) try {
1467
1467
  Object.defineProperty(rawState, "__wevuProps", {
1468
1468
  value: shallowReactive(Object.create(null)),
1469
1469
  configurable: true,
@@ -1602,6 +1602,16 @@ function createRuntimeMount(options) {
1602
1602
  } catch (_unused3) {
1603
1603
  runtimeInstance.__wevu_touchSetupMethodsVersion = touchSetupMethodsVersion;
1604
1604
  }
1605
+ try {
1606
+ Object.defineProperty(runtimeInstance, "__wevu_flushSetupSnapshotSync", {
1607
+ value: job,
1608
+ configurable: true,
1609
+ enumerable: false,
1610
+ writable: false
1611
+ });
1612
+ } catch (_unused4) {
1613
+ runtimeInstance.__wevu_flushSetupSnapshotSync = job;
1614
+ }
1605
1615
  return runtimeInstance;
1606
1616
  };
1607
1617
  }
@@ -1740,8 +1750,15 @@ function callUpdateHooks(target, phase) {
1740
1750
  }
1741
1751
  //#endregion
1742
1752
  //#region src/runtime/register/inline.ts
1753
+ const AMP_RE$1 = /&amp;/g;
1754
+ const QUOT_RE$1 = /&quot;/g;
1755
+ const NUM_QUOT_RE$1 = /&#34;/g;
1756
+ const APOS_RE$1 = /&apos;/g;
1757
+ const NUM_APOS_RE$1 = /&#39;/g;
1758
+ const LT_RE$1 = /&lt;/g;
1759
+ const GT_RE$1 = /&gt;/g;
1743
1760
  function decodeWxmlEntities$1(value) {
1744
- return value.replace(/&amp;/g, "&").replace(/&quot;/g, "\"").replace(/&#34;/g, "\"").replace(/&apos;/g, "'").replace(/&#39;/g, "'").replace(/&lt;/g, "<").replace(/&gt;/g, ">");
1761
+ return value.replace(AMP_RE$1, "&").replace(QUOT_RE$1, "\"").replace(NUM_QUOT_RE$1, "\"").replace(APOS_RE$1, "'").replace(NUM_APOS_RE$1, "'").replace(LT_RE$1, "<").replace(GT_RE$1, ">");
1745
1762
  }
1746
1763
  function normalizeDatasetIndex(value) {
1747
1764
  if (typeof value === "number" && Number.isFinite(value)) return value;
@@ -1750,13 +1767,16 @@ function normalizeDatasetIndex(value) {
1750
1767
  if (Number.isFinite(parsed)) return parsed;
1751
1768
  }
1752
1769
  }
1770
+ const NON_ALNUM_RE = /[^a-z0-9]+/gi;
1771
+ const LEADING_TRAILING_DASH_RE = /^-+|-+$/g;
1753
1772
  function normalizeEventToken(value) {
1754
- return value.trim().replace(/[^a-z0-9]+/gi, "-").replace(/^-+|-+$/g, "").toLowerCase();
1773
+ return value.trim().replace(NON_ALNUM_RE, "-").replace(LEADING_TRAILING_DASH_RE, "").toLowerCase();
1755
1774
  }
1775
+ const DASH_ALNUM_RE = /-([a-z0-9])/g;
1756
1776
  function resolveEventDatasetKey(baseKey, event) {
1757
1777
  const token = normalizeEventToken(typeof (event === null || event === void 0 ? void 0 : event.type) === "string" ? event.type : "");
1758
1778
  if (!token) return;
1759
- const camelToken = token.replace(/-([a-z0-9])/g, (_, ch) => ch.toUpperCase());
1779
+ const camelToken = token.replace(DASH_ALNUM_RE, (_, ch) => ch.toUpperCase());
1760
1780
  if (!camelToken) return;
1761
1781
  return `${baseKey}${camelToken[0].toUpperCase()}${camelToken.slice(1)}`;
1762
1782
  }
@@ -1979,7 +1999,7 @@ function mergeComponentRefValue(wrapper, exposed) {
1979
1999
  return Reflect.has(target, key) || key in source;
1980
2000
  },
1981
2001
  ownKeys(target) {
1982
- return Array.from(new Set([...Reflect.ownKeys(target), ...Reflect.ownKeys(source)]));
2002
+ return [...new Set([...Reflect.ownKeys(target), ...Reflect.ownKeys(source)])];
1983
2003
  },
1984
2004
  getOwnPropertyDescriptor(target, key) {
1985
2005
  if (Reflect.has(target, key)) return Object.getOwnPropertyDescriptor(target, key);
@@ -2304,7 +2324,7 @@ function safeMarkNoSetData(value) {
2304
2324
  }
2305
2325
  function isTriggerEventOptions(value) {
2306
2326
  if (!value || typeof value !== "object" || Array.isArray(value)) return false;
2307
- return Object.prototype.hasOwnProperty.call(value, "bubbles") || Object.prototype.hasOwnProperty.call(value, "composed") || Object.prototype.hasOwnProperty.call(value, "capturePhase");
2327
+ return Object.hasOwn(value, "bubbles") || Object.hasOwn(value, "composed") || Object.hasOwn(value, "capturePhase");
2308
2328
  }
2309
2329
  function normalizeEmitPayload(args) {
2310
2330
  if (args.length === 0) return {
@@ -2315,7 +2335,7 @@ function normalizeEmitPayload(args) {
2315
2335
  detail: args[0],
2316
2336
  options: void 0
2317
2337
  };
2318
- const maybeOptions = args[args.length - 1];
2338
+ const maybeOptions = args.at(-1);
2319
2339
  if (isTriggerEventOptions(maybeOptions)) {
2320
2340
  const detailArgs = args.slice(0, -1);
2321
2341
  return {
@@ -2497,11 +2517,11 @@ function runRuntimeSetupPhase(options) {
2497
2517
  const attrs = shallowReactive(Object.create(null));
2498
2518
  const declaredPropKeys = new Set(Array.isArray(target.__wevuPropKeys) ? target.__wevuPropKeys : []);
2499
2519
  const hasRuntimeStateKey = (key) => {
2500
- return runtimeState != null && typeof runtimeState === "object" && Object.prototype.hasOwnProperty.call(runtimeState, key);
2520
+ return runtimeState != null && typeof runtimeState === "object" && Object.hasOwn(runtimeState, key);
2501
2521
  };
2502
2522
  const syncAttrsFromProperties = () => {
2503
2523
  const next = target.properties && typeof target.properties === "object" ? target.properties : void 0;
2504
- for (const existingKey of Object.keys(attrs)) if (!next || !Object.prototype.hasOwnProperty.call(next, existingKey) || declaredPropKeys.has(existingKey) || hasRuntimeStateKey(existingKey)) delete attrs[existingKey];
2524
+ for (const existingKey of Object.keys(attrs)) if (!next || !Object.hasOwn(next, existingKey) || declaredPropKeys.has(existingKey) || hasRuntimeStateKey(existingKey)) delete attrs[existingKey];
2505
2525
  if (!next) return;
2506
2526
  for (const [key, value] of Object.entries(next)) {
2507
2527
  if (declaredPropKeys.has(key) || hasRuntimeStateKey(key)) continue;
@@ -2559,7 +2579,7 @@ function runRuntimeSetupPhase(options) {
2559
2579
  enumerable: false,
2560
2580
  get() {
2561
2581
  const propsSource = runtimeRawState.__wevuProps;
2562
- if (propsSource && typeof propsSource === "object" && Object.prototype.hasOwnProperty.call(propsSource, key)) return propsSource[key];
2582
+ if (propsSource && typeof propsSource === "object" && Object.hasOwn(propsSource, key)) return propsSource[key];
2563
2583
  return fallbackValue;
2564
2584
  },
2565
2585
  set(next) {
@@ -2668,7 +2688,7 @@ function callNativeSetData(instance, setData, payload) {
2668
2688
  }
2669
2689
  function syncRuntimeProps(props, mpProperties) {
2670
2690
  const currentKeys = Object.keys(props);
2671
- for (const key of currentKeys) if (!Object.prototype.hasOwnProperty.call(mpProperties, key)) try {
2691
+ for (const key of currentKeys) if (!Object.hasOwn(mpProperties, key)) try {
2672
2692
  delete props[key];
2673
2693
  } catch (_unused6) {}
2674
2694
  for (const [key, value] of Object.entries(mpProperties)) props[key] = value;
@@ -2947,16 +2967,20 @@ function mountRuntimeInstance(target, runtimeApp, watchMap, setup, options) {
2947
2967
  const stops = registerWatches(runtimeWithDefaults, watchMap, target);
2948
2968
  if (stops.length) target.__wevuWatchStops = stops;
2949
2969
  }
2950
- if (setup) runRuntimeSetupPhase({
2951
- target,
2952
- runtime,
2953
- runtimeWithDefaults,
2954
- runtimeState,
2955
- runtimeProxy,
2956
- setup,
2957
- syncRuntimeProps,
2958
- attachRuntimeProxyProps
2959
- });
2970
+ if (setup) {
2971
+ var _wevu_flushSetupSnaps;
2972
+ runRuntimeSetupPhase({
2973
+ target,
2974
+ runtime,
2975
+ runtimeWithDefaults,
2976
+ runtimeState,
2977
+ runtimeProxy,
2978
+ setup,
2979
+ syncRuntimeProps,
2980
+ attachRuntimeProxyProps
2981
+ });
2982
+ (_wevu_flushSetupSnaps = runtime.__wevu_flushSetupSnapshotSync) === null || _wevu_flushSetupSnaps === void 0 || _wevu_flushSetupSnaps.call(runtime);
2983
+ }
2960
2984
  bridgeRuntimeMethodsToTarget(target, runtime);
2961
2985
  return runtime;
2962
2986
  }
@@ -3148,7 +3172,7 @@ function resolvePageOptions(target) {
3148
3172
  if (direct && typeof direct === "object") return direct;
3149
3173
  if (typeof getCurrentPages === "function") {
3150
3174
  const pages = getCurrentPages();
3151
- const page = Array.isArray(pages) ? pages[pages.length - 1] : void 0;
3175
+ const page = Array.isArray(pages) ? pages.at(-1) : void 0;
3152
3176
  const options = page && typeof page === "object" ? page.options : void 0;
3153
3177
  if (options && typeof options === "object") return options;
3154
3178
  }
@@ -3483,6 +3507,7 @@ function prepareComponentOptions(mpOptions) {
3483
3507
  const isPage = Boolean(rest.__wevu_isPage) || Object.keys(features !== null && features !== void 0 ? features : {}).length > 0 || hasPageOnlyHooks;
3484
3508
  const restOptions = { ...rest };
3485
3509
  const preservedInstanceFieldKeys = new Set([
3510
+ "data",
3486
3511
  "behaviors",
3487
3512
  "relations",
3488
3513
  "externalClasses",
@@ -3508,13 +3533,14 @@ function prepareComponentOptions(mpOptions) {
3508
3533
  const applyExtraInstanceFields = (instance) => {
3509
3534
  if (!extraInstanceFieldEntries.length) return;
3510
3535
  for (const [key, value] of extraInstanceFieldEntries) {
3511
- if (Object.prototype.hasOwnProperty.call(instance, key)) continue;
3536
+ if (Object.hasOwn(instance, key)) continue;
3512
3537
  try {
3513
3538
  instance[key] = cloneInstanceFieldValue(value);
3514
3539
  } catch (_unused) {}
3515
3540
  }
3516
3541
  };
3517
3542
  const moveToMethodsExcludes = new Set([
3543
+ "data",
3518
3544
  "export",
3519
3545
  "definitionFilter",
3520
3546
  "onLoad",
@@ -3620,12 +3646,12 @@ function createPropsSync(options) {
3620
3646
  const hasRuntimeStateKey = (key) => {
3621
3647
  var _wevu;
3622
3648
  const runtimeState = (_wevu = instance.__wevu) === null || _wevu === void 0 ? void 0 : _wevu.state;
3623
- return runtimeState != null && typeof runtimeState === "object" && Object.prototype.hasOwnProperty.call(runtimeState, key);
3649
+ return runtimeState != null && typeof runtimeState === "object" && Object.hasOwn(runtimeState, key);
3624
3650
  };
3625
3651
  const properties = instance.properties;
3626
3652
  const next = properties && typeof properties === "object" ? properties : void 0;
3627
3653
  const currentKeys = Object.keys(attrsProxy);
3628
- for (const existingKey of currentKeys) if (!next || !Object.prototype.hasOwnProperty.call(next, existingKey) || propKeySet.has(existingKey) || hasRuntimeStateKey(existingKey)) try {
3654
+ for (const existingKey of currentKeys) if (!next || !Object.hasOwn(next, existingKey) || propKeySet.has(existingKey) || hasRuntimeStateKey(existingKey)) try {
3629
3655
  delete attrsProxy[existingKey];
3630
3656
  } catch (_unused2) {}
3631
3657
  if (!next) {
@@ -3647,17 +3673,17 @@ function createPropsSync(options) {
3647
3673
  if (propsProxy && typeof propsProxy === "object" && properties && typeof properties === "object") {
3648
3674
  const next = properties;
3649
3675
  const currentKeys = Object.keys(propsProxy);
3650
- for (const existingKey of currentKeys) if (!Object.prototype.hasOwnProperty.call(next, existingKey)) try {
3676
+ for (const existingKey of currentKeys) if (!Object.hasOwn(next, existingKey)) try {
3651
3677
  delete propsProxy[existingKey];
3652
3678
  } catch (_unused4) {}
3653
3679
  for (const [k, v] of Object.entries(next)) {
3654
- const nextValue = pendingPropValues && Object.prototype.hasOwnProperty.call(pendingPropValues, k) ? pendingPropValues[k] : v;
3680
+ const nextValue = pendingPropValues && Object.hasOwn(pendingPropValues, k) ? pendingPropValues[k] : v;
3655
3681
  try {
3656
3682
  propsProxy[k] = nextValue;
3657
3683
  } catch (_unused5) {}
3658
3684
  }
3659
3685
  if (pendingPropValues) {
3660
- for (const [k, v] of Object.entries(pendingPropValues)) if (!Object.prototype.hasOwnProperty.call(next, k)) try {
3686
+ for (const [k, v] of Object.entries(pendingPropValues)) if (!Object.hasOwn(next, k)) try {
3661
3687
  propsProxy[k] = v;
3662
3688
  } catch (_unused6) {}
3663
3689
  }
@@ -4012,6 +4038,7 @@ function createApp(options) {
4012
4038
  }
4013
4039
  //#endregion
4014
4040
  //#region src/runtime/define/props.ts
4041
+ const ALLOW_NULL_PROP_INPUT_KEY = "__wevu_allowNullPropInput";
4015
4042
  const NATIVE_PROPERTY_TYPE_MAP = new Map([
4016
4043
  [String, String],
4017
4044
  [Number, Number],
@@ -4054,23 +4081,32 @@ function applyTypeOptions(target, rawType) {
4054
4081
  if (optionalTypes.length > 0) target.optionalTypes = optionalTypes;
4055
4082
  }
4056
4083
  }
4084
+ function appendOptionalType(target, candidate) {
4085
+ if (candidate === void 0 || target.type === candidate) return;
4086
+ const optionalTypes = Array.isArray(target.optionalTypes) ? [...target.optionalTypes] : [];
4087
+ if (optionalTypes.includes(candidate)) return;
4088
+ optionalTypes.push(candidate);
4089
+ target.optionalTypes = optionalTypes;
4090
+ }
4057
4091
  function normalizeProps(baseOptions, props, explicitProperties) {
4092
+ const allowNullPropInput = Boolean(baseOptions[ALLOW_NULL_PROP_INPUT_KEY]);
4093
+ const { [ALLOW_NULL_PROP_INPUT_KEY]: _ignoredAllowNullPropInput, ...normalizedBaseOptions } = baseOptions;
4058
4094
  const baseProperties = baseOptions.properties;
4059
4095
  const resolvedExplicit = explicitProperties !== null && explicitProperties !== void 0 ? explicitProperties : baseProperties && typeof baseProperties === "object" ? baseProperties : void 0;
4060
4096
  const attachInternalProps = (source) => {
4061
4097
  const next = { ...source !== null && source !== void 0 ? source : {} };
4062
- if (!Object.prototype.hasOwnProperty.call(next, "__wvSlotOwnerId")) next.__wvSlotOwnerId = {
4098
+ if (!Object.hasOwn(next, "__wvSlotOwnerId")) next.__wvSlotOwnerId = {
4063
4099
  type: String,
4064
4100
  value: ""
4065
4101
  };
4066
- if (!Object.prototype.hasOwnProperty.call(next, "__wvSlotScope")) next.__wvSlotScope = {
4102
+ if (!Object.hasOwn(next, "__wvSlotScope")) next.__wvSlotScope = {
4067
4103
  type: null,
4068
4104
  value: null
4069
4105
  };
4070
4106
  return next;
4071
4107
  };
4072
4108
  if (resolvedExplicit || !props) {
4073
- const { properties: _ignored, ...rest } = baseOptions;
4109
+ const { properties: _ignored, ...rest } = normalizedBaseOptions;
4074
4110
  return {
4075
4111
  ...rest,
4076
4112
  properties: attachInternalProps(resolvedExplicit)
@@ -4086,7 +4122,8 @@ function normalizeProps(baseOptions, props, explicitProperties) {
4086
4122
  if (Array.isArray(definition) || typeof definition === "function") {
4087
4123
  const propOptions = {};
4088
4124
  applyTypeOptions(propOptions, definition);
4089
- if (!Object.prototype.hasOwnProperty.call(propOptions, "type")) propOptions.type = null;
4125
+ if (allowNullPropInput && propOptions.type !== null) appendOptionalType(propOptions, null);
4126
+ if (!Object.hasOwn(propOptions, "type")) propOptions.type = null;
4090
4127
  properties[key] = propOptions;
4091
4128
  return;
4092
4129
  }
@@ -4114,19 +4151,27 @@ function normalizeProps(baseOptions, props, explicitProperties) {
4114
4151
  if ("observer" in definition && (typeof definition.observer === "function" || typeof definition.observer === "string")) propOptions.observer = definition.observer;
4115
4152
  const defaultValue = "default" in definition ? definition.default : definition.value;
4116
4153
  if (defaultValue !== void 0) propOptions.value = typeof defaultValue === "function" ? defaultValue() : defaultValue;
4117
- if (!Object.prototype.hasOwnProperty.call(propOptions, "type")) propOptions.type = null;
4154
+ if (allowNullPropInput && propOptions.type !== null) appendOptionalType(propOptions, null);
4155
+ if (!Object.hasOwn(propOptions, "type")) propOptions.type = null;
4118
4156
  properties[key] = propOptions;
4119
4157
  }
4120
4158
  });
4121
4159
  return {
4122
- ...baseOptions,
4160
+ ...normalizedBaseOptions,
4123
4161
  properties: attachInternalProps(properties)
4124
4162
  };
4125
4163
  }
4126
4164
  //#endregion
4127
4165
  //#region src/runtime/define/scopedSlotOptions.ts
4166
+ const AMP_RE = /&amp;/g;
4167
+ const QUOT_RE = /&quot;/g;
4168
+ const NUM_QUOT_RE = /&#34;/g;
4169
+ const APOS_RE = /&apos;/g;
4170
+ const NUM_APOS_RE = /&#39;/g;
4171
+ const LT_RE = /&lt;/g;
4172
+ const GT_RE = /&gt;/g;
4128
4173
  function decodeWxmlEntities(value) {
4129
- return value.replace(/&amp;/g, "&").replace(/&quot;/g, "\"").replace(/&#34;/g, "\"").replace(/&apos;/g, "'").replace(/&#39;/g, "'").replace(/&lt;/g, "<").replace(/&gt;/g, ">");
4174
+ return value.replace(AMP_RE, "&").replace(QUOT_RE, "\"").replace(NUM_QUOT_RE, "\"").replace(APOS_RE, "'").replace(NUM_APOS_RE, "'").replace(LT_RE, "<").replace(GT_RE, ">");
4130
4175
  }
4131
4176
  function parseInlineArgs(event) {
4132
4177
  var _ref, _event$currentTarget$, _event$currentTarget, _event$target;
@@ -4159,8 +4204,8 @@ function normalizeSlotBindings(value) {
4159
4204
  }
4160
4205
  function mergeSlotProps(instance, override) {
4161
4206
  var _instance$properties, _instance$properties2;
4162
- const scopeSource = Object.prototype.hasOwnProperty.call(override !== null && override !== void 0 ? override : {}, "__wvSlotScope") ? override.__wvSlotScope : instance === null || instance === void 0 || (_instance$properties = instance.properties) === null || _instance$properties === void 0 ? void 0 : _instance$properties.__wvSlotScope;
4163
- const propsSource = Object.prototype.hasOwnProperty.call(override !== null && override !== void 0 ? override : {}, "__wvSlotProps") ? override.__wvSlotProps : instance === null || instance === void 0 || (_instance$properties2 = instance.properties) === null || _instance$properties2 === void 0 ? void 0 : _instance$properties2.__wvSlotProps;
4207
+ const scopeSource = Object.hasOwn(override !== null && override !== void 0 ? override : {}, "__wvSlotScope") ? override.__wvSlotScope : instance === null || instance === void 0 || (_instance$properties = instance.properties) === null || _instance$properties === void 0 ? void 0 : _instance$properties.__wvSlotScope;
4208
+ const propsSource = Object.hasOwn(override !== null && override !== void 0 ? override : {}, "__wvSlotProps") ? override.__wvSlotProps : instance === null || instance === void 0 || (_instance$properties2 = instance.properties) === null || _instance$properties2 === void 0 ? void 0 : _instance$properties2.__wvSlotProps;
4164
4209
  const scope = normalizeSlotBindings(scopeSource);
4165
4210
  const slotProps = normalizeSlotBindings(propsSource);
4166
4211
  const merged = {
@@ -4280,7 +4325,7 @@ function applySetupResult(runtime, target, result) {
4280
4325
  enumerable: false,
4281
4326
  get() {
4282
4327
  const propsSource = rawState.__wevuProps;
4283
- if (propsSource && typeof propsSource === "object" && Object.prototype.hasOwnProperty.call(propsSource, key)) return propsSource[key];
4328
+ if (propsSource && typeof propsSource === "object" && Object.hasOwn(propsSource, key)) return propsSource[key];
4284
4329
  return fallbackValue;
4285
4330
  },
4286
4331
  set(next) {
@@ -4339,12 +4384,16 @@ function defineComponent(options) {
4339
4384
  setData,
4340
4385
  [INTERNAL_DEFAULTS_SCOPE_KEY]: "component"
4341
4386
  });
4342
- const setupWrapper = (props, ctx) => {
4387
+ const setupWrapper = typeof setup === "function" ? ((props, ctx) => {
4343
4388
  const result = runSetupFunction(setup, props, ctx);
4344
4389
  if (result && ctx) applySetupResult(ctx.runtime, ctx.instance, result);
4345
4390
  return result;
4346
- };
4347
- const mpOptionsWithProps = normalizeProps(mpOptions, props);
4391
+ }) : void 0;
4392
+ const nativeData = typeof data === "function" ? data() : data;
4393
+ const mpOptionsWithProps = normalizeProps(nativeData !== void 0 ? {
4394
+ ...mpOptions,
4395
+ data: nativeData
4396
+ } : mpOptions, props);
4348
4397
  const componentOptions = {
4349
4398
  data,
4350
4399
  computed,
@@ -4369,7 +4418,10 @@ function defineComponent(options) {
4369
4418
  function createWevuComponent(options) {
4370
4419
  ensureScopedSlotComponentGlobal();
4371
4420
  const { properties, props, ...restOptions } = options;
4372
- defineComponent(normalizeProps(restOptions, props, properties));
4421
+ defineComponent(normalizeProps({
4422
+ ...restOptions,
4423
+ __wevu_allowNullPropInput: true
4424
+ }, props, properties));
4373
4425
  }
4374
4426
  /**
4375
4427
  * scoped slot 兼容组件入口(编译产物内部使用)。
@@ -4426,7 +4478,7 @@ function useDisposables() {
4426
4478
  const dispose = () => {
4427
4479
  if (disposed) return;
4428
4480
  disposed = true;
4429
- const queue = Array.from(cleanupSet);
4481
+ const queue = [...cleanupSet];
4430
4482
  cleanupSet.clear();
4431
4483
  for (const cleanup of queue) try {
4432
4484
  cleanup();
@@ -4892,7 +4944,7 @@ function useBindModel(defaultOptions) {
4892
4944
  function mergeModels(a, b) {
4893
4945
  if (a == null) return b;
4894
4946
  if (b == null) return a;
4895
- if (Array.isArray(a) && Array.isArray(b)) return Array.from(new Set([...a, ...b]));
4947
+ if (Array.isArray(a) && Array.isArray(b)) return [...new Set([...a, ...b])];
4896
4948
  if (typeof a === "object" && typeof b === "object") return {
4897
4949
  ...a,
4898
4950
  ...b
@@ -36,7 +36,7 @@ function startBatch() {
36
36
  }
37
37
  function flushBatchedEffects() {
38
38
  while (batchedEffects.size) {
39
- const effects = Array.from(batchedEffects);
39
+ const effects = [...batchedEffects];
40
40
  batchedEffects.clear();
41
41
  for (const ef of effects) ef();
42
42
  }
@@ -133,9 +133,9 @@ function createReactiveEffect(fn, options = {}) {
133
133
  activeEffect = effect;
134
134
  return fn();
135
135
  } finally {
136
- var _effectStack;
136
+ var _effectStack$at;
137
137
  effectStack.pop();
138
- activeEffect = (_effectStack = effectStack[effectStack.length - 1]) !== null && _effectStack !== void 0 ? _effectStack : null;
138
+ activeEffect = (_effectStack$at = effectStack.at(-1)) !== null && _effectStack$at !== void 0 ? _effectStack$at : null;
139
139
  effect._running = false;
140
140
  }
141
141
  };
@@ -462,7 +462,7 @@ const shallowHandlers = {
462
462
  return result;
463
463
  },
464
464
  deleteProperty(target, key) {
465
- const hadKey = Object.prototype.hasOwnProperty.call(target, key);
465
+ const hadKey = Object.hasOwn(target, key);
466
466
  const result = Reflect.deleteProperty(target, key);
467
467
  if (hadKey && result) {
468
468
  trigger(target, key);
@@ -546,7 +546,7 @@ function emitMutation(target, key, op) {
546
546
  kind,
547
547
  op,
548
548
  path: void 0,
549
- fallbackTopKeys: fallback.size ? Array.from(fallback) : void 0
549
+ fallbackTopKeys: fallback.size ? [...fallback] : void 0
550
550
  });
551
551
  return;
552
552
  }
@@ -628,7 +628,7 @@ const mutableHandlers = {
628
628
  return result;
629
629
  },
630
630
  deleteProperty(target, key) {
631
- const hadKey = Object.prototype.hasOwnProperty.call(target, key);
631
+ const hadKey = Object.hasOwn(target, key);
632
632
  const oldValue = hadKey ? target[key] : void 0;
633
633
  const result = Reflect.deleteProperty(target, key);
634
634
  if (hadKey && result) {
@@ -1,4 +1,4 @@
1
- import { n as isRef, r as markAsRef, v as isObject } from "./ref-BeA_Is-2.mjs";
1
+ import { n as isRef, r as markAsRef, v as isObject } from "./ref-BjmD-qct.mjs";
2
2
  //#region src/reactivity/readonly.ts
3
3
  function readonly(target) {
4
4
  if (isRef(target)) {
package/dist/router.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { d as reactive } from "./ref-BeA_Is-2.mjs";
2
- import { L as readonly, S as onShow, j as getCurrentSetupContext, l as onLoad, n as useNativeRouter$1, t as useNativePageRouter$1, v as onRouteDone } from "./router-5qgy8oOS.mjs";
1
+ import { d as reactive } from "./ref-BjmD-qct.mjs";
2
+ import { L as readonly, S as onShow, j as getCurrentSetupContext, l as onLoad, n as useNativeRouter$1, t as useNativePageRouter$1, v as onRouteDone } from "./router-CcoGUezU.mjs";
3
3
  //#region src/routerInternal/path.ts
4
4
  function normalizePathSegments(path) {
5
5
  const segments = [];
@@ -34,13 +34,15 @@ function resolvePath(path, currentPath) {
34
34
  function createAbsoluteRoutePath(path) {
35
35
  return path ? `/${path}` : "/";
36
36
  }
37
+ const DYNAMIC_ROUTE_RE = /(?:^|\/):/;
37
38
  function isDynamicRoutePath(path) {
38
- return /(?:^|\/):/.test(path);
39
+ return DYNAMIC_ROUTE_RE.test(path);
39
40
  }
40
41
  //#endregion
41
42
  //#region src/routerInternal/query.ts
43
+ const PLUS_RE = /\+/g;
42
44
  function decodeQuerySegment(value) {
43
- return decodeURIComponent(value.replace(/\+/g, " "));
45
+ return decodeURIComponent(value.replace(PLUS_RE, " "));
44
46
  }
45
47
  function encodeQuerySegment(value) {
46
48
  return encodeURIComponent(value);
@@ -190,7 +192,7 @@ function getCurrentMiniProgramPage() {
190
192
  try {
191
193
  const pages = getCurrentPagesFn();
192
194
  if (!Array.isArray(pages) || pages.length === 0) return;
193
- return pages[pages.length - 1];
195
+ return pages.at(-1);
194
196
  } catch (_unused) {
195
197
  return;
196
198
  }
@@ -203,9 +205,10 @@ function resolveCurrentRoute(queryOverride) {
203
205
  }
204
206
  //#endregion
205
207
  //#region src/routerInternal/params.ts
208
+ const PATH_PARAM_TOKEN_RE = /^:(\w+)(?:\([^)]*\))?([+*?])?$/;
206
209
  function parsePathParamToken(segment) {
207
210
  var _match$;
208
- const match = /^:(\w+)(?:\([^)]*\))?([+*?])?$/.exec(segment);
211
+ const match = PATH_PARAM_TOKEN_RE.exec(segment);
209
212
  if (!match) return;
210
213
  return {
211
214
  key: match[1],
@@ -766,6 +769,9 @@ const NavigationFailureType = {
766
769
  };
767
770
  //#endregion
768
771
  //#region src/router/navigationCore.ts
772
+ const DUPLICATED_RE = /already|same|duplicat|重复/;
773
+ const CANCELLED_RE = /cancel|取消/;
774
+ const ABORTED_RE = /abort|interrupt|中断/;
769
775
  function normalizeNavigationErrorMessage(error) {
770
776
  if (typeof error === "string") return error;
771
777
  if (error && typeof error === "object") {
@@ -777,9 +783,9 @@ function normalizeNavigationErrorMessage(error) {
777
783
  }
778
784
  function resolveNavigationFailureType(error) {
779
785
  const normalizedMessage = normalizeNavigationErrorMessage(error).toLowerCase();
780
- if (/already|same|duplicat|重复/.test(normalizedMessage)) return NavigationFailureType.duplicated;
781
- if (/cancel|取消/.test(normalizedMessage)) return NavigationFailureType.cancelled;
782
- if (/abort|interrupt|中断/.test(normalizedMessage)) return NavigationFailureType.aborted;
786
+ if (DUPLICATED_RE.test(normalizedMessage)) return NavigationFailureType.duplicated;
787
+ if (CANCELLED_RE.test(normalizedMessage)) return NavigationFailureType.cancelled;
788
+ if (ABORTED_RE.test(normalizedMessage)) return NavigationFailureType.aborted;
783
789
  return NavigationFailureType.unknown;
784
790
  }
785
791
  function createNavigationFailure(type, to, from, cause) {
@@ -1241,7 +1247,7 @@ function normalizeRouteRecordForOutput(record) {
1241
1247
  }
1242
1248
  function createRouteRegistry(namedRouteLookup) {
1243
1249
  const hasRoute = (name) => namedRouteLookup.recordByName.has(name);
1244
- const getRoutes = () => Array.from(namedRouteLookup.recordByName.values()).map(normalizeRouteRecordForOutput);
1250
+ const getRoutes = () => Array.from(namedRouteLookup.recordByName.values(), normalizeRouteRecordForOutput);
1245
1251
  const addRoute = ((parentNameOrRoute, maybeRoute) => {
1246
1252
  const route = typeof parentNameOrRoute === "string" ? maybeRoute : parentNameOrRoute;
1247
1253
  if (!route) throw new Error("Route record is required when adding a child route");
@@ -1,4 +1,4 @@
1
- import { A as track, C as effect, d as reactive, g as touchReactive, j as trigger, l as isReactive, n as isRef, r as markAsRef, y as toRaw } from "./ref-BeA_Is-2.mjs";
1
+ import { A as track, C as effect, d as reactive, g as touchReactive, j as trigger, l as isReactive, n as isRef, r as markAsRef, y as toRaw } from "./ref-BjmD-qct.mjs";
2
2
  //#region src/reactivity/computed.ts
3
3
  function computed(getterOrOptions) {
4
4
  let getter;
@@ -367,7 +367,7 @@ function createSetupStyleStore(id, setupFactory, manager) {
367
367
  }
368
368
  };
369
369
  }
370
- instance = Object.assign({}, result);
370
+ instance = { ...result };
371
371
  notify = createSafeNotifier(id, base.subs, () => instance);
372
372
  for (const key of Object.getOwnPropertyNames(base.api)) {
373
373
  const d = Object.getOwnPropertyDescriptor(base.api, key);
package/dist/store.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import { n as defineStore, r as createStore, t as storeToRefs } from "./store-DFP_p2kt.mjs";
1
+ import { n as defineStore, r as createStore, t as storeToRefs } from "./store-Ct-o7qtH.mjs";
2
2
  export { createStore, defineStore, storeToRefs };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "wevu",
3
3
  "type": "module",
4
- "version": "6.7.4",
4
+ "version": "6.7.6",
5
5
  "description": "Vue 3 风格的小程序运行时,包含响应式、diff+setData 与轻量状态管理",
6
6
  "author": "ice breaker <1324318532@qq.com>",
7
7
  "license": "MIT",
@@ -94,9 +94,9 @@
94
94
  "miniprogram-api-typings": "^5.0.0"
95
95
  },
96
96
  "dependencies": {
97
- "vue": "^3.5.29",
97
+ "vue": "^3.5.30",
98
98
  "@wevu/api": "0.2.0",
99
- "@wevu/compiler": "6.7.4"
99
+ "@wevu/compiler": "6.7.6"
100
100
  },
101
101
  "scripts": {
102
102
  "dev": "tsdown -w",
@@ -105,6 +105,7 @@
105
105
  "test": "vitest run",
106
106
  "test:dev": "vitest",
107
107
  "test:types": "tsd",
108
+ "typecheck": "tsc --noEmit",
108
109
  "release": "pnpm publish",
109
110
  "lint": "eslint .",
110
111
  "lint:fix": "eslint . --fix"