@fluidframework/tree 2.10.0 → 2.11.0

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 (465) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/api-report/tree.alpha.api.md +47 -16
  3. package/api-report/tree.beta.api.md +5 -14
  4. package/api-report/tree.legacy.alpha.api.md +5 -14
  5. package/api-report/tree.legacy.public.api.md +5 -14
  6. package/api-report/tree.public.api.md +5 -14
  7. package/dist/alpha.d.ts +9 -0
  8. package/dist/core/forest/forest.d.ts +10 -2
  9. package/dist/core/forest/forest.d.ts.map +1 -1
  10. package/dist/core/forest/forest.js.map +1 -1
  11. package/dist/core/index.d.ts +2 -2
  12. package/dist/core/index.d.ts.map +1 -1
  13. package/dist/core/index.js +3 -2
  14. package/dist/core/index.js.map +1 -1
  15. package/dist/core/rebase/utils.d.ts +1 -1
  16. package/dist/core/rebase/utils.d.ts.map +1 -1
  17. package/dist/core/rebase/utils.js +11 -8
  18. package/dist/core/rebase/utils.js.map +1 -1
  19. package/dist/core/revertible.d.ts +30 -1
  20. package/dist/core/revertible.d.ts.map +1 -1
  21. package/dist/core/revertible.js.map +1 -1
  22. package/dist/core/schema-stored/storedSchemaRepository.d.ts +2 -2
  23. package/dist/core/schema-stored/storedSchemaRepository.d.ts.map +1 -1
  24. package/dist/core/schema-stored/storedSchemaRepository.js +5 -5
  25. package/dist/core/schema-stored/storedSchemaRepository.js.map +1 -1
  26. package/dist/core/tree/anchorSet.d.ts +2 -2
  27. package/dist/core/tree/anchorSet.d.ts.map +1 -1
  28. package/dist/core/tree/anchorSet.js +21 -21
  29. package/dist/core/tree/anchorSet.js.map +1 -1
  30. package/dist/core/tree/detachedFieldIndexCodec.d.ts.map +1 -1
  31. package/dist/core/tree/detachedFieldIndexCodec.js +3 -2
  32. package/dist/core/tree/detachedFieldIndexCodec.js.map +1 -1
  33. package/dist/core/tree/index.d.ts +1 -1
  34. package/dist/core/tree/index.d.ts.map +1 -1
  35. package/dist/core/tree/index.js +2 -1
  36. package/dist/core/tree/index.js.map +1 -1
  37. package/dist/core/tree/visitorUtils.d.ts +25 -1
  38. package/dist/core/tree/visitorUtils.d.ts.map +1 -1
  39. package/dist/core/tree/visitorUtils.js +29 -1
  40. package/dist/core/tree/visitorUtils.js.map +1 -1
  41. package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts +5 -2
  42. package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
  43. package/dist/feature-libraries/chunked-forest/chunkedForest.js +24 -14
  44. package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
  45. package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -1
  46. package/dist/feature-libraries/chunked-forest/uniformChunk.js +2 -2
  47. package/dist/feature-libraries/chunked-forest/uniformChunk.js.map +1 -1
  48. package/dist/feature-libraries/flex-tree/context.d.ts +1 -1
  49. package/dist/feature-libraries/flex-tree/context.d.ts.map +1 -1
  50. package/dist/feature-libraries/flex-tree/context.js.map +1 -1
  51. package/dist/feature-libraries/index.d.ts +1 -0
  52. package/dist/feature-libraries/index.d.ts.map +1 -1
  53. package/dist/feature-libraries/index.js +4 -1
  54. package/dist/feature-libraries/index.js.map +1 -1
  55. package/dist/feature-libraries/indexing/anchorTreeIndex.d.ts +132 -0
  56. package/dist/feature-libraries/indexing/anchorTreeIndex.d.ts.map +1 -0
  57. package/dist/feature-libraries/indexing/anchorTreeIndex.js +361 -0
  58. package/dist/feature-libraries/indexing/anchorTreeIndex.js.map +1 -0
  59. package/dist/feature-libraries/indexing/index.d.ts +7 -0
  60. package/dist/feature-libraries/indexing/index.d.ts.map +1 -0
  61. package/dist/feature-libraries/indexing/index.js +11 -0
  62. package/dist/feature-libraries/indexing/index.js.map +1 -0
  63. package/dist/feature-libraries/indexing/types.d.ts +32 -0
  64. package/dist/feature-libraries/indexing/types.d.ts.map +1 -0
  65. package/dist/{events/interop.js → feature-libraries/indexing/types.js} +1 -1
  66. package/dist/feature-libraries/indexing/types.js.map +1 -0
  67. package/dist/feature-libraries/object-forest/objectForest.d.ts +5 -2
  68. package/dist/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
  69. package/dist/feature-libraries/object-forest/objectForest.js +21 -11
  70. package/dist/feature-libraries/object-forest/objectForest.js.map +1 -1
  71. package/dist/feature-libraries/sequence-field/invert.d.ts.map +1 -1
  72. package/dist/feature-libraries/sequence-field/invert.js +2 -2
  73. package/dist/feature-libraries/sequence-field/invert.js.map +1 -1
  74. package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js +3 -2
  75. package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
  76. package/dist/index.d.ts +4 -4
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +4 -1
  79. package/dist/index.js.map +1 -1
  80. package/dist/packageVersion.d.ts +1 -1
  81. package/dist/packageVersion.js +1 -1
  82. package/dist/packageVersion.js.map +1 -1
  83. package/dist/shared-tree/index.d.ts +1 -1
  84. package/dist/shared-tree/index.d.ts.map +1 -1
  85. package/dist/shared-tree/index.js +1 -2
  86. package/dist/shared-tree/index.js.map +1 -1
  87. package/dist/shared-tree/schematizingTreeView.d.ts +7 -1
  88. package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
  89. package/dist/shared-tree/schematizingTreeView.js +31 -30
  90. package/dist/shared-tree/schematizingTreeView.js.map +1 -1
  91. package/dist/shared-tree/sharedTree.d.ts +3 -0
  92. package/dist/shared-tree/sharedTree.d.ts.map +1 -1
  93. package/dist/shared-tree/sharedTree.js +56 -20
  94. package/dist/shared-tree/sharedTree.js.map +1 -1
  95. package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
  96. package/dist/shared-tree/sharedTreeChangeFamily.js +3 -3
  97. package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -1
  98. package/dist/shared-tree/treeCheckout.d.ts +28 -64
  99. package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
  100. package/dist/shared-tree/treeCheckout.js +152 -129
  101. package/dist/shared-tree/treeCheckout.js.map +1 -1
  102. package/dist/shared-tree-core/branch.d.ts +25 -81
  103. package/dist/shared-tree-core/branch.d.ts.map +1 -1
  104. package/dist/shared-tree-core/branch.js +72 -151
  105. package/dist/shared-tree-core/branch.js.map +1 -1
  106. package/dist/shared-tree-core/branchCommitEnricher.d.ts +19 -33
  107. package/dist/shared-tree-core/branchCommitEnricher.d.ts.map +1 -1
  108. package/dist/shared-tree-core/branchCommitEnricher.js +73 -54
  109. package/dist/shared-tree-core/branchCommitEnricher.js.map +1 -1
  110. package/dist/shared-tree-core/defaultResubmitMachine.d.ts.map +1 -1
  111. package/dist/shared-tree-core/defaultResubmitMachine.js +2 -1
  112. package/dist/shared-tree-core/defaultResubmitMachine.js.map +1 -1
  113. package/dist/shared-tree-core/editManager.d.ts.map +1 -1
  114. package/dist/shared-tree-core/editManager.js +2 -2
  115. package/dist/shared-tree-core/editManager.js.map +1 -1
  116. package/dist/shared-tree-core/index.d.ts +1 -1
  117. package/dist/shared-tree-core/index.d.ts.map +1 -1
  118. package/dist/shared-tree-core/index.js +4 -3
  119. package/dist/shared-tree-core/index.js.map +1 -1
  120. package/dist/shared-tree-core/sharedTreeCore.d.ts +2 -2
  121. package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
  122. package/dist/shared-tree-core/sharedTreeCore.js +11 -52
  123. package/dist/shared-tree-core/sharedTreeCore.js.map +1 -1
  124. package/dist/shared-tree-core/transaction.d.ts +108 -0
  125. package/dist/shared-tree-core/transaction.d.ts.map +1 -0
  126. package/dist/shared-tree-core/transaction.js +99 -0
  127. package/dist/shared-tree-core/transaction.js.map +1 -0
  128. package/dist/shared-tree-core/transactionEnricher.d.ts +8 -13
  129. package/dist/shared-tree-core/transactionEnricher.d.ts.map +1 -1
  130. package/dist/shared-tree-core/transactionEnricher.js +41 -21
  131. package/dist/shared-tree-core/transactionEnricher.js.map +1 -1
  132. package/dist/simple-tree/api/identifierIndex.d.ts +21 -0
  133. package/dist/simple-tree/api/identifierIndex.d.ts.map +1 -0
  134. package/dist/simple-tree/api/identifierIndex.js +45 -0
  135. package/dist/simple-tree/api/identifierIndex.js.map +1 -0
  136. package/dist/simple-tree/api/index.d.ts +2 -0
  137. package/dist/simple-tree/api/index.d.ts.map +1 -1
  138. package/dist/simple-tree/api/index.js +5 -1
  139. package/dist/simple-tree/api/index.js.map +1 -1
  140. package/dist/simple-tree/api/simpleSchemaToJsonSchema.js +9 -7
  141. package/dist/simple-tree/api/simpleSchemaToJsonSchema.js.map +1 -1
  142. package/dist/simple-tree/api/simpleTreeIndex.d.ts +65 -0
  143. package/dist/simple-tree/api/simpleTreeIndex.d.ts.map +1 -0
  144. package/dist/simple-tree/api/simpleTreeIndex.js +91 -0
  145. package/dist/simple-tree/api/simpleTreeIndex.js.map +1 -0
  146. package/dist/simple-tree/api/tree.d.ts +4 -5
  147. package/dist/simple-tree/api/tree.d.ts.map +1 -1
  148. package/dist/simple-tree/api/tree.js.map +1 -1
  149. package/dist/simple-tree/api/treeNodeApi.js.map +1 -1
  150. package/dist/simple-tree/core/index.d.ts +1 -1
  151. package/dist/simple-tree/core/index.d.ts.map +1 -1
  152. package/dist/simple-tree/core/index.js +2 -1
  153. package/dist/simple-tree/core/index.js.map +1 -1
  154. package/dist/simple-tree/core/treeNodeKernel.d.ts +6 -2
  155. package/dist/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
  156. package/dist/simple-tree/core/treeNodeKernel.js +53 -22
  157. package/dist/simple-tree/core/treeNodeKernel.js.map +1 -1
  158. package/dist/simple-tree/core/unhydratedFlexTree.d.ts +1 -1
  159. package/dist/simple-tree/core/unhydratedFlexTree.d.ts.map +1 -1
  160. package/dist/simple-tree/core/unhydratedFlexTree.js +2 -2
  161. package/dist/simple-tree/core/unhydratedFlexTree.js.map +1 -1
  162. package/dist/simple-tree/index.d.ts +1 -1
  163. package/dist/simple-tree/index.d.ts.map +1 -1
  164. package/dist/simple-tree/index.js +4 -2
  165. package/dist/simple-tree/index.js.map +1 -1
  166. package/dist/simple-tree/objectNode.d.ts +7 -2
  167. package/dist/simple-tree/objectNode.d.ts.map +1 -1
  168. package/dist/simple-tree/objectNode.js.map +1 -1
  169. package/dist/simple-tree/toMapTree.js +3 -3
  170. package/dist/simple-tree/toMapTree.js.map +1 -1
  171. package/dist/util/index.d.ts +1 -2
  172. package/dist/util/index.d.ts.map +1 -1
  173. package/dist/util/index.js +5 -4
  174. package/dist/util/index.js.map +1 -1
  175. package/dist/util/typeCheck.d.ts +6 -1
  176. package/dist/util/typeCheck.d.ts.map +1 -1
  177. package/dist/util/typeCheck.js.map +1 -1
  178. package/dist/util/typeCheckTests.d.ts +14 -2
  179. package/dist/util/typeCheckTests.d.ts.map +1 -1
  180. package/dist/util/typeCheckTests.js.map +1 -1
  181. package/dist/util/utils.d.ts +29 -0
  182. package/dist/util/utils.d.ts.map +1 -1
  183. package/dist/util/utils.js +13 -1
  184. package/dist/util/utils.js.map +1 -1
  185. package/lib/alpha.d.ts +9 -0
  186. package/lib/core/forest/forest.d.ts +10 -2
  187. package/lib/core/forest/forest.d.ts.map +1 -1
  188. package/lib/core/forest/forest.js.map +1 -1
  189. package/lib/core/index.d.ts +2 -2
  190. package/lib/core/index.d.ts.map +1 -1
  191. package/lib/core/index.js +2 -2
  192. package/lib/core/index.js.map +1 -1
  193. package/lib/core/rebase/utils.d.ts +1 -1
  194. package/lib/core/rebase/utils.d.ts.map +1 -1
  195. package/lib/core/rebase/utils.js +11 -8
  196. package/lib/core/rebase/utils.js.map +1 -1
  197. package/lib/core/revertible.d.ts +30 -1
  198. package/lib/core/revertible.d.ts.map +1 -1
  199. package/lib/core/revertible.js.map +1 -1
  200. package/lib/core/schema-stored/storedSchemaRepository.d.ts +2 -2
  201. package/lib/core/schema-stored/storedSchemaRepository.d.ts.map +1 -1
  202. package/lib/core/schema-stored/storedSchemaRepository.js +1 -1
  203. package/lib/core/schema-stored/storedSchemaRepository.js.map +1 -1
  204. package/lib/core/tree/anchorSet.d.ts +2 -2
  205. package/lib/core/tree/anchorSet.d.ts.map +1 -1
  206. package/lib/core/tree/anchorSet.js +1 -1
  207. package/lib/core/tree/anchorSet.js.map +1 -1
  208. package/lib/core/tree/detachedFieldIndexCodec.d.ts.map +1 -1
  209. package/lib/core/tree/detachedFieldIndexCodec.js +4 -3
  210. package/lib/core/tree/detachedFieldIndexCodec.js.map +1 -1
  211. package/lib/core/tree/index.d.ts +1 -1
  212. package/lib/core/tree/index.d.ts.map +1 -1
  213. package/lib/core/tree/index.js +1 -1
  214. package/lib/core/tree/index.js.map +1 -1
  215. package/lib/core/tree/visitorUtils.d.ts +25 -1
  216. package/lib/core/tree/visitorUtils.d.ts.map +1 -1
  217. package/lib/core/tree/visitorUtils.js +27 -0
  218. package/lib/core/tree/visitorUtils.js.map +1 -1
  219. package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts +5 -2
  220. package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
  221. package/lib/feature-libraries/chunked-forest/chunkedForest.js +18 -8
  222. package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
  223. package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -1
  224. package/lib/feature-libraries/chunked-forest/uniformChunk.js +3 -3
  225. package/lib/feature-libraries/chunked-forest/uniformChunk.js.map +1 -1
  226. package/lib/feature-libraries/flex-tree/context.d.ts +1 -1
  227. package/lib/feature-libraries/flex-tree/context.d.ts.map +1 -1
  228. package/lib/feature-libraries/flex-tree/context.js.map +1 -1
  229. package/lib/feature-libraries/index.d.ts +1 -0
  230. package/lib/feature-libraries/index.d.ts.map +1 -1
  231. package/lib/feature-libraries/index.js +1 -0
  232. package/lib/feature-libraries/index.js.map +1 -1
  233. package/lib/feature-libraries/indexing/anchorTreeIndex.d.ts +132 -0
  234. package/lib/feature-libraries/indexing/anchorTreeIndex.d.ts.map +1 -0
  235. package/lib/feature-libraries/indexing/anchorTreeIndex.js +356 -0
  236. package/lib/feature-libraries/indexing/anchorTreeIndex.js.map +1 -0
  237. package/lib/feature-libraries/indexing/index.d.ts +7 -0
  238. package/lib/feature-libraries/indexing/index.d.ts.map +1 -0
  239. package/lib/{events → feature-libraries/indexing}/index.js +1 -1
  240. package/lib/feature-libraries/indexing/index.js.map +1 -0
  241. package/lib/feature-libraries/indexing/types.d.ts +32 -0
  242. package/lib/feature-libraries/indexing/types.d.ts.map +1 -0
  243. package/lib/{events/interop.js → feature-libraries/indexing/types.js} +1 -1
  244. package/lib/feature-libraries/indexing/types.js.map +1 -0
  245. package/lib/feature-libraries/object-forest/objectForest.d.ts +5 -2
  246. package/lib/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
  247. package/lib/feature-libraries/object-forest/objectForest.js +15 -5
  248. package/lib/feature-libraries/object-forest/objectForest.js.map +1 -1
  249. package/lib/feature-libraries/sequence-field/invert.d.ts.map +1 -1
  250. package/lib/feature-libraries/sequence-field/invert.js +4 -4
  251. package/lib/feature-libraries/sequence-field/invert.js.map +1 -1
  252. package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js +4 -3
  253. package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
  254. package/lib/index.d.ts +4 -4
  255. package/lib/index.d.ts.map +1 -1
  256. package/lib/index.js +1 -1
  257. package/lib/index.js.map +1 -1
  258. package/lib/packageVersion.d.ts +1 -1
  259. package/lib/packageVersion.js +1 -1
  260. package/lib/packageVersion.js.map +1 -1
  261. package/lib/shared-tree/index.d.ts +1 -1
  262. package/lib/shared-tree/index.d.ts.map +1 -1
  263. package/lib/shared-tree/index.js +1 -1
  264. package/lib/shared-tree/index.js.map +1 -1
  265. package/lib/shared-tree/schematizingTreeView.d.ts +7 -1
  266. package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
  267. package/lib/shared-tree/schematizingTreeView.js +2 -2
  268. package/lib/shared-tree/schematizingTreeView.js.map +1 -1
  269. package/lib/shared-tree/sharedTree.d.ts +3 -0
  270. package/lib/shared-tree/sharedTree.d.ts.map +1 -1
  271. package/lib/shared-tree/sharedTree.js +37 -1
  272. package/lib/shared-tree/sharedTree.js.map +1 -1
  273. package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
  274. package/lib/shared-tree/sharedTreeChangeFamily.js +5 -5
  275. package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -1
  276. package/lib/shared-tree/treeCheckout.d.ts +28 -64
  277. package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
  278. package/lib/shared-tree/treeCheckout.js +140 -116
  279. package/lib/shared-tree/treeCheckout.js.map +1 -1
  280. package/lib/shared-tree-core/branch.d.ts +25 -81
  281. package/lib/shared-tree-core/branch.d.ts.map +1 -1
  282. package/lib/shared-tree-core/branch.js +72 -151
  283. package/lib/shared-tree-core/branch.js.map +1 -1
  284. package/lib/shared-tree-core/branchCommitEnricher.d.ts +19 -33
  285. package/lib/shared-tree-core/branchCommitEnricher.d.ts.map +1 -1
  286. package/lib/shared-tree-core/branchCommitEnricher.js +74 -55
  287. package/lib/shared-tree-core/branchCommitEnricher.js.map +1 -1
  288. package/lib/shared-tree-core/defaultResubmitMachine.d.ts.map +1 -1
  289. package/lib/shared-tree-core/defaultResubmitMachine.js +3 -2
  290. package/lib/shared-tree-core/defaultResubmitMachine.js.map +1 -1
  291. package/lib/shared-tree-core/editManager.d.ts.map +1 -1
  292. package/lib/shared-tree-core/editManager.js +1 -1
  293. package/lib/shared-tree-core/editManager.js.map +1 -1
  294. package/lib/shared-tree-core/index.d.ts +1 -1
  295. package/lib/shared-tree-core/index.d.ts.map +1 -1
  296. package/lib/shared-tree-core/index.js +1 -1
  297. package/lib/shared-tree-core/index.js.map +1 -1
  298. package/lib/shared-tree-core/sharedTreeCore.d.ts +2 -2
  299. package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
  300. package/lib/shared-tree-core/sharedTreeCore.js +12 -53
  301. package/lib/shared-tree-core/sharedTreeCore.js.map +1 -1
  302. package/lib/shared-tree-core/transaction.d.ts +108 -0
  303. package/lib/shared-tree-core/transaction.d.ts.map +1 -0
  304. package/lib/shared-tree-core/transaction.js +95 -0
  305. package/lib/shared-tree-core/transaction.js.map +1 -0
  306. package/lib/shared-tree-core/transactionEnricher.d.ts +8 -13
  307. package/lib/shared-tree-core/transactionEnricher.d.ts.map +1 -1
  308. package/lib/shared-tree-core/transactionEnricher.js +41 -21
  309. package/lib/shared-tree-core/transactionEnricher.js.map +1 -1
  310. package/lib/simple-tree/api/identifierIndex.d.ts +21 -0
  311. package/lib/simple-tree/api/identifierIndex.d.ts.map +1 -0
  312. package/lib/simple-tree/api/identifierIndex.js +41 -0
  313. package/lib/simple-tree/api/identifierIndex.js.map +1 -0
  314. package/lib/simple-tree/api/index.d.ts +2 -0
  315. package/lib/simple-tree/api/index.d.ts.map +1 -1
  316. package/lib/simple-tree/api/index.js +2 -0
  317. package/lib/simple-tree/api/index.js.map +1 -1
  318. package/lib/simple-tree/api/simpleSchemaToJsonSchema.js +11 -9
  319. package/lib/simple-tree/api/simpleSchemaToJsonSchema.js.map +1 -1
  320. package/lib/simple-tree/api/simpleTreeIndex.d.ts +65 -0
  321. package/lib/simple-tree/api/simpleTreeIndex.d.ts.map +1 -0
  322. package/lib/simple-tree/api/simpleTreeIndex.js +87 -0
  323. package/lib/simple-tree/api/simpleTreeIndex.js.map +1 -0
  324. package/lib/simple-tree/api/tree.d.ts +4 -5
  325. package/lib/simple-tree/api/tree.d.ts.map +1 -1
  326. package/lib/simple-tree/api/tree.js.map +1 -1
  327. package/lib/simple-tree/api/treeNodeApi.js.map +1 -1
  328. package/lib/simple-tree/core/index.d.ts +1 -1
  329. package/lib/simple-tree/core/index.d.ts.map +1 -1
  330. package/lib/simple-tree/core/index.js +1 -1
  331. package/lib/simple-tree/core/index.js.map +1 -1
  332. package/lib/simple-tree/core/treeNodeKernel.d.ts +6 -2
  333. package/lib/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
  334. package/lib/simple-tree/core/treeNodeKernel.js +31 -1
  335. package/lib/simple-tree/core/treeNodeKernel.js.map +1 -1
  336. package/lib/simple-tree/core/unhydratedFlexTree.d.ts +1 -1
  337. package/lib/simple-tree/core/unhydratedFlexTree.d.ts.map +1 -1
  338. package/lib/simple-tree/core/unhydratedFlexTree.js +1 -1
  339. package/lib/simple-tree/core/unhydratedFlexTree.js.map +1 -1
  340. package/lib/simple-tree/index.d.ts +1 -1
  341. package/lib/simple-tree/index.d.ts.map +1 -1
  342. package/lib/simple-tree/index.js +1 -1
  343. package/lib/simple-tree/index.js.map +1 -1
  344. package/lib/simple-tree/objectNode.d.ts +7 -2
  345. package/lib/simple-tree/objectNode.d.ts.map +1 -1
  346. package/lib/simple-tree/objectNode.js.map +1 -1
  347. package/lib/simple-tree/toMapTree.js +5 -5
  348. package/lib/simple-tree/toMapTree.js.map +1 -1
  349. package/lib/util/index.d.ts +1 -2
  350. package/lib/util/index.d.ts.map +1 -1
  351. package/lib/util/index.js +1 -2
  352. package/lib/util/index.js.map +1 -1
  353. package/lib/util/typeCheck.d.ts +6 -1
  354. package/lib/util/typeCheck.d.ts.map +1 -1
  355. package/lib/util/typeCheck.js.map +1 -1
  356. package/lib/util/typeCheckTests.d.ts +14 -2
  357. package/lib/util/typeCheckTests.d.ts.map +1 -1
  358. package/lib/util/typeCheckTests.js.map +1 -1
  359. package/lib/util/utils.d.ts +29 -0
  360. package/lib/util/utils.d.ts.map +1 -1
  361. package/lib/util/utils.js +9 -0
  362. package/lib/util/utils.js.map +1 -1
  363. package/package.json +22 -22
  364. package/src/core/forest/forest.ts +12 -1
  365. package/src/core/index.ts +8 -1
  366. package/src/core/rebase/utils.ts +12 -10
  367. package/src/core/revertible.ts +35 -1
  368. package/src/core/schema-stored/storedSchemaRepository.ts +2 -1
  369. package/src/core/tree/anchorSet.ts +2 -1
  370. package/src/core/tree/detachedFieldIndexCodec.ts +4 -3
  371. package/src/core/tree/index.ts +1 -0
  372. package/src/core/tree/visitorUtils.ts +56 -1
  373. package/src/feature-libraries/chunked-forest/chunkedForest.ts +33 -7
  374. package/src/feature-libraries/chunked-forest/uniformChunk.ts +3 -3
  375. package/src/feature-libraries/flex-tree/context.ts +1 -1
  376. package/src/feature-libraries/index.ts +9 -0
  377. package/src/feature-libraries/indexing/anchorTreeIndex.ts +453 -0
  378. package/src/feature-libraries/indexing/index.ts +11 -0
  379. package/src/feature-libraries/indexing/types.ts +37 -0
  380. package/src/feature-libraries/object-forest/objectForest.ts +22 -4
  381. package/src/feature-libraries/sequence-field/invert.ts +4 -4
  382. package/src/feature-libraries/sequence-field/sequenceFieldToDelta.ts +4 -4
  383. package/src/index.ts +16 -6
  384. package/src/packageVersion.ts +1 -1
  385. package/src/shared-tree/index.ts +0 -2
  386. package/src/shared-tree/schematizingTreeView.ts +7 -7
  387. package/src/shared-tree/sharedTree.ts +60 -6
  388. package/src/shared-tree/sharedTreeChangeFamily.ts +5 -4
  389. package/src/shared-tree/treeCheckout.ts +186 -193
  390. package/src/shared-tree-core/branch.ts +93 -220
  391. package/src/shared-tree-core/branchCommitEnricher.ts +69 -64
  392. package/src/shared-tree-core/defaultResubmitMachine.ts +3 -2
  393. package/src/shared-tree-core/editManager.ts +1 -1
  394. package/src/shared-tree-core/index.ts +9 -2
  395. package/src/shared-tree-core/sharedTreeCore.ts +17 -62
  396. package/src/shared-tree-core/transaction.ts +165 -0
  397. package/src/shared-tree-core/transactionEnricher.ts +30 -24
  398. package/src/simple-tree/api/identifierIndex.ts +64 -0
  399. package/src/simple-tree/api/index.ts +5 -0
  400. package/src/simple-tree/api/simpleSchemaToJsonSchema.ts +17 -18
  401. package/src/simple-tree/api/simpleTreeIndex.ts +231 -0
  402. package/src/simple-tree/api/tree.ts +8 -5
  403. package/src/simple-tree/api/treeNodeApi.ts +1 -1
  404. package/src/simple-tree/core/index.ts +1 -0
  405. package/src/simple-tree/core/treeNodeKernel.ts +37 -2
  406. package/src/simple-tree/core/unhydratedFlexTree.ts +2 -1
  407. package/src/simple-tree/index.ts +4 -0
  408. package/src/simple-tree/objectNode.ts +19 -12
  409. package/src/simple-tree/toMapTree.ts +5 -5
  410. package/src/util/index.ts +3 -1
  411. package/src/util/typeCheck.ts +6 -1
  412. package/src/util/typeCheckTests.ts +11 -1
  413. package/src/util/utils.ts +38 -0
  414. package/dist/events/emitter.d.ts +0 -139
  415. package/dist/events/emitter.d.ts.map +0 -1
  416. package/dist/events/emitter.js +0 -165
  417. package/dist/events/emitter.js.map +0 -1
  418. package/dist/events/index.d.ts +0 -7
  419. package/dist/events/index.d.ts.map +0 -1
  420. package/dist/events/index.js +0 -11
  421. package/dist/events/index.js.map +0 -1
  422. package/dist/events/interop.d.ts +0 -30
  423. package/dist/events/interop.d.ts.map +0 -1
  424. package/dist/events/interop.js.map +0 -1
  425. package/dist/events/listeners.d.ts +0 -76
  426. package/dist/events/listeners.d.ts.map +0 -1
  427. package/dist/events/listeners.js +0 -7
  428. package/dist/events/listeners.js.map +0 -1
  429. package/dist/shared-tree-core/transactionStack.d.ts +0 -29
  430. package/dist/shared-tree-core/transactionStack.d.ts.map +0 -1
  431. package/dist/shared-tree-core/transactionStack.js +0 -41
  432. package/dist/shared-tree-core/transactionStack.js.map +0 -1
  433. package/dist/util/transactionResult.d.ts +0 -19
  434. package/dist/util/transactionResult.d.ts.map +0 -1
  435. package/dist/util/transactionResult.js +0 -23
  436. package/dist/util/transactionResult.js.map +0 -1
  437. package/lib/events/emitter.d.ts +0 -139
  438. package/lib/events/emitter.d.ts.map +0 -1
  439. package/lib/events/emitter.js +0 -160
  440. package/lib/events/emitter.js.map +0 -1
  441. package/lib/events/index.d.ts +0 -7
  442. package/lib/events/index.d.ts.map +0 -1
  443. package/lib/events/index.js.map +0 -1
  444. package/lib/events/interop.d.ts +0 -30
  445. package/lib/events/interop.d.ts.map +0 -1
  446. package/lib/events/interop.js.map +0 -1
  447. package/lib/events/listeners.d.ts +0 -76
  448. package/lib/events/listeners.d.ts.map +0 -1
  449. package/lib/events/listeners.js +0 -6
  450. package/lib/events/listeners.js.map +0 -1
  451. package/lib/shared-tree-core/transactionStack.d.ts +0 -29
  452. package/lib/shared-tree-core/transactionStack.d.ts.map +0 -1
  453. package/lib/shared-tree-core/transactionStack.js +0 -37
  454. package/lib/shared-tree-core/transactionStack.js.map +0 -1
  455. package/lib/util/transactionResult.d.ts +0 -19
  456. package/lib/util/transactionResult.d.ts.map +0 -1
  457. package/lib/util/transactionResult.js +0 -20
  458. package/lib/util/transactionResult.js.map +0 -1
  459. package/src/events/README.md +0 -3
  460. package/src/events/emitter.ts +0 -256
  461. package/src/events/index.ts +0 -19
  462. package/src/events/interop.ts +0 -38
  463. package/src/events/listeners.ts +0 -80
  464. package/src/shared-tree-core/transactionStack.ts +0 -45
  465. package/src/util/transactionResult.ts +0 -19
