palistor 0.0.25 → 0.0.26
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 +574 -542
- package/README.ru.md +979 -0
- package/dist/index.d.ts +16 -27
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -28
- package/dist/index.js.map +1 -1
- package/dist/react/createTrackingProxy.d.ts +27 -27
- package/dist/react/createTrackingProxy.d.ts.map +1 -1
- package/dist/react/createTrackingProxy.js +54 -53
- package/dist/react/createTrackingProxy.js.map +1 -1
- package/dist/react/useForm.d.ts +42 -43
- package/dist/react/useForm.d.ts.map +1 -1
- package/dist/react/useForm.js +38 -38
- package/dist/react/useForm.js.map +1 -1
- package/dist/react/usePersist.d.ts +14 -14
- package/dist/react/usePersist.js +18 -18
- package/dist/react/usePersist.js.map +1 -1
- package/dist/react/useStoreContext.d.ts +11 -11
- package/dist/react/useStoreContext.js +11 -11
- package/dist/react/useTranslator.d.ts +12 -12
- package/dist/react/useTranslator.js +12 -12
- package/dist/store/applyPatch/applyPatch.d.ts +8 -8
- package/dist/store/applyPatch/applyPatch.js +12 -12
- package/dist/store/applyPatch/applyPatch.js.map +1 -1
- package/dist/store/buildProxy/buildEntityProjectionProxy.js +6 -6
- package/dist/store/buildProxy/buildEntityProjectionProxy.js.map +1 -1
- package/dist/store/buildProxy/buildListProxy.d.ts +8 -8
- package/dist/store/buildProxy/buildListProxy.js +30 -30
- package/dist/store/buildProxy/buildListProxy.js.map +1 -1
- package/dist/store/buildProxy/buildProxy.d.ts +8 -8
- package/dist/store/buildProxy/buildProxy.js +39 -39
- package/dist/store/buildProxy/buildProxy.js.map +1 -1
- package/dist/store/buildProxy/computeProxyKeys.d.ts +8 -8
- package/dist/store/buildProxy/computeProxyKeys.js +9 -9
- package/dist/store/buildProxy/computeProxyKeys.js.map +1 -1
- package/dist/store/buildProxy/handleLazyResolve.d.ts +3 -3
- package/dist/store/buildProxy/handleLazyResolve.js +3 -3
- package/dist/store/buildProxy/initProxyCaches.d.ts +5 -5
- package/dist/store/buildProxy/initProxyCaches.js +5 -5
- package/dist/store/compute/computeFieldState.d.ts +3 -3
- package/dist/store/compute/computeFieldState.js +8 -8
- package/dist/store/compute/computeFieldState.js.map +1 -1
- package/dist/store/compute/fieldStateChanged.d.ts +1 -1
- package/dist/store/compute/fieldStateChanged.js +1 -1
- package/dist/store/compute/recompute/collectGroupComputeNodes.d.ts +4 -4
- package/dist/store/compute/recompute/collectGroupComputeNodes.js +7 -7
- package/dist/store/compute/recompute/collectGroupComputeNodes.js.map +1 -1
- package/dist/store/compute/recompute/recomputeAndNotify.d.ts +3 -3
- package/dist/store/compute/recompute/recomputeAndNotify.js +3 -3
- package/dist/store/compute/recompute/recomputeLeaves.d.ts +11 -10
- package/dist/store/compute/recompute/recomputeLeaves.d.ts.map +1 -1
- package/dist/store/compute/recompute/recomputeLeaves.js +26 -27
- package/dist/store/compute/recompute/recomputeLeaves.js.map +1 -1
- package/dist/store/compute/recompute/recomputeTargeted.d.ts +7 -7
- package/dist/store/compute/recompute/recomputeTargeted.js +12 -12
- package/dist/store/compute/recompute/recomputeTargeted.js.map +1 -1
- package/dist/store/compute/recompute/topologicalSortComputed.d.ts +4 -4
- package/dist/store/compute/recompute/topologicalSortComputed.d.ts.map +1 -1
- package/dist/store/compute/recompute/topologicalSortComputed.js +11 -13
- package/dist/store/compute/recompute/topologicalSortComputed.js.map +1 -1
- package/dist/store/compute/recompute/types.d.ts +4 -4
- package/dist/store/compute/resolveFlag.d.ts +2 -2
- package/dist/store/compute/resolveFlag.js +2 -2
- package/dist/store/compute/resolveString.d.ts +5 -5
- package/dist/store/compute/resolveString.js +6 -6
- package/dist/store/compute/resolveString.js.map +1 -1
- package/dist/store/compute/types.d.ts +3 -3
- package/dist/store/constants.d.ts +48 -48
- package/dist/store/constants.d.ts.map +1 -1
- package/dist/store/constants.js +45 -45
- package/dist/store/defineFieldMapping.d.ts +21 -19
- package/dist/store/defineFieldMapping.d.ts.map +1 -1
- package/dist/store/defineFieldMapping.js +21 -19
- package/dist/store/defineFieldMapping.js.map +1 -1
- package/dist/store/dirtyTracking/collectInitialSnapshot.js +1 -1
- package/dist/store/dirtyTracking/collectInitialSnapshot.js.map +1 -1
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.d.ts +3 -3
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.js +11 -11
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.js.map +1 -1
- package/dist/store/dirtyTracking/setGroupRevalidate.d.ts +6 -6
- package/dist/store/dirtyTracking/setGroupRevalidate.js +7 -7
- package/dist/store/dirtyTracking/setGroupRevalidate.js.map +1 -1
- package/dist/store/entityRegistry/entityRegistry.d.ts +72 -72
- package/dist/store/entityRegistry/entityRegistry.d.ts.map +1 -1
- package/dist/store/entityRegistry/entityRegistry.js +91 -91
- package/dist/store/entityRegistry/entityRegistry.js.map +1 -1
- package/dist/store/entityRegistry/generateId.d.ts +3 -3
- package/dist/store/entityRegistry/generateId.js +3 -3
- package/dist/store/entityRegistry/types.d.ts +17 -17
- package/dist/store/entityRegistry/types.d.ts.map +1 -1
- package/dist/store/flow/buildFlowStepsProxy.d.ts +9 -9
- package/dist/store/flow/buildFlowStepsProxy.js +13 -13
- package/dist/store/flow/buildFlowStepsProxy.js.map +1 -1
- package/dist/store/flow/defineFlow.d.ts +27 -25
- package/dist/store/flow/defineFlow.d.ts.map +1 -1
- package/dist/store/flow/defineFlow.js +15 -13
- package/dist/store/flow/defineFlow.js.map +1 -1
- package/dist/store/flow/flowApi.d.ts +3 -2
- package/dist/store/flow/flowApi.d.ts.map +1 -1
- package/dist/store/flow/flowApi.js +1 -1
- package/dist/store/flow/flowApi.js.map +1 -1
- package/dist/store/flow/flowNavigation.d.ts +65 -63
- package/dist/store/flow/flowNavigation.d.ts.map +1 -1
- package/dist/store/flow/flowNavigation.js +74 -72
- package/dist/store/flow/flowNavigation.js.map +1 -1
- package/dist/store/flow/flowState.d.ts +16 -16
- package/dist/store/flow/flowState.d.ts.map +1 -1
- package/dist/store/flow/flowState.js +5 -5
- package/dist/store/flow/flowState.js.map +1 -1
- package/dist/store/groupDeps/createGroupDeps.d.ts +3 -3
- package/dist/store/groupDeps/createGroupDeps.js +6 -6
- package/dist/store/groupDeps/createGroupDeps.js.map +1 -1
- package/dist/store/groupDeps/createTrackingValues.d.ts +9 -9
- package/dist/store/groupDeps/createTrackingValues.js +11 -11
- package/dist/store/groupDeps/createTrackingValues.js.map +1 -1
- package/dist/store/groupDeps/getNodeGroupPath.d.ts +3 -3
- package/dist/store/groupDeps/getNodeGroupPath.js +5 -5
- package/dist/store/groupDeps/getNodeGroupPath.js.map +1 -1
- package/dist/store/groupDeps/getRecipientGroups.d.ts +1 -1
- package/dist/store/groupDeps/getRecipientGroups.js +1 -1
- package/dist/store/groupDeps/groupDeps.d.ts +7 -7
- package/dist/store/groupDeps/groupDeps.js +7 -7
- package/dist/store/groupDeps/pairKey.d.ts +3 -3
- package/dist/store/groupDeps/pairKey.d.ts.map +1 -1
- package/dist/store/groupDeps/pairKey.js +4 -4
- package/dist/store/groupDeps/pairKey.js.map +1 -1
- package/dist/store/groupDeps/resolveGroupByPath.d.ts +3 -3
- package/dist/store/groupDeps/resolveGroupByPath.js +3 -3
- package/dist/store/init/createNotificationHub.d.ts +31 -31
- package/dist/store/init/createNotificationHub.d.ts.map +1 -1
- package/dist/store/init/createNotificationHub.js +36 -37
- package/dist/store/init/createNotificationHub.js.map +1 -1
- package/dist/store/init/createResolveManager.d.ts +72 -69
- package/dist/store/init/createResolveManager.d.ts.map +1 -1
- package/dist/store/init/createResolveManager.js +101 -98
- package/dist/store/init/createResolveManager.js.map +1 -1
- package/dist/store/init/initGroupSubmitting.d.ts +2 -2
- package/dist/store/init/initGroupSubmitting.js +4 -4
- package/dist/store/init/initGroupSubmitting.js.map +1 -1
- package/dist/store/normalizeConfig.d.ts +20 -18
- package/dist/store/normalizeConfig.d.ts.map +1 -1
- package/dist/store/normalizeConfig.js +31 -29
- package/dist/store/normalizeConfig.js.map +1 -1
- package/dist/store/onChangePipeline/computeFieldKey.d.ts +2 -2
- package/dist/store/onChangePipeline/computeFieldKey.js +2 -2
- package/dist/store/onChangePipeline/findOnChangeAncestors.d.ts +2 -2
- package/dist/store/onChangePipeline/findOnChangeAncestors.js +4 -4
- package/dist/store/onChangePipeline/findOnChangeAncestors.js.map +1 -1
- package/dist/store/onChangePipeline/onChangePipeline.d.ts +13 -12
- package/dist/store/onChangePipeline/onChangePipeline.d.ts.map +1 -1
- package/dist/store/onChangePipeline/onChangePipeline.js +14 -13
- package/dist/store/onChangePipeline/onChangePipeline.js.map +1 -1
- package/dist/store/persist/drivers.d.ts +7 -7
- package/dist/store/persist/drivers.js +8 -8
- package/dist/store/persist/drivers.js.map +1 -1
- package/dist/store/persist/index.d.ts +1 -1
- package/dist/store/persist/persistManager.d.ts +23 -23
- package/dist/store/persist/persistManager.d.ts.map +1 -1
- package/dist/store/persist/persistManager.js +51 -51
- package/dist/store/persist/persistManager.js.map +1 -1
- package/dist/store/persist/types.d.ts +23 -23
- package/dist/store/persist/types.d.ts.map +1 -1
- package/dist/store/persist/types.js +4 -4
- package/dist/store/resetPipeline/buildResetPatch.d.ts +5 -5
- package/dist/store/resetPipeline/buildResetPatch.js +5 -5
- package/dist/store/resetPipeline/collectDefaults.d.ts +5 -5
- package/dist/store/resetPipeline/collectDefaults.js +6 -6
- package/dist/store/resetPipeline/collectDefaults.js.map +1 -1
- package/dist/store/resetPipeline/resetPipeline.d.ts +7 -7
- package/dist/store/resetPipeline/resetPipeline.js +15 -15
- package/dist/store/resetPipeline/resetPipeline.js.map +1 -1
- package/dist/store/resolvePipeline/applyPendingWrites.d.ts +10 -10
- package/dist/store/resolvePipeline/applyPendingWrites.d.ts.map +1 -1
- package/dist/store/resolvePipeline/applyPendingWrites.js +35 -38
- package/dist/store/resolvePipeline/applyPendingWrites.js.map +1 -1
- package/dist/store/resolvePipeline/createContextTrackingProxy.d.ts +8 -7
- package/dist/store/resolvePipeline/createContextTrackingProxy.d.ts.map +1 -1
- package/dist/store/resolvePipeline/createContextTrackingProxy.js +6 -5
- package/dist/store/resolvePipeline/createContextTrackingProxy.js.map +1 -1
- package/dist/store/resolvePipeline/createValuesTrackingProxy.d.ts +43 -43
- package/dist/store/resolvePipeline/createValuesTrackingProxy.d.ts.map +1 -1
- package/dist/store/resolvePipeline/createValuesTrackingProxy.js +70 -70
- package/dist/store/resolvePipeline/createValuesTrackingProxy.js.map +1 -1
- package/dist/store/resolvePipeline/executeListResolve.d.ts +14 -14
- package/dist/store/resolvePipeline/executeListResolve.js +27 -27
- package/dist/store/resolvePipeline/executeListResolve.js.map +1 -1
- package/dist/store/resolvePipeline/executeResolve.d.ts +15 -15
- package/dist/store/resolvePipeline/executeResolve.js +46 -46
- package/dist/store/resolvePipeline/executeResolve.js.map +1 -1
- package/dist/store/store/NodeRegistry/nodeRegistry.d.ts +61 -61
- package/dist/store/store/NodeRegistry/nodeRegistry.d.ts.map +1 -1
- package/dist/store/store/NodeRegistry/nodeRegistry.js +85 -86
- package/dist/store/store/NodeRegistry/nodeRegistry.js.map +1 -1
- package/dist/store/store/NodeRegistry/nodeUtils.d.ts +5 -5
- package/dist/store/store/NodeRegistry/nodeUtils.d.ts.map +1 -1
- package/dist/store/store/NodeRegistry/nodeUtils.js +5 -5
- package/dist/store/store/NodeRegistry/nodeUtils.js.map +1 -1
- package/dist/store/store/groupDepsMap.d.ts +23 -23
- package/dist/store/store/groupDepsMap.d.ts.map +1 -1
- package/dist/store/store/groupDepsMap.js +35 -34
- package/dist/store/store/groupDepsMap.js.map +1 -1
- package/dist/store/store/hasComputedProps.d.ts +2 -2
- package/dist/store/store/hasComputedProps.js +2 -2
- package/dist/store/store/nodeMap.d.ts +5 -5
- package/dist/store/store/nodeMap.js +7 -7
- package/dist/store/store/nodeMap.js.map +1 -1
- package/dist/store/store/palistor.d.ts +80 -80
- package/dist/store/store/palistor.d.ts.map +1 -1
- package/dist/store/store/palistor.js +149 -169
- package/dist/store/store/palistor.js.map +1 -1
- package/dist/store/store/registerNodes.d.ts +10 -10
- package/dist/store/store/registerNodes.js +15 -15
- package/dist/store/store/registerNodes.js.map +1 -1
- package/dist/store/store/serviceRegistry.d.ts +8 -8
- package/dist/store/store/serviceRegistry.d.ts.map +1 -1
- package/dist/store/store/serviceRegistry.js +8 -8
- package/dist/store/store/serviceRegistry.js.map +1 -1
- package/dist/store/store/types.d.ts +236 -234
- package/dist/store/store/types.d.ts.map +1 -1
- package/dist/store/submitPipeline/applyLeafBeforeSubmit.d.ts +2 -2
- package/dist/store/submitPipeline/applyLeafBeforeSubmit.js +2 -2
- package/dist/store/submitPipeline/collectLeafStates.d.ts +2 -2
- package/dist/store/submitPipeline/collectLeafStates.js +2 -2
- package/dist/store/submitPipeline/submitPipeline.d.ts +8 -8
- package/dist/store/submitPipeline/submitPipeline.js +12 -12
- package/dist/store/submitPipeline/submitPipeline.js.map +1 -1
- package/dist/store/submitPipeline/types.d.ts +1 -1
- package/dist/store/submitPipeline/types.d.ts.map +1 -1
- package/dist/store/traversal/nodeClassifier.d.ts +9 -9
- package/dist/store/traversal/nodeClassifier.d.ts.map +1 -1
- package/dist/store/traversal/nodeClassifier.js +11 -11
- package/dist/store/traversal/nodeClassifier.js.map +1 -1
- package/dist/store/traversal/walkFull.d.ts +14 -14
- package/dist/store/traversal/walkFull.js +2 -2
- package/dist/store/valuesCache/valuesCache.d.ts +9 -9
- package/dist/store/valuesCache/valuesCache.d.ts.map +1 -1
- package/dist/store/valuesCache/valuesCache.js +6 -6
- package/dist/store/writePipeline/formatPatch.d.ts +5 -5
- package/dist/store/writePipeline/formatPatch.js +7 -7
- package/dist/store/writePipeline/formatPatch.js.map +1 -1
- package/dist/store/writePipeline/formatValue.d.ts +5 -5
- package/dist/store/writePipeline/formatValue.js +5 -5
- package/dist/store/writePipeline/mergeChanged.d.ts +4 -4
- package/dist/store/writePipeline/mergeChanged.js +4 -4
- package/dist/store/writePipeline/runSetter.d.ts +6 -6
- package/dist/store/writePipeline/runSetter.js +8 -8
- package/dist/store/writePipeline/storeValue.d.ts +3 -3
- package/dist/store/writePipeline/storeValue.js +3 -3
- package/dist/store/writePipeline/types.d.ts +4 -4
- package/dist/store/writePipeline/types.d.ts.map +1 -1
- package/dist/store/writePipeline/writePipeline.d.ts +7 -7
- package/dist/store/writePipeline/writePipeline.d.ts.map +1 -1
- package/dist/store/writePipeline/writePipeline.js +15 -15
- package/dist/store/writePipeline/writePipeline.js.map +1 -1
- package/package.json +11 -4
|
@@ -12,155 +12,158 @@ export interface ResolveManagerDeps {
|
|
|
12
12
|
recompute: () => Set<object>;
|
|
13
13
|
notifyChanged: (changed: Set<object>) => void;
|
|
14
14
|
notify: NotifyFn;
|
|
15
|
-
/**
|
|
15
|
+
/** Initial values snapshot — passed to the resolve pipeline for dirty tracking. */
|
|
16
16
|
initialValueMap: WeakMap<object, unknown>;
|
|
17
17
|
valuesCache: ValuesCache;
|
|
18
|
-
/**
|
|
18
|
+
/** The ProxyStore instance — passed as the second resolver argument. */
|
|
19
19
|
store: any;
|
|
20
|
-
/**
|
|
20
|
+
/** All ListState objects from NodeRegistry (for list-resolve dispatch). */
|
|
21
21
|
listStates: WeakMap<object, ListState>;
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
23
|
+
* Upserts entities and registers their leaves without calling notify.
|
|
24
|
+
* Called from executeListResolve after a successful list resolver.
|
|
25
|
+
* listNode is passed to trigger entity field resolves automatically.
|
|
26
26
|
*/
|
|
27
27
|
setEntitiesRaw: (items: EntityData[], listNode?: object) => Set<object>;
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
29
|
+
* Syncs valuesCache with the list membership (single method, root + entity).
|
|
30
|
+
* Called from executeListResolve after itemIds is updated.
|
|
31
31
|
*/
|
|
32
32
|
syncListValuesCache: (listState: ListState) => void;
|
|
33
33
|
/**
|
|
34
|
-
*
|
|
34
|
+
* The EntityRegistry instance — used by triggerEntityFieldResolve for the skipIfResolved check.
|
|
35
35
|
*/
|
|
36
36
|
entityRegistry: EntityRegistry;
|
|
37
37
|
}
|
|
38
38
|
export declare class ResolveManager {
|
|
39
|
-
/** Resolve
|
|
39
|
+
/** Resolve states of all nodes with a resolve config. */
|
|
40
40
|
readonly states: Map<object, ResolveState>;
|
|
41
41
|
/**
|
|
42
|
-
* Per-entity
|
|
42
|
+
* Per-entity resolve states.
|
|
43
43
|
* - Per-field: (entityId, templateFieldNode) → ResolveState
|
|
44
44
|
* - Per-template binding: (entityId, templateNode) → ResolveState
|
|
45
|
-
*
|
|
45
|
+
* where status === "pending" means loading, state.submitting === true means a form submit.
|
|
46
46
|
*/
|
|
47
47
|
readonly entityStates: EntityResolveStateMap;
|
|
48
48
|
private readonly resolveEntries;
|
|
49
49
|
private readonly resolveEntryMap;
|
|
50
|
-
/**
|
|
50
|
+
/** Template-field entries (per-entity field resolves). */
|
|
51
51
|
readonly templateFieldEntries: TemplateFieldResolveEntry[];
|
|
52
|
-
/**
|
|
52
|
+
/** Fast lookup: templateFieldNode → TemplateFieldResolveEntry. */
|
|
53
53
|
private readonly templateFieldEntryMap;
|
|
54
|
-
/** listNode → TemplateFieldResolveEntry[] (
|
|
54
|
+
/** listNode → TemplateFieldResolveEntry[] (for triggering on entity creation). */
|
|
55
55
|
readonly listNodeToTemplateFieldEntries: Map<AnyConfigNode, TemplateFieldResolveEntry[]>;
|
|
56
56
|
private readonly resolveDeps;
|
|
57
57
|
private readonly listResolveDeps;
|
|
58
58
|
private readonly listStates;
|
|
59
59
|
private readonly entityRegistry;
|
|
60
|
-
/**
|
|
60
|
+
/** Entries waiting for their contextDeps to be satisfied before launching. */
|
|
61
61
|
private readonly pendingContextQueue;
|
|
62
62
|
constructor(deps: ResolveManagerDeps);
|
|
63
63
|
/**
|
|
64
|
-
*
|
|
65
|
-
* Arrow function —
|
|
64
|
+
* Run resolve for a specific node (if it has a resolve config).
|
|
65
|
+
* Arrow function — keeps `this` when destructured/passed as a callback.
|
|
66
66
|
*/
|
|
67
67
|
triggerResolve: (node: AnyConfigNode) => void;
|
|
68
68
|
/**
|
|
69
|
-
*
|
|
70
|
-
* Arrow function —
|
|
69
|
+
* Get the current resolve state of a node.
|
|
70
|
+
* Arrow function — keeps `this` when destructured/passed as a callback.
|
|
71
71
|
*/
|
|
72
72
|
getResolveState: (node: AnyConfigNode) => ResolveState | undefined;
|
|
73
73
|
/**
|
|
74
|
-
*
|
|
74
|
+
* Run a per-entity field resolve for a specific entity and template field.
|
|
75
75
|
*
|
|
76
|
-
*
|
|
77
|
-
* 1.
|
|
78
|
-
* 2. getOrCreate ResolveState
|
|
79
|
-
* 3. skipIfResolved:
|
|
80
|
-
* 4. Deduplication:
|
|
81
|
-
* 5.
|
|
76
|
+
* Logic:
|
|
77
|
+
* 1. Find the TemplateFieldResolveEntry by templateFieldNode
|
|
78
|
+
* 2. getOrCreate a ResolveState in entityStates
|
|
79
|
+
* 3. skipIfResolved: when the entity leaf already has a value ≠ template default → skip
|
|
80
|
+
* 4. Deduplication: when status === "pending" → return
|
|
81
|
+
* 5. Call _executeEntityFieldEntry
|
|
82
82
|
*/
|
|
83
83
|
triggerEntityFieldResolve(entityId: string, templateFieldNode: AnyConfigNode): void;
|
|
84
84
|
/**
|
|
85
|
-
*
|
|
86
|
-
* Перенесено из Palistor (фаза 6 — унификация entity resolve в ResolveManager).
|
|
85
|
+
* Run resolve for an entity-template binding.
|
|
87
86
|
*
|
|
88
|
-
* -
|
|
89
|
-
* - Deduplication:
|
|
87
|
+
* - Checks that templateNode.resolve.resolver exists
|
|
88
|
+
* - Deduplication: skipped when already loading (status === "pending")
|
|
90
89
|
* - status "pending" → resolver(entityProxy, store) → upsert result → markResolved → status "resolved"
|
|
91
|
-
* -
|
|
90
|
+
* - On error: onError → status "error"
|
|
92
91
|
*/
|
|
93
92
|
triggerEntityTemplateResolve(entityId: string, templateNode: AnyConfigNode, entityProxy: object): void;
|
|
94
93
|
/**
|
|
95
|
-
*
|
|
94
|
+
* Run resolve for a per-entity nested list.
|
|
96
95
|
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
*
|
|
96
|
+
* The resolve state lives in the shared `entityStates`, keyed by
|
|
97
|
+
* (ownerId, listConfigNode). The list membership lives in the
|
|
98
|
+
* `EntityListState` (on `ownerEntity.lists`), whose identity serves as the
|
|
99
|
+
* isolated version key in the hub.
|
|
100
100
|
*
|
|
101
|
-
* -
|
|
102
|
-
* -
|
|
103
|
-
* - `pending` → resolver(parentValues, store) → upsert children
|
|
104
|
-
*
|
|
105
|
-
*
|
|
101
|
+
* - Checks `listConfigNode[1].resolve.resolver`.
|
|
102
|
+
* - Deduplication: skipped when already `pending`/`resolved`.
|
|
103
|
+
* - `pending` → resolver(parentValues, store) → upsert children with the
|
|
104
|
+
* owner reference → update `EntityListState.itemIds` → notify (bump the
|
|
105
|
+
* entityListState version).
|
|
106
|
+
* - On error: onError → status `error`.
|
|
106
107
|
*/
|
|
107
108
|
triggerEntityListResolve(ownerId: string, listConfigNode: AnyConfigNode, ownerEntity: EntityNode): void;
|
|
108
|
-
/**
|
|
109
|
+
/** Current owner id (accounts for rekey via nodeState). */
|
|
109
110
|
private _listOwnerId;
|
|
110
111
|
/**
|
|
111
|
-
*
|
|
112
|
+
* Single read point for a list's resolve state (root + per-entity).
|
|
112
113
|
*
|
|
113
|
-
*
|
|
114
|
-
*
|
|
115
|
-
* -
|
|
114
|
+
* Gives the builder/loading one source without knowing where the state
|
|
115
|
+
* physically lives:
|
|
116
|
+
* - root → `this.states` (keyed by listConfigNode);
|
|
117
|
+
* - entity→ `this.entityStates` (keyed by (ownerId, listConfigNode)).
|
|
116
118
|
*
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
119
|
+
* The two stores are deliberately not merged: root-list states are coupled
|
|
120
|
+
* to the shared `this.states` (deps re-trigger/reset), and extracting them
|
|
121
|
+
* costs more than it gains. Unification here is at the access level.
|
|
120
122
|
*/
|
|
121
123
|
getListResolveState(listState: ListState): ResolveState | undefined;
|
|
122
124
|
/**
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
+
* Single trigger point for a list resolve (root + per-entity).
|
|
126
|
+
* Dispatches by `ownerEntity` onto the existing bodies
|
|
125
127
|
* ({@link triggerResolve} → executeListResolve / {@link triggerEntityListResolve}).
|
|
126
128
|
*/
|
|
127
129
|
triggerListResolve(listState: ListState): void;
|
|
128
130
|
/**
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
+
* Clear all per-entity resolve states for a deleted entity.
|
|
132
|
+
* Called from Palistor.delete(entityId).
|
|
131
133
|
*/
|
|
132
134
|
cleanupEntityResolveStates(entityId: string): void;
|
|
133
135
|
/**
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
136
|
+
* Wire the resolve re-trigger into the notification hub.
|
|
137
|
+
* Returns the `(changedPaths) => void` hook to install via
|
|
138
|
+
* `hub.setPostNotifyHook`.
|
|
139
|
+
* Returns `null` when there are no resolve entries.
|
|
138
140
|
*/
|
|
139
141
|
createPostNotifyHook(): ((changedPaths: Set<string>) => void) | null;
|
|
140
142
|
/**
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
+
* Parses entity paths out of changedPaths and re-triggers entity field
|
|
144
|
+
* resolves whose dependencies intersect the changed field paths.
|
|
143
145
|
*
|
|
144
|
-
* Entity
|
|
145
|
-
*
|
|
146
|
+
* Entity paths look like `_entity_.${entityId}.${fieldPath}`.
|
|
147
|
+
* Dependencies in entityStates are stored relative to the entity
|
|
148
|
+
* (e.g. "name", not "_entity_.u1.name").
|
|
146
149
|
*/
|
|
147
150
|
private _retriggerEntityFieldResolves;
|
|
148
|
-
/**
|
|
151
|
+
/** Launch eager resolvers (lazy: false). */
|
|
149
152
|
launchEager(): void;
|
|
150
153
|
/**
|
|
151
|
-
*
|
|
152
|
-
*
|
|
153
|
-
*
|
|
154
|
+
* Re-trigger resolvers that depend on the changed paths.
|
|
155
|
+
* Used by `Palistor.setContext()` to reactively re-run resolvers on
|
|
156
|
+
* context changes.
|
|
154
157
|
*/
|
|
155
158
|
retriggerByPaths(changedPaths: Set<string>): void;
|
|
156
|
-
/**
|
|
159
|
+
/** Dispatches an entry to the right execution function (group or list). */
|
|
157
160
|
private _executeEntry;
|
|
158
161
|
/**
|
|
159
|
-
*
|
|
160
|
-
*
|
|
162
|
+
* Executes the entity field resolve for a given entry + entityId.
|
|
163
|
+
* Delegates to executeEntityFieldResolve with per-entity ResolveDeps.
|
|
161
164
|
*/
|
|
162
165
|
private _executeEntityFieldEntry;
|
|
163
166
|
}
|
|
164
|
-
/** @deprecated
|
|
167
|
+
/** @deprecated Use `new ResolveManager(deps)`. */
|
|
165
168
|
export declare function createResolveManager(deps: ResolveManagerDeps): ResolveManager;
|
|
166
169
|
//# sourceMappingURL=createResolveManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createResolveManager.d.ts","sourceRoot":"","sources":["../../../store/init/createResolveManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,YAAY,EAIjB,KAAK,yBAAyB,EAE9B,qBAAqB,EAOtB,MAAM,0BAA0B,CAAC;AAKlC,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,aAAa,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvC,SAAS,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAC9C,MAAM,EAAE,QAAQ,CAAC;IACjB,
|
|
1
|
+
{"version":3,"file":"createResolveManager.d.ts","sourceRoot":"","sources":["../../../store/init/createResolveManager.ts"],"names":[],"mappings":"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"}
|