wevu 6.17.8 → 6.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base-BxKbbKVO.mjs +1 -0
- package/dist/computed-Xoi9XEUx.mjs +1 -0
- package/dist/dev/{base-ii6cqKIl.mjs → base-CYkvI7w8.mjs} +2 -2
- package/dist/dev/{base-ii6cqKIl.mjs.map → base-CYkvI7w8.mjs.map} +1 -1
- package/dist/dev/computed-BxRsUJgi.mjs +128 -0
- package/dist/dev/computed-BxRsUJgi.mjs.map +1 -0
- package/dist/dev/index.mjs +9 -9
- package/dist/dev/internal-reactivity.mjs +5 -5
- package/dist/dev/internal-runtime.mjs +3 -3
- package/dist/dev/internal-template.mjs +1 -1
- package/dist/dev/{ref-Bxwe2Kfo.mjs → ref-DRZC3Kc5.mjs} +6 -202
- package/dist/dev/ref-DRZC3Kc5.mjs.map +1 -0
- package/dist/dev/{router-D6H7HviN.mjs → router-BD-ovqV2.mjs} +69 -5
- package/dist/dev/router-BD-ovqV2.mjs.map +1 -0
- package/dist/dev/router.mjs +36 -13
- package/dist/dev/router.mjs.map +1 -1
- package/dist/dev/{store-7lzhCASj.mjs → store-HNsiQJ4d.mjs} +14 -10
- package/dist/dev/store-HNsiQJ4d.mjs.map +1 -0
- package/dist/dev/store.mjs +1 -1
- package/dist/dev/{template-DLHZbQ3E.mjs → template-n_iVr0ey.mjs} +2 -2
- package/dist/dev/{template-DLHZbQ3E.mjs.map → template-n_iVr0ey.mjs.map} +1 -1
- package/dist/dev/{templateRef-C4hJDc4O.mjs → templateRef-DuFamxmB.mjs} +108 -16
- package/dist/dev/templateRef-DuFamxmB.mjs.map +1 -0
- package/dist/dev/{toRefs-BVrN7XKZ.mjs → toRefs-D06VmFK2.mjs} +2 -2
- package/dist/dev/{toRefs-BVrN7XKZ.mjs.map → toRefs-D06VmFK2.mjs.map} +1 -1
- package/dist/dev/vue-demi.mjs +9 -9
- package/dist/dev/{watch-B46crqgs.mjs → watch-jrgL5ald.mjs} +121 -4
- package/dist/dev/watch-jrgL5ald.mjs.map +1 -0
- package/dist/fetch.d.mts +0 -1
- package/dist/{index-C6Jyiw-u.d.mts → index-CCET_bCY.d.mts} +3 -4
- package/dist/{index-HS9xxiUI.d.mts → index-Dg1-jV9L.d.mts} +17 -17
- package/dist/index.d.mts +5 -4
- package/dist/index.mjs +1 -1
- package/dist/internal-reactivity.d.mts +2 -1
- package/dist/internal-reactivity.mjs +1 -1
- package/dist/internal-runtime.d.mts +1 -1
- package/dist/internal-runtime.mjs +1 -1
- package/dist/internal-template.mjs +1 -1
- package/dist/jsx-runtime.d.mts +1 -2
- package/dist/ref-D37CknuD.mjs +1 -0
- package/dist/router-DLOOLAqv.mjs +1 -0
- package/dist/router.d.mts +1 -2
- package/dist/router.mjs +1 -1
- package/dist/store-eHrHBQiv.mjs +1 -0
- package/dist/store.d.mts +1 -1
- package/dist/store.mjs +1 -1
- package/dist/{template-CFhlojaH.mjs → template-CNzlwH-E.mjs} +1 -1
- package/dist/templateRef-C4R74tUR.mjs +1 -0
- package/dist/{toRefs-COgMIEoC.mjs → toRefs-CoytPyo0.mjs} +1 -1
- package/dist/traverse-B4Ez44Gd.d.mts +108 -0
- package/dist/vue-demi.d.mts +5 -6
- package/dist/vue-demi.mjs +1 -1
- package/dist/{vue-types-xMdYZRuG.d.mts → vue-types-B3N60cGV.d.mts} +13 -121
- package/dist/watch-Bbd-gmEg.mjs +1 -0
- package/dist/{weappIntrinsicElements-BjaNcUW3.d.mts → weappIntrinsicElements-BgDtC53_.d.mts} +1 -1
- package/package.json +2 -2
- package/dist/base-D-o2Hv6z.mjs +0 -1
- package/dist/computed-DdPJb4_M.mjs +0 -1
- package/dist/dev/computed-4hT2jDra.mjs +0 -48
- package/dist/dev/computed-4hT2jDra.mjs.map +0 -1
- package/dist/dev/ref-Bxwe2Kfo.mjs.map +0 -1
- package/dist/dev/router-D6H7HviN.mjs.map +0 -1
- package/dist/dev/store-7lzhCASj.mjs.map +0 -1
- package/dist/dev/templateRef-C4hJDc4O.mjs.map +0 -1
- package/dist/dev/watch-B46crqgs.mjs.map +0 -1
- package/dist/ref-CRwjgX_d.mjs +0 -1
- package/dist/router-BiJKkvy7.mjs +0 -1
- package/dist/store-B9C0AuaO.mjs +0 -1
- package/dist/templateRef-DPHQBy6k.mjs +0 -1
- package/dist/watch-6_s3_f8q.mjs +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as computed } from "./computed-
|
|
1
|
+
import { M as effect, N as effectScope, d as reactive, l as isReactive, n as isRef, v as toRaw } from "./ref-DRZC3Kc5.mjs";
|
|
2
|
+
import { i as touchReactive, t as computed } from "./computed-BxRsUJgi.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/store/actions.ts
|
|
5
5
|
function wrapAction(store, name, action, actionSubs) {
|
|
@@ -139,9 +139,8 @@ function createBaseApi(id, stateObj, notify, resetImpl) {
|
|
|
139
139
|
|
|
140
140
|
//#endregion
|
|
141
141
|
//#region src/store/define/shared.ts
|
|
142
|
-
const hasOwn = Object.prototype.hasOwnProperty;
|
|
143
142
|
function isTrackableRef(value) {
|
|
144
|
-
return isRef(value)
|
|
143
|
+
return isRef(value);
|
|
145
144
|
}
|
|
146
145
|
function snapshotValue(value) {
|
|
147
146
|
if (isReactive(value)) return cloneDeep(toRaw(value));
|
|
@@ -240,9 +239,12 @@ function createOptionsStyleStore(id, options, manager) {
|
|
|
240
239
|
const actionDefs = (_options$actions = options.actions) !== null && _options$actions !== void 0 ? _options$actions : {};
|
|
241
240
|
Object.keys(actionDefs).forEach((key) => {
|
|
242
241
|
const act = actionDefs[key];
|
|
243
|
-
if (typeof act === "function")
|
|
244
|
-
|
|
245
|
-
|
|
242
|
+
if (typeof act === "function") {
|
|
243
|
+
const wrapped = wrapAction(store, key, (...args) => {
|
|
244
|
+
return act.apply(store, args);
|
|
245
|
+
}, base.actionSubs);
|
|
246
|
+
store[key] = wrapped;
|
|
247
|
+
}
|
|
246
248
|
});
|
|
247
249
|
Object.keys(state).forEach((k) => {
|
|
248
250
|
Object.defineProperty(store, k, {
|
|
@@ -297,7 +299,9 @@ function createSetupStyleStore(id, setupFactory, manager) {
|
|
|
297
299
|
initialSnapshot.forEach((snapValue, key) => {
|
|
298
300
|
const current = instance[key];
|
|
299
301
|
if (isTrackableRef(current)) {
|
|
300
|
-
|
|
302
|
+
try {
|
|
303
|
+
current.value = cloneDeep(snapValue);
|
|
304
|
+
} catch (_unused) {}
|
|
301
305
|
return;
|
|
302
306
|
}
|
|
303
307
|
if (isReactive(current)) {
|
|
@@ -407,7 +411,7 @@ function createSetupStyleStore(id, setupFactory, manager) {
|
|
|
407
411
|
const plugins = (_manager$_plugins = manager === null || manager === void 0 ? void 0 : manager._plugins) !== null && _manager$_plugins !== void 0 ? _manager$_plugins : [];
|
|
408
412
|
for (const plugin of plugins) try {
|
|
409
413
|
plugin({ store: instance });
|
|
410
|
-
} catch (
|
|
414
|
+
} catch (_unused2) {}
|
|
411
415
|
return instance;
|
|
412
416
|
}
|
|
413
417
|
|
|
@@ -472,4 +476,4 @@ function storeToRefs(store) {
|
|
|
472
476
|
|
|
473
477
|
//#endregion
|
|
474
478
|
export { defineStore as n, createStore as r, storeToRefs as t };
|
|
475
|
-
//# sourceMappingURL=store-
|
|
479
|
+
//# sourceMappingURL=store-HNsiQJ4d.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store-HNsiQJ4d.mjs","names":[],"sources":["../../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 { 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\nexport function isTrackableRef(value: unknown) {\n return isRef(value)\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 try {\n current.value = cloneDeep(snapValue)\n }\n catch {\n // computed / readonly ref 不能写入,reset 时跳过这类派生状态。\n }\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
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { o as unref } from "./ref-
|
|
1
|
+
import { o as unref } from "./ref-DRZC3Kc5.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/runtime/template.ts
|
|
4
4
|
const hyphenateRE = /\B([A-Z])/g;
|
|
@@ -88,4 +88,4 @@ function resolvePropValue(target, key, fallback, preferProps = false) {
|
|
|
88
88
|
|
|
89
89
|
//#endregion
|
|
90
90
|
export { normalizeStyle as n, resolvePropValue as r, normalizeClass as t };
|
|
91
|
-
//# sourceMappingURL=template-
|
|
91
|
+
//# sourceMappingURL=template-n_iVr0ey.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-
|
|
1
|
+
{"version":3,"file":"template-n_iVr0ey.mjs","names":[],"sources":["../../src/runtime/template.ts"],"sourcesContent":["import { unref } from '../reactivity'\n\nconst hyphenateRE = /\\B([A-Z])/g\n\nfunction hasOwnProperty(target: object, key: string) {\n return Object.prototype.hasOwnProperty.call(target, key)\n}\n\nfunction hyphenate(value: string) {\n if (!value) {\n return ''\n }\n if (value.startsWith('--')) {\n return value\n }\n return value.replace(hyphenateRE, '-$1').toLowerCase()\n}\n\nfunction appendStyle(base: string, part: string) {\n if (!part) {\n return base\n }\n if (!base) {\n return part\n }\n let next = base\n if (!next.endsWith(';')) {\n next += ';'\n }\n const normalized = part.startsWith(';') ? part.slice(1) : part\n return next + normalized\n}\n\nfunction stringifyStyle(value: Record<string, any>) {\n let res = ''\n for (const key of Object.keys(value)) {\n const raw = unref(value[key])\n if (raw == null) {\n continue\n }\n const name = hyphenate(key)\n if (Array.isArray(raw)) {\n for (const itemValue of raw) {\n const item = unref(itemValue)\n if (item == null) {\n continue\n }\n res = appendStyle(res, `${name}:${item}`)\n }\n }\n else {\n res = appendStyle(res, `${name}:${raw}`)\n }\n }\n return res\n}\n\nexport function normalizeStyle(value: any): string {\n const unwrapped = unref(value)\n if (unwrapped == null) {\n return ''\n }\n if (typeof unwrapped === 'string') {\n return unwrapped\n }\n if (Array.isArray(unwrapped)) {\n let res = ''\n for (const item of unwrapped) {\n const normalized = normalizeStyle(item)\n if (normalized) {\n res = appendStyle(res, normalized)\n }\n }\n return res\n }\n if (typeof unwrapped === 'object') {\n return stringifyStyle(unwrapped)\n }\n return ''\n}\n\nexport function normalizeClass(value: any): string {\n const unwrapped = unref(value)\n let res = ''\n if (!unwrapped) {\n return res\n }\n if (typeof unwrapped === 'string') {\n return unwrapped\n }\n if (Array.isArray(unwrapped)) {\n for (const item of unwrapped) {\n const normalized = normalizeClass(item)\n if (normalized) {\n res += `${normalized} `\n }\n }\n return res.trim()\n }\n if (typeof unwrapped === 'object') {\n for (const key of Object.keys(unwrapped)) {\n if (unref(unwrapped[key])) {\n res += `${key} `\n }\n }\n return res.trim()\n }\n return res\n}\n\nexport function resolvePropValue(target: any, key: string, fallback: any, preferProps = false) {\n if (target == null) {\n return fallback\n }\n const propsObject = unref(target.__wevuProps)\n if (key === 'data') {\n if (propsObject != null && (propsObject[key] !== undefined || hasOwnProperty(propsObject, key))) {\n return propsObject[key]\n }\n return key in target ? target[key] : fallback\n }\n const hasPropsValue = propsObject != null\n && (propsObject[key] !== undefined || hasOwnProperty(propsObject, key))\n if (preferProps) {\n if (hasPropsValue) {\n return propsObject[key]\n }\n if (key in target) {\n return target[key]\n }\n return fallback\n }\n const stateObject = unref(target.$state)\n if (stateObject != null && hasOwnProperty(stateObject, key)) {\n return target[key]\n }\n if (hasPropsValue) {\n return propsObject[key]\n }\n if (!(key in target)) {\n return fallback\n }\n return target[key]\n}\n"],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as
|
|
3
|
-
import {
|
|
4
|
-
import { l as
|
|
5
|
-
import {
|
|
1
|
+
import { f as shallowReactive, l as shallowRef, m as queueJob, p as nextTick, t as watch } from "./watch-jrgL5ald.mjs";
|
|
2
|
+
import { A as removeMutationRecorder, B as trigger, M as effect, N as effectScope, R as stop, a as toValue, d as reactive, i as ref, k as addMutationRecorder, l as isReactive, n as isRef, o as unref, r as markAsRef, s as getReactiveVersion, t as customRef, v as toRaw, z as track } from "./ref-DRZC3Kc5.mjs";
|
|
3
|
+
import { i as touchReactive, n as clearPatchIndices, r as prelinkReactiveTree, t as computed } from "./computed-BxRsUJgi.mjs";
|
|
4
|
+
import { _ as getScopedSlotHostGlobalObject, c as getCurrentSetupContext, d as setCurrentSetupContext, g as getMiniProgramGlobalObject, h as getCurrentMiniProgramRuntimeCapabilities, l as pushHook, m as getCurrentMiniProgramPages, n as callHookList, p as getCurrentMiniProgramHostConfig, r as callHookReturn, s as getCurrentInstance, t as assertInSetup, u as setCurrentInstance, v as supportsCurrentMiniProgramRuntimeCapability, x as readonly } from "./base-CYkvI7w8.mjs";
|
|
5
|
+
import { $ as onShow, A as attachRuntimeProvideContext, C as ensureMiniProgramGlobalPatched, D as resolvePageOptions, E as releaseCurrentPageInstance, F as onAttached, G as onPullDownRefresh, I as onDetached, M as setRuntimeAppProvidedValue, O as runInPageScrollHook, S as bindCurrentPageInstance, T as getCurrentPageInstance, W as onPageScroll, j as ensureRuntimeAppProvides, k as attachRuntimeLayoutProvideContext, rt as onUnload, w as ensurePageShareMenus } from "./router-BD-ovqV2.mjs";
|
|
6
6
|
import { WEVU_ATTRS_KEY, WEVU_EFFECT_SCOPE_KEY, WEVU_EXPOSED_KEY, WEVU_FUNCTION_PROP_PATHS_KEY, WEVU_HOOKS_KEY, WEVU_INLINE_HANDLER, WEVU_INLINE_MAP_KEY, WEVU_IS_APP_INSTANCE_KEY, WEVU_LAYOUT_BRIDGE_PAGE_KEYS, WEVU_LAYOUT_HOST_BRIDGE_KEY, WEVU_MODEL_HANDLER, WEVU_NATIVE_INSTANCE_KEY, WEVU_ON_BEFORE_UPDATE_HOOK, WEVU_ON_LOAD_CALLED_KEY, WEVU_ON_UPDATED_HOOK, WEVU_OWNER_HANDLER, WEVU_PAGE_LAYOUT_NAME_KEY, WEVU_PAGE_LAYOUT_NONE, WEVU_PAGE_LAYOUT_PROPS_KEY, WEVU_PAGE_LAYOUT_SETTER_KEY, WEVU_PAGE_SCROLL_HOOK_DEPTH_KEY, WEVU_PARENT_INSTANCE_KEY, WEVU_PENDING_PROP_VALUES_KEY, WEVU_PROPS_ALIASES_KEY, WEVU_PROPS_DERIVED_KEYS_KEY, WEVU_PROPS_KEY, WEVU_PROP_KEYS_KEY, WEVU_PUBLIC_RUNTIME_KEY, WEVU_READY_CALLED_KEY, WEVU_RESERVED_METHOD_PREFIX, WEVU_ROUTE_DONE_CALLED_KEY, WEVU_ROUTE_DONE_IN_TICK_KEY, WEVU_RUNTIME_APP_KEY, WEVU_RUNTIME_KEY, WEVU_SCOPED_SLOT_CREATOR_KEY, WEVU_SCOPED_SLOT_OWNER_SEED_KEY, WEVU_SCOPED_SLOT_OWNER_STORE_KEY, WEVU_SETUP_CONTEXT_INSTANCE_KEY, WEVU_SETUP_STATE_KEY, WEVU_SLOT_NAMES_PROP, WEVU_SLOT_OWNER_ID_KEY, WEVU_SLOT_OWNER_ID_PROP, WEVU_SLOT_OWNER_KEY, WEVU_SLOT_OWNER_PROXY_KEY, WEVU_SLOT_PROPS_DATA_KEY, WEVU_SLOT_PROPS_KEY, WEVU_SLOT_SCOPE_KEY, WEVU_TEMPLATE_REFS_CALLBACKS_KEY, WEVU_TEMPLATE_REFS_KEY, WEVU_TEMPLATE_REFS_PENDING_KEY, WEVU_TEMPLATE_REF_MAP_KEY, WEVU_WATCH_STOPS_KEY } from "@weapp-core/constants";
|
|
7
|
-
import { createMiniProgramLayoutHostRegistry, normalizeMiniProgramLayoutHostKeys, resolveMiniProgramPageKeys } from "@weapp-core/shared";
|
|
8
7
|
import { wpi } from "@wevu/api";
|
|
9
8
|
|
|
10
9
|
//#region src/runtime/hooks/vue.ts
|
|
@@ -84,7 +83,7 @@ function callUpdateHooks(target, phase) {
|
|
|
84
83
|
|
|
85
84
|
//#endregion
|
|
86
85
|
//#region package.json
|
|
87
|
-
var version$1 = "6.
|
|
86
|
+
var version$1 = "6.18.0";
|
|
88
87
|
|
|
89
88
|
//#endregion
|
|
90
89
|
//#region src/version.ts
|
|
@@ -193,7 +192,8 @@ function createBindModel(publicInstance, state, computedRefs, computedSetters, s
|
|
|
193
192
|
};
|
|
194
193
|
const handlerKey = `on${capitalize(merged.event)}`;
|
|
195
194
|
const handler = (event) => {
|
|
196
|
-
|
|
195
|
+
const parsed = merged.parser(event);
|
|
196
|
+
assignValue(parsed);
|
|
197
197
|
};
|
|
198
198
|
return {
|
|
199
199
|
[merged.valueProp]: merged.formatter(resolveValue()),
|
|
@@ -3458,7 +3458,12 @@ function syncRuntimeStateFromNativeData(target) {
|
|
|
3458
3458
|
const runtimeState = (_target$__wevu2 = target.__wevu) === null || _target$__wevu2 === void 0 ? void 0 : _target$__wevu2.state;
|
|
3459
3459
|
const nativeData = target.data;
|
|
3460
3460
|
if (!runtimeState || typeof runtimeState !== "object" || !nativeData || typeof nativeData !== "object") return;
|
|
3461
|
-
for (const [key, value] of Object.entries(nativeData))
|
|
3461
|
+
for (const [key, value] of Object.entries(nativeData)) {
|
|
3462
|
+
if (!key || key === "undefined") continue;
|
|
3463
|
+
if (Object.prototype.hasOwnProperty.call(runtimeState, key)) try {
|
|
3464
|
+
runtimeState[key] = value;
|
|
3465
|
+
} catch (_unused3) {}
|
|
3466
|
+
}
|
|
3462
3467
|
}
|
|
3463
3468
|
function enableDeferredSetData(target) {
|
|
3464
3469
|
var _wevu, _wevu2, _wevu2$__wevu_flushSe;
|
|
@@ -3487,7 +3492,7 @@ function teardownRuntimeInstance(target) {
|
|
|
3487
3492
|
const stops = target[WEVU_WATCH_STOPS_KEY];
|
|
3488
3493
|
if (Array.isArray(stops)) for (const stop of stops) try {
|
|
3489
3494
|
stop();
|
|
3490
|
-
} catch (
|
|
3495
|
+
} catch (_unused4) {}
|
|
3491
3496
|
target[WEVU_WATCH_STOPS_KEY] = void 0;
|
|
3492
3497
|
(_target$WEVU_EFFECT_S = target[WEVU_EFFECT_SCOPE_KEY]) === null || _target$WEVU_EFFECT_S === void 0 || _target$WEVU_EFFECT_S.stop();
|
|
3493
3498
|
target[WEVU_EFFECT_SCOPE_KEY] = void 0;
|
|
@@ -4331,13 +4336,99 @@ function createPropsSync(options) {
|
|
|
4331
4336
|
|
|
4332
4337
|
//#endregion
|
|
4333
4338
|
//#region src/runtime/layoutBridge.ts
|
|
4334
|
-
|
|
4339
|
+
/**
|
|
4340
|
+
* @description 对 layout host key 去重并过滤空字符串。
|
|
4341
|
+
*/
|
|
4342
|
+
function normalizeLayoutHostKeys(keys) {
|
|
4343
|
+
return Array.from(new Set(Array.isArray(keys) ? keys : [keys])).filter((key) => typeof key === "string" && key.length > 0);
|
|
4344
|
+
}
|
|
4345
|
+
/**
|
|
4346
|
+
* @description 解析小程序页面实例的稳定身份 key。
|
|
4347
|
+
*/
|
|
4348
|
+
function resolvePageIdentityKeys(page) {
|
|
4349
|
+
if (!page || typeof page !== "object") return [];
|
|
4350
|
+
const keys = [];
|
|
4351
|
+
const route = typeof page.route === "string" ? page.route.replace(/^\/+/, "") : "";
|
|
4352
|
+
if (route) keys.push(`route:${route}`);
|
|
4353
|
+
for (const [prefix, field] of [["webview", "__wxWebviewId__"], ["exparser", "__wxExparserNodeId__"]]) {
|
|
4354
|
+
const value = page[field];
|
|
4355
|
+
if (typeof value === "number" || typeof value === "string") keys.push(`${prefix}:${String(value)}`);
|
|
4356
|
+
}
|
|
4357
|
+
return Array.from(new Set(keys));
|
|
4358
|
+
}
|
|
4359
|
+
/**
|
|
4360
|
+
* @description 创建小程序 layout host 注册表。
|
|
4361
|
+
*/
|
|
4362
|
+
function createLayoutHostRegistry() {
|
|
4363
|
+
const registries = /* @__PURE__ */ new Map();
|
|
4364
|
+
function register(keys, bridge, pageKeys) {
|
|
4365
|
+
const normalizedKeys = normalizeLayoutHostKeys(keys);
|
|
4366
|
+
if (normalizedKeys.length === 0 || pageKeys.length === 0) return null;
|
|
4367
|
+
for (const pageKey of pageKeys) {
|
|
4368
|
+
var _registries$get;
|
|
4369
|
+
const registry = (_registries$get = registries.get(pageKey)) !== null && _registries$get !== void 0 ? _registries$get : /* @__PURE__ */ new Map();
|
|
4370
|
+
for (const key of normalizedKeys) registry.set(key, bridge);
|
|
4371
|
+
registries.set(pageKey, registry);
|
|
4372
|
+
}
|
|
4373
|
+
return normalizedKeys;
|
|
4374
|
+
}
|
|
4375
|
+
function unregister(keys, bridge, pageKeys) {
|
|
4376
|
+
const normalizedKeys = normalizeLayoutHostKeys(keys);
|
|
4377
|
+
if (normalizedKeys.length === 0 || pageKeys.length === 0) return false;
|
|
4378
|
+
let removed = false;
|
|
4379
|
+
for (const pageKey of pageKeys) {
|
|
4380
|
+
const registry = registries.get(pageKey);
|
|
4381
|
+
if (!registry) continue;
|
|
4382
|
+
for (const key of normalizedKeys) if (registry.get(key) === bridge) {
|
|
4383
|
+
registry.delete(key);
|
|
4384
|
+
removed = true;
|
|
4385
|
+
}
|
|
4386
|
+
if (registry.size === 0) registries.delete(pageKey);
|
|
4387
|
+
}
|
|
4388
|
+
return removed;
|
|
4389
|
+
}
|
|
4390
|
+
function resolveBridge(key, pageKeys) {
|
|
4391
|
+
return pageKeys.map((pageKey) => {
|
|
4392
|
+
var _registries$get2;
|
|
4393
|
+
return (_registries$get2 = registries.get(pageKey)) === null || _registries$get2 === void 0 ? void 0 : _registries$get2.get(key);
|
|
4394
|
+
}).find(Boolean);
|
|
4395
|
+
}
|
|
4396
|
+
function resolveHost(key, pageKeys, resolver) {
|
|
4397
|
+
var _resolver;
|
|
4398
|
+
const bridge = resolveBridge(key, pageKeys);
|
|
4399
|
+
if (!bridge) return null;
|
|
4400
|
+
return (_resolver = resolver(bridge, key)) !== null && _resolver !== void 0 ? _resolver : null;
|
|
4401
|
+
}
|
|
4402
|
+
function waitForHost(key, resolvePageKeys, resolver, options = {}) {
|
|
4403
|
+
var _options$retries, _options$interval;
|
|
4404
|
+
const retries = (_options$retries = options.retries) !== null && _options$retries !== void 0 ? _options$retries : 20;
|
|
4405
|
+
const interval = (_options$interval = options.interval) !== null && _options$interval !== void 0 ? _options$interval : 16;
|
|
4406
|
+
const host = resolveHost(key, resolvePageKeys(), resolver);
|
|
4407
|
+
if (host || retries <= 0) return Promise.resolve(host);
|
|
4408
|
+
return new Promise((resolve) => {
|
|
4409
|
+
setTimeout(() => {
|
|
4410
|
+
resolve(waitForHost(key, resolvePageKeys, resolver, {
|
|
4411
|
+
...options,
|
|
4412
|
+
retries: retries - 1
|
|
4413
|
+
}));
|
|
4414
|
+
}, interval);
|
|
4415
|
+
});
|
|
4416
|
+
}
|
|
4417
|
+
return {
|
|
4418
|
+
register,
|
|
4419
|
+
resolveBridge,
|
|
4420
|
+
resolveHost,
|
|
4421
|
+
unregister,
|
|
4422
|
+
waitForHost
|
|
4423
|
+
};
|
|
4424
|
+
}
|
|
4425
|
+
const pageLayoutBridgeRegistry = createLayoutHostRegistry();
|
|
4335
4426
|
function resolveCurrentPageInstance() {
|
|
4336
4427
|
const pages = getCurrentMiniProgramPages();
|
|
4337
4428
|
return pages[pages.length - 1];
|
|
4338
4429
|
}
|
|
4339
4430
|
function resolvePageKeys(page) {
|
|
4340
|
-
return
|
|
4431
|
+
return resolvePageIdentityKeys(page);
|
|
4341
4432
|
}
|
|
4342
4433
|
function resolvePageFromContext(context) {
|
|
4343
4434
|
if (context && typeof context.__wevuSetPageLayout === "function") return context;
|
|
@@ -4464,7 +4555,7 @@ function waitForLayoutHost(key, options = {}) {
|
|
|
4464
4555
|
function useLayoutBridge(selectors, options = {}) {
|
|
4465
4556
|
if (!getCurrentSetupContext()) throw new Error("useLayoutBridge() 必须在 setup() 的同步阶段调用");
|
|
4466
4557
|
const context = getCurrentInstance();
|
|
4467
|
-
const normalizedSelectors =
|
|
4558
|
+
const normalizedSelectors = normalizeLayoutHostKeys(selectors);
|
|
4468
4559
|
const resolveComponent = options.resolveComponent;
|
|
4469
4560
|
const nativeContext = resolveNativeLayoutContext(context);
|
|
4470
4561
|
const bridgeBase = nativeContext && typeof nativeContext === "object" ? Object.create(nativeContext) : {};
|
|
@@ -6202,10 +6293,11 @@ function useBindModel(defaultOptions) {
|
|
|
6202
6293
|
const rawBindModel = instance.__wevu.bindModel.bind(instance.__wevu);
|
|
6203
6294
|
const bindModel = ((path, options) => {
|
|
6204
6295
|
if (!defaultOptions) return rawBindModel(path, options);
|
|
6205
|
-
|
|
6296
|
+
const merged = {
|
|
6206
6297
|
...defaultOptions,
|
|
6207
6298
|
...options
|
|
6208
|
-
}
|
|
6299
|
+
};
|
|
6300
|
+
return rawBindModel(path, merged);
|
|
6209
6301
|
});
|
|
6210
6302
|
bindModel.model = (path, options) => bindModel(path).model(options);
|
|
6211
6303
|
bindModel.value = (path, options) => {
|
|
@@ -6281,4 +6373,4 @@ function useTemplateRef(name) {
|
|
|
6281
6373
|
|
|
6282
6374
|
//#endregion
|
|
6283
6375
|
export { version as $, registerPageLayoutBridge as A, mountRuntimeInstance as B, useElementIntersectionObserver as C, defineComponent as D, createWevuScopedSlotComponent as E, unregisterRuntimeLayoutHosts as F, setPageLayout as G, teardownRuntimeInstance as H, useLayoutBridge as I, usePageLayout as J, syncRuntimePageLayoutState as K, useLayoutHosts as L, resolveLayoutBridge as M, resolveLayoutHost as N, createApp as O, unregisterPageLayoutBridge as P, markNoSetData as Q, waitForLayoutHost as R, useIntersectionObserver as S, createWevuComponent as T, runSetupFunction as U, setRuntimeSetDataVisibility as V, resolveRuntimePageLayoutName as W, setWevuDefaults as X, resetWevuDefaults as Y, isNoSetData as Z, usePageScrollThrottle as _, useModel as a, onDeactivated as at, useNavigationBarMetrics as b, useSlots as c, onServerPrefetch as ct, useUpdatePerformanceListener as d, callUpdateHooks as et, useBoundingClientRect as f, useAsyncPullDownRefresh as g, useSelectorQuery as h, useChangeModel as i, onBeforeUpdate as it, registerRuntimeLayoutHosts as j, registerComponent as k, defineAppSetup as l, onUnmounted as lt, useSelectorFields as m, mergeModels as n, onBeforeMount as nt, useAttrs as o, onErrorCaptured as ot, useScrollOffset as p, syncRuntimePageLayoutStateFromRuntime as q, useBindModel as r, onBeforeUnmount as rt, useNativeInstance as s, onMounted as st, useTemplateRef as t, onActivated as tt, use as u, onUpdated as ut, getCurrentPageStackSnapshot as v, useDisposables as w, usePageStack as x, getNavigationBarMetrics as y, registerApp as z };
|
|
6284
|
-
//# sourceMappingURL=templateRef-
|
|
6376
|
+
//# sourceMappingURL=templateRef-DuFamxmB.mjs.map
|