@alloy-js/core 0.23.0-dev.8 → 0.23.0-dev.9
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/src/components/Prose.js +2 -2
- package/dist/src/components/Prose.js.map +1 -1
- package/dist/src/components/Scope.d.ts.map +1 -1
- package/dist/src/components/Scope.js +2 -0
- package/dist/src/components/Scope.js.map +1 -1
- package/dist/src/components/SourceDirectory.d.ts.map +1 -1
- package/dist/src/components/SourceDirectory.js +1 -2
- package/dist/src/components/SourceDirectory.js.map +1 -1
- package/dist/src/content-slot.js +2 -2
- package/dist/src/content-slot.js.map +1 -1
- package/dist/src/context.js +2 -2
- package/dist/src/context.js.map +1 -1
- package/dist/src/debug/effects.d.ts +4 -0
- package/dist/src/debug/effects.d.ts.map +1 -1
- package/dist/src/debug/effects.js.map +1 -1
- package/dist/src/debug/effects.test.js +22 -24
- package/dist/src/debug/effects.test.js.map +1 -1
- package/dist/src/debug/index.d.ts +2 -1
- package/dist/src/debug/index.d.ts.map +1 -1
- package/dist/src/debug/index.js +2 -1
- package/dist/src/debug/index.js.map +1 -1
- package/dist/src/debug/symbols.d.ts +6 -0
- package/dist/src/debug/symbols.d.ts.map +1 -1
- package/dist/src/debug/symbols.js +9 -0
- package/dist/src/debug/symbols.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/reactive-union-set.d.ts.map +1 -1
- package/dist/src/reactive-union-set.js +13 -3
- package/dist/src/reactive-union-set.js.map +1 -1
- package/dist/src/reactivity.d.ts +34 -6
- package/dist/src/reactivity.d.ts.map +1 -1
- package/dist/src/reactivity.js +161 -123
- package/dist/src/reactivity.js.map +1 -1
- package/dist/src/render-stack.d.ts +1 -0
- package/dist/src/render-stack.d.ts.map +1 -1
- package/dist/src/render-stack.js +4 -0
- package/dist/src/render-stack.js.map +1 -1
- package/dist/src/render.d.ts.map +1 -1
- package/dist/src/render.js +15 -13
- package/dist/src/render.js.map +1 -1
- package/dist/src/scheduler.d.ts +5 -0
- package/dist/src/scheduler.d.ts.map +1 -1
- package/dist/src/scheduler.js +24 -1
- package/dist/src/scheduler.js.map +1 -1
- package/dist/src/symbols/output-scope.d.ts.map +1 -1
- package/dist/src/symbols/output-scope.js +2 -2
- package/dist/src/symbols/output-scope.js.map +1 -1
- package/dist/src/symbols/output-symbol.d.ts.map +1 -1
- package/dist/src/symbols/output-symbol.js +2 -2
- package/dist/src/symbols/output-symbol.js.map +1 -1
- package/dist/src/symbols/symbol-flow.d.ts.map +1 -1
- package/dist/src/symbols/symbol-flow.js +2 -2
- package/dist/src/symbols/symbol-flow.js.map +1 -1
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +2 -5
- package/dist/src/utils.js.map +1 -1
- package/dist/test/lazy-isempty.test.d.ts +2 -0
- package/dist/test/lazy-isempty.test.d.ts.map +1 -0
- package/dist/test/lazy-isempty.test.js +89 -0
- package/dist/test/lazy-isempty.test.js.map +1 -0
- package/dist/test/reactive-union-set-disposers.test.d.ts +2 -0
- package/dist/test/reactive-union-set-disposers.test.d.ts.map +1 -0
- package/dist/test/reactive-union-set-disposers.test.js +98 -0
- package/dist/test/reactive-union-set-disposers.test.js.map +1 -0
- package/dist/test/reactivity/shallow-reactive.test.d.ts +2 -0
- package/dist/test/reactivity/shallow-reactive.test.d.ts.map +1 -0
- package/dist/test/reactivity/shallow-reactive.test.js +52 -0
- package/dist/test/reactivity/shallow-reactive.test.js.map +1 -0
- package/dist/test/scheduler-extended.test.d.ts +2 -0
- package/dist/test/scheduler-extended.test.d.ts.map +1 -0
- package/dist/test/scheduler-extended.test.js +96 -0
- package/dist/test/scheduler-extended.test.js.map +1 -0
- package/dist/test/scheduler.test.d.ts +2 -0
- package/dist/test/scheduler.test.d.ts.map +1 -0
- package/dist/test/scheduler.test.js +46 -0
- package/dist/test/scheduler.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/components/Prose.tsx +1 -1
- package/src/components/Scope.tsx +2 -0
- package/src/components/SourceDirectory.tsx +1 -2
- package/src/content-slot.tsx +2 -2
- package/src/context.ts +3 -3
- package/src/debug/effects.test.tsx +24 -31
- package/src/debug/effects.ts +4 -0
- package/src/debug/index.ts +2 -0
- package/src/debug/symbols.ts +9 -0
- package/src/index.ts +0 -1
- package/src/reactive-union-set.ts +14 -3
- package/src/reactivity.ts +189 -130
- package/src/render-stack.ts +5 -0
- package/src/render.ts +16 -14
- package/src/scheduler.ts +25 -1
- package/src/symbols/output-scope.ts +1 -2
- package/src/symbols/output-symbol.ts +1 -2
- package/src/symbols/symbol-flow.ts +8 -2
- package/src/utils.tsx +2 -4
- package/temp/api.json +425 -14
- package/test/lazy-isempty.test.tsx +106 -0
- package/test/reactive-union-set-disposers.test.tsx +112 -0
- package/test/reactivity/shallow-reactive.test.tsx +56 -0
- package/test/scheduler-extended.test.tsx +122 -0
- package/test/scheduler.test.tsx +50 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ITERATE_KEY","ReactiveFlags","
|
|
1
|
+
{"version":3,"names":["ITERATE_KEY","ReactiveFlags","shallowReadonly","track","TrackOpTypes","trigger","TriggerOpTypes","effect","root","shallowReactive","untrack","ReactiveUnionSet","Set","_refcounts","Map","_indexes","IS_REACTIVE","_handleAdd","value","_onAdd","index","add","_handleDelete","_onDelete","delete","constructor","options","_subsets","onAdd","onDelete","size","ITERATE","Symbol","iterator","keys","values","entries","item","has","set","get","ADD","count","undefined","DELETE","addSubset","subset","prevValues","itemDisposers","prevSourceValue","prevTargetValue","disposer","added","result","debug","name","type","createDerivedSet","mapper","refcounts","ref","unref","push","prev","id","flat","mappedValue","createIndex","oldValue","mappedValues","filter","v"],"sources":["../../src/reactive-union-set.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/src/reactivity.d.ts
CHANGED
|
@@ -2,14 +2,16 @@ import { Ref, ShallowReactive } from "@vue/reactivity";
|
|
|
2
2
|
import { RenderedTextTree } from "./render.js";
|
|
3
3
|
import { Children, ComponentCreator } from "./runtime/component.js";
|
|
4
4
|
import type { OutputSymbol } from "./symbols/output-symbol.js";
|
|
5
|
-
export declare function getElementCache():
|
|
5
|
+
export declare function getElementCache(): Map<any, any>;
|
|
6
6
|
export type ElementCacheKey = ComponentCreator | (() => unknown) | CustomContext;
|
|
7
7
|
export type ElementCache = Map<ElementCacheKey, RenderedTextTree>;
|
|
8
8
|
export interface Disposable {
|
|
9
9
|
(): void;
|
|
10
10
|
}
|
|
11
11
|
export interface Context {
|
|
12
|
-
|
|
12
|
+
/** Monotonic numeric ID for trace/debug correlation. */
|
|
13
|
+
id: number;
|
|
14
|
+
disposables?: Disposable[];
|
|
13
15
|
owner: Context | null;
|
|
14
16
|
context?: Record<symbol, unknown>;
|
|
15
17
|
meta?: Record<string, any>;
|
|
@@ -17,7 +19,7 @@ export interface Context {
|
|
|
17
19
|
* A cache of RenderTextTree nodes created within this context,
|
|
18
20
|
* indexed by the component or function which created them.
|
|
19
21
|
*/
|
|
20
|
-
elementCache
|
|
22
|
+
elementCache?: ElementCache;
|
|
21
23
|
/**
|
|
22
24
|
* When this context was created by a component, this will
|
|
23
25
|
* be the component that created it.
|
|
@@ -38,14 +40,27 @@ export interface Context {
|
|
|
38
40
|
childrenWithContent: number;
|
|
39
41
|
/**
|
|
40
42
|
* A ref that indicates whether the component is empty.
|
|
43
|
+
* Only allocated when reactively observed (ContentSlot, mapJoin).
|
|
41
44
|
*/
|
|
42
45
|
isEmpty?: Ref<boolean>;
|
|
46
|
+
/**
|
|
47
|
+
* Cheap boolean tracking the last propagated empty state.
|
|
48
|
+
* Used by notifyContentState() for early-return optimization
|
|
49
|
+
* without requiring a reactive ref on every context.
|
|
50
|
+
*/
|
|
51
|
+
_lastEmpty: boolean;
|
|
43
52
|
/**
|
|
44
53
|
* Whether this context is a root context
|
|
45
54
|
*/
|
|
46
55
|
isRoot: boolean;
|
|
47
56
|
}
|
|
48
57
|
export declare function getContext(): Context | null;
|
|
58
|
+
/**
|
|
59
|
+
* Ensure that a context has an isEmpty ref, creating one if needed.
|
|
60
|
+
* Only call this when you need to reactively observe isEmpty (e.g.,
|
|
61
|
+
* ContentSlot, mapJoin). Most contexts don't need an isEmpty ref.
|
|
62
|
+
*/
|
|
63
|
+
export declare function ensureIsEmpty(context: Context): Ref<boolean>;
|
|
49
64
|
export interface RootOptions {
|
|
50
65
|
componentOwner?: ComponentCreator<any>;
|
|
51
66
|
}
|
|
@@ -58,7 +73,12 @@ export interface EffectOptions {
|
|
|
58
73
|
debug?: EffectDebugOptions;
|
|
59
74
|
}
|
|
60
75
|
export declare function untrack<T>(fn: () => T): T;
|
|
61
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Walk up the context owner chain to find the nearest effect ID.
|
|
78
|
+
* Used to attribute reactive mutations to the effect that caused them.
|
|
79
|
+
*/
|
|
80
|
+
export declare function findCurrentEffectId(): number | undefined;
|
|
81
|
+
export declare function memo<T>(fn: () => T, equal?: boolean, name?: string): () => T;
|
|
62
82
|
export declare function effect<T>(fn: (prev?: T) => T, current?: T, options?: EffectOptions): void;
|
|
63
83
|
/**
|
|
64
84
|
* Register a cleanup function which is called when the current reactive scope
|
|
@@ -91,13 +111,21 @@ export type CustomContextChildrenCallback = (child: Children) => void;
|
|
|
91
111
|
declare const CUSTOM_CONTEXT_SYM: unique symbol;
|
|
92
112
|
export declare function createCustomContext(useCallback: (useChildren: CustomContextChildrenCallback) => void): CustomContext;
|
|
93
113
|
export declare function isCustomContext(child: Children): child is CustomContext;
|
|
94
|
-
export declare function ref<T>(value?: T
|
|
114
|
+
export declare function ref<T>(value?: T, options?: {
|
|
115
|
+
isInfrastructure?: boolean;
|
|
116
|
+
}): Ref<T>;
|
|
117
|
+
export declare function getReactiveCreationLocation(target: object): import("./devtools-entry.browser.js").SourceLocation | undefined;
|
|
118
|
+
export declare function shallowReactive<T extends object>(target: T): ShallowReactive<T>;
|
|
95
119
|
export declare function shallowRef<T>(value?: T): Ref<T>;
|
|
96
120
|
export declare function computed<T>(getter: () => T): Ref<T>;
|
|
97
121
|
export declare function toRef<T extends object, K extends keyof T>(object: T, key: K, defaultValue?: T[K]): Ref<T[K]>;
|
|
98
122
|
export declare function toRefs<T extends object>(object: T): {
|
|
99
123
|
[K in keyof T]: Ref<T[K]>;
|
|
100
124
|
};
|
|
101
|
-
export declare function refId(ref: Ref<unknown
|
|
125
|
+
export declare function refId(ref: Ref<unknown>, isInfrastructure?: boolean): number;
|
|
126
|
+
/** Allocate a unique reactive target ID from the same counter space as ref IDs. */
|
|
127
|
+
export declare function nextReactiveId(): number;
|
|
128
|
+
export declare function resetRefIdCounter(): void;
|
|
129
|
+
export declare function getEffectDebugId(effect: object): number | undefined;
|
|
102
130
|
export {};
|
|
103
131
|
//# sourceMappingURL=reactivity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactivity.d.ts","sourceRoot":"","sources":["../../src/reactivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,GAAG,EAEH,eAAe,
|
|
1
|
+
{"version":3,"file":"reactivity.d.ts","sourceRoot":"","sources":["../../src/reactivity.ts"],"names":[],"mappings":"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"}
|
package/dist/src/reactivity.js
CHANGED
|
@@ -1,69 +1,62 @@
|
|
|
1
|
-
import { isRef, pauseTracking, resetTracking, stop, computed as vueComputed, effect as vueEffect, ref as vueRef, shallowRef as vueShallowRef, toRef as vueToRef, toRefs as vueToRefs } from "@vue/reactivity";
|
|
1
|
+
import { isRef, pauseTracking, resetTracking, stop, computed as vueComputed, effect as vueEffect, ref as vueRef, shallowReactive as vueShallowReactive, shallowRef as vueShallowRef, toRef as vueToRef, toRefs as vueToRefs } from "@vue/reactivity";
|
|
2
2
|
import { captureSourceLocation, debug, isDevtoolsEnabled } from "./debug/index.js";
|
|
3
3
|
import { scheduler } from "./scheduler.js";
|
|
4
|
-
function attachEffectWriteDebug(refValue, kind) {
|
|
5
|
-
if (!isDevtoolsEnabled()) return;
|
|
6
|
-
const descriptor = Object.getOwnPropertyDescriptor(refValue, "value") ?? Object.getOwnPropertyDescriptor(Object.getPrototypeOf(refValue), "value");
|
|
7
|
-
if (!descriptor?.get || !descriptor?.set) return;
|
|
8
|
-
if (refValue.__alloyDebugWrapped) return;
|
|
9
|
-
Object.defineProperty(refValue, "value", {
|
|
10
|
-
get: descriptor.get,
|
|
11
|
-
set(value) {
|
|
12
|
-
descriptor.set.call(this, value);
|
|
13
|
-
const effectId = globalContext?.meta?.effectId;
|
|
14
|
-
if (effectId !== undefined && effectId !== -1) {
|
|
15
|
-
const id = refId(refValue);
|
|
16
|
-
debug.effect.ensureRef({
|
|
17
|
-
id,
|
|
18
|
-
kind
|
|
19
|
-
});
|
|
20
|
-
debug.effect.trigger({
|
|
21
|
-
effectId,
|
|
22
|
-
target: refValue,
|
|
23
|
-
refId: id,
|
|
24
|
-
location: captureSourceLocation(),
|
|
25
|
-
kind: "trigger"
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
},
|
|
29
|
-
enumerable: descriptor.enumerable ?? true,
|
|
30
|
-
configurable: true
|
|
31
|
-
});
|
|
32
|
-
Object.defineProperty(refValue, "__alloyDebugWrapped", {
|
|
33
|
-
value: true,
|
|
34
|
-
enumerable: false,
|
|
35
|
-
configurable: false
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
4
|
if (globalThis.__ALLOY__) {
|
|
39
5
|
throw new Error("Multiple versions of Alloy are loaded for this project. This will likely cause undesirable behavior.");
|
|
40
6
|
}
|
|
41
7
|
globalThis.__ALLOY__ = true;
|
|
42
8
|
export function getElementCache() {
|
|
43
|
-
|
|
9
|
+
const ctx = getContext();
|
|
10
|
+
return ctx.elementCache ??= new Map();
|
|
44
11
|
}
|
|
12
|
+
let contextIdCounter = 0;
|
|
45
13
|
let globalContext = null;
|
|
46
14
|
export function getContext() {
|
|
47
15
|
return globalContext;
|
|
48
16
|
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Walk up the owner chain to find the nearest ancestor context that
|
|
20
|
+
* corresponds to an effect (has meta.effectId). This bridges non-effect
|
|
21
|
+
* scopes (like createRoot iterations in For) so the owner chain always
|
|
22
|
+
* connects effect-to-effect.
|
|
23
|
+
*/
|
|
24
|
+
function resolveOwnerEffectContextId(context) {
|
|
25
|
+
let owner = context.owner;
|
|
26
|
+
while (owner) {
|
|
27
|
+
if (owner.meta?.effectId !== undefined) {
|
|
28
|
+
return owner.id;
|
|
29
|
+
}
|
|
30
|
+
owner = owner.owner;
|
|
31
|
+
}
|
|
32
|
+
return context.owner?.id ?? null;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Ensure that a context has an isEmpty ref, creating one if needed.
|
|
37
|
+
* Only call this when you need to reactively observe isEmpty (e.g.,
|
|
38
|
+
* ContentSlot, mapJoin). Most contexts don't need an isEmpty ref.
|
|
39
|
+
*/
|
|
40
|
+
export function ensureIsEmpty(context) {
|
|
41
|
+
context.isEmpty ??= ref(context.childrenWithContent === 0);
|
|
42
|
+
return context.isEmpty;
|
|
43
|
+
}
|
|
49
44
|
export function root(fn, options) {
|
|
50
45
|
const context = {
|
|
46
|
+
id: contextIdCounter++,
|
|
51
47
|
componentOwner: options?.componentOwner,
|
|
52
|
-
disposables: [],
|
|
53
48
|
owner: globalContext,
|
|
54
|
-
context: {},
|
|
55
|
-
elementCache: new Map(),
|
|
56
49
|
takesSymbols: false,
|
|
57
50
|
takenSymbols: undefined,
|
|
58
51
|
childrenWithContent: 0,
|
|
59
|
-
|
|
52
|
+
_lastEmpty: true,
|
|
60
53
|
isRoot: true
|
|
61
54
|
};
|
|
62
55
|
globalContext = context;
|
|
63
56
|
let ret;
|
|
64
57
|
try {
|
|
65
58
|
ret = untrack(() => fn(() => {
|
|
66
|
-
for (const d of context.disposables) {
|
|
59
|
+
for (const d of context.disposables ?? []) {
|
|
67
60
|
untrack(d);
|
|
68
61
|
}
|
|
69
62
|
}));
|
|
@@ -78,7 +71,21 @@ export function untrack(fn) {
|
|
|
78
71
|
resetTracking();
|
|
79
72
|
return v;
|
|
80
73
|
}
|
|
81
|
-
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Walk up the context owner chain to find the nearest effect ID.
|
|
77
|
+
* Used to attribute reactive mutations to the effect that caused them.
|
|
78
|
+
*/
|
|
79
|
+
export function findCurrentEffectId() {
|
|
80
|
+
let ctx = globalContext;
|
|
81
|
+
while (ctx) {
|
|
82
|
+
const id = ctx.meta?.effectId;
|
|
83
|
+
if (id !== undefined && id !== -1) return id;
|
|
84
|
+
ctx = ctx.owner;
|
|
85
|
+
}
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
export function memo(fn, equal, name) {
|
|
82
89
|
const o = shallowRef();
|
|
83
90
|
effect(prev => {
|
|
84
91
|
const res = fn();
|
|
@@ -87,41 +94,104 @@ export function memo(fn, equal) {
|
|
|
87
94
|
return res;
|
|
88
95
|
}, undefined, {
|
|
89
96
|
debug: {
|
|
90
|
-
name: "memo"
|
|
97
|
+
name: name ? `memo:${name}` : "memo"
|
|
91
98
|
}
|
|
92
99
|
});
|
|
93
|
-
|
|
100
|
+
const getter = () => o.value;
|
|
101
|
+
if (name) {
|
|
102
|
+
Object.defineProperty(getter, "name", {
|
|
103
|
+
value: name,
|
|
104
|
+
configurable: true
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
return getter;
|
|
94
108
|
}
|
|
95
109
|
export function effect(fn, current, options) {
|
|
96
110
|
const context = {
|
|
97
|
-
|
|
98
|
-
disposables: [],
|
|
111
|
+
id: contextIdCounter++,
|
|
99
112
|
owner: globalContext,
|
|
100
|
-
elementCache: new Map(),
|
|
101
113
|
takesSymbols: false,
|
|
102
114
|
takenSymbols: undefined,
|
|
103
115
|
childrenWithContent: 0,
|
|
116
|
+
_lastEmpty: true,
|
|
104
117
|
isRoot: false
|
|
105
118
|
};
|
|
106
119
|
const debugInfo = options?.debug;
|
|
107
120
|
const effectId = debug.effect.register({
|
|
108
121
|
name: debugInfo?.name ?? fn.name,
|
|
109
122
|
type: debugInfo?.type,
|
|
110
|
-
createdAt: captureSourceLocation()
|
|
123
|
+
createdAt: captureSourceLocation(),
|
|
124
|
+
contextId: context.id,
|
|
125
|
+
ownerContextId: resolveOwnerEffectContextId(context)
|
|
111
126
|
});
|
|
112
|
-
context.meta ??= {};
|
|
113
127
|
if (effectId !== -1) {
|
|
128
|
+
context.meta ??= {};
|
|
114
129
|
context.meta.effectId = effectId;
|
|
115
130
|
}
|
|
116
131
|
const cleanupFn = final => {
|
|
117
132
|
const d = context.disposables;
|
|
118
|
-
context.disposables =
|
|
119
|
-
|
|
133
|
+
context.disposables = undefined;
|
|
134
|
+
if (d) {
|
|
135
|
+
for (let k = 0, len = d.length; k < len; k++) untrack(d[k]);
|
|
136
|
+
}
|
|
120
137
|
|
|
121
138
|
// eslint-disable-next-line @typescript-eslint/no-unused-expressions
|
|
122
139
|
final && stop(runner);
|
|
123
140
|
};
|
|
124
141
|
onCleanup(() => cleanupFn(true));
|
|
142
|
+
const effectOpts = {
|
|
143
|
+
// allow recursive effects with 32, 1 and 4 are default flags
|
|
144
|
+
flags: 1 | 4 | 32,
|
|
145
|
+
scheduler: scheduler()
|
|
146
|
+
};
|
|
147
|
+
if (effectId !== -1) {
|
|
148
|
+
effectOpts.onTrack = event => {
|
|
149
|
+
const targetKey = typeof event.key === "symbol" ? event.key.toString() : event.key;
|
|
150
|
+
if (isRef(event.target)) {
|
|
151
|
+
const id = refId(event.target);
|
|
152
|
+
debug.effect.ensureRef({
|
|
153
|
+
id,
|
|
154
|
+
kind: "ref"
|
|
155
|
+
});
|
|
156
|
+
debug.effect.track({
|
|
157
|
+
effectId,
|
|
158
|
+
target: event.target,
|
|
159
|
+
refId: id,
|
|
160
|
+
targetKey
|
|
161
|
+
});
|
|
162
|
+
} else {
|
|
163
|
+
debug.effect.track({
|
|
164
|
+
effectId,
|
|
165
|
+
target: event.target,
|
|
166
|
+
targetKey
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
};
|
|
170
|
+
effectOpts.onTrigger = event => {
|
|
171
|
+
const targetKey = typeof event.key === "symbol" ? event.key.toString() : event.key;
|
|
172
|
+
if (isRef(event.target)) {
|
|
173
|
+
const id = refId(event.target);
|
|
174
|
+
debug.effect.ensureRef({
|
|
175
|
+
id,
|
|
176
|
+
kind: "ref"
|
|
177
|
+
});
|
|
178
|
+
debug.effect.trigger({
|
|
179
|
+
effectId,
|
|
180
|
+
target: event.target,
|
|
181
|
+
refId: id,
|
|
182
|
+
targetKey,
|
|
183
|
+
kind: "triggered-by"
|
|
184
|
+
});
|
|
185
|
+
} else {
|
|
186
|
+
debug.effect.trigger({
|
|
187
|
+
effectId,
|
|
188
|
+
target: event.target,
|
|
189
|
+
targetKey,
|
|
190
|
+
kind: "triggered-by"
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
}
|
|
125
195
|
const runner = vueEffect(() => {
|
|
126
196
|
cleanupFn(false);
|
|
127
197
|
const oldContext = globalContext;
|
|
@@ -131,68 +201,10 @@ export function effect(fn, current, options) {
|
|
|
131
201
|
} finally {
|
|
132
202
|
globalContext = oldContext;
|
|
133
203
|
}
|
|
134
|
-
},
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
scheduler: scheduler(),
|
|
139
|
-
onTrack(event) {
|
|
140
|
-
if (effectId !== -1) {
|
|
141
|
-
const targetKey = typeof event.key === "symbol" ? event.key.toString() : event.key;
|
|
142
|
-
if (isRef(event.target)) {
|
|
143
|
-
const id = refId(event.target);
|
|
144
|
-
debug.effect.ensureRef({
|
|
145
|
-
id,
|
|
146
|
-
kind: "ref"
|
|
147
|
-
});
|
|
148
|
-
debug.effect.track({
|
|
149
|
-
effectId,
|
|
150
|
-
target: event.target,
|
|
151
|
-
refId: id,
|
|
152
|
-
targetKey,
|
|
153
|
-
location: captureSourceLocation()
|
|
154
|
-
});
|
|
155
|
-
} else {
|
|
156
|
-
debug.effect.track({
|
|
157
|
-
effectId,
|
|
158
|
-
target: event.target,
|
|
159
|
-
targetKey,
|
|
160
|
-
location: captureSourceLocation()
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
// track edge emitted via recordEffectTrack
|
|
165
|
-
},
|
|
166
|
-
onTrigger(event) {
|
|
167
|
-
if (effectId !== -1) {
|
|
168
|
-
const targetKey = typeof event.key === "symbol" ? event.key.toString() : event.key;
|
|
169
|
-
if (isRef(event.target)) {
|
|
170
|
-
const id = refId(event.target);
|
|
171
|
-
debug.effect.ensureRef({
|
|
172
|
-
id,
|
|
173
|
-
kind: "ref"
|
|
174
|
-
});
|
|
175
|
-
debug.effect.trigger({
|
|
176
|
-
effectId,
|
|
177
|
-
target: event.target,
|
|
178
|
-
refId: id,
|
|
179
|
-
targetKey,
|
|
180
|
-
location: captureSourceLocation(),
|
|
181
|
-
kind: "triggered-by"
|
|
182
|
-
});
|
|
183
|
-
} else {
|
|
184
|
-
debug.effect.trigger({
|
|
185
|
-
effectId,
|
|
186
|
-
target: event.target,
|
|
187
|
-
targetKey,
|
|
188
|
-
location: captureSourceLocation(),
|
|
189
|
-
kind: "triggered-by"
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
// trigger edge emitted via recordEffectTrigger
|
|
194
|
-
}
|
|
195
|
-
});
|
|
204
|
+
}, effectOpts);
|
|
205
|
+
if (effectId !== -1) {
|
|
206
|
+
effectIdMap.set(runner.effect, effectId);
|
|
207
|
+
}
|
|
196
208
|
}
|
|
197
209
|
|
|
198
210
|
/**
|
|
@@ -215,7 +227,7 @@ export function effect(fn, current, options) {
|
|
|
215
227
|
*/
|
|
216
228
|
export function onCleanup(fn) {
|
|
217
229
|
if (globalContext != null) {
|
|
218
|
-
globalContext.disposables.push(fn);
|
|
230
|
+
(globalContext.disposables ??= []).push(fn);
|
|
219
231
|
}
|
|
220
232
|
}
|
|
221
233
|
|
|
@@ -236,20 +248,34 @@ export function createCustomContext(useCallback) {
|
|
|
236
248
|
export function isCustomContext(child) {
|
|
237
249
|
return typeof child === "object" && child !== null && Object.hasOwn(child, CUSTOM_CONTEXT_SYM);
|
|
238
250
|
}
|
|
239
|
-
export function ref(value) {
|
|
251
|
+
export function ref(value, options) {
|
|
240
252
|
const result = vueRef(value);
|
|
241
|
-
attachEffectWriteDebug(result, "ref");
|
|
242
253
|
debug.effect.registerRef({
|
|
243
|
-
id: refId(result),
|
|
254
|
+
id: refId(result, options?.isInfrastructure),
|
|
244
255
|
kind: "ref",
|
|
245
256
|
createdAt: captureSourceLocation(),
|
|
246
|
-
createdByEffectId: globalContext?.meta?.effectId
|
|
257
|
+
createdByEffectId: globalContext?.meta?.effectId,
|
|
258
|
+
isInfrastructure: options?.isInfrastructure
|
|
247
259
|
});
|
|
248
260
|
return result;
|
|
249
261
|
}
|
|
262
|
+
|
|
263
|
+
// Stores creation location for shallowReactive objects so registerNonRefTarget
|
|
264
|
+
// can look it up later (since targets are lazily registered on first track/trigger).
|
|
265
|
+
const reactiveCreationLocations = new WeakMap();
|
|
266
|
+
export function getReactiveCreationLocation(target) {
|
|
267
|
+
return reactiveCreationLocations.get(target);
|
|
268
|
+
}
|
|
269
|
+
export function shallowReactive(target) {
|
|
270
|
+
const result = vueShallowReactive(target);
|
|
271
|
+
if (isDevtoolsEnabled()) {
|
|
272
|
+
// Store by raw target — Vue's onTrack/onTrigger events pass the raw object, not the proxy.
|
|
273
|
+
reactiveCreationLocations.set(target, captureSourceLocation());
|
|
274
|
+
}
|
|
275
|
+
return result;
|
|
276
|
+
}
|
|
250
277
|
export function shallowRef(value) {
|
|
251
278
|
const result = vueShallowRef(value);
|
|
252
|
-
attachEffectWriteDebug(result, "shallowRef");
|
|
253
279
|
debug.effect.registerRef({
|
|
254
280
|
id: refId(result),
|
|
255
281
|
kind: "shallowRef",
|
|
@@ -270,7 +296,6 @@ export function computed(getter) {
|
|
|
270
296
|
}
|
|
271
297
|
export function toRef(object, key, defaultValue) {
|
|
272
298
|
const result = defaultValue === undefined ? vueToRef(object, key) : vueToRef(object, key, defaultValue);
|
|
273
|
-
attachEffectWriteDebug(result, "toRef");
|
|
274
299
|
debug.effect.registerRef({
|
|
275
300
|
id: refId(result),
|
|
276
301
|
kind: "toRef",
|
|
@@ -282,7 +307,6 @@ export function toRef(object, key, defaultValue) {
|
|
|
282
307
|
export function toRefs(object) {
|
|
283
308
|
const result = vueToRefs(object);
|
|
284
309
|
for (const refValue of Object.values(result)) {
|
|
285
|
-
attachEffectWriteDebug(refValue, "toRef");
|
|
286
310
|
debug.effect.registerRef({
|
|
287
311
|
id: refId(refValue),
|
|
288
312
|
kind: "toRef",
|
|
@@ -294,12 +318,26 @@ export function toRefs(object) {
|
|
|
294
318
|
}
|
|
295
319
|
const seenRefs = new WeakMap();
|
|
296
320
|
let refIdCounter = 1;
|
|
297
|
-
|
|
321
|
+
let infraRefIdCounter = -1;
|
|
322
|
+
const effectIdMap = new WeakMap();
|
|
323
|
+
export function refId(ref, isInfrastructure) {
|
|
298
324
|
let id = seenRefs.get(ref);
|
|
299
325
|
if (id === undefined) {
|
|
300
|
-
id = refIdCounter++;
|
|
326
|
+
id = isInfrastructure ? infraRefIdCounter-- : refIdCounter++;
|
|
301
327
|
seenRefs.set(ref, id);
|
|
302
328
|
}
|
|
303
329
|
return id;
|
|
304
330
|
}
|
|
331
|
+
|
|
332
|
+
/** Allocate a unique reactive target ID from the same counter space as ref IDs. */
|
|
333
|
+
export function nextReactiveId() {
|
|
334
|
+
return refIdCounter++;
|
|
335
|
+
}
|
|
336
|
+
export function resetRefIdCounter() {
|
|
337
|
+
refIdCounter = 1;
|
|
338
|
+
infraRefIdCounter = -1;
|
|
339
|
+
}
|
|
340
|
+
export function getEffectDebugId(effect) {
|
|
341
|
+
return effectIdMap.get(effect);
|
|
342
|
+
}
|
|
305
343
|
//# sourceMappingURL=reactivity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isRef","pauseTracking","resetTracking","stop","computed","vueComputed","effect","vueEffect","ref","vueRef","shallowRef","vueShallowRef","toRef","vueToRef","toRefs","vueToRefs","captureSourceLocation","debug","isDevtoolsEnabled","scheduler","attachEffectWriteDebug","refValue","kind","descriptor","Object","getOwnPropertyDescriptor","getPrototypeOf","get","set","__alloyDebugWrapped","defineProperty","value","call","effectId","globalContext","meta","undefined","id","refId","ensureRef","trigger","target","location","enumerable","configurable","globalThis","__ALLOY__","Error","getElementCache","getContext","elementCache","root","fn","options","context","componentOwner","disposables","owner","Map","takesSymbols","takenSymbols","childrenWithContent","isEmpty","isRoot","ret","untrack","d","v","memo","equal","o","prev","res","name","current","debugInfo","register","type","createdAt","cleanupFn","final","k","len","length","runner","onCleanup","oldContext","flags","onTrack","event","targetKey","key","toString","track","onTrigger","push","CUSTOM_CONTEXT_SYM","Symbol","createCustomContext","useCallback","useCustomContext","useCb","isCustomContext","child","hasOwn","result","registerRef","createdByEffectId","getter","object","defaultValue","values","seenRefs","WeakMap","refIdCounter"],"sources":["../../src/reactivity.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["isRef","pauseTracking","resetTracking","stop","computed","vueComputed","effect","vueEffect","ref","vueRef","shallowReactive","vueShallowReactive","shallowRef","vueShallowRef","toRef","vueToRef","toRefs","vueToRefs","captureSourceLocation","debug","isDevtoolsEnabled","scheduler","globalThis","__ALLOY__","Error","getElementCache","ctx","getContext","elementCache","Map","contextIdCounter","globalContext","resolveOwnerEffectContextId","context","owner","meta","effectId","undefined","id","ensureIsEmpty","isEmpty","childrenWithContent","root","fn","options","componentOwner","takesSymbols","takenSymbols","_lastEmpty","isRoot","ret","untrack","d","disposables","v","findCurrentEffectId","memo","equal","name","o","prev","res","value","getter","Object","defineProperty","configurable","current","debugInfo","register","type","createdAt","contextId","ownerContextId","cleanupFn","final","k","len","length","runner","onCleanup","effectOpts","flags","onTrack","event","targetKey","key","toString","target","refId","ensureRef","kind","track","onTrigger","trigger","oldContext","effectIdMap","set","push","CUSTOM_CONTEXT_SYM","Symbol","createCustomContext","useCallback","useCustomContext","useCb","isCustomContext","child","hasOwn","result","registerRef","isInfrastructure","createdByEffectId","reactiveCreationLocations","WeakMap","getReactiveCreationLocation","get","object","defaultValue","refValue","values","seenRefs","refIdCounter","infraRefIdCounter","nextReactiveId","resetRefIdCounter","getEffectDebugId"],"sources":["../../src/reactivity.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ export interface RenderStackSnapshotEntry {
|
|
|
9
9
|
}
|
|
10
10
|
export declare function pushStack(component: Component<any>, props: Props, source?: SourceLocation): void;
|
|
11
11
|
export declare function popStack(): void;
|
|
12
|
+
export declare function currentComponentName(): string | undefined;
|
|
12
13
|
export declare function clearRenderStack(): void;
|
|
13
14
|
/**
|
|
14
15
|
* Get the current rendering path from the render stack context.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-stack.d.ts","sourceRoot":"","sources":["../../src/render-stack.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAc,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU1E,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,SAAS,CACvB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,EACzB,KAAK,EAAE,KAAK,EACZ,MAAM,CAAC,EAAE,cAAc,QAGxB;AAED,wBAAgB,QAAQ,SAEvB;AAED,wBAAgB,gBAAgB,SAE/B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAoBzD;AAED,wBAAgB,sBAAsB,IAAI,wBAAwB,EAAE,CAQnE;AA4DD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,QAkJ/C"}
|
|
1
|
+
{"version":3,"file":"render-stack.d.ts","sourceRoot":"","sources":["../../src/render-stack.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAc,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU1E,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,SAAS,CACvB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,EACzB,KAAK,EAAE,KAAK,EACZ,MAAM,CAAC,EAAE,cAAc,QAGxB;AAED,wBAAgB,QAAQ,SAEvB;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAGzD;AAED,wBAAgB,gBAAgB,SAE/B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAoBzD;AAED,wBAAgB,sBAAsB,IAAI,wBAAwB,EAAE,CAQnE;AA4DD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,QAkJ/C"}
|
package/dist/src/render-stack.js
CHANGED
|
@@ -16,6 +16,10 @@ export function pushStack(component, props, source) {
|
|
|
16
16
|
export function popStack() {
|
|
17
17
|
renderStack.pop();
|
|
18
18
|
}
|
|
19
|
+
export function currentComponentName() {
|
|
20
|
+
const entry = renderStack[renderStack.length - 1];
|
|
21
|
+
return entry?.component.name || undefined;
|
|
22
|
+
}
|
|
19
23
|
export function clearRenderStack() {
|
|
20
24
|
renderStack.length = 0;
|
|
21
25
|
}
|