@@ -1,256 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
-
6
- import { UsageError } from "@fluidframework/telemetry-utils/internal";
7
- import { getOrCreate } from "../util/index.js";
8
- import type { Listenable, Listeners, Off } from "./listeners.js";
9
-
10
- /**
11
- * Interface for an event emitter that can emit typed events to subscribed listeners.
12
- */
13
- export interface IEmitter<TListeners extends Listeners<TListeners>> {
14
- /**
15
- * Emits an event with the specified name and arguments, notifying all subscribers by calling their registered listener functions.
16
- * @param eventName - the name of the event to fire
17
- * @param args - the arguments passed to the event listener functions
18
- */
19
- emit<K extends keyof Listeners<TListeners>>(
20
- eventName: K,
21
- ...args: Parameters<TListeners[K]>
22
- ): void;
23
-
24
- /**
25
- * Emits an event with the specified name and arguments, notifying all subscribers by calling their registered listener functions.
26
- * It also collects the return values of all listeners into an array.
27
- *
28
- * Warning: This method should be used with caution. It deviates from the standard event-based integration pattern as creates substantial coupling between the emitter and its listeners.
29
- * For the majority of use-cases it is recommended to use the standard {@link IEmitter.emit} functionality.
30
- * @param eventName - the name of the event to fire
31
- * @param args - the arguments passed to the event listener functions
32
- * @returns An array of the return values of each listener, preserving the order listeners were called.
33
- */
34
- emitAndCollect<K extends keyof Listeners<TListeners>>(
35
- eventName: K,
36
- ...args: Parameters<TListeners[K]>
37
- ): ReturnType<TListeners[K]>[];
38
- }
39
-
40
- /**
41
- * Called when the last listener for `eventName` is removed.
42
- * Useful for determining when to clean up resources related to detecting when the event might occurs.
43
- */
44
- export type NoListenersCallback<TListeners extends object> = (
45
- eventName: keyof Listeners<TListeners>,
46
- ) => void;
47
-
48
- /**
49
- * Allows querying if an object has listeners.
50
- * @sealed
51
- */
52
- export interface HasListeners<TListeners extends Listeners<TListeners>> {
53
- /**
54
- * When no `eventName` is provided, returns true iff there are any listeners.
55
- *
56
- * When `eventName` is provided, returns true iff there are listeners for that event.
57
- *
58
- * @remarks
59
- * This can be used to know when its safe to cleanup data-structures which only exist to fire events for their listeners.
60
- */
61
- hasListeners(eventName?: keyof Listeners<TListeners>): boolean;
62
- }
63
-
64
- /**
65
- * Provides an API for subscribing to and listening to events.
66
- *
67
- * @remarks Classes wishing to emit events may either extend this class, compose over it, or expose it as a property of type {@link Listenable}.
68
- *
69
- * @example Extending this class
70
- *
71
- * ```typescript
72
- * interface MyEvents {
73
- * loaded: () => void;
74
- * computed: () => number;
75
- * }
76
- *
77
- * class MyInheritanceClass extends EventEmitter<MyEvents> {
78
- * private load() {
79
- * this.emit("loaded");
80
- * const results: number[] = this.emitAndCollect("computed");
81
- * }
82
- * }
83
- * ```
84
- *
85
- * @example Composing over this class
86
- *
87
- * ```typescript
88
- * class MyCompositionClass implements Listenable<MyEvents> {
89
- * private readonly events = createEmitter<MyEvents>();
90
- *
91
- * private load() {
92
- * this.events.emit("loaded");
93
- * const results: number[] = this.events.emitAndCollect("computed");
94
- * }
95
- *
96
- * public on<K extends keyof MyEvents>(eventName: K, listener: MyEvents[K]): () => void {
97
- * return this.events.on(eventName, listener);
98
- * }
99
- * }
100
- * ```
101
- *
102
- * @example Exposing this class as a property
103
- *
104
- * ```typescript
105
- * class MyExposingClass {
106
- * private readonly _events = createEmitter<MyEvents>();
107
- * public readonly events: Listenable<MyEvents> = this._events;
108
- *
109
- * private load() {
110
- * this._events.emit("loaded");
111
- * const results: number[] = this._events.emitAndCollect("computed");
112
- * }
113
- * }
114
- * ```
115
- */
116
- export class EventEmitter<TListeners extends Listeners<TListeners>>
117
- implements Listenable<TListeners>, HasListeners<TListeners>
118
- {
119
- protected readonly listeners = new Map<
120
- keyof TListeners,
121
- Set<(...args: any[]) => TListeners[keyof TListeners]>
122
- >();
123
-
124
- // Because this is protected and not public, calling this externally (not from a subclass) makes sending events to the constructed instance impossible.
125
- // Instead, use the static `create` function to get an instance which allows emitting events.
126
- protected constructor(private readonly noListeners?: NoListenersCallback<TListeners>) {}
127
-
128
- protected emit<K extends keyof TListeners>(
129
- eventName: K,
130
- ...args: Parameters<TListeners[K]>
131
- ): void {
132
- const listeners = this.listeners.get(eventName);
133
- if (listeners !== undefined) {
134
- // Current tsc (5.4.5) cannot spread `args` into `listener()`.
135
- const argArray: unknown[] = args;
136
- // This explicitly copies listeners so that new listeners added during this call to emit will not receive this event.
137
- for (const listener of [...listeners]) {
138
- // If listener has been unsubscribed while invoking other listeners, skip it.
139
- if (listeners.has(listener)) {
140
- listener(...argArray);
141
- }
142
- }
143
- }
144
- }
145
-
146
- protected emitAndCollect<K extends keyof TListeners>(
147
- eventName: K,
148
- ...args: Parameters<TListeners[K]>
149
- ): ReturnType<TListeners[K]>[] {
150
- const listeners = this.listeners.get(eventName);
151
- if (listeners !== undefined) {
152
- const argArray: unknown[] = args;
153
- const resultArray: ReturnType<TListeners[K]>[] = [];
154
- for (const listener of [...listeners.values()]) {
155
- resultArray.push(listener(...argArray));
156
- }
157
- return resultArray;
158
- }
159
- return [];
160
- }
161
-
162
- public on<K extends keyof Listeners<TListeners>>(
163
- eventName: K,
164
- listener: TListeners[K],
165
- ): Off {
166
- const listeners = getOrCreate(this.listeners, eventName, () => new Set());
167
- if (listeners.has(listener)) {
168
- const eventDescription =
169
- typeof eventName === "symbol" ? eventName.description : String(eventName.toString());
170
-
171
- throw new UsageError(
172
- `Attempted to register the same listener object twice for event ${eventDescription}`,
173
- );
174
- }
175
- listeners.add(listener);
176
- return () => this.off(eventName, listener);
177
- }
178
-
179
- public off<K extends keyof Listeners<TListeners>>(
180
- eventName: K,
181
- listener: TListeners[K],
182
- ): void {
183
- const listeners = this.listeners.get(eventName);
184
- if (listeners?.delete(listener) === true && listeners.size === 0) {
185
- this.listeners.delete(eventName);
186
- this.noListeners?.(eventName);
187
- }
188
- }
189
-
190
- public hasListeners(eventName?: keyof TListeners): boolean {
191
- if (eventName === undefined) {
192
- return this.listeners.size !== 0;
193
- }
194
- return this.listeners.has(eventName);
195
- }
196
- }
197
-
198
- /**
199
- * This class exposes the constructor and the `emit` method of `EventEmitter`, elevating them from protected to public
200
- */
201
- class ComposableEventEmitter<TListeners extends Listeners<TListeners>>
202
- extends EventEmitter<TListeners>
203
- implements IEmitter<TListeners>
204
- {
205
- public constructor(noListeners?: NoListenersCallback<TListeners>) {
206
- super(noListeners);
207
- }
208
-
209
- public override emit<K extends keyof TListeners>(
210
- eventName: K,
211
- ...args: Parameters<TListeners[K]>
212
- ): void {
213
- return super.emit(eventName, ...args);
214
- }
215
-
216
- public override emitAndCollect<K extends keyof TListeners>(
217
- eventName: K,
218
- ...args: Parameters<TListeners[K]>
219
- ): ReturnType<TListeners[K]>[] {
220
- return super.emitAndCollect(eventName, ...args);
221
- }
222
- }
223
-
224
- /**
225
- * Create a {@link Listenable} that can be instructed to emit events via the {@link IEmitter} interface.
226
- *
227
- * A class can delegate handling {@link Listenable} to the returned value while using it to emit the events.
228
- * See also {@link EventEmitter} which be used as a base class to implement {@link Listenable} via extension.
229
- * @example Forwarding events to the emitter
230
- * ```typescript
231
- * interface MyEvents {
232
- * loaded(): void;
233
- * }
234
- *
235
- * class MyClass implements Listenable<MyEvents> {
236
- * private readonly events = createEmitterMinimal<MyEvents>();
237
- *
238
- * private load(): void {
239
- * this.events.emit("loaded");
240
- * }
241
- *
242
- * public on<K extends keyof MyEvents>(eventName: K, listener: MyEvents[K]): Off {
243
- * return this.events.on(eventName, listener);
244
- * }
245
- *
246
- * public off<K extends keyof MyEvents>(eventName: K, listener: MyEvents[K]): void {
247
- * return this.events.off(eventName, listener);
248
- * }
249
- * }
250
- * ```
251
- */
252
- export function createEmitter<TListeners extends object>(
253
- noListeners?: NoListenersCallback<TListeners>,
254
- ): Listenable<TListeners> & IEmitter<TListeners> & HasListeners<TListeners> {
255
- return new ComposableEventEmitter<TListeners>(noListeners);
256
- }
@@ -1,19 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
-
6
- export {
7
- createEmitter,
8
- EventEmitter,
9
- type IEmitter,
10
- type NoListenersCallback,
11
- type HasListeners,
12
- } from "./emitter.js";
13
-
14
- export {
15
- type Listeners,
16
- type Listenable,
17
- type Off,
18
- type IsListener,
19
- } from "./listeners.js";
@@ -1,38 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
-
6
- import type { IEvent } from "@fluidframework/core-interfaces";
7
- import type { Listeners } from "./listeners.js";
8
- import type { UnionToIntersection } from "../util/index.js";
9
-
10
- // TODO: this file is currently unused. Use it or remove it.
11
-
12
- /**
13
- * Converts a {@link Listeners} type (i.e. the event registry for a {@link Listenable}) into a type consumable
14
- * by an IEventProvider from `@fluidframework/core-interfaces`.
15
- * @param E - the `Events` type to transform
16
- * @param Target - an optional `IEvent` type that will be merged into the result along with the transformed `E`
17
- *
18
- * @example
19
- *
20
- * ```typescript
21
- * interface MyEvents {
22
- * load: (user: string, data: IUserData) => void;
23
- * error: (errorCode: number) => void;
24
- * }
25
- *
26
- * class MySharedObject extends SharedObject<TransformEvents<MyEvents, ISharedObjectEvents>> {
27
- * // ...
28
- * }
29
- * ```
30
- */
31
- export type TransformListeners<
32
- TListeners extends Listeners<TListeners>,
33
- TTarget extends IEvent = IEvent,
34
- > = {
35
- [P in keyof Listeners<TListeners>]: (event: P, listener: TListeners[P]) => void;
36
- } extends Record<string | number | symbol, infer Z>
37
- ? UnionToIntersection<Z> & TTarget
38
- : never;
@@ -1,80 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
-
6
- /**
7
- * `true` iff the given type is an acceptable shape for a {@link Listeners | event} listener
8
- * @public
9
- */
10
- export type IsListener<TListener> = TListener extends (...args: any[]) => void ? true : false;
11
-
12
- /**
13
- * Used to specify the kinds of events emitted by a {@link Listenable}.
14
- *
15
- * @remarks
16
- * Any object type is a valid {@link Listeners}, but only the {@link IsListener | event-like} properties of that
17
- * type will be included.
18
- *
19
- * @example
20
- * ```typescript
21
- * interface MyEvents {
22
- * load: (user: string, data: IUserData) => void;
23
- * error: (errorCode: number) => void;
24
- * }
25
- * ```
26
- *
27
- * @public
28
- */
29
- export type Listeners<T extends object> = {
30
- [P in (string | symbol) & keyof T as IsListener<T[P]> extends true ? P : never]: T[P];
31
- };
32
-
33
- /**
34
- * An object which allows the registration of listeners so that subscribers can be notified when an event happens.
35
- * @param TListeners - All the {@link Listeners | events} that this subscribable supports
36
- *
37
- * @privateRemarks
38
- * `EventEmitter` can be used as a base class to implement this via extension.
39
- * ```ts
40
- * type MyEventEmitter = IEventEmitter<{
41
- * load: (user: string, data: IUserData) => void;
42
- * error: (errorCode: number) => void;
43
- * }>
44
- * ```
45
- * {@link createEmitter} can help implement this interface via delegation.
46
- *
47
- * @sealed @public
48
- */
49
- export interface Listenable<TListeners extends object> {
50
- /**
51
- * Register an event listener.
52
- * @param eventName - The name of the event.
53
- * @param listener - The listener function to run when the event is fired.
54
- * @returns A {@link Off | function} which will deregister the listener when called.
55
- * Calling the deregistration function more than once will have no effect.
56
- *
57
- * Listeners may also be deregistered by passing the listener to {@link Listenable.off | off()}.
58
- * @remarks Registering the exact same `listener` object for the same event more than once will throw an error.
59
- * If registering the same listener for the same event multiple times is desired, consider using a wrapper function for the second subscription.
60
- */
61
- on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
62
-
63
- /**
64
- * Deregister an event listener.
65
- * @param eventName - The name of the event.
66
- * @param listener - The listener function to remove from the current set of event listeners.
67
- * @remarks If `listener` is not currently registered, this method will have no effect.
68
- *
69
- * Listeners may also be deregistered by calling the {@link Off | deregistration function} returned when they are {@link Listenable.on | registered}.
70
- */
71
- off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
72
- }
73
-
74
- /**
75
- * A function that, when called, will deregister an event listener subscription that was previously registered.
76
- * @remarks
77
- * It is returned by the {@link Listenable.on | event registration function} when event registration occurs.
78
- * @public
79
- */
80
- export type Off = () => void;
@@ -1,45 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
-
6
- import type { RevisionTag } from "../core/index.js";
7
- import { fail } from "../util/index.js";
8
-
9
- /**
10
- * A helper class that organizes the state needed for managing nesting transactions.
11
- */
12
- export class TransactionStack {
13
- private readonly stack: {
14
- startRevision: RevisionTag;
15
- dispose: () => void;
16
- }[] = [];
17
-
18
- /**
19
- * The number of transactions currently ongoing.
20
- */
21
- public get size(): number {
22
- return this.stack.length;
23
- }
24
-
25
- /**
26
- * Pushes a new transaction onto the stack. That transaction becomes the current transaction.
27
- * @param startRevision - the revision of the latest commit when this transaction begins
28
- * @param disposables - an optional collection of disposable data to release after finishing a transaction
29
- */
30
- public push(startRevision: RevisionTag, dispose: () => void): void {
31
- this.stack.push({ startRevision, dispose });
32
- }
33
-
34
- /**
35
- * Ends the current transaction. Fails if there is currently no ongoing transaction.
36
- * @returns The revision that the closed transaction began on.
37
- */
38
- public pop(): {
39
- startRevision: RevisionTag;
40
- } {
41
- const transaction = this.stack.pop() ?? fail("No transaction is currently in progress");
42
- transaction.dispose();
43
- return transaction;
44
- }
45
- }
@@ -1,19 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
-
6
- /**
7
- * Describes the result of a transaction.
8
- * Transactions may either succeed and commit, or fail and abort.
9
- */
10
- export enum TransactionResult {
11
- /**
12
- * Indicates the transaction failed.
13
- */
14
- Abort,
15
- /**
16
- * Indicates the transaction succeeded.
17
- */
18
- Commit,
19
- }