mobx-keystone 0.68.0 → 0.68.1

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.
Files changed (349) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/esm/action/actionDecoratorUtils.mjs +25 -0
  3. package/dist/esm/action/applyAction.mjs +54 -0
  4. package/dist/esm/action/applyDelete.mjs +20 -0
  5. package/dist/esm/action/applyMethodCall.mjs +19 -0
  6. package/dist/esm/action/applySet.mjs +25 -0
  7. package/dist/esm/action/builtInActions.mjs +15 -0
  8. package/dist/esm/action/context.mjs +22 -0
  9. package/dist/esm/action/hookActions.mjs +13 -0
  10. package/dist/esm/action/isModelAction.mjs +6 -0
  11. package/dist/esm/action/middleware.mjs +84 -0
  12. package/dist/esm/action/modelAction.mjs +34 -0
  13. package/dist/esm/action/modelFlow.mjs +251 -0
  14. package/dist/esm/action/pendingActions.mjs +30 -0
  15. package/dist/esm/action/protection.mjs +19 -0
  16. package/dist/esm/action/runUnprotected.mjs +24 -0
  17. package/dist/esm/action/wrapInAction.mjs +90 -0
  18. package/dist/esm/actionMiddlewares/actionSerialization/actionSerialization.mjs +131 -0
  19. package/dist/esm/actionMiddlewares/actionSerialization/applySerializedAction.mjs +110 -0
  20. package/dist/esm/actionMiddlewares/actionSerialization/arraySerializer.mjs +15 -0
  21. package/dist/esm/actionMiddlewares/actionSerialization/core.mjs +3 -0
  22. package/dist/esm/actionMiddlewares/actionSerialization/dateSerializer.mjs +15 -0
  23. package/dist/esm/actionMiddlewares/actionSerialization/mapSerializer.mjs +32 -0
  24. package/dist/esm/actionMiddlewares/actionSerialization/objectPathSerializer.mjs +33 -0
  25. package/dist/esm/actionMiddlewares/actionSerialization/objectSnapshotSerializer.mjs +18 -0
  26. package/dist/esm/actionMiddlewares/actionSerialization/plainObjectSerializer.mjs +27 -0
  27. package/dist/esm/actionMiddlewares/actionSerialization/primitiveSerializer.mjs +39 -0
  28. package/dist/esm/actionMiddlewares/actionSerialization/setSerializer.mjs +29 -0
  29. package/dist/esm/actionMiddlewares/actionTrackingMiddleware.mjs +239 -0
  30. package/dist/esm/actionMiddlewares/onActionMiddleware.mjs +44 -0
  31. package/dist/esm/actionMiddlewares/readonlyMiddleware.mjs +49 -0
  32. package/dist/esm/actionMiddlewares/transactionMiddleware.mjs +69 -0
  33. package/dist/esm/actionMiddlewares/undoMiddleware.mjs +472 -0
  34. package/dist/esm/actionMiddlewares/utils.mjs +25 -0
  35. package/dist/esm/computedTree/computedTree.mjs +63 -0
  36. package/dist/esm/context/context.mjs +141 -0
  37. package/dist/esm/dataModel/BaseDataModel.mjs +108 -0
  38. package/dist/esm/dataModel/DataModel.mjs +32 -0
  39. package/dist/esm/dataModel/actions.mjs +12 -0
  40. package/dist/esm/dataModel/getDataModelMetadata.mjs +14 -0
  41. package/dist/esm/dataModel/newDataModel.mjs +31 -0
  42. package/dist/esm/dataModel/utils.mjs +29 -0
  43. package/dist/esm/frozen/Frozen.mjs +68 -0
  44. package/dist/esm/globalConfig/globalConfig.mjs +57 -0
  45. package/dist/esm/index.mjs +97 -0
  46. package/dist/esm/model/BaseModel.mjs +118 -0
  47. package/dist/esm/model/Model.mjs +36 -0
  48. package/dist/esm/model/getModelMetadata.mjs +19 -0
  49. package/dist/esm/model/metadata.mjs +7 -0
  50. package/dist/esm/model/newModel.mjs +95 -0
  51. package/dist/esm/model/utils.mjs +33 -0
  52. package/dist/esm/modelShared/BaseModelShared.mjs +9 -0
  53. package/dist/esm/modelShared/Model.mjs +249 -0
  54. package/dist/esm/modelShared/checkModelDecoratorArgs.mjs +21 -0
  55. package/dist/esm/modelShared/modelClassInitializer.mjs +14 -0
  56. package/dist/esm/modelShared/modelDecorator.mjs +117 -0
  57. package/dist/esm/modelShared/modelInfo.mjs +7 -0
  58. package/dist/esm/modelShared/modelPropsInfo.mjs +9 -0
  59. package/dist/esm/modelShared/modelSymbols.mjs +5 -0
  60. package/dist/esm/modelShared/newModel.mjs +13 -0
  61. package/dist/esm/modelShared/prop.mjs +138 -0
  62. package/dist/esm/modelShared/utils.mjs +10 -0
  63. package/dist/esm/parent/core.mjs +34 -0
  64. package/dist/esm/parent/coreObjectChildren.mjs +98 -0
  65. package/dist/esm/parent/detach.mjs +32 -0
  66. package/dist/esm/parent/findChildren.mjs +16 -0
  67. package/dist/esm/parent/findParent.mjs +30 -0
  68. package/dist/esm/parent/getChildrenObjects.mjs +12 -0
  69. package/dist/esm/parent/onChildAttachedTo.mjs +101 -0
  70. package/dist/esm/parent/path.mjs +149 -0
  71. package/dist/esm/parent/path2.mjs +12 -0
  72. package/dist/esm/parent/setParent.mjs +83 -0
  73. package/dist/esm/parent/walkTree.mjs +104 -0
  74. package/dist/esm/patch/applyPatches.mjs +118 -0
  75. package/dist/esm/patch/emitPatch.mjs +100 -0
  76. package/dist/esm/patch/jsonPatch.mjs +60 -0
  77. package/dist/esm/patch/patchRecorder.mjs +75 -0
  78. package/dist/esm/redux/connectReduxDevTools.mjs +153 -0
  79. package/dist/esm/redux/redux.mjs +60 -0
  80. package/dist/esm/ref/Ref.mjs +38 -0
  81. package/dist/esm/ref/core.mjs +179 -0
  82. package/dist/esm/ref/customRef.mjs +9 -0
  83. package/dist/esm/ref/rootRef.mjs +34 -0
  84. package/dist/esm/rootStore/attachDetach.mjs +53 -0
  85. package/dist/esm/rootStore/rootStore.mjs +50 -0
  86. package/dist/esm/snapshot/SnapshotterAndReconcilerPriority.mjs +9 -0
  87. package/dist/esm/snapshot/applySnapshot.mjs +92 -0
  88. package/dist/esm/snapshot/clone.mjs +29 -0
  89. package/dist/esm/snapshot/fromArraySnapshot.mjs +23 -0
  90. package/dist/esm/snapshot/fromFrozenSnapshot.mjs +13 -0
  91. package/dist/esm/snapshot/fromModelSnapshot.mjs +38 -0
  92. package/dist/esm/snapshot/fromPlainObjectSnapshot.mjs +26 -0
  93. package/dist/esm/snapshot/fromSnapshot.mjs +91 -0
  94. package/dist/esm/snapshot/getSnapshot.mjs +27 -0
  95. package/dist/esm/snapshot/internal.mjs +97 -0
  96. package/dist/esm/snapshot/onSnapshot.mjs +16 -0
  97. package/dist/esm/snapshot/reconcileArraySnapshot.mjs +40 -0
  98. package/dist/esm/snapshot/reconcileFrozenSnapshot.mjs +19 -0
  99. package/dist/esm/snapshot/reconcileModelSnapshot.mjs +77 -0
  100. package/dist/esm/snapshot/reconcilePlainObjectSnapshot.mjs +47 -0
  101. package/dist/esm/snapshot/reconcileSnapshot.mjs +49 -0
  102. package/dist/esm/snapshot/registerDefaultReconcilers.mjs +17 -0
  103. package/dist/esm/snapshot/registerDefaultSnapshotters.mjs +17 -0
  104. package/dist/esm/standardActions/actions.mjs +35 -0
  105. package/dist/esm/standardActions/arrayActions.mjs +66 -0
  106. package/dist/esm/standardActions/objectActions.mjs +36 -0
  107. package/dist/esm/standardActions/standaloneActions.mjs +9 -0
  108. package/dist/esm/transforms/ImmutableDate.mjs +51 -0
  109. package/dist/esm/transforms/asMap.mjs +29 -0
  110. package/dist/esm/transforms/asSet.mjs +12 -0
  111. package/dist/esm/transforms/bigint.mjs +14 -0
  112. package/dist/esm/transforms/date.mjs +27 -0
  113. package/dist/esm/treeUtils/deepEquals.mjs +40 -0
  114. package/dist/esm/treeUtils/draft.mjs +116 -0
  115. package/dist/esm/treeUtils/sandbox.mjs +158 -0
  116. package/dist/esm/tweaker/TweakerPriority.mjs +9 -0
  117. package/dist/esm/tweaker/core.mjs +38 -0
  118. package/dist/esm/tweaker/registerDefaultTweakers.mjs +17 -0
  119. package/dist/esm/tweaker/tweak.mjs +109 -0
  120. package/dist/esm/tweaker/tweakArray.mjs +272 -0
  121. package/dist/esm/tweaker/tweakFrozen.mjs +28 -0
  122. package/dist/esm/tweaker/tweakModel.mjs +26 -0
  123. package/dist/esm/tweaker/tweakPlainObject.mjs +205 -0
  124. package/dist/esm/tweaker/typeChecking.mjs +46 -0
  125. package/dist/esm/tweaker/withoutTypeChecking.mjs +15 -0
  126. package/dist/esm/types/TypeCheckError.mjs +31 -0
  127. package/dist/esm/types/TypeChecker.mjs +165 -0
  128. package/dist/esm/types/arrayBased/array.mjs +68 -0
  129. package/dist/esm/types/arrayBased/tuple.mjs +71 -0
  130. package/dist/esm/types/getTypeInfo.mjs +12 -0
  131. package/dist/esm/types/objectBased/arraySet.mjs +83 -0
  132. package/dist/esm/types/objectBased/dataModelData.mjs +95 -0
  133. package/dist/esm/types/objectBased/model.mjs +133 -0
  134. package/dist/esm/types/objectBased/object.mjs +119 -0
  135. package/dist/esm/types/objectBased/objectMap.mjs +90 -0
  136. package/dist/esm/types/objectBased/record.mjs +80 -0
  137. package/dist/esm/types/objectBased/ref.mjs +62 -0
  138. package/dist/esm/types/primitiveBased/enum.mjs +20 -0
  139. package/dist/esm/types/primitiveBased/primitives.mjs +59 -0
  140. package/dist/esm/types/primitiveBased/refinedPrimitives.mjs +6 -0
  141. package/dist/esm/types/registerDefaultStandardTypeResolvers.mjs +13 -0
  142. package/dist/esm/types/resolveTypeChecker.mjs +52 -0
  143. package/dist/esm/types/tProp.mjs +53 -0
  144. package/dist/esm/types/typeCheck.mjs +11 -0
  145. package/dist/esm/types/types.mjs +69 -0
  146. package/dist/esm/types/utility/maybe.mjs +10 -0
  147. package/dist/esm/types/utility/or.mjs +99 -0
  148. package/dist/esm/types/utility/refinement.mjs +52 -0
  149. package/dist/esm/types/utility/unchecked.mjs +10 -0
  150. package/dist/esm/utils/ModelPool.mjs +50 -0
  151. package/dist/esm/utils/chainFns.mjs +15 -0
  152. package/dist/esm/utils/index.mjs +228 -0
  153. package/dist/esm/utils/mapUtils.mjs +10 -0
  154. package/dist/esm/utils/tag.mjs +16 -0
  155. package/dist/esm/wrappers/ArraySet.mjs +85 -0
  156. package/dist/esm/wrappers/ObjectMap.mjs +96 -0
  157. package/dist/esm/wrappers/asMap.mjs +181 -0
  158. package/dist/esm/wrappers/asSet.mjs +97 -0
  159. package/dist/mobx-keystone.umd.js +44 -125
  160. package/dist/{action → types/action}/actionDecoratorUtils.d.ts +0 -0
  161. package/dist/{action → types/action}/applyAction.d.ts +0 -0
  162. package/dist/{action → types/action}/applyDelete.d.ts +0 -0
  163. package/dist/{action → types/action}/applyMethodCall.d.ts +0 -0
  164. package/dist/{action → types/action}/applySet.d.ts +0 -0
  165. package/dist/{action → types/action}/builtInActions.d.ts +0 -0
  166. package/dist/{action → types/action}/context.d.ts +0 -0
  167. package/dist/{action → types/action}/hookActions.d.ts +0 -0
  168. package/dist/{action → types/action}/index.d.ts +0 -0
  169. package/dist/{action → types/action}/isModelAction.d.ts +0 -0
  170. package/dist/{action → types/action}/middleware.d.ts +0 -0
  171. package/dist/{action → types/action}/modelAction.d.ts +0 -0
  172. package/dist/{action → types/action}/modelFlow.d.ts +0 -0
  173. package/dist/{action → types/action}/pendingActions.d.ts +0 -0
  174. package/dist/{action → types/action}/protection.d.ts +0 -0
  175. package/dist/{action → types/action}/runUnprotected.d.ts +0 -0
  176. package/dist/{action → types/action}/wrapInAction.d.ts +0 -0
  177. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/actionSerialization.d.ts +0 -0
  178. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/applySerializedAction.d.ts +0 -0
  179. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/arraySerializer.d.ts +0 -0
  180. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/core.d.ts +0 -0
  181. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/dateSerializer.d.ts +0 -0
  182. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/index.d.ts +0 -0
  183. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/mapSerializer.d.ts +0 -0
  184. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/objectPathSerializer.d.ts +0 -0
  185. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/objectSnapshotSerializer.d.ts +0 -0
  186. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/plainObjectSerializer.d.ts +0 -0
  187. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/primitiveSerializer.d.ts +0 -0
  188. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionSerialization/setSerializer.d.ts +0 -0
  189. package/dist/{actionMiddlewares → types/actionMiddlewares}/actionTrackingMiddleware.d.ts +0 -0
  190. package/dist/{actionMiddlewares → types/actionMiddlewares}/index.d.ts +0 -0
  191. package/dist/{actionMiddlewares → types/actionMiddlewares}/onActionMiddleware.d.ts +0 -0
  192. package/dist/{actionMiddlewares → types/actionMiddlewares}/readonlyMiddleware.d.ts +0 -0
  193. package/dist/{actionMiddlewares → types/actionMiddlewares}/transactionMiddleware.d.ts +0 -0
  194. package/dist/{actionMiddlewares → types/actionMiddlewares}/undoMiddleware.d.ts +0 -0
  195. package/dist/{actionMiddlewares → types/actionMiddlewares}/utils.d.ts +0 -0
  196. package/dist/{computedTree → types/computedTree}/computedTree.d.ts +0 -0
  197. package/dist/{computedTree → types/computedTree}/index.d.ts +0 -0
  198. package/dist/{context → types/context}/context.d.ts +0 -0
  199. package/dist/{context → types/context}/index.d.ts +0 -0
  200. package/dist/{dataModel → types/dataModel}/BaseDataModel.d.ts +0 -0
  201. package/dist/{dataModel → types/dataModel}/DataModel.d.ts +0 -0
  202. package/dist/{dataModel → types/dataModel}/DataModelConstructorOptions.d.ts +0 -0
  203. package/dist/{dataModel → types/dataModel}/actions.d.ts +0 -0
  204. package/dist/{dataModel → types/dataModel}/getDataModelMetadata.d.ts +0 -0
  205. package/dist/{dataModel → types/dataModel}/index.d.ts +0 -0
  206. package/dist/{dataModel → types/dataModel}/newDataModel.d.ts +0 -0
  207. package/dist/{dataModel → types/dataModel}/utils.d.ts +0 -0
  208. package/dist/{frozen → types/frozen}/Frozen.d.ts +0 -0
  209. package/dist/{frozen → types/frozen}/index.d.ts +0 -0
  210. package/dist/{globalConfig → types/globalConfig}/globalConfig.d.ts +0 -0
  211. package/dist/{globalConfig → types/globalConfig}/index.d.ts +0 -0
  212. package/dist/types/index.d.ts +22 -4
  213. package/dist/{model → types/model}/BaseModel.d.ts +0 -0
  214. package/dist/{model → types/model}/Model.d.ts +0 -0
  215. package/dist/{model → types/model}/ModelConstructorOptions.d.ts +0 -0
  216. package/dist/{model → types/model}/getModelMetadata.d.ts +0 -0
  217. package/dist/{model → types/model}/index.d.ts +0 -0
  218. package/dist/{model → types/model}/metadata.d.ts +0 -0
  219. package/dist/{model → types/model}/newModel.d.ts +0 -0
  220. package/dist/{model → types/model}/utils.d.ts +0 -0
  221. package/dist/{modelShared → types/modelShared}/BaseModelShared.d.ts +0 -0
  222. package/dist/{modelShared → types/modelShared}/Model.d.ts +0 -0
  223. package/dist/{modelShared → types/modelShared}/checkModelDecoratorArgs.d.ts +0 -0
  224. package/dist/{modelShared → types/modelShared}/index.d.ts +0 -0
  225. package/dist/{modelShared → types/modelShared}/modelClassInitializer.d.ts +0 -0
  226. package/dist/{modelShared → types/modelShared}/modelDecorator.d.ts +0 -0
  227. package/dist/{modelShared → types/modelShared}/modelInfo.d.ts +0 -0
  228. package/dist/{modelShared → types/modelShared}/modelPropsInfo.d.ts +0 -0
  229. package/dist/{modelShared → types/modelShared}/modelSymbols.d.ts +0 -0
  230. package/dist/{modelShared → types/modelShared}/newModel.d.ts +0 -0
  231. package/dist/{modelShared → types/modelShared}/prop.d.ts +0 -0
  232. package/dist/{modelShared → types/modelShared}/utils.d.ts +0 -0
  233. package/dist/{parent → types/parent}/core.d.ts +0 -0
  234. package/dist/{parent → types/parent}/coreObjectChildren.d.ts +0 -0
  235. package/dist/{parent → types/parent}/detach.d.ts +0 -0
  236. package/dist/{parent → types/parent}/findChildren.d.ts +0 -0
  237. package/dist/{parent → types/parent}/findParent.d.ts +0 -0
  238. package/dist/{parent → types/parent}/getChildrenObjects.d.ts +0 -0
  239. package/dist/{parent → types/parent}/index.d.ts +0 -0
  240. package/dist/{parent → types/parent}/onChildAttachedTo.d.ts +0 -0
  241. package/dist/{parent → types/parent}/path.d.ts +0 -0
  242. package/dist/{parent → types/parent}/path2.d.ts +0 -0
  243. package/dist/{parent → types/parent}/pathTypes.d.ts +0 -0
  244. package/dist/{parent → types/parent}/setParent.d.ts +0 -0
  245. package/dist/{parent → types/parent}/walkTree.d.ts +0 -0
  246. package/dist/{patch → types/patch}/Patch.d.ts +0 -0
  247. package/dist/{patch → types/patch}/applyPatches.d.ts +0 -0
  248. package/dist/{patch → types/patch}/emitPatch.d.ts +0 -0
  249. package/dist/{patch → types/patch}/index.d.ts +0 -0
  250. package/dist/{patch → types/patch}/jsonPatch.d.ts +0 -0
  251. package/dist/{patch → types/patch}/patchRecorder.d.ts +0 -0
  252. package/dist/{redux → types/redux}/connectReduxDevTools.d.ts +0 -0
  253. package/dist/{redux → types/redux}/index.d.ts +0 -0
  254. package/dist/{redux → types/redux}/redux.d.ts +0 -0
  255. package/dist/{ref → types/ref}/Ref.d.ts +0 -0
  256. package/dist/{ref → types/ref}/core.d.ts +0 -0
  257. package/dist/{ref → types/ref}/customRef.d.ts +0 -0
  258. package/dist/{ref → types/ref}/index.d.ts +0 -0
  259. package/dist/{ref → types/ref}/rootRef.d.ts +0 -0
  260. package/dist/{rootStore → types/rootStore}/attachDetach.d.ts +0 -0
  261. package/dist/{rootStore → types/rootStore}/index.d.ts +0 -0
  262. package/dist/{rootStore → types/rootStore}/rootStore.d.ts +0 -0
  263. package/dist/{snapshot → types/snapshot}/SnapshotOf.d.ts +0 -0
  264. package/dist/{snapshot → types/snapshot}/SnapshotterAndReconcilerPriority.d.ts +0 -0
  265. package/dist/{snapshot → types/snapshot}/applySnapshot.d.ts +0 -0
  266. package/dist/{snapshot → types/snapshot}/clone.d.ts +0 -0
  267. package/dist/{snapshot → types/snapshot}/fromArraySnapshot.d.ts +0 -0
  268. package/dist/{snapshot → types/snapshot}/fromFrozenSnapshot.d.ts +0 -0
  269. package/dist/{snapshot → types/snapshot}/fromModelSnapshot.d.ts +0 -0
  270. package/dist/{snapshot → types/snapshot}/fromPlainObjectSnapshot.d.ts +0 -0
  271. package/dist/{snapshot → types/snapshot}/fromSnapshot.d.ts +0 -0
  272. package/dist/{snapshot → types/snapshot}/getSnapshot.d.ts +0 -0
  273. package/dist/{snapshot → types/snapshot}/index.d.ts +0 -0
  274. package/dist/{snapshot → types/snapshot}/internal.d.ts +0 -0
  275. package/dist/{snapshot → types/snapshot}/onSnapshot.d.ts +0 -0
  276. package/dist/{snapshot → types/snapshot}/reconcileArraySnapshot.d.ts +0 -0
  277. package/dist/{snapshot → types/snapshot}/reconcileFrozenSnapshot.d.ts +0 -0
  278. package/dist/{snapshot → types/snapshot}/reconcileModelSnapshot.d.ts +0 -0
  279. package/dist/{snapshot → types/snapshot}/reconcilePlainObjectSnapshot.d.ts +0 -0
  280. package/dist/{snapshot → types/snapshot}/reconcileSnapshot.d.ts +0 -0
  281. package/dist/{snapshot → types/snapshot}/registerDefaultReconcilers.d.ts +0 -0
  282. package/dist/{snapshot → types/snapshot}/registerDefaultSnapshotters.d.ts +0 -0
  283. package/dist/{standardActions → types/standardActions}/actions.d.ts +0 -0
  284. package/dist/{standardActions → types/standardActions}/arrayActions.d.ts +0 -0
  285. package/dist/{standardActions → types/standardActions}/index.d.ts +0 -0
  286. package/dist/{standardActions → types/standardActions}/objectActions.d.ts +0 -0
  287. package/dist/{standardActions → types/standardActions}/standaloneActions.d.ts +0 -0
  288. package/dist/{transforms → types/transforms}/ImmutableDate.d.ts +0 -0
  289. package/dist/{transforms → types/transforms}/asMap.d.ts +0 -0
  290. package/dist/{transforms → types/transforms}/asSet.d.ts +0 -0
  291. package/dist/{transforms → types/transforms}/bigint.d.ts +0 -0
  292. package/dist/{transforms → types/transforms}/date.d.ts +0 -0
  293. package/dist/{transforms → types/transforms}/index.d.ts +0 -0
  294. package/dist/{treeUtils → types/treeUtils}/deepEquals.d.ts +0 -0
  295. package/dist/{treeUtils → types/treeUtils}/draft.d.ts +0 -0
  296. package/dist/{treeUtils → types/treeUtils}/index.d.ts +0 -0
  297. package/dist/{treeUtils → types/treeUtils}/sandbox.d.ts +0 -0
  298. package/dist/{tweaker → types/tweaker}/TweakerPriority.d.ts +0 -0
  299. package/dist/{tweaker → types/tweaker}/core.d.ts +0 -0
  300. package/dist/{tweaker → types/tweaker}/index.d.ts +0 -0
  301. package/dist/{tweaker → types/tweaker}/registerDefaultTweakers.d.ts +0 -0
  302. package/dist/{tweaker → types/tweaker}/tweak.d.ts +0 -0
  303. package/dist/{tweaker → types/tweaker}/tweakArray.d.ts +0 -0
  304. package/dist/{tweaker → types/tweaker}/tweakFrozen.d.ts +0 -0
  305. package/dist/{tweaker → types/tweaker}/tweakModel.d.ts +0 -0
  306. package/dist/{tweaker → types/tweaker}/tweakPlainObject.d.ts +0 -0
  307. package/dist/{tweaker → types/tweaker}/typeChecking.d.ts +0 -0
  308. package/dist/{tweaker → types/tweaker}/withoutTypeChecking.d.ts +0 -0
  309. package/dist/types/{TypeCheckError.d.ts → types/TypeCheckError.d.ts} +0 -0
  310. package/dist/types/{TypeChecker.d.ts → types/TypeChecker.d.ts} +0 -0
  311. package/dist/types/{arrayBased → types/arrayBased}/array.d.ts +0 -0
  312. package/dist/types/{arrayBased → types/arrayBased}/tuple.d.ts +0 -0
  313. package/dist/types/{getTypeInfo.d.ts → types/getTypeInfo.d.ts} +0 -0
  314. package/dist/types/types/index.d.ts +5 -0
  315. package/dist/types/{objectBased → types/objectBased}/arraySet.d.ts +0 -0
  316. package/dist/types/{objectBased → types/objectBased}/dataModelData.d.ts +0 -0
  317. package/dist/types/{objectBased → types/objectBased}/model.d.ts +0 -0
  318. package/dist/types/{objectBased → types/objectBased}/object.d.ts +0 -0
  319. package/dist/types/{objectBased → types/objectBased}/objectMap.d.ts +0 -0
  320. package/dist/types/{objectBased → types/objectBased}/record.d.ts +0 -0
  321. package/dist/types/{objectBased → types/objectBased}/ref.d.ts +0 -0
  322. package/dist/types/{primitiveBased → types/primitiveBased}/enum.d.ts +0 -0
  323. package/dist/types/{primitiveBased → types/primitiveBased}/primitives.d.ts +0 -0
  324. package/dist/types/{primitiveBased → types/primitiveBased}/refinedPrimitives.d.ts +0 -0
  325. package/dist/types/{registerDefaultStandardTypeResolvers.d.ts → types/registerDefaultStandardTypeResolvers.d.ts} +0 -0
  326. package/dist/types/{resolveTypeChecker.d.ts → types/resolveTypeChecker.d.ts} +0 -0
  327. package/dist/types/{schemas.d.ts → types/schemas.d.ts} +0 -0
  328. package/dist/types/{tProp.d.ts → types/tProp.d.ts} +0 -0
  329. package/dist/types/{typeCheck.d.ts → types/typeCheck.d.ts} +0 -0
  330. package/dist/types/{types.d.ts → types/types.d.ts} +0 -0
  331. package/dist/types/{utility → types/utility}/maybe.d.ts +0 -0
  332. package/dist/types/{utility → types/utility}/or.d.ts +0 -0
  333. package/dist/types/{utility → types/utility}/refinement.d.ts +0 -0
  334. package/dist/types/{utility → types/utility}/unchecked.d.ts +0 -0
  335. package/dist/{utils → types/utils}/ModelPool.d.ts +0 -0
  336. package/dist/{utils → types/utils}/chainFns.d.ts +0 -0
  337. package/dist/{utils → types/utils}/index.d.ts +0 -0
  338. package/dist/{utils → types/utils}/mapUtils.d.ts +0 -0
  339. package/dist/{utils → types/utils}/tag.d.ts +0 -0
  340. package/dist/{utils → types/utils}/types.d.ts +0 -0
  341. package/dist/{wrappers → types/wrappers}/ArraySet.d.ts +0 -0
  342. package/dist/{wrappers → types/wrappers}/ObjectMap.d.ts +0 -0
  343. package/dist/{wrappers → types/wrappers}/asMap.d.ts +0 -0
  344. package/dist/{wrappers → types/wrappers}/asSet.d.ts +0 -0
  345. package/dist/{wrappers → types/wrappers}/index.d.ts +0 -0
  346. package/package.json +10 -13
  347. package/dist/index.d.ts +0 -23
  348. package/dist/mobx-keystone.es.js +0 -7934
  349. package/dist/mobx-keystone.es.mjs +0 -7934
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Change Log
2
2
 
