wevu 6.16.15 → 6.16.16
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/README.md +2 -0
- package/dist/dev/index.mjs +4 -4
- package/dist/dev/{ref-Bmrv8e4u.mjs → ref-DwMy6G0t.mjs} +21 -2
- package/dist/dev/ref-DwMy6G0t.mjs.map +1 -0
- package/dist/dev/{router-BFXBUz90.mjs → router-ydmXxXVD.mjs} +2 -2
- package/dist/dev/{router-BFXBUz90.mjs.map → router-ydmXxXVD.mjs.map} +1 -1
- package/dist/dev/router.mjs +2 -2
- package/dist/dev/{src-DZmrfts-.mjs → src-CZ1f7pP9.mjs} +87 -33
- package/dist/dev/src-CZ1f7pP9.mjs.map +1 -0
- package/dist/dev/{store-C0xC0EWH.mjs → store-BQxQF7rr.mjs} +2 -2
- package/dist/dev/{store-C0xC0EWH.mjs.map → store-BQxQF7rr.mjs.map} +1 -1
- package/dist/dev/store.mjs +1 -1
- package/dist/dev/vue-demi.mjs +4 -4
- package/dist/{index-BKnpWfa6.d.mts → index-0HTSCdnU.d.mts} +20 -0
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/ref-DSmyUM92.mjs +1 -0
- package/dist/{router-Cm3FUnTw.mjs → router-DDpO7cAw.mjs} +1 -1
- package/dist/router.mjs +1 -1
- package/dist/src-8TCMrasb.mjs +1 -0
- package/dist/{store-C-7rPMM3.mjs → store-hIpUo64o.mjs} +1 -1
- package/dist/store.mjs +1 -1
- package/dist/vue-demi.d.mts +1 -1
- package/dist/vue-demi.mjs +1 -1
- package/package.json +2 -2
- package/dist/dev/ref-Bmrv8e4u.mjs.map +0 -1
- package/dist/dev/src-DZmrfts-.mjs.map +0 -1
- package/dist/ref-B6CIXciv.mjs +0 -1
- package/dist/src-BErm5C86.mjs +0 -1
|
@@ -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, w as effectScope, y as toRaw } from "./ref-
|
|
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, w as effectScope, y as toRaw } from "./ref-DwMy6G0t.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/reactivity/computed.ts
|
|
4
4
|
function computed(getterOrOptions) {
|
|
@@ -515,4 +515,4 @@ function storeToRefs(store) {
|
|
|
515
515
|
|
|
516
516
|
//#endregion
|
|
517
517
|
export { computed as i, defineStore as n, createStore as r, storeToRefs as t };
|
|
518
|
-
//# sourceMappingURL=store-
|
|
518
|
+
//# sourceMappingURL=store-BQxQF7rr.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store-C0xC0EWH.mjs","names":[],"sources":["../../src/reactivity/computed.ts","../../src/store/actions.ts","../../src/store/utils.ts","../../src/store/base.ts","../../src/store/define/shared.ts","../../src/store/define/optionsStyle.ts","../../src/store/define/setupStyle.ts","../../src/store/manager.ts","../../src/store/define.ts","../../src/store/storeToRefs.ts"],"sourcesContent":["import type { ReactiveEffect } from './core'\nimport type { Ref } from './ref'\nimport { effect, track, trigger } from './core'\nimport { markAsRef } from './ref'\n\nexport type ComputedGetter<T> = () => T\nexport type ComputedSetter<T> = (value: T) => void\n\ninterface BaseComputedRef<T, S = T> extends Ref<T, S> {\n [key: symbol]: any\n}\n\nexport interface ComputedRef<T = any> extends BaseComputedRef<T> {\n readonly value: T\n}\n\nexport interface WritableComputedRef<T, S = T> extends BaseComputedRef<T, S> {\n value: T\n}\n\nexport interface WritableComputedOptions<T> {\n get: ComputedGetter<T>\n set: ComputedSetter<T>\n}\n\nexport function computed<T>(getter: ComputedGetter<T>): ComputedRef<T>\nexport function computed<T>(options: WritableComputedOptions<T>): WritableComputedRef<T>\nexport function computed<T>(\n getterOrOptions: ComputedGetter<T> | WritableComputedOptions<T>,\n): ComputedRef<T> | WritableComputedRef<T> {\n let getter: ComputedGetter<T>\n let setter: ComputedSetter<T>\n const onlyGetter = typeof getterOrOptions === 'function'\n if (onlyGetter) {\n getter = getterOrOptions as ComputedGetter<T>\n setter = () => {\n throw new Error('计算属性是只读的')\n }\n }\n else {\n getter = (getterOrOptions as WritableComputedOptions<T>).get\n setter = (getterOrOptions as WritableComputedOptions<T>).set\n }\n let value: T\n let dirty = true\n let runner: ReactiveEffect<T>\n const obj: any = {\n get value() {\n if (dirty) {\n value = runner()\n dirty = false\n }\n track(obj, 'value')\n return value\n },\n set value(newValue: T) {\n setter(newValue)\n },\n }\n markAsRef(obj)\n runner = effect(getter, {\n lazy: true,\n scheduler: () => {\n if (!dirty) {\n dirty = true\n trigger(obj, 'value')\n }\n },\n })\n return (onlyGetter ? obj as ComputedRef<T> : obj as WritableComputedRef<T>)\n}\n","import type { ActionSubscriber } from './types'\n\nexport function wrapAction<TStore extends Record<string, any>>(\n store: TStore,\n name: string,\n action: (...args: any[]) => any,\n actionSubs: Set<ActionSubscriber<TStore>>,\n) {\n return function wrapped(this: any, ...args: any[]) {\n const afterCbs: Array<(r: any) => void> = []\n const errorCbs: Array<(e: any) => void> = []\n const after = (cb: (r: any) => void) => afterCbs.push(cb)\n const onError = (cb: (e: any) => void) => errorCbs.push(cb)\n actionSubs.forEach((sub) => {\n try {\n sub({ name, store, args, after, onError })\n }\n catch {\n // 捕获订阅者回调内部的异常,避免单个监听器出错影响其他订阅和原始 action 执行链\n }\n })\n let res: any\n try {\n res = action.apply(store, args)\n }\n catch (e) {\n errorCbs.forEach(cb => cb(e))\n throw e\n }\n const finalize = (r: any) => {\n afterCbs.forEach(cb => cb(r))\n return r\n }\n if (res && typeof (res as Promise<any>).then === 'function') {\n return (res as Promise<any>).then(\n r => finalize(r),\n (e) => {\n errorCbs.forEach(cb => cb(e))\n return Promise.reject(e)\n },\n )\n }\n return finalize(res)\n }\n}\n","export function isObject(val: unknown): val is object {\n return typeof val === 'object' && val !== null\n}\n\nexport function isPlainObject(val: unknown): val is Record<string, any> {\n if (!isObject(val)) {\n return false\n }\n const proto = Object.getPrototypeOf(val)\n return proto === Object.prototype || proto === null\n}\n\nexport function mergeShallow(target: Record<string, any>, patch: Record<string, any>) {\n for (const k in patch) {\n target[k] = patch[k]\n }\n}\n\nexport function cloneDeep<T>(value: T): T {\n if (Array.isArray(value)) {\n return value.map(item => cloneDeep(item)) as T\n }\n if (isPlainObject(value)) {\n const result: Record<string, any> = {}\n for (const key in value) {\n result[key] = cloneDeep((value as any)[key])\n }\n return result as T\n }\n return value\n}\n\nexport function resetObject(target: Record<string, any>, snapshot: Record<string, any> | any[]) {\n if (Array.isArray(target) && Array.isArray(snapshot)) {\n target.length = 0\n snapshot.forEach((item, index) => {\n target[index] = cloneDeep(item)\n })\n return\n }\n if (!isObject(snapshot)) {\n return\n }\n for (const key in target) {\n if (!(key in snapshot)) {\n delete target[key]\n }\n }\n for (const key in snapshot) {\n const snapValue = (snapshot as any)[key]\n const currentValue = target[key]\n if (Array.isArray(snapValue) && Array.isArray(currentValue)) {\n resetObject(currentValue, snapValue)\n continue\n }\n if (isPlainObject(snapValue) && isPlainObject(currentValue)) {\n resetObject(currentValue, snapValue)\n continue\n }\n target[key] = cloneDeep(snapValue)\n }\n}\n","import type { ActionSubscriber, MutationType, SubscriptionCallback } from './types'\nimport { isObject, mergeShallow } from './utils'\n\nexport function createBaseApi<S extends Record<string, any>>(\n id: string,\n stateObj: S | undefined,\n notify: (type: MutationType) => void,\n resetImpl?: () => void,\n) {\n const api: any = {\n $id: id,\n }\n Object.defineProperty(api, '$state', {\n get() {\n return stateObj\n },\n set(v: any) {\n if (stateObj && isObject(v)) {\n mergeShallow(stateObj, v)\n notify('patch object')\n }\n },\n })\n api.$patch = (patch: Record<string, any> | ((state: S) => void)) => {\n if (!stateObj) {\n if (typeof patch === 'function') {\n patch(api as S)\n notify('patch function')\n }\n else {\n mergeShallow(api as any, patch)\n notify('patch object')\n }\n return\n }\n if (typeof patch === 'function') {\n patch(stateObj)\n notify('patch function')\n }\n else {\n mergeShallow(stateObj, patch)\n notify('patch object')\n }\n }\n if (resetImpl) {\n api.$reset = () => resetImpl()\n }\n const subs = new Set<SubscriptionCallback<S>>()\n api.$subscribe = (cb: SubscriptionCallback<S>, _opts?: { detached?: boolean }) => {\n subs.add(cb)\n return () => subs.delete(cb)\n }\n const actionSubs = new Set<ActionSubscriber<any>>()\n api.$onAction = (cb: ActionSubscriber<any>) => {\n actionSubs.add(cb)\n return () => actionSubs.delete(cb)\n }\n return { api, subs, actionSubs }\n}\n","import type { MutationType, SubscriptionCallback } from '../types'\nimport { isReactive, isRef, toRaw } from '../../reactivity'\nimport { cloneDeep } from '../utils'\n\nconst hasOwn = Object.prototype.hasOwnProperty\n\nexport function isTrackableRef(value: unknown) {\n return isRef(value) && hasOwn.call(value, 'dep')\n}\n\nexport function snapshotValue(value: unknown) {\n if (isReactive(value)) {\n return cloneDeep(toRaw(value as any))\n }\n if (isTrackableRef(value)) {\n return cloneDeep((value as any).value)\n }\n return cloneDeep(value)\n}\n\nexport function createSafeNotifier<S>(\n storeId: string,\n subs: Set<SubscriptionCallback<S>>,\n getState: () => S,\n) {\n let notifying = false\n return (type: MutationType) => {\n if (notifying) {\n return\n }\n notifying = true\n try {\n const state = getState()\n subs.forEach((cb) => {\n try {\n cb({ type, storeId }, state)\n }\n catch {}\n })\n }\n finally {\n notifying = false\n }\n }\n}\n","import { computed, effect, reactive, toRaw, touchReactive } from '../../reactivity'\nimport { wrapAction } from '../actions'\nimport { createBaseApi } from '../base'\nimport { cloneDeep, resetObject } from '../utils'\nimport { createSafeNotifier } from './shared'\n\nexport function createOptionsStyleStore(id: string, options: any, manager: any) {\n const rawState = options.state ? options.state() : {}\n const state = reactive(rawState)\n const initialSnapshot = cloneDeep(toRaw(rawState))\n let notify: (type: any) => void = () => {}\n const base = createBaseApi<typeof state>(id, state, t => notify(t), () => {\n resetObject(state as any, initialSnapshot)\n notify('patch object')\n })\n\n let isPatching = false\n const rawPatch = base.api.$patch\n base.api.$patch = (patch: Partial<typeof state> | ((nextState: typeof state) => void)) => {\n isPatching = true\n try {\n rawPatch(patch as any)\n }\n finally {\n isPatching = false\n }\n }\n if (typeof base.api.$reset === 'function') {\n const rawReset = base.api.$reset\n base.api.$reset = () => {\n isPatching = true\n try {\n rawReset()\n }\n finally {\n isPatching = false\n }\n }\n }\n\n notify = createSafeNotifier(id, base.subs, () => state as any)\n\n const store: Record<string, any> = {}\n for (const key of Object.getOwnPropertyNames(base.api)) {\n const d = Object.getOwnPropertyDescriptor(base.api, key)\n if (d) {\n if (key === '$state') {\n Object.defineProperty(store, key, {\n enumerable: d.enumerable,\n configurable: d.configurable,\n get() {\n return (base.api as any).$state\n },\n set(v: any) {\n isPatching = true\n try {\n ;(base.api as any).$state = v\n }\n finally {\n isPatching = false\n }\n },\n })\n }\n else {\n Object.defineProperty(store, key, d)\n }\n }\n }\n\n const getterDefs = options.getters ?? {}\n Object.keys(getterDefs).forEach((key) => {\n const getter = (getterDefs as any)[key]\n if (typeof getter === 'function') {\n const c = computed(() => getter.call(store, state))\n Object.defineProperty(store, key, {\n enumerable: true,\n configurable: true,\n get() {\n return c.value\n },\n })\n }\n })\n\n const actionDefs = options.actions ?? {}\n Object.keys(actionDefs).forEach((key) => {\n const act = (actionDefs as any)[key]\n if (typeof act === 'function') {\n const wrapped = wrapAction(store as any, key, (...args: any[]) => {\n return act.apply(store as any, args)\n }, base.actionSubs)\n store[key] = wrapped\n }\n })\n\n Object.keys(state).forEach((k) => {\n Object.defineProperty(store, k, {\n enumerable: true,\n configurable: true,\n get() {\n return (state as any)[k]\n },\n set(v: any) {\n ;(state as any)[k] = v\n },\n })\n })\n\n let initialized = false\n let dispatchingDirect = false\n effect(() => {\n touchReactive(state)\n if (!initialized) {\n initialized = true\n return\n }\n if (isPatching || dispatchingDirect) {\n return\n }\n dispatchingDirect = true\n try {\n notify('direct')\n }\n finally {\n dispatchingDirect = false\n }\n })\n\n const plugins = manager?._plugins ?? []\n for (const plugin of plugins) {\n try {\n plugin({ store })\n }\n catch {}\n }\n\n return store\n}\n","import { effect, isReactive, isRef, touchReactive } from '../../reactivity'\nimport { wrapAction } from '../actions'\nimport { createBaseApi } from '../base'\nimport { cloneDeep, resetObject } from '../utils'\nimport { createSafeNotifier, isTrackableRef, snapshotValue } from './shared'\n\nexport function createSetupStyleStore(id: string, setupFactory: () => Record<string, any>, manager: any) {\n const result = setupFactory()\n let notify: (type: any) => void = () => {}\n const initialSnapshot = new Map<string, any>()\n Object.keys(result).forEach((k) => {\n const val = (result as any)[k]\n if (typeof val === 'function' || k.startsWith('$')) {\n return\n }\n if (isRef(val) && !isTrackableRef(val)) {\n return\n }\n initialSnapshot.set(k, snapshotValue(val))\n })\n\n let instance: Record<string, any> = {}\n const resetImpl = () => {\n initialSnapshot.forEach((snapValue, key) => {\n const current = (instance as any)[key]\n if (isTrackableRef(current)) {\n current.value = cloneDeep(snapValue)\n return\n }\n if (isReactive(current)) {\n resetObject(current as any, snapValue)\n return\n }\n if (isRef(current)) {\n return\n }\n ;(instance as any)[key] = cloneDeep(snapValue)\n })\n notify('patch object')\n }\n\n const base = createBaseApi<any>(id, undefined, t => notify(t), resetImpl)\n let isPatching = false\n const rawPatch = base.api.$patch\n base.api.$patch = (patch: Record<string, any> | ((state: any) => void)) => {\n isPatching = true\n try {\n rawPatch(patch)\n }\n finally {\n isPatching = false\n }\n }\n if (typeof base.api.$reset === 'function') {\n const rawReset = base.api.$reset\n base.api.$reset = () => {\n isPatching = true\n try {\n rawReset()\n }\n finally {\n isPatching = false\n }\n }\n }\n\n instance = { ...result }\n notify = createSafeNotifier(id, base.subs, () => instance)\n\n // 将 setup 返回值与基础 API 合并,同时保留每个 getter/setter 的描述符,避免覆写访问器行为\n for (const key of Object.getOwnPropertyNames(base.api)) {\n const d = Object.getOwnPropertyDescriptor(base.api, key)\n if (d) {\n if (key === '$state') {\n Object.defineProperty(instance, key, {\n enumerable: d.enumerable,\n configurable: d.configurable,\n get() {\n return (base.api as any).$state\n },\n set(v: any) {\n isPatching = true\n try {\n ;(base.api as any).$state = v\n }\n finally {\n isPatching = false\n }\n },\n })\n }\n else {\n Object.defineProperty(instance, key, d)\n }\n }\n }\n\n const directSources: any[] = []\n Object.keys(result).forEach((k) => {\n const val = (result as any)[k]\n if (typeof val === 'function' && !k.startsWith('$')) {\n ;(instance as any)[k] = wrapAction(instance, k, val, base.actionSubs)\n return\n }\n if (isTrackableRef(val)) {\n directSources.push(val)\n return\n }\n if (isReactive(val)) {\n directSources.push(val)\n return\n }\n if (isRef(val)) {\n return\n }\n if (!k.startsWith('$')) {\n let innerValue = val\n Object.defineProperty(instance, k, {\n enumerable: true,\n configurable: true,\n get() {\n return innerValue\n },\n set(next: any) {\n innerValue = next\n if (!isPatching) {\n notify('direct')\n }\n },\n })\n }\n })\n\n let dispatchingDirect = false\n if (directSources.length > 0) {\n let initialized = false\n effect(() => {\n directSources.forEach((source) => {\n if (isTrackableRef(source)) {\n void source.value\n }\n else {\n touchReactive(source)\n }\n })\n if (!initialized) {\n initialized = true\n return\n }\n if (isPatching || dispatchingDirect) {\n return\n }\n dispatchingDirect = true\n try {\n notify('direct')\n }\n finally {\n dispatchingDirect = false\n }\n })\n }\n\n const plugins = manager?._plugins ?? []\n for (const plugin of plugins) {\n try {\n plugin({ store: instance })\n }\n catch {}\n }\n\n return instance\n}\n","import type { StoreManager } from './types'\n\n/**\n * @description 创建 store 管理器(插件与共享实例入口)\n */\nexport function createStore(): StoreManager {\n const manager: StoreManager = {\n _stores: new Map(),\n _plugins: [],\n install(_app: any) {\n // 小程序场景不需要注册全局插件入口,这里保留 API 但不执行任何操作\n },\n use(plugin: (context: { store: any }) => void) {\n if (typeof plugin === 'function') {\n manager._plugins.push(plugin)\n }\n return manager\n },\n }\n ;(createStore as any)._instance = manager\n return manager\n}\n","import type {\n ActionSubscriber,\n DefineStoreOptions,\n StoreGetters,\n StoreManager,\n StoreSubscribeOptions,\n SubscriptionCallback,\n} from './types'\nimport { effectScope } from '../reactivity'\nimport { createOptionsStyleStore } from './define/optionsStyle'\nimport { createSetupStyleStore } from './define/setupStyle'\nimport { createStore } from './manager'\n\ntype SetupDefinition<T> = () => T\n\n/**\n * @description 定义一个 setup 风格的 store\n */\nexport function defineStore<T extends Record<string, any>>(id: string, setup: SetupDefinition<T>): () => T & {\n $id: string\n $patch: (patch: Record<string, any> | ((state: any) => void)) => void\n $reset: () => void\n $subscribe: (cb: SubscriptionCallback<any>, opts?: StoreSubscribeOptions) => () => void\n $onAction: (cb: ActionSubscriber<any>) => () => void\n}\n/**\n * @description 定义一个 options 风格的 store\n */\nexport function defineStore<S extends Record<string, any>, G extends Record<string, any>, A extends Record<string, any>>(\n id: string,\n options: DefineStoreOptions<S, G, A>,\n): () => S & StoreGetters<G> & A & {\n $id: string\n $state: S\n $patch: (patch: Partial<S> | ((state: S) => void)) => void\n $reset: () => void\n $subscribe: (cb: SubscriptionCallback<S>, opts?: StoreSubscribeOptions) => () => void\n $onAction: (cb: ActionSubscriber<S & StoreGetters<G> & A>) => () => void\n}\nexport function defineStore(id: string, setupOrOptions: any) {\n let instance: any\n let created = false\n const manager = (createStore as any)._instance as StoreManager | undefined\n\n return function useStore(): any {\n if (created && instance) {\n return instance\n }\n created = true\n\n const storeScope = effectScope(true)\n instance = storeScope.run(() => {\n return typeof setupOrOptions === 'function'\n ? createSetupStyleStore(id, setupOrOptions, manager)\n : createOptionsStyleStore(id, setupOrOptions as DefineStoreOptions<any, any, any>, manager)\n })\n\n return instance\n }\n}\n","import type { Ref } from '../reactivity'\nimport { computed, isRef } from '../reactivity'\n\n/**\n * @description storeToRefs 返回类型推导\n */\nexport type StoreToRefsResult<T extends Record<string, any>> = {\n [K in keyof T]:\n T[K] extends (...args: any[]) => any\n ? T[K]\n : T[K] extends Ref<infer V>\n ? Ref<V>\n : Ref<T[K]>\n}\n\n/**\n * @description 将 store 状态转换为 Ref\n */\nexport function storeToRefs<T extends Record<string, any>>(store: T): StoreToRefsResult<T> {\n const result: Record<string, any> = {}\n for (const key in store) {\n const value = (store as any)[key]\n if (typeof value === 'function') {\n result[key] = value\n continue\n }\n if (isRef(value)) {\n result[key] = value\n }\n else {\n result[key] = computed({\n get: () => (store as any)[key],\n set: (v: any) => {\n ;(store as any)[key] = v\n },\n })\n }\n }\n return result as StoreToRefsResult<T>\n}\n"],"mappings":";;;AA2BA,SAAgB,SACd,iBACyC;CACzC,IAAI;CACJ,IAAI;CACJ,MAAM,aAAa,OAAO,oBAAoB;CAC9C,IAAI,YAAY;EACd,SAAS;EACT,eAAe;GACb,MAAM,IAAI,MAAM,UAAU;EAC5B;CACF,OACK;EACH,SAAU,gBAA+C;EACzD,SAAU,gBAA+C;CAC3D;CACA,IAAI;CACJ,IAAI,QAAQ;CACZ,IAAI;CACJ,MAAM,MAAW;EACf,IAAI,QAAQ;GACV,IAAI,OAAO;IACT,QAAQ,OAAO;IACf,QAAQ;GACV;GACA,MAAM,KAAK,OAAO;GAClB,OAAO;EACT;EACA,IAAI,MAAM,UAAa;GACrB,OAAO,QAAQ;EACjB;CACF;CACA,UAAU,GAAG;CACb,SAAS,OAAO,QAAQ;EACtB,MAAM;EACN,iBAAiB;GACf,IAAI,CAAC,OAAO;IACV,QAAQ;IACR,QAAQ,KAAK,OAAO;GACtB;EACF;CACF,CAAC;CACD,OAAQ,aAAa,MAAwB;AAC/C;;;;ACpEA,SAAgB,WACd,OACA,MACA,QACA,YACA;CACA,OAAO,SAAS,QAAmB,GAAG,MAAa;EACjD,MAAM,WAAoC,CAAC;EAC3C,MAAM,WAAoC,CAAC;EAC3C,MAAM,SAAS,OAAyB,SAAS,KAAK,EAAE;EACxD,MAAM,WAAW,OAAyB,SAAS,KAAK,EAAE;EAC1D,WAAW,SAAS,QAAQ;GAC1B,IAAI;IACF,IAAI;KAAE;KAAM;KAAO;KAAM;KAAO;IAAQ,CAAC;GAC3C,kBACM,CAEN;EACF,CAAC;EACD,IAAI;EACJ,IAAI;GACF,MAAM,OAAO,MAAM,OAAO,IAAI;EAChC,SACO,GAAG;GACR,SAAS,SAAQ,OAAM,GAAG,CAAC,CAAC;GAC5B,MAAM;EACR;EACA,MAAM,YAAY,MAAW;GAC3B,SAAS,SAAQ,OAAM,GAAG,CAAC,CAAC;GAC5B,OAAO;EACT;EACA,IAAI,OAAO,OAAQ,IAAqB,SAAS,YAC/C,OAAQ,IAAqB,MAC3B,MAAK,SAAS,CAAC,IACd,MAAM;GACL,SAAS,SAAQ,OAAM,GAAG,CAAC,CAAC;GAC5B,OAAO,QAAQ,OAAO,CAAC;EACzB,CACF;EAEF,OAAO,SAAS,GAAG;CACrB;AACF;;;;AC5CA,SAAgB,SAAS,KAA6B;CACpD,OAAO,OAAO,QAAQ,YAAY,QAAQ;AAC5C;AAEA,SAAgB,cAAc,KAA0C;CACtE,IAAI,CAAC,SAAS,GAAG,GACf,OAAO;CAET,MAAM,QAAQ,OAAO,eAAe,GAAG;CACvC,OAAO,UAAU,OAAO,aAAa,UAAU;AACjD;AAEA,SAAgB,aAAa,QAA6B,OAA4B;CACpF,KAAK,MAAM,KAAK,OACd,OAAO,KAAK,MAAM;AAEtB;AAEA,SAAgB,UAAa,OAAa;CACxC,IAAI,MAAM,QAAQ,KAAK,GACrB,OAAO,MAAM,KAAI,SAAQ,UAAU,IAAI,CAAC;CAE1C,IAAI,cAAc,KAAK,GAAG;EACxB,MAAM,SAA8B,CAAC;EACrC,KAAK,MAAM,OAAO,OAChB,OAAO,OAAO,UAAW,MAAc,IAAI;EAE7C,OAAO;CACT;CACA,OAAO;AACT;AAEA,SAAgB,YAAY,QAA6B,UAAuC;CAC9F,IAAI,MAAM,QAAQ,MAAM,KAAK,MAAM,QAAQ,QAAQ,GAAG;EACpD,OAAO,SAAS;EAChB,SAAS,SAAS,MAAM,UAAU;GAChC,OAAO,SAAS,UAAU,IAAI;EAChC,CAAC;EACD;CACF;CACA,IAAI,CAAC,SAAS,QAAQ,GACpB;CAEF,KAAK,MAAM,OAAO,QAChB,IAAI,EAAE,OAAO,WACX,OAAO,OAAO;CAGlB,KAAK,MAAM,OAAO,UAAU;EAC1B,MAAM,YAAa,SAAiB;EACpC,MAAM,eAAe,OAAO;EAC5B,IAAI,MAAM,QAAQ,SAAS,KAAK,MAAM,QAAQ,YAAY,GAAG;GAC3D,YAAY,cAAc,SAAS;GACnC;EACF;EACA,IAAI,cAAc,SAAS,KAAK,cAAc,YAAY,GAAG;GAC3D,YAAY,cAAc,SAAS;GACnC;EACF;EACA,OAAO,OAAO,UAAU,SAAS;CACnC;AACF;;;;AC1DA,SAAgB,cACd,IACA,UACA,QACA,WACA;CACA,MAAM,MAAW,EACf,KAAK,GACP;CACA,OAAO,eAAe,KAAK,UAAU;EACnC,MAAM;GACJ,OAAO;EACT;EACA,IAAI,GAAQ;GACV,IAAI,YAAY,SAAS,CAAC,GAAG;IAC3B,aAAa,UAAU,CAAC;IACxB,OAAO,cAAc;GACvB;EACF;CACF,CAAC;CACD,IAAI,UAAU,UAAsD;EAClE,IAAI,CAAC,UAAU;GACb,IAAI,OAAO,UAAU,YAAY;IAC/B,MAAM,GAAQ;IACd,OAAO,gBAAgB;GACzB,OACK;IACH,aAAa,KAAY,KAAK;IAC9B,OAAO,cAAc;GACvB;GACA;EACF;EACA,IAAI,OAAO,UAAU,YAAY;GAC/B,MAAM,QAAQ;GACd,OAAO,gBAAgB;EACzB,OACK;GACH,aAAa,UAAU,KAAK;GAC5B,OAAO,cAAc;EACvB;CACF;CACA,IAAI,WACF,IAAI,eAAe,UAAU;CAE/B,MAAM,uBAAO,IAAI,IAA6B;CAC9C,IAAI,cAAc,IAA6B,UAAmC;EAChF,KAAK,IAAI,EAAE;EACX,aAAa,KAAK,OAAO,EAAE;CAC7B;CACA,MAAM,6BAAa,IAAI,IAA2B;CAClD,IAAI,aAAa,OAA8B;EAC7C,WAAW,IAAI,EAAE;EACjB,aAAa,WAAW,OAAO,EAAE;CACnC;CACA,OAAO;EAAE;EAAK;EAAM;CAAW;AACjC;;;;ACtDA,MAAM,SAAS,OAAO,UAAU;AAEhC,SAAgB,eAAe,OAAgB;CAC7C,OAAO,MAAM,KAAK,KAAK,OAAO,KAAK,OAAO,KAAK;AACjD;AAEA,SAAgB,cAAc,OAAgB;CAC5C,IAAI,WAAW,KAAK,GAClB,OAAO,UAAU,MAAM,KAAY,CAAC;CAEtC,IAAI,eAAe,KAAK,GACtB,OAAO,UAAW,MAAc,KAAK;CAEvC,OAAO,UAAU,KAAK;AACxB;AAEA,SAAgB,mBACd,SACA,MACA,UACA;CACA,IAAI,YAAY;CAChB,QAAQ,SAAuB;EAC7B,IAAI,WACF;EAEF,YAAY;EACZ,IAAI;GACF,MAAM,QAAQ,SAAS;GACvB,KAAK,SAAS,OAAO;IACnB,IAAI;KACF,GAAG;MAAE;MAAM;KAAQ,GAAG,KAAK;IAC7B,kBACM,CAAC;GACT,CAAC;EACH,UACQ;GACN,YAAY;EACd;CACF;AACF;;;;ACtCA,SAAgB,wBAAwB,IAAY,SAAc,SAAc;;CAC9E,MAAM,WAAW,QAAQ,QAAQ,QAAQ,MAAM,IAAI,CAAC;CACpD,MAAM,QAAQ,SAAS,QAAQ;CAC/B,MAAM,kBAAkB,UAAU,MAAM,QAAQ,CAAC;CACjD,IAAI,eAAoC,CAAC;CACzC,MAAM,OAAO,cAA4B,IAAI,QAAO,MAAK,OAAO,CAAC,SAAS;EACxE,YAAY,OAAc,eAAe;EACzC,OAAO,cAAc;CACvB,CAAC;CAED,IAAI,aAAa;CACjB,MAAM,WAAW,KAAK,IAAI;CAC1B,KAAK,IAAI,UAAU,UAAuE;EACxF,aAAa;EACb,IAAI;GACF,SAAS,KAAY;EACvB,UACQ;GACN,aAAa;EACf;CACF;CACA,IAAI,OAAO,KAAK,IAAI,WAAW,YAAY;EACzC,MAAM,WAAW,KAAK,IAAI;EAC1B,KAAK,IAAI,eAAe;GACtB,aAAa;GACb,IAAI;IACF,SAAS;GACX,UACQ;IACN,aAAa;GACf;EACF;CACF;CAEA,SAAS,mBAAmB,IAAI,KAAK,YAAY,KAAY;CAE7D,MAAM,QAA6B,CAAC;CACpC,KAAK,MAAM,OAAO,OAAO,oBAAoB,KAAK,GAAG,GAAG;EACtD,MAAM,IAAI,OAAO,yBAAyB,KAAK,KAAK,GAAG;EACvD,IAAI,GACF,IAAI,QAAQ,UACV,OAAO,eAAe,OAAO,KAAK;GAChC,YAAY,EAAE;GACd,cAAc,EAAE;GAChB,MAAM;IACJ,OAAQ,KAAK,IAAY;GAC3B;GACA,IAAI,GAAQ;IACV,aAAa;IACb,IAAI;KACD,AAAC,KAAK,IAAY,SAAS;IAC9B,UACQ;KACN,aAAa;IACf;GACF;EACF,CAAC;OAGD,OAAO,eAAe,OAAO,KAAK,CAAC;CAGzC;CAEA,MAAM,iCAAa,QAAQ,sEAAW,CAAC;CACvC,OAAO,KAAK,UAAU,EAAE,SAAS,QAAQ;EACvC,MAAM,SAAU,WAAmB;EACnC,IAAI,OAAO,WAAW,YAAY;GAChC,MAAM,IAAI,eAAe,OAAO,KAAK,OAAO,KAAK,CAAC;GAClD,OAAO,eAAe,OAAO,KAAK;IAChC,YAAY;IACZ,cAAc;IACd,MAAM;KACJ,OAAO,EAAE;IACX;GACF,CAAC;EACH;CACF,CAAC;CAED,MAAM,iCAAa,QAAQ,sEAAW,CAAC;CACvC,OAAO,KAAK,UAAU,EAAE,SAAS,QAAQ;EACvC,MAAM,MAAO,WAAmB;EAChC,IAAI,OAAO,QAAQ,YAIjB,MAAM,OAHU,WAAW,OAAc,MAAM,GAAG,SAAgB;GAChE,OAAO,IAAI,MAAM,OAAc,IAAI;EACrC,GAAG,KAAK,UACW;CAEvB,CAAC;CAED,OAAO,KAAK,KAAK,EAAE,SAAS,MAAM;EAChC,OAAO,eAAe,OAAO,GAAG;GAC9B,YAAY;GACZ,cAAc;GACd,MAAM;IACJ,OAAQ,MAAc;GACxB;GACA,IAAI,GAAQ;IACT,AAAC,MAAc,KAAK;GACvB;EACF,CAAC;CACH,CAAC;CAED,IAAI,cAAc;CAClB,IAAI,oBAAoB;CACxB,aAAa;EACX,cAAc,KAAK;EACnB,IAAI,CAAC,aAAa;GAChB,cAAc;GACd;EACF;EACA,IAAI,cAAc,mBAChB;EAEF,oBAAoB;EACpB,IAAI;GACF,OAAO,QAAQ;EACjB,UACQ;GACN,oBAAoB;EACtB;CACF,CAAC;CAED,MAAM,iFAAU,QAAS,yEAAY,CAAC;CACtC,KAAK,MAAM,UAAU,SACnB,IAAI;EACF,OAAO,EAAE,MAAM,CAAC;CAClB,kBACM,CAAC;CAGT,OAAO;AACT;;;;ACpIA,SAAgB,sBAAsB,IAAY,cAAyC,SAAc;;CACvG,MAAM,SAAS,aAAa;CAC5B,IAAI,eAAoC,CAAC;CACzC,MAAM,kCAAkB,IAAI,IAAiB;CAC7C,OAAO,KAAK,MAAM,EAAE,SAAS,MAAM;EACjC,MAAM,MAAO,OAAe;EAC5B,IAAI,OAAO,QAAQ,cAAc,EAAE,WAAW,GAAG,GAC/C;EAEF,IAAI,MAAM,GAAG,KAAK,CAAC,eAAe,GAAG,GACnC;EAEF,gBAAgB,IAAI,GAAG,cAAc,GAAG,CAAC;CAC3C,CAAC;CAED,IAAI,WAAgC,CAAC;CACrC,MAAM,kBAAkB;EACtB,gBAAgB,SAAS,WAAW,QAAQ;GAC1C,MAAM,UAAW,SAAiB;GAClC,IAAI,eAAe,OAAO,GAAG;IAC3B,QAAQ,QAAQ,UAAU,SAAS;IACnC;GACF;GACA,IAAI,WAAW,OAAO,GAAG;IACvB,YAAY,SAAgB,SAAS;IACrC;GACF;GACA,IAAI,MAAM,OAAO,GACf;GAED,AAAC,SAAiB,OAAO,UAAU,SAAS;EAC/C,CAAC;EACD,OAAO,cAAc;CACvB;CAEA,MAAM,OAAO,cAAmB,IAAI,SAAW,MAAK,OAAO,CAAC,GAAG,SAAS;CACxE,IAAI,aAAa;CACjB,MAAM,WAAW,KAAK,IAAI;CAC1B,KAAK,IAAI,UAAU,UAAwD;EACzE,aAAa;EACb,IAAI;GACF,SAAS,KAAK;EAChB,UACQ;GACN,aAAa;EACf;CACF;CACA,IAAI,OAAO,KAAK,IAAI,WAAW,YAAY;EACzC,MAAM,WAAW,KAAK,IAAI;EAC1B,KAAK,IAAI,eAAe;GACtB,aAAa;GACb,IAAI;IACF,SAAS;GACX,UACQ;IACN,aAAa;GACf;EACF;CACF;CAEA,WAAW,EAAE,GAAG,OAAO;CACvB,SAAS,mBAAmB,IAAI,KAAK,YAAY,QAAQ;CAGzD,KAAK,MAAM,OAAO,OAAO,oBAAoB,KAAK,GAAG,GAAG;EACtD,MAAM,IAAI,OAAO,yBAAyB,KAAK,KAAK,GAAG;EACvD,IAAI,GACF,IAAI,QAAQ,UACV,OAAO,eAAe,UAAU,KAAK;GACnC,YAAY,EAAE;GACd,cAAc,EAAE;GAChB,MAAM;IACJ,OAAQ,KAAK,IAAY;GAC3B;GACA,IAAI,GAAQ;IACV,aAAa;IACb,IAAI;KACD,AAAC,KAAK,IAAY,SAAS;IAC9B,UACQ;KACN,aAAa;IACf;GACF;EACF,CAAC;OAGD,OAAO,eAAe,UAAU,KAAK,CAAC;CAG5C;CAEA,MAAM,gBAAuB,CAAC;CAC9B,OAAO,KAAK,MAAM,EAAE,SAAS,MAAM;EACjC,MAAM,MAAO,OAAe;EAC5B,IAAI,OAAO,QAAQ,cAAc,CAAC,EAAE,WAAW,GAAG,GAAG;GAClD,AAAC,SAAiB,KAAK,WAAW,UAAU,GAAG,KAAK,KAAK,UAAU;GACpE;EACF;EACA,IAAI,eAAe,GAAG,GAAG;GACvB,cAAc,KAAK,GAAG;GACtB;EACF;EACA,IAAI,WAAW,GAAG,GAAG;GACnB,cAAc,KAAK,GAAG;GACtB;EACF;EACA,IAAI,MAAM,GAAG,GACX;EAEF,IAAI,CAAC,EAAE,WAAW,GAAG,GAAG;GACtB,IAAI,aAAa;GACjB,OAAO,eAAe,UAAU,GAAG;IACjC,YAAY;IACZ,cAAc;IACd,MAAM;KACJ,OAAO;IACT;IACA,IAAI,MAAW;KACb,aAAa;KACb,IAAI,CAAC,YACH,OAAO,QAAQ;IAEnB;GACF,CAAC;EACH;CACF,CAAC;CAED,IAAI,oBAAoB;CACxB,IAAI,cAAc,SAAS,GAAG;EAC5B,IAAI,cAAc;EAClB,aAAa;GACX,cAAc,SAAS,WAAW;IAChC,IAAI,eAAe,MAAM,GACvB,AAAK,OAAO;SAGZ,cAAc,MAAM;GAExB,CAAC;GACD,IAAI,CAAC,aAAa;IAChB,cAAc;IACd;GACF;GACA,IAAI,cAAc,mBAChB;GAEF,oBAAoB;GACpB,IAAI;IACF,OAAO,QAAQ;GACjB,UACQ;IACN,oBAAoB;GACtB;EACF,CAAC;CACH;CAEA,MAAM,iFAAU,QAAS,yEAAY,CAAC;CACtC,KAAK,MAAM,UAAU,SACnB,IAAI;EACF,OAAO,EAAE,OAAO,SAAS,CAAC;CAC5B,kBACM,CAAC;CAGT,OAAO;AACT;;;;;;;ACtKA,SAAgB,cAA4B;CAC1C,MAAM,UAAwB;EAC5B,yBAAS,IAAI,IAAI;EACjB,UAAU,CAAC;EACX,QAAQ,MAAW,CAEnB;EACA,IAAI,QAA2C;GAC7C,IAAI,OAAO,WAAW,YACpB,QAAQ,SAAS,KAAK,MAAM;GAE9B,OAAO;EACT;CACF;CACC,AAAC,YAAoB,YAAY;CAClC,OAAO;AACT;;;;ACkBA,SAAgB,YAAY,IAAY,gBAAqB;CAC3D,IAAI;CACJ,IAAI,UAAU;CACd,MAAM,UAAW,YAAoB;CAErC,OAAO,SAAS,WAAgB;EAC9B,IAAI,WAAW,UACb,OAAO;EAET,UAAU;EAGV,WADmB,YAAY,IACX,EAAE,UAAU;GAC9B,OAAO,OAAO,mBAAmB,aAC7B,sBAAsB,IAAI,gBAAgB,OAAO,IACjD,wBAAwB,IAAI,gBAAqD,OAAO;EAC9F,CAAC;EAED,OAAO;CACT;AACF;;;;;;;ACzCA,SAAgB,YAA2C,OAAgC;CACzF,MAAM,SAA8B,CAAC;CACrC,KAAK,MAAM,OAAO,OAAO;EACvB,MAAM,QAAS,MAAc;EAC7B,IAAI,OAAO,UAAU,YAAY;GAC/B,OAAO,OAAO;GACd;EACF;EACA,IAAI,MAAM,KAAK,GACb,OAAO,OAAO;OAGd,OAAO,OAAO,SAAS;GACrB,WAAY,MAAc;GAC1B,MAAM,MAAW;IACd,AAAC,MAAc,OAAO;GACzB;EACF,CAAC;CAEL;CACA,OAAO;AACT"}
|
|
1
|
+
{"version":3,"file":"store-BQxQF7rr.mjs","names":[],"sources":["../../src/reactivity/computed.ts","../../src/store/actions.ts","../../src/store/utils.ts","../../src/store/base.ts","../../src/store/define/shared.ts","../../src/store/define/optionsStyle.ts","../../src/store/define/setupStyle.ts","../../src/store/manager.ts","../../src/store/define.ts","../../src/store/storeToRefs.ts"],"sourcesContent":["import type { ReactiveEffect } from './core'\nimport type { Ref } from './ref'\nimport { effect, track, trigger } from './core'\nimport { markAsRef } from './ref'\n\nexport type ComputedGetter<T> = () => T\nexport type ComputedSetter<T> = (value: T) => void\n\ninterface BaseComputedRef<T, S = T> extends Ref<T, S> {\n [key: symbol]: any\n}\n\nexport interface ComputedRef<T = any> extends BaseComputedRef<T> {\n readonly value: T\n}\n\nexport interface WritableComputedRef<T, S = T> extends BaseComputedRef<T, S> {\n value: T\n}\n\nexport interface WritableComputedOptions<T> {\n get: ComputedGetter<T>\n set: ComputedSetter<T>\n}\n\nexport function computed<T>(getter: ComputedGetter<T>): ComputedRef<T>\nexport function computed<T>(options: WritableComputedOptions<T>): WritableComputedRef<T>\nexport function computed<T>(\n getterOrOptions: ComputedGetter<T> | WritableComputedOptions<T>,\n): ComputedRef<T> | WritableComputedRef<T> {\n let getter: ComputedGetter<T>\n let setter: ComputedSetter<T>\n const onlyGetter = typeof getterOrOptions === 'function'\n if (onlyGetter) {\n getter = getterOrOptions as ComputedGetter<T>\n setter = () => {\n throw new Error('计算属性是只读的')\n }\n }\n else {\n getter = (getterOrOptions as WritableComputedOptions<T>).get\n setter = (getterOrOptions as WritableComputedOptions<T>).set\n }\n let value: T\n let dirty = true\n let runner: ReactiveEffect<T>\n const obj: any = {\n get value() {\n if (dirty) {\n value = runner()\n dirty = false\n }\n track(obj, 'value')\n return value\n },\n set value(newValue: T) {\n setter(newValue)\n },\n }\n markAsRef(obj)\n runner = effect(getter, {\n lazy: true,\n scheduler: () => {\n if (!dirty) {\n dirty = true\n trigger(obj, 'value')\n }\n },\n })\n return (onlyGetter ? obj as ComputedRef<T> : obj as WritableComputedRef<T>)\n}\n","import type { ActionSubscriber } from './types'\n\nexport function wrapAction<TStore extends Record<string, any>>(\n store: TStore,\n name: string,\n action: (...args: any[]) => any,\n actionSubs: Set<ActionSubscriber<TStore>>,\n) {\n return function wrapped(this: any, ...args: any[]) {\n const afterCbs: Array<(r: any) => void> = []\n const errorCbs: Array<(e: any) => void> = []\n const after = (cb: (r: any) => void) => afterCbs.push(cb)\n const onError = (cb: (e: any) => void) => errorCbs.push(cb)\n actionSubs.forEach((sub) => {\n try {\n sub({ name, store, args, after, onError })\n }\n catch {\n // 捕获订阅者回调内部的异常,避免单个监听器出错影响其他订阅和原始 action 执行链\n }\n })\n let res: any\n try {\n res = action.apply(store, args)\n }\n catch (e) {\n errorCbs.forEach(cb => cb(e))\n throw e\n }\n const finalize = (r: any) => {\n afterCbs.forEach(cb => cb(r))\n return r\n }\n if (res && typeof (res as Promise<any>).then === 'function') {\n return (res as Promise<any>).then(\n r => finalize(r),\n (e) => {\n errorCbs.forEach(cb => cb(e))\n return Promise.reject(e)\n },\n )\n }\n return finalize(res)\n }\n}\n","export function isObject(val: unknown): val is object {\n return typeof val === 'object' && val !== null\n}\n\nexport function isPlainObject(val: unknown): val is Record<string, any> {\n if (!isObject(val)) {\n return false\n }\n const proto = Object.getPrototypeOf(val)\n return proto === Object.prototype || proto === null\n}\n\nexport function mergeShallow(target: Record<string, any>, patch: Record<string, any>) {\n for (const k in patch) {\n target[k] = patch[k]\n }\n}\n\nexport function cloneDeep<T>(value: T): T {\n if (Array.isArray(value)) {\n return value.map(item => cloneDeep(item)) as T\n }\n if (isPlainObject(value)) {\n const result: Record<string, any> = {}\n for (const key in value) {\n result[key] = cloneDeep((value as any)[key])\n }\n return result as T\n }\n return value\n}\n\nexport function resetObject(target: Record<string, any>, snapshot: Record<string, any> | any[]) {\n if (Array.isArray(target) && Array.isArray(snapshot)) {\n target.length = 0\n snapshot.forEach((item, index) => {\n target[index] = cloneDeep(item)\n })\n return\n }\n if (!isObject(snapshot)) {\n return\n }\n for (const key in target) {\n if (!(key in snapshot)) {\n delete target[key]\n }\n }\n for (const key in snapshot) {\n const snapValue = (snapshot as any)[key]\n const currentValue = target[key]\n if (Array.isArray(snapValue) && Array.isArray(currentValue)) {\n resetObject(currentValue, snapValue)\n continue\n }\n if (isPlainObject(snapValue) && isPlainObject(currentValue)) {\n resetObject(currentValue, snapValue)\n continue\n }\n target[key] = cloneDeep(snapValue)\n }\n}\n","import type { ActionSubscriber, MutationType, SubscriptionCallback } from './types'\nimport { isObject, mergeShallow } from './utils'\n\nexport function createBaseApi<S extends Record<string, any>>(\n id: string,\n stateObj: S | undefined,\n notify: (type: MutationType) => void,\n resetImpl?: () => void,\n) {\n const api: any = {\n $id: id,\n }\n Object.defineProperty(api, '$state', {\n get() {\n return stateObj\n },\n set(v: any) {\n if (stateObj && isObject(v)) {\n mergeShallow(stateObj, v)\n notify('patch object')\n }\n },\n })\n api.$patch = (patch: Record<string, any> | ((state: S) => void)) => {\n if (!stateObj) {\n if (typeof patch === 'function') {\n patch(api as S)\n notify('patch function')\n }\n else {\n mergeShallow(api as any, patch)\n notify('patch object')\n }\n return\n }\n if (typeof patch === 'function') {\n patch(stateObj)\n notify('patch function')\n }\n else {\n mergeShallow(stateObj, patch)\n notify('patch object')\n }\n }\n if (resetImpl) {\n api.$reset = () => resetImpl()\n }\n const subs = new Set<SubscriptionCallback<S>>()\n api.$subscribe = (cb: SubscriptionCallback<S>, _opts?: { detached?: boolean }) => {\n subs.add(cb)\n return () => subs.delete(cb)\n }\n const actionSubs = new Set<ActionSubscriber<any>>()\n api.$onAction = (cb: ActionSubscriber<any>) => {\n actionSubs.add(cb)\n return () => actionSubs.delete(cb)\n }\n return { api, subs, actionSubs }\n}\n","import type { MutationType, SubscriptionCallback } from '../types'\nimport { isReactive, isRef, toRaw } from '../../reactivity'\nimport { cloneDeep } from '../utils'\n\nconst hasOwn = Object.prototype.hasOwnProperty\n\nexport function isTrackableRef(value: unknown) {\n return isRef(value) && hasOwn.call(value, 'dep')\n}\n\nexport function snapshotValue(value: unknown) {\n if (isReactive(value)) {\n return cloneDeep(toRaw(value as any))\n }\n if (isTrackableRef(value)) {\n return cloneDeep((value as any).value)\n }\n return cloneDeep(value)\n}\n\nexport function createSafeNotifier<S>(\n storeId: string,\n subs: Set<SubscriptionCallback<S>>,\n getState: () => S,\n) {\n let notifying = false\n return (type: MutationType) => {\n if (notifying) {\n return\n }\n notifying = true\n try {\n const state = getState()\n subs.forEach((cb) => {\n try {\n cb({ type, storeId }, state)\n }\n catch {}\n })\n }\n finally {\n notifying = false\n }\n }\n}\n","import { computed, effect, reactive, toRaw, touchReactive } from '../../reactivity'\nimport { wrapAction } from '../actions'\nimport { createBaseApi } from '../base'\nimport { cloneDeep, resetObject } from '../utils'\nimport { createSafeNotifier } from './shared'\n\nexport function createOptionsStyleStore(id: string, options: any, manager: any) {\n const rawState = options.state ? options.state() : {}\n const state = reactive(rawState)\n const initialSnapshot = cloneDeep(toRaw(rawState))\n let notify: (type: any) => void = () => {}\n const base = createBaseApi<typeof state>(id, state, t => notify(t), () => {\n resetObject(state as any, initialSnapshot)\n notify('patch object')\n })\n\n let isPatching = false\n const rawPatch = base.api.$patch\n base.api.$patch = (patch: Partial<typeof state> | ((nextState: typeof state) => void)) => {\n isPatching = true\n try {\n rawPatch(patch as any)\n }\n finally {\n isPatching = false\n }\n }\n if (typeof base.api.$reset === 'function') {\n const rawReset = base.api.$reset\n base.api.$reset = () => {\n isPatching = true\n try {\n rawReset()\n }\n finally {\n isPatching = false\n }\n }\n }\n\n notify = createSafeNotifier(id, base.subs, () => state as any)\n\n const store: Record<string, any> = {}\n for (const key of Object.getOwnPropertyNames(base.api)) {\n const d = Object.getOwnPropertyDescriptor(base.api, key)\n if (d) {\n if (key === '$state') {\n Object.defineProperty(store, key, {\n enumerable: d.enumerable,\n configurable: d.configurable,\n get() {\n return (base.api as any).$state\n },\n set(v: any) {\n isPatching = true\n try {\n ;(base.api as any).$state = v\n }\n finally {\n isPatching = false\n }\n },\n })\n }\n else {\n Object.defineProperty(store, key, d)\n }\n }\n }\n\n const getterDefs = options.getters ?? {}\n Object.keys(getterDefs).forEach((key) => {\n const getter = (getterDefs as any)[key]\n if (typeof getter === 'function') {\n const c = computed(() => getter.call(store, state))\n Object.defineProperty(store, key, {\n enumerable: true,\n configurable: true,\n get() {\n return c.value\n },\n })\n }\n })\n\n const actionDefs = options.actions ?? {}\n Object.keys(actionDefs).forEach((key) => {\n const act = (actionDefs as any)[key]\n if (typeof act === 'function') {\n const wrapped = wrapAction(store as any, key, (...args: any[]) => {\n return act.apply(store as any, args)\n }, base.actionSubs)\n store[key] = wrapped\n }\n })\n\n Object.keys(state).forEach((k) => {\n Object.defineProperty(store, k, {\n enumerable: true,\n configurable: true,\n get() {\n return (state as any)[k]\n },\n set(v: any) {\n ;(state as any)[k] = v\n },\n })\n })\n\n let initialized = false\n let dispatchingDirect = false\n effect(() => {\n touchReactive(state)\n if (!initialized) {\n initialized = true\n return\n }\n if (isPatching || dispatchingDirect) {\n return\n }\n dispatchingDirect = true\n try {\n notify('direct')\n }\n finally {\n dispatchingDirect = false\n }\n })\n\n const plugins = manager?._plugins ?? []\n for (const plugin of plugins) {\n try {\n plugin({ store })\n }\n catch {}\n }\n\n return store\n}\n","import { effect, isReactive, isRef, touchReactive } from '../../reactivity'\nimport { wrapAction } from '../actions'\nimport { createBaseApi } from '../base'\nimport { cloneDeep, resetObject } from '../utils'\nimport { createSafeNotifier, isTrackableRef, snapshotValue } from './shared'\n\nexport function createSetupStyleStore(id: string, setupFactory: () => Record<string, any>, manager: any) {\n const result = setupFactory()\n let notify: (type: any) => void = () => {}\n const initialSnapshot = new Map<string, any>()\n Object.keys(result).forEach((k) => {\n const val = (result as any)[k]\n if (typeof val === 'function' || k.startsWith('$')) {\n return\n }\n if (isRef(val) && !isTrackableRef(val)) {\n return\n }\n initialSnapshot.set(k, snapshotValue(val))\n })\n\n let instance: Record<string, any> = {}\n const resetImpl = () => {\n initialSnapshot.forEach((snapValue, key) => {\n const current = (instance as any)[key]\n if (isTrackableRef(current)) {\n current.value = cloneDeep(snapValue)\n return\n }\n if (isReactive(current)) {\n resetObject(current as any, snapValue)\n return\n }\n if (isRef(current)) {\n return\n }\n ;(instance as any)[key] = cloneDeep(snapValue)\n })\n notify('patch object')\n }\n\n const base = createBaseApi<any>(id, undefined, t => notify(t), resetImpl)\n let isPatching = false\n const rawPatch = base.api.$patch\n base.api.$patch = (patch: Record<string, any> | ((state: any) => void)) => {\n isPatching = true\n try {\n rawPatch(patch)\n }\n finally {\n isPatching = false\n }\n }\n if (typeof base.api.$reset === 'function') {\n const rawReset = base.api.$reset\n base.api.$reset = () => {\n isPatching = true\n try {\n rawReset()\n }\n finally {\n isPatching = false\n }\n }\n }\n\n instance = { ...result }\n notify = createSafeNotifier(id, base.subs, () => instance)\n\n // 将 setup 返回值与基础 API 合并,同时保留每个 getter/setter 的描述符,避免覆写访问器行为\n for (const key of Object.getOwnPropertyNames(base.api)) {\n const d = Object.getOwnPropertyDescriptor(base.api, key)\n if (d) {\n if (key === '$state') {\n Object.defineProperty(instance, key, {\n enumerable: d.enumerable,\n configurable: d.configurable,\n get() {\n return (base.api as any).$state\n },\n set(v: any) {\n isPatching = true\n try {\n ;(base.api as any).$state = v\n }\n finally {\n isPatching = false\n }\n },\n })\n }\n else {\n Object.defineProperty(instance, key, d)\n }\n }\n }\n\n const directSources: any[] = []\n Object.keys(result).forEach((k) => {\n const val = (result as any)[k]\n if (typeof val === 'function' && !k.startsWith('$')) {\n ;(instance as any)[k] = wrapAction(instance, k, val, base.actionSubs)\n return\n }\n if (isTrackableRef(val)) {\n directSources.push(val)\n return\n }\n if (isReactive(val)) {\n directSources.push(val)\n return\n }\n if (isRef(val)) {\n return\n }\n if (!k.startsWith('$')) {\n let innerValue = val\n Object.defineProperty(instance, k, {\n enumerable: true,\n configurable: true,\n get() {\n return innerValue\n },\n set(next: any) {\n innerValue = next\n if (!isPatching) {\n notify('direct')\n }\n },\n })\n }\n })\n\n let dispatchingDirect = false\n if (directSources.length > 0) {\n let initialized = false\n effect(() => {\n directSources.forEach((source) => {\n if (isTrackableRef(source)) {\n void source.value\n }\n else {\n touchReactive(source)\n }\n })\n if (!initialized) {\n initialized = true\n return\n }\n if (isPatching || dispatchingDirect) {\n return\n }\n dispatchingDirect = true\n try {\n notify('direct')\n }\n finally {\n dispatchingDirect = false\n }\n })\n }\n\n const plugins = manager?._plugins ?? []\n for (const plugin of plugins) {\n try {\n plugin({ store: instance })\n }\n catch {}\n }\n\n return instance\n}\n","import type { StoreManager } from './types'\n\n/**\n * @description 创建 store 管理器(插件与共享实例入口)\n */\nexport function createStore(): StoreManager {\n const manager: StoreManager = {\n _stores: new Map(),\n _plugins: [],\n install(_app: any) {\n // 小程序场景不需要注册全局插件入口,这里保留 API 但不执行任何操作\n },\n use(plugin: (context: { store: any }) => void) {\n if (typeof plugin === 'function') {\n manager._plugins.push(plugin)\n }\n return manager\n },\n }\n ;(createStore as any)._instance = manager\n return manager\n}\n","import type {\n ActionSubscriber,\n DefineStoreOptions,\n StoreGetters,\n StoreManager,\n StoreSubscribeOptions,\n SubscriptionCallback,\n} from './types'\nimport { effectScope } from '../reactivity'\nimport { createOptionsStyleStore } from './define/optionsStyle'\nimport { createSetupStyleStore } from './define/setupStyle'\nimport { createStore } from './manager'\n\ntype SetupDefinition<T> = () => T\n\n/**\n * @description 定义一个 setup 风格的 store\n */\nexport function defineStore<T extends Record<string, any>>(id: string, setup: SetupDefinition<T>): () => T & {\n $id: string\n $patch: (patch: Record<string, any> | ((state: any) => void)) => void\n $reset: () => void\n $subscribe: (cb: SubscriptionCallback<any>, opts?: StoreSubscribeOptions) => () => void\n $onAction: (cb: ActionSubscriber<any>) => () => void\n}\n/**\n * @description 定义一个 options 风格的 store\n */\nexport function defineStore<S extends Record<string, any>, G extends Record<string, any>, A extends Record<string, any>>(\n id: string,\n options: DefineStoreOptions<S, G, A>,\n): () => S & StoreGetters<G> & A & {\n $id: string\n $state: S\n $patch: (patch: Partial<S> | ((state: S) => void)) => void\n $reset: () => void\n $subscribe: (cb: SubscriptionCallback<S>, opts?: StoreSubscribeOptions) => () => void\n $onAction: (cb: ActionSubscriber<S & StoreGetters<G> & A>) => () => void\n}\nexport function defineStore(id: string, setupOrOptions: any) {\n let instance: any\n let created = false\n const manager = (createStore as any)._instance as StoreManager | undefined\n\n return function useStore(): any {\n if (created && instance) {\n return instance\n }\n created = true\n\n const storeScope = effectScope(true)\n instance = storeScope.run(() => {\n return typeof setupOrOptions === 'function'\n ? createSetupStyleStore(id, setupOrOptions, manager)\n : createOptionsStyleStore(id, setupOrOptions as DefineStoreOptions<any, any, any>, manager)\n })\n\n return instance\n }\n}\n","import type { Ref } from '../reactivity'\nimport { computed, isRef } from '../reactivity'\n\n/**\n * @description storeToRefs 返回类型推导\n */\nexport type StoreToRefsResult<T extends Record<string, any>> = {\n [K in keyof T]:\n T[K] extends (...args: any[]) => any\n ? T[K]\n : T[K] extends Ref<infer V>\n ? Ref<V>\n : Ref<T[K]>\n}\n\n/**\n * @description 将 store 状态转换为 Ref\n */\nexport function storeToRefs<T extends Record<string, any>>(store: T): StoreToRefsResult<T> {\n const result: Record<string, any> = {}\n for (const key in store) {\n const value = (store as any)[key]\n if (typeof value === 'function') {\n result[key] = value\n continue\n }\n if (isRef(value)) {\n result[key] = value\n }\n else {\n result[key] = computed({\n get: () => (store as any)[key],\n set: (v: any) => {\n ;(store as any)[key] = v\n },\n })\n }\n }\n return result as StoreToRefsResult<T>\n}\n"],"mappings":"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"}
|
package/dist/dev/store.mjs
CHANGED
package/dist/dev/vue-demi.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { $ as isNoSetData, A as createApp, B as waitForLayoutHost, C as usePageStack, Ct as shallowRef, D as createWevuComponent, E as useDisposables, Et as __reExport, F as resolveLayoutHost, G as runSetupFunction, H as mountRuntimeInstance, I as unregisterPageLayoutBridge, J as syncRuntimePageLayoutState, K as resolveRuntimePageLayoutName, L as unregisterRuntimeLayoutHosts, M as registerPageLayoutBridge, N as registerRuntimeLayoutHosts, O as createWevuScopedSlotComponent, P as resolveLayoutBridge, Q as setWevuDefaults, R as useLayoutBridge, S as useNavigationBarMetrics, St as isShallowRef, T as useElementIntersectionObserver, Tt as __exportAll, U as setRuntimeSetDataVisibility, V as registerApp, W as teardownRuntimeInstance, X as usePageLayout, Y as syncRuntimePageLayoutStateFromRuntime, Z as resetWevuDefaults, _ as useSelectorQuery, _t as onUnmounted, a as useModel, at as watchSyncEffect, b as getCurrentPageStackSnapshot, bt as toRef, c as useSlots, ct as callUpdateHooks, d as useUpdatePerformanceListener, dt as onBeforeUnmount, et as markNoSetData, f as normalizeClass, ft as onBeforeUpdate, g as useSelectorFields, gt as onServerPrefetch, h as useScrollOffset, ht as onMounted, i as useChangeModel, it as watchPostEffect, j as registerComponent, k as defineComponent, l as defineAppSetup, lt as onActivated, m as useBoundingClientRect, mt as onErrorCaptured, n as mergeModels, nt as watch, o as useAttrs, ot as getDeepWatchStrategy, p as normalizeStyle, pt as onDeactivated, q as setPageLayout, r as useBindModel, rt as watchEffect, s as useNativeInstance, st as setDeepWatchStrategy, t as useTemplateRef, tt as version, u as use, ut as onBeforeMount, v as useAsyncPullDownRefresh, vt as onUpdated, w as useIntersectionObserver, wt as triggerRef, x as getNavigationBarMetrics, xt as toRefs, y as usePageScrollThrottle, yt as traverse, z as useLayoutHosts } from "./src-
|
|
2
|
-
import { C as effect, D as onScopeDispose, E as getCurrentScope, N as nextTick, O as startBatch, S as batch, T as endBatch, a as toValue, b as addMutationRecorder, c as isRaw, d as reactive, f as isShallowReactive, g as touchReactive, h as prelinkReactiveTree, i as ref, k as stop, l as isReactive, n as isRef, o as unref, p as shallowReactive, s as getReactiveVersion, t as customRef, u as markRaw, w as effectScope, x as removeMutationRecorder, y as toRaw } from "./ref-
|
|
3
|
-
import { i as computed, n as defineStore, r as createStore, t as storeToRefs } from "./store-
|
|
4
|
-
import { $ as onUnhandledRejection, A as setGlobalProvidedValue, B as onPageNotFound, F as onHide, G as onResize, H as onPullDownRefresh, I as onLaunch, J as onShareAppMessage, K as onRouteDone, L as onLoad, M as onAttached, N as onDetached, P as onError, Q as onThemeChange, R as onMemoryWarning, U as onReachBottom, V as onPageScroll, W as onReady, X as onShow, Y as onShareTimeline, Z as onTabItemTap, _ as provide, _t as readonly, at as getCurrentSetupContext, ct as setCurrentSetupContext, et as onUnload, g as injectGlobal, gt as isReadonly, h as inject, ht as isProxy, it as getCurrentInstance, j as onAddToFavorites, m as hasInjectionContext, n as useNativeRouter, nt as callHookList, q as onSaveExitState, rt as callHookReturn, st as setCurrentInstance, t as useNativePageRouter, v as provideGlobal, vt as shallowReadonly, z as onMoved } from "./router-
|
|
1
|
+
import { $ as isNoSetData, A as createApp, B as waitForLayoutHost, C as usePageStack, Ct as shallowRef, D as createWevuComponent, E as useDisposables, Et as __reExport, F as resolveLayoutHost, G as runSetupFunction, H as mountRuntimeInstance, I as unregisterPageLayoutBridge, J as syncRuntimePageLayoutState, K as resolveRuntimePageLayoutName, L as unregisterRuntimeLayoutHosts, M as registerPageLayoutBridge, N as registerRuntimeLayoutHosts, O as createWevuScopedSlotComponent, P as resolveLayoutBridge, Q as setWevuDefaults, R as useLayoutBridge, S as useNavigationBarMetrics, St as isShallowRef, T as useElementIntersectionObserver, Tt as __exportAll, U as setRuntimeSetDataVisibility, V as registerApp, W as teardownRuntimeInstance, X as usePageLayout, Y as syncRuntimePageLayoutStateFromRuntime, Z as resetWevuDefaults, _ as useSelectorQuery, _t as onUnmounted, a as useModel, at as watchSyncEffect, b as getCurrentPageStackSnapshot, bt as toRef, c as useSlots, ct as callUpdateHooks, d as useUpdatePerformanceListener, dt as onBeforeUnmount, et as markNoSetData, f as normalizeClass, ft as onBeforeUpdate, g as useSelectorFields, gt as onServerPrefetch, h as useScrollOffset, ht as onMounted, i as useChangeModel, it as watchPostEffect, j as registerComponent, k as defineComponent, l as defineAppSetup, lt as onActivated, m as useBoundingClientRect, mt as onErrorCaptured, n as mergeModels, nt as watch, o as useAttrs, ot as getDeepWatchStrategy, p as normalizeStyle, pt as onDeactivated, q as setPageLayout, r as useBindModel, rt as watchEffect, s as useNativeInstance, st as setDeepWatchStrategy, t as useTemplateRef, tt as version, u as use, ut as onBeforeMount, v as useAsyncPullDownRefresh, vt as onUpdated, w as useIntersectionObserver, wt as triggerRef, x as getNavigationBarMetrics, xt as toRefs, y as usePageScrollThrottle, yt as traverse, z as useLayoutHosts } from "./src-CZ1f7pP9.mjs";
|
|
2
|
+
import { C as effect, D as onScopeDispose, E as getCurrentScope, N as nextTick, O as startBatch, S as batch, T as endBatch, a as toValue, b as addMutationRecorder, c as isRaw, d as reactive, f as isShallowReactive, g as touchReactive, h as prelinkReactiveTree, i as ref, k as stop, l as isReactive, n as isRef, o as unref, p as shallowReactive, s as getReactiveVersion, t as customRef, u as markRaw, w as effectScope, x as removeMutationRecorder, y as toRaw } from "./ref-DwMy6G0t.mjs";
|
|
3
|
+
import { i as computed, n as defineStore, r as createStore, t as storeToRefs } from "./store-BQxQF7rr.mjs";
|
|
4
|
+
import { $ as onUnhandledRejection, A as setGlobalProvidedValue, B as onPageNotFound, F as onHide, G as onResize, H as onPullDownRefresh, I as onLaunch, J as onShareAppMessage, K as onRouteDone, L as onLoad, M as onAttached, N as onDetached, P as onError, Q as onThemeChange, R as onMemoryWarning, U as onReachBottom, V as onPageScroll, W as onReady, X as onShow, Y as onShareTimeline, Z as onTabItemTap, _ as provide, _t as readonly, at as getCurrentSetupContext, ct as setCurrentSetupContext, et as onUnload, g as injectGlobal, gt as isReadonly, h as inject, ht as isProxy, it as getCurrentInstance, j as onAddToFavorites, m as hasInjectionContext, n as useNativeRouter, nt as callHookList, q as onSaveExitState, rt as callHookReturn, st as setCurrentInstance, t as useNativePageRouter, v as provideGlobal, vt as shallowReadonly, z as onMoved } from "./router-ydmXxXVD.mjs";
|
|
5
5
|
|
|
6
6
|
export * from "@wevu/web-apis"
|
|
7
7
|
|
|
@@ -165,6 +165,18 @@ interface SetDataSnapshotOptions {
|
|
|
165
165
|
* setData 序列化上限:最多处理的对象 key 数(累计)。超过时将停止深拷贝,保留更浅层结构。
|
|
166
166
|
*/
|
|
167
167
|
toPlainMaxKeys?: number;
|
|
168
|
+
/**
|
|
169
|
+
* 是否允许函数进入 setData 快照。
|
|
170
|
+
*
|
|
171
|
+
* @internal
|
|
172
|
+
*/
|
|
173
|
+
includeFunctions?: boolean;
|
|
174
|
+
/**
|
|
175
|
+
* 允许函数进入 setData 快照的状态路径。
|
|
176
|
+
*
|
|
177
|
+
* @internal
|
|
178
|
+
*/
|
|
179
|
+
functionPaths?: string[];
|
|
168
180
|
}
|
|
169
181
|
interface SetDataDebugInfo {
|
|
170
182
|
mode: 'patch' | 'diff';
|
|
@@ -201,6 +213,14 @@ interface DefineComponentOptions<P extends ComponentPropsOptions = ComponentProp
|
|
|
201
213
|
* 适合迁移 Vue 组件或需要兼容 `undefined -> null` 传参链路的场景;默认关闭,避免影响原生 `properties` 的严格类型语义。
|
|
202
214
|
*/
|
|
203
215
|
allowNullPropInput?: boolean;
|
|
216
|
+
/**
|
|
217
|
+
* 允许函数值作为组件 prop 通过小程序 data/properties 链路传递。
|
|
218
|
+
*
|
|
219
|
+
* - `auto` / undefined:默认由 SFC 编译器精确标记模板中的函数 prop 绑定。
|
|
220
|
+
* - `true`:手写组件或动态传参场景下全量允许函数进入快照。
|
|
221
|
+
* - `false`:关闭函数 prop 快照放行。
|
|
222
|
+
*/
|
|
223
|
+
allowFunctionProps?: boolean | 'auto';
|
|
204
224
|
watch?: Record<string, any>;
|
|
205
225
|
setup?: SetupFunction<P, D, C, M, S>;
|
|
206
226
|
/**
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as MiniProgramCSSProperties, c as MiniProgramIntrinsicEventHandler, d as WeappIntrinsicElementBaseAttributes, f as WeappIntrinsicEventHandler, i as WeappIntrinsicElements, l as WeappCSSProperties, n as MiniProgramIntrinsicElements, o as MiniProgramDatasetAttributes, r as WeappHtmlAliasIntrinsicElements, s as MiniProgramIntrinsicElementBaseAttributes, t as MiniProgramHtmlAliasIntrinsicElements, u as WeappDatasetAttributes } from "./weappIntrinsicElements-Cdfh6BlL.mjs";
|
|
2
2
|
import { $ as shallowRef, $n as HostMiniProgramNodesRefFields, A as watchPostEffect, An as MiniProgramPageLifetimes, Ar as MiniProgramRuntimeHostNamespaceBySource, At as nextTick, B as WatchOptions, Bn as HostMiniProgramComponentInstance, Bt as MaybeRef, C as ExtractMethods, Cn as MiniProgramAppOptions, Cr as MiniProgramHostNamespace, Ct as effect, D as ModelBindingPayload, Dn as MiniProgramComponentPropertyValue, Dr as MiniProgramPlatformHostNamespaceBySource, Dt as onScopeDispose, E as ModelBindingOptions, En as MiniProgramComponentOptions, Er as MiniProgramHostSourceRegistry, Et as getCurrentScope, F as OnCleanup, Fn as HostMiniProgramBoundingClientRectResult, Fr as WechatMiniProgramHostNamespace, Ft as WritableComputedRef, G as WatchStopHandle, Gn as HostMiniProgramComponentTrivialInstance, Gt as isRef, H as WatchSource, Hn as HostMiniProgramComponentPropertyOption, Ht as Ref, I as WatchCallback, In as HostMiniProgramComponentAllFullProperty, Ir as WechatMiniProgramHostSourceContract, It as computed, J as traverse, Jn as HostMiniProgramIntersectionObserverOptions, Jt as unref, K as getDeepWatchStrategy, Kn as HostMiniProgramComponentTrivialOption, Kt as ref, L as WatchEffect, Ln as HostMiniProgramComponentAllProperty, Lt as CustomRefFactory, M as MapSources, Mn as HostMiniProgramAppOptions, Mr as MiniProgramRuntimeHostSourceRegistry, Mt as ComputedRef, N as MaybeUndefined, Nn as HostMiniProgramAppTrivialInstance, Nr as TtMiniProgramHostNamespace, Nt as ComputedSetter, O as watch, On as MiniProgramComponentRawOptions, Or as MiniProgramPlatformHostSourceName, Ot as startBatch, P as MultiWatchSources, Pn as HostMiniProgramBehaviorIdentifier, Pr as TtMiniProgramHostSourceContract, Pt as WritableComputedOptions, Q as isShallowRef, Qn as HostMiniProgramNodesRef, Qt as MiniProgramRouterSwitchTabOption, R as WatchEffectOptions, Rn as HostMiniProgramComponentBehaviorOptions, Rt as CustomRefOptions, S as ExtractComputed, Sn as MiniProgramAdapter, Sr as DouyinMiniProgramHostSourceContract, St as batch, T as ModelBinding, Tn as MiniProgramComponentInstance, Tr as MiniProgramHostSourceName, Tt as endBatch, U as WatchSourceValue, Un as HostMiniProgramComponentPropertyValue, Ut as ShallowRef, V as WatchScheduler, Vn as HostMiniProgramComponentMethodOption, Vt as MaybeRefOrGetter, W as WatchSources, Wn as HostMiniProgramComponentShortProperty, Wt as customRef, X as toRef, Xn as HostMiniProgramMemoryWarningResult, Xt as MiniProgramRouterReLaunchOption, Y as ToRefs, Yn as HostMiniProgramLaunchOptions, Yt as MiniProgramRouterNavigateToOption, Z as toRefs, Zn as HostMiniProgramNavigateToOption, Zt as MiniProgramRouterRedirectToOption, _ as RuntimeApp, _n as NativeTypeHint, _r as AlipayMiniProgramHostNamespace, _t as MutationOp, a as NativeComponent, ar as HostMiniProgramReLaunchOption, at as getReactiveVersion, b as ComponentPublicInstance, bn as PropOptions, br as DefaultMiniProgramHostSourceContract, bt as removeMutationRecorder, c as ShallowUnwrapRef, cn as ExtractDefaultPropTypes, cr as HostMiniProgramSaveExitState, ct as markRaw, d as SetupContext, dn as InferNativePropType, dr as HostMiniProgramShareAppMessageOption, dt as isShallowReactive, er as HostMiniProgramPageLifetime, et as triggerRef, f as SetupContextNativeInstance, fn as InferNativeProps, fr as HostMiniProgramSwitchTabOption, ft as shallowReactive, g as InternalRuntimeStateFields, gn as NativePropsOptions, gr as HostMiniProgramUnhandledRejectionResult, gt as MutationKind, h as InternalRuntimeState, hn as NativePropType, hr as HostMiniProgramTriggerEventOptions, ht as touchReactive, i as DefineComponent, ir as HostMiniProgramPageTrivialInstance, it as shallowReadonly, j as watchSyncEffect, jn as HostMiniProgramAddToFavoritesOption, jr as MiniProgramRuntimeHostSourceName, jt as ComputedGetter, k as watchEffect, kn as MiniProgramInstance, kr as MiniProgramPlatformHostSourceRegistry, kt as stop, l as VNode, ln as ExtractPropTypes, lr as HostMiniProgramScrollOffsetResult, lt as reactive, m as AppConfig, mn as InferProps, mr as HostMiniProgramThemeChangeResult, mt as prelinkReactiveTree, n as ComponentCustomProps, nr as HostMiniProgramPageResizeOption, nt as isReadonly, o as ObjectDirective, on as WevuTypedRouterRouteMap, or as HostMiniProgramRedirectToOption, ot as isRaw, p as SetupFunction, pn as InferPropType, pr as HostMiniProgramTabItemTapOption, pt as PrelinkReactiveTreeOptions, q as setDeepWatchStrategy, qn as HostMiniProgramIntersectionObserver, qt as toValue, r as ComponentOptionsMixin, rn as SetupContextRouter, rr as HostMiniProgramPageScrollOption, rt as readonly, s as PublicProps, sn as ComponentPropsOptions, sr as HostMiniProgramRouter, st as isReactive, t as AllowedComponentProps, tr as HostMiniProgramPageNotFoundOptions, tt as isProxy, u as VNodeProps, un as ExtractPublicPropTypes, ur as HostMiniProgramSelectorQuery, ut as toRaw, v as RuntimeInstance, vn as NativeTypedProperty, vr as AlipayMiniProgramHostSourceContract, vt as MutationRecord, w as MethodDefinitions, wn as MiniProgramBehaviorIdentifier, wr as MiniProgramHostNamespaceBySource, wt as effectScope, x as ComputedDefinitions, xn as PropType, xr as DouyinMiniProgramHostNamespace, xt as EffectScope, y as WevuPlugin, yn as PropConstructor, yr as DefaultMiniProgramHostNamespace, yt as addMutationRecorder, z as WatchMultiSources, zn as HostMiniProgramComponentEmptyArray, zt as CustomRefSource } from "./vue-types-BiAihmBy.mjs";
|
|
3
|
-
import { $ as teardownRuntimeInstance, $n as setWevuDefaults, $t as onServerPrefetch, A as useSlots, An as setCurrentInstance, At as markNoSetData, B as UseAllScrollOffsetOptions, Bn as useDisposables, Bt as useLayoutHosts, C as UseModelOptions, Cn as onThemeChange, Ct as UseNavigationBarMetricsOptions, D as useModel, Dn as callHookReturn, Dt as useNavigationBarMetrics, E as useChangeModel, En as callHookList, Et as getNavigationBarMetrics, F as UseUpdatePerformanceListenerStopHandle, Fn as useElementIntersectionObserver, Ft as resolveLayoutBridge, G as UseSelectorQueryOptions, Gn as SetupFunctionWithTypeProps, Gt as callUpdateHooks, H as UseBoundingClientRectOptions, Hn as DefineComponentTypePropsOptions, Ht as UseIntersectionObserverOptions, I as useUpdatePerformanceListener, In as DisposableBag, It as resolveLayoutHost, J as useSelectorFields, Jn as createWevuComponent, Jt as onBeforeUnmount, K as useBoundingClientRect, Kn as WevuComponentConstructor, Kt as onActivated, L as normalizeClass, Ln as DisposableLike, Lt as unregisterPageLayoutBridge, M as use, Mn as ElementIntersectionObserverCallback, Mt as LayoutHostBinding, N as UpdatePerformanceListener, Nn as UseElementIntersectionObserverOptions, Nt as registerPageLayoutBridge, O as useAttrs, On as getCurrentInstance, Ot as usePageStack, P as UpdatePerformanceListenerResult, Pn as UseElementIntersectionObserverReturn, Pt as registerRuntimeLayoutHosts, Q as setRuntimeSetDataVisibility, Qn as resetWevuDefaults, Qt as onMounted, R as normalizeStyle, Rn as DisposableMethodName, Rt as unregisterRuntimeLayoutHosts, S as ModelModifiers, Sn as onTabItemTap, St as PageStackSnapshot, T as useBindModel, Tn as onUnload, Tt as getCurrentPageStackSnapshot, U as UseScrollOffsetOptions, Un as DefineComponentWithTypeProps, Ut as UseIntersectionObserverResult, V as UseAllSelectorFieldsOptions, Vn as ComponentDefinition, Vt as waitForLayoutHost, W as UseSelectorFieldsOptions, Wn as SetupContextWithTypeProps, Wt as useIntersectionObserver, X as runSetupFunction, Xn as defineComponent, Xt as onDeactivated, Y as useSelectorQuery, Yn as createWevuScopedSlotComponent, Yt as onBeforeUpdate, Z as mountRuntimeInstance, Zn as WevuDefaults, Zt as onErrorCaptured, _ as EmitsOptions, _n as onRouteDone, _t as setPageLayout, a as PageLayoutMeta, an as onError, ar as TemplateRefs, at as hasInjectionContext, b as useNativePageRouter, bn as onShareTimeline, bt as usePageLayout, c as defineExpose, cn as onLoad, cr as CreateAppOptions, ct as provide, d as definePageMeta, dn as onPageNotFound, dr as DefineComponentOptions, dt as UsePageScrollThrottleOptions, en as onUnmounted, er as createApp, et as registerComponent, f as defineProps, fn as onPageScroll, fr as PageFeatures, ft as UsePageScrollThrottleStopHandle, g as EmitFn, gn as onResize, gt as resolveRuntimePageLayoutName, h as ComponentTypeEmits, hn as onReady, ht as WevuPageLayoutMap, i as ModelRef, in as onDetached, ir as TemplateRefValue, it as useAsyncPullDownRefresh, j as defineAppSetup, jn as setCurrentSetupContext, jt as LayoutBridgeInstance, k as useNativeInstance, kn as getCurrentSetupContext, kt as isNoSetData, l as defineModel, ln as onMemoryWarning, lr as DataOption, lt as provideGlobal, m as withDefaults, mn as onReachBottom, mr as SetDataSnapshotOptions, mt as PageLayoutState, n as DefineModelModifiers, nn as onAddToFavorites, nr as GlobalDirectives, nt as PullDownRefreshHandler, o as PageMeta, on as onHide, or as WevuGlobalComponents, ot as inject, p as defineSlots, pn as onPullDownRefresh, pr as SetDataDebugInfo, pt as usePageScrollThrottle, q as useScrollOffset, qn as WevuDefinedComponent, qt as onBeforeMount, r as DefineModelTransformOptions, rn as onAttached, rr as MiniProgramTemplateRefValue, rt as UseAsyncPullDownRefreshOptions, s as defineEmits, sn as onLaunch, sr as WevuGlobalDirectives, st as injectGlobal, t as version, tn as onUpdated, tr as GlobalComponents, tt as registerApp, u as defineOptions, un as onMoved, ur as DefineAppOptions, ut as setGlobalProvidedValue, v as TemplateRef, vn as onSaveExitState, vt as syncRuntimePageLayoutState, w as mergeModels, wn as onUnhandledRejection, wt as UsePageStackOptions, x as useNativeRouter, xn as onShow, xt as NavigationBarMetrics, y as useTemplateRef, yn as onShareAppMessage, yt as syncRuntimePageLayoutStateFromRuntime, z as UseAllBoundingClientRectOptions, zn as DisposableObject, zt as useLayoutBridge } from "./index-
|
|
3
|
+
import { $ as teardownRuntimeInstance, $n as setWevuDefaults, $t as onServerPrefetch, A as useSlots, An as setCurrentInstance, At as markNoSetData, B as UseAllScrollOffsetOptions, Bn as useDisposables, Bt as useLayoutHosts, C as UseModelOptions, Cn as onThemeChange, Ct as UseNavigationBarMetricsOptions, D as useModel, Dn as callHookReturn, Dt as useNavigationBarMetrics, E as useChangeModel, En as callHookList, Et as getNavigationBarMetrics, F as UseUpdatePerformanceListenerStopHandle, Fn as useElementIntersectionObserver, Ft as resolveLayoutBridge, G as UseSelectorQueryOptions, Gn as SetupFunctionWithTypeProps, Gt as callUpdateHooks, H as UseBoundingClientRectOptions, Hn as DefineComponentTypePropsOptions, Ht as UseIntersectionObserverOptions, I as useUpdatePerformanceListener, In as DisposableBag, It as resolveLayoutHost, J as useSelectorFields, Jn as createWevuComponent, Jt as onBeforeUnmount, K as useBoundingClientRect, Kn as WevuComponentConstructor, Kt as onActivated, L as normalizeClass, Ln as DisposableLike, Lt as unregisterPageLayoutBridge, M as use, Mn as ElementIntersectionObserverCallback, Mt as LayoutHostBinding, N as UpdatePerformanceListener, Nn as UseElementIntersectionObserverOptions, Nt as registerPageLayoutBridge, O as useAttrs, On as getCurrentInstance, Ot as usePageStack, P as UpdatePerformanceListenerResult, Pn as UseElementIntersectionObserverReturn, Pt as registerRuntimeLayoutHosts, Q as setRuntimeSetDataVisibility, Qn as resetWevuDefaults, Qt as onMounted, R as normalizeStyle, Rn as DisposableMethodName, Rt as unregisterRuntimeLayoutHosts, S as ModelModifiers, Sn as onTabItemTap, St as PageStackSnapshot, T as useBindModel, Tn as onUnload, Tt as getCurrentPageStackSnapshot, U as UseScrollOffsetOptions, Un as DefineComponentWithTypeProps, Ut as UseIntersectionObserverResult, V as UseAllSelectorFieldsOptions, Vn as ComponentDefinition, Vt as waitForLayoutHost, W as UseSelectorFieldsOptions, Wn as SetupContextWithTypeProps, Wt as useIntersectionObserver, X as runSetupFunction, Xn as defineComponent, Xt as onDeactivated, Y as useSelectorQuery, Yn as createWevuScopedSlotComponent, Yt as onBeforeUpdate, Z as mountRuntimeInstance, Zn as WevuDefaults, Zt as onErrorCaptured, _ as EmitsOptions, _n as onRouteDone, _t as setPageLayout, a as PageLayoutMeta, an as onError, ar as TemplateRefs, at as hasInjectionContext, b as useNativePageRouter, bn as onShareTimeline, bt as usePageLayout, c as defineExpose, cn as onLoad, cr as CreateAppOptions, ct as provide, d as definePageMeta, dn as onPageNotFound, dr as DefineComponentOptions, dt as UsePageScrollThrottleOptions, en as onUnmounted, er as createApp, et as registerComponent, f as defineProps, fn as onPageScroll, fr as PageFeatures, ft as UsePageScrollThrottleStopHandle, g as EmitFn, gn as onResize, gt as resolveRuntimePageLayoutName, h as ComponentTypeEmits, hn as onReady, ht as WevuPageLayoutMap, i as ModelRef, in as onDetached, ir as TemplateRefValue, it as useAsyncPullDownRefresh, j as defineAppSetup, jn as setCurrentSetupContext, jt as LayoutBridgeInstance, k as useNativeInstance, kn as getCurrentSetupContext, kt as isNoSetData, l as defineModel, ln as onMemoryWarning, lr as DataOption, lt as provideGlobal, m as withDefaults, mn as onReachBottom, mr as SetDataSnapshotOptions, mt as PageLayoutState, n as DefineModelModifiers, nn as onAddToFavorites, nr as GlobalDirectives, nt as PullDownRefreshHandler, o as PageMeta, on as onHide, or as WevuGlobalComponents, ot as inject, p as defineSlots, pn as onPullDownRefresh, pr as SetDataDebugInfo, pt as usePageScrollThrottle, q as useScrollOffset, qn as WevuDefinedComponent, qt as onBeforeMount, r as DefineModelTransformOptions, rn as onAttached, rr as MiniProgramTemplateRefValue, rt as UseAsyncPullDownRefreshOptions, s as defineEmits, sn as onLaunch, sr as WevuGlobalDirectives, st as injectGlobal, t as version, tn as onUpdated, tr as GlobalComponents, tt as registerApp, u as defineOptions, un as onMoved, ur as DefineAppOptions, ut as setGlobalProvidedValue, v as TemplateRef, vn as onSaveExitState, vt as syncRuntimePageLayoutState, w as mergeModels, wn as onUnhandledRejection, wt as UsePageStackOptions, x as useNativeRouter, xn as onShow, xt as NavigationBarMetrics, y as useTemplateRef, yn as onShareAppMessage, yt as syncRuntimePageLayoutStateFromRuntime, z as UseAllBoundingClientRectOptions, zn as DisposableObject, zt as useLayoutBridge } from "./index-0HTSCdnU.mjs";
|
|
4
4
|
import { a as ActionContext, c as MutationType, d as SubscriptionCallback, i as defineStore, l as StoreManager, n as storeToRefs, o as ActionSubscriber, r as createStore, s as DefineStoreOptions, t as StoreToRefsResult, u as StoreSubscribeOptions } from "./index-CmPm9WU0.mjs";
|
|
5
5
|
export * from "@wevu/web-apis";
|
|
6
6
|
export { type ActionContext, type ActionSubscriber, type AlipayMiniProgramHostNamespace, type AlipayMiniProgramHostSourceContract, type AllowedComponentProps, type AppConfig, type ComponentCustomProps, ComponentDefinition, type ComponentOptionsMixin, type ComponentPropsOptions, type ComponentPublicInstance, type ComponentTypeEmits, type ComputedDefinitions, type ComputedGetter, type ComputedRef, type ComputedSetter, type CreateAppOptions, type CustomRefFactory, type CustomRefOptions, type CustomRefSource, type DataOption, type DefaultMiniProgramHostNamespace, type DefaultMiniProgramHostSourceContract, type DefineAppOptions, type DefineComponent, type DefineComponentOptions, DefineComponentTypePropsOptions, DefineComponentWithTypeProps, DefineModelModifiers, DefineModelTransformOptions, type DefineStoreOptions, DisposableBag, DisposableLike, DisposableMethodName, DisposableObject, type DouyinMiniProgramHostNamespace, type DouyinMiniProgramHostSourceContract, type EffectScope, ElementIntersectionObserverCallback, type EmitFn, type EmitsOptions, type ExtractComputed, type ExtractDefaultPropTypes, type ExtractMethods, type ExtractPropTypes, type ExtractPublicPropTypes, GlobalComponents, GlobalDirectives, type HostMiniProgramAddToFavoritesOption, type HostMiniProgramAddToFavoritesOption as MiniProgramAddToFavoritesOption, type HostMiniProgramAppOptions, type HostMiniProgramAppTrivialInstance, type HostMiniProgramBehaviorIdentifier, type HostMiniProgramBoundingClientRectResult, type HostMiniProgramBoundingClientRectResult as MiniProgramBoundingClientRectResult, type HostMiniProgramComponentAllFullProperty, type HostMiniProgramComponentAllFullProperty as MiniProgramComponentAllFullProperty, type HostMiniProgramComponentAllProperty, type HostMiniProgramComponentAllProperty as MiniProgramComponentAllProperty, type HostMiniProgramComponentBehaviorOptions, type HostMiniProgramComponentBehaviorOptions as MiniProgramComponentBehaviorOptions, type HostMiniProgramComponentEmptyArray, type HostMiniProgramComponentEmptyArray as MiniProgramComponentEmptyArray, type HostMiniProgramComponentInstance, type HostMiniProgramComponentMethodOption, type HostMiniProgramComponentMethodOption as MiniProgramComponentMethodOption, type HostMiniProgramComponentPropertyOption, type HostMiniProgramComponentPropertyOption as MiniProgramComponentPropertyOption, type HostMiniProgramComponentPropertyValue, type HostMiniProgramComponentShortProperty, type HostMiniProgramComponentShortProperty as MiniProgramComponentShortProperty, type HostMiniProgramComponentTrivialInstance, type HostMiniProgramComponentTrivialOption, type HostMiniProgramIntersectionObserver, type HostMiniProgramIntersectionObserver as MiniProgramIntersectionObserver, type HostMiniProgramIntersectionObserverOptions, type HostMiniProgramIntersectionObserverOptions as MiniProgramIntersectionObserverOptions, type HostMiniProgramLaunchOptions, type HostMiniProgramLaunchOptions as MiniProgramLaunchOptions, type HostMiniProgramMemoryWarningResult, type HostMiniProgramMemoryWarningResult as MiniProgramMemoryWarningResult, type HostMiniProgramNavigateToOption, type HostMiniProgramNavigateToOption as MiniProgramNavigateToOption, type HostMiniProgramNodesRef, type HostMiniProgramNodesRef as MiniProgramNodesRef, type HostMiniProgramNodesRefFields, type HostMiniProgramNodesRefFields as MiniProgramNodesRefFields, type HostMiniProgramPageLifetime, type HostMiniProgramPageLifetime as MiniProgramPageLifetime, type HostMiniProgramPageNotFoundOptions, type HostMiniProgramPageNotFoundOptions as MiniProgramPageNotFoundOptions, type HostMiniProgramPageResizeOption, type HostMiniProgramPageResizeOption as MiniProgramPageResizeOption, type HostMiniProgramPageScrollOption, type HostMiniProgramPageScrollOption as MiniProgramPageScrollOption, type HostMiniProgramPageTrivialInstance, type HostMiniProgramReLaunchOption, type HostMiniProgramReLaunchOption as MiniProgramReLaunchOption, type HostMiniProgramRedirectToOption, type HostMiniProgramRedirectToOption as MiniProgramRedirectToOption, type HostMiniProgramRouter, type HostMiniProgramRouter as MiniProgramRouter, type HostMiniProgramSaveExitState, type HostMiniProgramSaveExitState as MiniProgramSaveExitState, type HostMiniProgramScrollOffsetResult, type HostMiniProgramScrollOffsetResult as MiniProgramScrollOffsetResult, type HostMiniProgramSelectorQuery, type HostMiniProgramSelectorQuery as MiniProgramSelectorQuery, type HostMiniProgramShareAppMessageOption, type HostMiniProgramShareAppMessageOption as MiniProgramShareAppMessageOption, type HostMiniProgramSwitchTabOption, type HostMiniProgramSwitchTabOption as MiniProgramSwitchTabOption, type HostMiniProgramTabItemTapOption, type HostMiniProgramTabItemTapOption as MiniProgramTabItemTapOption, type HostMiniProgramThemeChangeResult, type HostMiniProgramThemeChangeResult as MiniProgramThemeChangeResult, type HostMiniProgramTriggerEventOptions, type HostMiniProgramTriggerEventOptions as TriggerEventOptions, type HostMiniProgramUnhandledRejectionResult, type HostMiniProgramUnhandledRejectionResult as MiniProgramUnhandledRejectionResult, type InferNativePropType, type InferNativeProps, type InferPropType, type InferProps, type InternalRuntimeState, type InternalRuntimeStateFields, LayoutBridgeInstance, LayoutHostBinding, type MapSources, type MaybeRef, type MaybeRefOrGetter, type MaybeUndefined, type MethodDefinitions, type MiniProgramAdapter, type MiniProgramAppOptions, type MiniProgramBehaviorIdentifier, type MiniProgramCSSProperties, type MiniProgramComponentInstance, type MiniProgramComponentOptions, type MiniProgramComponentPropertyValue, type MiniProgramComponentRawOptions, type MiniProgramDatasetAttributes, type MiniProgramHostNamespace, type MiniProgramHostNamespaceBySource, type MiniProgramHostSourceName, type MiniProgramHostSourceRegistry, type MiniProgramHtmlAliasIntrinsicElements, type MiniProgramInstance, type MiniProgramIntrinsicElementBaseAttributes, type MiniProgramIntrinsicElements, type MiniProgramIntrinsicEventHandler, type MiniProgramPageLifetimes, type MiniProgramPlatformHostNamespaceBySource, type MiniProgramPlatformHostSourceName, type MiniProgramPlatformHostSourceRegistry, type MiniProgramRouterNavigateToOption, type MiniProgramRouterReLaunchOption, type MiniProgramRouterRedirectToOption, type MiniProgramRouterSwitchTabOption, type MiniProgramRuntimeHostNamespaceBySource, type MiniProgramRuntimeHostSourceName, type MiniProgramRuntimeHostSourceRegistry, MiniProgramTemplateRefValue, type ModelBinding, type ModelBindingOptions, type ModelBindingPayload, type ModelModifiers, ModelRef, type MultiWatchSources, type MutationKind, type MutationOp, type MutationRecord, type MutationType, type NativeComponent, type NativePropType, type NativePropsOptions, type NativeTypeHint, type NativeTypedProperty, NavigationBarMetrics, type ObjectDirective, type OnCleanup, type PageFeatures, PageLayoutMeta, PageLayoutState, PageMeta, PageStackSnapshot, type PrelinkReactiveTreeOptions, type PropConstructor, type PropOptions, type PropType, type PublicProps, PullDownRefreshHandler, type Ref, type RuntimeApp, type RuntimeInstance, type SetDataDebugInfo, type SetDataSnapshotOptions, type SetupContext, type SetupContextNativeInstance, type SetupContextRouter, SetupContextWithTypeProps, type SetupFunction, SetupFunctionWithTypeProps, type ShallowRef, type ShallowUnwrapRef, type StoreManager, type StoreSubscribeOptions, type StoreToRefsResult, type SubscriptionCallback, type TemplateRef, TemplateRefValue, TemplateRefs, type ToRefs, type TtMiniProgramHostNamespace, type TtMiniProgramHostSourceContract, UpdatePerformanceListener, UpdatePerformanceListenerResult, UseAllBoundingClientRectOptions, UseAllScrollOffsetOptions, UseAllSelectorFieldsOptions, UseAsyncPullDownRefreshOptions, UseBoundingClientRectOptions, UseElementIntersectionObserverOptions, UseElementIntersectionObserverReturn, UseIntersectionObserverOptions, UseIntersectionObserverResult, type UseModelOptions, UseNavigationBarMetricsOptions, UsePageScrollThrottleOptions, UsePageScrollThrottleStopHandle, UsePageStackOptions, UseScrollOffsetOptions, UseSelectorFieldsOptions, UseSelectorQueryOptions, UseUpdatePerformanceListenerStopHandle, type VNode, type VNodeProps, type WatchCallback, type WatchEffect, type WatchEffectOptions, type WatchMultiSources, type WatchOptions, type WatchScheduler, type WatchSource, type WatchSourceValue, type WatchSources, type WatchStopHandle, type WeappCSSProperties, type WeappDatasetAttributes, type WeappHtmlAliasIntrinsicElements, type WeappIntrinsicElementBaseAttributes, type WeappIntrinsicElements, type WeappIntrinsicEventHandler, type WechatMiniProgramHostNamespace, type WechatMiniProgramHostSourceContract, WevuComponentConstructor, type WevuDefaults, WevuDefinedComponent, WevuGlobalComponents, WevuGlobalDirectives, WevuPageLayoutMap, type WevuPlugin, type WevuTypedRouterRouteMap, type WritableComputedOptions, type WritableComputedRef, addMutationRecorder, batch, callHookList, callHookReturn, callUpdateHooks, computed, createApp, createStore, createWevuComponent, createWevuScopedSlotComponent, customRef, defineAppSetup, defineComponent, defineEmits, defineExpose, defineModel, defineOptions, definePageMeta, defineProps, defineSlots, defineStore, effect, effectScope, endBatch, getCurrentInstance, getCurrentPageStackSnapshot, getCurrentScope, getCurrentSetupContext, getDeepWatchStrategy, getNavigationBarMetrics, getReactiveVersion, hasInjectionContext, inject, injectGlobal, isNoSetData, isProxy, isRaw, isReactive, isReadonly, isRef, isShallowReactive, isShallowRef, markNoSetData, markRaw, mergeModels, mountRuntimeInstance, nextTick, normalizeClass, normalizeStyle, onActivated, onAddToFavorites, onAttached, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onDetached, onError, onErrorCaptured, onHide, onLaunch, onLoad, onMemoryWarning, onMounted, onMoved, onPageNotFound, onPageScroll, onPullDownRefresh, onReachBottom, onReady, onResize, onRouteDone, onSaveExitState, onScopeDispose, onServerPrefetch, onShareAppMessage, onShareTimeline, onShow, onTabItemTap, onThemeChange, onUnhandledRejection, onUnload, onUnmounted, onUpdated, prelinkReactiveTree, provide, provideGlobal, reactive, readonly, ref, registerApp, registerComponent, registerPageLayoutBridge, registerRuntimeLayoutHosts, removeMutationRecorder, resetWevuDefaults, resolveLayoutBridge, resolveLayoutHost, resolveRuntimePageLayoutName, runSetupFunction, setCurrentInstance, setCurrentSetupContext, setDeepWatchStrategy, setGlobalProvidedValue, setPageLayout, setRuntimeSetDataVisibility, setWevuDefaults, shallowReactive, shallowReadonly, shallowRef, startBatch, stop, storeToRefs, syncRuntimePageLayoutState, syncRuntimePageLayoutStateFromRuntime, teardownRuntimeInstance, toRaw, toRef, toRefs, toValue, touchReactive, traverse, triggerRef, unref, unregisterPageLayoutBridge, unregisterRuntimeLayoutHosts, use, useAsyncPullDownRefresh, useAttrs, useBindModel, useBoundingClientRect, useChangeModel, useDisposables, useElementIntersectionObserver, useIntersectionObserver, useLayoutBridge, useLayoutHosts, useModel, useNativeInstance, useNativePageRouter, useNativeRouter, useNavigationBarMetrics, usePageLayout, usePageScrollThrottle, usePageStack, useScrollOffset, useSelectorFields, useSelectorQuery, useSlots, useTemplateRef, useUpdatePerformanceListener, version, waitForLayoutHost, watch, watchEffect, watchPostEffect, watchSyncEffect, withDefaults };
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as e,D as t,E as n,N as r,O as i,S as a,T as o,a as s,b as c,c as l,d as u,f as d,g as f,h as p,i as m,k as h,l as g,n as _,o as v,p as y,s as b,t as x,u as S,w as C,x as w,y as T}from"./ref-
|
|
1
|
+
import{C as e,D as t,E as n,N as r,O as i,S as a,T as o,a as s,b as c,c as l,d as u,f as d,g as f,h as p,i as m,k as h,l as g,n as _,o as v,p as y,s as b,t as x,u as S,w as C,x as w,y as T}from"./ref-DSmyUM92.mjs";import{i as E,n as D,r as O,t as k}from"./store-hIpUo64o.mjs";import{$ as A,A as j,B as M,F as N,G as P,H as F,I,J as L,K as R,L as z,M as B,N as V,P as H,Q as U,R as W,U as G,V as K,W as q,X as J,Y,Z as X,_ as Z,_t as Q,at as $,ct as ee,et as te,g as ne,gt as re,h as ie,ht as ae,it as oe,j as se,m as ce,n as le,nt as ue,q as de,rt as fe,st as pe,t as me,v as he,vt as ge,z as _e}from"./router-DDpO7cAw.mjs";import{$ as ve,A as ye,B as be,C as xe,Ct as Se,D as Ce,E as we,F as Te,G as Ee,H as De,I as Oe,J as ke,K as Ae,L as je,M as Me,N as Ne,O as Pe,P as Fe,Q as Ie,R as Le,S as Re,St as ze,T as Be,U as Ve,V as He,W as Ue,X as We,Y as Ge,Z as Ke,_ as qe,_t as Je,a as Ye,at as Xe,b as Ze,bt as Qe,c as $e,ct as et,d as tt,dt as nt,et as rt,f as it,ft as at,g as ot,gt as st,h as ct,ht as lt,i as ut,it as dt,j as ft,k as pt,l as mt,lt as ht,m as gt,mt as _t,n as vt,nt as yt,o as bt,ot as xt,p as St,pt as Ct,q as wt,r as Tt,rt as Et,s as Dt,st as Ot,t as kt,tt as At,u as jt,ut as Mt,v as Nt,vt as Pt,w as Ft,wt as It,x as Lt,xt as Rt,y as zt,yt as Bt,z as Vt}from"./src-8TCMrasb.mjs";export*from"@wevu/web-apis";export{c as addMutationRecorder,a as batch,ue as callHookList,fe as callHookReturn,et as callUpdateHooks,E as computed,ye as createApp,O as createStore,Ce as createWevuComponent,Pe as createWevuScopedSlotComponent,x as customRef,mt as defineAppSetup,pt as defineComponent,D as defineStore,e as effect,C as effectScope,o as endBatch,oe as getCurrentInstance,Ze as getCurrentPageStackSnapshot,n as getCurrentScope,$ as getCurrentSetupContext,xt as getDeepWatchStrategy,Lt as getNavigationBarMetrics,b as getReactiveVersion,ce as hasInjectionContext,ie as inject,ne as injectGlobal,ve as isNoSetData,ae as isProxy,l as isRaw,g as isReactive,re as isReadonly,_ as isRef,d as isShallowReactive,ze as isShallowRef,rt as markNoSetData,S as markRaw,vt as mergeModels,De as mountRuntimeInstance,r as nextTick,it as normalizeClass,St as normalizeStyle,ht as onActivated,se as onAddToFavorites,B as onAttached,Mt as onBeforeMount,nt as onBeforeUnmount,at as onBeforeUpdate,Ct as onDeactivated,V as onDetached,H as onError,_t as onErrorCaptured,N as onHide,I as onLaunch,z as onLoad,W as onMemoryWarning,lt as onMounted,_e as onMoved,M as onPageNotFound,K as onPageScroll,F as onPullDownRefresh,G as onReachBottom,q as onReady,P as onResize,R as onRouteDone,de as onSaveExitState,t as onScopeDispose,st as onServerPrefetch,L as onShareAppMessage,Y as onShareTimeline,J as onShow,X as onTabItemTap,U as onThemeChange,A as onUnhandledRejection,te as onUnload,Je as onUnmounted,Pt as onUpdated,p as prelinkReactiveTree,Z as provide,he as provideGlobal,u as reactive,Q as readonly,m as ref,He as registerApp,ft as registerComponent,Me as registerPageLayoutBridge,Ne as registerRuntimeLayoutHosts,w as removeMutationRecorder,Ke as resetWevuDefaults,Fe as resolveLayoutBridge,Te as resolveLayoutHost,Ae as resolveRuntimePageLayoutName,Ee as runSetupFunction,pe as setCurrentInstance,ee as setCurrentSetupContext,Ot as setDeepWatchStrategy,j as setGlobalProvidedValue,wt as setPageLayout,Ve as setRuntimeSetDataVisibility,Ie as setWevuDefaults,y as shallowReactive,ge as shallowReadonly,Se as shallowRef,i as startBatch,h as stop,k as storeToRefs,ke as syncRuntimePageLayoutState,Ge as syncRuntimePageLayoutStateFromRuntime,Ue as teardownRuntimeInstance,T as toRaw,Qe as toRef,Rt as toRefs,s as toValue,f as touchReactive,Bt as traverse,It as triggerRef,v as unref,Oe as unregisterPageLayoutBridge,je as unregisterRuntimeLayoutHosts,jt as use,Nt as useAsyncPullDownRefresh,bt as useAttrs,Tt as useBindModel,gt as useBoundingClientRect,ut as useChangeModel,we as useDisposables,Be as useElementIntersectionObserver,Ft as useIntersectionObserver,Le as useLayoutBridge,Vt as useLayoutHosts,Ye as useModel,Dt as useNativeInstance,me as useNativePageRouter,le as useNativeRouter,Re as useNavigationBarMetrics,We as usePageLayout,zt as usePageScrollThrottle,xe as usePageStack,ct as useScrollOffset,ot as useSelectorFields,qe as useSelectorQuery,$e as useSlots,kt as useTemplateRef,tt as useUpdatePerformanceListener,At as version,be as waitForLayoutHost,yt as watch,Et as watchEffect,dt as watchPostEffect,Xe as watchSyncEffect};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=Promise.resolve(),t=new Set,n=new Set;let r=!1,i=!1,a;function o(){i=!1,r=!0,a=new Set;try{t.forEach(e=>{a==null||a.add(e),e()})}finally{t.clear(),a=void 0,r=!1,n.size&&(n.forEach(e=>t.add(e)),n.clear(),i||(i=!0,e.then(o)))}}function s(s){if(r&&a!=null&&a.has(s)){n.add(s);return}t.add(s),!r&&!i&&(i=!0,e.then(o))}function c(t){return t?e.then(t):e}function l(e){"@babel/helpers - typeof";return l=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},l(e)}function u(e,t){if(l(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(l(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function d(e){var t=u(e,`string`);return l(t)==`symbol`?t:t+``}function f(e,t,n){return(t=d(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const p=new WeakMap;let m=null;const h=[];let g=0;const _=new Set;function v(){g++}function ee(){for(;_.size;){let e=[..._];_.clear();for(let t of e)t()}}function y(){g!==0&&(g--,g===0&&ee())}function te(e){v();try{return e()}finally{y()}}function b(e){let{deps:t}=e;for(let n=0;n<t.length;n++)t[n].delete(e);t.length=0}function x(e){var t;e.active&&(e.active=!1,b(e),(t=e.onStop)==null||t.call(e))}let S;var ne=class{constructor(e=!1){if(this.detached=e,f(this,`active`,!0),f(this,`effects`,[]),f(this,`cleanups`,[]),f(this,`parent`,void 0),f(this,`scopes`,void 0),!e&&S){var t;this.parent=S,((t=S).scopes||(t.scopes=[])).push(this)}}run(e){if(!this.active)return;let t=S;S=this;try{return e()}finally{S=t}}stop(){var e;if(this.active){this.active=!1;for(let e of this.effects)x(e);this.effects.length=0;for(let e of this.cleanups)e();if(this.cleanups.length=0,this.scopes){for(let e of this.scopes)e.stop();this.scopes.length=0}if((e=this.parent)!=null&&e.scopes){let e=this.parent.scopes.indexOf(this);e>=0&&this.parent.scopes.splice(e,1)}this.parent=void 0}}};function re(e=!1){return new ne(e)}function ie(){return S}function ae(e){S!=null&&S.active&&S.cleanups.push(e)}function oe(e){S!=null&&S.active&&S.effects.push(e)}function se(e,t={}){let n=function(){if(!n.active||n._running)return e();b(n);try{return n._running=!0,h.push(n),m=n,e()}finally{var t;h.pop(),m=(t=h[h.length-1])==null?null:t,n._running=!1}};return n.deps=[],n.scheduler=t.scheduler,n.onStop=t.onStop,n.active=!0,n._running=!1,n._fn=e,n}function ce(e,t={}){let n=se(e,t);return oe(n),t.lazy||n(),n}function C(e,t){if(!m)return;let n=p.get(e);n||(n=new Map,p.set(e,n));let r=n.get(t);r||(r=new Set,n.set(t,r)),r.has(m)||(r.add(m),m.deps.push(r))}function w(e){if(e.scheduler){e.scheduler();return}if(g>0){_.add(e);return}e()}function T(e,t){let n=p.get(e);if(!n)return;let r=n.get(t);if(!r)return;let i=new Set;r.forEach(e=>{e!==m&&i.add(e)}),i.forEach(w)}function E(e){m&&(e.has(m)||(e.add(m),m.deps.push(e)))}function D(e){new Set(e).forEach(w)}const O=new Set;function le(e){O.add(e)}function ue(e){O.delete(e)}const k=new WeakMap,A=new WeakMap,j=new WeakMap,M=new WeakMap,N=new WeakSet,P=new WeakMap,F=new WeakMap;function de(e){let t=F.get(e);return t||(t=new Set,F.set(e,t)),t}function I(e,t){de(e).add(t)}function L(e){var t;A.set(e,((t=A.get(e))==null?0:t)+1)}function fe(e){var t;return(t=A.get(e))==null?0:t}function R(e){let t=new Set,n=[e];for(let e=0;e<2e3&&n.length;e++){let e=n.pop(),r=M.get(e);if(r)for(let e of r.keys())t.has(e)||(t.add(e),L(e),n.push(e))}}function z(e){let t=M.get(e);if(!t){N.delete(e),j.delete(e);return}let n,r,i=0;for(let[e,a]of t){for(let t of a){if(i+=1,i>1)break;n=e,r=t}if(i>1)break}if(i===1&&n&&r){N.delete(e),j.set(e,{parent:n,key:r});return}N.add(e),j.delete(e)}function B(e,t,n){if(typeof n!=`string`){N.add(e),j.delete(e);return}if(O.size){var r;let n=(r=k.get(t))==null?t:r;I(n,t),I(n,e)}let i=M.get(e);i||(i=new Map,M.set(e,i));let a=i.get(t);a||(a=new Set,i.set(t,a)),a.add(n),z(e)}function V(e,t,n){let r=M.get(e);if(!r)return;let i=r.get(t);i&&(i.delete(n),i.size||r.delete(t),r.size||M.delete(e),z(e))}function H(e,t){if(t===e)return[];if(N.has(t))return;let n=[],r=t;for(let t=0;t<2e3;t++){if(r===e)return n.reverse();if(N.has(r))return;let t=j.get(r);if(!t||typeof t.key!=`string`)return;n.push(t.key),r=t.parent}}function U(e){return typeof e==`object`&&!!e}function pe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function me(e){return Object.prototype.toString.call(e).slice(8,-1)}function he(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 0;default:return 0}}function W(e){return e.__r_skip?0:he(me(e))}const G=Symbol(`wevu.version`);function K(e){if(!e)return!1;let t=e.charCodeAt(0);if(t<48||t>57)return!1;let n=Number(e);return Number.isInteger(n)&&n>=0&&String(n)===e}function q(e){var t;return(t=e==null?void 0:e.__r_raw)==null?e:t}const ge=new WeakMap,_e=new WeakMap,J=new WeakMap;function ve(e,t){let n=q(e);P.set(n,``),I(n,n);let r=t==null?void 0:t.shouldIncludeTopKey,i=typeof(t==null?void 0:t.maxDepth)==`number`?Math.max(0,Math.floor(t.maxDepth)):1/0,a=typeof(t==null?void 0:t.maxKeys)==`number`?Math.max(0,Math.floor(t.maxKeys)):1/0,o=new WeakSet,s=[{current:n,path:``,depth:0}],c=0;for(;s.length;){let e=s.pop();if(o.has(e.current)||(o.add(e.current),P.set(e.current,e.path),I(n,e.current),c+=1,c>=a)||e.depth>=i||Array.isArray(e.current))continue;let t=Object.entries(e.current);for(let[i,a]of t){if(e.path===``&&r&&!r(i)||!U(a)||a.__r_skip)continue;let t=q(a);if(k.has(t)||k.set(t,n),B(t,e.current,i),!N.has(t)){let n=e.path?`${e.path}.${i}`:i;P.set(t,n)}I(n,t),s.push({current:t,path:e.path?`${e.path}.${i}`:i,depth:e.depth+1})}}}function ye(e){let t=q(e),n=F.get(t);if(!n){P.delete(t);return}for(let e of n)j.delete(e),M.delete(e),P.delete(e),N.delete(e),k.delete(e),A.delete(e);F.delete(t)}function be(e){C(q(e),G)}const xe={get(e,t,n){if(t===`__r_isReactive`)return!0;if(t===`__r_raw`)return e;let r=Reflect.get(e,t,n);return C(e,t),r},set(e,t,n,r){let i=Reflect.get(e,t,r),a=Reflect.set(e,t,n,r);return Object.is(i,n)||(T(e,t),T(e,G),L(e)),a},deleteProperty(e,t){let n=pe(e,t),r=Reflect.deleteProperty(e,t);return n&&r&&(T(e,t),T(e,G),L(e)),r},ownKeys(e){return C(e,Symbol.iterator),C(e,G),Reflect.ownKeys(e)}};function Se(e){if(!U(e)||e.__r_isReactive)return e;let t=J.get(e);if(t)return t;if(W(e)===0)return e;let n=new Proxy(e,xe);return J.set(e,n),_e.set(n,e),A.has(e)||A.set(e,0),n}function Ce(e){let t=q(e);return J.has(t)}function we(e){return fe(q(e))}function Te(e,t,n){var r;if(!O.size||typeof t!=`string`||t.startsWith(`__r_`))return;let i=(r=k.get(e))==null?e:r,a=Array.isArray(e)&&(t===`length`||K(t))?`array`:`property`,o=H(i,e);if(!o){let r=new Set,o=M.get(e);if(o)for(let[e,t]of o){var s;let n=P.get(e),a=n?n.split(`.`,1)[0]:void 0,o=a||(s=H(i,e))==null?void 0:s[0];for(let e of t){var c;typeof e==`string`&&r.add((c=a==null?o:a)==null?e:c)}}else r.add(t);for(let e of O)e({root:i,kind:a,op:n,path:void 0,fallbackTopKeys:r.size?[...r]:void 0});return}let l=o.findIndex(e=>K(e));if(l!==-1){let e=o.slice(0,l).join(`.`)||void 0;for(let t of O)t({root:i,kind:`array`,op:n,path:e});return}let u=o.length?o.join(`.`):``,d=a===`array`?u||void 0:u?`${u}.${t}`:t;for(let e of O)e({root:i,kind:a,op:n,path:d})}const Ee={get(e,t,n){if(t===`__r_isReactive`)return!0;if(t===`__r_raw`)return e;let r=Reflect.get(e,t,n);if(C(e,t),U(r)){var i,a;if(r.__r_skip)return r;let n=(i=k.get(e))==null?e:i,o=(a=r==null?void 0:r.__r_raw)==null?r:a;k.has(o)||k.set(o,n),B(o,e,t);let s=P.get(e);if(O.size&&typeof t==`string`&&s!=null&&!N.has(o)){let e=s?`${s}.${t}`:t;P.set(o,e)}return Y(r)}return r},set(e,t,n,r){let i=Array.isArray(e),a=i?e.length:0,o=Reflect.get(e,t,r),s=Reflect.set(e,t,n,r);if(!Object.is(o,n)){var c;let r=U(o)?(c=o==null?void 0:o.__r_raw)==null?o:c:void 0;if(r&&V(r,e,t),U(n)&&!n.__r_skip){var l,u;let r=(l=k.get(e))==null?e:l,i=(u=n==null?void 0:n.__r_raw)==null?n:u;k.has(i)||k.set(i,r),B(i,e,t);let a=P.get(e);if(O.size&&typeof t==`string`&&a!=null&&!N.has(i)){let e=a?`${a}.${t}`:t;P.set(i,e)}}T(e,t),i&&typeof t==`string`&&K(t)&&Number(t)>=a&&T(e,`length`),T(e,G),L(e),R(e);let s=k.get(e);s&&s!==e&&(T(s,G),L(s)),Te(e,t,`set`)}return s},deleteProperty(e,t){let n=pe(e,t),r=n?e[t]:void 0,i=Reflect.deleteProperty(e,t);if(n&&i){var a;let n=U(r)?(a=r==null?void 0:r.__r_raw)==null?r:a:void 0;n&&V(n,e,t),T(e,t),T(e,G),L(e),R(e);let i=k.get(e);i&&i!==e&&(T(i,G),L(i)),Te(e,t,`delete`)}return i},ownKeys(e){return C(e,Symbol.iterator),C(e,G),Reflect.ownKeys(e)}};function Y(e){if(!U(e)||e.__r_isReactive)return e;let t=ge.get(e);if(t)return t;if(W(e)===0)return e;let n=new Proxy(e,Ee);return ge.set(e,n),_e.set(n,e),A.has(e)||A.set(e,0),k.has(e)||k.set(e,e),n}function De(e){return!!(e&&e.__r_isReactive)}function Oe(e){return U(e)?Y(e):e}function X(e){return U(e)&&Object.defineProperty(e,`__r_skip`,{value:!0,configurable:!0,enumerable:!1,writable:!0}),e}function ke(e){return U(e)&&`__r_skip`in e}const Ae=`__v_isRef`;function Z(e){try{Object.defineProperty(e,Ae,{value:!0,configurable:!0})}catch(t){e[Ae]=!0}return e}function Q(e){return!!(e&&typeof e==`object`&&e.__v_isRef===!0)}var je=class{constructor(e){f(this,`_value`,void 0),f(this,`_rawValue`,void 0),f(this,`dep`,void 0),Z(this),this._rawValue=e,this._value=Oe(e)}get value(){return this.dep||(this.dep=new Set),E(this.dep),this._value}set value(e){Object.is(e,this._rawValue)||(this._rawValue=e,this._value=Oe(e),this.dep&&D(this.dep))}};function Me(e){return Q(e)?e:X(new je(e))}function $(e){return Q(e)?e.value:e}function Ne(e){return typeof e==`function`?e():$(e)}var Pe=class{constructor(e,t){f(this,`_getValue`,void 0),f(this,`_setValue`,void 0),f(this,`dep`,void 0),Z(this);let n=t,r=()=>{this.dep||(this.dep=new Set),E(this.dep)},i=()=>{this.dep&&D(this.dep)},a=e=>e===void 0&&n!==void 0?n:e;if(typeof e==`function`){let t=e(r,i);this._getValue=()=>a(t.get()),this._setValue=e=>t.set(e);return}let o=e;this._getValue=()=>(r(),a(o.get())),this._setValue=e=>{o.set(e),i()}}get value(){return this._getValue()}set value(e){this._setValue(e)}};function Fe(e,t){return X(new Pe(e,t))}export{C as A,ce as C,ae as D,ie as E,D as M,c as N,v as O,s as P,te as S,y as T,W as _,Ne as a,le as b,ke as c,Y as d,Ce as f,be as g,ve as h,Me as i,T as j,x as k,De as l,ye as m,Q as n,$ as o,Se as p,Z as r,we as s,Fe as t,X as u,U as v,re as w,ue as x,q as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,l as t,n,r,v as i}from"./ref-B6CIXciv.mjs";import{WEVU_APP_PROVIDES_KEY as a,WEVU_HOOKS_KEY as o,WEVU_IS_APP_INSTANCE_KEY as s,WEVU_PAGE_SCROLL_HOOK_DEPTH_KEY as c,WEVU_PARENT_INSTANCE_KEY as l,WEVU_PROVIDES_KEY as u,WEVU_RUNTIME_APP_KEY as d}from"@weapp-core/constants";import{getMiniProgramPlatformByRuntimeGlobalKey as ee,getMiniProgramRuntimeCapabilities as te,getMiniProgramRuntimeGlobalKey as ne,getMiniProgramRuntimeGlobalKeys as re,getMiniProgramRuntimeHostConfigKey as ie,resolveMiniProgramPlatform as f,supportsMiniProgramRuntimeCapability as ae}from"@weapp-core/shared";function p(t){if(n(t)){let e=t,n=r({get value(){return e.value},set value(e){throw Error(`无法给只读 ref 赋值`)}});return Object.defineProperties(n,{__r_isReadonly:{value:!0,configurable:!0},__r_raw:{value:e,configurable:!0}}),n}return!i(t)||e(t)===0?t:new Proxy(t,{set(){throw Error(`无法在只读对象上设置属性`)},deleteProperty(){throw Error(`无法在只读对象上删除属性`)},defineProperty(){throw Error(`无法在只读对象上定义属性`)},get(e,t,n){return t===`__r_isReadonly`?!0:t===`__r_raw`?e:Reflect.get(e,t,n)}})}function oe(e){return p(e)}function se(e){return p(e)}function m(e){return!!(e&&e.__r_isReadonly)}function ce(e){return t(e)||m(e)}const le=[`switchTab`,`reLaunch`,`redirectTo`,`navigateTo`,`navigateBack`];function h(){if(!(typeof globalThis>`u`))return globalThis}function g(){var e;let t=h(),n=f((e=import.meta.env)==null?void 0:e.PLATFORM);if(n)return n;for(let e of re())if(t!=null&&t[e])return ee(e)}function _(){return te(g())}function v(e){return ae(g(),e)}function y(){if(!v(`globalPageStack`))return[];let e=globalThis.getCurrentPages;if(typeof e!=`function`)return[];try{let t=e();return Array.isArray(t)?t:[]}catch(e){return[]}}function ue(){let e=h(),t=ie(g()),n=e==null?void 0:e[t];return n&&typeof n==`object`?n:void 0}function b(e){var t;let n=h(),r=f(e==null?(t=import.meta.env)==null?void 0:t.PLATFORM:e);if(r){let e=ne(r);return n==null?void 0:n[e]}for(let e of re()){let t=n==null?void 0:n[e];if(t)return t}}function de(){if(!v(`globalRouterApi`))return;let e=b();if(!e)return;let t=Object.create(null);for(let n of le){let r=e[n];if(typeof r!=`function`)return;t[n]=(...t)=>r.apply(e,t)}return t}function fe(){var e;return(e=b())==null?h():e}let x,S;function C(){return x}function pe(e){x=e}function me(){return S}function he(e){S=e}function w(e){if(!x)throw Error(`${e}() 必须在 setup() 的同步阶段调用`);return x}function ge(e){return e[o]||(e[o]=Object.create(null)),e[o]}function _e(e,t){let n=_().shareTimelineRequiresShareAppMessage?e||t:e,r=[];return n&&r.push(`shareAppMessage`),t&&r.push(`shareTimeline`),r}function ve(e,t){let n=[{withShareTicket:!0,menus:t},{menus:t},t.includes(`shareTimeline`)?{withShareTicket:!0}:void 0,t.includes(`shareTimeline`)?{}:void 0,void 0];for(let t of n)try{t===void 0?e():e(t);return}catch(e){}}function T(e,t,n,{single:r=!1}={}){let i=ge(e);if(r)i[t]=n;else{var a;((a=i[t])==null?i[t]=[]:a).push(n)}}function E(e,t){var n,r;let i=(r=(n=e).__wevuShareHookBridges)==null?n.__wevuShareHookBridges=Object.create(null):r;if(typeof i[t]==`function`)return;let a=e[t],s=function(...e){var n;let r=this[o],i=r==null?void 0:r[t],s=this.__wevu,c=(n=s==null?void 0:s.proxy)==null?this:n,l;if(typeof i==`function`)try{l=i.apply(c,e)}catch(e){l=void 0}else if(Array.isArray(i))for(let t of i)try{l=t.apply(c,e)}catch(e){}if(l!==void 0)return l;if(typeof a==`function`)return a.apply(this,e)};i[t]=s,e[t]=s}function D(e){var t;if(!v(`pageShareMenu`))return;let n=b();if(!n||typeof n.showShareMenu!=`function`)return;let r=(t=e[o])==null?{}:t,i=typeof r.onShareAppMessage==`function`,a=typeof r.onShareTimeline==`function`;if(!i&&!a)return;let s=_e(i,a);s.length&&ve(n.showShareMenu.bind(n),s)}function O(e,t,n=[]){var r;let i=e[o];if(!i)return;let a=i[t];if(!a)return;let s=e.__wevu,c=(r=s==null?void 0:s.proxy)==null?e:r;if(Array.isArray(a))for(let e of a)try{e.apply(c,n)}catch(e){}else if(typeof a==`function`)try{a.apply(c,n)}catch(e){}}function ye(e,t){var n,r;let i=(r=(n=e).__wevuPageHookBridges)==null?n.__wevuPageHookBridges=Object.create(null):r;if(typeof i[t]==`function`)return;let a=e[t],o=function(...e){if(O(this,t,e),typeof a==`function`)return a.apply(this,e)};i[t]=o,e[t]=o}function be(e,t,n=[]){var r;let i=e[o];if(!i)return;let a=i[t];if(!a)return;let s=e.__wevu,c=(r=s==null?void 0:s.proxy)==null?e:r;if(typeof a==`function`)try{return a.apply(c,n)}catch(e){return}if(Array.isArray(a)){let e;for(let t of a)try{e=t.apply(c,n)}catch(e){}return e}}function k(e,t,n){T(w(e),e,t,n)}function xe(e){k(`onLaunch`,e)}function Se(e){k(`onPageNotFound`,e)}function Ce(e){k(`onUnhandledRejection`,e)}function we(e){k(`onThemeChange`,e)}function Te(e){k(`onMemoryWarning`,e)}function Ee(e){k(`onShow`,e)}function De(e){k(`onLoad`,e)}function Oe(e){k(`onHide`,e)}function ke(e){k(`onUnload`,e)}function Ae(e){k(`onReady`,e)}function je(e){k(`onPullDownRefresh`,e)}function Me(e){k(`onReachBottom`,e)}function Ne(e){let t=w(`onPageScroll`);T(t,`onPageScroll`,e),ye(t,`onPageScroll`)}function Pe(e){k(`onRouteDone`,e)}function Fe(e){k(`onTabItemTap`,e)}function Ie(e){k(`onResize`,e)}function Le(e){k(`onMoved`,e)}function Re(e){k(`onAttached`,e)}function ze(e){k(`onDetached`,e)}function Be(e){k(`onError`,e)}function Ve(e){k(`onSaveExitState`,e,{single:!0})}function He(e){let t=w(`onShareAppMessage`);T(t,`onShareAppMessage`,e,{single:!0}),E(t,`onShareAppMessage`),D(t)}function Ue(e){let t=w(`onShareTimeline`);T(t,`onShareTimeline`,e,{single:!0}),E(t,`onShareTimeline`),D(t)}function We(e){let t=w(`onAddToFavorites`);T(t,`onAddToFavorites`,e,{single:!0}),E(t,`onAddToFavorites`)}const A=new Map;function j(e,t){A.set(e,t)}function M(e){return A.has(e)}function N(e){return A.get(e)}function P(e){return!!(e&&typeof e==`object`&&e[s]===!0)}function F(e){return Object.create(e==null?null:e)}function I(e){if(!e)return F();let t=e[a];if(t&&typeof t==`object`)return t;let n=F();try{Object.defineProperty(e,a,{value:n,configurable:!0,enumerable:!1,writable:!1})}catch(t){e[a]=n}return n}function L(e,t){try{Object.defineProperty(e,u,{value:t,configurable:!0,enumerable:!1,writable:!0})}catch(n){e[u]=t}}function R(e){var t,n;let r=e[u];if(r&&typeof r==`object`)return r;let i=e[d],a=(t=(n=e[l])==null?void 0:n[u])==null?I(i):t,o=P(e)?I(i):F(a);return L(e,o),o}function Ge(e){return I(e)}function Ke(e,t,n){I(e)[t]=n,j(t,n)}function qe(e,t,n){var r;let i=I(t),a=(r=n==null?void 0:n[u])==null?i:r,o=P(e)?i:F(a);if(n)try{Object.defineProperty(e,l,{value:n,configurable:!0,enumerable:!1,writable:!0})}catch(t){e[l]=n}L(e,o)}function z(e,t){let n=Object.getPrototypeOf(e);for(;n;){if(n===t)return!0;n=Object.getPrototypeOf(n)}return!1}function Je(e,t){let n=R(e),r=R(t);if(!(n===r||z(n,r)||z(r,n))){Object.setPrototypeOf(r,n);try{Object.defineProperty(t,l,{value:e,configurable:!0,enumerable:!1,writable:!0})}catch(n){t[l]=e}}}let B=!1,V;function H(){return V}function Ye(e){V=e}function Xe(e){V===e&&(V=void 0)}function U(e,t){var n;e[c]=Number((n=e[c])==null?0:n)+1;try{return t()}finally{var r;let t=Number((r=e[c])==null?1:r)-1;t<=0?delete e[c]:e[c]=t}}function Ze(e){let t=e.options;if(t&&typeof t==`object`)return t;let n=y(),r=n[n.length-1],i=r&&typeof r==`object`?r.options:void 0;return i&&typeof i==`object`?i:{}}function Qe(){if(B)return;B=!0;let e=b();if(!(!e||typeof e!=`object`)){if(v(`pullDownRefreshApi`)){let t=e.startPullDownRefresh;typeof t==`function`&&(e.startPullDownRefresh=function(...e){let n=t.apply(this,e);return V&&O(V,`onPullDownRefresh`,[]),n})}if(v(`pageScrollApi`)){let t=e.pageScrollTo;typeof t==`function`&&(e.pageScrollTo=function(e,...n){let r=t.apply(this,[e,...n]);if(V){let t=V;U(t,()=>{O(t,`onPageScroll`,[e==null?{}:e])})}return r})}}}function $e(e){let{enableOnShareAppMessage:t,enableOnShareTimeline:n}=e;if(!t&&!n||!v(`pageShareMenu`))return;let r=b();if(!r||typeof r.showShareMenu!=`function`)return;let i=_().shareTimelineRequiresShareAppMessage?t||n:t;if(!i&&!n)return;let a=[];i&&a.push(`shareAppMessage`),n&&a.push(`shareTimeline`);let o=[{withShareTicket:!0,menus:a},{menus:a},n?{withShareTicket:!0}:void 0,n?{}:void 0,void 0];for(let e of o)try{e===void 0?r.showShareMenu():r.showShareMenu(e);break}catch(e){}}function et(){return!!C()}function tt(e,t){let n=C();n?(R(n)[e]=t,P(n)&&j(e,t)):j(e,t)}function nt(e,t){var n;let r=C();if(r){let t=R(r);if(e in t)return t[e]}if(M(e))return N(e);if(arguments.length>=2)return t;let i=(n=globalThis.console)==null?void 0:n.warn;typeof i==`function`&&i(`wevu.inject:未找到对应 key 的值:${String(e)}`)}function rt(e,t){j(e,t)}function it(e,t){if(M(e))return N(e);if(arguments.length>=2)return t;throw Error(`injectGlobal():未找到对应 key 的 provider:${String(e)}`)}function W(e){let t=[];for(let n of e.split(`/`))if(!(!n||n===`.`)){if(n===`..`){t.length>0&&t.pop();continue}t.push(n)}return t}function G(e,t){if(!e)return W(t).join(`/`);if(e.startsWith(`/`))return W(e).join(`/`);if(e.startsWith(`./`)||e.startsWith(`../`)){let n=W(t);n.length>0&&n.pop();for(let t of e.split(`/`))if(!(!t||t===`.`)){if(t===`..`){n.length>0&&n.pop();continue}n.push(t)}return n.join(`/`)}return W(e).join(`/`)}function K(e){return e?`/${e}`:`/`}const at=/(?:^|\/):/;function ot(e){return at.test(e)}const st=/\+/g;function ct(e){return decodeURIComponent(e.replace(st,` `))}function q(e){return encodeURIComponent(e)}function J(e,t,n){let r=e[t];if(r===void 0){e[t]=n;return}if(Array.isArray(r)){r.push(n);return}e[t]=[r,n]}function lt(e,t,n){let r=e[t];if(r===void 0){e[t]=n;return}if(Array.isArray(r)){r.push(n);return}e[t]=[r,n]}function ut(e){if(e!==void 0)return e===null?null:String(e)}function Y(e){let t={};for(let n of Object.keys(e)){let r=e[n];if(Array.isArray(r)){for(let e of r){let r=ut(e);r!==void 0&&J(t,n,r)}continue}let i=ut(r);i!==void 0&&J(t,n,i)}return t}function dt(e){if(e!=null)return String(e)}function ft(e){let t={};for(let n of Object.keys(e)){let r=e[n];if(Array.isArray(r)){for(let e of r){let r=dt(e);r!==void 0&<(t,n,r)}continue}let i=dt(r);i!==void 0&<(t,n,i)}return t}function X(e){return e?e.startsWith(`#`)?e:`#${e}`:``}function pt(e){let t=e.startsWith(`?`)?e.slice(1):e,n={};if(!t)return n;for(let e of t.split(`&`)){if(!e)continue;let t=e.indexOf(`=`),r=t>=0?e.slice(0,t):e;r&&J(n,ct(r),t>=0?ct(e.slice(t+1)):null)}return n}function Z(e={}){let t=Y(e),n=[];for(let e of Object.keys(t)){let r=q(e),i=t[e];if(Array.isArray(i)){for(let e of i)e===null?n.push(r):n.push(`${r}=${q(e)}`);continue}if(i===null){n.push(r);continue}n.push(`${r}=${q(i)}`)}return n.join(`&`)}const mt={parseQuery:pt,stringifyQuery:Z};function ht(e,t=mt){let n=e.indexOf(`#`),r=n>=0?e.slice(0,n):e,i=n>=0?X(e.slice(n+1)):``,a=r.indexOf(`?`);return a<0?{path:r,query:{},hash:i}:{path:r.slice(0,a),query:Y(t.parseQuery(r.slice(a+1))),hash:i}}function Q(e,t,n=``,r,i={},a=Z){let o=G(e,``),s=a(t),c=K(o),l=X(n),u=s?`${c}?${s}`:c,d={path:o,fullPath:l?`${u}${l}`:u,query:t,hash:l,params:i};return r!==void 0&&(d.name=r),d}function gt(e){return typeof(e==null?void 0:e.route)==`string`&&e.route.length>0||typeof(e==null?void 0:e.__route__)==`string`&&e.__route__.length>0}function _t(e){let t=y();if(Array.isArray(t)&&t.length>0){let e=t[t.length-1];if(gt(e))return e}let n=H();return gt(n)?n:e}function vt(e,t){var n;let r=_t(t);return r?Q(typeof r.route==`string`?r.route:typeof r.__route__==`string`?r.__route__:``,Y(e==null?(n=r.options)==null?{}:n:e),``,void 0,{}):Q(``,{})}const yt=[`switchTab`,`reLaunch`,`redirectTo`,`navigateTo`,`navigateBack`],bt=new WeakMap;function xt(e){return!e||typeof e!=`object`?!1:yt.every(t=>typeof e[t]==`function`)}function St(){return de()}function Ct(e){if(!(typeof e!=`string`||!e))return G(e,``)||void 0}function wt(e,t){let n=t===`pageRouter`?[e.route,e.__route__,e.is]:[e.is,e.route,e.__route__];for(let e of n){let t=Ct(e);if(t)return t}}function Tt(e,t){if(!t||!e.startsWith(`./`)&&!e.startsWith(`../`))return e;let{path:n,query:r,hash:i}=ht(e),a=K(G(n,t)),o=Z(r);return`${a}${o?`?${o}`:``}${i}`}function $(e,t){let n=t==null?``:t,r=bt.get(e),i=r==null?void 0:r.get(n);if(i)return i;let a=Object.create(null);for(let n of yt)a[n]=r=>{let i=e[n];if(n===`navigateBack`||!r||typeof r!=`object`)return i.call(e,r);let a=typeof r.url==`string`?Tt(r.url,t):r.url,o=a===r.url?r:{...r,url:a};return i.call(e,o)};let o=r==null?new Map:r;return o.set(n,a),bt.set(e,o),a}function Et(e,t,n){let r=me();if(!(r!=null&&r.instance))throw Error(`${n}() 必须在 setup() 的同步阶段调用`);let i=r.instance,a=wt(i,e),o=i[e];if(xt(o))return $(o,a);let s=i[t];if(xt(s))return $(s,a);let c=St();if(c)return $(c,a);throw Error(`当前运行环境不支持 Router,请升级宿主基础库或检查平台路由能力`)}function Dt(){return Et(`router`,`pageRouter`,`useNativeRouter`)}function Ot(){return Et(`pageRouter`,`router`,`useNativePageRouter`)}export{Ce as $,j as A,Se as B,Xe as C,qe as D,Je as E,Oe as F,Ie as G,je as H,xe as I,He as J,Pe as K,De as L,Re as M,ze as N,Ge as O,Be as P,we as Q,Te as R,H as S,U as T,Me as U,Ne as V,Ae as W,Ee as X,Ue as Y,Fe as Z,tt as _,oe as _t,vt as a,me as at,Qe as b,ft as c,he as ct,K as d,_ as dt,ke as et,ot as f,b as ft,it as g,m as gt,nt as h,ce as ht,ht as i,C as it,We as j,Ke as k,pt as l,ue as lt,et as m,v as mt,Dt as n,O as nt,X as o,T as ot,G as p,fe as pt,Ve as q,Q as r,be as rt,Y as s,pe as st,Ot as t,w as tt,Z as u,y as ut,rt as v,se as vt,Ze as w,$e as x,Ye as y,Le as z};
|
|
1
|
+
import{_ as e,l as t,n,r,v as i}from"./ref-DSmyUM92.mjs";import{WEVU_APP_PROVIDES_KEY as a,WEVU_HOOKS_KEY as o,WEVU_IS_APP_INSTANCE_KEY as s,WEVU_PAGE_SCROLL_HOOK_DEPTH_KEY as c,WEVU_PARENT_INSTANCE_KEY as l,WEVU_PROVIDES_KEY as u,WEVU_RUNTIME_APP_KEY as d}from"@weapp-core/constants";import{getMiniProgramPlatformByRuntimeGlobalKey as ee,getMiniProgramRuntimeCapabilities as te,getMiniProgramRuntimeGlobalKey as ne,getMiniProgramRuntimeGlobalKeys as re,getMiniProgramRuntimeHostConfigKey as ie,resolveMiniProgramPlatform as f,supportsMiniProgramRuntimeCapability as ae}from"@weapp-core/shared";function p(t){if(n(t)){let e=t,n=r({get value(){return e.value},set value(e){throw Error(`无法给只读 ref 赋值`)}});return Object.defineProperties(n,{__r_isReadonly:{value:!0,configurable:!0},__r_raw:{value:e,configurable:!0}}),n}return!i(t)||e(t)===0?t:new Proxy(t,{set(){throw Error(`无法在只读对象上设置属性`)},deleteProperty(){throw Error(`无法在只读对象上删除属性`)},defineProperty(){throw Error(`无法在只读对象上定义属性`)},get(e,t,n){return t===`__r_isReadonly`?!0:t===`__r_raw`?e:Reflect.get(e,t,n)}})}function oe(e){return p(e)}function se(e){return p(e)}function m(e){return!!(e&&e.__r_isReadonly)}function ce(e){return t(e)||m(e)}const le=[`switchTab`,`reLaunch`,`redirectTo`,`navigateTo`,`navigateBack`];function h(){if(!(typeof globalThis>`u`))return globalThis}function g(){var e;let t=h(),n=f((e=import.meta.env)==null?void 0:e.PLATFORM);if(n)return n;for(let e of re())if(t!=null&&t[e])return ee(e)}function _(){return te(g())}function v(e){return ae(g(),e)}function y(){if(!v(`globalPageStack`))return[];let e=globalThis.getCurrentPages;if(typeof e!=`function`)return[];try{let t=e();return Array.isArray(t)?t:[]}catch(e){return[]}}function ue(){let e=h(),t=ie(g()),n=e==null?void 0:e[t];return n&&typeof n==`object`?n:void 0}function b(e){var t;let n=h(),r=f(e==null?(t=import.meta.env)==null?void 0:t.PLATFORM:e);if(r){let e=ne(r);return n==null?void 0:n[e]}for(let e of re()){let t=n==null?void 0:n[e];if(t)return t}}function de(){if(!v(`globalRouterApi`))return;let e=b();if(!e)return;let t=Object.create(null);for(let n of le){let r=e[n];if(typeof r!=`function`)return;t[n]=(...t)=>r.apply(e,t)}return t}function fe(){var e;return(e=b())==null?h():e}let x,S;function C(){return x}function pe(e){x=e}function me(){return S}function he(e){S=e}function w(e){if(!x)throw Error(`${e}() 必须在 setup() 的同步阶段调用`);return x}function ge(e){return e[o]||(e[o]=Object.create(null)),e[o]}function _e(e,t){let n=_().shareTimelineRequiresShareAppMessage?e||t:e,r=[];return n&&r.push(`shareAppMessage`),t&&r.push(`shareTimeline`),r}function ve(e,t){let n=[{withShareTicket:!0,menus:t},{menus:t},t.includes(`shareTimeline`)?{withShareTicket:!0}:void 0,t.includes(`shareTimeline`)?{}:void 0,void 0];for(let t of n)try{t===void 0?e():e(t);return}catch(e){}}function T(e,t,n,{single:r=!1}={}){let i=ge(e);if(r)i[t]=n;else{var a;((a=i[t])==null?i[t]=[]:a).push(n)}}function E(e,t){var n,r;let i=(r=(n=e).__wevuShareHookBridges)==null?n.__wevuShareHookBridges=Object.create(null):r;if(typeof i[t]==`function`)return;let a=e[t],s=function(...e){var n;let r=this[o],i=r==null?void 0:r[t],s=this.__wevu,c=(n=s==null?void 0:s.proxy)==null?this:n,l;if(typeof i==`function`)try{l=i.apply(c,e)}catch(e){l=void 0}else if(Array.isArray(i))for(let t of i)try{l=t.apply(c,e)}catch(e){}if(l!==void 0)return l;if(typeof a==`function`)return a.apply(this,e)};i[t]=s,e[t]=s}function D(e){var t;if(!v(`pageShareMenu`))return;let n=b();if(!n||typeof n.showShareMenu!=`function`)return;let r=(t=e[o])==null?{}:t,i=typeof r.onShareAppMessage==`function`,a=typeof r.onShareTimeline==`function`;if(!i&&!a)return;let s=_e(i,a);s.length&&ve(n.showShareMenu.bind(n),s)}function O(e,t,n=[]){var r;let i=e[o];if(!i)return;let a=i[t];if(!a)return;let s=e.__wevu,c=(r=s==null?void 0:s.proxy)==null?e:r;if(Array.isArray(a))for(let e of a)try{e.apply(c,n)}catch(e){}else if(typeof a==`function`)try{a.apply(c,n)}catch(e){}}function ye(e,t){var n,r;let i=(r=(n=e).__wevuPageHookBridges)==null?n.__wevuPageHookBridges=Object.create(null):r;if(typeof i[t]==`function`)return;let a=e[t],o=function(...e){if(O(this,t,e),typeof a==`function`)return a.apply(this,e)};i[t]=o,e[t]=o}function be(e,t,n=[]){var r;let i=e[o];if(!i)return;let a=i[t];if(!a)return;let s=e.__wevu,c=(r=s==null?void 0:s.proxy)==null?e:r;if(typeof a==`function`)try{return a.apply(c,n)}catch(e){return}if(Array.isArray(a)){let e;for(let t of a)try{e=t.apply(c,n)}catch(e){}return e}}function k(e,t,n){T(w(e),e,t,n)}function xe(e){k(`onLaunch`,e)}function Se(e){k(`onPageNotFound`,e)}function Ce(e){k(`onUnhandledRejection`,e)}function we(e){k(`onThemeChange`,e)}function Te(e){k(`onMemoryWarning`,e)}function Ee(e){k(`onShow`,e)}function De(e){k(`onLoad`,e)}function Oe(e){k(`onHide`,e)}function ke(e){k(`onUnload`,e)}function Ae(e){k(`onReady`,e)}function je(e){k(`onPullDownRefresh`,e)}function Me(e){k(`onReachBottom`,e)}function Ne(e){let t=w(`onPageScroll`);T(t,`onPageScroll`,e),ye(t,`onPageScroll`)}function Pe(e){k(`onRouteDone`,e)}function Fe(e){k(`onTabItemTap`,e)}function Ie(e){k(`onResize`,e)}function Le(e){k(`onMoved`,e)}function Re(e){k(`onAttached`,e)}function ze(e){k(`onDetached`,e)}function Be(e){k(`onError`,e)}function Ve(e){k(`onSaveExitState`,e,{single:!0})}function He(e){let t=w(`onShareAppMessage`);T(t,`onShareAppMessage`,e,{single:!0}),E(t,`onShareAppMessage`),D(t)}function Ue(e){let t=w(`onShareTimeline`);T(t,`onShareTimeline`,e,{single:!0}),E(t,`onShareTimeline`),D(t)}function We(e){let t=w(`onAddToFavorites`);T(t,`onAddToFavorites`,e,{single:!0}),E(t,`onAddToFavorites`)}const A=new Map;function j(e,t){A.set(e,t)}function M(e){return A.has(e)}function N(e){return A.get(e)}function P(e){return!!(e&&typeof e==`object`&&e[s]===!0)}function F(e){return Object.create(e==null?null:e)}function I(e){if(!e)return F();let t=e[a];if(t&&typeof t==`object`)return t;let n=F();try{Object.defineProperty(e,a,{value:n,configurable:!0,enumerable:!1,writable:!1})}catch(t){e[a]=n}return n}function L(e,t){try{Object.defineProperty(e,u,{value:t,configurable:!0,enumerable:!1,writable:!0})}catch(n){e[u]=t}}function R(e){var t,n;let r=e[u];if(r&&typeof r==`object`)return r;let i=e[d],a=(t=(n=e[l])==null?void 0:n[u])==null?I(i):t,o=P(e)?I(i):F(a);return L(e,o),o}function Ge(e){return I(e)}function Ke(e,t,n){I(e)[t]=n,j(t,n)}function qe(e,t,n){var r;let i=I(t),a=(r=n==null?void 0:n[u])==null?i:r,o=P(e)?i:F(a);if(n)try{Object.defineProperty(e,l,{value:n,configurable:!0,enumerable:!1,writable:!0})}catch(t){e[l]=n}L(e,o)}function z(e,t){let n=Object.getPrototypeOf(e);for(;n;){if(n===t)return!0;n=Object.getPrototypeOf(n)}return!1}function Je(e,t){let n=R(e),r=R(t);if(!(n===r||z(n,r)||z(r,n))){Object.setPrototypeOf(r,n);try{Object.defineProperty(t,l,{value:e,configurable:!0,enumerable:!1,writable:!0})}catch(n){t[l]=e}}}let B=!1,V;function H(){return V}function Ye(e){V=e}function Xe(e){V===e&&(V=void 0)}function U(e,t){var n;e[c]=Number((n=e[c])==null?0:n)+1;try{return t()}finally{var r;let t=Number((r=e[c])==null?1:r)-1;t<=0?delete e[c]:e[c]=t}}function Ze(e){let t=e.options;if(t&&typeof t==`object`)return t;let n=y(),r=n[n.length-1],i=r&&typeof r==`object`?r.options:void 0;return i&&typeof i==`object`?i:{}}function Qe(){if(B)return;B=!0;let e=b();if(!(!e||typeof e!=`object`)){if(v(`pullDownRefreshApi`)){let t=e.startPullDownRefresh;typeof t==`function`&&(e.startPullDownRefresh=function(...e){let n=t.apply(this,e);return V&&O(V,`onPullDownRefresh`,[]),n})}if(v(`pageScrollApi`)){let t=e.pageScrollTo;typeof t==`function`&&(e.pageScrollTo=function(e,...n){let r=t.apply(this,[e,...n]);if(V){let t=V;U(t,()=>{O(t,`onPageScroll`,[e==null?{}:e])})}return r})}}}function $e(e){let{enableOnShareAppMessage:t,enableOnShareTimeline:n}=e;if(!t&&!n||!v(`pageShareMenu`))return;let r=b();if(!r||typeof r.showShareMenu!=`function`)return;let i=_().shareTimelineRequiresShareAppMessage?t||n:t;if(!i&&!n)return;let a=[];i&&a.push(`shareAppMessage`),n&&a.push(`shareTimeline`);let o=[{withShareTicket:!0,menus:a},{menus:a},n?{withShareTicket:!0}:void 0,n?{}:void 0,void 0];for(let e of o)try{e===void 0?r.showShareMenu():r.showShareMenu(e);break}catch(e){}}function et(){return!!C()}function tt(e,t){let n=C();n?(R(n)[e]=t,P(n)&&j(e,t)):j(e,t)}function nt(e,t){var n;let r=C();if(r){let t=R(r);if(e in t)return t[e]}if(M(e))return N(e);if(arguments.length>=2)return t;let i=(n=globalThis.console)==null?void 0:n.warn;typeof i==`function`&&i(`wevu.inject:未找到对应 key 的值:${String(e)}`)}function rt(e,t){j(e,t)}function it(e,t){if(M(e))return N(e);if(arguments.length>=2)return t;throw Error(`injectGlobal():未找到对应 key 的 provider:${String(e)}`)}function W(e){let t=[];for(let n of e.split(`/`))if(!(!n||n===`.`)){if(n===`..`){t.length>0&&t.pop();continue}t.push(n)}return t}function G(e,t){if(!e)return W(t).join(`/`);if(e.startsWith(`/`))return W(e).join(`/`);if(e.startsWith(`./`)||e.startsWith(`../`)){let n=W(t);n.length>0&&n.pop();for(let t of e.split(`/`))if(!(!t||t===`.`)){if(t===`..`){n.length>0&&n.pop();continue}n.push(t)}return n.join(`/`)}return W(e).join(`/`)}function K(e){return e?`/${e}`:`/`}const at=/(?:^|\/):/;function ot(e){return at.test(e)}const st=/\+/g;function ct(e){return decodeURIComponent(e.replace(st,` `))}function q(e){return encodeURIComponent(e)}function J(e,t,n){let r=e[t];if(r===void 0){e[t]=n;return}if(Array.isArray(r)){r.push(n);return}e[t]=[r,n]}function lt(e,t,n){let r=e[t];if(r===void 0){e[t]=n;return}if(Array.isArray(r)){r.push(n);return}e[t]=[r,n]}function ut(e){if(e!==void 0)return e===null?null:String(e)}function Y(e){let t={};for(let n of Object.keys(e)){let r=e[n];if(Array.isArray(r)){for(let e of r){let r=ut(e);r!==void 0&&J(t,n,r)}continue}let i=ut(r);i!==void 0&&J(t,n,i)}return t}function dt(e){if(e!=null)return String(e)}function ft(e){let t={};for(let n of Object.keys(e)){let r=e[n];if(Array.isArray(r)){for(let e of r){let r=dt(e);r!==void 0&<(t,n,r)}continue}let i=dt(r);i!==void 0&<(t,n,i)}return t}function X(e){return e?e.startsWith(`#`)?e:`#${e}`:``}function pt(e){let t=e.startsWith(`?`)?e.slice(1):e,n={};if(!t)return n;for(let e of t.split(`&`)){if(!e)continue;let t=e.indexOf(`=`),r=t>=0?e.slice(0,t):e;r&&J(n,ct(r),t>=0?ct(e.slice(t+1)):null)}return n}function Z(e={}){let t=Y(e),n=[];for(let e of Object.keys(t)){let r=q(e),i=t[e];if(Array.isArray(i)){for(let e of i)e===null?n.push(r):n.push(`${r}=${q(e)}`);continue}if(i===null){n.push(r);continue}n.push(`${r}=${q(i)}`)}return n.join(`&`)}const mt={parseQuery:pt,stringifyQuery:Z};function ht(e,t=mt){let n=e.indexOf(`#`),r=n>=0?e.slice(0,n):e,i=n>=0?X(e.slice(n+1)):``,a=r.indexOf(`?`);return a<0?{path:r,query:{},hash:i}:{path:r.slice(0,a),query:Y(t.parseQuery(r.slice(a+1))),hash:i}}function Q(e,t,n=``,r,i={},a=Z){let o=G(e,``),s=a(t),c=K(o),l=X(n),u=s?`${c}?${s}`:c,d={path:o,fullPath:l?`${u}${l}`:u,query:t,hash:l,params:i};return r!==void 0&&(d.name=r),d}function gt(e){return typeof(e==null?void 0:e.route)==`string`&&e.route.length>0||typeof(e==null?void 0:e.__route__)==`string`&&e.__route__.length>0}function _t(e){let t=y();if(Array.isArray(t)&&t.length>0){let e=t[t.length-1];if(gt(e))return e}let n=H();return gt(n)?n:e}function vt(e,t){var n;let r=_t(t);return r?Q(typeof r.route==`string`?r.route:typeof r.__route__==`string`?r.__route__:``,Y(e==null?(n=r.options)==null?{}:n:e),``,void 0,{}):Q(``,{})}const yt=[`switchTab`,`reLaunch`,`redirectTo`,`navigateTo`,`navigateBack`],bt=new WeakMap;function xt(e){return!e||typeof e!=`object`?!1:yt.every(t=>typeof e[t]==`function`)}function St(){return de()}function Ct(e){if(!(typeof e!=`string`||!e))return G(e,``)||void 0}function wt(e,t){let n=t===`pageRouter`?[e.route,e.__route__,e.is]:[e.is,e.route,e.__route__];for(let e of n){let t=Ct(e);if(t)return t}}function Tt(e,t){if(!t||!e.startsWith(`./`)&&!e.startsWith(`../`))return e;let{path:n,query:r,hash:i}=ht(e),a=K(G(n,t)),o=Z(r);return`${a}${o?`?${o}`:``}${i}`}function $(e,t){let n=t==null?``:t,r=bt.get(e),i=r==null?void 0:r.get(n);if(i)return i;let a=Object.create(null);for(let n of yt)a[n]=r=>{let i=e[n];if(n===`navigateBack`||!r||typeof r!=`object`)return i.call(e,r);let a=typeof r.url==`string`?Tt(r.url,t):r.url,o=a===r.url?r:{...r,url:a};return i.call(e,o)};let o=r==null?new Map:r;return o.set(n,a),bt.set(e,o),a}function Et(e,t,n){let r=me();if(!(r!=null&&r.instance))throw Error(`${n}() 必须在 setup() 的同步阶段调用`);let i=r.instance,a=wt(i,e),o=i[e];if(xt(o))return $(o,a);let s=i[t];if(xt(s))return $(s,a);let c=St();if(c)return $(c,a);throw Error(`当前运行环境不支持 Router,请升级宿主基础库或检查平台路由能力`)}function Dt(){return Et(`router`,`pageRouter`,`useNativeRouter`)}function Ot(){return Et(`pageRouter`,`router`,`useNativePageRouter`)}export{Ce as $,j as A,Se as B,Xe as C,qe as D,Je as E,Oe as F,Ie as G,je as H,xe as I,He as J,Pe as K,De as L,Re as M,ze as N,Ge as O,Be as P,we as Q,Te as R,H as S,U as T,Me as U,Ne as V,Ae as W,Ee as X,Ue as Y,Fe as Z,tt as _,oe as _t,vt as a,me as at,Qe as b,ft as c,he as ct,K as d,_ as dt,ke as et,ot as f,b as ft,it as g,m as gt,nt as h,ce as ht,ht as i,C as it,We as j,Ke as k,pt as l,ue as lt,et as m,v as mt,Dt as n,O as nt,X as o,T as ot,G as p,fe as pt,Ve as q,Q as r,be as rt,Y as s,pe as st,Ot as t,w as tt,Z as u,y as ut,rt as v,se as vt,Ze as w,$e as x,Ye as y,Le as z};
|
package/dist/router.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as e}from"./ref-B6CIXciv.mjs";import{K as t,L as n,W as r,X as i,_t as a,a as o,at as s,c,d as l,f as u,g as d,i as f,l as p,n as m,o as h,p as g,r as _,s as v,t as y,u as b,v as x}from"./router-Cm3FUnTw.mjs";const S=/^:(\w+)(?:\([^)]*\))?([+*?])?$/;function C(e){var t;let n=S.exec(e);if(n)return{key:n[1],modifier:(t=n[2])==null?``:t}}function w(e){return e===void 0?[]:Array.isArray(e)?e:[e]}function T(e){return encodeURIComponent(e)}function E(e){try{return decodeURIComponent(e)}catch(t){return e}}function D(e,t,n){let r=[],i=new Set;for(let a of e.split(`/`)){if(!a)continue;let e=C(a);if(!e){r.push(a);continue}let o=w(t[e.key]);if(e.modifier===``){if(o.length!==1)throw Error(`Missing required param "${e.key}" for named route "${n}"`);i.add(e.key),r.push(T(o[0]));continue}if(e.modifier===`?`){if(o.length===0)continue;if(o.length>1)throw Error(`Param "${e.key}" for named route "${n}" must be a single value`);i.add(e.key),r.push(T(o[0]));continue}if(e.modifier===`+`){if(o.length===0)throw Error(`Missing required repeatable param "${e.key}" for named route "${n}"`);i.add(e.key);for(let e of o)r.push(T(e));continue}o.length>0&&i.add(e.key);for(let e of o)r.push(T(e))}return{path:r.join(`/`),consumedKeys:i}}function O(e){return e===void 0?!1:Array.isArray(e)?e.length>0:!0}function ee(e,t,n){let r=Object.keys(e).filter(e=>!t.has(e)).filter(t=>O(e[t]));if(r.length!==0)throw Error(`Unexpected params for named route "${n}": ${r.join(`, `)}`)}function te(e,t,n){let r=e.name;if(typeof r!=`string`||!r||e.path!==void 0||e.fullPath!==void 0)return e;let i=t.recordByName.get(r);if(!i)throw Error(`Named route "${r}" is not defined in createRouter({ routes | namedRoutes })`);let a=e.params?c(e.params):{},o=D(i.path,a,r);return n===`strict`&&ee(a,o.consumedKeys,r),{...e,path:o.path?`/${o.path}`:`/`,params:a}}function k(e){return e.split(`/`).filter(Boolean)}function ne(e){return[e.path,...e.aliasPaths]}function A(e,t){let n=[],r=new Set,i=e;for(;i&&!(r.has(i.name)||(r.add(i.name),n.unshift(i),!i.parentName));)i=t.recordByName.get(i.parentName);return n}function re(e){let t;for(let n of e)n.meta&&(t||(t={}),Object.assign(t,n.meta));return t}function j(e,t){let n=new Set;if(!t.has(e))return n;n.add(e);let r=!0;for(;r;){r=!1;for(let[e,i]of t.entries())!i.parentName||n.has(e)||n.has(i.parentName)&&(n.add(e),r=!0)}return n}function ie(e){let t={};for(let[n,r]of e.entries())r.length!==0&&(t[n]=r.length===1?r[0]:r);return t}function M(e,t){let n=k(e),r=k(t),i=new Map,a=(e,t)=>{let n=i.get(e);if(n){n.push(t);return}i.set(e,[t])},o=e=>{let t=i.get(e);!t||t.length===0||(t.pop(),t.length===0&&i.delete(e))},s=(e,t,n)=>{for(let i=0;i<n;i+=1)a(e,E(r[t+i]));return()=>{for(let t=0;t<n;t+=1)o(e)}},c=(e,t)=>{if(e>=n.length)return t>=r.length;let i=n[e],l=C(i);if(!l)return t>=r.length||i!==r[t]?!1:c(e+1,t+1);if(l.modifier===``){if(t>=r.length)return!1;a(l.key,E(r[t]));let n=c(e+1,t+1);return n||o(l.key),n}if(l.modifier===`?`){if(t<r.length){if(a(l.key,E(r[t])),c(e+1,t+1))return!0;o(l.key)}return c(e+1,t)}let u=+(l.modifier===`+`),d=r.length-t;for(let n=d;n>=u;--n){let r=s(l.key,t,n);if(c(e+1,t+n))return!0;r()}return!1};if(c(0,0))return ie(i)}function ae(e,t){if(e.name){let n=t.recordByName.get(e.name);if(n)return{record:n,matchedRecords:A(n,t)}}let n=t.nameByStaticPath.get(e.path);if(n){let r=t.recordByName.get(n);if(r)return{record:r,matchedRecords:A(r,t),matchedPath:e.path}}for(let n of t.recordByName.values())for(let r of ne(n)){if(!u(r))continue;let i=M(r,e.path);if(i)return{record:n,matchedRecords:A(n,t),matchedPath:r,params:i}}}function N(e){typeof console>`u`||typeof console.warn!=`function`||console.warn(`[wevu/router] ${e}`)}function oe(e){let t=g(e,``);return t?l(t):`/`}function P(e,t=new Set){if(t.has(e))return!0;if(!Array.isArray(e.children)||e.children.length===0)return!1;let n=new Set(t);n.add(e);for(let t of e.children)if(P(t,n))return!0;return!1}function se(e){let t=typeof e.name==`string`?e.name.trim():``;if(!t)throw Error(`Route name is required when adding a named route`);if(typeof e.path!=`string`||!e.path)throw Error(`Route path is required when adding named route "${t}"`);if(P(e))throw Error(`Circular children reference detected when adding named route "${t}"`)}function ce(e){let t=new Map,n=[];for(let i of e){var r;let e=typeof i.route.name==`string`?i.route.name.trim():``;if(!e)continue;let a=(r=i.source)==null?`namedRoutes`:r,o=oe(i.route.path),s=t.get(e);s&&n.push(`"${e}" (${s.source}:${s.path} -> ${a}:${o})`),t.set(e,{source:a,path:o})}n.length!==0&&N(`duplicate route names detected, later entries override earlier ones: ${n.join(`, `)}`)}function le(e){return e?Array.isArray(e)?e:[e]:[]}function ue(e,t,n=`namedRoutes`){return typeof e.name==`string`&&e.name.trim()?e.name.trim():n===`routes`?t||`/`:``}function de(e,t){if(!e)return[];let n=Array.isArray(e)?e:[e],r=[];for(let e of n){if(typeof e!=`string`)continue;let n=g(e,``);!n||n===t||r.includes(n)||r.push(n)}return r}function fe(e,t,n=`namedRoutes`){let r=g(e.path,``);if(!r&&e.path!==`/`)return;let i=ue(e,r,n);if(i)return{name:i,path:r,aliasPaths:de(e.alias,r),parentName:t,meta:e.meta,beforeEnterGuards:le(e.beforeEnter),redirect:e.redirect}}function F(e,t){return!t||e.startsWith(`/`)?g(e,``):g(`${l(t)}/${e}`,``)}function pe(e){return e?Array.isArray(e)?e.filter(e=>typeof e==`string`&&e.length>0):typeof e==`string`&&e.length>0?[e]:[]:[]}function me(e){let t=[];for(let n of e)!n||t.includes(n)||t.push(n);return t}function he(e){if(e.length!==0)return e.length===1?l(e[0]):e.map(e=>l(e))}function I(e,t,n,r=[],i,a=`namedRoutes`,o=new Set){let s=[];for(let[c,u]of e.entries()){let e=`${a}[${c}]`;if(o.has(u)){N(`ignored route record at ${e}: detected circular children reference`);continue}if(typeof u.path!=`string`||!u.path){N(`ignored route record "${typeof(u==null?void 0:u.name)==`string`?u.name.trim():``}" at ${e}: route path is required`);continue}let d=F(u.path,t),f=ue(u,d,i);if(!f){N(`ignored route record at ${e}: route name is required`);continue}let p=[],m=new Map;for(let n of pe(u.alias)){let r=F(n,t);if(!r)continue;if(r===d){N(`ignored alias "${l(r)}" for route "${f}" at ${e}: alias is same as route path`);continue}let i=m.get(r);if(i){N(`ignored duplicate alias "${l(r)}" for route "${f}" at ${e}: already declared by "${i}"`);continue}m.set(r,n),p.push(r)}let h=u.path.startsWith(`/`)?[]:r.map(e=>F(u.path,e)).filter(Boolean).filter(e=>e!==d),g=me([...p,...h]),_={name:f,path:d?l(d):`/`,alias:he(g),meta:u.meta,beforeEnter:u.beforeEnter,redirect:u.redirect};if(s.push({route:_,parentName:n,source:i}),Array.isArray(u.children)&&u.children.length>0){let t=new Set(o);t.add(u),s.push(...I(u.children,d,f,g,i,`${e}.children`,t))}}return s}function ge(e,t=`namedRoutes`){if(!e)return[];if(Array.isArray(e))return I(e,void 0,void 0,[],t,t);let n=[];for(let[r,i]of Object.entries(e)){let e=typeof r==`string`?r.trim():``;if(!e){N(`ignored route record at ${t}: route name is required`);continue}if(typeof i!=`string`||!i){N(`ignored route record "${e}" at ${t}: route path is required`);continue}n.push({route:{name:e,path:i},source:t})}return n}function _e(e){return[...ge(e.routes,`routes`),...ge(e.namedRoutes,`namedRoutes`)]}function L(e){let t=new Map;for(let[n,r]of e.entries()){!u(r.path)&&!t.has(r.path)&&t.set(r.path,n);for(let e of r.aliasPaths)!u(e)&&!t.has(e)&&t.set(e,n)}return t}function ve(e){let t=new Map;for(let n of e){let e=fe(n.route,n.parentName,n.source);e&&t.set(e.name,e)}return{recordByName:t,nameByStaticPath:L(t)}}function R(e){if(e)return{...e}}function ye(e){let t={name:e.name,path:e.path};return e.meta!==void 0&&(t.meta=R(e.meta)),Array.isArray(e.alias)?t.alias=Object.freeze(e.alias.slice()):e.alias!==void 0&&(t.alias=e.alias),Array.isArray(e.beforeEnter)?t.beforeEnter=Object.freeze(e.beforeEnter.slice()):e.beforeEnter!==void 0&&(t.beforeEnter=e.beforeEnter),e.redirect!==void 0&&(t.redirect=e.redirect),Object.freeze(t)}function be(e,t,n,r,i,a){let o=Object.freeze(e.map(e=>l(e))),s=Object.freeze(t.map(ye));return Object.freeze({tabBarEntries:o,routes:s,namedRoutes:s,paramsMode:n,maxRedirects:r,parseQuery:i.parseQuery,stringifyQuery:i.stringifyQuery,rejectOnError:a})}function xe(e,t){let n={name:e.name,path:l(e.path)},r=typeof t==`string`&&t?l(g(t,``)):void 0;return r&&r!==n.path&&(n.aliasPath=r),e.meta!==void 0&&(n.meta=R(e.meta)),n}function z(e){if(e)return e.map(e=>({name:e.name,path:e.path,aliasPath:e.aliasPath,meta:R(e.meta)}))}function B(e){let t={};for(let n of Object.keys(e)){let r=e[n];t[n]=Array.isArray(r)?r.slice():r}return t}function V(e){let t={};for(let n of Object.keys(e)){let r=e[n];t[n]=Array.isArray(r)?r.slice():r}return t}function H(e){if(!e)return;let t={path:e.path,fullPath:e.fullPath,query:B(e.query),hash:e.hash,params:V(e.params)};return e.name!==void 0&&(t.name=e.name),e.meta!==void 0&&(t.meta=R(e.meta)),e.href!==void 0&&(t.href=e.href),e.matched!==void 0&&(t.matched=z(e.matched)),t}function Se(e){let t={path:e.path,fullPath:e.fullPath,query:B(e.query),hash:e.hash,params:V(e.params)};return e.name!==void 0&&(t.name=e.name),e.meta!==void 0&&(t.meta=R(e.meta)),e.href!==void 0&&(t.href=e.href),e.matched!==void 0&&(t.matched=z(e.matched)),t}function U(e){let t={path:e.path,fullPath:e.fullPath,query:B(e.query),hash:e.hash,params:V(e.params)};return e.meta!==void 0&&(t.meta=R(e.meta)),e.href!==void 0&&(t.href=e.href),e.matched!==void 0&&(t.matched=z(e.matched)),e.redirectedFrom!==void 0&&(t.redirectedFrom=H(e.redirectedFrom)),e.name!==void 0&&(t.name=e.name),t}function W(e,t=b){let n=l(e.path),r=t(e.query);return r?`${n}?${r}`:n}function Ce(e){return Object.keys(e).length>0}const we=Symbol(`wevu.router.instance`);let Te;function Ee(e){Te=e,x(we,e)}function De(){var e;return(e=Te)==null?d(we,void 0):e}const G={unknown:1,aborted:4,cancelled:8,duplicated:16},Oe=/already|same|duplicat|重复/,ke=/cancel|取消/,Ae=/abort|interrupt|中断/;function je(e){if(typeof e==`string`)return e;if(e&&typeof e==`object`){let t=e.errMsg;if(typeof t==`string`)return t;if(e instanceof Error)return e.message}return``}function K(e){let t=je(e).toLowerCase();return Oe.test(t)?G.duplicated:ke.test(t)?G.cancelled:Ae.test(t)?G.aborted:G.unknown}function q(e,t,n,r){let i=je(r)||`Navigation failed`,a=Error(i);return a.__wevuNavigationFailure=!0,a.type=e,a.to=t,a.from=n,a.cause=r,a}function J(e,t){if(!e||typeof e!=`object`)return!1;let n=e;return n.__wevuNavigationFailure===!0?t===void 0?!0:n.type===t:!1}function Me(e){return!e||typeof e!=`object`?!1:`to`in e}function Ne(e){if(typeof e==`string`)return!0;if(!e||typeof e!=`object`)return!1;let t=e;return`path`in t||`fullPath`in t||`query`in t||`hash`in t||`name`in t||`params`in t}async function Y(e,t,n){for(let r of e)try{let e=await r(t.to,t.from,t);if(J(e))return{status:`failure`,failure:e};if(e===!1)return{status:`failure`,failure:q(G.aborted,t.to,t.from,`Navigation aborted by guard`)};if(Me(e))return t.to?{status:`redirect`,target:n(e.to,t.to.path),replace:e.replace}:{status:`failure`,failure:q(G.aborted,t.to,t.from,`Redirect is not supported in back navigation guards`)};if(Ne(e))return t.to?{status:`redirect`,target:n(e,t.to.path)}:{status:`failure`,failure:q(G.aborted,t.to,t.from,`Redirect is not supported in back navigation guards`)}}catch(e){return{status:`failure`,failure:q(G.aborted,t.to,t.from,e)}}return{status:`continue`}}function X(e,t,n,r){return new Promise(i=>{let a=!1,o=e=>{a||(a=!0,i(e))};try{let i=e({...t,success:()=>o(),fail:e=>{o(q(K(e),n,r,e))}});i&&typeof i.then==`function`&&i.then(()=>o(),e=>o(q(K(e),n,r,e)))}catch(e){o(q(K(e),n,r,e))}})}async function Pe(e,t){for(let n of e)try{await n(t.to,t.from,t.failure,t)}catch(e){}}async function Fe(e,t,n){for(let r of e)try{await r(t,n)}catch(e){}}function Ie(e){return!e||typeof e!=`object`?!1:typeof e.errMsg==`string`}function Le(e){return e.type===G.unknown||e.cause instanceof Error?!0:e.type===G.aborted&&e.cause!==void 0?!(typeof e.cause==`string`||Ie(e.cause)):!1}function Z(e,t,n,r){return{mode:e,from:t,to:n,failure:r}}function Re(e){let{afterEachHooks:t,errorHandlers:n,nativeRouter:r,rejectOnError:i}=e;async function a(e){if(await Pe(t,{mode:e.mode,to:e.to,from:e.from,nativeRouter:r,failure:e.failure}),e.failure&&Le(e.failure)){var i;await Fe(n,(i=e.failure.cause)==null?e.failure:i,{mode:e.mode,to:e.to,from:e.from,nativeRouter:r,failure:e.failure})}}function o(e){return i&&Le(e)}async function s(e){if(await a(e),e.failure&&o(e.failure))throw e.failure;return e.failure}return{settleNavigationResult:s}}function ze(e,t){return q(G.duplicated,e,t,`Avoided redundant navigation to current location`)}function Be(e,t){return q(G.aborted,e,t,`switchTab does not support query parameters`)}function Q(e,t,n){return q(G.aborted,e,t,`Navigation redirected more than ${n} times`)}function Ve(e,t){return q(G.aborted,e,t,`Hash-only navigation is not supported in mini-program router`)}function He(e){return q(G.aborted,void 0,e,`Forward navigation is not supported in mini-program router`)}function $(e,t){e.redirectedFrom=t.redirectedFrom?H(t.redirectedFrom):Se(t)}async function Ue(e,t,n,r){let i=typeof e==`function`?await e(t,n):e;return Me(i)?{target:r(i.to,t.path),replace:i.replace}:{target:r(i,t.path),replace:!0}}async function We(e){let{mode:t,target:n,from:r,nativeRouter:i,routeResolveCodec:a,namedRouteLookup:o,beforeEachGuards:s,beforeResolveGuards:c,maxRedirects:u,tabBarPathSet:d,resolveWithCodec:f}=e,p=n,m=t,h=0;for(;;){var g;let e=d.has(p.path);if(W(p,a.stringifyQuery)===W(r,a.stringifyQuery)&&p.hash!==r.hash)return Z(m,r,p,Ve(p,r));if(e?p.path===r.path:p.fullPath===r.fullPath)return Z(m,r,p,ze(p,r));if(e&&Ce(p.query))return Z(m,r,p,Be(p,r));let t=await Y(s,{mode:m,to:p,from:r,nativeRouter:i},f);if(t.status===`failure`)return Z(m,r,p,t.failure);if(t.status===`redirect`){let e=t.target,n=t.replace===!0?`replace`:t.replace===!1?`push`:m;if(e.fullPath!==p.fullPath||n!==m){if($(e,p),p=e,m=n,h+=1,h>u)return Z(m,r,p,Q(p,r,u));continue}}let n=ae(p,o),_=(g=n==null?void 0:n.matchedRecords)==null?[]:g,v=!1;for(let e of _){if(e.redirect===void 0)continue;let t;try{t=await Ue(e.redirect,p,r,f)}catch(e){return Z(m,r,p,q(G.aborted,p,r,e))}let n=t.replace===!1?`push`:`replace`,i=t.target;if(i.fullPath!==p.fullPath||n!==m){if($(i,p),p=i,m=n,h+=1,h>u)return Z(m,r,p,Q(p,r,u));v=!0;break}}if(v)continue;let y=!1;for(let e of _){if(e.beforeEnterGuards.length===0)continue;let t=await Y(new Set(e.beforeEnterGuards),{mode:m,to:p,from:r,nativeRouter:i},f);if(t.status===`failure`)return Z(m,r,p,t.failure);if(t.status===`redirect`){let e=t.target,n=t.replace===!0?`replace`:t.replace===!1?`push`:m;if(e.fullPath!==p.fullPath||n!==m){if($(e,p),p=e,m=n,h+=1,h>u)return Z(m,r,p,Q(p,r,u));y=!0;break}}}if(y)continue;let b=await Y(c,{mode:m,to:p,from:r,nativeRouter:i},f);if(b.status===`failure`)return Z(m,r,p,b.failure);if(b.status===`redirect`){let e=b.target,t=b.replace===!0?`replace`:b.replace===!1?`push`:m;if(e.fullPath!==p.fullPath||t!==m){if($(e,p),p=e,m=t,h+=1,h>u)return Z(m,r,p,Q(p,r,u));continue}}if(e){let e=await X(i.switchTab,{url:l(p.path)},p,r);return J(e)?Z(m,r,p,e):Z(m,r,p)}let x=await X(m===`push`?i.navigateTo:i.redirectTo,{url:W(p,a.stringifyQuery)},p,r);return J(x)?Z(m,r,p,x):Z(m,r,p)}}function Ge(e){let{nativeRouter:t,route:n,routeResolveCodec:r,namedRouteLookup:i,beforeEachGuards:a,beforeResolveGuards:o,maxRedirects:s,tabBarPathSet:c,resolveWithCodec:l,settleNavigationResult:u}=e;async function d(e){let d=U(n),f;try{f=l(e,d.path)}catch(e){return u(Z(`push`,d,void 0,q(G.unknown,void 0,d,e)))}return u(await We({mode:`push`,target:f,from:d,nativeRouter:t,routeResolveCodec:r,namedRouteLookup:i,beforeEachGuards:a,beforeResolveGuards:o,maxRedirects:s,tabBarPathSet:c,resolveWithCodec:l}))}async function f(e){let d=U(n),f;try{f=l(e,d.path)}catch(e){return u(Z(`replace`,d,void 0,q(G.unknown,void 0,d,e)))}return u(await We({mode:`replace`,target:f,from:d,nativeRouter:t,routeResolveCodec:r,namedRouteLookup:i,beforeEachGuards:a,beforeResolveGuards:o,maxRedirects:s,tabBarPathSet:c,resolveWithCodec:l}))}async function p(e=1){let r=U(n),i=await Y(a,{mode:`back`,from:r,nativeRouter:t},l);if(i.status===`failure`)return u(Z(`back`,r,void 0,i.failure));if(i.status===`redirect`)return u(Z(`back`,r,void 0,q(G.aborted,void 0,r,`Redirect is not supported in back navigation guards`)));let s=await Y(o,{mode:`back`,from:r,nativeRouter:t},l);if(s.status===`failure`)return u(Z(`back`,r,void 0,s.failure));if(s.status===`redirect`)return u(Z(`back`,r,void 0,q(G.aborted,void 0,r,`Redirect is not supported in back navigation guards`)));let c=await X(t.navigateBack,{delta:e},void 0,r);return u(J(c)?Z(`back`,r,void 0,c):Z(`back`,r))}async function m(e){if(e<0)return p(Math.abs(e));if(e===0)return;let t=U(n);return u(Z(`back`,t,void 0,He(t)))}async function h(){return m(1)}return{push:d,replace:f,back:p,go:m,forward:h}}const Ke={parseQuery:p,stringifyQuery:b};function qe(e,t=``,n=Ke){var r,i,a,o;if(typeof e==`string`){let r=f(e,n);return _(g(r.path,t),r.query,r.hash,void 0,{},n.stringifyQuery)}let s=typeof e.fullPath==`string`?f(e.fullPath,n):void 0;return _(g((r=(i=e.path)==null?s==null?void 0:s.path:i)==null?t:r,t),e.query?v(e.query):(a=s==null?void 0:s.query)==null?{}:a,h((o=e.hash)==null?s==null?void 0:s.hash:o),typeof e.name==`string`?e.name:void 0,e.params?c(e.params):{},n.stringifyQuery)}function Je(e){let t={name:e.name,path:e.path?`/${e.path}`:`/`};return e.meta!==void 0&&(t.meta=R(e.meta)),e.aliasPaths.length===1?t.alias=l(e.aliasPaths[0]):e.aliasPaths.length>1&&(t.alias=e.aliasPaths.map(e=>l(e))),e.beforeEnterGuards.length===1?t.beforeEnter=e.beforeEnterGuards[0]:e.beforeEnterGuards.length>1&&(t.beforeEnter=e.beforeEnterGuards.slice()),e.redirect!==void 0&&(t.redirect=e.redirect),t}function Ye(e){let t=t=>e.recordByName.has(t),n=()=>Array.from(e.recordByName.values(),Je),r=((t,n)=>{let r=typeof t==`string`?n:t;if(!r)throw Error(`Route record is required when adding a child route`);se(r);let i=typeof t==`string`?t:void 0,a=i?e.recordByName.get(i):void 0;if(i&&!a)throw Error(`Parent route "${i}" is not defined in createRouter({ routes | namedRoutes })`);let o=I([r],a==null?void 0:a.path,i,a==null?void 0:a.aliasPaths,void 0,`addRoute`);if(o.length===0)throw Error(`Route name and path are required when adding a named route`);let s=[];for(let t of o){let n=fe(t.route,t.parentName);if(!n)continue;let r=e.recordByName.get(n.name);if(r){let t=j(r.name,e.recordByName);for(let n of t)e.recordByName.delete(n);N(`addRoute() replaced existing route "${n.name}" (${l(r.path)} -> ${l(n.path)}) and removed ${t.size-1} nested route(s)`)}e.recordByName.set(n.name,n),s.push(n)}return e.nameByStaticPath=L(e.recordByName),()=>{let t=!1;for(let n of s)e.recordByName.get(n.name)===n&&(e.recordByName.delete(n.name),t=!0);t&&(e.nameByStaticPath=L(e.recordByName))}});function i(t){let n=j(t,e.recordByName);if(n.size===0)return;let r=!1;for(let t of n)r=e.recordByName.delete(t)||r;r&&(e.nameByStaticPath=L(e.recordByName))}function a(){e.recordByName.clear(),e.nameByStaticPath.clear()}return{hasRoute:t,getRoutes:n,addRoute:r,removeRoute:i,clearRoutes:a}}function Xe(e,t){e.path=t.path,e.fullPath=t.fullPath,e.query=B(t.query),e.hash=t.hash,e.params=V(t.params),t.name===void 0?delete e.name:e.name=t.name,t.meta===void 0?delete e.meta:e.meta=R(t.meta),t.href===void 0?delete e.href:e.href=t.href,t.matched===void 0?delete e.matched:e.matched=z(t.matched),t.redirectedFrom===void 0?delete e.redirectedFrom:e.redirectedFrom=H(t.redirectedFrom)}function Ze(c={}){var l;let u=s();if(!u)throw Error(`useRoute() 必须在 setup() 的同步阶段调用`);let d=u.instance,f=(l=c.resolveRoute)==null?(e=>{var t,n;return(t=(n=De())==null?void 0:n.resolve(e))==null?e:t}):l,p=f(o(void 0,d)),m=e({path:p.path,fullPath:p.fullPath,query:B(p.query),hash:p.hash,params:V(p.params)});Xe(m,p);function h(e){Xe(m,f(o(e,d)))}return n(e=>{h(e)}),r(()=>{h()}),i(()=>{h()}),t(()=>{h()}),a(m)}function Qe(){return m()}function $e(){return y()}function et(e={}){var t,n,r,i,a,o;let s=Qe(),c=new Set,l=new Set,u=new Set,d=new Set,f=(t=e.maxRedirects)==null?10:t,m=(n=e.paramsMode)==null?`loose`:n,h=(r=e.rejectOnError)==null?!0:r,_={parseQuery:(i=e.parseQuery)==null?p:i,stringifyQuery:(a=e.stringifyQuery)==null?b:a},v=Promise.resolve(),y=_e(e);ce(y);let x=ve(y),S=((o=e.tabBarEntries)==null?[]:o).map(e=>g(e,``)).filter(Boolean),C=new Set(S),w=Ye(x),T=be(S,w.getRoutes(),m,f,_,h);function E(e){let t={...e};t.href=t.fullPath;let n=ae(t,x);if(n){let e=n.record;t.name===void 0&&(t.name=e.name);let r=re(n.matchedRecords);r!==void 0&&(t.meta=R(r)),n.params&&Object.keys(t.params).length===0&&(t.params=V(n.params)),t.matched=n.matchedRecords.map((e,t,r)=>xe(e,t===r.length-1?n.matchedPath:void 0))}else t.matched=[];return t}function D(e,t){return E(qe(typeof e==`string`?e:te(e,x,m),t,_))}let O=Ze({resolveRoute:E});function ee(e){return D(e,O.path)}let k=Ge({nativeRouter:s,route:O,routeResolveCodec:_,namedRouteLookup:x,beforeEachGuards:c,beforeResolveGuards:l,maxRedirects:f,tabBarPathSet:C,resolveWithCodec:D,settleNavigationResult:Re({afterEachHooks:u,errorHandlers:d,nativeRouter:s,rejectOnError:h}).settleNavigationResult});function ne(e){return c.add(e),()=>{c.delete(e)}}function A(e){return l.add(e),()=>{l.delete(e)}}function j(e){return u.add(e),()=>{u.delete(e)}}function ie(e){return d.add(e),()=>{d.delete(e)}}let M={nativeRouter:s,options:T,currentRoute:O,install(e){var t;Ee(M);let n=e==null||(t=e.config)==null?void 0:t.globalProperties;n&&(n.$router=M)},resolve:ee,isReady(){return v},push:k.push,replace:k.replace,back:k.back,go:k.go,forward:k.forward,hasRoute:w.hasRoute,getRoutes:w.getRoutes,addRoute:w.addRoute,removeRoute:w.removeRoute,clearRoutes:w.clearRoutes,beforeEach:ne,beforeResolve:A,afterEach:j,onError:ie};return Ee(M),M}function tt(){let e=De();if(e)return e;throw Error(`useRouter() 未找到已创建的 router 实例。请先在 setup() 中调用 createRouter()。`)}export{G as NavigationFailureType,q as createNavigationFailure,et as createRouter,J as isNavigationFailure,p as parseQuery,qe as resolveRouteLocation,b as stringifyQuery,$e as useNativePageRouter,Qe as useNativeRouter,Ze as useRoute,tt as useRouter};
|
|
1
|
+
import{d as e}from"./ref-DSmyUM92.mjs";import{K as t,L as n,W as r,X as i,_t as a,a as o,at as s,c,d as l,f as u,g as d,i as f,l as p,n as m,o as h,p as g,r as _,s as v,t as y,u as b,v as x}from"./router-DDpO7cAw.mjs";const S=/^:(\w+)(?:\([^)]*\))?([+*?])?$/;function C(e){var t;let n=S.exec(e);if(n)return{key:n[1],modifier:(t=n[2])==null?``:t}}function w(e){return e===void 0?[]:Array.isArray(e)?e:[e]}function T(e){return encodeURIComponent(e)}function E(e){try{return decodeURIComponent(e)}catch(t){return e}}function D(e,t,n){let r=[],i=new Set;for(let a of e.split(`/`)){if(!a)continue;let e=C(a);if(!e){r.push(a);continue}let o=w(t[e.key]);if(e.modifier===``){if(o.length!==1)throw Error(`Missing required param "${e.key}" for named route "${n}"`);i.add(e.key),r.push(T(o[0]));continue}if(e.modifier===`?`){if(o.length===0)continue;if(o.length>1)throw Error(`Param "${e.key}" for named route "${n}" must be a single value`);i.add(e.key),r.push(T(o[0]));continue}if(e.modifier===`+`){if(o.length===0)throw Error(`Missing required repeatable param "${e.key}" for named route "${n}"`);i.add(e.key);for(let e of o)r.push(T(e));continue}o.length>0&&i.add(e.key);for(let e of o)r.push(T(e))}return{path:r.join(`/`),consumedKeys:i}}function O(e){return e===void 0?!1:Array.isArray(e)?e.length>0:!0}function ee(e,t,n){let r=Object.keys(e).filter(e=>!t.has(e)).filter(t=>O(e[t]));if(r.length!==0)throw Error(`Unexpected params for named route "${n}": ${r.join(`, `)}`)}function te(e,t,n){let r=e.name;if(typeof r!=`string`||!r||e.path!==void 0||e.fullPath!==void 0)return e;let i=t.recordByName.get(r);if(!i)throw Error(`Named route "${r}" is not defined in createRouter({ routes | namedRoutes })`);let a=e.params?c(e.params):{},o=D(i.path,a,r);return n===`strict`&&ee(a,o.consumedKeys,r),{...e,path:o.path?`/${o.path}`:`/`,params:a}}function k(e){return e.split(`/`).filter(Boolean)}function ne(e){return[e.path,...e.aliasPaths]}function A(e,t){let n=[],r=new Set,i=e;for(;i&&!(r.has(i.name)||(r.add(i.name),n.unshift(i),!i.parentName));)i=t.recordByName.get(i.parentName);return n}function re(e){let t;for(let n of e)n.meta&&(t||(t={}),Object.assign(t,n.meta));return t}function j(e,t){let n=new Set;if(!t.has(e))return n;n.add(e);let r=!0;for(;r;){r=!1;for(let[e,i]of t.entries())!i.parentName||n.has(e)||n.has(i.parentName)&&(n.add(e),r=!0)}return n}function ie(e){let t={};for(let[n,r]of e.entries())r.length!==0&&(t[n]=r.length===1?r[0]:r);return t}function M(e,t){let n=k(e),r=k(t),i=new Map,a=(e,t)=>{let n=i.get(e);if(n){n.push(t);return}i.set(e,[t])},o=e=>{let t=i.get(e);!t||t.length===0||(t.pop(),t.length===0&&i.delete(e))},s=(e,t,n)=>{for(let i=0;i<n;i+=1)a(e,E(r[t+i]));return()=>{for(let t=0;t<n;t+=1)o(e)}},c=(e,t)=>{if(e>=n.length)return t>=r.length;let i=n[e],l=C(i);if(!l)return t>=r.length||i!==r[t]?!1:c(e+1,t+1);if(l.modifier===``){if(t>=r.length)return!1;a(l.key,E(r[t]));let n=c(e+1,t+1);return n||o(l.key),n}if(l.modifier===`?`){if(t<r.length){if(a(l.key,E(r[t])),c(e+1,t+1))return!0;o(l.key)}return c(e+1,t)}let u=+(l.modifier===`+`),d=r.length-t;for(let n=d;n>=u;--n){let r=s(l.key,t,n);if(c(e+1,t+n))return!0;r()}return!1};if(c(0,0))return ie(i)}function ae(e,t){if(e.name){let n=t.recordByName.get(e.name);if(n)return{record:n,matchedRecords:A(n,t)}}let n=t.nameByStaticPath.get(e.path);if(n){let r=t.recordByName.get(n);if(r)return{record:r,matchedRecords:A(r,t),matchedPath:e.path}}for(let n of t.recordByName.values())for(let r of ne(n)){if(!u(r))continue;let i=M(r,e.path);if(i)return{record:n,matchedRecords:A(n,t),matchedPath:r,params:i}}}function N(e){typeof console>`u`||typeof console.warn!=`function`||console.warn(`[wevu/router] ${e}`)}function oe(e){let t=g(e,``);return t?l(t):`/`}function P(e,t=new Set){if(t.has(e))return!0;if(!Array.isArray(e.children)||e.children.length===0)return!1;let n=new Set(t);n.add(e);for(let t of e.children)if(P(t,n))return!0;return!1}function se(e){let t=typeof e.name==`string`?e.name.trim():``;if(!t)throw Error(`Route name is required when adding a named route`);if(typeof e.path!=`string`||!e.path)throw Error(`Route path is required when adding named route "${t}"`);if(P(e))throw Error(`Circular children reference detected when adding named route "${t}"`)}function ce(e){let t=new Map,n=[];for(let i of e){var r;let e=typeof i.route.name==`string`?i.route.name.trim():``;if(!e)continue;let a=(r=i.source)==null?`namedRoutes`:r,o=oe(i.route.path),s=t.get(e);s&&n.push(`"${e}" (${s.source}:${s.path} -> ${a}:${o})`),t.set(e,{source:a,path:o})}n.length!==0&&N(`duplicate route names detected, later entries override earlier ones: ${n.join(`, `)}`)}function le(e){return e?Array.isArray(e)?e:[e]:[]}function ue(e,t,n=`namedRoutes`){return typeof e.name==`string`&&e.name.trim()?e.name.trim():n===`routes`?t||`/`:``}function de(e,t){if(!e)return[];let n=Array.isArray(e)?e:[e],r=[];for(let e of n){if(typeof e!=`string`)continue;let n=g(e,``);!n||n===t||r.includes(n)||r.push(n)}return r}function fe(e,t,n=`namedRoutes`){let r=g(e.path,``);if(!r&&e.path!==`/`)return;let i=ue(e,r,n);if(i)return{name:i,path:r,aliasPaths:de(e.alias,r),parentName:t,meta:e.meta,beforeEnterGuards:le(e.beforeEnter),redirect:e.redirect}}function F(e,t){return!t||e.startsWith(`/`)?g(e,``):g(`${l(t)}/${e}`,``)}function pe(e){return e?Array.isArray(e)?e.filter(e=>typeof e==`string`&&e.length>0):typeof e==`string`&&e.length>0?[e]:[]:[]}function me(e){let t=[];for(let n of e)!n||t.includes(n)||t.push(n);return t}function he(e){if(e.length!==0)return e.length===1?l(e[0]):e.map(e=>l(e))}function I(e,t,n,r=[],i,a=`namedRoutes`,o=new Set){let s=[];for(let[c,u]of e.entries()){let e=`${a}[${c}]`;if(o.has(u)){N(`ignored route record at ${e}: detected circular children reference`);continue}if(typeof u.path!=`string`||!u.path){N(`ignored route record "${typeof(u==null?void 0:u.name)==`string`?u.name.trim():``}" at ${e}: route path is required`);continue}let d=F(u.path,t),f=ue(u,d,i);if(!f){N(`ignored route record at ${e}: route name is required`);continue}let p=[],m=new Map;for(let n of pe(u.alias)){let r=F(n,t);if(!r)continue;if(r===d){N(`ignored alias "${l(r)}" for route "${f}" at ${e}: alias is same as route path`);continue}let i=m.get(r);if(i){N(`ignored duplicate alias "${l(r)}" for route "${f}" at ${e}: already declared by "${i}"`);continue}m.set(r,n),p.push(r)}let h=u.path.startsWith(`/`)?[]:r.map(e=>F(u.path,e)).filter(Boolean).filter(e=>e!==d),g=me([...p,...h]),_={name:f,path:d?l(d):`/`,alias:he(g),meta:u.meta,beforeEnter:u.beforeEnter,redirect:u.redirect};if(s.push({route:_,parentName:n,source:i}),Array.isArray(u.children)&&u.children.length>0){let t=new Set(o);t.add(u),s.push(...I(u.children,d,f,g,i,`${e}.children`,t))}}return s}function ge(e,t=`namedRoutes`){if(!e)return[];if(Array.isArray(e))return I(e,void 0,void 0,[],t,t);let n=[];for(let[r,i]of Object.entries(e)){let e=typeof r==`string`?r.trim():``;if(!e){N(`ignored route record at ${t}: route name is required`);continue}if(typeof i!=`string`||!i){N(`ignored route record "${e}" at ${t}: route path is required`);continue}n.push({route:{name:e,path:i},source:t})}return n}function _e(e){return[...ge(e.routes,`routes`),...ge(e.namedRoutes,`namedRoutes`)]}function L(e){let t=new Map;for(let[n,r]of e.entries()){!u(r.path)&&!t.has(r.path)&&t.set(r.path,n);for(let e of r.aliasPaths)!u(e)&&!t.has(e)&&t.set(e,n)}return t}function ve(e){let t=new Map;for(let n of e){let e=fe(n.route,n.parentName,n.source);e&&t.set(e.name,e)}return{recordByName:t,nameByStaticPath:L(t)}}function R(e){if(e)return{...e}}function ye(e){let t={name:e.name,path:e.path};return e.meta!==void 0&&(t.meta=R(e.meta)),Array.isArray(e.alias)?t.alias=Object.freeze(e.alias.slice()):e.alias!==void 0&&(t.alias=e.alias),Array.isArray(e.beforeEnter)?t.beforeEnter=Object.freeze(e.beforeEnter.slice()):e.beforeEnter!==void 0&&(t.beforeEnter=e.beforeEnter),e.redirect!==void 0&&(t.redirect=e.redirect),Object.freeze(t)}function be(e,t,n,r,i,a){let o=Object.freeze(e.map(e=>l(e))),s=Object.freeze(t.map(ye));return Object.freeze({tabBarEntries:o,routes:s,namedRoutes:s,paramsMode:n,maxRedirects:r,parseQuery:i.parseQuery,stringifyQuery:i.stringifyQuery,rejectOnError:a})}function xe(e,t){let n={name:e.name,path:l(e.path)},r=typeof t==`string`&&t?l(g(t,``)):void 0;return r&&r!==n.path&&(n.aliasPath=r),e.meta!==void 0&&(n.meta=R(e.meta)),n}function z(e){if(e)return e.map(e=>({name:e.name,path:e.path,aliasPath:e.aliasPath,meta:R(e.meta)}))}function B(e){let t={};for(let n of Object.keys(e)){let r=e[n];t[n]=Array.isArray(r)?r.slice():r}return t}function V(e){let t={};for(let n of Object.keys(e)){let r=e[n];t[n]=Array.isArray(r)?r.slice():r}return t}function H(e){if(!e)return;let t={path:e.path,fullPath:e.fullPath,query:B(e.query),hash:e.hash,params:V(e.params)};return e.name!==void 0&&(t.name=e.name),e.meta!==void 0&&(t.meta=R(e.meta)),e.href!==void 0&&(t.href=e.href),e.matched!==void 0&&(t.matched=z(e.matched)),t}function Se(e){let t={path:e.path,fullPath:e.fullPath,query:B(e.query),hash:e.hash,params:V(e.params)};return e.name!==void 0&&(t.name=e.name),e.meta!==void 0&&(t.meta=R(e.meta)),e.href!==void 0&&(t.href=e.href),e.matched!==void 0&&(t.matched=z(e.matched)),t}function U(e){let t={path:e.path,fullPath:e.fullPath,query:B(e.query),hash:e.hash,params:V(e.params)};return e.meta!==void 0&&(t.meta=R(e.meta)),e.href!==void 0&&(t.href=e.href),e.matched!==void 0&&(t.matched=z(e.matched)),e.redirectedFrom!==void 0&&(t.redirectedFrom=H(e.redirectedFrom)),e.name!==void 0&&(t.name=e.name),t}function W(e,t=b){let n=l(e.path),r=t(e.query);return r?`${n}?${r}`:n}function Ce(e){return Object.keys(e).length>0}const we=Symbol(`wevu.router.instance`);let Te;function Ee(e){Te=e,x(we,e)}function De(){var e;return(e=Te)==null?d(we,void 0):e}const G={unknown:1,aborted:4,cancelled:8,duplicated:16},Oe=/already|same|duplicat|重复/,ke=/cancel|取消/,Ae=/abort|interrupt|中断/;function je(e){if(typeof e==`string`)return e;if(e&&typeof e==`object`){let t=e.errMsg;if(typeof t==`string`)return t;if(e instanceof Error)return e.message}return``}function K(e){let t=je(e).toLowerCase();return Oe.test(t)?G.duplicated:ke.test(t)?G.cancelled:Ae.test(t)?G.aborted:G.unknown}function q(e,t,n,r){let i=je(r)||`Navigation failed`,a=Error(i);return a.__wevuNavigationFailure=!0,a.type=e,a.to=t,a.from=n,a.cause=r,a}function J(e,t){if(!e||typeof e!=`object`)return!1;let n=e;return n.__wevuNavigationFailure===!0?t===void 0?!0:n.type===t:!1}function Me(e){return!e||typeof e!=`object`?!1:`to`in e}function Ne(e){if(typeof e==`string`)return!0;if(!e||typeof e!=`object`)return!1;let t=e;return`path`in t||`fullPath`in t||`query`in t||`hash`in t||`name`in t||`params`in t}async function Y(e,t,n){for(let r of e)try{let e=await r(t.to,t.from,t);if(J(e))return{status:`failure`,failure:e};if(e===!1)return{status:`failure`,failure:q(G.aborted,t.to,t.from,`Navigation aborted by guard`)};if(Me(e))return t.to?{status:`redirect`,target:n(e.to,t.to.path),replace:e.replace}:{status:`failure`,failure:q(G.aborted,t.to,t.from,`Redirect is not supported in back navigation guards`)};if(Ne(e))return t.to?{status:`redirect`,target:n(e,t.to.path)}:{status:`failure`,failure:q(G.aborted,t.to,t.from,`Redirect is not supported in back navigation guards`)}}catch(e){return{status:`failure`,failure:q(G.aborted,t.to,t.from,e)}}return{status:`continue`}}function X(e,t,n,r){return new Promise(i=>{let a=!1,o=e=>{a||(a=!0,i(e))};try{let i=e({...t,success:()=>o(),fail:e=>{o(q(K(e),n,r,e))}});i&&typeof i.then==`function`&&i.then(()=>o(),e=>o(q(K(e),n,r,e)))}catch(e){o(q(K(e),n,r,e))}})}async function Pe(e,t){for(let n of e)try{await n(t.to,t.from,t.failure,t)}catch(e){}}async function Fe(e,t,n){for(let r of e)try{await r(t,n)}catch(e){}}function Ie(e){return!e||typeof e!=`object`?!1:typeof e.errMsg==`string`}function Le(e){return e.type===G.unknown||e.cause instanceof Error?!0:e.type===G.aborted&&e.cause!==void 0?!(typeof e.cause==`string`||Ie(e.cause)):!1}function Z(e,t,n,r){return{mode:e,from:t,to:n,failure:r}}function Re(e){let{afterEachHooks:t,errorHandlers:n,nativeRouter:r,rejectOnError:i}=e;async function a(e){if(await Pe(t,{mode:e.mode,to:e.to,from:e.from,nativeRouter:r,failure:e.failure}),e.failure&&Le(e.failure)){var i;await Fe(n,(i=e.failure.cause)==null?e.failure:i,{mode:e.mode,to:e.to,from:e.from,nativeRouter:r,failure:e.failure})}}function o(e){return i&&Le(e)}async function s(e){if(await a(e),e.failure&&o(e.failure))throw e.failure;return e.failure}return{settleNavigationResult:s}}function ze(e,t){return q(G.duplicated,e,t,`Avoided redundant navigation to current location`)}function Be(e,t){return q(G.aborted,e,t,`switchTab does not support query parameters`)}function Q(e,t,n){return q(G.aborted,e,t,`Navigation redirected more than ${n} times`)}function Ve(e,t){return q(G.aborted,e,t,`Hash-only navigation is not supported in mini-program router`)}function He(e){return q(G.aborted,void 0,e,`Forward navigation is not supported in mini-program router`)}function $(e,t){e.redirectedFrom=t.redirectedFrom?H(t.redirectedFrom):Se(t)}async function Ue(e,t,n,r){let i=typeof e==`function`?await e(t,n):e;return Me(i)?{target:r(i.to,t.path),replace:i.replace}:{target:r(i,t.path),replace:!0}}async function We(e){let{mode:t,target:n,from:r,nativeRouter:i,routeResolveCodec:a,namedRouteLookup:o,beforeEachGuards:s,beforeResolveGuards:c,maxRedirects:u,tabBarPathSet:d,resolveWithCodec:f}=e,p=n,m=t,h=0;for(;;){var g;let e=d.has(p.path);if(W(p,a.stringifyQuery)===W(r,a.stringifyQuery)&&p.hash!==r.hash)return Z(m,r,p,Ve(p,r));if(e?p.path===r.path:p.fullPath===r.fullPath)return Z(m,r,p,ze(p,r));if(e&&Ce(p.query))return Z(m,r,p,Be(p,r));let t=await Y(s,{mode:m,to:p,from:r,nativeRouter:i},f);if(t.status===`failure`)return Z(m,r,p,t.failure);if(t.status===`redirect`){let e=t.target,n=t.replace===!0?`replace`:t.replace===!1?`push`:m;if(e.fullPath!==p.fullPath||n!==m){if($(e,p),p=e,m=n,h+=1,h>u)return Z(m,r,p,Q(p,r,u));continue}}let n=ae(p,o),_=(g=n==null?void 0:n.matchedRecords)==null?[]:g,v=!1;for(let e of _){if(e.redirect===void 0)continue;let t;try{t=await Ue(e.redirect,p,r,f)}catch(e){return Z(m,r,p,q(G.aborted,p,r,e))}let n=t.replace===!1?`push`:`replace`,i=t.target;if(i.fullPath!==p.fullPath||n!==m){if($(i,p),p=i,m=n,h+=1,h>u)return Z(m,r,p,Q(p,r,u));v=!0;break}}if(v)continue;let y=!1;for(let e of _){if(e.beforeEnterGuards.length===0)continue;let t=await Y(new Set(e.beforeEnterGuards),{mode:m,to:p,from:r,nativeRouter:i},f);if(t.status===`failure`)return Z(m,r,p,t.failure);if(t.status===`redirect`){let e=t.target,n=t.replace===!0?`replace`:t.replace===!1?`push`:m;if(e.fullPath!==p.fullPath||n!==m){if($(e,p),p=e,m=n,h+=1,h>u)return Z(m,r,p,Q(p,r,u));y=!0;break}}}if(y)continue;let b=await Y(c,{mode:m,to:p,from:r,nativeRouter:i},f);if(b.status===`failure`)return Z(m,r,p,b.failure);if(b.status===`redirect`){let e=b.target,t=b.replace===!0?`replace`:b.replace===!1?`push`:m;if(e.fullPath!==p.fullPath||t!==m){if($(e,p),p=e,m=t,h+=1,h>u)return Z(m,r,p,Q(p,r,u));continue}}if(e){let e=await X(i.switchTab,{url:l(p.path)},p,r);return J(e)?Z(m,r,p,e):Z(m,r,p)}let x=await X(m===`push`?i.navigateTo:i.redirectTo,{url:W(p,a.stringifyQuery)},p,r);return J(x)?Z(m,r,p,x):Z(m,r,p)}}function Ge(e){let{nativeRouter:t,route:n,routeResolveCodec:r,namedRouteLookup:i,beforeEachGuards:a,beforeResolveGuards:o,maxRedirects:s,tabBarPathSet:c,resolveWithCodec:l,settleNavigationResult:u}=e;async function d(e){let d=U(n),f;try{f=l(e,d.path)}catch(e){return u(Z(`push`,d,void 0,q(G.unknown,void 0,d,e)))}return u(await We({mode:`push`,target:f,from:d,nativeRouter:t,routeResolveCodec:r,namedRouteLookup:i,beforeEachGuards:a,beforeResolveGuards:o,maxRedirects:s,tabBarPathSet:c,resolveWithCodec:l}))}async function f(e){let d=U(n),f;try{f=l(e,d.path)}catch(e){return u(Z(`replace`,d,void 0,q(G.unknown,void 0,d,e)))}return u(await We({mode:`replace`,target:f,from:d,nativeRouter:t,routeResolveCodec:r,namedRouteLookup:i,beforeEachGuards:a,beforeResolveGuards:o,maxRedirects:s,tabBarPathSet:c,resolveWithCodec:l}))}async function p(e=1){let r=U(n),i=await Y(a,{mode:`back`,from:r,nativeRouter:t},l);if(i.status===`failure`)return u(Z(`back`,r,void 0,i.failure));if(i.status===`redirect`)return u(Z(`back`,r,void 0,q(G.aborted,void 0,r,`Redirect is not supported in back navigation guards`)));let s=await Y(o,{mode:`back`,from:r,nativeRouter:t},l);if(s.status===`failure`)return u(Z(`back`,r,void 0,s.failure));if(s.status===`redirect`)return u(Z(`back`,r,void 0,q(G.aborted,void 0,r,`Redirect is not supported in back navigation guards`)));let c=await X(t.navigateBack,{delta:e},void 0,r);return u(J(c)?Z(`back`,r,void 0,c):Z(`back`,r))}async function m(e){if(e<0)return p(Math.abs(e));if(e===0)return;let t=U(n);return u(Z(`back`,t,void 0,He(t)))}async function h(){return m(1)}return{push:d,replace:f,back:p,go:m,forward:h}}const Ke={parseQuery:p,stringifyQuery:b};function qe(e,t=``,n=Ke){var r,i,a,o;if(typeof e==`string`){let r=f(e,n);return _(g(r.path,t),r.query,r.hash,void 0,{},n.stringifyQuery)}let s=typeof e.fullPath==`string`?f(e.fullPath,n):void 0;return _(g((r=(i=e.path)==null?s==null?void 0:s.path:i)==null?t:r,t),e.query?v(e.query):(a=s==null?void 0:s.query)==null?{}:a,h((o=e.hash)==null?s==null?void 0:s.hash:o),typeof e.name==`string`?e.name:void 0,e.params?c(e.params):{},n.stringifyQuery)}function Je(e){let t={name:e.name,path:e.path?`/${e.path}`:`/`};return e.meta!==void 0&&(t.meta=R(e.meta)),e.aliasPaths.length===1?t.alias=l(e.aliasPaths[0]):e.aliasPaths.length>1&&(t.alias=e.aliasPaths.map(e=>l(e))),e.beforeEnterGuards.length===1?t.beforeEnter=e.beforeEnterGuards[0]:e.beforeEnterGuards.length>1&&(t.beforeEnter=e.beforeEnterGuards.slice()),e.redirect!==void 0&&(t.redirect=e.redirect),t}function Ye(e){let t=t=>e.recordByName.has(t),n=()=>Array.from(e.recordByName.values(),Je),r=((t,n)=>{let r=typeof t==`string`?n:t;if(!r)throw Error(`Route record is required when adding a child route`);se(r);let i=typeof t==`string`?t:void 0,a=i?e.recordByName.get(i):void 0;if(i&&!a)throw Error(`Parent route "${i}" is not defined in createRouter({ routes | namedRoutes })`);let o=I([r],a==null?void 0:a.path,i,a==null?void 0:a.aliasPaths,void 0,`addRoute`);if(o.length===0)throw Error(`Route name and path are required when adding a named route`);let s=[];for(let t of o){let n=fe(t.route,t.parentName);if(!n)continue;let r=e.recordByName.get(n.name);if(r){let t=j(r.name,e.recordByName);for(let n of t)e.recordByName.delete(n);N(`addRoute() replaced existing route "${n.name}" (${l(r.path)} -> ${l(n.path)}) and removed ${t.size-1} nested route(s)`)}e.recordByName.set(n.name,n),s.push(n)}return e.nameByStaticPath=L(e.recordByName),()=>{let t=!1;for(let n of s)e.recordByName.get(n.name)===n&&(e.recordByName.delete(n.name),t=!0);t&&(e.nameByStaticPath=L(e.recordByName))}});function i(t){let n=j(t,e.recordByName);if(n.size===0)return;let r=!1;for(let t of n)r=e.recordByName.delete(t)||r;r&&(e.nameByStaticPath=L(e.recordByName))}function a(){e.recordByName.clear(),e.nameByStaticPath.clear()}return{hasRoute:t,getRoutes:n,addRoute:r,removeRoute:i,clearRoutes:a}}function Xe(e,t){e.path=t.path,e.fullPath=t.fullPath,e.query=B(t.query),e.hash=t.hash,e.params=V(t.params),t.name===void 0?delete e.name:e.name=t.name,t.meta===void 0?delete e.meta:e.meta=R(t.meta),t.href===void 0?delete e.href:e.href=t.href,t.matched===void 0?delete e.matched:e.matched=z(t.matched),t.redirectedFrom===void 0?delete e.redirectedFrom:e.redirectedFrom=H(t.redirectedFrom)}function Ze(c={}){var l;let u=s();if(!u)throw Error(`useRoute() 必须在 setup() 的同步阶段调用`);let d=u.instance,f=(l=c.resolveRoute)==null?(e=>{var t,n;return(t=(n=De())==null?void 0:n.resolve(e))==null?e:t}):l,p=f(o(void 0,d)),m=e({path:p.path,fullPath:p.fullPath,query:B(p.query),hash:p.hash,params:V(p.params)});Xe(m,p);function h(e){Xe(m,f(o(e,d)))}return n(e=>{h(e)}),r(()=>{h()}),i(()=>{h()}),t(()=>{h()}),a(m)}function Qe(){return m()}function $e(){return y()}function et(e={}){var t,n,r,i,a,o;let s=Qe(),c=new Set,l=new Set,u=new Set,d=new Set,f=(t=e.maxRedirects)==null?10:t,m=(n=e.paramsMode)==null?`loose`:n,h=(r=e.rejectOnError)==null?!0:r,_={parseQuery:(i=e.parseQuery)==null?p:i,stringifyQuery:(a=e.stringifyQuery)==null?b:a},v=Promise.resolve(),y=_e(e);ce(y);let x=ve(y),S=((o=e.tabBarEntries)==null?[]:o).map(e=>g(e,``)).filter(Boolean),C=new Set(S),w=Ye(x),T=be(S,w.getRoutes(),m,f,_,h);function E(e){let t={...e};t.href=t.fullPath;let n=ae(t,x);if(n){let e=n.record;t.name===void 0&&(t.name=e.name);let r=re(n.matchedRecords);r!==void 0&&(t.meta=R(r)),n.params&&Object.keys(t.params).length===0&&(t.params=V(n.params)),t.matched=n.matchedRecords.map((e,t,r)=>xe(e,t===r.length-1?n.matchedPath:void 0))}else t.matched=[];return t}function D(e,t){return E(qe(typeof e==`string`?e:te(e,x,m),t,_))}let O=Ze({resolveRoute:E});function ee(e){return D(e,O.path)}let k=Ge({nativeRouter:s,route:O,routeResolveCodec:_,namedRouteLookup:x,beforeEachGuards:c,beforeResolveGuards:l,maxRedirects:f,tabBarPathSet:C,resolveWithCodec:D,settleNavigationResult:Re({afterEachHooks:u,errorHandlers:d,nativeRouter:s,rejectOnError:h}).settleNavigationResult});function ne(e){return c.add(e),()=>{c.delete(e)}}function A(e){return l.add(e),()=>{l.delete(e)}}function j(e){return u.add(e),()=>{u.delete(e)}}function ie(e){return d.add(e),()=>{d.delete(e)}}let M={nativeRouter:s,options:T,currentRoute:O,install(e){var t;Ee(M);let n=e==null||(t=e.config)==null?void 0:t.globalProperties;n&&(n.$router=M)},resolve:ee,isReady(){return v},push:k.push,replace:k.replace,back:k.back,go:k.go,forward:k.forward,hasRoute:w.hasRoute,getRoutes:w.getRoutes,addRoute:w.addRoute,removeRoute:w.removeRoute,clearRoutes:w.clearRoutes,beforeEach:ne,beforeResolve:A,afterEach:j,onError:ie};return Ee(M),M}function tt(){let e=De();if(e)return e;throw Error(`useRouter() 未找到已创建的 router 实例。请先在 setup() 中调用 createRouter()。`)}export{G as NavigationFailureType,q as createNavigationFailure,et as createRouter,J as isNavigationFailure,p as parseQuery,qe as resolveRouteLocation,b as stringifyQuery,$e as useNativePageRouter,Qe as useNativeRouter,Ze as useRoute,tt as useRouter};
|