palistor 0.0.24
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/LICENSE +21 -0
- package/README.md +947 -0
- package/dist/index.d.ts +54 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -0
- package/dist/react/createTrackingProxy.d.ts +55 -0
- package/dist/react/createTrackingProxy.d.ts.map +1 -0
- package/dist/react/createTrackingProxy.js +149 -0
- package/dist/react/createTrackingProxy.js.map +1 -0
- package/dist/react/useForm.d.ts +108 -0
- package/dist/react/useForm.d.ts.map +1 -0
- package/dist/react/useForm.js +180 -0
- package/dist/react/useForm.js.map +1 -0
- package/dist/react/useNotifier.d.ts +35 -0
- package/dist/react/useNotifier.d.ts.map +1 -0
- package/dist/react/useNotifier.js +41 -0
- package/dist/react/useNotifier.js.map +1 -0
- package/dist/react/usePersist.d.ts +45 -0
- package/dist/react/usePersist.d.ts.map +1 -0
- package/dist/react/usePersist.js +60 -0
- package/dist/react/usePersist.js.map +1 -0
- package/dist/react/useStoreContext.d.ts +42 -0
- package/dist/react/useStoreContext.d.ts.map +1 -0
- package/dist/react/useStoreContext.js +46 -0
- package/dist/react/useStoreContext.js.map +1 -0
- package/dist/react/useTranslator.d.ts +37 -0
- package/dist/react/useTranslator.d.ts.map +1 -0
- package/dist/react/useTranslator.js +43 -0
- package/dist/react/useTranslator.js.map +1 -0
- package/dist/store/applyPatch/applyPatch.d.ts +17 -0
- package/dist/store/applyPatch/applyPatch.d.ts.map +1 -0
- package/dist/store/applyPatch/applyPatch.js +44 -0
- package/dist/store/applyPatch/applyPatch.js.map +1 -0
- package/dist/store/buildProxy/buildEntityProjectionProxy.d.ts +52 -0
- package/dist/store/buildProxy/buildEntityProjectionProxy.d.ts.map +1 -0
- package/dist/store/buildProxy/buildEntityProjectionProxy.js +321 -0
- package/dist/store/buildProxy/buildEntityProjectionProxy.js.map +1 -0
- package/dist/store/buildProxy/buildListProxy.d.ts +33 -0
- package/dist/store/buildProxy/buildListProxy.d.ts.map +1 -0
- package/dist/store/buildProxy/buildListProxy.js +306 -0
- package/dist/store/buildProxy/buildListProxy.js.map +1 -0
- package/dist/store/buildProxy/buildProxy.d.ts +41 -0
- package/dist/store/buildProxy/buildProxy.d.ts.map +1 -0
- package/dist/store/buildProxy/buildProxy.js +380 -0
- package/dist/store/buildProxy/buildProxy.js.map +1 -0
- package/dist/store/buildProxy/computeProxyKeys.d.ts +15 -0
- package/dist/store/buildProxy/computeProxyKeys.d.ts.map +1 -0
- package/dist/store/buildProxy/computeProxyKeys.js +28 -0
- package/dist/store/buildProxy/computeProxyKeys.js.map +1 -0
- package/dist/store/buildProxy/handleLazyResolve.d.ts +10 -0
- package/dist/store/buildProxy/handleLazyResolve.d.ts.map +1 -0
- package/dist/store/buildProxy/handleLazyResolve.js +26 -0
- package/dist/store/buildProxy/handleLazyResolve.js.map +1 -0
- package/dist/store/buildProxy/initProxyCaches.d.ts +16 -0
- package/dist/store/buildProxy/initProxyCaches.d.ts.map +1 -0
- package/dist/store/buildProxy/initProxyCaches.js +17 -0
- package/dist/store/buildProxy/initProxyCaches.js.map +1 -0
- package/dist/store/compute/computeFieldState.d.ts +10 -0
- package/dist/store/compute/computeFieldState.d.ts.map +1 -0
- package/dist/store/compute/computeFieldState.js +53 -0
- package/dist/store/compute/computeFieldState.js.map +1 -0
- package/dist/store/compute/fieldStateChanged.d.ts +6 -0
- package/dist/store/compute/fieldStateChanged.d.ts.map +1 -0
- package/dist/store/compute/fieldStateChanged.js +20 -0
- package/dist/store/compute/fieldStateChanged.js.map +1 -0
- package/dist/store/compute/index.d.ts +7 -0
- package/dist/store/compute/index.d.ts.map +1 -0
- package/dist/store/compute/index.js +6 -0
- package/dist/store/compute/index.js.map +1 -0
- package/dist/store/compute/isEmpty.d.ts +6 -0
- package/dist/store/compute/isEmpty.d.ts.map +1 -0
- package/dist/store/compute/isEmpty.js +14 -0
- package/dist/store/compute/isEmpty.js.map +1 -0
- package/dist/store/compute/recompute/collectGroupComputeNodes.d.ts +11 -0
- package/dist/store/compute/recompute/collectGroupComputeNodes.d.ts.map +1 -0
- package/dist/store/compute/recompute/collectGroupComputeNodes.js +26 -0
- package/dist/store/compute/recompute/collectGroupComputeNodes.js.map +1 -0
- package/dist/store/compute/recompute/collectGroupLeafNodes.d.ts +11 -0
- package/dist/store/compute/recompute/collectGroupLeafNodes.d.ts.map +1 -0
- package/dist/store/compute/recompute/collectGroupLeafNodes.js +26 -0
- package/dist/store/compute/recompute/collectGroupLeafNodes.js.map +1 -0
- package/dist/store/compute/recompute/index.d.ts +7 -0
- package/dist/store/compute/recompute/index.d.ts.map +1 -0
- package/dist/store/compute/recompute/index.js +6 -0
- package/dist/store/compute/recompute/index.js.map +1 -0
- package/dist/store/compute/recompute/recomputeAndNotify.d.ts +8 -0
- package/dist/store/compute/recompute/recomputeAndNotify.d.ts.map +1 -0
- package/dist/store/compute/recompute/recomputeAndNotify.js +13 -0
- package/dist/store/compute/recompute/recomputeAndNotify.js.map +1 -0
- package/dist/store/compute/recompute/recomputeLeaves.d.ts +23 -0
- package/dist/store/compute/recompute/recomputeLeaves.d.ts.map +1 -0
- package/dist/store/compute/recompute/recomputeLeaves.js +77 -0
- package/dist/store/compute/recompute/recomputeLeaves.js.map +1 -0
- package/dist/store/compute/recompute/recomputeTargeted.d.ts +14 -0
- package/dist/store/compute/recompute/recomputeTargeted.d.ts.map +1 -0
- package/dist/store/compute/recompute/recomputeTargeted.js +50 -0
- package/dist/store/compute/recompute/recomputeTargeted.js.map +1 -0
- package/dist/store/compute/recompute/topologicalSortComputed.d.ts +16 -0
- package/dist/store/compute/recompute/topologicalSortComputed.d.ts.map +1 -0
- package/dist/store/compute/recompute/topologicalSortComputed.js +60 -0
- package/dist/store/compute/recompute/topologicalSortComputed.js.map +1 -0
- package/dist/store/compute/recompute/types.d.ts +24 -0
- package/dist/store/compute/recompute/types.d.ts.map +1 -0
- package/dist/store/compute/recompute/types.js +2 -0
- package/dist/store/compute/recompute/types.js.map +1 -0
- package/dist/store/compute/resolveFlag.d.ts +7 -0
- package/dist/store/compute/resolveFlag.d.ts.map +1 -0
- package/dist/store/compute/resolveFlag.js +12 -0
- package/dist/store/compute/resolveFlag.js.map +1 -0
- package/dist/store/compute/resolveString.d.ts +11 -0
- package/dist/store/compute/resolveString.d.ts.map +1 -0
- package/dist/store/compute/resolveString.js +18 -0
- package/dist/store/compute/resolveString.js.map +1 -0
- package/dist/store/compute/types.d.ts +37 -0
- package/dist/store/compute/types.d.ts.map +1 -0
- package/dist/store/compute/types.js +2 -0
- package/dist/store/compute/types.js.map +1 -0
- package/dist/store/constants.d.ts +83 -0
- package/dist/store/constants.d.ts.map +1 -0
- package/dist/store/constants.js +145 -0
- package/dist/store/constants.js.map +1 -0
- package/dist/store/defineFieldMapping.d.ts +41 -0
- package/dist/store/defineFieldMapping.d.ts.map +1 -0
- package/dist/store/defineFieldMapping.js +42 -0
- package/dist/store/defineFieldMapping.js.map +1 -0
- package/dist/store/defineList.d.ts +14 -0
- package/dist/store/defineList.d.ts.map +1 -0
- package/dist/store/defineList.js +7 -0
- package/dist/store/defineList.js.map +1 -0
- package/dist/store/dirtyTracking/captureInitialValues.d.ts +8 -0
- package/dist/store/dirtyTracking/captureInitialValues.d.ts.map +1 -0
- package/dist/store/dirtyTracking/captureInitialValues.js +16 -0
- package/dist/store/dirtyTracking/captureInitialValues.js.map +1 -0
- package/dist/store/dirtyTracking/collectInitialSnapshot.d.ts +10 -0
- package/dist/store/dirtyTracking/collectInitialSnapshot.d.ts.map +1 -0
- package/dist/store/dirtyTracking/collectInitialSnapshot.js +35 -0
- package/dist/store/dirtyTracking/collectInitialSnapshot.js.map +1 -0
- package/dist/store/dirtyTracking/index.d.ts +7 -0
- package/dist/store/dirtyTracking/index.d.ts.map +1 -0
- package/dist/store/dirtyTracking/index.js +6 -0
- package/dist/store/dirtyTracking/index.js.map +1 -0
- package/dist/store/dirtyTracking/isDirtyValue.d.ts +7 -0
- package/dist/store/dirtyTracking/isDirtyValue.d.ts.map +1 -0
- package/dist/store/dirtyTracking/isDirtyValue.js +25 -0
- package/dist/store/dirtyTracking/isDirtyValue.js.map +1 -0
- package/dist/store/dirtyTracking/mergeInitialValues.d.ts +11 -0
- package/dist/store/dirtyTracking/mergeInitialValues.d.ts.map +1 -0
- package/dist/store/dirtyTracking/mergeInitialValues.js +29 -0
- package/dist/store/dirtyTracking/mergeInitialValues.js.map +1 -0
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.d.ts +17 -0
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.d.ts.map +1 -0
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.js +90 -0
- package/dist/store/dirtyTracking/recomputeDirtyTargeted.js.map +1 -0
- package/dist/store/dirtyTracking/setGroupRevalidate.d.ts +13 -0
- package/dist/store/dirtyTracking/setGroupRevalidate.d.ts.map +1 -0
- package/dist/store/dirtyTracking/setGroupRevalidate.js +32 -0
- package/dist/store/dirtyTracking/setGroupRevalidate.js.map +1 -0
- package/dist/store/entityRegistry/entityRegistry.d.ts +166 -0
- package/dist/store/entityRegistry/entityRegistry.d.ts.map +1 -0
- package/dist/store/entityRegistry/entityRegistry.js +402 -0
- package/dist/store/entityRegistry/entityRegistry.js.map +1 -0
- package/dist/store/entityRegistry/generateId.d.ts +7 -0
- package/dist/store/entityRegistry/generateId.d.ts.map +1 -0
- package/dist/store/entityRegistry/generateId.js +18 -0
- package/dist/store/entityRegistry/generateId.js.map +1 -0
- package/dist/store/entityRegistry/index.d.ts +4 -0
- package/dist/store/entityRegistry/index.d.ts.map +1 -0
- package/dist/store/entityRegistry/index.js +3 -0
- package/dist/store/entityRegistry/index.js.map +1 -0
- package/dist/store/entityRegistry/types.d.ts +50 -0
- package/dist/store/entityRegistry/types.d.ts.map +1 -0
- package/dist/store/entityRegistry/types.js +2 -0
- package/dist/store/entityRegistry/types.js.map +1 -0
- package/dist/store/fieldMapping.typecheck.d.ts +2 -0
- package/dist/store/fieldMapping.typecheck.d.ts.map +1 -0
- package/dist/store/fieldMapping.typecheck.js +71 -0
- package/dist/store/fieldMapping.typecheck.js.map +1 -0
- package/dist/store/groupDeps/createGroupDeps.d.ts +9 -0
- package/dist/store/groupDeps/createGroupDeps.d.ts.map +1 -0
- package/dist/store/groupDeps/createGroupDeps.js +29 -0
- package/dist/store/groupDeps/createGroupDeps.js.map +1 -0
- package/dist/store/groupDeps/createTrackingValues.d.ts +15 -0
- package/dist/store/groupDeps/createTrackingValues.d.ts.map +1 -0
- package/dist/store/groupDeps/createTrackingValues.js +39 -0
- package/dist/store/groupDeps/createTrackingValues.js.map +1 -0
- package/dist/store/groupDeps/getNodeGroupPath.d.ts +9 -0
- package/dist/store/groupDeps/getNodeGroupPath.d.ts.map +1 -0
- package/dist/store/groupDeps/getNodeGroupPath.js +20 -0
- package/dist/store/groupDeps/getNodeGroupPath.js.map +1 -0
- package/dist/store/groupDeps/getRecipientGroups.d.ts +5 -0
- package/dist/store/groupDeps/getRecipientGroups.d.ts.map +1 -0
- package/dist/store/groupDeps/getRecipientGroups.js +15 -0
- package/dist/store/groupDeps/getRecipientGroups.js.map +1 -0
- package/dist/store/groupDeps/groupDeps.d.ts +19 -0
- package/dist/store/groupDeps/groupDeps.d.ts.map +1 -0
- package/dist/store/groupDeps/groupDeps.js +19 -0
- package/dist/store/groupDeps/groupDeps.js.map +1 -0
- package/dist/store/groupDeps/index.d.ts +7 -0
- package/dist/store/groupDeps/index.d.ts.map +1 -0
- package/dist/store/groupDeps/index.js +7 -0
- package/dist/store/groupDeps/index.js.map +1 -0
- package/dist/store/groupDeps/pairKey.d.ts +7 -0
- package/dist/store/groupDeps/pairKey.d.ts.map +1 -0
- package/dist/store/groupDeps/pairKey.js +12 -0
- package/dist/store/groupDeps/pairKey.js.map +1 -0
- package/dist/store/groupDeps/resolveGroupByPath.d.ts +8 -0
- package/dist/store/groupDeps/resolveGroupByPath.d.ts.map +1 -0
- package/dist/store/groupDeps/resolveGroupByPath.js +19 -0
- package/dist/store/groupDeps/resolveGroupByPath.js.map +1 -0
- package/dist/store/init/createNotificationHub.d.ts +81 -0
- package/dist/store/init/createNotificationHub.d.ts.map +1 -0
- package/dist/store/init/createNotificationHub.js +149 -0
- package/dist/store/init/createNotificationHub.js.map +1 -0
- package/dist/store/init/createResolveManager.d.ts +166 -0
- package/dist/store/init/createResolveManager.d.ts.map +1 -0
- package/dist/store/init/createResolveManager.js +502 -0
- package/dist/store/init/createResolveManager.js.map +1 -0
- package/dist/store/init/initGroupSubmitting.d.ts +8 -0
- package/dist/store/init/initGroupSubmitting.d.ts.map +1 -0
- package/dist/store/init/initGroupSubmitting.js +39 -0
- package/dist/store/init/initGroupSubmitting.js.map +1 -0
- package/dist/store/normalizeConfig.d.ts +28 -0
- package/dist/store/normalizeConfig.d.ts.map +1 -0
- package/dist/store/normalizeConfig.js +76 -0
- package/dist/store/normalizeConfig.js.map +1 -0
- package/dist/store/onChangePipeline/computeFieldKey.d.ts +11 -0
- package/dist/store/onChangePipeline/computeFieldKey.d.ts.map +1 -0
- package/dist/store/onChangePipeline/computeFieldKey.js +18 -0
- package/dist/store/onChangePipeline/computeFieldKey.js.map +1 -0
- package/dist/store/onChangePipeline/findOnChangeAncestors.d.ts +8 -0
- package/dist/store/onChangePipeline/findOnChangeAncestors.d.ts.map +1 -0
- package/dist/store/onChangePipeline/findOnChangeAncestors.js +22 -0
- package/dist/store/onChangePipeline/findOnChangeAncestors.js.map +1 -0
- package/dist/store/onChangePipeline/onChangePipeline.d.ts +29 -0
- package/dist/store/onChangePipeline/onChangePipeline.d.ts.map +1 -0
- package/dist/store/onChangePipeline/onChangePipeline.js +99 -0
- package/dist/store/onChangePipeline/onChangePipeline.js.map +1 -0
- package/dist/store/persist/drivers.d.ts +34 -0
- package/dist/store/persist/drivers.d.ts.map +1 -0
- package/dist/store/persist/drivers.js +89 -0
- package/dist/store/persist/drivers.js.map +1 -0
- package/dist/store/persist/index.d.ts +7 -0
- package/dist/store/persist/index.d.ts.map +1 -0
- package/dist/store/persist/index.js +3 -0
- package/dist/store/persist/index.js.map +1 -0
- package/dist/store/persist/persistManager.d.ts +67 -0
- package/dist/store/persist/persistManager.d.ts.map +1 -0
- package/dist/store/persist/persistManager.js +198 -0
- package/dist/store/persist/persistManager.js.map +1 -0
- package/dist/store/persist/types.d.ts +66 -0
- package/dist/store/persist/types.d.ts.map +1 -0
- package/dist/store/persist/types.js +9 -0
- package/dist/store/persist/types.js.map +1 -0
- package/dist/store/resetPipeline/buildResetPatch.d.ts +11 -0
- package/dist/store/resetPipeline/buildResetPatch.d.ts.map +1 -0
- package/dist/store/resetPipeline/buildResetPatch.js +22 -0
- package/dist/store/resetPipeline/buildResetPatch.js.map +1 -0
- package/dist/store/resetPipeline/collectDefaults.d.ts +12 -0
- package/dist/store/resetPipeline/collectDefaults.d.ts.map +1 -0
- package/dist/store/resetPipeline/collectDefaults.js +31 -0
- package/dist/store/resetPipeline/collectDefaults.js.map +1 -0
- package/dist/store/resetPipeline/resetPipeline.d.ts +19 -0
- package/dist/store/resetPipeline/resetPipeline.d.ts.map +1 -0
- package/dist/store/resetPipeline/resetPipeline.js +49 -0
- package/dist/store/resetPipeline/resetPipeline.js.map +1 -0
- package/dist/store/resolvePipeline/applyPendingWrites.d.ts +26 -0
- package/dist/store/resolvePipeline/applyPendingWrites.d.ts.map +1 -0
- package/dist/store/resolvePipeline/applyPendingWrites.js +68 -0
- package/dist/store/resolvePipeline/applyPendingWrites.js.map +1 -0
- package/dist/store/resolvePipeline/createContextTrackingProxy.d.ts +16 -0
- package/dist/store/resolvePipeline/createContextTrackingProxy.d.ts.map +1 -0
- package/dist/store/resolvePipeline/createContextTrackingProxy.js +29 -0
- package/dist/store/resolvePipeline/createContextTrackingProxy.js.map +1 -0
- package/dist/store/resolvePipeline/createValuesTrackingProxy.d.ts +75 -0
- package/dist/store/resolvePipeline/createValuesTrackingProxy.d.ts.map +1 -0
- package/dist/store/resolvePipeline/createValuesTrackingProxy.js +128 -0
- package/dist/store/resolvePipeline/createValuesTrackingProxy.js.map +1 -0
- package/dist/store/resolvePipeline/executeEntityFieldResolve.d.ts +29 -0
- package/dist/store/resolvePipeline/executeEntityFieldResolve.d.ts.map +1 -0
- package/dist/store/resolvePipeline/executeEntityFieldResolve.js +218 -0
- package/dist/store/resolvePipeline/executeEntityFieldResolve.js.map +1 -0
- package/dist/store/resolvePipeline/executeListResolve.d.ts +32 -0
- package/dist/store/resolvePipeline/executeListResolve.d.ts.map +1 -0
- package/dist/store/resolvePipeline/executeListResolve.js +157 -0
- package/dist/store/resolvePipeline/executeListResolve.js.map +1 -0
- package/dist/store/resolvePipeline/executeResolve.d.ts +26 -0
- package/dist/store/resolvePipeline/executeResolve.d.ts.map +1 -0
- package/dist/store/resolvePipeline/executeResolve.js +201 -0
- package/dist/store/resolvePipeline/executeResolve.js.map +1 -0
- package/dist/store/resolvePipeline/findResolvesToRetrigger.d.ts +10 -0
- package/dist/store/resolvePipeline/findResolvesToRetrigger.d.ts.map +1 -0
- package/dist/store/resolvePipeline/findResolvesToRetrigger.js +29 -0
- package/dist/store/resolvePipeline/findResolvesToRetrigger.js.map +1 -0
- package/dist/store/resolvePipeline/index.d.ts +22 -0
- package/dist/store/resolvePipeline/index.d.ts.map +1 -0
- package/dist/store/resolvePipeline/index.js +18 -0
- package/dist/store/resolvePipeline/index.js.map +1 -0
- package/dist/store/resolvePipeline/initResolveStates.d.ts +41 -0
- package/dist/store/resolvePipeline/initResolveStates.d.ts.map +1 -0
- package/dist/store/resolvePipeline/initResolveStates.js +95 -0
- package/dist/store/resolvePipeline/initResolveStates.js.map +1 -0
- package/dist/store/resolvePipeline/resetResolveState.d.ts +8 -0
- package/dist/store/resolvePipeline/resetResolveState.d.ts.map +1 -0
- package/dist/store/resolvePipeline/resetResolveState.js +18 -0
- package/dist/store/resolvePipeline/resetResolveState.js.map +1 -0
- package/dist/store/resolvePipeline/types.d.ts +134 -0
- package/dist/store/resolvePipeline/types.d.ts.map +1 -0
- package/dist/store/resolvePipeline/types.js +54 -0
- package/dist/store/resolvePipeline/types.js.map +1 -0
- package/dist/store/store/NodeRegistry/index.d.ts +3 -0
- package/dist/store/store/NodeRegistry/index.d.ts.map +1 -0
- package/dist/store/store/NodeRegistry/index.js +2 -0
- package/dist/store/store/NodeRegistry/index.js.map +1 -0
- package/dist/store/store/NodeRegistry/nodeRegistry.d.ts +139 -0
- package/dist/store/store/NodeRegistry/nodeRegistry.d.ts.map +1 -0
- package/dist/store/store/NodeRegistry/nodeRegistry.js +255 -0
- package/dist/store/store/NodeRegistry/nodeRegistry.js.map +1 -0
- package/dist/store/store/NodeRegistry/nodeUtils.d.ts +17 -0
- package/dist/store/store/NodeRegistry/nodeUtils.d.ts.map +1 -0
- package/dist/store/store/NodeRegistry/nodeUtils.js +21 -0
- package/dist/store/store/NodeRegistry/nodeUtils.js.map +1 -0
- package/dist/store/store/NodeRegistry/nodeView.d.ts +28 -0
- package/dist/store/store/NodeRegistry/nodeView.d.ts.map +1 -0
- package/dist/store/store/NodeRegistry/nodeView.js +16 -0
- package/dist/store/store/NodeRegistry/nodeView.js.map +1 -0
- package/dist/store/store/dirtyTracker.d.ts +27 -0
- package/dist/store/store/dirtyTracker.d.ts.map +1 -0
- package/dist/store/store/dirtyTracker.js +38 -0
- package/dist/store/store/dirtyTracker.js.map +1 -0
- package/dist/store/store/groupDepsMap.d.ts +52 -0
- package/dist/store/store/groupDepsMap.d.ts.map +1 -0
- package/dist/store/store/groupDepsMap.js +84 -0
- package/dist/store/store/groupDepsMap.js.map +1 -0
- package/dist/store/store/hasComputedProps.d.ts +7 -0
- package/dist/store/store/hasComputedProps.d.ts.map +1 -0
- package/dist/store/store/hasComputedProps.js +15 -0
- package/dist/store/store/hasComputedProps.js.map +1 -0
- package/dist/store/store/index.d.ts +6 -0
- package/dist/store/store/index.d.ts.map +1 -0
- package/dist/store/store/index.js +3 -0
- package/dist/store/store/index.js.map +1 -0
- package/dist/store/store/nodeMap.d.ts +12 -0
- package/dist/store/store/nodeMap.d.ts.map +1 -0
- package/dist/store/store/nodeMap.js +30 -0
- package/dist/store/store/nodeMap.js.map +1 -0
- package/dist/store/store/palistor.d.ts +256 -0
- package/dist/store/store/palistor.d.ts.map +1 -0
- package/dist/store/store/palistor.js +772 -0
- package/dist/store/store/palistor.js.map +1 -0
- package/dist/store/store/registerNodes.d.ts +33 -0
- package/dist/store/store/registerNodes.d.ts.map +1 -0
- package/dist/store/store/registerNodes.js +88 -0
- package/dist/store/store/registerNodes.js.map +1 -0
- package/dist/store/store/serviceRegistry.d.ts +24 -0
- package/dist/store/store/serviceRegistry.d.ts.map +1 -0
- package/dist/store/store/serviceRegistry.js +32 -0
- package/dist/store/store/serviceRegistry.js.map +1 -0
- package/dist/store/store/types.d.ts +622 -0
- package/dist/store/store/types.d.ts.map +1 -0
- package/dist/store/store/types.js +2 -0
- package/dist/store/store/types.js.map +1 -0
- package/dist/store/submitPipeline/applyLeafBeforeSubmit.d.ts +7 -0
- package/dist/store/submitPipeline/applyLeafBeforeSubmit.d.ts.map +1 -0
- package/dist/store/submitPipeline/applyLeafBeforeSubmit.js +26 -0
- package/dist/store/submitPipeline/applyLeafBeforeSubmit.js.map +1 -0
- package/dist/store/submitPipeline/collectLeafStates.d.ts +11 -0
- package/dist/store/submitPipeline/collectLeafStates.d.ts.map +1 -0
- package/dist/store/submitPipeline/collectLeafStates.js +17 -0
- package/dist/store/submitPipeline/collectLeafStates.js.map +1 -0
- package/dist/store/submitPipeline/getSubValues.d.ts +9 -0
- package/dist/store/submitPipeline/getSubValues.d.ts.map +1 -0
- package/dist/store/submitPipeline/getSubValues.js +26 -0
- package/dist/store/submitPipeline/getSubValues.js.map +1 -0
- package/dist/store/submitPipeline/submitPipeline.d.ts +32 -0
- package/dist/store/submitPipeline/submitPipeline.d.ts.map +1 -0
- package/dist/store/submitPipeline/submitPipeline.js +119 -0
- package/dist/store/submitPipeline/submitPipeline.js.map +1 -0
- package/dist/store/submitPipeline/types.d.ts +12 -0
- package/dist/store/submitPipeline/types.d.ts.map +1 -0
- package/dist/store/submitPipeline/types.js +2 -0
- package/dist/store/submitPipeline/types.js.map +1 -0
- package/dist/store/traversal/index.d.ts +4 -0
- package/dist/store/traversal/index.d.ts.map +1 -0
- package/dist/store/traversal/index.js +3 -0
- package/dist/store/traversal/index.js.map +1 -0
- package/dist/store/traversal/nodeClassifier.d.ts +23 -0
- package/dist/store/traversal/nodeClassifier.d.ts.map +1 -0
- package/dist/store/traversal/nodeClassifier.js +46 -0
- package/dist/store/traversal/nodeClassifier.js.map +1 -0
- package/dist/store/traversal/walkFull.d.ts +33 -0
- package/dist/store/traversal/walkFull.d.ts.map +1 -0
- package/dist/store/traversal/walkFull.js +28 -0
- package/dist/store/traversal/walkFull.js.map +1 -0
- package/dist/store/valuesCache/valuesCache.d.ts +27 -0
- package/dist/store/valuesCache/valuesCache.d.ts.map +1 -0
- package/dist/store/valuesCache/valuesCache.js +58 -0
- package/dist/store/valuesCache/valuesCache.js.map +1 -0
- package/dist/store/writePipeline/formatPatch.d.ts +14 -0
- package/dist/store/writePipeline/formatPatch.d.ts.map +1 -0
- package/dist/store/writePipeline/formatPatch.js +35 -0
- package/dist/store/writePipeline/formatPatch.js.map +1 -0
- package/dist/store/writePipeline/formatValue.d.ts +12 -0
- package/dist/store/writePipeline/formatValue.d.ts.map +1 -0
- package/dist/store/writePipeline/formatValue.js +15 -0
- package/dist/store/writePipeline/formatValue.js.map +1 -0
- package/dist/store/writePipeline/index.d.ts +8 -0
- package/dist/store/writePipeline/index.d.ts.map +1 -0
- package/dist/store/writePipeline/index.js +7 -0
- package/dist/store/writePipeline/index.js.map +1 -0
- package/dist/store/writePipeline/mergeChanged.d.ts +9 -0
- package/dist/store/writePipeline/mergeChanged.d.ts.map +1 -0
- package/dist/store/writePipeline/mergeChanged.js +15 -0
- package/dist/store/writePipeline/mergeChanged.js.map +1 -0
- package/dist/store/writePipeline/runSetter.d.ts +16 -0
- package/dist/store/writePipeline/runSetter.d.ts.map +1 -0
- package/dist/store/writePipeline/runSetter.js +35 -0
- package/dist/store/writePipeline/runSetter.js.map +1 -0
- package/dist/store/writePipeline/storeValue.d.ts +11 -0
- package/dist/store/writePipeline/storeValue.d.ts.map +1 -0
- package/dist/store/writePipeline/storeValue.js +17 -0
- package/dist/store/writePipeline/storeValue.js.map +1 -0
- package/dist/store/writePipeline/types.d.ts +10 -0
- package/dist/store/writePipeline/types.d.ts.map +1 -0
- package/dist/store/writePipeline/types.js +2 -0
- package/dist/store/writePipeline/types.js.map +1 -0
- package/dist/store/writePipeline/writePipeline.d.ts +31 -0
- package/dist/store/writePipeline/writePipeline.d.ts.map +1 -0
- package/dist/store/writePipeline/writePipeline.js +97 -0
- package/dist/store/writePipeline/writePipeline.js.map +1 -0
- package/package.json +79 -0
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
import { CONFIG_NODE, CONFIG_PROPS, ENTITY_ID, ENTITY_ID_LEAF, STORE_REF } from "../constants";
|
|
2
|
+
import { isLeafNode, isGroupNode } from "../traversal";
|
|
3
|
+
import { buildListProxy } from "./buildListProxy";
|
|
4
|
+
/** Поэлементное сравнение двух массивов строк (для dirty по составу списка). */
|
|
5
|
+
function arraysEqual(a, b) {
|
|
6
|
+
if (a.length !== b.length)
|
|
7
|
+
return false;
|
|
8
|
+
for (let i = 0; i < a.length; i++) {
|
|
9
|
+
if (a[i] !== b[i])
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
return true;
|
|
13
|
+
}
|
|
14
|
+
// ─── Helpers ────────────────────────────────────────────────────────────────
|
|
15
|
+
/**
|
|
16
|
+
* Build a flat values object from an entity node for use in computed
|
|
17
|
+
* template rules (formatter, validate, isRequired, etc.).
|
|
18
|
+
*
|
|
19
|
+
* Exported for per-entity list resolve (variant C): the child-list resolver
|
|
20
|
+
* receives the owner's flat snapshot built here (see triggerEntityListResolve).
|
|
21
|
+
* NB: `lists`/`owner` on EntityNode are non-enumerable → excluded automatically.
|
|
22
|
+
*/
|
|
23
|
+
export function buildEntityValues(entityNode, nodeState) {
|
|
24
|
+
const values = {};
|
|
25
|
+
for (const key of Object.keys(entityNode)) {
|
|
26
|
+
const field = entityNode[key];
|
|
27
|
+
if (field && typeof field === "object") {
|
|
28
|
+
if (isLeafNode(field)) {
|
|
29
|
+
values[key] = nodeState.get(field)?.value
|
|
30
|
+
?? field.value;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
values[key] = buildEntityValues(field, nodeState);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return values;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Build a flat values object for an entity INCLUDING its per-entity nested lists
|
|
41
|
+
* (variant C, phase C3). Scalars/groups come from {@link buildEntityValues};
|
|
42
|
+
* for every list field in the template, the child entities' deep values are
|
|
43
|
+
* appended under the list's field key. Recurses into nested-of-nested lists.
|
|
44
|
+
*
|
|
45
|
+
* Used by the entity projection proxy's `values` getter and the per-entity list
|
|
46
|
+
* proxy's `getValues()`. NB: plain {@link buildEntityValues} stays list-free —
|
|
47
|
+
* it feeds resolvers/validators that must see scalar values only.
|
|
48
|
+
*/
|
|
49
|
+
export function buildEntityValuesWithLists(entityNode, templateNode, kernel) {
|
|
50
|
+
const nodeState = kernel.nodes.nodeState;
|
|
51
|
+
const values = buildEntityValues(entityNode, nodeState);
|
|
52
|
+
const lists = entityNode.lists;
|
|
53
|
+
if (!lists)
|
|
54
|
+
return values;
|
|
55
|
+
// Walk the template (incl. nested groups) and materialize every per-entity
|
|
56
|
+
// list into its matching value subtree. `lists` is keyed by listConfigNode
|
|
57
|
+
// and stored flat on the entity, so a list nested inside a group is looked up
|
|
58
|
+
// the same way — only the value subtree we write into differs (C4).
|
|
59
|
+
materializeListsInto(values, templateNode, lists, kernel);
|
|
60
|
+
return values;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Recursively materialize per-entity lists from `lists` into `valuesSubtree`,
|
|
64
|
+
* walking `templateSubtree` in parallel. List fields become arrays of child
|
|
65
|
+
* deep-values; nested groups recurse into the corresponding value subtree.
|
|
66
|
+
*/
|
|
67
|
+
function materializeListsInto(valuesSubtree, templateSubtree, lists, kernel) {
|
|
68
|
+
for (const key of Object.keys(templateSubtree)) {
|
|
69
|
+
if (CONFIG_PROPS.has(key))
|
|
70
|
+
continue;
|
|
71
|
+
const templateField = templateSubtree[key];
|
|
72
|
+
if (Array.isArray(templateField)) {
|
|
73
|
+
// Включаем list-поле только если у entity есть его состояние (список
|
|
74
|
+
// загружался/менялся). Untouched-список ключ не добавляет — симметрично
|
|
75
|
+
// с материализацией в projectionObj (store.getValues()).
|
|
76
|
+
const els = lists.get(templateField);
|
|
77
|
+
if (!els)
|
|
78
|
+
continue;
|
|
79
|
+
const childTemplate = templateField[0];
|
|
80
|
+
valuesSubtree[key] = els.itemIds
|
|
81
|
+
.map((id) => {
|
|
82
|
+
const child = kernel.entityRegistry.get(id);
|
|
83
|
+
return child ? buildEntityValuesWithLists(child, childTemplate, kernel) : undefined;
|
|
84
|
+
})
|
|
85
|
+
.filter((v) => v !== undefined);
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
if (templateField && typeof templateField === "object" && isGroupNode(templateField)) {
|
|
89
|
+
const sub = valuesSubtree[key];
|
|
90
|
+
if (sub && typeof sub === "object" && !Array.isArray(sub)) {
|
|
91
|
+
materializeListsInto(sub, templateField, lists, kernel);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Whether an entity is dirty (variant C, phase C3): any of its leaf fields
|
|
98
|
+
* differs from its captured initial value, OR any per-entity list's composition
|
|
99
|
+
* differs from its initial snapshot.
|
|
100
|
+
*/
|
|
101
|
+
export function isEntityDirty(entityNode, kernel) {
|
|
102
|
+
const nodeState = kernel.nodes.nodeState;
|
|
103
|
+
const anyLeafDirty = (node) => {
|
|
104
|
+
for (const key of Object.keys(node)) {
|
|
105
|
+
const field = node[key];
|
|
106
|
+
if (!field || typeof field !== "object")
|
|
107
|
+
continue;
|
|
108
|
+
if (isLeafNode(field)) {
|
|
109
|
+
if (nodeState.get(field)?.dirty)
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
else if (anyLeafDirty(field)) {
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return false;
|
|
117
|
+
};
|
|
118
|
+
if (anyLeafDirty(entityNode))
|
|
119
|
+
return true;
|
|
120
|
+
const lists = entityNode.lists;
|
|
121
|
+
if (lists) {
|
|
122
|
+
for (const els of lists.values()) {
|
|
123
|
+
if (!arraysEqual(els.itemIds, els.initialItemIds))
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
// ─── Entity leaf proxy ───────────────────────────────────────────────────────
|
|
130
|
+
// buildEntityLeafProxy removed — entity leaf proxies are now built by
|
|
131
|
+
// ProxyBuilder._buildEntityLeafProxy(storage, rules) via proxyBuilder.build(node, { via }).
|
|
132
|
+
// ─── Entity projection proxy ─────────────────────────────────────────────────
|
|
133
|
+
/**
|
|
134
|
+
* Build an EntityProjectionProxy: a proxy for an entity through a template node.
|
|
135
|
+
*
|
|
136
|
+
* Provides entity leaf values accessed through template structure.
|
|
137
|
+
* Template rules (formatter, setter, validate, isRequired, label, etc.) are applied.
|
|
138
|
+
*
|
|
139
|
+
* Accessing `proxy.name` → entity-leaf proxy (built by ProxyBuilder) with template rules.
|
|
140
|
+
* Writing `proxy.name.value = 'X'` → updates entity leaf via template formatter.
|
|
141
|
+
*
|
|
142
|
+
* @param entityNode EntityNode from entityRegistry
|
|
143
|
+
* @param templateNode Template config node (the `array[0]` of a ListNode)
|
|
144
|
+
* @param kernel Palistor instance
|
|
145
|
+
* @param entityProxyCache Per-list cache (keyed by entityNode) for stable references
|
|
146
|
+
* @param ownerEntityNode Real owner entity for per-entity lists (C4). Threaded
|
|
147
|
+
* through nested-group recursion so a list declared inside a structural group
|
|
148
|
+
* is owned by the nearest ancestor entity (the one with an `id`), not by the
|
|
149
|
+
* group node — which `entityNode`/`rootEntityNode` reset to on recursion.
|
|
150
|
+
* Omitted on the top-level call → defaults to `entityNode` itself.
|
|
151
|
+
*/
|
|
152
|
+
export function buildEntityProjectionProxy(entityNode, templateNode, kernel, entityProxyCache, ownerEntityNode) {
|
|
153
|
+
const cacheKey = entityNode;
|
|
154
|
+
const cached = entityProxyCache?.get(cacheKey);
|
|
155
|
+
if (cached)
|
|
156
|
+
return cached;
|
|
157
|
+
const templateKeys = Object.keys(templateNode).filter((k) => !CONFIG_PROPS.has(k));
|
|
158
|
+
// The top-level entityNode for building entity values in leaf proxies.
|
|
159
|
+
// For nested groups, we still need the root entity node context.
|
|
160
|
+
const rootEntityNode = entityNode;
|
|
161
|
+
// Owner entity for per-entity nested lists. On the top-level call it's the
|
|
162
|
+
// entity itself; preserved across nested-group recursion so list ownership
|
|
163
|
+
// stays anchored to the real entity (C4 blocker fix).
|
|
164
|
+
const listOwnerEntity = ownerEntityNode ?? entityNode;
|
|
165
|
+
// Stable submit function reference (created lazily)
|
|
166
|
+
let submitFnRef = null;
|
|
167
|
+
const nodeState = kernel.nodes.nodeState;
|
|
168
|
+
// Helper: get current entity id from nodeState or entity leaf
|
|
169
|
+
const getEntityId = () => {
|
|
170
|
+
if ("id" in entityNode) {
|
|
171
|
+
const idLeaf = entityNode.id;
|
|
172
|
+
return (nodeState.get(idLeaf)?.value ??
|
|
173
|
+
idLeaf.value);
|
|
174
|
+
}
|
|
175
|
+
return "";
|
|
176
|
+
};
|
|
177
|
+
const proxy = new Proxy(entityNode, {
|
|
178
|
+
get(_target, key) {
|
|
179
|
+
// Transparent for tracking proxy
|
|
180
|
+
if (key === CONFIG_NODE)
|
|
181
|
+
return entityNode;
|
|
182
|
+
// Expose entity ID and store for useForm(entity, templateSelector) overload
|
|
183
|
+
if (key === ENTITY_ID) {
|
|
184
|
+
if ("id" in entityNode) {
|
|
185
|
+
const idLeaf = entityNode.id;
|
|
186
|
+
return (nodeState.get(idLeaf)
|
|
187
|
+
?.value ?? idLeaf.value);
|
|
188
|
+
}
|
|
189
|
+
return undefined;
|
|
190
|
+
}
|
|
191
|
+
// Expose the id leaf node for tracking proxy — lets it subscribe to rekey() changes
|
|
192
|
+
if (key === ENTITY_ID_LEAF && "id" in entityNode) {
|
|
193
|
+
return entityNode.id;
|
|
194
|
+
}
|
|
195
|
+
if (key === STORE_REF)
|
|
196
|
+
return kernel;
|
|
197
|
+
if (typeof key === "symbol")
|
|
198
|
+
return undefined;
|
|
199
|
+
// Обратный маппинг на входе: external → internal. Влияет на `loading`/`dirty`
|
|
200
|
+
// (mappable-ключи). Навигация к template-полям остаётся по оригинальному `key`.
|
|
201
|
+
const ikey = kernel.externalToInternal[key] ?? key;
|
|
202
|
+
// id is always exposed directly as value (not as a leaf proxy)
|
|
203
|
+
if (key === "id" && "id" in entityNode) {
|
|
204
|
+
const idLeaf = entityNode.id;
|
|
205
|
+
return (nodeState.get(idLeaf)
|
|
206
|
+
?.value ?? idLeaf.value);
|
|
207
|
+
}
|
|
208
|
+
// ─── loading / submitting / submit ────────────────────────────────────
|
|
209
|
+
// Only exposed on root entity proxy (the one that has an "id" field).
|
|
210
|
+
if ("id" in entityNode) {
|
|
211
|
+
if (ikey === "loading") {
|
|
212
|
+
const eid = getEntityId();
|
|
213
|
+
return kernel.resolveManager.entityStates.get(eid, templateNode)?.status === "pending";
|
|
214
|
+
}
|
|
215
|
+
if (ikey === "submitting") {
|
|
216
|
+
const eid = getEntityId();
|
|
217
|
+
return kernel.resolveManager.entityStates.get(eid, templateNode)?.submitting === true;
|
|
218
|
+
}
|
|
219
|
+
if (ikey === "submit") {
|
|
220
|
+
if (!submitFnRef) {
|
|
221
|
+
submitFnRef = () => {
|
|
222
|
+
const eid = getEntityId();
|
|
223
|
+
return kernel.executeEntityTemplateSubmit(eid, templateNode, proxy);
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
return submitFnRef;
|
|
227
|
+
}
|
|
228
|
+
if (ikey === "values") {
|
|
229
|
+
return buildEntityValuesWithLists(rootEntityNode, templateNode, kernel);
|
|
230
|
+
}
|
|
231
|
+
if (ikey === "dirty") {
|
|
232
|
+
return isEntityDirty(rootEntityNode, kernel);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
236
|
+
const templateField = templateNode[key];
|
|
237
|
+
// Per-entity nested list (variant C): a list declared inside an entity
|
|
238
|
+
// template. Build an isolated per-(owner,list) proxy. `listOwnerEntity` is
|
|
239
|
+
// the owning EntityNode — for a list directly under the root template it's
|
|
240
|
+
// the entity itself; for a list inside a nested group it's the threaded
|
|
241
|
+
// ancestor entity (C4), not the structural group node.
|
|
242
|
+
if (Array.isArray(templateField)) {
|
|
243
|
+
if (!("id" in listOwnerEntity))
|
|
244
|
+
return undefined;
|
|
245
|
+
const listState = kernel.entityRegistry.getOrCreateEntityListState(listOwnerEntity, templateField);
|
|
246
|
+
return buildListProxy(listState, kernel);
|
|
247
|
+
}
|
|
248
|
+
if (!templateField || typeof templateField !== "object") {
|
|
249
|
+
return undefined;
|
|
250
|
+
}
|
|
251
|
+
const entityField = entityNode[key];
|
|
252
|
+
if (entityField && typeof entityField === "object") {
|
|
253
|
+
if (isLeafNode(entityField)) {
|
|
254
|
+
// ── Lazily register NodeView for entity-leaf → template-field binding ──
|
|
255
|
+
// Provides entity values, parent proxy, and onReset to the pipelines.
|
|
256
|
+
// Skips phantom leaves (not in nodeState) and already-registered pairs.
|
|
257
|
+
if (nodeState.has(entityField)) {
|
|
258
|
+
const existingSlot = kernel.nodes.nodeViews.get(entityField);
|
|
259
|
+
if (!existingSlot?.has(templateField)) {
|
|
260
|
+
const view = {
|
|
261
|
+
storage: entityField,
|
|
262
|
+
rules: templateField,
|
|
263
|
+
parent: {
|
|
264
|
+
proxy, // entity projection proxy (stable closure reference)
|
|
265
|
+
getValues: () => buildEntityValues(rootEntityNode, nodeState),
|
|
266
|
+
},
|
|
267
|
+
onReset: () => {
|
|
268
|
+
const initialValue = kernel.dirty.initialValueMap.get(entityField);
|
|
269
|
+
const prev = nodeState.get(entityField)?.value;
|
|
270
|
+
const result = kernel.writePipeline.execute(entityField, initialValue, prev, { via: templateField });
|
|
271
|
+
if (result && !result.skipped)
|
|
272
|
+
kernel.notifyChanged(result.changed);
|
|
273
|
+
},
|
|
274
|
+
};
|
|
275
|
+
const slot = existingSlot ?? new Map();
|
|
276
|
+
slot.set(templateField, view);
|
|
277
|
+
kernel.nodes.nodeViews.set(entityField, slot);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
return kernel.proxyBuilder.build(entityField, { via: templateField });
|
|
281
|
+
}
|
|
282
|
+
// Nested group — recurse. Thread the real owner entity so a list
|
|
283
|
+
// declared inside this group is owned by the entity, not the group (C4).
|
|
284
|
+
return buildEntityProjectionProxy(entityField, templateField, kernel, undefined, listOwnerEntity);
|
|
285
|
+
}
|
|
286
|
+
// Phantom leaf: entity doesn't have this field yet, show template defaults.
|
|
287
|
+
if (isLeafNode(templateField)) {
|
|
288
|
+
const phantom = {
|
|
289
|
+
value: templateField.value,
|
|
290
|
+
};
|
|
291
|
+
return kernel.proxyBuilder.build(phantom, { via: templateField, parentEntityProxy: proxy });
|
|
292
|
+
}
|
|
293
|
+
return undefined;
|
|
294
|
+
},
|
|
295
|
+
ownKeys() {
|
|
296
|
+
const fwd = kernel.fieldMapping;
|
|
297
|
+
const map = (keys) => keys.map((k) => fwd[k] ?? k);
|
|
298
|
+
const hasId = "id" in entityNode;
|
|
299
|
+
if (hasId) {
|
|
300
|
+
const keysWithoutId = templateKeys.filter((k) => k !== "id");
|
|
301
|
+
return map(["id", ...keysWithoutId, "loading", "submitting", "submit", "values", "dirty"]);
|
|
302
|
+
}
|
|
303
|
+
return map(templateKeys);
|
|
304
|
+
},
|
|
305
|
+
getOwnPropertyDescriptor(_target, key) {
|
|
306
|
+
if (typeof key === "symbol")
|
|
307
|
+
return undefined;
|
|
308
|
+
const fwd = kernel.fieldMapping;
|
|
309
|
+
const hasId = "id" in entityNode;
|
|
310
|
+
const extraKeys = hasId ? ["loading", "submitting", "submit", "values", "dirty"] : [];
|
|
311
|
+
const keysWithoutId = hasId ? templateKeys.filter((k) => k !== "id") : templateKeys;
|
|
312
|
+
const keys = (hasId ? ["id", ...keysWithoutId, ...extraKeys] : keysWithoutId).map((k) => fwd[k] ?? k);
|
|
313
|
+
if (!keys.includes(key))
|
|
314
|
+
return undefined;
|
|
315
|
+
return { configurable: true, enumerable: true, writable: false };
|
|
316
|
+
},
|
|
317
|
+
});
|
|
318
|
+
entityProxyCache?.set(cacheKey, proxy);
|
|
319
|
+
return proxy;
|
|
320
|
+
}
|
|
321
|
+
//# sourceMappingURL=buildEntityProjectionProxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildEntityProjectionProxy.js","sourceRoot":"","sources":["../../../store/buildProxy/buildEntityProjectionProxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM/F,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,gFAAgF;AAChF,SAAS,WAAW,CAAC,CAAW,EAAE,CAAW;IAC3C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAAwC,EACxC,SAA8C;IAE9C,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAI,UAAsC,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAI,UAAU,CAAC,KAAe,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,GAAG,CAAC,GAAI,SAAS,CAAC,GAAG,CAAC,KAAe,CAAoC,EAAE,KAAK;uBACjF,KAAwB,CAAC,KAAK,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,KAAwB,EAAE,SAAS,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,0BAA0B,CACxC,UAAwC,EACxC,YAA2B,EAC3B,MAA0B;IAE1B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAgD,CAAC;IAChF,MAAM,MAAM,GAAG,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAExD,MAAM,KAAK,GAAI,UAAyB,CAAC,KAAK,CAAC;IAC/C,IAAI,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC;IAE1B,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,oEAAoE;IACpE,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE1D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,aAAsC,EACtC,eAA8B,EAC9B,KAAuC,EACvC,MAA0B;IAE1B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/C,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QACpC,MAAM,aAAa,GAAI,eAA2C,CAAC,GAAG,CAAC,CAAC;QAExE,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,qEAAqE;YACrE,wEAAwE;YACxE,yDAAyD;YACzD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,aAAkC,CAAC,CAAC;YAC1D,IAAI,CAAC,GAAG;gBAAE,SAAS;YAEnB,MAAM,aAAa,GAAI,aAA2B,CAAC,CAAC,CAAkB,CAAC;YACvE,aAAa,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO;iBAC7B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACV,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5C,OAAO,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;YAChE,SAAS;QACX,CAAC;QAED,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,WAAW,CAAC,aAAuB,CAAC,EAAE,CAAC;YAC/F,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1D,oBAAoB,CAAC,GAA8B,EAAE,aAA8B,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACtG,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,UAAwC,EACxC,MAA0B;IAE1B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;IAEzC,MAAM,YAAY,GAAG,CAAC,IAA6B,EAAW,EAAE;QAC9D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,SAAS;YAClD,IAAI,UAAU,CAAC,KAAe,CAAC,EAAE,CAAC;gBAChC,IAAK,SAAS,CAAC,GAAG,CAAC,KAAe,CAAqC,EAAE,KAAK;oBAAE,OAAO,IAAI,CAAC;YAC9F,CAAC;iBAAM,IAAI,YAAY,CAAC,KAAgC,CAAC,EAAE,CAAC;gBAC1D,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,IAAI,YAAY,CAAC,UAAqC,CAAC;QAAE,OAAO,IAAI,CAAC;IAErE,MAAM,KAAK,GAAI,UAAyB,CAAC,KAAK,CAAC;IAC/C,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC;gBAAE,OAAO,IAAI,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gFAAgF;AAGhF,sEAAsE;AACtE,4FAA4F;AAE5F,gFAAgF;AAEhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,0BAA0B,CACxC,UAAwC,EACxC,YAA2B,EAC3B,MAA0B,EAC1B,gBAA0C,EAC1C,eAA4B;IAE5B,MAAM,QAAQ,GAAG,UAAoB,CAAC;IACtC,MAAM,MAAM,GAAG,gBAAgB,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnF,uEAAuE;IACvE,iEAAiE;IACjE,MAAM,cAAc,GAAG,UAAwB,CAAC;IAEhD,2EAA2E;IAC3E,2EAA2E;IAC3E,sDAAsD;IACtD,MAAM,eAAe,GAAG,eAAe,IAAK,UAAyB,CAAC;IAEtE,oDAAoD;IACpD,IAAI,WAAW,GAAoC,IAAI,CAAC;IAExD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;IAEzC,8DAA8D;IAC9D,MAAM,WAAW,GAAG,GAAW,EAAE;QAC/B,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;YACvB,MAAM,MAAM,GAAI,UAAyB,CAAC,EAAE,CAAC;YAC7C,OAAO,CACJ,SAAS,CAAC,GAAG,CAAC,MAAgB,CAAoC,EAAE,KAAK;gBAC1E,MAAM,CAAC,KAAK,CACH,CAAC;QACd,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,UAAqC,EAAE;QAC7D,GAAG,CAAC,OAAO,EAAE,GAAoB;YAC/B,iCAAiC;YACjC,IAAI,GAAG,KAAK,WAAW;gBAAE,OAAO,UAAU,CAAC;YAE3C,4EAA4E;YAC5E,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;oBACvB,MAAM,MAAM,GAAI,UAAyB,CAAC,EAAE,CAAC;oBAC7C,OAAO,CACJ,SAAS,CAAC,GAAG,CAAC,MAAgB,CAAoC;wBACjE,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,CAC1B,CAAC;gBACJ,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,oFAAoF;YACpF,IAAI,GAAG,KAAK,cAAc,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;gBACjD,OAAQ,UAAyB,CAAC,EAAY,CAAC;YACjD,CAAC;YACD,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;YAErC,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,OAAO,SAAS,CAAC;YAE9C,8EAA8E;YAC9E,gFAAgF;YAChF,MAAM,IAAI,GAAG,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;YAEnD,+DAA+D;YAC/D,IAAI,GAAG,KAAK,IAAI,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAI,UAAyB,CAAC,EAAE,CAAC;gBAC7C,OAAO,CACJ,SAAS,CAAC,GAAG,CAAC,MAAgB,CAAoC;oBACjE,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,CAC1B,CAAC;YACJ,CAAC;YAED,yEAAyE;YACzE,sEAAsE;YACtE,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;gBACvB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;oBAC1B,OAAO,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,YAAsB,CAAC,EAAE,MAAM,KAAK,SAAS,CAAC;gBACnG,CAAC;gBACD,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC1B,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;oBAC1B,OAAO,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,YAAsB,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;gBAClG,CAAC;gBACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,WAAW,GAAG,GAAG,EAAE;4BACjB,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;4BAC1B,OAAO,MAAM,CAAC,2BAA2B,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;wBACtE,CAAC,CAAC;oBACJ,CAAC;oBACD,OAAO,WAAW,CAAC;gBACrB,CAAC;gBACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,OAAO,0BAA0B,CAAC,cAAc,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;gBAC1E,CAAC;gBACD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;oBACrB,OAAO,aAAa,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;YACD,wEAAwE;YAExE,MAAM,aAAa,GAAG,YAAY,CAAC,GAAa,CAAC,CAAC;YAElD,uEAAuE;YACvE,2EAA2E;YAC3E,2EAA2E;YAC3E,wEAAwE;YACxE,uDAAuD;YACvD,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC,CAAC,IAAI,IAAI,eAAe,CAAC;oBAAE,OAAO,SAAS,CAAC;gBACjD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,0BAA0B,CAChE,eAAe,EACf,aAAkC,CACnC,CAAC;gBACF,OAAO,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3C,CAAC;YAED,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;gBACxD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,WAAW,GAAI,UAAsC,CAAC,GAAa,CAAC,CAAC;YAE3E,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACnD,IAAI,UAAU,CAAC,WAAqB,CAAC,EAAE,CAAC;oBACtC,0EAA0E;oBAC1E,sEAAsE;oBACtE,wEAAwE;oBACxE,IAAI,SAAS,CAAC,GAAG,CAAC,WAAqB,CAAC,EAAE,CAAC;wBACzC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,WAAqB,CAAC,CAAC;wBACvE,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,aAAuB,CAAC,EAAE,CAAC;4BAChD,MAAM,IAAI,GAAa;gCACrB,OAAO,EAAE,WAAuC;gCAChD,KAAK,EAAE,aAA8B;gCACrC,MAAM,EAAE;oCACN,KAAK,EAAM,qDAAqD;oCAChE,SAAS,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAChC,cAAc,EACd,SAAgD,CACjD;iCACF;gCACD,OAAO,EAAE,GAAG,EAAE;oCACZ,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,WAAqB,CAAC,CAAC;oCAC7E,MAAM,IAAI,GAAI,SAAS,CAAC,GAAG,CAAC,WAAqB,CAAoC,EAAE,KAAK,CAAC;oCAC7F,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CACzC,WAAuC,EACvC,YAAY,EACZ,IAAI,EACJ,EAAE,GAAG,EAAE,aAA8B,EAAE,CACxC,CAAC;oCACF,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO;wCAAE,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gCACtE,CAAC;6BACF,CAAC;4BACF,MAAM,IAAI,GAAG,YAAY,IAAI,IAAI,GAAG,EAAoB,CAAC;4BACzD,IAAI,CAAC,GAAG,CAAC,aAAuB,EAAE,IAAI,CAAC,CAAC;4BACxC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,WAAqB,EAAE,IAAI,CAAC,CAAC;wBAC1D,CAAC;oBACH,CAAC;oBACD,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAC9B,WAAuC,EACvC,EAAE,GAAG,EAAE,aAA8B,EAAE,CACxC,CAAC;gBACJ,CAAC;gBACD,iEAAiE;gBACjE,yEAAyE;gBACzE,OAAO,0BAA0B,CAC/B,WAA8B,EAC9B,aAA8B,EAC9B,MAAM,EACN,SAAS,EACT,eAAe,CAChB,CAAC;YACJ,CAAC;YAED,4EAA4E;YAC5E,IAAI,UAAU,CAAC,aAA8B,CAAC,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAmB;oBAC9B,KAAK,EAAG,aAA+B,CAAC,KAAK;iBAC9C,CAAC;gBACF,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAC9B,OAAmC,EACnC,EAAE,GAAG,EAAE,aAA8B,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAClE,CAAC;YACJ,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO;YACL,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC;YAChC,MAAM,GAAG,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5E,MAAM,KAAK,GAAG,IAAI,IAAI,UAAU,CAAC;YACjC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC7D,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAED,wBAAwB,CAAC,OAAO,EAAE,GAAoB;YACpD,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,OAAO,SAAS,CAAC;YAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,IAAI,UAAU,CAAC;YACjC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;YACpF,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,aAAa,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAC/E,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAgB,CAAC,IAAI,CAAC,CAClC,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAa,CAAC;gBAAE,OAAO,SAAS,CAAC;YACpD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACnE,CAAC;KACF,CAAC,CAAC;IAEH,gBAAgB,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ListState } from "../store/types";
|
|
2
|
+
import type { Palistor } from "../store/palistor";
|
|
3
|
+
/**
|
|
4
|
+
* Build a ListProxyNode for a list — ЕДИНЫЙ builder (root + per-entity).
|
|
5
|
+
*
|
|
6
|
+
* Список идентифицируется объектом {@link ListState}. `listState.ownerEntity`
|
|
7
|
+
* различает два случая:
|
|
8
|
+
* - `null` → root-list (состояние в `kernel.nodes.listStates`);
|
|
9
|
+
* - entity → per-entity nested list (вариант C; состояние в `owner.lists`).
|
|
10
|
+
*
|
|
11
|
+
* Скелет, мутации, proxy и кэш — общие. Точки, где root и entity ещё расходятся
|
|
12
|
+
* (sync valuesCache, resolve/loading, семантика add/setItems), временно
|
|
13
|
+
* диспетчеризуются по `owner`; их слияние — фазы U3 (sync) и U5 (resolve).
|
|
14
|
+
*
|
|
15
|
+
* The proxy exposes:
|
|
16
|
+
* items — ReadonlyArray<EntityProjectionProxy>, one per itemId
|
|
17
|
+
* length — number of items
|
|
18
|
+
* loading — async resolver in progress
|
|
19
|
+
* dirty — itemIds differ from the initial snapshot
|
|
20
|
+
* add(id) — add existing entity by ID
|
|
21
|
+
* add(values) — upsert entity + add to list
|
|
22
|
+
* remove(id) — remove entity from list (entity stays in registry)
|
|
23
|
+
* getById(id) — find proxy by ID
|
|
24
|
+
* setItems(ids) — bulk-replace itemIds
|
|
25
|
+
* map(fn) — map for React rendering
|
|
26
|
+
* getValues() — plain values snapshot of all items
|
|
27
|
+
* [Symbol.iterator] — iteration
|
|
28
|
+
*
|
|
29
|
+
* Entity proxies are cached per list instance (stable references for React);
|
|
30
|
+
* the list proxy itself is cached per `ListState` in `kernel.nodes.listProxyCache`.
|
|
31
|
+
*/
|
|
32
|
+
export declare function buildListProxy(listState: ListState, kernel: Palistor<any, any>): object;
|
|
33
|
+
//# sourceMappingURL=buildListProxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildListProxy.d.ts","sourceRoot":"","sources":["../../../store/buildProxy/buildListProxy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAqClD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,CA+QvF"}
|