mobx-keystone 0.67.5 → 0.68.1-alpha.2
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/CHANGELOG.md +4 -0
- package/dist/es/action/actionDecoratorUtils.js +25 -0
- package/dist/es/action/applyAction.js +54 -0
- package/dist/es/action/applyDelete.js +20 -0
- package/dist/es/action/applyMethodCall.js +19 -0
- package/dist/es/action/applySet.js +25 -0
- package/dist/es/action/builtInActions.js +15 -0
- package/dist/es/action/context.js +22 -0
- package/dist/es/action/hookActions.js +13 -0
- package/dist/es/action/isModelAction.js +6 -0
- package/dist/es/action/middleware.js +84 -0
- package/dist/es/action/modelAction.js +34 -0
- package/dist/es/action/modelFlow.js +251 -0
- package/dist/es/action/pendingActions.js +30 -0
- package/dist/es/action/protection.js +19 -0
- package/dist/es/action/runUnprotected.js +24 -0
- package/dist/es/action/wrapInAction.js +90 -0
- package/dist/es/actionMiddlewares/actionSerialization/actionSerialization.js +131 -0
- package/dist/es/actionMiddlewares/actionSerialization/applySerializedAction.js +110 -0
- package/dist/es/actionMiddlewares/actionSerialization/arraySerializer.js +15 -0
- package/dist/es/actionMiddlewares/actionSerialization/core.js +3 -0
- package/dist/es/actionMiddlewares/actionSerialization/dateSerializer.js +15 -0
- package/dist/es/actionMiddlewares/actionSerialization/mapSerializer.js +32 -0
- package/dist/es/actionMiddlewares/actionSerialization/objectPathSerializer.js +33 -0
- package/dist/es/actionMiddlewares/actionSerialization/objectSnapshotSerializer.js +18 -0
- package/dist/es/actionMiddlewares/actionSerialization/plainObjectSerializer.js +27 -0
- package/dist/es/actionMiddlewares/actionSerialization/primitiveSerializer.js +39 -0
- package/dist/es/actionMiddlewares/actionSerialization/setSerializer.js +29 -0
- package/dist/es/actionMiddlewares/actionTrackingMiddleware.js +239 -0
- package/dist/es/actionMiddlewares/onActionMiddleware.js +44 -0
- package/dist/es/actionMiddlewares/readonlyMiddleware.js +49 -0
- package/dist/es/actionMiddlewares/transactionMiddleware.js +69 -0
- package/dist/es/actionMiddlewares/undoMiddleware.js +472 -0
- package/dist/es/actionMiddlewares/utils.js +25 -0
- package/dist/es/computedTree/computedTree.js +63 -0
- package/dist/es/context/context.js +141 -0
- package/dist/es/dataModel/BaseDataModel.js +108 -0
- package/dist/es/dataModel/DataModel.js +32 -0
- package/dist/es/dataModel/actions.js +12 -0
- package/dist/es/dataModel/getDataModelMetadata.js +14 -0
- package/dist/es/dataModel/newDataModel.js +31 -0
- package/dist/es/dataModel/utils.js +29 -0
- package/dist/es/frozen/Frozen.js +68 -0
- package/dist/es/globalConfig/globalConfig.js +57 -0
- package/dist/es/index.js +97 -0
- package/dist/es/model/BaseModel.js +118 -0
- package/dist/es/model/Model.js +36 -0
- package/dist/es/model/getModelMetadata.js +19 -0
- package/dist/es/model/metadata.js +7 -0
- package/dist/es/model/newModel.js +95 -0
- package/dist/es/model/utils.js +33 -0
- package/dist/es/modelShared/BaseModelShared.js +9 -0
- package/dist/es/modelShared/Model.js +249 -0
- package/dist/es/modelShared/checkModelDecoratorArgs.js +21 -0
- package/dist/es/modelShared/modelClassInitializer.js +14 -0
- package/dist/es/modelShared/modelDecorator.js +117 -0
- package/dist/es/modelShared/modelInfo.js +7 -0
- package/dist/es/modelShared/modelPropsInfo.js +9 -0
- package/dist/es/modelShared/modelSymbols.js +5 -0
- package/dist/es/modelShared/newModel.js +13 -0
- package/dist/es/modelShared/prop.js +138 -0
- package/dist/es/modelShared/utils.js +10 -0
- package/dist/es/parent/core.js +34 -0
- package/dist/es/parent/coreObjectChildren.js +98 -0
- package/dist/es/parent/detach.js +32 -0
- package/dist/es/parent/findChildren.js +16 -0
- package/dist/es/parent/findParent.js +30 -0
- package/dist/es/parent/getChildrenObjects.js +12 -0
- package/dist/es/parent/onChildAttachedTo.js +101 -0
- package/dist/es/parent/path.js +149 -0
- package/dist/es/parent/path2.js +12 -0
- package/dist/es/parent/setParent.js +83 -0
- package/dist/es/parent/walkTree.js +104 -0
- package/dist/es/patch/applyPatches.js +118 -0
- package/dist/es/patch/emitPatch.js +100 -0
- package/dist/es/patch/jsonPatch.js +60 -0
- package/dist/es/patch/patchRecorder.js +75 -0
- package/dist/es/redux/connectReduxDevTools.js +153 -0
- package/dist/es/redux/redux.js +60 -0
- package/dist/es/ref/Ref.js +38 -0
- package/dist/es/ref/core.js +179 -0
- package/dist/es/ref/customRef.js +9 -0
- package/dist/es/ref/rootRef.js +34 -0
- package/dist/es/rootStore/attachDetach.js +53 -0
- package/dist/es/rootStore/rootStore.js +50 -0
- package/dist/es/snapshot/SnapshotterAndReconcilerPriority.js +9 -0
- package/dist/es/snapshot/applySnapshot.js +92 -0
- package/dist/es/snapshot/clone.js +29 -0
- package/dist/es/snapshot/fromArraySnapshot.js +23 -0
- package/dist/es/snapshot/fromFrozenSnapshot.js +13 -0
- package/dist/es/snapshot/fromModelSnapshot.js +38 -0
- package/dist/es/snapshot/fromPlainObjectSnapshot.js +26 -0
- package/dist/es/snapshot/fromSnapshot.js +91 -0
- package/dist/es/snapshot/getSnapshot.js +27 -0
- package/dist/es/snapshot/internal.js +97 -0
- package/dist/es/snapshot/onSnapshot.js +16 -0
- package/dist/es/snapshot/reconcileArraySnapshot.js +40 -0
- package/dist/es/snapshot/reconcileFrozenSnapshot.js +19 -0
- package/dist/es/snapshot/reconcileModelSnapshot.js +77 -0
- package/dist/es/snapshot/reconcilePlainObjectSnapshot.js +47 -0
- package/dist/es/snapshot/reconcileSnapshot.js +49 -0
- package/dist/es/snapshot/registerDefaultReconcilers.js +17 -0
- package/dist/es/snapshot/registerDefaultSnapshotters.js +17 -0
- package/dist/es/standardActions/actions.js +35 -0
- package/dist/es/standardActions/arrayActions.js +66 -0
- package/dist/es/standardActions/objectActions.js +36 -0
- package/dist/es/standardActions/standaloneActions.js +9 -0
- package/dist/es/transforms/ImmutableDate.js +51 -0
- package/dist/es/transforms/asMap.js +29 -0
- package/dist/es/transforms/asSet.js +12 -0
- package/dist/es/transforms/bigint.js +14 -0
- package/dist/es/transforms/date.js +27 -0
- package/dist/es/treeUtils/deepEquals.js +40 -0
- package/dist/es/treeUtils/draft.js +116 -0
- package/dist/es/treeUtils/sandbox.js +158 -0
- package/dist/es/tweaker/TweakerPriority.js +9 -0
- package/dist/es/tweaker/core.js +38 -0
- package/dist/es/tweaker/registerDefaultTweakers.js +17 -0
- package/dist/es/tweaker/tweak.js +109 -0
- package/dist/es/tweaker/tweakArray.js +272 -0
- package/dist/es/tweaker/tweakFrozen.js +28 -0
- package/dist/es/tweaker/tweakModel.js +26 -0
- package/dist/es/tweaker/tweakPlainObject.js +205 -0
- package/dist/es/tweaker/typeChecking.js +46 -0
- package/dist/es/tweaker/withoutTypeChecking.js +15 -0
- package/dist/es/types/TypeCheckError.js +31 -0
- package/dist/es/types/TypeChecker.js +165 -0
- package/dist/es/types/arrayBased/array.js +68 -0
- package/dist/es/types/arrayBased/tuple.js +71 -0
- package/dist/es/types/getTypeInfo.js +12 -0
- package/dist/es/types/objectBased/arraySet.js +83 -0
- package/dist/es/types/objectBased/dataModelData.js +95 -0
- package/dist/es/types/objectBased/model.js +133 -0
- package/dist/es/types/objectBased/object.js +119 -0
- package/dist/es/types/objectBased/objectMap.js +90 -0
- package/dist/es/types/objectBased/record.js +80 -0
- package/dist/es/types/objectBased/ref.js +62 -0
- package/dist/es/types/primitiveBased/enum.js +20 -0
- package/dist/es/types/primitiveBased/primitives.js +59 -0
- package/dist/es/types/primitiveBased/refinedPrimitives.js +6 -0
- package/dist/es/types/registerDefaultStandardTypeResolvers.js +13 -0
- package/dist/es/types/resolveTypeChecker.js +52 -0
- package/dist/es/types/tProp.js +53 -0
- package/dist/es/types/typeCheck.js +11 -0
- package/dist/es/types/types.js +69 -0
- package/dist/es/types/utility/maybe.js +10 -0
- package/dist/es/types/utility/or.js +99 -0
- package/dist/es/types/utility/refinement.js +52 -0
- package/dist/es/types/utility/unchecked.js +10 -0
- package/dist/es/utils/ModelPool.js +50 -0
- package/dist/es/utils/chainFns.js +15 -0
- package/dist/es/utils/index.js +228 -0
- package/dist/es/utils/mapUtils.js +10 -0
- package/dist/es/utils/tag.js +16 -0
- package/dist/es/wrappers/ArraySet.js +85 -0
- package/dist/es/wrappers/ObjectMap.js +96 -0
- package/dist/es/wrappers/asMap.js +181 -0
- package/dist/es/wrappers/asSet.js +97 -0
- package/dist/esm/action/actionDecoratorUtils.mjs +25 -0
- package/dist/esm/action/applyAction.mjs +54 -0
- package/dist/esm/action/applyDelete.mjs +20 -0
- package/dist/esm/action/applyMethodCall.mjs +19 -0
- package/dist/esm/action/applySet.mjs +25 -0
- package/dist/esm/action/builtInActions.mjs +15 -0
- package/dist/esm/action/context.mjs +22 -0
- package/dist/esm/action/hookActions.mjs +13 -0
- package/dist/esm/action/isModelAction.mjs +6 -0
- package/dist/esm/action/middleware.mjs +84 -0
- package/dist/esm/action/modelAction.mjs +34 -0
- package/dist/esm/action/modelFlow.mjs +251 -0
- package/dist/esm/action/pendingActions.mjs +30 -0
- package/dist/esm/action/protection.mjs +19 -0
- package/dist/esm/action/runUnprotected.mjs +24 -0
- package/dist/esm/action/wrapInAction.mjs +90 -0
- package/dist/esm/actionMiddlewares/actionSerialization/actionSerialization.mjs +131 -0
- package/dist/esm/actionMiddlewares/actionSerialization/applySerializedAction.mjs +110 -0
- package/dist/esm/actionMiddlewares/actionSerialization/arraySerializer.mjs +15 -0
- package/dist/esm/actionMiddlewares/actionSerialization/core.mjs +3 -0
- package/dist/esm/actionMiddlewares/actionSerialization/dateSerializer.mjs +15 -0
- package/dist/esm/actionMiddlewares/actionSerialization/mapSerializer.mjs +32 -0
- package/dist/esm/actionMiddlewares/actionSerialization/objectPathSerializer.mjs +33 -0
- package/dist/esm/actionMiddlewares/actionSerialization/objectSnapshotSerializer.mjs +18 -0
- package/dist/esm/actionMiddlewares/actionSerialization/plainObjectSerializer.mjs +27 -0
- package/dist/esm/actionMiddlewares/actionSerialization/primitiveSerializer.mjs +39 -0
- package/dist/esm/actionMiddlewares/actionSerialization/setSerializer.mjs +29 -0
- package/dist/esm/actionMiddlewares/actionTrackingMiddleware.mjs +239 -0
- package/dist/esm/actionMiddlewares/onActionMiddleware.mjs +44 -0
- package/dist/esm/actionMiddlewares/readonlyMiddleware.mjs +49 -0
- package/dist/esm/actionMiddlewares/transactionMiddleware.mjs +69 -0
- package/dist/esm/actionMiddlewares/undoMiddleware.mjs +472 -0
- package/dist/esm/actionMiddlewares/utils.mjs +25 -0
- package/dist/esm/computedTree/computedTree.mjs +63 -0
- package/dist/esm/context/context.mjs +141 -0
- package/dist/esm/dataModel/BaseDataModel.mjs +108 -0
- package/dist/esm/dataModel/DataModel.mjs +32 -0
- package/dist/esm/dataModel/actions.mjs +12 -0
- package/dist/esm/dataModel/getDataModelMetadata.mjs +14 -0
- package/dist/esm/dataModel/newDataModel.mjs +31 -0
- package/dist/esm/dataModel/utils.mjs +29 -0
- package/dist/esm/frozen/Frozen.mjs +68 -0
- package/dist/esm/globalConfig/globalConfig.mjs +57 -0
- package/dist/esm/index.mjs +97 -0
- package/dist/esm/model/BaseModel.mjs +118 -0
- package/dist/esm/model/Model.mjs +36 -0
- package/dist/esm/model/getModelMetadata.mjs +19 -0
- package/dist/esm/model/metadata.mjs +7 -0
- package/dist/esm/model/newModel.mjs +95 -0
- package/dist/esm/model/utils.mjs +33 -0
- package/dist/esm/modelShared/BaseModelShared.mjs +9 -0
- package/dist/esm/modelShared/Model.mjs +249 -0
- package/dist/esm/modelShared/checkModelDecoratorArgs.mjs +21 -0
- package/dist/esm/modelShared/modelClassInitializer.mjs +14 -0
- package/dist/esm/modelShared/modelDecorator.mjs +117 -0
- package/dist/esm/modelShared/modelInfo.mjs +7 -0
- package/dist/esm/modelShared/modelPropsInfo.mjs +9 -0
- package/dist/esm/modelShared/modelSymbols.mjs +5 -0
- package/dist/esm/modelShared/newModel.mjs +13 -0
- package/dist/esm/modelShared/prop.mjs +138 -0
- package/dist/esm/modelShared/utils.mjs +10 -0
- package/dist/esm/parent/core.mjs +34 -0
- package/dist/esm/parent/coreObjectChildren.mjs +98 -0
- package/dist/esm/parent/detach.mjs +32 -0
- package/dist/esm/parent/findChildren.mjs +16 -0
- package/dist/esm/parent/findParent.mjs +30 -0
- package/dist/esm/parent/getChildrenObjects.mjs +12 -0
- package/dist/esm/parent/onChildAttachedTo.mjs +101 -0
- package/dist/esm/parent/path.mjs +149 -0
- package/dist/esm/parent/path2.mjs +12 -0
- package/dist/esm/parent/setParent.mjs +83 -0
- package/dist/esm/parent/walkTree.mjs +104 -0
- package/dist/esm/patch/applyPatches.mjs +118 -0
- package/dist/esm/patch/emitPatch.mjs +100 -0
- package/dist/esm/patch/jsonPatch.mjs +60 -0
- package/dist/esm/patch/patchRecorder.mjs +75 -0
- package/dist/esm/redux/connectReduxDevTools.mjs +153 -0
- package/dist/esm/redux/redux.mjs +60 -0
- package/dist/esm/ref/Ref.mjs +38 -0
- package/dist/esm/ref/core.mjs +179 -0
- package/dist/esm/ref/customRef.mjs +9 -0
- package/dist/esm/ref/rootRef.mjs +34 -0
- package/dist/esm/rootStore/attachDetach.mjs +53 -0
- package/dist/esm/rootStore/rootStore.mjs +50 -0
- package/dist/esm/snapshot/SnapshotterAndReconcilerPriority.mjs +9 -0
- package/dist/esm/snapshot/applySnapshot.mjs +92 -0
- package/dist/esm/snapshot/clone.mjs +29 -0
- package/dist/esm/snapshot/fromArraySnapshot.mjs +23 -0
- package/dist/esm/snapshot/fromFrozenSnapshot.mjs +13 -0
- package/dist/esm/snapshot/fromModelSnapshot.mjs +38 -0
- package/dist/esm/snapshot/fromPlainObjectSnapshot.mjs +26 -0
- package/dist/esm/snapshot/fromSnapshot.mjs +91 -0
- package/dist/esm/snapshot/getSnapshot.mjs +27 -0
- package/dist/esm/snapshot/internal.mjs +97 -0
- package/dist/esm/snapshot/onSnapshot.mjs +16 -0
- package/dist/esm/snapshot/reconcileArraySnapshot.mjs +40 -0
- package/dist/esm/snapshot/reconcileFrozenSnapshot.mjs +19 -0
- package/dist/esm/snapshot/reconcileModelSnapshot.mjs +77 -0
- package/dist/esm/snapshot/reconcilePlainObjectSnapshot.mjs +47 -0
- package/dist/esm/snapshot/reconcileSnapshot.mjs +49 -0
- package/dist/esm/snapshot/registerDefaultReconcilers.mjs +17 -0
- package/dist/esm/snapshot/registerDefaultSnapshotters.mjs +17 -0
- package/dist/esm/standardActions/actions.mjs +35 -0
- package/dist/esm/standardActions/arrayActions.mjs +66 -0
- package/dist/esm/standardActions/objectActions.mjs +36 -0
- package/dist/esm/standardActions/standaloneActions.mjs +9 -0
- package/dist/esm/transforms/ImmutableDate.mjs +51 -0
- package/dist/esm/transforms/asMap.mjs +29 -0
- package/dist/esm/transforms/asSet.mjs +12 -0
- package/dist/esm/transforms/bigint.mjs +14 -0
- package/dist/esm/transforms/date.mjs +27 -0
- package/dist/esm/treeUtils/deepEquals.mjs +40 -0
- package/dist/esm/treeUtils/draft.mjs +116 -0
- package/dist/esm/treeUtils/sandbox.mjs +158 -0
- package/dist/esm/tweaker/TweakerPriority.mjs +9 -0
- package/dist/esm/tweaker/core.mjs +38 -0
- package/dist/esm/tweaker/registerDefaultTweakers.mjs +17 -0
- package/dist/esm/tweaker/tweak.mjs +109 -0
- package/dist/esm/tweaker/tweakArray.mjs +272 -0
- package/dist/esm/tweaker/tweakFrozen.mjs +28 -0
- package/dist/esm/tweaker/tweakModel.mjs +26 -0
- package/dist/esm/tweaker/tweakPlainObject.mjs +205 -0
- package/dist/esm/tweaker/typeChecking.mjs +46 -0
- package/dist/esm/tweaker/withoutTypeChecking.mjs +15 -0
- package/dist/esm/types/TypeCheckError.mjs +31 -0
- package/dist/esm/types/TypeChecker.mjs +165 -0
- package/dist/esm/types/arrayBased/array.mjs +68 -0
- package/dist/esm/types/arrayBased/tuple.mjs +71 -0
- package/dist/esm/types/getTypeInfo.mjs +12 -0
- package/dist/esm/types/objectBased/arraySet.mjs +83 -0
- package/dist/esm/types/objectBased/dataModelData.mjs +95 -0
- package/dist/esm/types/objectBased/model.mjs +133 -0
- package/dist/esm/types/objectBased/object.mjs +119 -0
- package/dist/esm/types/objectBased/objectMap.mjs +90 -0
- package/dist/esm/types/objectBased/record.mjs +80 -0
- package/dist/esm/types/objectBased/ref.mjs +62 -0
- package/dist/esm/types/primitiveBased/enum.mjs +20 -0
- package/dist/esm/types/primitiveBased/primitives.mjs +59 -0
- package/dist/esm/types/primitiveBased/refinedPrimitives.mjs +6 -0
- package/dist/esm/types/registerDefaultStandardTypeResolvers.mjs +13 -0
- package/dist/esm/types/resolveTypeChecker.mjs +52 -0
- package/dist/esm/types/tProp.mjs +53 -0
- package/dist/esm/types/typeCheck.mjs +11 -0
- package/dist/esm/types/types.mjs +69 -0
- package/dist/esm/types/utility/maybe.mjs +10 -0
- package/dist/esm/types/utility/or.mjs +99 -0
- package/dist/esm/types/utility/refinement.mjs +52 -0
- package/dist/esm/types/utility/unchecked.mjs +10 -0
- package/dist/esm/utils/ModelPool.mjs +50 -0
- package/dist/esm/utils/chainFns.mjs +15 -0
- package/dist/esm/utils/index.mjs +228 -0
- package/dist/esm/utils/mapUtils.mjs +10 -0
- package/dist/esm/utils/tag.mjs +16 -0
- package/dist/esm/wrappers/ArraySet.mjs +85 -0
- package/dist/esm/wrappers/ObjectMap.mjs +96 -0
- package/dist/esm/wrappers/asMap.mjs +181 -0
- package/dist/esm/wrappers/asSet.mjs +97 -0
- package/dist/mobx-keystone.umd.js +5460 -5463
- package/dist/{action → types/action}/actionDecoratorUtils.d.ts +0 -0
- package/dist/{action → types/action}/applyAction.d.ts +0 -0
- package/dist/{action → types/action}/applyDelete.d.ts +0 -0
- package/dist/{action → types/action}/applyMethodCall.d.ts +0 -0
- package/dist/{action → types/action}/applySet.d.ts +0 -0
- package/dist/{action → types/action}/builtInActions.d.ts +0 -0
- package/dist/{action → types/action}/context.d.ts +0 -0
- package/dist/{action → types/action}/hookActions.d.ts +0 -0
- package/dist/{action → types/action}/index.d.ts +0 -0
- package/dist/{action → types/action}/isModelAction.d.ts +0 -0
- package/dist/{action → types/action}/middleware.d.ts +0 -0
- package/dist/{action → types/action}/modelAction.d.ts +0 -0
- package/dist/{action → types/action}/modelFlow.d.ts +0 -0
- package/dist/{action → types/action}/pendingActions.d.ts +0 -0
- package/dist/{action → types/action}/protection.d.ts +0 -0
- package/dist/{action → types/action}/runUnprotected.d.ts +0 -0
- package/dist/{action → types/action}/wrapInAction.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/actionSerialization.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/applySerializedAction.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/arraySerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/core.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/dateSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/index.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/mapSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/objectPathSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/objectSnapshotSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/plainObjectSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/primitiveSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/setSerializer.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/actionTrackingMiddleware.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/index.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/onActionMiddleware.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/readonlyMiddleware.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/transactionMiddleware.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/undoMiddleware.d.ts +0 -0
- package/dist/{actionMiddlewares → types/actionMiddlewares}/utils.d.ts +0 -0
- package/dist/{computedTree → types/computedTree}/computedTree.d.ts +0 -0
- package/dist/{computedTree → types/computedTree}/index.d.ts +0 -0
- package/dist/{context → types/context}/context.d.ts +0 -0
- package/dist/{context → types/context}/index.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/BaseDataModel.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/DataModel.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/DataModelConstructorOptions.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/actions.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/getDataModelMetadata.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/index.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/newDataModel.d.ts +0 -0
- package/dist/{dataModel → types/dataModel}/utils.d.ts +0 -0
- package/dist/{frozen → types/frozen}/Frozen.d.ts +0 -0
- package/dist/{frozen → types/frozen}/index.d.ts +0 -0
- package/dist/{globalConfig → types/globalConfig}/globalConfig.d.ts +0 -0
- package/dist/{globalConfig → types/globalConfig}/index.d.ts +0 -0
- package/dist/types/index.d.ts +22 -4
- package/dist/{model → types/model}/BaseModel.d.ts +0 -0
- package/dist/{model → types/model}/Model.d.ts +0 -0
- package/dist/{model → types/model}/ModelConstructorOptions.d.ts +0 -0
- package/dist/{model → types/model}/getModelMetadata.d.ts +0 -0
- package/dist/{model → types/model}/index.d.ts +0 -0
- package/dist/{model → types/model}/metadata.d.ts +0 -0
- package/dist/{model → types/model}/newModel.d.ts +0 -0
- package/dist/{model → types/model}/utils.d.ts +1 -1
- package/dist/{modelShared → types/modelShared}/BaseModelShared.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/Model.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/checkModelDecoratorArgs.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/index.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/modelClassInitializer.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/modelDecorator.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/modelInfo.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/modelPropsInfo.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/modelSymbols.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/newModel.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/prop.d.ts +0 -0
- package/dist/{modelShared → types/modelShared}/utils.d.ts +0 -0
- package/dist/{parent → types/parent}/core.d.ts +0 -0
- package/dist/{parent → types/parent}/coreObjectChildren.d.ts +0 -0
- package/dist/{parent → types/parent}/detach.d.ts +0 -0
- package/dist/{parent → types/parent}/findChildren.d.ts +0 -0
- package/dist/{parent → types/parent}/findParent.d.ts +0 -0
- package/dist/{parent → types/parent}/getChildrenObjects.d.ts +0 -0
- package/dist/{parent → types/parent}/index.d.ts +0 -0
- package/dist/{parent → types/parent}/onChildAttachedTo.d.ts +0 -0
- package/dist/{parent → types/parent}/path.d.ts +0 -0
- package/dist/{parent → types/parent}/path2.d.ts +0 -0
- package/dist/{parent → types/parent}/pathTypes.d.ts +0 -0
- package/dist/{parent → types/parent}/setParent.d.ts +0 -0
- package/dist/{parent → types/parent}/walkTree.d.ts +0 -0
- package/dist/{patch → types/patch}/Patch.d.ts +0 -0
- package/dist/{patch → types/patch}/applyPatches.d.ts +0 -0
- package/dist/{patch → types/patch}/emitPatch.d.ts +0 -0
- package/dist/{patch → types/patch}/index.d.ts +0 -0
- package/dist/{patch → types/patch}/jsonPatch.d.ts +0 -0
- package/dist/{patch → types/patch}/patchRecorder.d.ts +0 -0
- package/dist/{redux → types/redux}/connectReduxDevTools.d.ts +0 -0
- package/dist/{redux → types/redux}/index.d.ts +0 -0
- package/dist/{redux → types/redux}/redux.d.ts +0 -0
- package/dist/{ref → types/ref}/Ref.d.ts +0 -0
- package/dist/{ref → types/ref}/core.d.ts +0 -0
- package/dist/{ref → types/ref}/customRef.d.ts +0 -0
- package/dist/{ref → types/ref}/index.d.ts +0 -0
- package/dist/{ref → types/ref}/rootRef.d.ts +0 -0
- package/dist/{rootStore → types/rootStore}/attachDetach.d.ts +0 -0
- package/dist/{rootStore → types/rootStore}/index.d.ts +0 -0
- package/dist/{rootStore → types/rootStore}/rootStore.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/SnapshotOf.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/SnapshotterAndReconcilerPriority.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/applySnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/clone.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/fromArraySnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/fromFrozenSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/fromModelSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/fromPlainObjectSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/fromSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/getSnapshot.d.ts +0 -0
- package/dist/types/snapshot/index.d.ts +6 -0
- package/dist/{snapshot → types/snapshot}/internal.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/onSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/reconcileArraySnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/reconcileFrozenSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/reconcileModelSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/reconcilePlainObjectSnapshot.d.ts +0 -0
- package/dist/{snapshot → types/snapshot}/reconcileSnapshot.d.ts +0 -0
- package/dist/{dataModel/_BaseDataModel.d.ts → types/snapshot/registerDefaultReconcilers.d.ts} +0 -0
- package/dist/{model/_BaseModel.d.ts → types/snapshot/registerDefaultSnapshotters.d.ts} +0 -0
- package/dist/{standardActions → types/standardActions}/actions.d.ts +0 -0
- package/dist/{standardActions → types/standardActions}/arrayActions.d.ts +0 -0
- package/dist/{standardActions → types/standardActions}/index.d.ts +0 -0
- package/dist/{standardActions → types/standardActions}/objectActions.d.ts +0 -0
- package/dist/{standardActions → types/standardActions}/standaloneActions.d.ts +0 -0
- package/dist/{transforms → types/transforms}/ImmutableDate.d.ts +0 -0
- package/dist/{transforms → types/transforms}/asMap.d.ts +0 -0
- package/dist/{transforms → types/transforms}/asSet.d.ts +0 -0
- package/dist/{transforms → types/transforms}/bigint.d.ts +0 -0
- package/dist/{transforms → types/transforms}/date.d.ts +0 -0
- package/dist/{transforms → types/transforms}/index.d.ts +0 -0
- package/dist/{treeUtils → types/treeUtils}/deepEquals.d.ts +0 -0
- package/dist/{treeUtils → types/treeUtils}/draft.d.ts +0 -0
- package/dist/{treeUtils → types/treeUtils}/index.d.ts +0 -0
- package/dist/{treeUtils → types/treeUtils}/sandbox.d.ts +0 -0
- package/dist/{tweaker → types/tweaker}/TweakerPriority.d.ts +0 -0
- package/dist/{tweaker → types/tweaker}/core.d.ts +0 -0
- package/dist/types/tweaker/index.d.ts +2 -0
- package/dist/{tweaker/tweakArray.d.ts → types/tweaker/registerDefaultTweakers.d.ts} +0 -0
- package/dist/{tweaker → types/tweaker}/tweak.d.ts +0 -0
- package/dist/{tweaker/tweakFrozen.d.ts → types/tweaker/tweakArray.d.ts} +0 -0
- package/dist/{tweaker/tweakModel.d.ts → types/tweaker/tweakFrozen.d.ts} +0 -0
- package/dist/{tweaker/tweakPlainObject.d.ts → types/tweaker/tweakModel.d.ts} +0 -0
- package/dist/{tweaker/typeChecking.d.ts → types/tweaker/tweakPlainObject.d.ts} +0 -0
- package/dist/types/{resolveTypeChecker.d.ts → tweaker/typeChecking.d.ts} +0 -0
- package/dist/{tweaker → types/tweaker}/withoutTypeChecking.d.ts +0 -0
- package/dist/types/{TypeCheckError.d.ts → types/TypeCheckError.d.ts} +0 -0
- package/dist/types/{TypeChecker.d.ts → types/TypeChecker.d.ts} +0 -0
- package/dist/types/{arrayBased → types/arrayBased}/array.d.ts +0 -0
- package/dist/types/{arrayBased → types/arrayBased}/tuple.d.ts +0 -0
- package/dist/types/{getTypeInfo.d.ts → types/getTypeInfo.d.ts} +0 -0
- package/dist/types/types/index.d.ts +5 -0
- package/dist/types/{objectBased → types/objectBased}/arraySet.d.ts +0 -0
- package/dist/types/{objectBased → types/objectBased}/dataModelData.d.ts +0 -0
- package/dist/types/{objectBased → types/objectBased}/model.d.ts +0 -0
- package/dist/types/{objectBased → types/objectBased}/object.d.ts +0 -0
- package/dist/types/{objectBased → types/objectBased}/objectMap.d.ts +0 -0
- package/dist/types/{objectBased → types/objectBased}/record.d.ts +0 -0
- package/dist/types/{objectBased → types/objectBased}/ref.d.ts +0 -0
- package/dist/types/{primitiveBased → types/primitiveBased}/enum.d.ts +0 -0
- package/dist/types/{primitiveBased → types/primitiveBased}/primitives.d.ts +0 -0
- package/dist/types/{primitiveBased → types/primitiveBased}/refinedPrimitives.d.ts +0 -0
- package/dist/types/types/registerDefaultStandardTypeResolvers.d.ts +1 -0
- package/dist/types/types/resolveTypeChecker.d.ts +1 -0
- package/dist/types/{schemas.d.ts → types/schemas.d.ts} +0 -0
- package/dist/types/{tProp.d.ts → types/tProp.d.ts} +0 -0
- package/dist/types/{typeCheck.d.ts → types/typeCheck.d.ts} +0 -0
- package/dist/types/{types.d.ts → types/types.d.ts} +0 -0
- package/dist/types/{utility → types/utility}/maybe.d.ts +0 -0
- package/dist/types/{utility → types/utility}/or.d.ts +0 -0
- package/dist/types/{utility → types/utility}/refinement.d.ts +0 -0
- package/dist/types/{utility → types/utility}/unchecked.d.ts +0 -0
- package/dist/{utils → types/utils}/ModelPool.d.ts +0 -0
- package/dist/{utils → types/utils}/chainFns.d.ts +0 -0
- package/dist/{utils → types/utils}/index.d.ts +0 -0
- package/dist/{utils → types/utils}/mapUtils.d.ts +0 -0
- package/dist/{utils → types/utils}/tag.d.ts +0 -0
- package/dist/{utils → types/utils}/types.d.ts +0 -0
- package/dist/{wrappers → types/wrappers}/ArraySet.d.ts +0 -0
- package/dist/{wrappers → types/wrappers}/ObjectMap.d.ts +0 -0
- package/dist/{wrappers → types/wrappers}/asMap.d.ts +0 -0
- package/dist/{wrappers → types/wrappers}/asSet.d.ts +0 -0
- package/dist/{wrappers → types/wrappers}/index.d.ts +0 -0
- package/package.json +12 -11
- package/src/actionMiddlewares/actionSerialization/actionSerialization.ts +24 -9
- package/src/dataModel/BaseDataModel.ts +0 -3
- package/src/dataModel/utils.ts +4 -4
- package/src/model/BaseModel.ts +0 -3
- package/src/model/utils.ts +4 -5
- package/src/modelShared/checkModelDecoratorArgs.ts +6 -6
- package/src/parent/setParent.ts +2 -2
- package/src/rootStore/attachDetach.ts +2 -3
- package/src/snapshot/fromArraySnapshot.ts +11 -6
- package/src/snapshot/fromFrozenSnapshot.ts +11 -6
- package/src/snapshot/fromModelSnapshot.ts +11 -6
- package/src/snapshot/fromPlainObjectSnapshot.ts +11 -6
- package/src/snapshot/fromSnapshot.ts +3 -0
- package/src/snapshot/index.ts +0 -10
- package/src/snapshot/reconcileArraySnapshot.ts +11 -6
- package/src/snapshot/reconcileFrozenSnapshot.ts +11 -6
- package/src/snapshot/reconcileModelSnapshot.ts +11 -6
- package/src/snapshot/reconcilePlainObjectSnapshot.ts +11 -6
- package/src/snapshot/reconcileSnapshot.ts +3 -0
- package/src/snapshot/registerDefaultReconcilers.ts +21 -0
- package/src/snapshot/registerDefaultSnapshotters.ts +21 -0
- package/src/tweaker/index.ts +0 -6
- package/src/tweaker/registerDefaultTweakers.ts +21 -0
- package/src/tweaker/tweak.ts +3 -0
- package/src/tweaker/tweakArray.ts +406 -401
- package/src/tweaker/tweakFrozen.ts +11 -6
- package/src/tweaker/tweakModel.ts +11 -6
- package/src/tweaker/tweakPlainObject.ts +288 -283
- package/src/types/objectBased/model.ts +6 -1
- package/src/types/primitiveBased/primitives.ts +177 -166
- package/src/types/registerDefaultStandardTypeResolvers.ts +17 -0
- package/src/types/resolveTypeChecker.ts +7 -1
- package/dist/index.d.ts +0 -23
- package/dist/mobx-keystone.es.js +0 -7856
- package/dist/mobx-keystone.es.mjs +0 -7856
- package/dist/snapshot/index.d.ts +0 -14
- package/dist/tweaker/index.d.ts +0 -6
- package/src/dataModel/_BaseDataModel.ts +0 -15
- package/src/model/_BaseModel.ts +0 -15
package/CHANGELOG.md
CHANGED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { setDataModelAction } from "../dataModel/actions.js";
|
|
2
|
+
import { isDataModelClass, isDataModel } from "../dataModel/utils.js";
|
|
3
|
+
import { modelInfoByClass } from "../modelShared/modelInfo.js";
|
|
4
|
+
import { runAfterModelDecoratorSymbol } from "../modelShared/modelSymbols.js";
|
|
5
|
+
import { addLateInitializationFunction } from "../utils/index.js";
|
|
6
|
+
function getActionNameAndContextOverride(target, propertyKey) {
|
|
7
|
+
let actionName = propertyKey;
|
|
8
|
+
let overrideContext;
|
|
9
|
+
if (isDataModelClass(target) || isDataModel(target)) {
|
|
10
|
+
overrideContext = (ctx, self) => {
|
|
11
|
+
ctx.target = self.$;
|
|
12
|
+
};
|
|
13
|
+
let fullActionName;
|
|
14
|
+
actionName = () => fullActionName;
|
|
15
|
+
const modelClass = isDataModelClass(target) ? target : target.constructor;
|
|
16
|
+
addLateInitializationFunction(modelClass, runAfterModelDecoratorSymbol, (finalClass) => {
|
|
17
|
+
const modelInfo = modelInfoByClass.get(finalClass);
|
|
18
|
+
fullActionName = `fn::${modelInfo.name}::${propertyKey}`;
|
|
19
|
+
setDataModelAction(fullActionName, modelInfo.class, propertyKey);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return { actionName, overrideContext };
|
|
23
|
+
}
|
|
24
|
+
export { getActionNameAndContextOverride };
|
|
25
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uRGVjb3JhdG9yVXRpbHMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vYWN0aW9uRGVjb3JhdG9yVXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2V0RGF0YU1vZGVsQWN0aW9uIH0gZnJvbSBcIi4uL2RhdGFNb2RlbC9hY3Rpb25zXCJcbmltcG9ydCB7IGlzRGF0YU1vZGVsLCBpc0RhdGFNb2RlbENsYXNzIH0gZnJvbSBcIi4uL2RhdGFNb2RlbC91dGlsc1wiXG5pbXBvcnQgeyBtb2RlbEluZm9CeUNsYXNzIH0gZnJvbSBcIi4uL21vZGVsU2hhcmVkL21vZGVsSW5mb1wiXG5pbXBvcnQgeyBydW5BZnRlck1vZGVsRGVjb3JhdG9yU3ltYm9sIH0gZnJvbSBcIi4uL21vZGVsU2hhcmVkL21vZGVsU3ltYm9sc1wiXG5pbXBvcnQgeyBhZGRMYXRlSW5pdGlhbGl6YXRpb25GdW5jdGlvbiB9IGZyb20gXCIuLi91dGlsc1wiXG5pbXBvcnQgeyBXcmFwSW5BY3Rpb25PdmVycmlkZUNvbnRleHRGbiB9IGZyb20gXCIuL3dyYXBJbkFjdGlvblwiXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpb25OYW1lQW5kQ29udGV4dE92ZXJyaWRlKFxuICB0YXJnZXQ6IGFueSxcbiAgcHJvcGVydHlLZXk6IHN0cmluZ1xuKToge1xuICBhY3Rpb25OYW1lOiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKVxuICBvdmVycmlkZUNvbnRleHQ6IFdyYXBJbkFjdGlvbk92ZXJyaWRlQ29udGV4dEZuIHwgdW5kZWZpbmVkXG59IHtcbiAgbGV0IGFjdGlvbk5hbWU6IHN0cmluZyB8ICgoKSA9PiBzdHJpbmcpID0gcHJvcGVydHlLZXlcbiAgbGV0IG92ZXJyaWRlQ29udGV4dDogV3JhcEluQWN0aW9uT3ZlcnJpZGVDb250ZXh0Rm4gfCB1bmRlZmluZWRcblxuICBpZiAoaXNEYXRhTW9kZWxDbGFzcyh0YXJnZXQpIHx8IGlzRGF0YU1vZGVsKHRhcmdldCkpIHtcbiAgICBvdmVycmlkZUNvbnRleHQgPSAoY3R4LCBzZWxmKSA9PiB7XG4gICAgICBjdHgudGFyZ2V0ID0gc2VsZi4kXG4gICAgfVxuXG4gICAgbGV0IGZ1bGxBY3Rpb25OYW1lOiBzdHJpbmdcbiAgICBhY3Rpb25OYW1lID0gKCkgPT4gZnVsbEFjdGlvbk5hbWVcblxuICAgIGNvbnN0IG1vZGVsQ2xhc3M6IGFueSA9IGlzRGF0YU1vZGVsQ2xhc3ModGFyZ2V0KSA/IHRhcmdldCA6IHRhcmdldC5jb25zdHJ1Y3RvclxuXG4gICAgYWRkTGF0ZUluaXRpYWxpemF0aW9uRnVuY3Rpb24obW9kZWxDbGFzcywgcnVuQWZ0ZXJNb2RlbERlY29yYXRvclN5bWJvbCwgKGZpbmFsQ2xhc3MpID0+IHtcbiAgICAgIGNvbnN0IG1vZGVsSW5mbyA9IG1vZGVsSW5mb0J5Q2xhc3MuZ2V0KGZpbmFsQ2xhc3MpIVxuICAgICAgZnVsbEFjdGlvbk5hbWUgPSBgZm46OiR7bW9kZWxJbmZvLm5hbWV9Ojoke3Byb3BlcnR5S2V5fWBcbiAgICAgIHNldERhdGFNb2RlbEFjdGlvbihmdWxsQWN0aW9uTmFtZSwgbW9kZWxJbmZvLmNsYXNzLCBwcm9wZXJ0eUtleSlcbiAgICB9KVxuICB9XG4gIHJldHVybiB7IGFjdGlvbk5hbWUsIG92ZXJyaWRlQ29udGV4dCB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7eUNBUUUsUUFDQTtNQUtJLGFBQXNDO01BQ3RDO01BRUEsaUJBQWlCLE1BQU0sS0FBSyxZQUFZLE1BQU0sR0FBRztzQkFDakMsQ0FBQyxLQUFLO1VBQ2xCLFNBQVMsS0FBSztBQUFBO1FBR2hCO2lCQUNTLE1BQU07VUFFYixhQUFrQixpQkFBaUIsTUFBTSxJQUFJLFNBQVMsT0FBTztrQ0FFckMsWUFBWSw4QkFBOEIsQ0FBQztZQUNqRSxZQUFZLGlCQUFpQixJQUFJLFVBQVU7dUJBQ2hDLE9BQU8sVUFBVSxTQUFTO3lCQUN4QixnQkFBZ0IsVUFBVSxPQUFPLFdBQVc7QUFBQSxLQUNoRTtBQUFBO1NBRUksRUFBRSxZQUFZO0FBQ3ZCOzsifQ==
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { getDataModelAction } from "../dataModel/actions.js";
|
|
2
|
+
import { detach } from "../parent/detach.js";
|
|
3
|
+
import { resolvePathCheckingIds } from "../parent/path.js";
|
|
4
|
+
import { applyPatches } from "../patch/applyPatches.js";
|
|
5
|
+
import { applySnapshot } from "../snapshot/applySnapshot.js";
|
|
6
|
+
import { getStandaloneAction } from "../standardActions/actions.js";
|
|
7
|
+
import { assertTweakedObject } from "../tweaker/core.js";
|
|
8
|
+
import { failure } from "../utils/index.js";
|
|
9
|
+
import { applyDelete } from "./applyDelete.js";
|
|
10
|
+
import { applyMethodCall } from "./applyMethodCall.js";
|
|
11
|
+
import { applySet } from "./applySet.js";
|
|
12
|
+
import { BuiltInAction, isBuiltInAction } from "./builtInActions.js";
|
|
13
|
+
import { isHookAction } from "./hookActions.js";
|
|
14
|
+
const builtInActionToFunction = {
|
|
15
|
+
[BuiltInAction.ApplySnapshot]: applySnapshot,
|
|
16
|
+
[BuiltInAction.ApplyPatches]: applyPatches,
|
|
17
|
+
[BuiltInAction.Detach]: detach,
|
|
18
|
+
[BuiltInAction.ApplySet]: applySet,
|
|
19
|
+
[BuiltInAction.ApplyDelete]: applyDelete,
|
|
20
|
+
[BuiltInAction.ApplyMethodCall]: applyMethodCall
|
|
21
|
+
};
|
|
22
|
+
function applyAction(subtreeRoot, call) {
|
|
23
|
+
if (call.serialized) {
|
|
24
|
+
throw failure("cannot apply a serialized action call, use one of the 'applySerializedAction' methods instead");
|
|
25
|
+
}
|
|
26
|
+
assertTweakedObject(subtreeRoot, "subtreeRoot");
|
|
27
|
+
const { value: current, resolved } = resolvePathCheckingIds(subtreeRoot, call.targetPath, call.targetPathIds);
|
|
28
|
+
if (!resolved) {
|
|
29
|
+
throw failure(`object at path ${JSON.stringify(call.targetPath)} with ids ${JSON.stringify(call.targetPathIds)} could not be resolved`);
|
|
30
|
+
}
|
|
31
|
+
assertTweakedObject(current, `resolved ${current}`, true);
|
|
32
|
+
if (isBuiltInAction(call.actionName)) {
|
|
33
|
+
const fnToCall = builtInActionToFunction[call.actionName];
|
|
34
|
+
if (!fnToCall) {
|
|
35
|
+
throw failure(`assertion failed: unknown built-in action - ${call.actionName}`);
|
|
36
|
+
}
|
|
37
|
+
return fnToCall.apply(current, [current, ...call.args]);
|
|
38
|
+
}
|
|
39
|
+
if (isHookAction(call.actionName)) {
|
|
40
|
+
throw failure(`calls to hooks (${call.actionName}) cannot be applied`);
|
|
41
|
+
}
|
|
42
|
+
const dataModelAction = getDataModelAction(call.actionName);
|
|
43
|
+
if (dataModelAction) {
|
|
44
|
+
const instance = new dataModelAction.modelClass(current);
|
|
45
|
+
return instance[dataModelAction.fnName].apply(instance, call.args);
|
|
46
|
+
}
|
|
47
|
+
const standaloneAction = getStandaloneAction(call.actionName);
|
|
48
|
+
if (standaloneAction) {
|
|
49
|
+
return standaloneAction.apply(current, call.args);
|
|
50
|
+
}
|
|
51
|
+
return current[call.actionName].apply(current, call.args);
|
|
52
|
+
}
|
|
53
|
+
export { applyAction };
|
|
54
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlBY3Rpb24uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vYXBwbHlBY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0RGF0YU1vZGVsQWN0aW9uIH0gZnJvbSBcIi4uL2RhdGFNb2RlbC9hY3Rpb25zXCJcbmltcG9ydCB7IGRldGFjaCB9IGZyb20gXCIuLi9wYXJlbnQvZGV0YWNoXCJcbmltcG9ydCB7IHJlc29sdmVQYXRoQ2hlY2tpbmdJZHMgfSBmcm9tIFwiLi4vcGFyZW50L3BhdGhcIlxuaW1wb3J0IHsgUGF0aCB9IGZyb20gXCIuLi9wYXJlbnQvcGF0aFR5cGVzXCJcbmltcG9ydCB7IGFwcGx5UGF0Y2hlcyB9IGZyb20gXCIuLi9wYXRjaC9hcHBseVBhdGNoZXNcIlxuaW1wb3J0IHsgYXBwbHlTbmFwc2hvdCB9IGZyb20gXCIuLi9zbmFwc2hvdC9hcHBseVNuYXBzaG90XCJcbmltcG9ydCB7IGdldFN0YW5kYWxvbmVBY3Rpb24gfSBmcm9tIFwiLi4vc3RhbmRhcmRBY3Rpb25zL2FjdGlvbnNcIlxuaW1wb3J0IHsgYXNzZXJ0VHdlYWtlZE9iamVjdCB9IGZyb20gXCIuLi90d2Vha2VyL2NvcmVcIlxuaW1wb3J0IHsgZmFpbHVyZSB9IGZyb20gXCIuLi91dGlsc1wiXG5pbXBvcnQgeyBhcHBseURlbGV0ZSB9IGZyb20gXCIuL2FwcGx5RGVsZXRlXCJcbmltcG9ydCB7IGFwcGx5TWV0aG9kQ2FsbCB9IGZyb20gXCIuL2FwcGx5TWV0aG9kQ2FsbFwiXG5pbXBvcnQgeyBhcHBseVNldCB9IGZyb20gXCIuL2FwcGx5U2V0XCJcbmltcG9ydCB7IEJ1aWx0SW5BY3Rpb24sIGlzQnVpbHRJbkFjdGlvbiB9IGZyb20gXCIuL2J1aWx0SW5BY3Rpb25zXCJcbmltcG9ydCB7IGlzSG9va0FjdGlvbiB9IGZyb20gXCIuL2hvb2tBY3Rpb25zXCJcblxuLyoqXG4gKiBBbiBhY3Rpb24gY2FsbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25DYWxsIHtcbiAgLyoqXG4gICAqIEFjdGlvbiBuYW1lIChuYW1lIG9mIHRoZSBmdW5jdGlvbikuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25OYW1lOiBzdHJpbmdcblxuICAvKipcbiAgICogQWN0aW9uIGFyZ3VtZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IGFyZ3M6IFJlYWRvbmx5QXJyYXk8YW55PlxuXG4gIC8qKlxuICAgKiBQYXRoIHRvIHRoZSBtb2RlbCB3aGVyZSB0aGUgYWN0aW9uIHdpbGwgYmUgcnVuLCBhcyBhbiBhcnJheSBvZiBzdHJpbmcgfCBudW1iZXIuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRQYXRoOiBQYXRoXG5cbiAgLyoqXG4gICAqIElkcyBvZiBtb2RlbHMgYWxvbmcgdGhlIHBhdGggdG8gdGhlIHRhcmdldCwgbnVsbCBpZiBpdCBpcyBub3QgYSBtb2RlbC5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFBhdGhJZHM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nIHwgbnVsbD5cblxuICAvKipcbiAgICogTWFya3MgdGhpcyBhY3Rpb24gY2FsbCBhcyBub24tc2VyaWFsaXplZC5cbiAgICovXG4gIHJlYWRvbmx5IHNlcmlhbGl6ZWQ/OiB1bmRlZmluZWRcbn1cblxuY29uc3QgYnVpbHRJbkFjdGlvblRvRnVuY3Rpb24gPSB7XG4gIFtCdWlsdEluQWN0aW9uLkFwcGx5U25hcHNob3RdOiBhcHBseVNuYXBzaG90LFxuICBbQnVpbHRJbkFjdGlvbi5BcHBseVBhdGNoZXNdOiBhcHBseVBhdGNoZXMsXG4gIFtCdWlsdEluQWN0aW9uLkRldGFjaF06IGRldGFjaCxcbiAgW0J1aWx0SW5BY3Rpb24uQXBwbHlTZXRdOiBhcHBseVNldCxcbiAgW0J1aWx0SW5BY3Rpb24uQXBwbHlEZWxldGVdOiBhcHBseURlbGV0ZSxcbiAgW0J1aWx0SW5BY3Rpb24uQXBwbHlNZXRob2RDYWxsXTogYXBwbHlNZXRob2RDYWxsLFxufVxuXG4vKipcbiAqIEFwcGxpZXMgKHJ1bnMpIGFuIGFjdGlvbiBvdmVyIGEgdGFyZ2V0IG9iamVjdC5cbiAqXG4gKiBJZiB5b3UgaW50ZW5kIHRvIGFwcGx5IHNlcmlhbGl6ZWQgYWN0aW9ucyBjaGVjayBvbmUgb2YgdGhlIGBhcHBseVNlcmlhbGl6ZWRBY3Rpb25gIG1ldGhvZHMgaW5zdGVhZC5cbiAqXG4gKiBAcGFyYW0gc3VidHJlZVJvb3QgU3VidHJlZSByb290IHRhcmdldCBvYmplY3QgdG8gcnVuIHRoZSBhY3Rpb24gb3Zlci5cbiAqIEBwYXJhbSBjYWxsIFRoZSBhY3Rpb24sIHVzdWFsbHkgYXMgY29taW5nIGZyb20gYG9uQWN0aW9uTWlkZGxld2FyZWAuXG4gKiBAcmV0dXJucyBUaGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBhY3Rpb24sIGlmIGFueS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5QWN0aW9uPFRSZXQgPSBhbnk+KHN1YnRyZWVSb290OiBvYmplY3QsIGNhbGw6IEFjdGlvbkNhbGwpOiBUUmV0IHtcbiAgaWYgKGNhbGwuc2VyaWFsaXplZCkge1xuICAgIHRocm93IGZhaWx1cmUoXG4gICAgICBcImNhbm5vdCBhcHBseSBhIHNlcmlhbGl6ZWQgYWN0aW9uIGNhbGwsIHVzZSBvbmUgb2YgdGhlICdhcHBseVNlcmlhbGl6ZWRBY3Rpb24nIG1ldGhvZHMgaW5zdGVhZFwiXG4gICAgKVxuICB9XG5cbiAgYXNzZXJ0VHdlYWtlZE9iamVjdChzdWJ0cmVlUm9vdCwgXCJzdWJ0cmVlUm9vdFwiKVxuXG4gIC8vIHJlc29sdmUgcGF0aCB3aGlsZSBjaGVja2luZyBpZHNcbiAgY29uc3QgeyB2YWx1ZTogY3VycmVudCwgcmVzb2x2ZWQgfSA9IHJlc29sdmVQYXRoQ2hlY2tpbmdJZHMoXG4gICAgc3VidHJlZVJvb3QsXG4gICAgY2FsbC50YXJnZXRQYXRoLFxuICAgIGNhbGwudGFyZ2V0UGF0aElkc1xuICApXG4gIGlmICghcmVzb2x2ZWQpIHtcbiAgICB0aHJvdyBmYWlsdXJlKFxuICAgICAgYG9iamVjdCBhdCBwYXRoICR7SlNPTi5zdHJpbmdpZnkoY2FsbC50YXJnZXRQYXRoKX0gd2l0aCBpZHMgJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgY2FsbC50YXJnZXRQYXRoSWRzXG4gICAgICApfSBjb3VsZCBub3QgYmUgcmVzb2x2ZWRgXG4gICAgKVxuICB9XG4gIGFzc2VydFR3ZWFrZWRPYmplY3QoY3VycmVudCwgYHJlc29sdmVkICR7Y3VycmVudH1gLCB0cnVlKVxuXG4gIGlmIChpc0J1aWx0SW5BY3Rpb24oY2FsbC5hY3Rpb25OYW1lKSkge1xuICAgIGNvbnN0IGZuVG9DYWxsOiAoLi4uYXJnczogYW55W10pID0+IGFueSA9IGJ1aWx0SW5BY3Rpb25Ub0Z1bmN0aW9uW2NhbGwuYWN0aW9uTmFtZV1cbiAgICBpZiAoIWZuVG9DYWxsKSB7XG4gICAgICB0aHJvdyBmYWlsdXJlKGBhc3NlcnRpb24gZmFpbGVkOiB1bmtub3duIGJ1aWx0LWluIGFjdGlvbiAtICR7Y2FsbC5hY3Rpb25OYW1lfWApXG4gICAgfVxuXG4gICAgcmV0dXJuIGZuVG9DYWxsLmFwcGx5KGN1cnJlbnQsIFtjdXJyZW50LCAuLi5jYWxsLmFyZ3NdKVxuICB9XG5cbiAgaWYgKGlzSG9va0FjdGlvbihjYWxsLmFjdGlvbk5hbWUpKSB7XG4gICAgdGhyb3cgZmFpbHVyZShgY2FsbHMgdG8gaG9va3MgKCR7Y2FsbC5hY3Rpb25OYW1lfSkgY2Fubm90IGJlIGFwcGxpZWRgKVxuICB9XG5cbiAgY29uc3QgZGF0YU1vZGVsQWN0aW9uID0gZ2V0RGF0YU1vZGVsQWN0aW9uKGNhbGwuYWN0aW9uTmFtZSlcbiAgaWYgKGRhdGFNb2RlbEFjdGlvbikge1xuICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBuZXcgZGF0YU1vZGVsQWN0aW9uLm1vZGVsQ2xhc3MoY3VycmVudClcbiAgICByZXR1cm4gaW5zdGFuY2VbZGF0YU1vZGVsQWN0aW9uLmZuTmFtZV0uYXBwbHkoaW5zdGFuY2UsIGNhbGwuYXJncylcbiAgfVxuXG4gIGNvbnN0IHN0YW5kYWxvbmVBY3Rpb24gPSBnZXRTdGFuZGFsb25lQWN0aW9uKGNhbGwuYWN0aW9uTmFtZSlcbiAgaWYgKHN0YW5kYWxvbmVBY3Rpb24pIHtcbiAgICByZXR1cm4gc3RhbmRhbG9uZUFjdGlvbi5hcHBseShjdXJyZW50LCBjYWxsLmFyZ3MgYXMgYW55KVxuICB9XG5cbiAgcmV0dXJuIChjdXJyZW50IGFzIGFueSlbY2FsbC5hY3Rpb25OYW1lXS5hcHBseShjdXJyZW50LCBjYWxsLmFyZ3MpXG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQTZDQSxNQUFNLDBCQUEwQjtBQUFBLEdBQzdCLGNBQWMsZ0JBQWdCO0FBQUEsR0FDOUIsY0FBYyxlQUFlO0FBQUEsR0FDN0IsY0FBYyxTQUFTO0FBQUEsR0FDdkIsY0FBYyxXQUFXO0FBQUEsR0FDekIsY0FBYyxjQUFjO0FBQUEsR0FDNUIsY0FBYyxrQkFBa0I7O3FCQVlLLGFBQXFCO01BQ3ZELEtBQUssWUFBWTtVQUNiLFFBQ0osK0ZBQStGO0FBQUE7c0JBSS9FLGFBQWEsYUFBYTtRQUd4QyxFQUFFLE9BQU8sU0FBUyxhQUFhLHVCQUNuQyxhQUNBLEtBQUssWUFDTCxLQUFLLGFBQWE7TUFFaEIsQ0FBQyxVQUFVO1VBQ1AsUUFDSixrQkFBa0IsS0FBSyxVQUFVLEtBQUssVUFBVSxjQUFjLEtBQUssVUFDakUsS0FBSyxhQUFhLHlCQUNLO0FBQUE7c0JBR1QsU0FBUyxZQUFZLFdBQVcsSUFBSTtNQUVwRCxnQkFBZ0IsS0FBSyxVQUFVLEdBQUc7VUFDOUIsV0FBb0Msd0JBQXdCLEtBQUs7UUFDbkUsQ0FBQyxVQUFVO1lBQ1AsUUFBUSwrQ0FBK0MsS0FBSyxZQUFZO0FBQUE7V0FHekUsU0FBUyxNQUFNLFNBQVMsQ0FBQyxTQUFTLEdBQUcsS0FBSyxJQUFJLENBQUM7QUFBQTtNQUdwRCxhQUFhLEtBQUssVUFBVSxHQUFHO1VBQzNCLFFBQVEsbUJBQW1CLEtBQUssK0JBQStCO0FBQUE7UUFHakUsa0JBQWtCLG1CQUFtQixLQUFLLFVBQVU7TUFDdEQsaUJBQWlCO1VBQ2IsV0FBZ0IsSUFBSSxnQkFBZ0IsV0FBVyxPQUFPO1dBQ3JELFNBQVMsZ0JBQWdCLFFBQVEsTUFBTSxVQUFVLEtBQUssSUFBSTtBQUFBO1FBRzdELG1CQUFtQixvQkFBb0IsS0FBSyxVQUFVO01BQ3hELGtCQUFrQjtXQUNiLGlCQUFpQixNQUFNLFNBQVMsS0FBSyxJQUFXO0FBQUE7U0FHakQsUUFBZ0IsS0FBSyxZQUFZLE1BQU0sU0FBUyxLQUFLLElBQUk7QUFDbkU7OyJ9
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { remove } from "mobx";
|
|
2
|
+
import { assertTweakedObject } from "../tweaker/core.js";
|
|
3
|
+
import { lazy } from "../utils/index.js";
|
|
4
|
+
import { BuiltInAction } from "./builtInActions.js";
|
|
5
|
+
import { ActionContextActionType } from "./context.js";
|
|
6
|
+
import { wrapInAction } from "./wrapInAction.js";
|
|
7
|
+
function applyDelete(node, fieldName) {
|
|
8
|
+
assertTweakedObject(node, "node", true);
|
|
9
|
+
wrappedInternalApplyDelete().call(node, fieldName);
|
|
10
|
+
}
|
|
11
|
+
function internalApplyDelete(fieldName) {
|
|
12
|
+
remove(this, "" + fieldName);
|
|
13
|
+
}
|
|
14
|
+
const wrappedInternalApplyDelete = lazy(() => wrapInAction({
|
|
15
|
+
nameOrNameFn: BuiltInAction.ApplyDelete,
|
|
16
|
+
fn: internalApplyDelete,
|
|
17
|
+
actionType: ActionContextActionType.Sync
|
|
18
|
+
}));
|
|
19
|
+
export { applyDelete, internalApplyDelete };
|
|
20
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlEZWxldGUuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vYXBwbHlEZWxldGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVtb3ZlIH0gZnJvbSBcIm1vYnhcIlxuaW1wb3J0IHsgYXNzZXJ0VHdlYWtlZE9iamVjdCB9IGZyb20gXCIuLi90d2Vha2VyL2NvcmVcIlxuaW1wb3J0IHsgbGF6eSB9IGZyb20gXCIuLi91dGlsc1wiXG5pbXBvcnQgeyBCdWlsdEluQWN0aW9uIH0gZnJvbSBcIi4vYnVpbHRJbkFjdGlvbnNcIlxuaW1wb3J0IHsgQWN0aW9uQ29udGV4dEFjdGlvblR5cGUgfSBmcm9tIFwiLi9jb250ZXh0XCJcbmltcG9ydCB7IHdyYXBJbkFjdGlvbiB9IGZyb20gXCIuL3dyYXBJbkFjdGlvblwiXG5cbi8qKlxuICogRGVsZXRlcyBhbiBvYmplY3QgZmllbGQgd3JhcHBlZCBpbiBhbiBhY3Rpb24uXG4gKlxuICogQHBhcmFtIG5vZGUgIFRhcmdldCBvYmplY3QuXG4gKiBAcGFyYW0gZmllbGROYW1lIEZpZWxkIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcHBseURlbGV0ZTxPIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgTz4obm9kZTogTywgZmllbGROYW1lOiBLKTogdm9pZCB7XG4gIGFzc2VydFR3ZWFrZWRPYmplY3Qobm9kZSwgXCJub2RlXCIsIHRydWUpXG5cbiAgd3JhcHBlZEludGVybmFsQXBwbHlEZWxldGUoKS5jYWxsKG5vZGUsIGZpZWxkTmFtZSBhcyBzdHJpbmcgfCBudW1iZXIpXG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcm5hbEFwcGx5RGVsZXRlPE8gZXh0ZW5kcyBvYmplY3Q+KHRoaXM6IE8sIGZpZWxkTmFtZTogc3RyaW5nIHwgbnVtYmVyKTogdm9pZCB7XG4gIHJlbW92ZSh0aGlzLCBcIlwiICsgZmllbGROYW1lKVxufVxuXG5jb25zdCB3cmFwcGVkSW50ZXJuYWxBcHBseURlbGV0ZSA9IGxhenkoKCkgPT5cbiAgd3JhcEluQWN0aW9uKHtcbiAgICBuYW1lT3JOYW1lRm46IEJ1aWx0SW5BY3Rpb24uQXBwbHlEZWxldGUsXG4gICAgZm46IGludGVybmFsQXBwbHlEZWxldGUsXG4gICAgYWN0aW9uVHlwZTogQWN0aW9uQ29udGV4dEFjdGlvblR5cGUuU3luYyxcbiAgfSlcbilcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7cUJBYWlFLE1BQVM7c0JBQ3BELE1BQU0sUUFBUSxJQUFJOytCQUVULEtBQUssTUFBTSxTQUE0QjtBQUN0RTs2QkFLK0Q7U0FDdEQsTUFBTSxLQUFLLFNBQVM7QUFDN0I7QUFFQSxNQUFNLDZCQUE2QixLQUFLLE1BQ3RDLGFBQWE7QUFBQSxFQUNYLGNBQWMsY0FBYztBQUFBLEVBQzVCLElBQUk7QUFBQSxFQUNKLFlBQVksd0JBQXdCO0NBQ3JDLENBQUM7OyJ9
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { assertTweakedObject } from "../tweaker/core.js";
|
|
2
|
+
import { lazy } from "../utils/index.js";
|
|
3
|
+
import { BuiltInAction } from "./builtInActions.js";
|
|
4
|
+
import { ActionContextActionType } from "./context.js";
|
|
5
|
+
import { wrapInAction } from "./wrapInAction.js";
|
|
6
|
+
function applyMethodCall(node, methodName, ...args) {
|
|
7
|
+
assertTweakedObject(node, "node");
|
|
8
|
+
return wrappedInternalApplyMethodCall().call(node, methodName, args);
|
|
9
|
+
}
|
|
10
|
+
function internalApplyMethodCall(methodName, args) {
|
|
11
|
+
return this[methodName](...args);
|
|
12
|
+
}
|
|
13
|
+
const wrappedInternalApplyMethodCall = lazy(() => wrapInAction({
|
|
14
|
+
nameOrNameFn: BuiltInAction.ApplyMethodCall,
|
|
15
|
+
fn: internalApplyMethodCall,
|
|
16
|
+
actionType: ActionContextActionType.Sync
|
|
17
|
+
}));
|
|
18
|
+
export { applyMethodCall, internalApplyMethodCall };
|
|
19
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlNZXRob2RDYWxsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2FwcGx5TWV0aG9kQ2FsbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnRUd2Vha2VkT2JqZWN0IH0gZnJvbSBcIi4uL3R3ZWFrZXIvY29yZVwiXG5pbXBvcnQgeyBsYXp5IH0gZnJvbSBcIi4uL3V0aWxzXCJcbmltcG9ydCB7IEJ1aWx0SW5BY3Rpb24gfSBmcm9tIFwiLi9idWlsdEluQWN0aW9uc1wiXG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZSB9IGZyb20gXCIuL2NvbnRleHRcIlxuaW1wb3J0IHsgd3JhcEluQWN0aW9uIH0gZnJvbSBcIi4vd3JhcEluQWN0aW9uXCJcblxudHlwZSBBbnlGdW5jdGlvbiA9ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55XG5cbi8qKlxuICogQ2FsbHMgYW4gb2JqZWN0IG1ldGhvZCB3cmFwcGVkIGluIGFuIGFjdGlvbi5cbiAqXG4gKiBAcGFyYW0gbm9kZSAgVGFyZ2V0IG9iamVjdC5cbiAqIEBwYXJhbSBtZXRob2ROYW1lIE1ldGhvZCBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlNZXRob2RDYWxsPE8gZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBPLCBGTiBleHRlbmRzIE9bS10+KFxuICBub2RlOiBPLFxuICBtZXRob2ROYW1lOiBLLFxuICAuLi5hcmdzOiBGTiBleHRlbmRzIEFueUZ1bmN0aW9uID8gUGFyYW1ldGVyczxGTj4gOiBuZXZlclxuKTogRk4gZXh0ZW5kcyBBbnlGdW5jdGlvbiA/IFJldHVyblR5cGU8Rk4+IDogbmV2ZXIge1xuICBhc3NlcnRUd2Vha2VkT2JqZWN0KG5vZGUsIFwibm9kZVwiKVxuXG4gIHJldHVybiB3cmFwcGVkSW50ZXJuYWxBcHBseU1ldGhvZENhbGwoKS5jYWxsKG5vZGUsIG1ldGhvZE5hbWUgYXMgc3RyaW5nIHwgbnVtYmVyLCBhcmdzKVxufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gaW50ZXJuYWxBcHBseU1ldGhvZENhbGwodGhpczogYW55LCBtZXRob2ROYW1lOiBzdHJpbmcgfCBudW1iZXIsIGFyZ3M6IGFueVtdKTogYW55IHtcbiAgcmV0dXJuIHRoaXNbbWV0aG9kTmFtZV0oLi4uYXJncylcbn1cblxuY29uc3Qgd3JhcHBlZEludGVybmFsQXBwbHlNZXRob2RDYWxsID0gbGF6eSgoKSA9PlxuICB3cmFwSW5BY3Rpb24oe1xuICAgIG5hbWVPck5hbWVGbjogQnVpbHRJbkFjdGlvbi5BcHBseU1ldGhvZENhbGwsXG4gICAgZm46IGludGVybmFsQXBwbHlNZXRob2RDYWxsLFxuICAgIGFjdGlvblR5cGU6IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlLlN5bmMsXG4gIH0pXG4pXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7eUJBZUUsTUFDQSxlQUNHO3NCQUVpQixNQUFNLE1BQU07U0FFekIsaUNBQWlDLEtBQUssTUFBTSxZQUErQixJQUFJO0FBQ3hGO2lDQUttRCxZQUE2QjtTQUN2RSxLQUFLLFlBQVksR0FBRyxJQUFJO0FBQ2pDO0FBRUEsTUFBTSxpQ0FBaUMsS0FBSyxNQUMxQyxhQUFhO0FBQUEsRUFDWCxjQUFjLGNBQWM7QUFBQSxFQUM1QixJQUFJO0FBQUEsRUFDSixZQUFZLHdCQUF3QjtDQUNyQyxDQUFDOzsifQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { isObservable, set } from "mobx";
|
|
2
|
+
import { isModel } from "../model/utils.js";
|
|
3
|
+
import { assertTweakedObject } from "../tweaker/core.js";
|
|
4
|
+
import { lazy } from "../utils/index.js";
|
|
5
|
+
import { BuiltInAction } from "./builtInActions.js";
|
|
6
|
+
import { ActionContextActionType } from "./context.js";
|
|
7
|
+
import { wrapInAction } from "./wrapInAction.js";
|
|
8
|
+
function applySet(node, fieldName, value) {
|
|
9
|
+
assertTweakedObject(node, "node", true);
|
|
10
|
+
wrappedInternalApplySet().call(node, fieldName, value);
|
|
11
|
+
}
|
|
12
|
+
function internalApplySet(fieldName, value) {
|
|
13
|
+
if (!isModel(this) && isObservable(this)) {
|
|
14
|
+
set(this, fieldName, value);
|
|
15
|
+
} else {
|
|
16
|
+
this[fieldName] = value;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
const wrappedInternalApplySet = lazy(() => wrapInAction({
|
|
20
|
+
nameOrNameFn: BuiltInAction.ApplySet,
|
|
21
|
+
fn: internalApplySet,
|
|
22
|
+
actionType: ActionContextActionType.Sync
|
|
23
|
+
}));
|
|
24
|
+
export { applySet };
|
|
25
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlTZXQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vYXBwbHlTZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNPYnNlcnZhYmxlLCBzZXQgfSBmcm9tIFwibW9ieFwiXG5pbXBvcnQgeyBpc01vZGVsIH0gZnJvbSBcIi4uL21vZGVsL3V0aWxzXCJcbmltcG9ydCB7IGFzc2VydFR3ZWFrZWRPYmplY3QgfSBmcm9tIFwiLi4vdHdlYWtlci9jb3JlXCJcbmltcG9ydCB7IGxhenkgfSBmcm9tIFwiLi4vdXRpbHNcIlxuaW1wb3J0IHsgQnVpbHRJbkFjdGlvbiB9IGZyb20gXCIuL2J1aWx0SW5BY3Rpb25zXCJcbmltcG9ydCB7IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlIH0gZnJvbSBcIi4vY29udGV4dFwiXG5pbXBvcnQgeyB3cmFwSW5BY3Rpb24gfSBmcm9tIFwiLi93cmFwSW5BY3Rpb25cIlxuXG4vKipcbiAqIFNldHMgYW4gb2JqZWN0IGZpZWxkIHdyYXBwZWQgaW4gYW4gYWN0aW9uLlxuICpcbiAqIEBwYXJhbSBub2RlICBUYXJnZXQgb2JqZWN0LlxuICogQHBhcmFtIGZpZWxkTmFtZSBGaWVsZCBuYW1lLlxuICogQHBhcmFtIHZhbHVlIFZhbHVlIHRvIHNldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5U2V0PE8gZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBPLCBWIGV4dGVuZHMgT1tLXT4oXG4gIG5vZGU6IE8sXG4gIGZpZWxkTmFtZTogSyxcbiAgdmFsdWU6IFZcbik6IHZvaWQge1xuICBhc3NlcnRUd2Vha2VkT2JqZWN0KG5vZGUsIFwibm9kZVwiLCB0cnVlKVxuXG4gIHdyYXBwZWRJbnRlcm5hbEFwcGx5U2V0KCkuY2FsbChub2RlLCBmaWVsZE5hbWUgYXMgc3RyaW5nIHwgbnVtYmVyLCB2YWx1ZSlcbn1cblxuZnVuY3Rpb24gaW50ZXJuYWxBcHBseVNldDxPIGV4dGVuZHMgb2JqZWN0Pih0aGlzOiBPLCBmaWVsZE5hbWU6IHN0cmluZyB8IG51bWJlciwgdmFsdWU6IGFueSk6IHZvaWQge1xuICAvLyB3ZSBuZWVkIHRvIGNoZWNrIGlmIGl0IGlzIGEgbW9kZWwgc2luY2UgbW9kZWxzIGNhbiBiZWNvbWUgb2JzZXJ2YWJsZSBvYmplY3RzXG4gIC8vIChlLmcuIGJ5IGhhdmluZyBhIGNvbXB1dGVkIHZhbHVlKVxuICBpZiAoIWlzTW9kZWwodGhpcykgJiYgaXNPYnNlcnZhYmxlKHRoaXMpKSB7XG4gICAgc2V0KHRoaXMsIGZpZWxkTmFtZSwgdmFsdWUpXG4gIH0gZWxzZSB7XG4gICAgOyh0aGlzIGFzIGFueSlbZmllbGROYW1lXSA9IHZhbHVlXG4gIH1cbn1cblxuY29uc3Qgd3JhcHBlZEludGVybmFsQXBwbHlTZXQgPSBsYXp5KCgpID0+XG4gIHdyYXBJbkFjdGlvbih7XG4gICAgbmFtZU9yTmFtZUZuOiBCdWlsdEluQWN0aW9uLkFwcGx5U2V0LFxuICAgIGZuOiBpbnRlcm5hbEFwcGx5U2V0LFxuICAgIGFjdGlvblR5cGU6IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlLlN5bmMsXG4gIH0pXG4pXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztrQkFnQkUsTUFDQSxXQUNBO3NCQUVvQixNQUFNLFFBQVEsSUFBSTs0QkFFWixLQUFLLE1BQU0sV0FBOEIsS0FBSztBQUMxRTtBQUVBLDBCQUFxRCxXQUE0QjtNQUczRSxDQUFDLFFBQVEsSUFBSSxLQUFLLGFBQWEsSUFBSSxHQUFHO1FBQ3BDLE1BQU0sV0FBVyxLQUFLO0FBQUEsU0FDckI7U0FDVSxhQUFhO0FBQUE7QUFFaEM7QUFFQSxNQUFNLDBCQUEwQixLQUFLLE1BQ25DLGFBQWE7QUFBQSxFQUNYLGNBQWMsY0FBYztBQUFBLEVBQzVCLElBQUk7QUFBQSxFQUNKLFlBQVksd0JBQXdCO0NBQ3JDLENBQUM7OyJ9
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
var BuiltInAction;
|
|
2
|
+
(function(BuiltInAction2) {
|
|
3
|
+
BuiltInAction2["ApplyPatches"] = "$$applyPatches";
|
|
4
|
+
BuiltInAction2["ApplySnapshot"] = "$$applySnapshot";
|
|
5
|
+
BuiltInAction2["Detach"] = "$$detach";
|
|
6
|
+
BuiltInAction2["ApplySet"] = "$$applySet";
|
|
7
|
+
BuiltInAction2["ApplyDelete"] = "$$applyDelete";
|
|
8
|
+
BuiltInAction2["ApplyMethodCall"] = "$$applyMethodCall";
|
|
9
|
+
})(BuiltInAction || (BuiltInAction = {}));
|
|
10
|
+
const builtInActionValues = new Set(Object.values(BuiltInAction));
|
|
11
|
+
function isBuiltInAction(actionName) {
|
|
12
|
+
return builtInActionValues.has(actionName);
|
|
13
|
+
}
|
|
14
|
+
export { BuiltInAction, isBuiltInAction };
|
|
15
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbHRJbkFjdGlvbnMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vYnVpbHRJbkFjdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBIGJ1aWx0LWluIGFjdGlvbi5cbiAqL1xuZXhwb3J0IGVudW0gQnVpbHRJbkFjdGlvbiB7XG4gIC8qKlxuICAgKiBhcHBseVBhdGNoZXNcbiAgICovXG4gIEFwcGx5UGF0Y2hlcyA9IFwiJCRhcHBseVBhdGNoZXNcIixcbiAgLyoqXG4gICAqIGFwcGx5U25hcHNob3RcbiAgICovXG4gIEFwcGx5U25hcHNob3QgPSBcIiQkYXBwbHlTbmFwc2hvdFwiLFxuICAvKipcbiAgICogZGV0YWNoXG4gICAqL1xuICBEZXRhY2ggPSBcIiQkZGV0YWNoXCIsXG4gIC8qKlxuICAgKiBhcHBseVNldFxuICAgKi9cbiAgQXBwbHlTZXQgPSBcIiQkYXBwbHlTZXRcIixcbiAgLyoqXG4gICAqIGFwcGx5RGVsZXRlXG4gICAqL1xuICBBcHBseURlbGV0ZSA9IFwiJCRhcHBseURlbGV0ZVwiLFxuICAvKipcbiAgICogYXBwbHlNZXRob2RDYWxsXG4gICAqL1xuICBBcHBseU1ldGhvZENhbGwgPSBcIiQkYXBwbHlNZXRob2RDYWxsXCIsXG59XG5cbmNvbnN0IGJ1aWx0SW5BY3Rpb25WYWx1ZXM6IFJlYWRvbmx5U2V0PHN0cmluZz4gPSBuZXcgU2V0KE9iamVjdC52YWx1ZXMoQnVpbHRJbkFjdGlvbikpXG5cbi8qKlxuICogUmV0dXJucyBpZiBhIGdpdmVuIGFjdGlvbiBuYW1lIGlzIGEgYnVpbHQtaW4gYWN0aW9uLCB0aGlzIGlzLCBvbmUgb2Y6XG4gKiAtIGFwcGx5UGF0Y2hlcygpXG4gKiAtIGFwcGx5U25hcHNob3QoKVxuICogLSBkZXRhY2goKVxuICpcbiAqIEBwYXJhbSBhY3Rpb25OYW1lIEFjdGlvbiBuYW1lIHRvIGNoZWNrLlxuICogQHJldHVybnMgdHJ1ZSBpZiBpdCBpcyBhIGJ1aWx0LWluIGFjdGlvbiwgZmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNCdWlsdEluQWN0aW9uKGFjdGlvbk5hbWU6IHN0cmluZyk6IGFjdGlvbk5hbWUgaXMgQnVpbHRJbkFjdGlvbiB7XG4gIHJldHVybiBidWlsdEluQWN0aW9uVmFsdWVzLmhhcyhhY3Rpb25OYW1lKVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJJQUdZO1VBQUE7Ozs7Ozs7QUF5QlosR0F6Qlk7QUEyQlosTUFBTSxzQkFBMkMsSUFBSSxJQUFJLE9BQU8sT0FBTyxhQUFhLENBQUM7eUJBV3JEO1NBQ3ZCLG9CQUFvQixJQUFJLFVBQVU7QUFDM0M7OyJ9
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var ActionContextActionType;
|
|
2
|
+
(function(ActionContextActionType2) {
|
|
3
|
+
ActionContextActionType2["Sync"] = "sync";
|
|
4
|
+
ActionContextActionType2["Async"] = "async";
|
|
5
|
+
})(ActionContextActionType || (ActionContextActionType = {}));
|
|
6
|
+
var ActionContextAsyncStepType;
|
|
7
|
+
(function(ActionContextAsyncStepType2) {
|
|
8
|
+
ActionContextAsyncStepType2["Spawn"] = "spawn";
|
|
9
|
+
ActionContextAsyncStepType2["Return"] = "return";
|
|
10
|
+
ActionContextAsyncStepType2["Resume"] = "resume";
|
|
11
|
+
ActionContextAsyncStepType2["ResumeError"] = "resumeError";
|
|
12
|
+
ActionContextAsyncStepType2["Throw"] = "throw";
|
|
13
|
+
})(ActionContextAsyncStepType || (ActionContextAsyncStepType = {}));
|
|
14
|
+
let currentActionContext;
|
|
15
|
+
function getCurrentActionContext() {
|
|
16
|
+
return currentActionContext;
|
|
17
|
+
}
|
|
18
|
+
function setCurrentActionContext(ctx) {
|
|
19
|
+
currentActionContext = ctx;
|
|
20
|
+
}
|
|
21
|
+
export { ActionContextActionType, ActionContextAsyncStepType, getCurrentActionContext, setCurrentActionContext };
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FjdGlvbi9jb250ZXh0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQW55TW9kZWwgfSBmcm9tIFwiLi4vbW9kZWwvQmFzZU1vZGVsXCJcblxuLyoqXG4gKiBMb3cgbGV2ZWwgYWN0aW9uIGNvbnRleHQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29udGV4dCB7XG4gIC8qKlxuICAgKiBBY3Rpb24gbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9uTmFtZTogc3RyaW5nXG4gIC8qKlxuICAgKiBBY3Rpb24gdHlwZSwgc3luYyBvciBhc3luYy5cbiAgICovXG4gIHJlYWRvbmx5IHR5cGU6IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlXG4gIC8qKlxuICAgKiBBY3Rpb24gdGFyZ2V0IG9iamVjdC5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldDogQW55TW9kZWxcbiAgLyoqXG4gICAqIEFycmF5IG9mIGFjdGlvbiBhcmd1bWVudHMuXG4gICAqL1xuICByZWFkb25seSBhcmdzOiBSZWFkb25seUFycmF5PGFueT5cbiAgLyoqXG4gICAqIFBhcmVudCBhY3Rpb24gY29udGV4dCwgaWYgYW55LlxuICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50Q29udGV4dD86IEFjdGlvbkNvbnRleHRcbiAgLyoqXG4gICAqIFJvb3QgYWN0aW9uIGNvbnRleHQsIG9yIGl0c2VsZiBpZiB0aGUgcm9vdC5cbiAgICovXG4gIHJlYWRvbmx5IHJvb3RDb250ZXh0OiBBY3Rpb25Db250ZXh0XG4gIC8qKlxuICAgKiBQcmV2aW91cyBhc3luYyBzdGVwIGNvbnRleHQsIHVuZGVmaW5lZCBmb3Igc3luYyBhY3Rpb25zIG9yIHRoZSBmaXJzdCBhY3Rpb24gb2YgYSBmbG93LlxuICAgKi9cbiAgcmVhZG9ubHkgcHJldmlvdXNBc3luY1N0ZXBDb250ZXh0PzogQWN0aW9uQ29udGV4dFxuICAvKipcbiAgICogU3Bhd24gYXN5bmMgc3RlcCBjb250ZXh0LCB1bmRlZmluZWQgZm9yIHN5bmMgYWN0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IHNwYXduQXN5bmNTdGVwQ29udGV4dD86IEFjdGlvbkNvbnRleHRcbiAgLyoqXG4gICAqIEFzeW5jIHN0ZXAgdHlwZSwgb3IgdW5kZWZpbmVkIGZvciBzeW5jIGFjdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBhc3luY1N0ZXBUeXBlPzogQWN0aW9uQ29udGV4dEFzeW5jU3RlcFR5cGVcbiAgLyoqXG4gICAqIEN1c3RvbSBkYXRhIGZvciB0aGUgYWN0aW9uIGNvbnRleHQgdG8gYmUgc2V0IGJ5IG1pZGRsZXdhcmVzLCBhbiBvYmplY3QuXG4gICAqIFN5bWJvbHMgbXVzdCBiZSB1c2VkIGFzIGtleXMgdG8gYXZvaWQgbmFtZSBjbGFzaGluZyBiZXR3ZWVuIG1pZGRsZXdhcmVzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YTogUmVjb3JkPHN5bWJvbCwgYW55PlxufVxuXG4vKipcbiAqIEFjdGlvbiB0eXBlLCBzeW5jIG9yIGFzeW5jLlxuICovXG5leHBvcnQgZW51bSBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZSB7XG4gIFN5bmMgPSBcInN5bmNcIixcbiAgQXN5bmMgPSBcImFzeW5jXCIsXG59XG5cbi8qKlxuICogQW4gYXN5bmMgc3RlcCB0eXBlLlxuICovXG5leHBvcnQgZW51bSBBY3Rpb25Db250ZXh0QXN5bmNTdGVwVHlwZSB7XG4gIC8qKlxuICAgKiBUaGUgZmxvdyBpcyBhYm91dCB0byBzdGFydC5cbiAgICovXG4gIFNwYXduID0gXCJzcGF3blwiLFxuICAvKipcbiAgICogVGhlIGZsb3cgaXMgYWJvdXQgdG8gcmV0dXJuIChmaW5pc2gpLlxuICAgKi9cbiAgUmV0dXJuID0gXCJyZXR1cm5cIixcbiAgLyoqXG4gICAqIFRoZSBmbG93IGlzIGFib3V0IHRvIGNvbnRpbnVlLlxuICAgKi9cbiAgUmVzdW1lID0gXCJyZXN1bWVcIixcbiAgLyoqXG4gICAqIFRoZSBmbG93IHlpZWxkIGp1c3QgdGhyZXcsIHdoaWNoIG1pZ2h0IGJlIHJlY292ZXJlZCAoY2F1Z2h0KSBvciBub3QuXG4gICAqL1xuICBSZXN1bWVFcnJvciA9IFwicmVzdW1lRXJyb3JcIixcbiAgLyoqXG4gICAqIFRoZSBmbG93IGlzIGFib3V0IHRvIHRocm93IGFuIGVycm9yIHRvIHRoZSBmbG93IGNhbGxlci5cbiAgICovXG4gIFRocm93ID0gXCJ0aHJvd1wiLFxufVxuXG5sZXQgY3VycmVudEFjdGlvbkNvbnRleHQ6IEFjdGlvbkNvbnRleHQgfCB1bmRlZmluZWRcblxuLyoqXG4gKiBHZXRzIHRoZSBjdXJyZW50bHkgcnVubmluZyBhY3Rpb24gY29udGV4dCwgb3IgdW5kZWZpbmVkIGlmIG5vbmUuXG4gKlxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEN1cnJlbnRBY3Rpb25Db250ZXh0KCk6IEFjdGlvbkNvbnRleHQgfCB1bmRlZmluZWQge1xuICByZXR1cm4gY3VycmVudEFjdGlvbkNvbnRleHRcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBTZXRzIHRoZSBjdXJyZW50IGFjdGlvbiBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSBjdHggQ3VycmVudCBhY3Rpb24gY29udGV4dC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldEN1cnJlbnRBY3Rpb25Db250ZXh0KGN0eDogQWN0aW9uQ29udGV4dCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICBjdXJyZW50QWN0aW9uQ29udGV4dCA9IGN0eFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJJQW9EWTtVQUFBOzs7QUFHWixHQUhZO0lBUUE7VUFBQTs7Ozs7O0FBcUJaLEdBckJZO0FBdUJaLElBQUk7O1NBUUs7QUFDVDtpQ0FTd0M7eUJBQ2Y7QUFDekI7OyJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
var HookAction;
|
|
2
|
+
(function(HookAction2) {
|
|
3
|
+
HookAction2["OnInit"] = "$$onInit";
|
|
4
|
+
HookAction2["OnLazyInit"] = "$$onLazyInit";
|
|
5
|
+
HookAction2["OnAttachedToRootStore"] = "$$onAttachedToRootStore";
|
|
6
|
+
HookAction2["OnAttachedToRootStoreDisposer"] = "$$onAttachedToRootStoreDisposer";
|
|
7
|
+
})(HookAction || (HookAction = {}));
|
|
8
|
+
const hookActionValues = new Set(Object.values(HookAction));
|
|
9
|
+
function isHookAction(actionName) {
|
|
10
|
+
return hookActionValues.has(actionName);
|
|
11
|
+
}
|
|
12
|
+
export { HookAction, isHookAction };
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va0FjdGlvbnMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vaG9va0FjdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBIGhvb2sgYWN0aW9uLlxuICovXG5leHBvcnQgZW51bSBIb29rQWN0aW9uIHtcbiAgLyoqXG4gICAqIG9uSW5pdCBob29rXG4gICAqL1xuICBPbkluaXQgPSBcIiQkb25Jbml0XCIsXG4gIC8qKlxuICAgKiBvbkxhenlJbml0IGhvb2tcbiAgICovXG4gIE9uTGF6eUluaXQgPSBcIiQkb25MYXp5SW5pdFwiLFxuICAvKipcbiAgICogb25BdHRhY2hlZFRvUm9vdFN0b3JlIGhvb2tcbiAgICovXG4gIE9uQXR0YWNoZWRUb1Jvb3RTdG9yZSA9IFwiJCRvbkF0dGFjaGVkVG9Sb290U3RvcmVcIixcbiAgLyoqXG4gICAqIGRpc3Bvc2VyIGZvciBvbkF0dGFjaGVkVG9Sb290U3RvcmUgaG9va1xuICAgKi9cbiAgT25BdHRhY2hlZFRvUm9vdFN0b3JlRGlzcG9zZXIgPSBcIiQkb25BdHRhY2hlZFRvUm9vdFN0b3JlRGlzcG9zZXJcIixcbn1cblxuY29uc3QgaG9va0FjdGlvblZhbHVlczogUmVhZG9ubHlTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoT2JqZWN0LnZhbHVlcyhIb29rQWN0aW9uKSlcblxuLyoqXG4gKiBSZXR1cm5zIGlmIGEgZ2l2ZW4gYWN0aW9uIG5hbWUgY29ycmVzcG9uZHMgdG8gYSBob29rLCB0aGlzIGlzLCBvbmUgb2Y6XG4gKiAtIG9uSW5pdCgpIGhvb2tcbiAqIC0gb25MYXp5SW5pdCgpIGhvb2tcbiAqIC0gb25BdHRhY2hlZFRvUm9vdFN0b3JlKCkgaG9va1xuICogLSBkaXNwb3NlciByZXR1cm5lZCBieSBhIG9uQXR0YWNoZWRUb1Jvb3RTdG9yZSgpIGhvb2tcbiAqXG4gKiBAcGFyYW0gYWN0aW9uTmFtZSBBY3Rpb24gbmFtZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHRydWUgaWYgaXQgaXMgYSBob29rLCBmYWxzZSBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0hvb2tBY3Rpb24oYWN0aW9uTmFtZTogc3RyaW5nKTogYWN0aW9uTmFtZSBpcyBIb29rQWN0aW9uIHtcbiAgcmV0dXJuIGhvb2tBY3Rpb25WYWx1ZXMuaGFzKGFjdGlvbk5hbWUpXG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IklBR1k7VUFBQTs7Ozs7QUFpQlosR0FqQlk7QUFtQlosTUFBTSxtQkFBd0MsSUFBSSxJQUFJLE9BQU8sT0FBTyxVQUFVLENBQUM7c0JBWWxEO1NBQ3BCLGlCQUFpQixJQUFJLFVBQVU7QUFDeEM7OyJ9
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
const modelActionSymbol = Symbol("modelAction");
|
|
2
|
+
function isModelAction(fn) {
|
|
3
|
+
return typeof fn === "function" && modelActionSymbol in fn;
|
|
4
|
+
}
|
|
5
|
+
export { isModelAction, modelActionSymbol };
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNNb2RlbEFjdGlvbi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FjdGlvbi9pc01vZGVsQWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjb25zdCBtb2RlbEFjdGlvblN5bWJvbCA9IFN5bWJvbChcIm1vZGVsQWN0aW9uXCIpXG5cbi8qKlxuICogUmV0dXJucyBpZiB0aGUgZ2l2ZW4gZnVuY3Rpb24gaXMgYSBtb2RlbCBhY3Rpb24gb3Igbm90LlxuICpcbiAqIEBwYXJhbSBmbiBGdW5jdGlvbiB0byBjaGVjay5cbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc01vZGVsQWN0aW9uKGZuOiAoLi4uYXJnczogYW55W10pID0+IGFueSk6IGJvb2xlYW4ge1xuICByZXR1cm4gdHlwZW9mIGZuID09PSBcImZ1bmN0aW9uXCIgJiYgbW9kZWxBY3Rpb25TeW1ib2wgaW4gZm5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiTUFHYSxvQkFBb0IsT0FBTyxhQUFhO3VCQVF2QjtTQUNyQixPQUFPLE9BQU8sY0FBYyxxQkFBcUI7QUFDMUQ7OyJ9
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { fastGetParent } from "../parent/path.js";
|
|
2
|
+
import { isChildOfParent } from "../parent/path2.js";
|
|
3
|
+
import { assertTweakedObject } from "../tweaker/core.js";
|
|
4
|
+
import { assertIsObject, assertIsFunction, failure, deleteFromArray } from "../utils/index.js";
|
|
5
|
+
const perObjectActionMiddlewares = /* @__PURE__ */ new WeakMap();
|
|
6
|
+
const perObjectActionMiddlewaresIterator = /* @__PURE__ */ new WeakMap();
|
|
7
|
+
function getActionMiddlewares(obj) {
|
|
8
|
+
let iterable = perObjectActionMiddlewaresIterator.get(obj);
|
|
9
|
+
if (!iterable) {
|
|
10
|
+
iterable = {
|
|
11
|
+
[Symbol.iterator]() {
|
|
12
|
+
let current = obj;
|
|
13
|
+
function getCurrentIterator() {
|
|
14
|
+
const objMwares = current ? perObjectActionMiddlewares.get(current) : void 0;
|
|
15
|
+
if (!objMwares || objMwares.length <= 0) {
|
|
16
|
+
return void 0;
|
|
17
|
+
}
|
|
18
|
+
return objMwares[Symbol.iterator]();
|
|
19
|
+
}
|
|
20
|
+
function findNextIterator() {
|
|
21
|
+
let nextIter;
|
|
22
|
+
while (current && !nextIter) {
|
|
23
|
+
current = fastGetParent(current);
|
|
24
|
+
nextIter = getCurrentIterator();
|
|
25
|
+
}
|
|
26
|
+
return nextIter;
|
|
27
|
+
}
|
|
28
|
+
let iter = getCurrentIterator();
|
|
29
|
+
if (!iter) {
|
|
30
|
+
iter = findNextIterator();
|
|
31
|
+
}
|
|
32
|
+
const iterator = {
|
|
33
|
+
next() {
|
|
34
|
+
if (!iter) {
|
|
35
|
+
return { value: void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
let result = iter.next();
|
|
38
|
+
if (!result.done) {
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
iter = findNextIterator();
|
|
42
|
+
return this.next();
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
return iterator;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
perObjectActionMiddlewaresIterator.set(obj, iterable);
|
|
49
|
+
}
|
|
50
|
+
return iterable;
|
|
51
|
+
}
|
|
52
|
+
function addActionMiddleware(mware) {
|
|
53
|
+
assertIsObject(mware, "middleware");
|
|
54
|
+
let { middleware, filter, subtreeRoot } = mware;
|
|
55
|
+
assertTweakedObject(subtreeRoot, "middleware.subtreeRoot");
|
|
56
|
+
assertIsFunction(middleware, "middleware.middleware");
|
|
57
|
+
if (filter && typeof filter !== "function") {
|
|
58
|
+
throw failure("middleware.filter must be a function or undefined");
|
|
59
|
+
}
|
|
60
|
+
if (subtreeRoot) {
|
|
61
|
+
const targetFilter = (ctx) => ctx.target === subtreeRoot || isChildOfParent(ctx.target, subtreeRoot);
|
|
62
|
+
if (!filter) {
|
|
63
|
+
filter = targetFilter;
|
|
64
|
+
} else {
|
|
65
|
+
const customFilter = filter;
|
|
66
|
+
filter = (ctx) => {
|
|
67
|
+
return targetFilter(ctx) && customFilter(ctx);
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
const actualMware = { middleware, filter };
|
|
72
|
+
let objMwares = perObjectActionMiddlewares.get(subtreeRoot);
|
|
73
|
+
if (!objMwares) {
|
|
74
|
+
objMwares = [actualMware];
|
|
75
|
+
perObjectActionMiddlewares.set(subtreeRoot, objMwares);
|
|
76
|
+
} else {
|
|
77
|
+
objMwares.push(actualMware);
|
|
78
|
+
}
|
|
79
|
+
return () => {
|
|
80
|
+
deleteFromArray(objMwares, actualMware);
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
export { addActionMiddleware, getActionMiddlewares };
|
|
84
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FjdGlvbi9taWRkbGV3YXJlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZhc3RHZXRQYXJlbnQgfSBmcm9tIFwiLi4vcGFyZW50L3BhdGhcIlxuaW1wb3J0IHsgaXNDaGlsZE9mUGFyZW50IH0gZnJvbSBcIi4uL3BhcmVudC9wYXRoMlwiXG5pbXBvcnQgeyBhc3NlcnRUd2Vha2VkT2JqZWN0IH0gZnJvbSBcIi4uL3R3ZWFrZXIvY29yZVwiXG5pbXBvcnQgeyBhc3NlcnRJc0Z1bmN0aW9uLCBhc3NlcnRJc09iamVjdCwgZGVsZXRlRnJvbUFycmF5LCBmYWlsdXJlIH0gZnJvbSBcIi4uL3V0aWxzXCJcbmltcG9ydCB0eXBlIHsgQWN0aW9uQ29udGV4dCB9IGZyb20gXCIuL2NvbnRleHRcIlxuXG4vKipcbiAqIEFuIGFjdGlvbiBtaWRkbGV3YXJlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbk1pZGRsZXdhcmUge1xuICAvKipcbiAgICogU3VidHJlZSByb290IG9iamVjdCAob2JqZWN0IGFuZCBjaGlsZCBvYmplY3RzKSB0aGlzIG1pZGRsZXdhcmUgd2lsbCBydW4gZm9yLlxuICAgKiBUaGlzIHRhcmdldCBcImZpbHRlclwiIHdpbGwgYmUgcnVuIGJlZm9yZSB0aGUgY3VzdG9tIGZpbHRlci5cbiAgICovXG4gIHJlYWRvbmx5IHN1YnRyZWVSb290OiBvYmplY3RcblxuICAvKipcbiAgICogQSBmaWx0ZXIgZnVuY3Rpb24gdG8gZGVjaWRlIGlmIGFuIGFjdGlvbiBtaWRkbGV3YXJlIGZ1bmN0aW9uIHNob3VsZCBiZSBydW4gb3Igbm90LlxuICAgKi9cbiAgZmlsdGVyPyhjdHg6IEFjdGlvbkNvbnRleHQpOiBib29sZWFuXG5cbiAgLyoqXG4gICAqIEFuIGFjdGlvbiBtaWRkbGV3YXJlIGZ1bmN0aW9uLlxuICAgKiBSZW1iZXIgdG8gYHJldHVybiBuZXh0KClgIGlmIHlvdSB3YW50IHRvIGNvbnRpbnVlIHRoZSBhY3Rpb24gb3IgdGhyb3cgaWYgeW91IHdhbnQgdG8gY2FuY2VsIGl0LlxuICAgKi9cbiAgbWlkZGxld2FyZShjdHg6IEFjdGlvbkNvbnRleHQsIG5leHQ6ICgpID0+IGFueSk6IGFueVxufVxuXG4vKipcbiAqIFRoZSBkaXNwb3NlciBvZiBhbiBhY3Rpb24gbWlkZGxld2FyZS5cbiAqL1xuZXhwb3J0IHR5cGUgQWN0aW9uTWlkZGxld2FyZURpc3Bvc2VyID0gKCkgPT4gdm9pZFxuXG50eXBlIFBhcnRpYWxBY3Rpb25NaWRkbGV3YXJlID0gUGljazxBY3Rpb25NaWRkbGV3YXJlLCBcImZpbHRlclwiIHwgXCJtaWRkbGV3YXJlXCI+XG5cbmNvbnN0IHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzID0gbmV3IFdlYWtNYXA8b2JqZWN0LCBQYXJ0aWFsQWN0aW9uTWlkZGxld2FyZVtdPigpXG5cbmludGVyZmFjZSBBY3Rpb25NaWRkbGV3YXJlc0l0ZXJhdG9yIGV4dGVuZHMgSXRlcmFibGU8UGFydGlhbEFjdGlvbk1pZGRsZXdhcmU+IHt9XG5cbmNvbnN0IHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzSXRlcmF0b3IgPSBuZXcgV2Vha01hcDxvYmplY3QsIEFjdGlvbk1pZGRsZXdhcmVzSXRlcmF0b3I+KClcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBHZXRzIHRoZSBjdXJyZW50IGFjdGlvbiBtaWRkbGV3YXJlcyB0byBiZSBydW4gb3ZlciBhIGdpdmVuIG9iamVjdCBhcyBhbiBpdGVyYWJsZSBvYmplY3QuXG4gKlxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFjdGlvbk1pZGRsZXdhcmVzKG9iajogb2JqZWN0KTogQWN0aW9uTWlkZGxld2FyZXNJdGVyYXRvciB7XG4gIC8vIHdoZW4gd2UgY2FsbCBhIG1pZGRsZXdhcmUgd2Ugd2lsbCBjYWxsIHRoZSBtaWRkbGV3YXJlcyBvZiB0aGF0IG9iamVjdCBwbHVzIGFsbCBwYXJlbnQgb2JqZWN0c1xuICAvLyB0aGUgcGFyZW50IG9iamVjdCBtaWRkbGV3YXJlcyBhcmUgcnVuIGxhc3RcblxuICAvLyBzaW5jZSBhbiBhcnJheSBsaWtlIFthLCBiLCBjXSB3aWxsIGJlIGNhbGxlZCBsaWtlIGMoYihhKCkpKSB0aGlzIG1lYW5zIHRoYXQgd2UgbmVlZCB0byBwdXRcbiAgLy8gdGhlIHBhcmVudCBvYmplY3Qgb25lcyBhdCB0aGUgZW5kIG9mIHRoZSBhcnJheVxuXG4gIGxldCBpdGVyYWJsZSA9IHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzSXRlcmF0b3IuZ2V0KG9iailcbiAgaWYgKCFpdGVyYWJsZSkge1xuICAgIGl0ZXJhYmxlID0ge1xuICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7XG4gICAgICAgIGxldCBjdXJyZW50OiBhbnkgPSBvYmpcblxuICAgICAgICBmdW5jdGlvbiBnZXRDdXJyZW50SXRlcmF0b3IoKSB7XG4gICAgICAgICAgY29uc3Qgb2JqTXdhcmVzID0gY3VycmVudCA/IHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzLmdldChjdXJyZW50KSA6IHVuZGVmaW5lZFxuICAgICAgICAgIGlmICghb2JqTXdhcmVzIHx8IG9iak13YXJlcy5sZW5ndGggPD0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gb2JqTXdhcmVzW1N5bWJvbC5pdGVyYXRvcl0oKVxuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gZmluZE5leHRJdGVyYXRvcigpIHtcbiAgICAgICAgICBsZXQgbmV4dEl0ZXJcbiAgICAgICAgICB3aGlsZSAoY3VycmVudCAmJiAhbmV4dEl0ZXIpIHtcbiAgICAgICAgICAgIGN1cnJlbnQgPSBmYXN0R2V0UGFyZW50KGN1cnJlbnQpXG4gICAgICAgICAgICBuZXh0SXRlciA9IGdldEN1cnJlbnRJdGVyYXRvcigpXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBuZXh0SXRlclxuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGl0ZXIgPSBnZXRDdXJyZW50SXRlcmF0b3IoKVxuICAgICAgICBpZiAoIWl0ZXIpIHtcbiAgICAgICAgICBpdGVyID0gZmluZE5leHRJdGVyYXRvcigpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpdGVyYXRvcjogSXRlcmF0b3I8UGFydGlhbEFjdGlvbk1pZGRsZXdhcmU+ID0ge1xuICAgICAgICAgIG5leHQoKSB7XG4gICAgICAgICAgICBpZiAoIWl0ZXIpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IHVuZGVmaW5lZCwgZG9uZTogdHJ1ZSB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCByZXN1bHQgPSBpdGVyLm5leHQoKVxuICAgICAgICAgICAgaWYgKCFyZXN1bHQuZG9uZSkge1xuICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGl0ZXIgPSBmaW5kTmV4dEl0ZXJhdG9yKClcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5leHQoKVxuICAgICAgICAgIH0sXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlcmF0b3JcbiAgICAgIH0sXG4gICAgfVxuICAgIHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzSXRlcmF0b3Iuc2V0KG9iaiwgaXRlcmFibGUpXG4gIH1cbiAgcmV0dXJuIGl0ZXJhYmxlXG59XG5cbi8qKlxuICogQWRkcyBhIGdsb2JhbCBhY3Rpb24gbWlkZGxld2FyZSB0byBiZSBydW4gd2hlbiBhbiBhY3Rpb24gaXMgcGVyZm9ybWVkLlxuICogSXQgaXMgdXN1YWxseSBwcmVmZXJhYmxlIHRvIHVzZSBgb25BY3Rpb25NaWRkbGV3YXJlYCBpbnN0ZWFkIHRvIGxpbWl0IGl0IHRvIGEgZ2l2ZW4gdHJlZSBhbmQgb25seSB0byB0b3Btb3N0IGxldmVsIGFjdGlvbnNcbiAqIG9yIGBhY3Rpb25UcmFja2luZ01pZGRsZXdhcmVgIGZvciBhIHNpbXBsaWZpZWQgbWlkZGxld2FyZS5cbiAqXG4gKiBAcGFyYW0gbXdhcmUgQWN0aW9uIG1pZGRsZXdhcmUgdG8gYmUgcnVuLlxuICogQHJldHVybnMgQSBkaXNwb3NlciB0byBjYW5jZWwgdGhlIG1pZGRsZXdhcmUuIE5vdGUgdGhhdCBpZiB5b3UgZG9uJ3QgcGxhbiB0byBkbyBhbiBlYXJseSBkaXNwb3NhbCBvZiB0aGUgbWlkZGxld2FyZVxuICogY2FsbGluZyB0aGlzIGZ1bmN0aW9uIGJlY29tZXMgb3B0aW9uYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZGRBY3Rpb25NaWRkbGV3YXJlKG13YXJlOiBBY3Rpb25NaWRkbGV3YXJlKTogQWN0aW9uTWlkZGxld2FyZURpc3Bvc2VyIHtcbiAgYXNzZXJ0SXNPYmplY3QobXdhcmUsIFwibWlkZGxld2FyZVwiKVxuXG4gIGxldCB7IG1pZGRsZXdhcmUsIGZpbHRlciwgc3VidHJlZVJvb3QgfSA9IG13YXJlXG5cbiAgYXNzZXJ0VHdlYWtlZE9iamVjdChzdWJ0cmVlUm9vdCwgXCJtaWRkbGV3YXJlLnN1YnRyZWVSb290XCIpXG4gIGFzc2VydElzRnVuY3Rpb24obWlkZGxld2FyZSwgXCJtaWRkbGV3YXJlLm1pZGRsZXdhcmVcIilcbiAgaWYgKGZpbHRlciAmJiB0eXBlb2YgZmlsdGVyICE9PSBcImZ1bmN0aW9uXCIpIHtcbiAgICB0aHJvdyBmYWlsdXJlKFwibWlkZGxld2FyZS5maWx0ZXIgbXVzdCBiZSBhIGZ1bmN0aW9uIG9yIHVuZGVmaW5lZFwiKVxuICB9XG5cbiAgLy8gcmVtaW5kZXI6IG5ldmVyIHR1cm4gbWlkZGxld2FyZXMgaW50byBhY3Rpb25zIG9yIGVsc2VcbiAgLy8gcmVhY3Rpb25zIHdpbGwgbm90IGJlIHBpY2tlZCB1cCBieSB0aGUgdW5kbyBtYW5hZ2VyXG5cbiAgaWYgKHN1YnRyZWVSb290KSB7XG4gICAgY29uc3QgdGFyZ2V0RmlsdGVyID0gKGN0eDogQWN0aW9uQ29udGV4dCkgPT5cbiAgICAgIGN0eC50YXJnZXQgPT09IHN1YnRyZWVSb290IHx8IGlzQ2hpbGRPZlBhcmVudChjdHgudGFyZ2V0LCBzdWJ0cmVlUm9vdCEpXG5cbiAgICBpZiAoIWZpbHRlcikge1xuICAgICAgZmlsdGVyID0gdGFyZ2V0RmlsdGVyXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGN1c3RvbUZpbHRlciA9IGZpbHRlclxuICAgICAgZmlsdGVyID0gKGN0eCkgPT4ge1xuICAgICAgICByZXR1cm4gdGFyZ2V0RmlsdGVyKGN0eCkgJiYgY3VzdG9tRmlsdGVyKGN0eClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb25zdCBhY3R1YWxNd2FyZSA9IHsgbWlkZGxld2FyZSwgZmlsdGVyIH1cblxuICBsZXQgb2JqTXdhcmVzID0gcGVyT2JqZWN0QWN0aW9uTWlkZGxld2FyZXMuZ2V0KHN1YnRyZWVSb290KSFcbiAgaWYgKCFvYmpNd2FyZXMpIHtcbiAgICBvYmpNd2FyZXMgPSBbYWN0dWFsTXdhcmVdXG4gICAgcGVyT2JqZWN0QWN0aW9uTWlkZGxld2FyZXMuc2V0KHN1YnRyZWVSb290LCBvYmpNd2FyZXMpXG4gIH0gZWxzZSB7XG4gICAgb2JqTXdhcmVzLnB1c2goYWN0dWFsTXdhcmUpXG4gIH1cblxuICByZXR1cm4gKCkgPT4ge1xuICAgIGRlbGV0ZUZyb21BcnJheShvYmpNd2FyZXMsIGFjdHVhbE13YXJlKVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQW1DQSxNQUFNLGlEQUFpQztBQUl2QyxNQUFNLHlEQUF5Qzs4QkFTVjtNQU8vQixXQUFXLG1DQUFtQyxJQUFJLEdBQUc7TUFDckQsQ0FBQyxVQUFVO2VBQ0Y7QUFBQSxPQUNSLE9BQU87WUFDRixVQUFlOztnQkFHWCxZQUFZLFVBQVUsMkJBQTJCLElBQUksT0FBTyxJQUFJO2NBQ2xFLENBQUMsYUFBYSxVQUFVLFVBQVUsR0FBRzttQkFDaEM7QUFBQTtpQkFFRixVQUFVLE9BQU87OztjQUlwQjtpQkFDRyxXQUFXLENBQUMsVUFBVTtzQkFDakIsY0FBYyxPQUFPO3VCQUNwQjs7aUJBRU47QUFBQTtZQUdMLE9BQU87WUFDUCxDQUFDLE1BQU07aUJBQ0Y7O2NBR0gsV0FBOEM7QUFBQSxVQUNsRDtnQkFDTSxDQUFDLE1BQU07cUJBQ0YsRUFBRSxPQUFPLFFBQVcsTUFBTTs7Z0JBRy9CLFNBQVMsS0FBSztnQkFDZCxDQUFDLE9BQU8sTUFBTTtxQkFDVDtBQUFBO21CQUdGO21CQUNBLEtBQUs7OztlQUlUO0FBQUE7O3VDQUd3QixJQUFJLEtBQUssUUFBUTtBQUFBO1NBRS9DO0FBQ1Q7NkJBV29DO2lCQUNuQixPQUFPLFlBQVk7TUFFOUIsRUFBRSxZQUFZLFFBQVEsZ0JBQWdCO3NCQUV0QixhQUFhLHdCQUF3QjttQkFDeEMsWUFBWSx1QkFBdUI7TUFDaEQsVUFBVSxPQUFPLFdBQVcsWUFBWTtVQUNwQyxRQUFRLG1EQUFtRDtBQUFBO01BTS9ELGFBQWE7VUFDVCxlQUFlLENBQUMsUUFDcEIsSUFBSSxXQUFXLGVBQWUsZ0JBQWdCLElBQUksUUFBUSxXQUFZO1FBRXBFLENBQUMsUUFBUTtlQUNGO0FBQUEsV0FDSjtZQUNDLGVBQWU7ZUFDWixDQUFDO2VBQ0QsYUFBYSxHQUFHLEtBQUssYUFBYSxHQUFHO0FBQUE7OztRQUs1QyxjQUFjLEVBQUUsWUFBWTtNQUU5QixZQUFZLDJCQUEyQixJQUFJLFdBQVc7TUFDdEQsQ0FBQyxXQUFXO2dCQUNGLENBQUMsV0FBVzsrQkFDRyxJQUFJLGFBQWEsU0FBUztBQUFBLFNBQ2hEO2NBQ0ssS0FBSyxXQUFXO0FBQUE7U0FHckI7b0JBQ1csV0FBVyxXQUFXO0FBQUE7QUFFMUM7OyJ9
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { checkModelDecoratorArgs } from "../modelShared/checkModelDecoratorArgs.js";
|
|
2
|
+
import { decorateWrapMethodOrField, failure } from "../utils/index.js";
|
|
3
|
+
import { getActionNameAndContextOverride } from "./actionDecoratorUtils.js";
|
|
4
|
+
import { ActionContextActionType } from "./context.js";
|
|
5
|
+
import { isModelAction } from "./isModelAction.js";
|
|
6
|
+
import { wrapInAction } from "./wrapInAction.js";
|
|
7
|
+
function checkModelActionArgs(target, propertyKey, value) {
|
|
8
|
+
if (typeof value !== "function") {
|
|
9
|
+
throw failure("modelAction has to be used over functions");
|
|
10
|
+
}
|
|
11
|
+
checkModelDecoratorArgs("modelAction", target, propertyKey);
|
|
12
|
+
}
|
|
13
|
+
function modelAction(target, propertyKey, baseDescriptor) {
|
|
14
|
+
const { actionName, overrideContext } = getActionNameAndContextOverride(target, propertyKey);
|
|
15
|
+
return decorateWrapMethodOrField("modelAction", {
|
|
16
|
+
target,
|
|
17
|
+
propertyKey,
|
|
18
|
+
baseDescriptor
|
|
19
|
+
}, (data, fn) => {
|
|
20
|
+
if (isModelAction(fn)) {
|
|
21
|
+
return fn;
|
|
22
|
+
} else {
|
|
23
|
+
checkModelActionArgs(data.target, data.propertyKey, fn);
|
|
24
|
+
return wrapInAction({
|
|
25
|
+
nameOrNameFn: actionName,
|
|
26
|
+
fn,
|
|
27
|
+
actionType: ActionContextActionType.Sync,
|
|
28
|
+
overrideContext
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
export { modelAction };
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxBY3Rpb24uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vbW9kZWxBY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2hlY2tNb2RlbERlY29yYXRvckFyZ3MgfSBmcm9tIFwiLi4vbW9kZWxTaGFyZWQvY2hlY2tNb2RlbERlY29yYXRvckFyZ3NcIlxuaW1wb3J0IHsgZGVjb3JhdGVXcmFwTWV0aG9kT3JGaWVsZCwgZmFpbHVyZSB9IGZyb20gXCIuLi91dGlsc1wiXG5pbXBvcnQgeyBnZXRBY3Rpb25OYW1lQW5kQ29udGV4dE92ZXJyaWRlIH0gZnJvbSBcIi4vYWN0aW9uRGVjb3JhdG9yVXRpbHNcIlxuaW1wb3J0IHsgQWN0aW9uQ29udGV4dEFjdGlvblR5cGUgfSBmcm9tIFwiLi9jb250ZXh0XCJcbmltcG9ydCB7IGlzTW9kZWxBY3Rpb24gfSBmcm9tIFwiLi9pc01vZGVsQWN0aW9uXCJcbmltcG9ydCB7IHdyYXBJbkFjdGlvbiB9IGZyb20gXCIuL3dyYXBJbkFjdGlvblwiXG5cbmZ1bmN0aW9uIGNoZWNrTW9kZWxBY3Rpb25BcmdzKHRhcmdldDogYW55LCBwcm9wZXJ0eUtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgIT09IFwiZnVuY3Rpb25cIikge1xuICAgIHRocm93IGZhaWx1cmUoXCJtb2RlbEFjdGlvbiBoYXMgdG8gYmUgdXNlZCBvdmVyIGZ1bmN0aW9uc1wiKVxuICB9XG4gIGNoZWNrTW9kZWxEZWNvcmF0b3JBcmdzKFwibW9kZWxBY3Rpb25cIiwgdGFyZ2V0LCBwcm9wZXJ0eUtleSlcbn1cblxuLyoqXG4gKiBEZWNvcmF0b3IgdGhhdCB0dXJucyBhIGZ1bmN0aW9uIGludG8gYSBtb2RlbCBhY3Rpb24uXG4gKlxuICogQHBhcmFtIHRhcmdldFxuICogQHBhcmFtIHByb3BlcnR5S2V5XG4gKiBAcGFyYW0gW2Jhc2VEZXNjcmlwdG9yXVxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGVsQWN0aW9uKFxuICB0YXJnZXQ6IGFueSxcbiAgcHJvcGVydHlLZXk6IHN0cmluZyxcbiAgYmFzZURlc2NyaXB0b3I/OiBQcm9wZXJ0eURlc2NyaXB0b3Jcbik6IHZvaWQge1xuICBjb25zdCB7IGFjdGlvbk5hbWUsIG92ZXJyaWRlQ29udGV4dCB9ID0gZ2V0QWN0aW9uTmFtZUFuZENvbnRleHRPdmVycmlkZSh0YXJnZXQsIHByb3BlcnR5S2V5KVxuXG4gIHJldHVybiBkZWNvcmF0ZVdyYXBNZXRob2RPckZpZWxkKFxuICAgIFwibW9kZWxBY3Rpb25cIixcbiAgICB7XG4gICAgICB0YXJnZXQsXG4gICAgICBwcm9wZXJ0eUtleSxcbiAgICAgIGJhc2VEZXNjcmlwdG9yLFxuICAgIH0sXG4gICAgKGRhdGEsIGZuKSA9PiB7XG4gICAgICBpZiAoaXNNb2RlbEFjdGlvbihmbikpIHtcbiAgICAgICAgcmV0dXJuIGZuXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjaGVja01vZGVsQWN0aW9uQXJncyhkYXRhLnRhcmdldCwgZGF0YS5wcm9wZXJ0eUtleSwgZm4pXG5cbiAgICAgICAgcmV0dXJuIHdyYXBJbkFjdGlvbih7XG4gICAgICAgICAgbmFtZU9yTmFtZUZuOiBhY3Rpb25OYW1lLFxuICAgICAgICAgIGZuLFxuICAgICAgICAgIGFjdGlvblR5cGU6IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlLlN5bmMsXG4gICAgICAgICAgb3ZlcnJpZGVDb250ZXh0LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgKVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQU9BLDhCQUE4QixRQUFhLGFBQXFCO01BQzFELE9BQU8sVUFBVSxZQUFZO1VBQ3pCLFFBQVEsMkNBQTJDO0FBQUE7MEJBRW5DLGVBQWUsUUFBUSxXQUFXO0FBQzVEO3FCQVdFLFFBQ0EsYUFDQTtRQUVNLEVBQUUsWUFBWSxvQkFBb0IsZ0NBQWdDLFFBQVEsV0FBVztTQUVwRiwwQkFDTCxlQUNBO0FBQUEsSUFDRTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsS0FFRixDQUFDLE1BQU07UUFDRCxjQUFjLEVBQUUsR0FBRzthQUNkO0FBQUEsV0FDRjsyQkFDZ0IsS0FBSyxRQUFRLEtBQUssYUFBYSxFQUFFO2FBRS9DLGFBQWE7QUFBQSxRQUNsQixjQUFjO0FBQUEsUUFDZDtBQUFBLFFBQ0EsWUFBWSx3QkFBd0I7QUFBQSxRQUNwQztBQUFBLE9BQ0Q7QUFBQTtHQUVKO0FBRUw7OyJ9
|