3
+ ## 0.68.1
4
+
5
+ - Split the ESM version in several files to improve the tree-shakeability of the library.
6
+
3
7
  ## 0.68.0
4
8
 
5
9
  - Removed side effects to improve the tree-shakeability of the library.
@@ -0,0 +1,25 @@
1
+ import { setDataModelAction } from "../dataModel/actions.mjs";
2
+ import { isDataModelClass, isDataModel } from "../dataModel/utils.mjs";
3
+ import { modelInfoByClass } from "../modelShared/modelInfo.mjs";
4
+ import { runAfterModelDecoratorSymbol } from "../modelShared/modelSymbols.mjs";
5
+ import { addLateInitializationFunction } from "../utils/index.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uRGVjb3JhdG9yVXRpbHMubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2FjdGlvbkRlY29yYXRvclV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNldERhdGFNb2RlbEFjdGlvbiB9IGZyb20gXCIuLi9kYXRhTW9kZWwvYWN0aW9uc1wiXG5pbXBvcnQgeyBpc0RhdGFNb2RlbCwgaXNEYXRhTW9kZWxDbGFzcyB9IGZyb20gXCIuLi9kYXRhTW9kZWwvdXRpbHNcIlxuaW1wb3J0IHsgbW9kZWxJbmZvQnlDbGFzcyB9IGZyb20gXCIuLi9tb2RlbFNoYXJlZC9tb2RlbEluZm9cIlxuaW1wb3J0IHsgcnVuQWZ0ZXJNb2RlbERlY29yYXRvclN5bWJvbCB9IGZyb20gXCIuLi9tb2RlbFNoYXJlZC9tb2RlbFN5bWJvbHNcIlxuaW1wb3J0IHsgYWRkTGF0ZUluaXRpYWxpemF0aW9uRnVuY3Rpb24gfSBmcm9tIFwiLi4vdXRpbHNcIlxuaW1wb3J0IHsgV3JhcEluQWN0aW9uT3ZlcnJpZGVDb250ZXh0Rm4gfSBmcm9tIFwiLi93cmFwSW5BY3Rpb25cIlxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aW9uTmFtZUFuZENvbnRleHRPdmVycmlkZShcbiAgdGFyZ2V0OiBhbnksXG4gIHByb3BlcnR5S2V5OiBzdHJpbmdcbik6IHtcbiAgYWN0aW9uTmFtZTogc3RyaW5nIHwgKCgpID0+IHN0cmluZylcbiAgb3ZlcnJpZGVDb250ZXh0OiBXcmFwSW5BY3Rpb25PdmVycmlkZUNvbnRleHRGbiB8IHVuZGVmaW5lZFxufSB7XG4gIGxldCBhY3Rpb25OYW1lOiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKSA9IHByb3BlcnR5S2V5XG4gIGxldCBvdmVycmlkZUNvbnRleHQ6IFdyYXBJbkFjdGlvbk92ZXJyaWRlQ29udGV4dEZuIHwgdW5kZWZpbmVkXG5cbiAgaWYgKGlzRGF0YU1vZGVsQ2xhc3ModGFyZ2V0KSB8fCBpc0RhdGFNb2RlbCh0YXJnZXQpKSB7XG4gICAgb3ZlcnJpZGVDb250ZXh0ID0gKGN0eCwgc2VsZikgPT4ge1xuICAgICAgY3R4LnRhcmdldCA9IHNlbGYuJFxuICAgIH1cblxuICAgIGxldCBmdWxsQWN0aW9uTmFtZTogc3RyaW5nXG4gICAgYWN0aW9uTmFtZSA9ICgpID0+IGZ1bGxBY3Rpb25OYW1lXG5cbiAgICBjb25zdCBtb2RlbENsYXNzOiBhbnkgPSBpc0RhdGFNb2RlbENsYXNzKHRhcmdldCkgPyB0YXJnZXQgOiB0YXJnZXQuY29uc3RydWN0b3JcblxuICAgIGFkZExhdGVJbml0aWFsaXphdGlvbkZ1bmN0aW9uKG1vZGVsQ2xhc3MsIHJ1bkFmdGVyTW9kZWxEZWNvcmF0b3JTeW1ib2wsIChmaW5hbENsYXNzKSA9PiB7XG4gICAgICBjb25zdCBtb2RlbEluZm8gPSBtb2RlbEluZm9CeUNsYXNzLmdldChmaW5hbENsYXNzKSFcbiAgICAgIGZ1bGxBY3Rpb25OYW1lID0gYGZuOjoke21vZGVsSW5mby5uYW1lfTo6JHtwcm9wZXJ0eUtleX1gXG4gICAgICBzZXREYXRhTW9kZWxBY3Rpb24oZnVsbEFjdGlvbk5hbWUsIG1vZGVsSW5mby5jbGFzcywgcHJvcGVydHlLZXkpXG4gICAgfSlcbiAgfVxuICByZXR1cm4geyBhY3Rpb25OYW1lLCBvdmVycmlkZUNvbnRleHQgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O3lDQVFFLFFBQ0E7TUFLSSxhQUFzQztNQUN0QztNQUVBLGlCQUFpQixNQUFNLEtBQUssWUFBWSxNQUFNLEdBQUc7c0JBQ2pDLENBQUMsS0FBSztVQUNsQixTQUFTLEtBQUs7QUFBQTtRQUdoQjtpQkFDUyxNQUFNO1VBRWIsYUFBa0IsaUJBQWlCLE1BQU0sSUFBSSxTQUFTLE9BQU87a0NBRXJDLFlBQVksOEJBQThCLENBQUM7WUFDakUsWUFBWSxpQkFBaUIsSUFBSSxVQUFVO3VCQUNoQyxPQUFPLFVBQVUsU0FBUzt5QkFDeEIsZ0JBQWdCLFVBQVUsT0FBTyxXQUFXO0FBQUEsS0FDaEU7QUFBQTtTQUVJLEVBQUUsWUFBWTtBQUN2Qjs7In0=
@@ -0,0 +1,54 @@
1
+ import { getDataModelAction } from "../dataModel/actions.mjs";
2
+ import { detach } from "../parent/detach.mjs";
3
+ import { resolvePathCheckingIds } from "../parent/path.mjs";
4
+ import { applyPatches } from "../patch/applyPatches.mjs";
5
+ import { applySnapshot } from "../snapshot/applySnapshot.mjs";
6
+ import { getStandaloneAction } from "../standardActions/actions.mjs";
7
+ import { assertTweakedObject } from "../tweaker/core.mjs";
8
+ import { failure } from "../utils/index.mjs";
9
+ import { applyDelete } from "./applyDelete.mjs";
10
+ import { applyMethodCall } from "./applyMethodCall.mjs";
11
+ import { applySet } from "./applySet.mjs";
12
+ import { BuiltInAction, isBuiltInAction } from "./builtInActions.mjs";
13
+ import { isHookAction } from "./hookActions.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlBY3Rpb24ubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2FwcGx5QWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldERhdGFNb2RlbEFjdGlvbiB9IGZyb20gXCIuLi9kYXRhTW9kZWwvYWN0aW9uc1wiXG5pbXBvcnQgeyBkZXRhY2ggfSBmcm9tIFwiLi4vcGFyZW50L2RldGFjaFwiXG5pbXBvcnQgeyByZXNvbHZlUGF0aENoZWNraW5nSWRzIH0gZnJvbSBcIi4uL3BhcmVudC9wYXRoXCJcbmltcG9ydCB7IFBhdGggfSBmcm9tIFwiLi4vcGFyZW50L3BhdGhUeXBlc1wiXG5pbXBvcnQgeyBhcHBseVBhdGNoZXMgfSBmcm9tIFwiLi4vcGF0Y2gvYXBwbHlQYXRjaGVzXCJcbmltcG9ydCB7IGFwcGx5U25hcHNob3QgfSBmcm9tIFwiLi4vc25hcHNob3QvYXBwbHlTbmFwc2hvdFwiXG5pbXBvcnQgeyBnZXRTdGFuZGFsb25lQWN0aW9uIH0gZnJvbSBcIi4uL3N0YW5kYXJkQWN0aW9ucy9hY3Rpb25zXCJcbmltcG9ydCB7IGFzc2VydFR3ZWFrZWRPYmplY3QgfSBmcm9tIFwiLi4vdHdlYWtlci9jb3JlXCJcbmltcG9ydCB7IGZhaWx1cmUgfSBmcm9tIFwiLi4vdXRpbHNcIlxuaW1wb3J0IHsgYXBwbHlEZWxldGUgfSBmcm9tIFwiLi9hcHBseURlbGV0ZVwiXG5pbXBvcnQgeyBhcHBseU1ldGhvZENhbGwgfSBmcm9tIFwiLi9hcHBseU1ldGhvZENhbGxcIlxuaW1wb3J0IHsgYXBwbHlTZXQgfSBmcm9tIFwiLi9hcHBseVNldFwiXG5pbXBvcnQgeyBCdWlsdEluQWN0aW9uLCBpc0J1aWx0SW5BY3Rpb24gfSBmcm9tIFwiLi9idWlsdEluQWN0aW9uc1wiXG5pbXBvcnQgeyBpc0hvb2tBY3Rpb24gfSBmcm9tIFwiLi9ob29rQWN0aW9uc1wiXG5cbi8qKlxuICogQW4gYWN0aW9uIGNhbGwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ2FsbCB7XG4gIC8qKlxuICAgKiBBY3Rpb24gbmFtZSAobmFtZSBvZiB0aGUgZnVuY3Rpb24pLlxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9uTmFtZTogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEFjdGlvbiBhcmd1bWVudHMuXG4gICAqL1xuICByZWFkb25seSBhcmdzOiBSZWFkb25seUFycmF5PGFueT5cblxuICAvKipcbiAgICogUGF0aCB0byB0aGUgbW9kZWwgd2hlcmUgdGhlIGFjdGlvbiB3aWxsIGJlIHJ1biwgYXMgYW4gYXJyYXkgb2Ygc3RyaW5nIHwgbnVtYmVyLlxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0UGF0aDogUGF0aFxuXG4gIC8qKlxuICAgKiBJZHMgb2YgbW9kZWxzIGFsb25nIHRoZSBwYXRoIHRvIHRoZSB0YXJnZXQsIG51bGwgaWYgaXQgaXMgbm90IGEgbW9kZWwuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRQYXRoSWRzOiBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bGw+XG5cbiAgLyoqXG4gICAqIE1hcmtzIHRoaXMgYWN0aW9uIGNhbGwgYXMgbm9uLXNlcmlhbGl6ZWQuXG4gICAqL1xuICByZWFkb25seSBzZXJpYWxpemVkPzogdW5kZWZpbmVkXG59XG5cbmNvbnN0IGJ1aWx0SW5BY3Rpb25Ub0Z1bmN0aW9uID0ge1xuICBbQnVpbHRJbkFjdGlvbi5BcHBseVNuYXBzaG90XTogYXBwbHlTbmFwc2hvdCxcbiAgW0J1aWx0SW5BY3Rpb24uQXBwbHlQYXRjaGVzXTogYXBwbHlQYXRjaGVzLFxuICBbQnVpbHRJbkFjdGlvbi5EZXRhY2hdOiBkZXRhY2gsXG4gIFtCdWlsdEluQWN0aW9uLkFwcGx5U2V0XTogYXBwbHlTZXQsXG4gIFtCdWlsdEluQWN0aW9uLkFwcGx5RGVsZXRlXTogYXBwbHlEZWxldGUsXG4gIFtCdWlsdEluQWN0aW9uLkFwcGx5TWV0aG9kQ2FsbF06IGFwcGx5TWV0aG9kQ2FsbCxcbn1cblxuLyoqXG4gKiBBcHBsaWVzIChydW5zKSBhbiBhY3Rpb24gb3ZlciBhIHRhcmdldCBvYmplY3QuXG4gKlxuICogSWYgeW91IGludGVuZCB0byBhcHBseSBzZXJpYWxpemVkIGFjdGlvbnMgY2hlY2sgb25lIG9mIHRoZSBgYXBwbHlTZXJpYWxpemVkQWN0aW9uYCBtZXRob2RzIGluc3RlYWQuXG4gKlxuICogQHBhcmFtIHN1YnRyZWVSb290IFN1YnRyZWUgcm9vdCB0YXJnZXQgb2JqZWN0IHRvIHJ1biB0aGUgYWN0aW9uIG92ZXIuXG4gKiBAcGFyYW0gY2FsbCBUaGUgYWN0aW9uLCB1c3VhbGx5IGFzIGNvbWluZyBmcm9tIGBvbkFjdGlvbk1pZGRsZXdhcmVgLlxuICogQHJldHVybnMgVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgYWN0aW9uLCBpZiBhbnkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcHBseUFjdGlvbjxUUmV0ID0gYW55PihzdWJ0cmVlUm9vdDogb2JqZWN0LCBjYWxsOiBBY3Rpb25DYWxsKTogVFJldCB7XG4gIGlmIChjYWxsLnNlcmlhbGl6ZWQpIHtcbiAgICB0aHJvdyBmYWlsdXJlKFxuICAgICAgXCJjYW5ub3QgYXBwbHkgYSBzZXJpYWxpemVkIGFjdGlvbiBjYWxsLCB1c2Ugb25lIG9mIHRoZSAnYXBwbHlTZXJpYWxpemVkQWN0aW9uJyBtZXRob2RzIGluc3RlYWRcIlxuICAgIClcbiAgfVxuXG4gIGFzc2VydFR3ZWFrZWRPYmplY3Qoc3VidHJlZVJvb3QsIFwic3VidHJlZVJvb3RcIilcblxuICAvLyByZXNvbHZlIHBhdGggd2hpbGUgY2hlY2tpbmcgaWRzXG4gIGNvbnN0IHsgdmFsdWU6IGN1cnJlbnQsIHJlc29sdmVkIH0gPSByZXNvbHZlUGF0aENoZWNraW5nSWRzKFxuICAgIHN1YnRyZWVSb290LFxuICAgIGNhbGwudGFyZ2V0UGF0aCxcbiAgICBjYWxsLnRhcmdldFBhdGhJZHNcbiAgKVxuICBpZiAoIXJlc29sdmVkKSB7XG4gICAgdGhyb3cgZmFpbHVyZShcbiAgICAgIGBvYmplY3QgYXQgcGF0aCAke0pTT04uc3RyaW5naWZ5KGNhbGwudGFyZ2V0UGF0aCl9IHdpdGggaWRzICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIGNhbGwudGFyZ2V0UGF0aElkc1xuICAgICAgKX0gY291bGQgbm90IGJlIHJlc29sdmVkYFxuICAgIClcbiAgfVxuICBhc3NlcnRUd2Vha2VkT2JqZWN0KGN1cnJlbnQsIGByZXNvbHZlZCAke2N1cnJlbnR9YCwgdHJ1ZSlcblxuICBpZiAoaXNCdWlsdEluQWN0aW9uKGNhbGwuYWN0aW9uTmFtZSkpIHtcbiAgICBjb25zdCBmblRvQ2FsbDogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkgPSBidWlsdEluQWN0aW9uVG9GdW5jdGlvbltjYWxsLmFjdGlvbk5hbWVdXG4gICAgaWYgKCFmblRvQ2FsbCkge1xuICAgICAgdGhyb3cgZmFpbHVyZShgYXNzZXJ0aW9uIGZhaWxlZDogdW5rbm93biBidWlsdC1pbiBhY3Rpb24gLSAke2NhbGwuYWN0aW9uTmFtZX1gKVxuICAgIH1cblxuICAgIHJldHVybiBmblRvQ2FsbC5hcHBseShjdXJyZW50LCBbY3VycmVudCwgLi4uY2FsbC5hcmdzXSlcbiAgfVxuXG4gIGlmIChpc0hvb2tBY3Rpb24oY2FsbC5hY3Rpb25OYW1lKSkge1xuICAgIHRocm93IGZhaWx1cmUoYGNhbGxzIHRvIGhvb2tzICgke2NhbGwuYWN0aW9uTmFtZX0pIGNhbm5vdCBiZSBhcHBsaWVkYClcbiAgfVxuXG4gIGNvbnN0IGRhdGFNb2RlbEFjdGlvbiA9IGdldERhdGFNb2RlbEFjdGlvbihjYWxsLmFjdGlvbk5hbWUpXG4gIGlmIChkYXRhTW9kZWxBY3Rpb24pIHtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gbmV3IGRhdGFNb2RlbEFjdGlvbi5tb2RlbENsYXNzKGN1cnJlbnQpXG4gICAgcmV0dXJuIGluc3RhbmNlW2RhdGFNb2RlbEFjdGlvbi5mbk5hbWVdLmFwcGx5KGluc3RhbmNlLCBjYWxsLmFyZ3MpXG4gIH1cblxuICBjb25zdCBzdGFuZGFsb25lQWN0aW9uID0gZ2V0U3RhbmRhbG9uZUFjdGlvbihjYWxsLmFjdGlvbk5hbWUpXG4gIGlmIChzdGFuZGFsb25lQWN0aW9uKSB7XG4gICAgcmV0dXJuIHN0YW5kYWxvbmVBY3Rpb24uYXBwbHkoY3VycmVudCwgY2FsbC5hcmdzIGFzIGFueSlcbiAgfVxuXG4gIHJldHVybiAoY3VycmVudCBhcyBhbnkpW2NhbGwuYWN0aW9uTmFtZV0uYXBwbHkoY3VycmVudCwgY2FsbC5hcmdzKVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUE2Q0EsTUFBTSwwQkFBMEI7QUFBQSxHQUM3QixjQUFjLGdCQUFnQjtBQUFBLEdBQzlCLGNBQWMsZUFBZTtBQUFBLEdBQzdCLGNBQWMsU0FBUztBQUFBLEdBQ3ZCLGNBQWMsV0FBVztBQUFBLEdBQ3pCLGNBQWMsY0FBYztBQUFBLEdBQzVCLGNBQWMsa0JBQWtCOztxQkFZSyxhQUFxQjtNQUN2RCxLQUFLLFlBQVk7VUFDYixRQUNKLCtGQUErRjtBQUFBO3NCQUkvRSxhQUFhLGFBQWE7UUFHeEMsRUFBRSxPQUFPLFNBQVMsYUFBYSx1QkFDbkMsYUFDQSxLQUFLLFlBQ0wsS0FBSyxhQUFhO01BRWhCLENBQUMsVUFBVTtVQUNQLFFBQ0osa0JBQWtCLEtBQUssVUFBVSxLQUFLLFVBQVUsY0FBYyxLQUFLLFVBQ2pFLEtBQUssYUFBYSx5QkFDSztBQUFBO3NCQUdULFNBQVMsWUFBWSxXQUFXLElBQUk7TUFFcEQsZ0JBQWdCLEtBQUssVUFBVSxHQUFHO1VBQzlCLFdBQW9DLHdCQUF3QixLQUFLO1FBQ25FLENBQUMsVUFBVTtZQUNQLFFBQVEsK0NBQStDLEtBQUssWUFBWTtBQUFBO1dBR3pFLFNBQVMsTUFBTSxTQUFTLENBQUMsU0FBUyxHQUFHLEtBQUssSUFBSSxDQUFDO0FBQUE7TUFHcEQsYUFBYSxLQUFLLFVBQVUsR0FBRztVQUMzQixRQUFRLG1CQUFtQixLQUFLLCtCQUErQjtBQUFBO1FBR2pFLGtCQUFrQixtQkFBbUIsS0FBSyxVQUFVO01BQ3RELGlCQUFpQjtVQUNiLFdBQWdCLElBQUksZ0JBQWdCLFdBQVcsT0FBTztXQUNyRCxTQUFTLGdCQUFnQixRQUFRLE1BQU0sVUFBVSxLQUFLLElBQUk7QUFBQTtRQUc3RCxtQkFBbUIsb0JBQW9CLEtBQUssVUFBVTtNQUN4RCxrQkFBa0I7V0FDYixpQkFBaUIsTUFBTSxTQUFTLEtBQUssSUFBVztBQUFBO1NBR2pELFFBQWdCLEtBQUssWUFBWSxNQUFNLFNBQVMsS0FBSyxJQUFJO0FBQ25FOzsifQ==
@@ -0,0 +1,20 @@
1
+ import { remove } from "mobx";
2
+ import { assertTweakedObject } from "../tweaker/core.mjs";
3
+ import { lazy } from "../utils/index.mjs";
4
+ import { BuiltInAction } from "./builtInActions.mjs";
5
+ import { ActionContextActionType } from "./context.mjs";
6
+ import { wrapInAction } from "./wrapInAction.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlEZWxldGUubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2FwcGx5RGVsZXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbW92ZSB9IGZyb20gXCJtb2J4XCJcbmltcG9ydCB7IGFzc2VydFR3ZWFrZWRPYmplY3QgfSBmcm9tIFwiLi4vdHdlYWtlci9jb3JlXCJcbmltcG9ydCB7IGxhenkgfSBmcm9tIFwiLi4vdXRpbHNcIlxuaW1wb3J0IHsgQnVpbHRJbkFjdGlvbiB9IGZyb20gXCIuL2J1aWx0SW5BY3Rpb25zXCJcbmltcG9ydCB7IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlIH0gZnJvbSBcIi4vY29udGV4dFwiXG5pbXBvcnQgeyB3cmFwSW5BY3Rpb24gfSBmcm9tIFwiLi93cmFwSW5BY3Rpb25cIlxuXG4vKipcbiAqIERlbGV0ZXMgYW4gb2JqZWN0IGZpZWxkIHdyYXBwZWQgaW4gYW4gYWN0aW9uLlxuICpcbiAqIEBwYXJhbSBub2RlICBUYXJnZXQgb2JqZWN0LlxuICogQHBhcmFtIGZpZWxkTmFtZSBGaWVsZCBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlEZWxldGU8TyBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIE8+KG5vZGU6IE8sIGZpZWxkTmFtZTogSyk6IHZvaWQge1xuICBhc3NlcnRUd2Vha2VkT2JqZWN0KG5vZGUsIFwibm9kZVwiLCB0cnVlKVxuXG4gIHdyYXBwZWRJbnRlcm5hbEFwcGx5RGVsZXRlKCkuY2FsbChub2RlLCBmaWVsZE5hbWUgYXMgc3RyaW5nIHwgbnVtYmVyKVxufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gaW50ZXJuYWxBcHBseURlbGV0ZTxPIGV4dGVuZHMgb2JqZWN0Pih0aGlzOiBPLCBmaWVsZE5hbWU6IHN0cmluZyB8IG51bWJlcik6IHZvaWQge1xuICByZW1vdmUodGhpcywgXCJcIiArIGZpZWxkTmFtZSlcbn1cblxuY29uc3Qgd3JhcHBlZEludGVybmFsQXBwbHlEZWxldGUgPSBsYXp5KCgpID0+XG4gIHdyYXBJbkFjdGlvbih7XG4gICAgbmFtZU9yTmFtZUZuOiBCdWlsdEluQWN0aW9uLkFwcGx5RGVsZXRlLFxuICAgIGZuOiBpbnRlcm5hbEFwcGx5RGVsZXRlLFxuICAgIGFjdGlvblR5cGU6IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlLlN5bmMsXG4gIH0pXG4pXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O3FCQWFpRSxNQUFTO3NCQUNwRCxNQUFNLFFBQVEsSUFBSTsrQkFFVCxLQUFLLE1BQU0sU0FBNEI7QUFDdEU7NkJBSytEO1NBQ3RELE1BQU0sS0FBSyxTQUFTO0FBQzdCO0FBRUEsTUFBTSw2QkFBNkIsS0FBSyxNQUN0QyxhQUFhO0FBQUEsRUFDWCxjQUFjLGNBQWM7QUFBQSxFQUM1QixJQUFJO0FBQUEsRUFDSixZQUFZLHdCQUF3QjtDQUNyQyxDQUFDOzsifQ==
@@ -0,0 +1,19 @@
1
+ import { assertTweakedObject } from "../tweaker/core.mjs";
2
+ import { lazy } from "../utils/index.mjs";
3
+ import { BuiltInAction } from "./builtInActions.mjs";
4
+ import { ActionContextActionType } from "./context.mjs";
5
+ import { wrapInAction } from "./wrapInAction.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlNZXRob2RDYWxsLm1qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FjdGlvbi9hcHBseU1ldGhvZENhbGwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXNzZXJ0VHdlYWtlZE9iamVjdCB9IGZyb20gXCIuLi90d2Vha2VyL2NvcmVcIlxuaW1wb3J0IHsgbGF6eSB9IGZyb20gXCIuLi91dGlsc1wiXG5pbXBvcnQgeyBCdWlsdEluQWN0aW9uIH0gZnJvbSBcIi4vYnVpbHRJbkFjdGlvbnNcIlxuaW1wb3J0IHsgQWN0aW9uQ29udGV4dEFjdGlvblR5cGUgfSBmcm9tIFwiLi9jb250ZXh0XCJcbmltcG9ydCB7IHdyYXBJbkFjdGlvbiB9IGZyb20gXCIuL3dyYXBJbkFjdGlvblwiXG5cbnR5cGUgQW55RnVuY3Rpb24gPSAoLi4uYXJnczogYW55W10pID0+IGFueVxuXG4vKipcbiAqIENhbGxzIGFuIG9iamVjdCBtZXRob2Qgd3JhcHBlZCBpbiBhbiBhY3Rpb24uXG4gKlxuICogQHBhcmFtIG5vZGUgIFRhcmdldCBvYmplY3QuXG4gKiBAcGFyYW0gbWV0aG9kTmFtZSBNZXRob2QgbmFtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5TWV0aG9kQ2FsbDxPIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgTywgRk4gZXh0ZW5kcyBPW0tdPihcbiAgbm9kZTogTyxcbiAgbWV0aG9kTmFtZTogSyxcbiAgLi4uYXJnczogRk4gZXh0ZW5kcyBBbnlGdW5jdGlvbiA/IFBhcmFtZXRlcnM8Rk4+IDogbmV2ZXJcbik6IEZOIGV4dGVuZHMgQW55RnVuY3Rpb24gPyBSZXR1cm5UeXBlPEZOPiA6IG5ldmVyIHtcbiAgYXNzZXJ0VHdlYWtlZE9iamVjdChub2RlLCBcIm5vZGVcIilcblxuICByZXR1cm4gd3JhcHBlZEludGVybmFsQXBwbHlNZXRob2RDYWxsKCkuY2FsbChub2RlLCBtZXRob2ROYW1lIGFzIHN0cmluZyB8IG51bWJlciwgYXJncylcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludGVybmFsQXBwbHlNZXRob2RDYWxsKHRoaXM6IGFueSwgbWV0aG9kTmFtZTogc3RyaW5nIHwgbnVtYmVyLCBhcmdzOiBhbnlbXSk6IGFueSB7XG4gIHJldHVybiB0aGlzW21ldGhvZE5hbWVdKC4uLmFyZ3MpXG59XG5cbmNvbnN0IHdyYXBwZWRJbnRlcm5hbEFwcGx5TWV0aG9kQ2FsbCA9IGxhenkoKCkgPT5cbiAgd3JhcEluQWN0aW9uKHtcbiAgICBuYW1lT3JOYW1lRm46IEJ1aWx0SW5BY3Rpb24uQXBwbHlNZXRob2RDYWxsLFxuICAgIGZuOiBpbnRlcm5hbEFwcGx5TWV0aG9kQ2FsbCxcbiAgICBhY3Rpb25UeXBlOiBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZS5TeW5jLFxuICB9KVxuKVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O3lCQWVFLE1BQ0EsZUFDRztzQkFFaUIsTUFBTSxNQUFNO1NBRXpCLGlDQUFpQyxLQUFLLE1BQU0sWUFBK0IsSUFBSTtBQUN4RjtpQ0FLbUQsWUFBNkI7U0FDdkUsS0FBSyxZQUFZLEdBQUcsSUFBSTtBQUNqQztBQUVBLE1BQU0saUNBQWlDLEtBQUssTUFDMUMsYUFBYTtBQUFBLEVBQ1gsY0FBYyxjQUFjO0FBQUEsRUFDNUIsSUFBSTtBQUFBLEVBQ0osWUFBWSx3QkFBd0I7Q0FDckMsQ0FBQzs7In0=
@@ -0,0 +1,25 @@
1
+ import { isObservable, set } from "mobx";
2
+ import { isModel } from "../model/utils.mjs";
3
+ import { assertTweakedObject } from "../tweaker/core.mjs";
4
+ import { lazy } from "../utils/index.mjs";
5
+ import { BuiltInAction } from "./builtInActions.mjs";
6
+ import { ActionContextActionType } from "./context.mjs";
7
+ import { wrapInAction } from "./wrapInAction.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlTZXQubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2FwcGx5U2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzT2JzZXJ2YWJsZSwgc2V0IH0gZnJvbSBcIm1vYnhcIlxuaW1wb3J0IHsgaXNNb2RlbCB9IGZyb20gXCIuLi9tb2RlbC91dGlsc1wiXG5pbXBvcnQgeyBhc3NlcnRUd2Vha2VkT2JqZWN0IH0gZnJvbSBcIi4uL3R3ZWFrZXIvY29yZVwiXG5pbXBvcnQgeyBsYXp5IH0gZnJvbSBcIi4uL3V0aWxzXCJcbmltcG9ydCB7IEJ1aWx0SW5BY3Rpb24gfSBmcm9tIFwiLi9idWlsdEluQWN0aW9uc1wiXG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZSB9IGZyb20gXCIuL2NvbnRleHRcIlxuaW1wb3J0IHsgd3JhcEluQWN0aW9uIH0gZnJvbSBcIi4vd3JhcEluQWN0aW9uXCJcblxuLyoqXG4gKiBTZXRzIGFuIG9iamVjdCBmaWVsZCB3cmFwcGVkIGluIGFuIGFjdGlvbi5cbiAqXG4gKiBAcGFyYW0gbm9kZSAgVGFyZ2V0IG9iamVjdC5cbiAqIEBwYXJhbSBmaWVsZE5hbWUgRmllbGQgbmFtZS5cbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byBzZXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcHBseVNldDxPIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgTywgViBleHRlbmRzIE9bS10+KFxuICBub2RlOiBPLFxuICBmaWVsZE5hbWU6IEssXG4gIHZhbHVlOiBWXG4pOiB2b2lkIHtcbiAgYXNzZXJ0VHdlYWtlZE9iamVjdChub2RlLCBcIm5vZGVcIiwgdHJ1ZSlcblxuICB3cmFwcGVkSW50ZXJuYWxBcHBseVNldCgpLmNhbGwobm9kZSwgZmllbGROYW1lIGFzIHN0cmluZyB8IG51bWJlciwgdmFsdWUpXG59XG5cbmZ1bmN0aW9uIGludGVybmFsQXBwbHlTZXQ8TyBleHRlbmRzIG9iamVjdD4odGhpczogTywgZmllbGROYW1lOiBzdHJpbmcgfCBudW1iZXIsIHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgLy8gd2UgbmVlZCB0byBjaGVjayBpZiBpdCBpcyBhIG1vZGVsIHNpbmNlIG1vZGVscyBjYW4gYmVjb21lIG9ic2VydmFibGUgb2JqZWN0c1xuICAvLyAoZS5nLiBieSBoYXZpbmcgYSBjb21wdXRlZCB2YWx1ZSlcbiAgaWYgKCFpc01vZGVsKHRoaXMpICYmIGlzT2JzZXJ2YWJsZSh0aGlzKSkge1xuICAgIHNldCh0aGlzLCBmaWVsZE5hbWUsIHZhbHVlKVxuICB9IGVsc2Uge1xuICAgIDsodGhpcyBhcyBhbnkpW2ZpZWxkTmFtZV0gPSB2YWx1ZVxuICB9XG59XG5cbmNvbnN0IHdyYXBwZWRJbnRlcm5hbEFwcGx5U2V0ID0gbGF6eSgoKSA9PlxuICB3cmFwSW5BY3Rpb24oe1xuICAgIG5hbWVPck5hbWVGbjogQnVpbHRJbkFjdGlvbi5BcHBseVNldCxcbiAgICBmbjogaW50ZXJuYWxBcHBseVNldCxcbiAgICBhY3Rpb25UeXBlOiBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZS5TeW5jLFxuICB9KVxuKVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7a0JBZ0JFLE1BQ0EsV0FDQTtzQkFFb0IsTUFBTSxRQUFRLElBQUk7NEJBRVosS0FBSyxNQUFNLFdBQThCLEtBQUs7QUFDMUU7QUFFQSwwQkFBcUQsV0FBNEI7TUFHM0UsQ0FBQyxRQUFRLElBQUksS0FBSyxhQUFhLElBQUksR0FBRztRQUNwQyxNQUFNLFdBQVcsS0FBSztBQUFBLFNBQ3JCO1NBQ1UsYUFBYTtBQUFBO0FBRWhDO0FBRUEsTUFBTSwwQkFBMEIsS0FBSyxNQUNuQyxhQUFhO0FBQUEsRUFDWCxjQUFjLGNBQWM7QUFBQSxFQUM1QixJQUFJO0FBQUEsRUFDSixZQUFZLHdCQUF3QjtDQUNyQyxDQUFDOzsifQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbHRJbkFjdGlvbnMubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2J1aWx0SW5BY3Rpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBidWlsdC1pbiBhY3Rpb24uXG4gKi9cbmV4cG9ydCBlbnVtIEJ1aWx0SW5BY3Rpb24ge1xuICAvKipcbiAgICogYXBwbHlQYXRjaGVzXG4gICAqL1xuICBBcHBseVBhdGNoZXMgPSBcIiQkYXBwbHlQYXRjaGVzXCIsXG4gIC8qKlxuICAgKiBhcHBseVNuYXBzaG90XG4gICAqL1xuICBBcHBseVNuYXBzaG90ID0gXCIkJGFwcGx5U25hcHNob3RcIixcbiAgLyoqXG4gICAqIGRldGFjaFxuICAgKi9cbiAgRGV0YWNoID0gXCIkJGRldGFjaFwiLFxuICAvKipcbiAgICogYXBwbHlTZXRcbiAgICovXG4gIEFwcGx5U2V0ID0gXCIkJGFwcGx5U2V0XCIsXG4gIC8qKlxuICAgKiBhcHBseURlbGV0ZVxuICAgKi9cbiAgQXBwbHlEZWxldGUgPSBcIiQkYXBwbHlEZWxldGVcIixcbiAgLyoqXG4gICAqIGFwcGx5TWV0aG9kQ2FsbFxuICAgKi9cbiAgQXBwbHlNZXRob2RDYWxsID0gXCIkJGFwcGx5TWV0aG9kQ2FsbFwiLFxufVxuXG5jb25zdCBidWlsdEluQWN0aW9uVmFsdWVzOiBSZWFkb25seVNldDxzdHJpbmc+ID0gbmV3IFNldChPYmplY3QudmFsdWVzKEJ1aWx0SW5BY3Rpb24pKVxuXG4vKipcbiAqIFJldHVybnMgaWYgYSBnaXZlbiBhY3Rpb24gbmFtZSBpcyBhIGJ1aWx0LWluIGFjdGlvbiwgdGhpcyBpcywgb25lIG9mOlxuICogLSBhcHBseVBhdGNoZXMoKVxuICogLSBhcHBseVNuYXBzaG90KClcbiAqIC0gZGV0YWNoKClcbiAqXG4gKiBAcGFyYW0gYWN0aW9uTmFtZSBBY3Rpb24gbmFtZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHRydWUgaWYgaXQgaXMgYSBidWlsdC1pbiBhY3Rpb24sIGZhbHNlIG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQnVpbHRJbkFjdGlvbihhY3Rpb25OYW1lOiBzdHJpbmcpOiBhY3Rpb25OYW1lIGlzIEJ1aWx0SW5BY3Rpb24ge1xuICByZXR1cm4gYnVpbHRJbkFjdGlvblZhbHVlcy5oYXMoYWN0aW9uTmFtZSlcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiSUFHWTtVQUFBOzs7Ozs7O0FBeUJaLEdBekJZO0FBMkJaLE1BQU0sc0JBQTJDLElBQUksSUFBSSxPQUFPLE9BQU8sYUFBYSxDQUFDO3lCQVdyRDtTQUN2QixvQkFBb0IsSUFBSSxVQUFVO0FBQzNDOzsifQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5tanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vY29udGV4dC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFueU1vZGVsIH0gZnJvbSBcIi4uL21vZGVsL0Jhc2VNb2RlbFwiXG5cbi8qKlxuICogTG93IGxldmVsIGFjdGlvbiBjb250ZXh0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkNvbnRleHQge1xuICAvKipcbiAgICogQWN0aW9uIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbk5hbWU6IHN0cmluZ1xuICAvKipcbiAgICogQWN0aW9uIHR5cGUsIHN5bmMgb3IgYXN5bmMuXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZVxuICAvKipcbiAgICogQWN0aW9uIHRhcmdldCBvYmplY3QuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXQ6IEFueU1vZGVsXG4gIC8qKlxuICAgKiBBcnJheSBvZiBhY3Rpb24gYXJndW1lbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgYXJnczogUmVhZG9ubHlBcnJheTxhbnk+XG4gIC8qKlxuICAgKiBQYXJlbnQgYWN0aW9uIGNvbnRleHQsIGlmIGFueS5cbiAgICovXG4gIHJlYWRvbmx5IHBhcmVudENvbnRleHQ/OiBBY3Rpb25Db250ZXh0XG4gIC8qKlxuICAgKiBSb290IGFjdGlvbiBjb250ZXh0LCBvciBpdHNlbGYgaWYgdGhlIHJvb3QuXG4gICAqL1xuICByZWFkb25seSByb290Q29udGV4dDogQWN0aW9uQ29udGV4dFxuICAvKipcbiAgICogUHJldmlvdXMgYXN5bmMgc3RlcCBjb250ZXh0LCB1bmRlZmluZWQgZm9yIHN5bmMgYWN0aW9ucyBvciB0aGUgZmlyc3QgYWN0aW9uIG9mIGEgZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IHByZXZpb3VzQXN5bmNTdGVwQ29udGV4dD86IEFjdGlvbkNvbnRleHRcbiAgLyoqXG4gICAqIFNwYXduIGFzeW5jIHN0ZXAgY29udGV4dCwgdW5kZWZpbmVkIGZvciBzeW5jIGFjdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBzcGF3bkFzeW5jU3RlcENvbnRleHQ/OiBBY3Rpb25Db250ZXh0XG4gIC8qKlxuICAgKiBBc3luYyBzdGVwIHR5cGUsIG9yIHVuZGVmaW5lZCBmb3Igc3luYyBhY3Rpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgYXN5bmNTdGVwVHlwZT86IEFjdGlvbkNvbnRleHRBc3luY1N0ZXBUeXBlXG4gIC8qKlxuICAgKiBDdXN0b20gZGF0YSBmb3IgdGhlIGFjdGlvbiBjb250ZXh0IHRvIGJlIHNldCBieSBtaWRkbGV3YXJlcywgYW4gb2JqZWN0LlxuICAgKiBTeW1ib2xzIG11c3QgYmUgdXNlZCBhcyBrZXlzIHRvIGF2b2lkIG5hbWUgY2xhc2hpbmcgYmV0d2VlbiBtaWRkbGV3YXJlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGE6IFJlY29yZDxzeW1ib2wsIGFueT5cbn1cblxuLyoqXG4gKiBBY3Rpb24gdHlwZSwgc3luYyBvciBhc3luYy5cbiAqL1xuZXhwb3J0IGVudW0gQWN0aW9uQ29udGV4dEFjdGlvblR5cGUge1xuICBTeW5jID0gXCJzeW5jXCIsXG4gIEFzeW5jID0gXCJhc3luY1wiLFxufVxuXG4vKipcbiAqIEFuIGFzeW5jIHN0ZXAgdHlwZS5cbiAqL1xuZXhwb3J0IGVudW0gQWN0aW9uQ29udGV4dEFzeW5jU3RlcFR5cGUge1xuICAvKipcbiAgICogVGhlIGZsb3cgaXMgYWJvdXQgdG8gc3RhcnQuXG4gICAqL1xuICBTcGF3biA9IFwic3Bhd25cIixcbiAgLyoqXG4gICAqIFRoZSBmbG93IGlzIGFib3V0IHRvIHJldHVybiAoZmluaXNoKS5cbiAgICovXG4gIFJldHVybiA9IFwicmV0dXJuXCIsXG4gIC8qKlxuICAgKiBUaGUgZmxvdyBpcyBhYm91dCB0byBjb250aW51ZS5cbiAgICovXG4gIFJlc3VtZSA9IFwicmVzdW1lXCIsXG4gIC8qKlxuICAgKiBUaGUgZmxvdyB5aWVsZCBqdXN0IHRocmV3LCB3aGljaCBtaWdodCBiZSByZWNvdmVyZWQgKGNhdWdodCkgb3Igbm90LlxuICAgKi9cbiAgUmVzdW1lRXJyb3IgPSBcInJlc3VtZUVycm9yXCIsXG4gIC8qKlxuICAgKiBUaGUgZmxvdyBpcyBhYm91dCB0byB0aHJvdyBhbiBlcnJvciB0byB0aGUgZmxvdyBjYWxsZXIuXG4gICAqL1xuICBUaHJvdyA9IFwidGhyb3dcIixcbn1cblxubGV0IGN1cnJlbnRBY3Rpb25Db250ZXh0OiBBY3Rpb25Db250ZXh0IHwgdW5kZWZpbmVkXG5cbi8qKlxuICogR2V0cyB0aGUgY3VycmVudGx5IHJ1bm5pbmcgYWN0aW9uIGNvbnRleHQsIG9yIHVuZGVmaW5lZCBpZiBub25lLlxuICpcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDdXJyZW50QWN0aW9uQ29udGV4dCgpOiBBY3Rpb25Db250ZXh0IHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIGN1cnJlbnRBY3Rpb25Db250ZXh0XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKlxuICogU2V0cyB0aGUgY3VycmVudCBhY3Rpb24gY29udGV4dC5cbiAqXG4gKiBAcGFyYW0gY3R4IEN1cnJlbnQgYWN0aW9uIGNvbnRleHQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXRDdXJyZW50QWN0aW9uQ29udGV4dChjdHg6IEFjdGlvbkNvbnRleHQgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgY3VycmVudEFjdGlvbkNvbnRleHQgPSBjdHhcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiSUFvRFk7VUFBQTs7O0FBR1osR0FIWTtJQVFBO1VBQUE7Ozs7OztBQXFCWixHQXJCWTtBQXVCWixJQUFJOztTQVFLO0FBQ1Q7aUNBU3dDO3lCQUNmO0FBQ3pCOzsifQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va0FjdGlvbnMubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL2hvb2tBY3Rpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBob29rIGFjdGlvbi5cbiAqL1xuZXhwb3J0IGVudW0gSG9va0FjdGlvbiB7XG4gIC8qKlxuICAgKiBvbkluaXQgaG9va1xuICAgKi9cbiAgT25Jbml0ID0gXCIkJG9uSW5pdFwiLFxuICAvKipcbiAgICogb25MYXp5SW5pdCBob29rXG4gICAqL1xuICBPbkxhenlJbml0ID0gXCIkJG9uTGF6eUluaXRcIixcbiAgLyoqXG4gICAqIG9uQXR0YWNoZWRUb1Jvb3RTdG9yZSBob29rXG4gICAqL1xuICBPbkF0dGFjaGVkVG9Sb290U3RvcmUgPSBcIiQkb25BdHRhY2hlZFRvUm9vdFN0b3JlXCIsXG4gIC8qKlxuICAgKiBkaXNwb3NlciBmb3Igb25BdHRhY2hlZFRvUm9vdFN0b3JlIGhvb2tcbiAgICovXG4gIE9uQXR0YWNoZWRUb1Jvb3RTdG9yZURpc3Bvc2VyID0gXCIkJG9uQXR0YWNoZWRUb1Jvb3RTdG9yZURpc3Bvc2VyXCIsXG59XG5cbmNvbnN0IGhvb2tBY3Rpb25WYWx1ZXM6IFJlYWRvbmx5U2V0PHN0cmluZz4gPSBuZXcgU2V0KE9iamVjdC52YWx1ZXMoSG9va0FjdGlvbikpXG5cbi8qKlxuICogUmV0dXJucyBpZiBhIGdpdmVuIGFjdGlvbiBuYW1lIGNvcnJlc3BvbmRzIHRvIGEgaG9vaywgdGhpcyBpcywgb25lIG9mOlxuICogLSBvbkluaXQoKSBob29rXG4gKiAtIG9uTGF6eUluaXQoKSBob29rXG4gKiAtIG9uQXR0YWNoZWRUb1Jvb3RTdG9yZSgpIGhvb2tcbiAqIC0gZGlzcG9zZXIgcmV0dXJuZWQgYnkgYSBvbkF0dGFjaGVkVG9Sb290U3RvcmUoKSBob29rXG4gKlxuICogQHBhcmFtIGFjdGlvbk5hbWUgQWN0aW9uIG5hbWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB0cnVlIGlmIGl0IGlzIGEgaG9vaywgZmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNIb29rQWN0aW9uKGFjdGlvbk5hbWU6IHN0cmluZyk6IGFjdGlvbk5hbWUgaXMgSG9va0FjdGlvbiB7XG4gIHJldHVybiBob29rQWN0aW9uVmFsdWVzLmhhcyhhY3Rpb25OYW1lKVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJJQUdZO1VBQUE7Ozs7O0FBaUJaLEdBakJZO0FBbUJaLE1BQU0sbUJBQXdDLElBQUksSUFBSSxPQUFPLE9BQU8sVUFBVSxDQUFDO3NCQVlsRDtTQUNwQixpQkFBaUIsSUFBSSxVQUFVO0FBQ3hDOzsifQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNNb2RlbEFjdGlvbi5tanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vaXNNb2RlbEFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgbW9kZWxBY3Rpb25TeW1ib2wgPSBTeW1ib2woXCJtb2RlbEFjdGlvblwiKVxuXG4vKipcbiAqIFJldHVybnMgaWYgdGhlIGdpdmVuIGZ1bmN0aW9uIGlzIGEgbW9kZWwgYWN0aW9uIG9yIG5vdC5cbiAqXG4gKiBAcGFyYW0gZm4gRnVuY3Rpb24gdG8gY2hlY2suXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaXNNb2RlbEFjdGlvbihmbjogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpOiBib29sZWFuIHtcbiAgcmV0dXJuIHR5cGVvZiBmbiA9PT0gXCJmdW5jdGlvblwiICYmIG1vZGVsQWN0aW9uU3ltYm9sIGluIGZuXG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ik1BR2Esb0JBQW9CLE9BQU8sYUFBYTt1QkFRdkI7U0FDckIsT0FBTyxPQUFPLGNBQWMscUJBQXFCO0FBQzFEOzsifQ==
@@ -0,0 +1,84 @@
1
+ import { fastGetParent } from "../parent/path.mjs";
2
+ import { isChildOfParent } from "../parent/path2.mjs";
3
+ import { assertTweakedObject } from "../tweaker/core.mjs";
4
+ import { assertIsObject, assertIsFunction, failure, deleteFromArray } from "../utils/index.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5tanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY3Rpb24vbWlkZGxld2FyZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmYXN0R2V0UGFyZW50IH0gZnJvbSBcIi4uL3BhcmVudC9wYXRoXCJcbmltcG9ydCB7IGlzQ2hpbGRPZlBhcmVudCB9IGZyb20gXCIuLi9wYXJlbnQvcGF0aDJcIlxuaW1wb3J0IHsgYXNzZXJ0VHdlYWtlZE9iamVjdCB9IGZyb20gXCIuLi90d2Vha2VyL2NvcmVcIlxuaW1wb3J0IHsgYXNzZXJ0SXNGdW5jdGlvbiwgYXNzZXJ0SXNPYmplY3QsIGRlbGV0ZUZyb21BcnJheSwgZmFpbHVyZSB9IGZyb20gXCIuLi91dGlsc1wiXG5pbXBvcnQgdHlwZSB7IEFjdGlvbkNvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0XCJcblxuLyoqXG4gKiBBbiBhY3Rpb24gbWlkZGxld2FyZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25NaWRkbGV3YXJlIHtcbiAgLyoqXG4gICAqIFN1YnRyZWUgcm9vdCBvYmplY3QgKG9iamVjdCBhbmQgY2hpbGQgb2JqZWN0cykgdGhpcyBtaWRkbGV3YXJlIHdpbGwgcnVuIGZvci5cbiAgICogVGhpcyB0YXJnZXQgXCJmaWx0ZXJcIiB3aWxsIGJlIHJ1biBiZWZvcmUgdGhlIGN1c3RvbSBmaWx0ZXIuXG4gICAqL1xuICByZWFkb25seSBzdWJ0cmVlUm9vdDogb2JqZWN0XG5cbiAgLyoqXG4gICAqIEEgZmlsdGVyIGZ1bmN0aW9uIHRvIGRlY2lkZSBpZiBhbiBhY3Rpb24gbWlkZGxld2FyZSBmdW5jdGlvbiBzaG91bGQgYmUgcnVuIG9yIG5vdC5cbiAgICovXG4gIGZpbHRlcj8oY3R4OiBBY3Rpb25Db250ZXh0KTogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBBbiBhY3Rpb24gbWlkZGxld2FyZSBmdW5jdGlvbi5cbiAgICogUmVtYmVyIHRvIGByZXR1cm4gbmV4dCgpYCBpZiB5b3Ugd2FudCB0byBjb250aW51ZSB0aGUgYWN0aW9uIG9yIHRocm93IGlmIHlvdSB3YW50IHRvIGNhbmNlbCBpdC5cbiAgICovXG4gIG1pZGRsZXdhcmUoY3R4OiBBY3Rpb25Db250ZXh0LCBuZXh0OiAoKSA9PiBhbnkpOiBhbnlcbn1cblxuLyoqXG4gKiBUaGUgZGlzcG9zZXIgb2YgYW4gYWN0aW9uIG1pZGRsZXdhcmUuXG4gKi9cbmV4cG9ydCB0eXBlIEFjdGlvbk1pZGRsZXdhcmVEaXNwb3NlciA9ICgpID0+IHZvaWRcblxudHlwZSBQYXJ0aWFsQWN0aW9uTWlkZGxld2FyZSA9IFBpY2s8QWN0aW9uTWlkZGxld2FyZSwgXCJmaWx0ZXJcIiB8IFwibWlkZGxld2FyZVwiPlxuXG5jb25zdCBwZXJPYmplY3RBY3Rpb25NaWRkbGV3YXJlcyA9IG5ldyBXZWFrTWFwPG9iamVjdCwgUGFydGlhbEFjdGlvbk1pZGRsZXdhcmVbXT4oKVxuXG5pbnRlcmZhY2UgQWN0aW9uTWlkZGxld2FyZXNJdGVyYXRvciBleHRlbmRzIEl0ZXJhYmxlPFBhcnRpYWxBY3Rpb25NaWRkbGV3YXJlPiB7fVxuXG5jb25zdCBwZXJPYmplY3RBY3Rpb25NaWRkbGV3YXJlc0l0ZXJhdG9yID0gbmV3IFdlYWtNYXA8b2JqZWN0LCBBY3Rpb25NaWRkbGV3YXJlc0l0ZXJhdG9yPigpXG5cbi8qKlxuICogQGludGVybmFsXG4gKlxuICogR2V0cyB0aGUgY3VycmVudCBhY3Rpb24gbWlkZGxld2FyZXMgdG8gYmUgcnVuIG92ZXIgYSBnaXZlbiBvYmplY3QgYXMgYW4gaXRlcmFibGUgb2JqZWN0LlxuICpcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpb25NaWRkbGV3YXJlcyhvYmo6IG9iamVjdCk6IEFjdGlvbk1pZGRsZXdhcmVzSXRlcmF0b3Ige1xuICAvLyB3aGVuIHdlIGNhbGwgYSBtaWRkbGV3YXJlIHdlIHdpbGwgY2FsbCB0aGUgbWlkZGxld2FyZXMgb2YgdGhhdCBvYmplY3QgcGx1cyBhbGwgcGFyZW50IG9iamVjdHNcbiAgLy8gdGhlIHBhcmVudCBvYmplY3QgbWlkZGxld2FyZXMgYXJlIHJ1biBsYXN0XG5cbiAgLy8gc2luY2UgYW4gYXJyYXkgbGlrZSBbYSwgYiwgY10gd2lsbCBiZSBjYWxsZWQgbGlrZSBjKGIoYSgpKSkgdGhpcyBtZWFucyB0aGF0IHdlIG5lZWQgdG8gcHV0XG4gIC8vIHRoZSBwYXJlbnQgb2JqZWN0IG9uZXMgYXQgdGhlIGVuZCBvZiB0aGUgYXJyYXlcblxuICBsZXQgaXRlcmFibGUgPSBwZXJPYmplY3RBY3Rpb25NaWRkbGV3YXJlc0l0ZXJhdG9yLmdldChvYmopXG4gIGlmICghaXRlcmFibGUpIHtcbiAgICBpdGVyYWJsZSA9IHtcbiAgICAgIFtTeW1ib2wuaXRlcmF0b3JdKCkge1xuICAgICAgICBsZXQgY3VycmVudDogYW55ID0gb2JqXG5cbiAgICAgICAgZnVuY3Rpb24gZ2V0Q3VycmVudEl0ZXJhdG9yKCkge1xuICAgICAgICAgIGNvbnN0IG9iak13YXJlcyA9IGN1cnJlbnQgPyBwZXJPYmplY3RBY3Rpb25NaWRkbGV3YXJlcy5nZXQoY3VycmVudCkgOiB1bmRlZmluZWRcbiAgICAgICAgICBpZiAoIW9iak13YXJlcyB8fCBvYmpNd2FyZXMubGVuZ3RoIDw9IDApIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG9iak13YXJlc1tTeW1ib2wuaXRlcmF0b3JdKClcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGZpbmROZXh0SXRlcmF0b3IoKSB7XG4gICAgICAgICAgbGV0IG5leHRJdGVyXG4gICAgICAgICAgd2hpbGUgKGN1cnJlbnQgJiYgIW5leHRJdGVyKSB7XG4gICAgICAgICAgICBjdXJyZW50ID0gZmFzdEdldFBhcmVudChjdXJyZW50KVxuICAgICAgICAgICAgbmV4dEl0ZXIgPSBnZXRDdXJyZW50SXRlcmF0b3IoKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gbmV4dEl0ZXJcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBpdGVyID0gZ2V0Q3VycmVudEl0ZXJhdG9yKClcbiAgICAgICAgaWYgKCFpdGVyKSB7XG4gICAgICAgICAgaXRlciA9IGZpbmROZXh0SXRlcmF0b3IoKVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXRlcmF0b3I6IEl0ZXJhdG9yPFBhcnRpYWxBY3Rpb25NaWRkbGV3YXJlPiA9IHtcbiAgICAgICAgICBuZXh0KCkge1xuICAgICAgICAgICAgaWYgKCFpdGVyKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiB1bmRlZmluZWQsIGRvbmU6IHRydWUgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgcmVzdWx0ID0gaXRlci5uZXh0KClcbiAgICAgICAgICAgIGlmICghcmVzdWx0LmRvbmUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpdGVyID0gZmluZE5leHRJdGVyYXRvcigpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5uZXh0KClcbiAgICAgICAgICB9LFxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGl0ZXJhdG9yXG4gICAgICB9LFxuICAgIH1cbiAgICBwZXJPYmplY3RBY3Rpb25NaWRkbGV3YXJlc0l0ZXJhdG9yLnNldChvYmosIGl0ZXJhYmxlKVxuICB9XG4gIHJldHVybiBpdGVyYWJsZVxufVxuXG4vKipcbiAqIEFkZHMgYSBnbG9iYWwgYWN0aW9uIG1pZGRsZXdhcmUgdG8gYmUgcnVuIHdoZW4gYW4gYWN0aW9uIGlzIHBlcmZvcm1lZC5cbiAqIEl0IGlzIHVzdWFsbHkgcHJlZmVyYWJsZSB0byB1c2UgYG9uQWN0aW9uTWlkZGxld2FyZWAgaW5zdGVhZCB0byBsaW1pdCBpdCB0byBhIGdpdmVuIHRyZWUgYW5kIG9ubHkgdG8gdG9wbW9zdCBsZXZlbCBhY3Rpb25zXG4gKiBvciBgYWN0aW9uVHJhY2tpbmdNaWRkbGV3YXJlYCBmb3IgYSBzaW1wbGlmaWVkIG1pZGRsZXdhcmUuXG4gKlxuICogQHBhcmFtIG13YXJlIEFjdGlvbiBtaWRkbGV3YXJlIHRvIGJlIHJ1bi5cbiAqIEByZXR1cm5zIEEgZGlzcG9zZXIgdG8gY2FuY2VsIHRoZSBtaWRkbGV3YXJlLiBOb3RlIHRoYXQgaWYgeW91IGRvbid0IHBsYW4gdG8gZG8gYW4gZWFybHkgZGlzcG9zYWwgb2YgdGhlIG1pZGRsZXdhcmVcbiAqIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiBiZWNvbWVzIG9wdGlvbmFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkQWN0aW9uTWlkZGxld2FyZShtd2FyZTogQWN0aW9uTWlkZGxld2FyZSk6IEFjdGlvbk1pZGRsZXdhcmVEaXNwb3NlciB7XG4gIGFzc2VydElzT2JqZWN0KG13YXJlLCBcIm1pZGRsZXdhcmVcIilcblxuICBsZXQgeyBtaWRkbGV3YXJlLCBmaWx0ZXIsIHN1YnRyZWVSb290IH0gPSBtd2FyZVxuXG4gIGFzc2VydFR3ZWFrZWRPYmplY3Qoc3VidHJlZVJvb3QsIFwibWlkZGxld2FyZS5zdWJ0cmVlUm9vdFwiKVxuICBhc3NlcnRJc0Z1bmN0aW9uKG1pZGRsZXdhcmUsIFwibWlkZGxld2FyZS5taWRkbGV3YXJlXCIpXG4gIGlmIChmaWx0ZXIgJiYgdHlwZW9mIGZpbHRlciAhPT0gXCJmdW5jdGlvblwiKSB7XG4gICAgdGhyb3cgZmFpbHVyZShcIm1pZGRsZXdhcmUuZmlsdGVyIG11c3QgYmUgYSBmdW5jdGlvbiBvciB1bmRlZmluZWRcIilcbiAgfVxuXG4gIC8vIHJlbWluZGVyOiBuZXZlciB0dXJuIG1pZGRsZXdhcmVzIGludG8gYWN0aW9ucyBvciBlbHNlXG4gIC8vIHJlYWN0aW9ucyB3aWxsIG5vdCBiZSBwaWNrZWQgdXAgYnkgdGhlIHVuZG8gbWFuYWdlclxuXG4gIGlmIChzdWJ0cmVlUm9vdCkge1xuICAgIGNvbnN0IHRhcmdldEZpbHRlciA9IChjdHg6IEFjdGlvbkNvbnRleHQpID0+XG4gICAgICBjdHgudGFyZ2V0ID09PSBzdWJ0cmVlUm9vdCB8fCBpc0NoaWxkT2ZQYXJlbnQoY3R4LnRhcmdldCwgc3VidHJlZVJvb3QhKVxuXG4gICAgaWYgKCFmaWx0ZXIpIHtcbiAgICAgIGZpbHRlciA9IHRhcmdldEZpbHRlclxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjdXN0b21GaWx0ZXIgPSBmaWx0ZXJcbiAgICAgIGZpbHRlciA9IChjdHgpID0+IHtcbiAgICAgICAgcmV0dXJuIHRhcmdldEZpbHRlcihjdHgpICYmIGN1c3RvbUZpbHRlcihjdHgpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgYWN0dWFsTXdhcmUgPSB7IG1pZGRsZXdhcmUsIGZpbHRlciB9XG5cbiAgbGV0IG9iak13YXJlcyA9IHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzLmdldChzdWJ0cmVlUm9vdCkhXG4gIGlmICghb2JqTXdhcmVzKSB7XG4gICAgb2JqTXdhcmVzID0gW2FjdHVhbE13YXJlXVxuICAgIHBlck9iamVjdEFjdGlvbk1pZGRsZXdhcmVzLnNldChzdWJ0cmVlUm9vdCwgb2JqTXdhcmVzKVxuICB9IGVsc2Uge1xuICAgIG9iak13YXJlcy5wdXNoKGFjdHVhbE13YXJlKVxuICB9XG5cbiAgcmV0dXJuICgpID0+IHtcbiAgICBkZWxldGVGcm9tQXJyYXkob2JqTXdhcmVzLCBhY3R1YWxNd2FyZSlcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFtQ0EsTUFBTSxpREFBaUM7QUFJdkMsTUFBTSx5REFBeUM7OEJBU1Y7TUFPL0IsV0FBVyxtQ0FBbUMsSUFBSSxHQUFHO01BQ3JELENBQUMsVUFBVTtlQUNGO0FBQUEsT0FDUixPQUFPO1lBQ0YsVUFBZTs7Z0JBR1gsWUFBWSxVQUFVLDJCQUEyQixJQUFJLE9BQU8sSUFBSTtjQUNsRSxDQUFDLGFBQWEsVUFBVSxVQUFVLEdBQUc7bUJBQ2hDO0FBQUE7aUJBRUYsVUFBVSxPQUFPOzs7Y0FJcEI7aUJBQ0csV0FBVyxDQUFDLFVBQVU7c0JBQ2pCLGNBQWMsT0FBTzt1QkFDcEI7O2lCQUVOO0FBQUE7WUFHTCxPQUFPO1lBQ1AsQ0FBQyxNQUFNO2lCQUNGOztjQUdILFdBQThDO0FBQUEsVUFDbEQ7Z0JBQ00sQ0FBQyxNQUFNO3FCQUNGLEVBQUUsT0FBTyxRQUFXLE1BQU07O2dCQUcvQixTQUFTLEtBQUs7Z0JBQ2QsQ0FBQyxPQUFPLE1BQU07cUJBQ1Q7QUFBQTttQkFHRjttQkFDQSxLQUFLOzs7ZUFJVDtBQUFBOzt1Q0FHd0IsSUFBSSxLQUFLLFFBQVE7QUFBQTtTQUUvQztBQUNUOzZCQVdvQztpQkFDbkIsT0FBTyxZQUFZO01BRTlCLEVBQUUsWUFBWSxRQUFRLGdCQUFnQjtzQkFFdEIsYUFBYSx3QkFBd0I7bUJBQ3hDLFlBQVksdUJBQXVCO01BQ2hELFVBQVUsT0FBTyxXQUFXLFlBQVk7VUFDcEMsUUFBUSxtREFBbUQ7QUFBQTtNQU0vRCxhQUFhO1VBQ1QsZUFBZSxDQUFDLFFBQ3BCLElBQUksV0FBVyxlQUFlLGdCQUFnQixJQUFJLFFBQVEsV0FBWTtRQUVwRSxDQUFDLFFBQVE7ZUFDRjtBQUFBLFdBQ0o7WUFDQyxlQUFlO2VBQ1osQ0FBQztlQUNELGFBQWEsR0FBRyxLQUFLLGFBQWEsR0FBRztBQUFBOzs7UUFLNUMsY0FBYyxFQUFFLFlBQVk7TUFFOUIsWUFBWSwyQkFBMkIsSUFBSSxXQUFXO01BQ3RELENBQUMsV0FBVztnQkFDRixDQUFDLFdBQVc7K0JBQ0csSUFBSSxhQUFhLFNBQVM7QUFBQSxTQUNoRDtjQUNLLEtBQUssV0FBVztBQUFBO1NBR3JCO29CQUNXLFdBQVcsV0FBVztBQUFBO0FBRTFDOzsifQ==
@@ -0,0 +1,34 @@
1
+ import { checkModelDecoratorArgs } from "../modelShared/checkModelDecoratorArgs.mjs";
2
+ import { decorateWrapMethodOrField, failure } from "../utils/index.mjs";
3
+ import { getActionNameAndContextOverride } from "./actionDecoratorUtils.mjs";
4
+ import { ActionContextActionType } from "./context.mjs";
5
+ import { isModelAction } from "./isModelAction.mjs";
6
+ import { wrapInAction } from "./wrapInAction.mjs";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxBY3Rpb24ubWpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWN0aW9uL21vZGVsQWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNoZWNrTW9kZWxEZWNvcmF0b3JBcmdzIH0gZnJvbSBcIi4uL21vZGVsU2hhcmVkL2NoZWNrTW9kZWxEZWNvcmF0b3JBcmdzXCJcbmltcG9ydCB7IGRlY29yYXRlV3JhcE1ldGhvZE9yRmllbGQsIGZhaWx1cmUgfSBmcm9tIFwiLi4vdXRpbHNcIlxuaW1wb3J0IHsgZ2V0QWN0aW9uTmFtZUFuZENvbnRleHRPdmVycmlkZSB9IGZyb20gXCIuL2FjdGlvbkRlY29yYXRvclV0aWxzXCJcbmltcG9ydCB7IEFjdGlvbkNvbnRleHRBY3Rpb25UeXBlIH0gZnJvbSBcIi4vY29udGV4dFwiXG5pbXBvcnQgeyBpc01vZGVsQWN0aW9uIH0gZnJvbSBcIi4vaXNNb2RlbEFjdGlvblwiXG5pbXBvcnQgeyB3cmFwSW5BY3Rpb24gfSBmcm9tIFwiLi93cmFwSW5BY3Rpb25cIlxuXG5mdW5jdGlvbiBjaGVja01vZGVsQWN0aW9uQXJncyh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICBpZiAodHlwZW9mIHZhbHVlICE9PSBcImZ1bmN0aW9uXCIpIHtcbiAgICB0aHJvdyBmYWlsdXJlKFwibW9kZWxBY3Rpb24gaGFzIHRvIGJlIHVzZWQgb3ZlciBmdW5jdGlvbnNcIilcbiAgfVxuICBjaGVja01vZGVsRGVjb3JhdG9yQXJncyhcIm1vZGVsQWN0aW9uXCIsIHRhcmdldCwgcHJvcGVydHlLZXkpXG59XG5cbi8qKlxuICogRGVjb3JhdG9yIHRoYXQgdHVybnMgYSBmdW5jdGlvbiBpbnRvIGEgbW9kZWwgYWN0aW9uLlxuICpcbiAqIEBwYXJhbSB0YXJnZXRcbiAqIEBwYXJhbSBwcm9wZXJ0eUtleVxuICogQHBhcmFtIFtiYXNlRGVzY3JpcHRvcl1cbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtb2RlbEFjdGlvbihcbiAgdGFyZ2V0OiBhbnksXG4gIHByb3BlcnR5S2V5OiBzdHJpbmcsXG4gIGJhc2VEZXNjcmlwdG9yPzogUHJvcGVydHlEZXNjcmlwdG9yXG4pOiB2b2lkIHtcbiAgY29uc3QgeyBhY3Rpb25OYW1lLCBvdmVycmlkZUNvbnRleHQgfSA9IGdldEFjdGlvbk5hbWVBbmRDb250ZXh0T3ZlcnJpZGUodGFyZ2V0LCBwcm9wZXJ0eUtleSlcblxuICByZXR1cm4gZGVjb3JhdGVXcmFwTWV0aG9kT3JGaWVsZChcbiAgICBcIm1vZGVsQWN0aW9uXCIsXG4gICAge1xuICAgICAgdGFyZ2V0LFxuICAgICAgcHJvcGVydHlLZXksXG4gICAgICBiYXNlRGVzY3JpcHRvcixcbiAgICB9LFxuICAgIChkYXRhLCBmbikgPT4ge1xuICAgICAgaWYgKGlzTW9kZWxBY3Rpb24oZm4pKSB7XG4gICAgICAgIHJldHVybiBmblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2hlY2tNb2RlbEFjdGlvbkFyZ3MoZGF0YS50YXJnZXQsIGRhdGEucHJvcGVydHlLZXksIGZuKVxuXG4gICAgICAgIHJldHVybiB3cmFwSW5BY3Rpb24oe1xuICAgICAgICAgIG5hbWVPck5hbWVGbjogYWN0aW9uTmFtZSxcbiAgICAgICAgICBmbixcbiAgICAgICAgICBhY3Rpb25UeXBlOiBBY3Rpb25Db250ZXh0QWN0aW9uVHlwZS5TeW5jLFxuICAgICAgICAgIG92ZXJyaWRlQ29udGV4dCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG4gIClcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFPQSw4QkFBOEIsUUFBYSxhQUFxQjtNQUMxRCxPQUFPLFVBQVUsWUFBWTtVQUN6QixRQUFRLDJDQUEyQztBQUFBOzBCQUVuQyxlQUFlLFFBQVEsV0FBVztBQUM1RDtxQkFXRSxRQUNBLGFBQ0E7UUFFTSxFQUFFLFlBQVksb0JBQW9CLGdDQUFnQyxRQUFRLFdBQVc7U0FFcEYsMEJBQ0wsZUFDQTtBQUFBLElBQ0U7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLEtBRUYsQ0FBQyxNQUFNO1FBQ0QsY0FBYyxFQUFFLEdBQUc7YUFDZDtBQUFBLFdBQ0Y7MkJBQ2dCLEtBQUssUUFBUSxLQUFLLGFBQWEsRUFBRTthQUUvQyxhQUFhO0FBQUEsUUFDbEIsY0FBYztBQUFBLFFBQ2Q7QUFBQSxRQUNBLFlBQVksd0JBQXdCO0FBQUEsUUFDcEM7QUFBQSxPQUNEO0FBQUE7R0FFSjtBQUVMOzsifQ==