@fluid-experimental/tree 0.58.2001 → 0.59.2000-61729

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 (817) hide show
  1. package/README.md +159 -46
  2. package/dist/ChangeCompression.d.ts +39 -0
  3. package/dist/ChangeCompression.d.ts.map +1 -0
  4. package/dist/ChangeCompression.js +117 -0
  5. package/dist/ChangeCompression.js.map +1 -0
  6. package/{lib/default-edits/PersistedTypes.d.ts → dist/ChangeTypes.d.ts} +58 -105
  7. package/dist/ChangeTypes.d.ts.map +1 -0
  8. package/dist/{default-edits/PersistedTypes.js → ChangeTypes.js} +21 -76
  9. package/dist/ChangeTypes.js.map +1 -0
  10. package/dist/Checkout.d.ts +39 -27
  11. package/dist/Checkout.d.ts.map +1 -1
  12. package/dist/Checkout.js +61 -32
  13. package/dist/Checkout.js.map +1 -1
  14. package/dist/Common.d.ts +175 -38
  15. package/dist/Common.d.ts.map +1 -1
  16. package/dist/Common.js +240 -103
  17. package/dist/Common.js.map +1 -1
  18. package/dist/EagerCheckout.d.ts +24 -0
  19. package/dist/EagerCheckout.d.ts.map +1 -0
  20. package/dist/{BasicCheckout.js → EagerCheckout.js} +9 -6
  21. package/dist/EagerCheckout.js.map +1 -0
  22. package/dist/EditLog.d.ts +77 -63
  23. package/dist/EditLog.d.ts.map +1 -1
  24. package/dist/EditLog.js +85 -48
  25. package/dist/EditLog.js.map +1 -1
  26. package/dist/EditUtilities.d.ts +168 -0
  27. package/dist/EditUtilities.d.ts.map +1 -0
  28. package/dist/EditUtilities.js +373 -0
  29. package/dist/EditUtilities.js.map +1 -0
  30. package/dist/EventTypes.d.ts +73 -0
  31. package/dist/EventTypes.d.ts.map +1 -0
  32. package/dist/EventTypes.js +78 -0
  33. package/dist/EventTypes.js.map +1 -0
  34. package/dist/Forest.d.ts +29 -7
  35. package/dist/Forest.d.ts.map +1 -1
  36. package/dist/Forest.js +60 -36
  37. package/dist/Forest.js.map +1 -1
  38. package/dist/HistoryEditFactory.d.ts +20 -0
  39. package/dist/HistoryEditFactory.d.ts.map +1 -0
  40. package/dist/HistoryEditFactory.js +226 -0
  41. package/dist/HistoryEditFactory.js.map +1 -0
  42. package/dist/IdConversion.d.ts +12 -0
  43. package/dist/IdConversion.d.ts.map +1 -0
  44. package/dist/IdConversion.js +98 -0
  45. package/dist/IdConversion.js.map +1 -0
  46. package/dist/Identifiers.d.ts +89 -2
  47. package/dist/Identifiers.d.ts.map +1 -1
  48. package/dist/Identifiers.js +10 -0
  49. package/dist/Identifiers.js.map +1 -1
  50. package/dist/InitialTree.d.ts +2 -2
  51. package/dist/InitialTree.d.ts.map +1 -1
  52. package/dist/InitialTree.js +2 -1
  53. package/dist/InitialTree.js.map +1 -1
  54. package/dist/LazyCheckout.d.ts +28 -0
  55. package/dist/LazyCheckout.d.ts.map +1 -0
  56. package/dist/LazyCheckout.js +44 -0
  57. package/dist/LazyCheckout.js.map +1 -0
  58. package/dist/LogViewer.d.ts +129 -85
  59. package/dist/LogViewer.d.ts.map +1 -1
  60. package/dist/LogViewer.js +111 -85
  61. package/dist/LogViewer.js.map +1 -1
  62. package/dist/MergeHealth.d.ts +221 -0
  63. package/dist/MergeHealth.d.ts.map +1 -0
  64. package/dist/MergeHealth.js +263 -0
  65. package/dist/MergeHealth.js.map +1 -0
  66. package/dist/NodeIdUtilities.d.ts +105 -0
  67. package/dist/NodeIdUtilities.d.ts.map +1 -0
  68. package/dist/NodeIdUtilities.js +60 -0
  69. package/dist/NodeIdUtilities.js.map +1 -0
  70. package/dist/PayloadUtilities.d.ts +42 -0
  71. package/dist/PayloadUtilities.d.ts.map +1 -0
  72. package/dist/PayloadUtilities.js +114 -0
  73. package/dist/PayloadUtilities.js.map +1 -0
  74. package/dist/ReconciliationPath.d.ts +18 -13
  75. package/dist/ReconciliationPath.d.ts.map +1 -1
  76. package/dist/ReconciliationPath.js.map +1 -1
  77. package/dist/RevisionValueCache.d.ts +11 -2
  78. package/dist/RevisionValueCache.d.ts.map +1 -1
  79. package/dist/RevisionValueCache.js +2 -3
  80. package/dist/RevisionValueCache.js.map +1 -1
  81. package/dist/RevisionView.d.ts +83 -0
  82. package/dist/RevisionView.d.ts.map +1 -0
  83. package/dist/RevisionView.js +182 -0
  84. package/dist/RevisionView.js.map +1 -0
  85. package/dist/SerializationUtilities.d.ts +36 -0
  86. package/dist/SerializationUtilities.d.ts.map +1 -0
  87. package/dist/SerializationUtilities.js +102 -0
  88. package/dist/SerializationUtilities.js.map +1 -0
  89. package/dist/SharedTree.d.ts +439 -0
  90. package/dist/SharedTree.d.ts.map +1 -0
  91. package/dist/SharedTree.js +1109 -0
  92. package/dist/SharedTree.js.map +1 -0
  93. package/dist/SharedTreeEncoder.d.ts +102 -0
  94. package/dist/SharedTreeEncoder.d.ts.map +1 -0
  95. package/dist/SharedTreeEncoder.js +313 -0
  96. package/dist/SharedTreeEncoder.js.map +1 -0
  97. package/dist/StringInterner.d.ts +46 -0
  98. package/dist/StringInterner.d.ts.map +1 -0
  99. package/dist/StringInterner.js +61 -0
  100. package/dist/StringInterner.js.map +1 -0
  101. package/dist/Summary.d.ts +40 -0
  102. package/dist/Summary.d.ts.map +1 -0
  103. package/dist/Summary.js +23 -0
  104. package/dist/Summary.js.map +1 -0
  105. package/dist/SummaryBackCompatibility.d.ts +22 -22
  106. package/dist/SummaryBackCompatibility.d.ts.map +1 -1
  107. package/dist/SummaryBackCompatibility.js +30 -33
  108. package/dist/SummaryBackCompatibility.js.map +1 -1
  109. package/dist/SummaryTestUtilities.d.ts +31 -0
  110. package/dist/SummaryTestUtilities.d.ts.map +1 -0
  111. package/dist/SummaryTestUtilities.js +37 -0
  112. package/dist/SummaryTestUtilities.js.map +1 -0
  113. package/dist/Transaction.d.ts +71 -0
  114. package/dist/Transaction.d.ts.map +1 -0
  115. package/dist/Transaction.js +92 -0
  116. package/dist/Transaction.js.map +1 -0
  117. package/dist/TransactionInternal.d.ts +540 -0
  118. package/dist/TransactionInternal.d.ts.map +1 -0
  119. package/dist/TransactionInternal.js +626 -0
  120. package/dist/TransactionInternal.js.map +1 -0
  121. package/dist/TreeCompressor.d.ts +36 -0
  122. package/dist/TreeCompressor.d.ts.map +1 -0
  123. package/dist/TreeCompressor.js +137 -0
  124. package/dist/TreeCompressor.js.map +1 -0
  125. package/dist/TreeNodeHandle.d.ts +12 -18
  126. package/dist/TreeNodeHandle.d.ts.map +1 -1
  127. package/dist/TreeNodeHandle.js +13 -23
  128. package/dist/TreeNodeHandle.js.map +1 -1
  129. package/dist/TreeView.d.ts +166 -0
  130. package/dist/TreeView.d.ts.map +1 -0
  131. package/dist/TreeView.js +218 -0
  132. package/dist/TreeView.js.map +1 -0
  133. package/dist/TreeViewUtilities.d.ts +21 -0
  134. package/dist/TreeViewUtilities.d.ts.map +1 -0
  135. package/dist/TreeViewUtilities.js +77 -0
  136. package/dist/TreeViewUtilities.js.map +1 -0
  137. package/dist/{default-edits/UndoRedoHandler.d.ts → UndoRedoHandler.d.ts} +2 -2
  138. package/dist/UndoRedoHandler.d.ts.map +1 -0
  139. package/dist/{default-edits/UndoRedoHandler.js → UndoRedoHandler.js} +5 -9
  140. package/dist/UndoRedoHandler.js.map +1 -0
  141. package/dist/id-compressor/AppendOnlySortedMap.d.ts +127 -0
  142. package/dist/id-compressor/AppendOnlySortedMap.d.ts.map +1 -0
  143. package/dist/id-compressor/AppendOnlySortedMap.js +283 -0
  144. package/dist/id-compressor/AppendOnlySortedMap.js.map +1 -0
  145. package/dist/id-compressor/IdCompressor.d.ts +389 -0
  146. package/dist/id-compressor/IdCompressor.d.ts.map +1 -0
  147. package/dist/id-compressor/IdCompressor.js +1353 -0
  148. package/dist/id-compressor/IdCompressor.js.map +1 -0
  149. package/dist/id-compressor/IdRange.d.ts +11 -0
  150. package/dist/id-compressor/IdRange.d.ts.map +1 -0
  151. package/dist/id-compressor/IdRange.js +29 -0
  152. package/dist/id-compressor/IdRange.js.map +1 -0
  153. package/dist/id-compressor/NumericUuid.d.ts +63 -0
  154. package/dist/id-compressor/NumericUuid.d.ts.map +1 -0
  155. package/dist/id-compressor/NumericUuid.js +377 -0
  156. package/dist/id-compressor/NumericUuid.js.map +1 -0
  157. package/dist/id-compressor/index.d.ts +12 -0
  158. package/dist/id-compressor/index.d.ts.map +1 -0
  159. package/dist/id-compressor/index.js +26 -0
  160. package/dist/id-compressor/index.js.map +1 -0
  161. package/dist/id-compressor/persisted-types/0.0.1.d.ts +156 -0
  162. package/dist/id-compressor/persisted-types/0.0.1.d.ts.map +1 -0
  163. package/dist/id-compressor/persisted-types/0.0.1.js +7 -0
  164. package/dist/id-compressor/persisted-types/0.0.1.js.map +1 -0
  165. package/dist/id-compressor/persisted-types/index.d.ts +6 -0
  166. package/dist/id-compressor/persisted-types/index.d.ts.map +1 -0
  167. package/dist/id-compressor/persisted-types/index.js +18 -0
  168. package/dist/id-compressor/persisted-types/index.js.map +1 -0
  169. package/dist/index.d.ts +29 -9
  170. package/dist/index.d.ts.map +1 -1
  171. package/dist/index.js +50 -35
  172. package/dist/index.js.map +1 -1
  173. package/dist/persisted-types/0.0.2.d.ts +385 -0
  174. package/dist/persisted-types/0.0.2.d.ts.map +1 -0
  175. package/dist/persisted-types/0.0.2.js +113 -0
  176. package/dist/persisted-types/0.0.2.js.map +1 -0
  177. package/dist/persisted-types/0.1.1.d.ts +314 -0
  178. package/dist/persisted-types/0.1.1.d.ts.map +1 -0
  179. package/dist/persisted-types/0.1.1.js +153 -0
  180. package/dist/persisted-types/0.1.1.js.map +1 -0
  181. package/dist/persisted-types/index.d.ts +7 -0
  182. package/dist/persisted-types/index.d.ts.map +1 -0
  183. package/dist/persisted-types/index.js +20 -0
  184. package/dist/persisted-types/index.js.map +1 -0
  185. package/docs/0-1-1-Compression.md +228 -0
  186. package/docs/Breaking-Change-Migration.md +52 -0
  187. package/docs/Compression.md +2 -2
  188. package/docs/Telemetry.md +43 -0
  189. package/docs/Write-Format.md +19 -0
  190. package/lib/ChangeCompression.d.ts +39 -0
  191. package/lib/ChangeCompression.d.ts.map +1 -0
  192. package/lib/ChangeCompression.js +111 -0
  193. package/lib/ChangeCompression.js.map +1 -0
  194. package/{dist/default-edits/PersistedTypes.d.ts → lib/ChangeTypes.d.ts} +58 -105
  195. package/lib/ChangeTypes.d.ts.map +1 -0
  196. package/lib/{default-edits/PersistedTypes.js → ChangeTypes.js} +15 -68
  197. package/lib/ChangeTypes.js.map +1 -0
  198. package/lib/Checkout.d.ts +39 -27
  199. package/lib/Checkout.d.ts.map +1 -1
  200. package/lib/Checkout.js +53 -24
  201. package/lib/Checkout.js.map +1 -1
  202. package/lib/Common.d.ts +175 -38
  203. package/lib/Common.d.ts.map +1 -1
  204. package/lib/Common.js +226 -101
  205. package/lib/Common.js.map +1 -1
  206. package/lib/EagerCheckout.d.ts +24 -0
  207. package/lib/EagerCheckout.d.ts.map +1 -0
  208. package/lib/{BasicCheckout.js → EagerCheckout.js} +7 -4
  209. package/lib/EagerCheckout.js.map +1 -0
  210. package/lib/EditLog.d.ts +77 -63
  211. package/lib/EditLog.d.ts.map +1 -1
  212. package/lib/EditLog.js +83 -47
  213. package/lib/EditLog.js.map +1 -1
  214. package/lib/EditUtilities.d.ts +168 -0
  215. package/lib/EditUtilities.d.ts.map +1 -0
  216. package/lib/EditUtilities.js +353 -0
  217. package/lib/EditUtilities.js.map +1 -0
  218. package/lib/EventTypes.d.ts +73 -0
  219. package/lib/EventTypes.d.ts.map +1 -0
  220. package/lib/EventTypes.js +75 -0
  221. package/lib/EventTypes.js.map +1 -0
  222. package/lib/Forest.d.ts +29 -7
  223. package/lib/Forest.d.ts.map +1 -1
  224. package/lib/Forest.js +58 -35
  225. package/lib/Forest.js.map +1 -1
  226. package/lib/HistoryEditFactory.d.ts +20 -0
  227. package/lib/HistoryEditFactory.d.ts.map +1 -0
  228. package/lib/{default-edits/HistoryEditFactory.js → HistoryEditFactory.js} +78 -39
  229. package/lib/HistoryEditFactory.js.map +1 -0
  230. package/lib/IdConversion.d.ts +12 -0
  231. package/lib/IdConversion.d.ts.map +1 -0
  232. package/lib/IdConversion.js +91 -0
  233. package/lib/IdConversion.js.map +1 -0
  234. package/lib/Identifiers.d.ts +89 -2
  235. package/lib/Identifiers.d.ts.map +1 -1
  236. package/lib/Identifiers.js +8 -1
  237. package/lib/Identifiers.js.map +1 -1
  238. package/lib/InitialTree.d.ts +2 -2
  239. package/lib/InitialTree.d.ts.map +1 -1
  240. package/lib/InitialTree.js +2 -1
  241. package/lib/InitialTree.js.map +1 -1
  242. package/lib/LazyCheckout.d.ts +28 -0
  243. package/lib/LazyCheckout.d.ts.map +1 -0
  244. package/lib/LazyCheckout.js +40 -0
  245. package/lib/LazyCheckout.js.map +1 -0
  246. package/lib/LogViewer.d.ts +129 -85
  247. package/lib/LogViewer.d.ts.map +1 -1
  248. package/lib/LogViewer.js +103 -77
  249. package/lib/LogViewer.js.map +1 -1
  250. package/lib/MergeHealth.d.ts +221 -0
  251. package/lib/MergeHealth.d.ts.map +1 -0
  252. package/lib/MergeHealth.js +258 -0
  253. package/lib/MergeHealth.js.map +1 -0
  254. package/lib/NodeIdUtilities.d.ts +105 -0
  255. package/lib/NodeIdUtilities.d.ts.map +1 -0
  256. package/lib/NodeIdUtilities.js +53 -0
  257. package/lib/NodeIdUtilities.js.map +1 -0
  258. package/lib/PayloadUtilities.d.ts +42 -0
  259. package/lib/PayloadUtilities.d.ts.map +1 -0
  260. package/lib/PayloadUtilities.js +110 -0
  261. package/lib/PayloadUtilities.js.map +1 -0
  262. package/lib/ReconciliationPath.d.ts +18 -13
  263. package/lib/ReconciliationPath.d.ts.map +1 -1
  264. package/lib/ReconciliationPath.js.map +1 -1
  265. package/lib/RevisionValueCache.d.ts +11 -2
  266. package/lib/RevisionValueCache.d.ts.map +1 -1
  267. package/lib/RevisionValueCache.js +2 -3
  268. package/lib/RevisionValueCache.js.map +1 -1
  269. package/lib/RevisionView.d.ts +83 -0
  270. package/lib/RevisionView.d.ts.map +1 -0
  271. package/lib/RevisionView.js +175 -0
  272. package/lib/RevisionView.js.map +1 -0
  273. package/lib/SerializationUtilities.d.ts +36 -0
  274. package/lib/SerializationUtilities.d.ts.map +1 -0
  275. package/lib/SerializationUtilities.js +95 -0
  276. package/lib/SerializationUtilities.js.map +1 -0
  277. package/lib/SharedTree.d.ts +439 -0
  278. package/lib/SharedTree.d.ts.map +1 -0
  279. package/lib/SharedTree.js +1104 -0
  280. package/lib/SharedTree.js.map +1 -0
  281. package/lib/SharedTreeEncoder.d.ts +102 -0
  282. package/lib/SharedTreeEncoder.d.ts.map +1 -0
  283. package/lib/SharedTreeEncoder.js +308 -0
  284. package/lib/SharedTreeEncoder.js.map +1 -0
  285. package/lib/StringInterner.d.ts +46 -0
  286. package/lib/StringInterner.d.ts.map +1 -0
  287. package/lib/StringInterner.js +57 -0
  288. package/lib/StringInterner.js.map +1 -0
  289. package/lib/Summary.d.ts +40 -0
  290. package/lib/Summary.d.ts.map +1 -0
  291. package/lib/Summary.js +19 -0
  292. package/lib/Summary.js.map +1 -0
  293. package/lib/SummaryBackCompatibility.d.ts +22 -22
  294. package/lib/SummaryBackCompatibility.d.ts.map +1 -1
  295. package/lib/SummaryBackCompatibility.js +29 -32
  296. package/lib/SummaryBackCompatibility.js.map +1 -1
  297. package/lib/SummaryTestUtilities.d.ts +31 -0
  298. package/lib/SummaryTestUtilities.d.ts.map +1 -0
  299. package/lib/SummaryTestUtilities.js +32 -0
  300. package/lib/SummaryTestUtilities.js.map +1 -0
  301. package/lib/Transaction.d.ts +71 -0
  302. package/lib/Transaction.d.ts.map +1 -0
  303. package/lib/Transaction.js +88 -0
  304. package/lib/Transaction.js.map +1 -0
  305. package/lib/TransactionInternal.d.ts +540 -0
  306. package/lib/TransactionInternal.d.ts.map +1 -0
  307. package/lib/TransactionInternal.js +622 -0
  308. package/lib/TransactionInternal.js.map +1 -0
  309. package/lib/TreeCompressor.d.ts +36 -0
  310. package/lib/TreeCompressor.d.ts.map +1 -0
  311. package/lib/TreeCompressor.js +133 -0
  312. package/lib/TreeCompressor.js.map +1 -0
  313. package/lib/TreeNodeHandle.d.ts +12 -18
  314. package/lib/TreeNodeHandle.d.ts.map +1 -1
  315. package/lib/TreeNodeHandle.js +14 -24
  316. package/lib/TreeNodeHandle.js.map +1 -1
  317. package/lib/TreeView.d.ts +166 -0
  318. package/lib/TreeView.d.ts.map +1 -0
  319. package/lib/TreeView.js +214 -0
  320. package/lib/TreeView.js.map +1 -0
  321. package/lib/TreeViewUtilities.d.ts +21 -0
  322. package/lib/TreeViewUtilities.d.ts.map +1 -0
  323. package/lib/TreeViewUtilities.js +71 -0
  324. package/lib/TreeViewUtilities.js.map +1 -0
  325. package/lib/{default-edits/UndoRedoHandler.d.ts → UndoRedoHandler.d.ts} +2 -2
  326. package/lib/UndoRedoHandler.d.ts.map +1 -0
  327. package/lib/{default-edits/UndoRedoHandler.js → UndoRedoHandler.js} +3 -7
  328. package/lib/UndoRedoHandler.js.map +1 -0
  329. package/lib/id-compressor/AppendOnlySortedMap.d.ts +127 -0
  330. package/lib/id-compressor/AppendOnlySortedMap.d.ts.map +1 -0
  331. package/lib/id-compressor/AppendOnlySortedMap.js +278 -0
  332. package/lib/id-compressor/AppendOnlySortedMap.js.map +1 -0
  333. package/lib/id-compressor/IdCompressor.d.ts +389 -0
  334. package/lib/id-compressor/IdCompressor.d.ts.map +1 -0
  335. package/lib/id-compressor/IdCompressor.js +1343 -0
  336. package/lib/id-compressor/IdCompressor.js.map +1 -0
  337. package/lib/id-compressor/IdRange.d.ts +11 -0
  338. package/lib/id-compressor/IdRange.d.ts.map +1 -0
  339. package/lib/id-compressor/IdRange.js +25 -0
  340. package/lib/id-compressor/IdRange.js.map +1 -0
  341. package/lib/id-compressor/NumericUuid.d.ts +63 -0
  342. package/lib/id-compressor/NumericUuid.d.ts.map +1 -0
  343. package/lib/id-compressor/NumericUuid.js +365 -0
  344. package/lib/id-compressor/NumericUuid.js.map +1 -0
  345. package/lib/id-compressor/index.d.ts +12 -0
  346. package/lib/id-compressor/index.d.ts.map +1 -0
  347. package/lib/id-compressor/index.js +12 -0
  348. package/lib/id-compressor/index.js.map +1 -0
  349. package/lib/id-compressor/persisted-types/0.0.1.d.ts +156 -0
  350. package/lib/id-compressor/persisted-types/0.0.1.d.ts.map +1 -0
  351. package/lib/{test/Snapshot.tests.d.ts → id-compressor/persisted-types/0.0.1.js} +1 -1
  352. package/lib/id-compressor/persisted-types/0.0.1.js.map +1 -0
  353. package/lib/id-compressor/persisted-types/index.d.ts +6 -0
  354. package/lib/id-compressor/persisted-types/index.d.ts.map +1 -0
  355. package/lib/id-compressor/persisted-types/index.js +6 -0
  356. package/lib/id-compressor/persisted-types/index.js.map +1 -0
  357. package/lib/index.d.ts +29 -9
  358. package/lib/index.d.ts.map +1 -1
  359. package/lib/index.js +23 -6
  360. package/lib/index.js.map +1 -1
  361. package/lib/persisted-types/0.0.2.d.ts +385 -0
  362. package/lib/persisted-types/0.0.2.d.ts.map +1 -0
  363. package/lib/persisted-types/0.0.2.js +110 -0
  364. package/lib/persisted-types/0.0.2.js.map +1 -0
  365. package/lib/persisted-types/0.1.1.d.ts +314 -0
  366. package/lib/persisted-types/0.1.1.d.ts.map +1 -0
  367. package/lib/persisted-types/0.1.1.js +150 -0
  368. package/lib/persisted-types/0.1.1.js.map +1 -0
  369. package/lib/persisted-types/index.d.ts +7 -0
  370. package/lib/persisted-types/index.d.ts.map +1 -0
  371. package/lib/persisted-types/index.js +8 -0
  372. package/lib/persisted-types/index.js.map +1 -0
  373. package/lib/test/AppendOnlySortedMap.tests.d.ts +6 -0
  374. package/lib/test/AppendOnlySortedMap.tests.d.ts.map +1 -0
  375. package/lib/test/AppendOnlySortedMap.tests.js +169 -0
  376. package/lib/test/AppendOnlySortedMap.tests.js.map +1 -0
  377. package/lib/test/{SnapshotUtilities.tests.d.ts → ChangeCompression.tests.d.ts} +1 -1
  378. package/lib/test/ChangeCompression.tests.d.ts.map +1 -0
  379. package/lib/test/ChangeCompression.tests.js +145 -0
  380. package/lib/test/ChangeCompression.tests.js.map +1 -0
  381. package/lib/test/Checkout.tests.d.ts +2 -3
  382. package/lib/test/Checkout.tests.d.ts.map +1 -1
  383. package/lib/test/Checkout.tests.js +126 -69
  384. package/lib/test/Checkout.tests.js.map +1 -1
  385. package/lib/test/Common.tests.js +60 -2
  386. package/lib/test/Common.tests.js.map +1 -1
  387. package/lib/test/{BasicCheckout.tests.d.ts → EagerCheckout.tests.d.ts} +1 -1
  388. package/lib/test/EagerCheckout.tests.d.ts.map +1 -0
  389. package/lib/test/EagerCheckout.tests.js +20 -0
  390. package/lib/test/EagerCheckout.tests.js.map +1 -0
  391. package/lib/test/Edit.tests.js +22 -14
  392. package/lib/test/Edit.tests.js.map +1 -1
  393. package/lib/test/{Anchors.glassBox.tests.d.ts → EditLog.perf.tests.d.ts} +1 -1
  394. package/lib/test/EditLog.perf.tests.d.ts.map +1 -0
  395. package/lib/test/EditLog.perf.tests.js +30 -0
  396. package/lib/test/EditLog.perf.tests.js.map +1 -0
  397. package/lib/test/EditLog.tests.js +10 -6
  398. package/lib/test/EditLog.tests.js.map +1 -1
  399. package/lib/test/EditUtilities.tests.d.ts +6 -0
  400. package/lib/test/EditUtilities.tests.d.ts.map +1 -0
  401. package/lib/test/EditUtilities.tests.js +503 -0
  402. package/lib/test/EditUtilities.tests.js.map +1 -0
  403. package/lib/test/Forest.perf.tests.d.ts +6 -0
  404. package/lib/test/Forest.perf.tests.d.ts.map +1 -0
  405. package/lib/test/Forest.perf.tests.js +133 -0
  406. package/lib/test/Forest.perf.tests.js.map +1 -0
  407. package/lib/test/Forest.tests.js +54 -27
  408. package/lib/test/Forest.tests.js.map +1 -1
  409. package/lib/test/GenericTransaction.tests.js +12 -3
  410. package/lib/test/GenericTransaction.tests.js.map +1 -1
  411. package/lib/test/HistoryEditFactory.tests.d.ts +6 -0
  412. package/lib/test/HistoryEditFactory.tests.d.ts.map +1 -0
  413. package/lib/test/HistoryEditFactory.tests.js +90 -0
  414. package/lib/test/HistoryEditFactory.tests.js.map +1 -0
  415. package/lib/test/IdCompressor.perf.tests.d.ts +6 -0
  416. package/lib/test/IdCompressor.perf.tests.d.ts.map +1 -0
  417. package/lib/test/IdCompressor.perf.tests.js +304 -0
  418. package/lib/test/IdCompressor.perf.tests.js.map +1 -0
  419. package/lib/test/IdCompressor.tests.d.ts +6 -0
  420. package/lib/test/IdCompressor.tests.d.ts.map +1 -0
  421. package/lib/test/IdCompressor.tests.js +1075 -0
  422. package/lib/test/IdCompressor.tests.js.map +1 -0
  423. package/lib/test/IdConversion.tests.d.ts +6 -0
  424. package/lib/test/IdConversion.tests.d.ts.map +1 -0
  425. package/lib/test/IdConversion.tests.js +36 -0
  426. package/lib/test/IdConversion.tests.js.map +1 -0
  427. package/lib/test/LazyCheckout.tests.d.ts +6 -0
  428. package/lib/test/LazyCheckout.tests.d.ts.map +1 -0
  429. package/lib/test/LazyCheckout.tests.js +22 -0
  430. package/lib/test/LazyCheckout.tests.js.map +1 -0
  431. package/lib/test/LogViewer.tests.js +276 -191
  432. package/lib/test/LogViewer.tests.js.map +1 -1
  433. package/lib/test/{SharedTreeWithAnchors.tests.d.ts → MergeHealthTelemetryHeartbeat.tests.d.ts} +1 -1
  434. package/lib/test/MergeHealthTelemetryHeartbeat.tests.d.ts.map +1 -0
  435. package/lib/test/MergeHealthTelemetryHeartbeat.tests.js +342 -0
  436. package/lib/test/MergeHealthTelemetryHeartbeat.tests.js.map +1 -0
  437. package/lib/test/NumericUuid.perf.tests.d.ts +6 -0
  438. package/lib/test/NumericUuid.perf.tests.d.ts.map +1 -0
  439. package/lib/test/NumericUuid.perf.tests.js +68 -0
  440. package/lib/test/NumericUuid.perf.tests.js.map +1 -0
  441. package/lib/test/NumericUuid.tests.d.ts +6 -0
  442. package/lib/test/NumericUuid.tests.d.ts.map +1 -0
  443. package/lib/test/NumericUuid.tests.js +191 -0
  444. package/lib/test/NumericUuid.tests.js.map +1 -0
  445. package/lib/test/RevisionView.tests.d.ts +6 -0
  446. package/lib/test/RevisionView.tests.d.ts.map +1 -0
  447. package/lib/test/RevisionView.tests.js +133 -0
  448. package/lib/test/RevisionView.tests.js.map +1 -0
  449. package/lib/test/SharedTree.perf.tests.d.ts +6 -0
  450. package/lib/test/SharedTree.perf.tests.d.ts.map +1 -0
  451. package/lib/test/SharedTree.perf.tests.js +39 -0
  452. package/lib/test/SharedTree.perf.tests.js.map +1 -0
  453. package/lib/test/SharedTree.tests.js +15 -3
  454. package/lib/test/SharedTree.tests.js.map +1 -1
  455. package/lib/test/StringInterner.tests.d.ts +6 -0
  456. package/lib/test/StringInterner.tests.d.ts.map +1 -0
  457. package/lib/test/StringInterner.tests.js +71 -0
  458. package/lib/test/StringInterner.tests.js.map +1 -0
  459. package/lib/test/Summary.tests.d.ts +8 -0
  460. package/lib/test/Summary.tests.d.ts.map +1 -0
  461. package/lib/test/Summary.tests.js +407 -0
  462. package/lib/test/Summary.tests.js.map +1 -0
  463. package/lib/test/Transaction.tests.js +109 -329
  464. package/lib/test/Transaction.tests.js.map +1 -1
  465. package/lib/test/TransactionInternal.tests.d.ts +6 -0
  466. package/lib/test/TransactionInternal.tests.d.ts.map +1 -0
  467. package/lib/test/TransactionInternal.tests.js +568 -0
  468. package/lib/test/TransactionInternal.tests.js.map +1 -0
  469. package/lib/test/TreeCompression.tests.d.ts +6 -0
  470. package/lib/test/TreeCompression.tests.d.ts.map +1 -0
  471. package/lib/test/TreeCompression.tests.js +292 -0
  472. package/lib/test/TreeCompression.tests.js.map +1 -0
  473. package/lib/test/TreeView.tests.d.ts +6 -0
  474. package/lib/test/TreeView.tests.d.ts.map +1 -0
  475. package/lib/test/TreeView.tests.js +176 -0
  476. package/lib/test/TreeView.tests.js.map +1 -0
  477. package/lib/test/UndoRedoHandler.tests.js +2 -2
  478. package/lib/test/UndoRedoHandler.tests.js.map +1 -1
  479. package/lib/test/Virtualization.tests.js +146 -62
  480. package/lib/test/Virtualization.tests.js.map +1 -1
  481. package/lib/test/fuzz/Generators.d.ts +19 -0
  482. package/lib/test/fuzz/Generators.d.ts.map +1 -0
  483. package/lib/test/fuzz/Generators.js +420 -0
  484. package/lib/test/fuzz/Generators.js.map +1 -0
  485. package/lib/test/fuzz/SharedTreeFuzzTests.d.ts +20 -0
  486. package/lib/test/fuzz/SharedTreeFuzzTests.d.ts.map +1 -0
  487. package/lib/test/fuzz/SharedTreeFuzzTests.js +217 -0
  488. package/lib/test/fuzz/SharedTreeFuzzTests.js.map +1 -0
  489. package/lib/test/fuzz/Types.d.ts +133 -0
  490. package/lib/test/fuzz/Types.d.ts.map +1 -0
  491. package/lib/test/{GenericTransactionWithAnchors.tests.d.ts → fuzz/Types.js} +2 -2
  492. package/lib/test/fuzz/Types.js.map +1 -0
  493. package/lib/test/utilities/IdCompressorTestUtilities.d.ts +180 -0
  494. package/lib/test/utilities/IdCompressorTestUtilities.d.ts.map +1 -0
  495. package/lib/test/utilities/IdCompressorTestUtilities.js +528 -0
  496. package/lib/test/utilities/IdCompressorTestUtilities.js.map +1 -0
  497. package/lib/test/utilities/MockTransaction.d.ts +26 -7
  498. package/lib/test/utilities/MockTransaction.d.ts.map +1 -1
  499. package/lib/test/utilities/MockTransaction.js +40 -11
  500. package/lib/test/utilities/MockTransaction.js.map +1 -1
  501. package/lib/test/utilities/PendingLocalStateTests.d.ts +12 -0
  502. package/lib/test/utilities/PendingLocalStateTests.d.ts.map +1 -0
  503. package/lib/test/utilities/PendingLocalStateTests.js +105 -0
  504. package/lib/test/utilities/PendingLocalStateTests.js.map +1 -0
  505. package/lib/test/utilities/SharedTreeTests.d.ts +3 -4
  506. package/lib/test/utilities/SharedTreeTests.d.ts.map +1 -1
  507. package/lib/test/utilities/SharedTreeTests.js +696 -439
  508. package/lib/test/utilities/SharedTreeTests.js.map +1 -1
  509. package/lib/test/utilities/SharedTreeVersioningTests.d.ts +11 -0
  510. package/lib/test/utilities/SharedTreeVersioningTests.d.ts.map +1 -0
  511. package/lib/test/utilities/SharedTreeVersioningTests.js +370 -0
  512. package/lib/test/utilities/SharedTreeVersioningTests.js.map +1 -0
  513. package/lib/test/utilities/SummaryLoadPerfTests.d.ts +10 -0
  514. package/lib/test/utilities/SummaryLoadPerfTests.d.ts.map +1 -0
  515. package/lib/test/utilities/SummaryLoadPerfTests.js +102 -0
  516. package/lib/test/utilities/SummaryLoadPerfTests.js.map +1 -0
  517. package/lib/test/utilities/SummarySizeTests.d.ts +11 -0
  518. package/lib/test/utilities/SummarySizeTests.d.ts.map +1 -0
  519. package/lib/test/utilities/SummarySizeTests.js +158 -0
  520. package/lib/test/utilities/SummarySizeTests.js.map +1 -0
  521. package/lib/test/utilities/TestCommon.d.ts +9 -0
  522. package/lib/test/utilities/TestCommon.d.ts.map +1 -0
  523. package/lib/test/utilities/TestCommon.js +13 -0
  524. package/lib/test/utilities/TestCommon.js.map +1 -0
  525. package/lib/test/utilities/TestNode.d.ts +140 -0
  526. package/lib/test/utilities/TestNode.d.ts.map +1 -0
  527. package/lib/test/utilities/TestNode.js +292 -0
  528. package/lib/test/utilities/TestNode.js.map +1 -0
  529. package/lib/test/utilities/TestUtilities.d.ts +84 -70
  530. package/lib/test/utilities/TestUtilities.d.ts.map +1 -1
  531. package/lib/test/utilities/TestUtilities.js +218 -143
  532. package/lib/test/utilities/TestUtilities.js.map +1 -1
  533. package/lib/test/utilities/UndoRedoTests.d.ts +4 -5
  534. package/lib/test/utilities/UndoRedoTests.d.ts.map +1 -1
  535. package/lib/test/utilities/UndoRedoTests.js +138 -149
  536. package/lib/test/utilities/UndoRedoTests.js.map +1 -1
  537. package/package.json +22 -17
  538. package/src/ChangeCompression.ts +159 -0
  539. package/src/{default-edits/PersistedTypes.ts → ChangeTypes.ts} +62 -125
  540. package/src/Checkout.ts +82 -53
  541. package/src/Common.ts +317 -117
  542. package/src/EagerCheckout.ts +38 -0
  543. package/src/EditLog.ts +153 -100
  544. package/src/EditUtilities.ts +559 -0
  545. package/src/EventTypes.ts +74 -0
  546. package/src/Forest.ts +81 -73
  547. package/src/{default-edits/HistoryEditFactory.ts → HistoryEditFactory.ts} +103 -53
  548. package/src/IdConversion.ts +125 -0
  549. package/src/Identifiers.ts +101 -1
  550. package/src/InitialTree.ts +5 -4
  551. package/src/LazyCheckout.ts +51 -0
  552. package/src/LogViewer.ts +242 -166
  553. package/src/MergeHealth.ts +447 -0
  554. package/src/NodeIdUtilities.ts +156 -0
  555. package/src/PayloadUtilities.ts +124 -0
  556. package/src/ReconciliationPath.ts +18 -13
  557. package/src/RevisionValueCache.ts +14 -5
  558. package/src/RevisionView.ts +252 -0
  559. package/src/SerializationUtilities.ts +130 -0
  560. package/src/SharedTree.ts +1501 -0
  561. package/src/SharedTreeEncoder.ts +493 -0
  562. package/src/StringInterner.ts +72 -0
  563. package/src/Summary.ts +48 -0
  564. package/src/SummaryBackCompatibility.ts +47 -57
  565. package/src/SummaryTestUtilities.ts +54 -0
  566. package/src/Transaction.ts +120 -0
  567. package/src/TransactionInternal.ts +1087 -0
  568. package/src/TreeCompressor.ts +213 -0
  569. package/src/TreeNodeHandle.ts +19 -32
  570. package/src/TreeView.ts +322 -0
  571. package/src/TreeViewUtilities.ts +77 -0
  572. package/src/{default-edits/UndoRedoHandler.ts → UndoRedoHandler.ts} +8 -13
  573. package/src/id-compressor/AppendOnlySortedMap.ts +325 -0
  574. package/src/id-compressor/IdCompressor.md +3 -0
  575. package/src/id-compressor/IdCompressor.ts +1848 -0
  576. package/src/id-compressor/IdRange.ts +33 -0
  577. package/src/id-compressor/NumericUuid.ts +414 -0
  578. package/src/id-compressor/index.ts +13 -0
  579. package/src/id-compressor/persisted-types/0.0.1.ts +179 -0
  580. package/src/id-compressor/persisted-types/README.md +3 -0
  581. package/src/id-compressor/persisted-types/index.ts +6 -0
  582. package/src/index.ts +118 -59
  583. package/src/persisted-types/0.0.2.ts +442 -0
  584. package/src/persisted-types/0.1.1.ts +476 -0
  585. package/src/persisted-types/README.md +22 -0
  586. package/src/persisted-types/index.ts +9 -0
  587. package/.mocharc.js +0 -41
  588. package/api/tree.api.md +0 -729
  589. package/dist/BasicCheckout.d.ts +0 -23
  590. package/dist/BasicCheckout.d.ts.map +0 -1
  591. package/dist/BasicCheckout.js.map +0 -1
  592. package/dist/Snapshot.d.ts +0 -198
  593. package/dist/Snapshot.d.ts.map +0 -1
  594. package/dist/Snapshot.js +0 -267
  595. package/dist/Snapshot.js.map +0 -1
  596. package/dist/SnapshotUtilities.d.ts +0 -29
  597. package/dist/SnapshotUtilities.d.ts.map +0 -1
  598. package/dist/SnapshotUtilities.js +0 -73
  599. package/dist/SnapshotUtilities.js.map +0 -1
  600. package/dist/anchored-edits/AnchorResolution.d.ts +0 -144
  601. package/dist/anchored-edits/AnchorResolution.d.ts.map +0 -1
  602. package/dist/anchored-edits/AnchorResolution.js +0 -162
  603. package/dist/anchored-edits/AnchorResolution.js.map +0 -1
  604. package/dist/anchored-edits/Factory.d.ts +0 -56
  605. package/dist/anchored-edits/Factory.d.ts.map +0 -1
  606. package/dist/anchored-edits/Factory.js +0 -79
  607. package/dist/anchored-edits/Factory.js.map +0 -1
  608. package/dist/anchored-edits/PersistedTypes.d.ts +0 -245
  609. package/dist/anchored-edits/PersistedTypes.d.ts.map +0 -1
  610. package/dist/anchored-edits/PersistedTypes.js +0 -131
  611. package/dist/anchored-edits/PersistedTypes.js.map +0 -1
  612. package/dist/anchored-edits/SharedTreeWithAnchors.d.ts +0 -120
  613. package/dist/anchored-edits/SharedTreeWithAnchors.d.ts.map +0 -1
  614. package/dist/anchored-edits/SharedTreeWithAnchors.js +0 -115
  615. package/dist/anchored-edits/SharedTreeWithAnchors.js.map +0 -1
  616. package/dist/anchored-edits/TransactionWithAnchors.d.ts +0 -28
  617. package/dist/anchored-edits/TransactionWithAnchors.d.ts.map +0 -1
  618. package/dist/anchored-edits/TransactionWithAnchors.js +0 -36
  619. package/dist/anchored-edits/TransactionWithAnchors.js.map +0 -1
  620. package/dist/anchored-edits/index.d.ts +0 -10
  621. package/dist/anchored-edits/index.d.ts.map +0 -1
  622. package/dist/anchored-edits/index.js +0 -34
  623. package/dist/anchored-edits/index.js.map +0 -1
  624. package/dist/default-edits/EditUtilities.d.ts +0 -57
  625. package/dist/default-edits/EditUtilities.d.ts.map +0 -1
  626. package/dist/default-edits/EditUtilities.js +0 -192
  627. package/dist/default-edits/EditUtilities.js.map +0 -1
  628. package/dist/default-edits/Factory.d.ts +0 -56
  629. package/dist/default-edits/Factory.d.ts.map +0 -1
  630. package/dist/default-edits/Factory.js +0 -79
  631. package/dist/default-edits/Factory.js.map +0 -1
  632. package/dist/default-edits/HistoryEditFactory.d.ts +0 -19
  633. package/dist/default-edits/HistoryEditFactory.d.ts.map +0 -1
  634. package/dist/default-edits/HistoryEditFactory.js +0 -187
  635. package/dist/default-edits/HistoryEditFactory.js.map +0 -1
  636. package/dist/default-edits/PersistedTypes.d.ts.map +0 -1
  637. package/dist/default-edits/PersistedTypes.js.map +0 -1
  638. package/dist/default-edits/SharedTree.d.ts +0 -111
  639. package/dist/default-edits/SharedTree.d.ts.map +0 -1
  640. package/dist/default-edits/SharedTree.js +0 -124
  641. package/dist/default-edits/SharedTree.js.map +0 -1
  642. package/dist/default-edits/Summary.d.ts +0 -15
  643. package/dist/default-edits/Summary.d.ts.map +0 -1
  644. package/dist/default-edits/Summary.js +0 -35
  645. package/dist/default-edits/Summary.js.map +0 -1
  646. package/dist/default-edits/Transaction.d.ts +0 -41
  647. package/dist/default-edits/Transaction.d.ts.map +0 -1
  648. package/dist/default-edits/Transaction.js +0 -225
  649. package/dist/default-edits/Transaction.js.map +0 -1
  650. package/dist/default-edits/UndoRedoHandler.d.ts.map +0 -1
  651. package/dist/default-edits/UndoRedoHandler.js.map +0 -1
  652. package/dist/default-edits/index.d.ts +0 -13
  653. package/dist/default-edits/index.d.ts.map +0 -1
  654. package/dist/default-edits/index.js +0 -41
  655. package/dist/default-edits/index.js.map +0 -1
  656. package/dist/generic/GenericEditUtilities.d.ts +0 -26
  657. package/dist/generic/GenericEditUtilities.d.ts.map +0 -1
  658. package/dist/generic/GenericEditUtilities.js +0 -45
  659. package/dist/generic/GenericEditUtilities.js.map +0 -1
  660. package/dist/generic/GenericSharedTree.d.ts +0 -221
  661. package/dist/generic/GenericSharedTree.d.ts.map +0 -1
  662. package/dist/generic/GenericSharedTree.js +0 -447
  663. package/dist/generic/GenericSharedTree.js.map +0 -1
  664. package/dist/generic/GenericTransaction.d.ts +0 -87
  665. package/dist/generic/GenericTransaction.d.ts.map +0 -1
  666. package/dist/generic/GenericTransaction.js +0 -144
  667. package/dist/generic/GenericTransaction.js.map +0 -1
  668. package/dist/generic/PersistedTypes.d.ts +0 -194
  669. package/dist/generic/PersistedTypes.d.ts.map +0 -1
  670. package/dist/generic/PersistedTypes.js +0 -42
  671. package/dist/generic/PersistedTypes.js.map +0 -1
  672. package/dist/generic/Summary.d.ts +0 -63
  673. package/dist/generic/Summary.d.ts.map +0 -1
  674. package/dist/generic/Summary.js +0 -64
  675. package/dist/generic/Summary.js.map +0 -1
  676. package/dist/generic/index.d.ts +0 -10
  677. package/dist/generic/index.d.ts.map +0 -1
  678. package/dist/generic/index.js +0 -26
  679. package/dist/generic/index.js.map +0 -1
  680. package/docs/Future.md +0 -155
  681. package/lib/BasicCheckout.d.ts +0 -23
  682. package/lib/BasicCheckout.d.ts.map +0 -1
  683. package/lib/BasicCheckout.js.map +0 -1
  684. package/lib/Snapshot.d.ts +0 -198
  685. package/lib/Snapshot.d.ts.map +0 -1
  686. package/lib/Snapshot.js +0 -263
  687. package/lib/Snapshot.js.map +0 -1
  688. package/lib/SnapshotUtilities.d.ts +0 -29
  689. package/lib/SnapshotUtilities.d.ts.map +0 -1
  690. package/lib/SnapshotUtilities.js +0 -67
  691. package/lib/SnapshotUtilities.js.map +0 -1
  692. package/lib/anchored-edits/AnchorResolution.d.ts +0 -144
  693. package/lib/anchored-edits/AnchorResolution.d.ts.map +0 -1
  694. package/lib/anchored-edits/AnchorResolution.js +0 -152
  695. package/lib/anchored-edits/AnchorResolution.js.map +0 -1
  696. package/lib/anchored-edits/Factory.d.ts +0 -56
  697. package/lib/anchored-edits/Factory.d.ts.map +0 -1
  698. package/lib/anchored-edits/Factory.js +0 -74
  699. package/lib/anchored-edits/Factory.js.map +0 -1
  700. package/lib/anchored-edits/PersistedTypes.d.ts +0 -245
  701. package/lib/anchored-edits/PersistedTypes.d.ts.map +0 -1
  702. package/lib/anchored-edits/PersistedTypes.js +0 -128
  703. package/lib/anchored-edits/PersistedTypes.js.map +0 -1
  704. package/lib/anchored-edits/SharedTreeWithAnchors.d.ts +0 -120
  705. package/lib/anchored-edits/SharedTreeWithAnchors.d.ts.map +0 -1
  706. package/lib/anchored-edits/SharedTreeWithAnchors.js +0 -110
  707. package/lib/anchored-edits/SharedTreeWithAnchors.js.map +0 -1
  708. package/lib/anchored-edits/TransactionWithAnchors.d.ts +0 -28
  709. package/lib/anchored-edits/TransactionWithAnchors.d.ts.map +0 -1
  710. package/lib/anchored-edits/TransactionWithAnchors.js +0 -32
  711. package/lib/anchored-edits/TransactionWithAnchors.js.map +0 -1
  712. package/lib/anchored-edits/index.d.ts +0 -10
  713. package/lib/anchored-edits/index.d.ts.map +0 -1
  714. package/lib/anchored-edits/index.js +0 -11
  715. package/lib/anchored-edits/index.js.map +0 -1
  716. package/lib/default-edits/EditUtilities.d.ts +0 -57
  717. package/lib/default-edits/EditUtilities.d.ts.map +0 -1
  718. package/lib/default-edits/EditUtilities.js +0 -181
  719. package/lib/default-edits/EditUtilities.js.map +0 -1
  720. package/lib/default-edits/Factory.d.ts +0 -56
  721. package/lib/default-edits/Factory.d.ts.map +0 -1
  722. package/lib/default-edits/Factory.js +0 -74
  723. package/lib/default-edits/Factory.js.map +0 -1
  724. package/lib/default-edits/HistoryEditFactory.d.ts +0 -19
  725. package/lib/default-edits/HistoryEditFactory.d.ts.map +0 -1
  726. package/lib/default-edits/HistoryEditFactory.js.map +0 -1
  727. package/lib/default-edits/PersistedTypes.d.ts.map +0 -1
  728. package/lib/default-edits/PersistedTypes.js.map +0 -1
  729. package/lib/default-edits/SharedTree.d.ts +0 -111
  730. package/lib/default-edits/SharedTree.d.ts.map +0 -1
  731. package/lib/default-edits/SharedTree.js +0 -100
  732. package/lib/default-edits/SharedTree.js.map +0 -1
  733. package/lib/default-edits/Summary.d.ts +0 -15
  734. package/lib/default-edits/Summary.d.ts.map +0 -1
  735. package/lib/default-edits/Summary.js +0 -31
  736. package/lib/default-edits/Summary.js.map +0 -1
  737. package/lib/default-edits/Transaction.d.ts +0 -41
  738. package/lib/default-edits/Transaction.d.ts.map +0 -1
  739. package/lib/default-edits/Transaction.js +0 -221
  740. package/lib/default-edits/Transaction.js.map +0 -1
  741. package/lib/default-edits/UndoRedoHandler.d.ts.map +0 -1
  742. package/lib/default-edits/UndoRedoHandler.js.map +0 -1
  743. package/lib/default-edits/index.d.ts +0 -13
  744. package/lib/default-edits/index.d.ts.map +0 -1
  745. package/lib/default-edits/index.js +0 -14
  746. package/lib/default-edits/index.js.map +0 -1
  747. package/lib/generic/GenericEditUtilities.d.ts +0 -26
  748. package/lib/generic/GenericEditUtilities.d.ts.map +0 -1
  749. package/lib/generic/GenericEditUtilities.js +0 -38
  750. package/lib/generic/GenericEditUtilities.js.map +0 -1
  751. package/lib/generic/GenericSharedTree.d.ts +0 -221
  752. package/lib/generic/GenericSharedTree.d.ts.map +0 -1
  753. package/lib/generic/GenericSharedTree.js +0 -443
  754. package/lib/generic/GenericSharedTree.js.map +0 -1
  755. package/lib/generic/GenericTransaction.d.ts +0 -87
  756. package/lib/generic/GenericTransaction.d.ts.map +0 -1
  757. package/lib/generic/GenericTransaction.js +0 -140
  758. package/lib/generic/GenericTransaction.js.map +0 -1
  759. package/lib/generic/PersistedTypes.d.ts +0 -194
  760. package/lib/generic/PersistedTypes.d.ts.map +0 -1
  761. package/lib/generic/PersistedTypes.js +0 -39
  762. package/lib/generic/PersistedTypes.js.map +0 -1
  763. package/lib/generic/Summary.d.ts +0 -63
  764. package/lib/generic/Summary.d.ts.map +0 -1
  765. package/lib/generic/Summary.js +0 -58
  766. package/lib/generic/Summary.js.map +0 -1
  767. package/lib/generic/index.d.ts +0 -10
  768. package/lib/generic/index.d.ts.map +0 -1
  769. package/lib/generic/index.js +0 -11
  770. package/lib/generic/index.js.map +0 -1
  771. package/lib/test/Anchors.glassBox.tests.d.ts.map +0 -1
  772. package/lib/test/Anchors.glassBox.tests.js +0 -410
  773. package/lib/test/Anchors.glassBox.tests.js.map +0 -1
  774. package/lib/test/BasicCheckout.tests.d.ts.map +0 -1
  775. package/lib/test/BasicCheckout.tests.js +0 -8
  776. package/lib/test/BasicCheckout.tests.js.map +0 -1
  777. package/lib/test/GenericTransactionWithAnchors.tests.d.ts.map +0 -1
  778. package/lib/test/GenericTransactionWithAnchors.tests.js +0 -25
  779. package/lib/test/GenericTransactionWithAnchors.tests.js.map +0 -1
  780. package/lib/test/SharedTreeWithAnchors.tests.d.ts.map +0 -1
  781. package/lib/test/SharedTreeWithAnchors.tests.js +0 -420
  782. package/lib/test/SharedTreeWithAnchors.tests.js.map +0 -1
  783. package/lib/test/Snapshot.tests.d.ts.map +0 -1
  784. package/lib/test/Snapshot.tests.js +0 -96
  785. package/lib/test/Snapshot.tests.js.map +0 -1
  786. package/lib/test/SnapshotUtilities.tests.d.ts.map +0 -1
  787. package/lib/test/SnapshotUtilities.tests.js +0 -168
  788. package/lib/test/SnapshotUtilities.tests.js.map +0 -1
  789. package/lib/test/undoRedoStackManager.d.ts +0 -26
  790. package/lib/test/undoRedoStackManager.d.ts.map +0 -1
  791. package/lib/test/undoRedoStackManager.js +0 -176
  792. package/lib/test/undoRedoStackManager.js.map +0 -1
  793. package/lib/test/utilities/SummaryFormatCompatibilityTests.d.ts +0 -13
  794. package/lib/test/utilities/SummaryFormatCompatibilityTests.d.ts.map +0 -1
  795. package/lib/test/utilities/SummaryFormatCompatibilityTests.js +0 -154
  796. package/lib/test/utilities/SummaryFormatCompatibilityTests.js.map +0 -1
  797. package/src/BasicCheckout.ts +0 -34
  798. package/src/Snapshot.ts +0 -363
  799. package/src/SnapshotUtilities.ts +0 -88
  800. package/src/anchored-edits/AnchorResolution.ts +0 -442
  801. package/src/anchored-edits/Factory.ts +0 -94
  802. package/src/anchored-edits/PersistedTypes.ts +0 -310
  803. package/src/anchored-edits/SharedTreeWithAnchors.ts +0 -200
  804. package/src/anchored-edits/TransactionWithAnchors.ts +0 -39
  805. package/src/anchored-edits/index.ts +0 -21
  806. package/src/default-edits/EditUtilities.ts +0 -220
  807. package/src/default-edits/Factory.ts +0 -94
  808. package/src/default-edits/SharedTree.ts +0 -174
  809. package/src/default-edits/Summary.ts +0 -44
  810. package/src/default-edits/Transaction.ts +0 -262
  811. package/src/default-edits/index.ts +0 -29
  812. package/src/generic/GenericEditUtilities.ts +0 -46
  813. package/src/generic/GenericSharedTree.ts +0 -593
  814. package/src/generic/GenericTransaction.ts +0 -194
  815. package/src/generic/PersistedTypes.ts +0 -221
  816. package/src/generic/Summary.ts +0 -113
  817. package/src/generic/index.ts +0 -41
@@ -1,63 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { IFluidHandle } from '@fluidframework/core-interfaces';
6
- import { IFluidSerializer } from '@fluidframework/shared-object-base';
7
- import { EditLogSummary, OrderedEditSet } from '../EditLog';
8
- import { Snapshot } from '../Snapshot';
9
- import { SharedTreeSummary_0_0_2 } from '../SummaryBackCompatibility';
10
- import { ChangeNode } from './PersistedTypes';
11
- /**
12
- * Format version for summaries that are written.
13
- * When next changing the format, we should add a new format version variable for the edit-specific summaries and assign it an independent
14
- * version number.
15
- */
16
- export declare const formatVersion = "0.0.2";
17
- /**
18
- * Handler for summarizing the tree state.
19
- * The handler is invoked when saving a summary. It accepts a view of the current state of the tree, the sequenced edits known
20
- * to the SharedTree, and optional helpers for serializing the edit information.
21
- * @returns a summary of the supplied state.
22
- * @internal
23
- */
24
- export declare type SharedTreeSummarizer<TChange> = (editLog: OrderedEditSet<TChange>, currentView: Snapshot) => SharedTreeSummaryBase;
25
- /**
26
- * The minimal information on a SharedTree summary. Contains the summary format version.
27
- */
28
- export interface SharedTreeSummaryBase {
29
- /**
30
- * Field on summary under which version is stored.
31
- */
32
- readonly version: string;
33
- }
34
- /**
35
- * The contents of a SharedTree summary: the current tree, and the edits needed to get from `initialTree` to the current tree.
36
- * @public
37
- */
38
- export interface SharedTreeSummary<TChange> extends SharedTreeSummaryBase {
39
- readonly currentTree: ChangeNode;
40
- /**
41
- * Information that can populate an edit log.
42
- */
43
- readonly editHistory?: EditLogSummary<TChange>;
44
- }
45
- /**
46
- * Serializes a SharedTree summary into a JSON string. This may later be used to initialize a SharedTree's state via `deserialize()`
47
- * Also replaces handle objects with their serialized form.
48
- *
49
- * @param summary - The SharedTree summary to serialize.
50
- * @param serializer - The serializer required to serialize handles in the summary.
51
- * @param bind - The object handle required to serialize handles in the summary
52
- */
53
- export declare function serialize(summary: SharedTreeSummaryBase, serializer: IFluidSerializer, bind: IFluidHandle): string;
54
- /**
55
- * Preserves the full history in the generated summary.
56
- * @public
57
- */
58
- export declare function fullHistorySummarizer<TChange>(editLog: OrderedEditSet<TChange>, currentView: Snapshot): SharedTreeSummary_0_0_2<TChange>;
59
- /**
60
- * Generates a summary with format version 0.1.0. This will prefer handles over edits in edit chunks where possible.
61
- */
62
- export declare function fullHistorySummarizer_0_1_0<TChange>(editLog: OrderedEditSet<TChange>, currentView: Snapshot): SharedTreeSummary<TChange>;
63
- //# sourceMappingURL=Summary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Summary.d.ts","sourceRoot":"","sources":["../../src/generic/Summary.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAoB,MAAM,oCAAoC,CAAC;AAExF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAqB,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACzF,OAAO,EAAE,UAAU,EAAQ,MAAM,kBAAkB,CAAC;AAEpD;;;;GAIG;AACH,eAAO,MAAM,aAAa,UAAU,CAAC;AAErC;;;;;;GAMG;AACH,oBAAY,oBAAoB,CAAC,OAAO,IAAI,CAC3C,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,EAChC,WAAW,EAAE,QAAQ,KACjB,qBAAqB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO,CAAE,SAAQ,qBAAqB;IACxE,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CAElH;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAC5C,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,EAChC,WAAW,EAAE,QAAQ,GACnB,uBAAuB,CAAC,OAAO,CAAC,CAwBlC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAClD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,EAChC,WAAW,EAAE,QAAQ,GACnB,iBAAiB,CAAC,OAAO,CAAC,CAM5B"}
@@ -1,64 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
4
- * Licensed under the MIT License.
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.fullHistorySummarizer_0_1_0 = exports.fullHistorySummarizer = exports.serialize = exports.formatVersion = void 0;
8
- const shared_object_base_1 = require("@fluidframework/shared-object-base");
9
- const Common_1 = require("../Common");
10
- const SummaryBackCompatibility_1 = require("../SummaryBackCompatibility");
11
- /**
12
- * Format version for summaries that are written.
13
- * When next changing the format, we should add a new format version variable for the edit-specific summaries and assign it an independent
14
- * version number.
15
- */
16
- exports.formatVersion = '0.0.2';
17
- /**
18
- * Serializes a SharedTree summary into a JSON string. This may later be used to initialize a SharedTree's state via `deserialize()`
19
- * Also replaces handle objects with their serialized form.
20
- *
21
- * @param summary - The SharedTree summary to serialize.
22
- * @param serializer - The serializer required to serialize handles in the summary.
23
- * @param bind - The object handle required to serialize handles in the summary
24
- */
25
- function serialize(summary, serializer, bind) {
26
- return Common_1.assertNotUndefined(shared_object_base_1.serializeHandles(summary, serializer, bind));
27
- }
28
- exports.serialize = serialize;
29
- /**
30
- * Preserves the full history in the generated summary.
31
- * @public
32
- */
33
- function fullHistorySummarizer(editLog, currentView) {
34
- const { editChunks, editIds } = editLog.getEditLogSummary();
35
- const sequencedEdits = [];
36
- let idIndex = 0;
37
- editChunks.forEach(({ chunk }) => {
38
- Common_1.assert(Array.isArray(chunk), 'Handles should not be included in the summary until format version 0.1.0 is being written.');
39
- chunk.forEach(({ changes }) => {
40
- sequencedEdits.push({
41
- changes,
42
- id: Common_1.assertNotUndefined(editIds[idIndex++], 'Number of edits should match number of edit IDs.'),
43
- });
44
- });
45
- });
46
- return {
47
- currentTree: currentView.getChangeNodeTree(),
48
- sequencedEdits,
49
- version: exports.formatVersion,
50
- };
51
- }
52
- exports.fullHistorySummarizer = fullHistorySummarizer;
53
- /**
54
- * Generates a summary with format version 0.1.0. This will prefer handles over edits in edit chunks where possible.
55
- */
56
- function fullHistorySummarizer_0_1_0(editLog, currentView) {
57
- return {
58
- currentTree: currentView.getChangeNodeTree(),
59
- editHistory: editLog.getEditLogSummary(true),
60
- version: SummaryBackCompatibility_1.readFormatVersion,
61
- };
62
- }
63
- exports.fullHistorySummarizer_0_1_0 = fullHistorySummarizer_0_1_0;
64
- //# sourceMappingURL=Summary.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Summary.js","sourceRoot":"","sources":["../../src/generic/Summary.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,2EAAwF;AACxF,sCAAuD;AAGvD,0EAAyF;AAGzF;;;;GAIG;AACU,QAAA,aAAa,GAAG,OAAO,CAAC;AAqCrC;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,OAA8B,EAAE,UAA4B,EAAE,IAAkB;IACzG,OAAO,2BAAkB,CAAC,qCAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;AACxE,CAAC;AAFD,8BAEC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CACpC,OAAgC,EAChC,WAAqB;IAErB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5D,MAAM,cAAc,GAAoB,EAAE,CAAC;IAC3C,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QAChC,eAAM,CACL,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACpB,4FAA4F,CAC5F,CAAC;QAEF,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7B,cAAc,CAAC,IAAI,CAAC;gBACnB,OAAO;gBACP,EAAE,EAAE,2BAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,kDAAkD,CAAC;aAC9F,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO;QACN,WAAW,EAAE,WAAW,CAAC,iBAAiB,EAAE;QAC5C,cAAc;QACd,OAAO,EAAE,qBAAa;KACtB,CAAC;AACH,CAAC;AA3BD,sDA2BC;AAED;;GAEG;AACH,SAAgB,2BAA2B,CAC1C,OAAgC,EAChC,WAAqB;IAErB,OAAO;QACN,WAAW,EAAE,WAAW,CAAC,iBAAiB,EAAE;QAC5C,WAAW,EAAE,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAC5C,OAAO,EAAE,4CAAiB;KAC1B,CAAC;AACH,CAAC;AATD,kEASC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from '@fluidframework/core-interfaces';\nimport { IFluidSerializer, serializeHandles } from '@fluidframework/shared-object-base';\nimport { assert, assertNotUndefined } from '../Common';\nimport { EditLogSummary, OrderedEditSet } from '../EditLog';\nimport { Snapshot } from '../Snapshot';\nimport { readFormatVersion, SharedTreeSummary_0_0_2 } from '../SummaryBackCompatibility';\nimport { ChangeNode, Edit } from './PersistedTypes';\n\n/**\n * Format version for summaries that are written.\n * When next changing the format, we should add a new format version variable for the edit-specific summaries and assign it an independent\n * version number.\n */\nexport const formatVersion = '0.0.2';\n\n/**\n * Handler for summarizing the tree state.\n * The handler is invoked when saving a summary. It accepts a view of the current state of the tree, the sequenced edits known\n * to the SharedTree, and optional helpers for serializing the edit information.\n * @returns a summary of the supplied state.\n * @internal\n */\nexport type SharedTreeSummarizer<TChange> = (\n\teditLog: OrderedEditSet<TChange>,\n\tcurrentView: Snapshot\n) => SharedTreeSummaryBase;\n\n/**\n * The minimal information on a SharedTree summary. Contains the summary format version.\n */\nexport interface SharedTreeSummaryBase {\n\t/**\n\t * Field on summary under which version is stored.\n\t */\n\treadonly version: string;\n}\n\n/**\n * The contents of a SharedTree summary: the current tree, and the edits needed to get from `initialTree` to the current tree.\n * @public\n */\nexport interface SharedTreeSummary<TChange> extends SharedTreeSummaryBase {\n\treadonly currentTree: ChangeNode;\n\n\t/**\n\t * Information that can populate an edit log.\n\t */\n\treadonly editHistory?: EditLogSummary<TChange>;\n}\n\n/**\n * Serializes a SharedTree summary into a JSON string. This may later be used to initialize a SharedTree's state via `deserialize()`\n * Also replaces handle objects with their serialized form.\n *\n * @param summary - The SharedTree summary to serialize.\n * @param serializer - The serializer required to serialize handles in the summary.\n * @param bind - The object handle required to serialize handles in the summary\n */\nexport function serialize(summary: SharedTreeSummaryBase, serializer: IFluidSerializer, bind: IFluidHandle): string {\n\treturn assertNotUndefined(serializeHandles(summary, serializer, bind));\n}\n\n/**\n * Preserves the full history in the generated summary.\n * @public\n */\nexport function fullHistorySummarizer<TChange>(\n\teditLog: OrderedEditSet<TChange>,\n\tcurrentView: Snapshot\n): SharedTreeSummary_0_0_2<TChange> {\n\tconst { editChunks, editIds } = editLog.getEditLogSummary();\n\n\tconst sequencedEdits: Edit<TChange>[] = [];\n\tlet idIndex = 0;\n\teditChunks.forEach(({ chunk }) => {\n\t\tassert(\n\t\t\tArray.isArray(chunk),\n\t\t\t'Handles should not be included in the summary until format version 0.1.0 is being written.'\n\t\t);\n\n\t\tchunk.forEach(({ changes }) => {\n\t\t\tsequencedEdits.push({\n\t\t\t\tchanges,\n\t\t\t\tid: assertNotUndefined(editIds[idIndex++], 'Number of edits should match number of edit IDs.'),\n\t\t\t});\n\t\t});\n\t});\n\n\treturn {\n\t\tcurrentTree: currentView.getChangeNodeTree(),\n\t\tsequencedEdits,\n\t\tversion: formatVersion,\n\t};\n}\n\n/**\n * Generates a summary with format version 0.1.0. This will prefer handles over edits in edit chunks where possible.\n */\nexport function fullHistorySummarizer_0_1_0<TChange>(\n\teditLog: OrderedEditSet<TChange>,\n\tcurrentView: Snapshot\n): SharedTreeSummary<TChange> {\n\treturn {\n\t\tcurrentTree: currentView.getChangeNodeTree(),\n\t\teditHistory: editLog.getEditLogSummary(true),\n\t\tversion: readFormatVersion,\n\t};\n}\n"]}
@@ -1,10 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- export { EditCommittedHandler, EditCommittedEventArguments, ISharedTreeEvents, GenericSharedTree, SharedTreeEvent, SharedTreeDiagnosticEvent, } from './GenericSharedTree';
6
- export { Edit, EditWithoutId, EditBase, TraitMap, TreeNodeSequence, Payload, NodeData, TreeNode, ChangeNode, BuildNode, EditStatus, TraitLocation, SharedTreeOpType, } from './PersistedTypes';
7
- export { newEdit, newEditId } from './GenericEditUtilities';
8
- export { GenericTransaction, EditingResult, ValidEditingResult } from './GenericTransaction';
9
- export { SharedTreeSummary, SharedTreeSummaryBase, SharedTreeSummarizer, fullHistorySummarizer, fullHistorySummarizer_0_1_0, formatVersion, serialize, } from './Summary';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generic/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACN,oBAAoB,EACpB,2BAA2B,EAC3B,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,yBAAyB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,IAAI,EACJ,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,UAAU,EACV,aAAa,EACb,gBAAgB,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EACN,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,aAAa,EACb,SAAS,GACT,MAAM,WAAW,CAAC"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
4
- * Licensed under the MIT License.
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.serialize = exports.formatVersion = exports.fullHistorySummarizer_0_1_0 = exports.fullHistorySummarizer = exports.GenericTransaction = exports.newEditId = exports.newEdit = exports.SharedTreeOpType = exports.EditStatus = exports.SharedTreeDiagnosticEvent = exports.SharedTreeEvent = exports.GenericSharedTree = void 0;
8
- // API Exports
9
- var GenericSharedTree_1 = require("./GenericSharedTree");
10
- Object.defineProperty(exports, "GenericSharedTree", { enumerable: true, get: function () { return GenericSharedTree_1.GenericSharedTree; } });
11
- Object.defineProperty(exports, "SharedTreeEvent", { enumerable: true, get: function () { return GenericSharedTree_1.SharedTreeEvent; } });
12
- Object.defineProperty(exports, "SharedTreeDiagnosticEvent", { enumerable: true, get: function () { return GenericSharedTree_1.SharedTreeDiagnosticEvent; } });
13
- var PersistedTypes_1 = require("./PersistedTypes");
14
- Object.defineProperty(exports, "EditStatus", { enumerable: true, get: function () { return PersistedTypes_1.EditStatus; } });
15
- Object.defineProperty(exports, "SharedTreeOpType", { enumerable: true, get: function () { return PersistedTypes_1.SharedTreeOpType; } });
16
- var GenericEditUtilities_1 = require("./GenericEditUtilities");
17
- Object.defineProperty(exports, "newEdit", { enumerable: true, get: function () { return GenericEditUtilities_1.newEdit; } });
18
- Object.defineProperty(exports, "newEditId", { enumerable: true, get: function () { return GenericEditUtilities_1.newEditId; } });
19
- var GenericTransaction_1 = require("./GenericTransaction");
20
- Object.defineProperty(exports, "GenericTransaction", { enumerable: true, get: function () { return GenericTransaction_1.GenericTransaction; } });
21
- var Summary_1 = require("./Summary");
22
- Object.defineProperty(exports, "fullHistorySummarizer", { enumerable: true, get: function () { return Summary_1.fullHistorySummarizer; } });
23
- Object.defineProperty(exports, "fullHistorySummarizer_0_1_0", { enumerable: true, get: function () { return Summary_1.fullHistorySummarizer_0_1_0; } });
24
- Object.defineProperty(exports, "formatVersion", { enumerable: true, get: function () { return Summary_1.formatVersion; } });
25
- Object.defineProperty(exports, "serialize", { enumerable: true, get: function () { return Summary_1.serialize; } });
26
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generic/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,cAAc;AAEd,yDAO6B;AAH5B,sHAAA,iBAAiB,OAAA;AACjB,oHAAA,eAAe,OAAA;AACf,8HAAA,yBAAyB,OAAA;AAE1B,mDAc0B;AAHzB,4GAAA,UAAU,OAAA;AAEV,kHAAA,gBAAgB,OAAA;AAEjB,+DAA4D;AAAnD,+GAAA,OAAO,OAAA;AAAE,iHAAA,SAAS,OAAA;AAC3B,2DAA6F;AAApF,wHAAA,kBAAkB,OAAA;AAC3B,qCAQmB;AAJlB,gHAAA,qBAAqB,OAAA;AACrB,sHAAA,2BAA2B,OAAA;AAC3B,wGAAA,aAAa,OAAA;AACb,oGAAA,SAAS,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n// API Exports\n\nexport {\n\tEditCommittedHandler,\n\tEditCommittedEventArguments,\n\tISharedTreeEvents,\n\tGenericSharedTree,\n\tSharedTreeEvent,\n\tSharedTreeDiagnosticEvent,\n} from './GenericSharedTree';\nexport {\n\tEdit,\n\tEditWithoutId,\n\tEditBase,\n\tTraitMap,\n\tTreeNodeSequence,\n\tPayload,\n\tNodeData,\n\tTreeNode,\n\tChangeNode,\n\tBuildNode,\n\tEditStatus,\n\tTraitLocation,\n\tSharedTreeOpType,\n} from './PersistedTypes';\nexport { newEdit, newEditId } from './GenericEditUtilities';\nexport { GenericTransaction, EditingResult, ValidEditingResult } from './GenericTransaction';\nexport {\n\tSharedTreeSummary,\n\tSharedTreeSummaryBase,\n\tSharedTreeSummarizer,\n\tfullHistorySummarizer,\n\tfullHistorySummarizer_0_1_0,\n\tformatVersion,\n\tserialize,\n} from './Summary';\n"]}
package/docs/Future.md DELETED
@@ -1,155 +0,0 @@
1
- # Future Plans
2
-
3
- This document contains high-level overviews of several desired SharedTree features.
4
-
5
- ## Edits
6
-
7
- 1. Allow edits to contain metadata for use by the application. The contents would be application specific. Example use cases might include:
8
-
9
- 1. "Hierarchal edits": Encoding of how to regenerate the edit in a more semantic way (as commands in higher level domains).
10
- These are allowed to be non-deterministic, and might change behavior as the application is updated.
11
- They depend on the necessary domain code being loaded and supporting the used commands: some clients may be unable to make use of this data.
12
- 1. Metadata about the changes for use with history viewing and manipulation tools (ex: author, time etc)
13
-
14
- 1. Provide a way to detect if two edits [commute](https://en.wikipedia.org/wiki/Commutative_property) for a particular version of the document (edits might commute for some documents but not others, so providing the document is required).
15
- This can be conservative in that it would be allowed to return false if it is unclear it they commute.
16
- A basic implementation of this would be a check if the _write set_ of each change does not overlap the _read set + write set_ of the other.
17
-
18
- 1. Provide a way to detect if the applying an edit had the _intended_ effect (ex: was it turned into a noop due to conflicts, or has high risk of other kinds of merge issues)
19
-
20
- ## Conflict Resolution
21
-
22
- Rather than drop edits which cause a conflict, SharedTree could expose this, giving the application an opportunity to use the Edit metadata and its domain knowledge to attempt to recreate the Edit, resolving the conflict.
23
-
24
- # Editing History
25
-
26
- The history is a sequence of Edits, but it is append only.
27
- Thus, a logical edit of the history is done by creating a new Edit which modifies the current version of the document to be that which would have been produced by the alternative history.
28
-
29
- This functionality will be provided by a library (yet to be written) which uses SharedTree's history inspection and Editing APIs to create history modifying Edits, including metadata necessary to properly inspect and merge them with future history modifying Edits.
30
- This approach does not require extra functionality in SharedTree's core.
31
- This approach intentionally pushes the complex merge logic into code that is not part of the DDS to:
32
-
33
- - reduce the code which can possibly impact consistency of documents between clients.
34
- - reduce the computation needed to interpret the history (apply Edits): burden of hard merges goes on the client that requested the merge.
35
- - minimize the feature set which must be supported long term for document compatibility.
36
-
37
- This design has some downsides as well:
38
-
39
- - if used to make edits far back in the history, merge resolution can produce very bloated changes (large and expensive to store and apply)
40
- - repeated history edits (like someone undoing and redoing a change a lot) can bloat history
41
-
42
- Because of these downsides, it may be desirable to limit use of history editing (it is intended to handle cases like undo and redo of recent edits),
43
- particularly when the initial edit requires Automatic Conflict Resolution, and/or is working on very large Edits or Edits which are not recent.
44
-
45
- These costs can be mitigated by encoding optimizations (Ex: allowing edits to refer to trees in snapshots and/or other edits to avoid duplication).
46
-
47
- If necessary, directly supporting history editing within SharedTree's Edits could be added without breaking existing documents or legacy support for the old approach
48
- (other than optionally reading the metadata when viewing history).
49
- This is not on the roadmap and would only be considered after a formal cost/benefit analysis.
50
-
51
- ## Example History Edit
52
-
53
- This example shows how to replace the middle of 3 edits.
54
- This generalizes to making arbitrary history edits by considering A, B, C, and X to be arbitrary (possibly empty) sequences of edits.
55
-
56
- We start with these changes:
57
-
58
- ```mermaid
59
- graph LR
60
- A(A) --> B(B) --> C(C)
61
- ```
62
-
63
- And want to end with changes:
64
-
65
- ```mermaid
66
- graph LR
67
- A(A) --> X(X) --> C(C)
68
- ```
69
-
70
- Since history is append only, we actually end with:
71
-
72
- ```mermaid
73
- graph LR
74
- A(A) --> B(B) --> C(C) --> Merge(Merge)
75
- ```
76
-
77
- ### Low Level Commuting Merge
78
-
79
- If B commutes with C in the revision output from A, and X commutes with C in the revision output from A, then the history edit is considered non-conflicted, since there is a clear way to construct the Merge edit.
80
- This is the only case supported by the "Low Level Commuting Merge."
81
-
82
- In this case Merge can be constructed as inverse(B) followed by X.
83
- Note that computing the inverse depends on the revision.
84
- In this case a special revision produced by A followed by C is used.
85
- Then B is applied, constructing inverse(B) in the process to use as part of the merge.
86
-
87
- This amounts to moving B past C (allowed because they commute), then adding inverse(B), followed by X.
88
- Placing X at the end is the same as placing it between A and C since it commutes with C (at revision output by A).
89
-
90
- ```mermaid
91
- graph LR
92
- A(A) --> C(C) --> B(B) --> B2("B⁻¹") --> X(X)
93
- ```
94
-
95
- This can then be transformed into its final form, which meets the requirement of only adding to the original:
96
-
97
- ```mermaid
98
- graph LR
99
- A(A) --> B(B) --> C(C) --> B2("Merge: B⁻¹ + X")
100
- ```
101
-
102
- Note that if B deletes any nodes, B⁻¹ must restore them with the same identity.
103
-
104
- ### Automatic Conflict Resolution
105
-
106
- If a low level merge can not be applied directly because it is conflicted,
107
- it can often be restated in terms of a different history edit which will have a non-conflicting Low Level Commuting Merge.
108
-
109
- In the above example, it conflicts IIF A or X fail to commute with C.
110
- In the general case, where C is a sequence of Edits,
111
- this can always be avoided by moving edits from the beginning of C to the ends of B and X.
112
- This can continue until there no longer is a conflict due to lack of commuting.
113
- This is guaranteed to eventually fix the conflict since it can continue until C is empty, and thus commutes with anything.
114
-
115
- For initial state:
116
-
117
- ```mermaid
118
- graph LR
119
- A(A) --> B(B) --> C("C1 + C2")
120
- ```
121
-
122
- it can be regrouped like:
123
-
124
- ```mermaid
125
- graph LR
126
- A(A) --> B("B + C1") --> C(C2)
127
- ```
128
-
129
- Making the desired final state:
130
-
131
- ```mermaid
132
- graph LR
133
- A(A) --> X("X + C1") --> C(C2)
134
- ```
135
-
136
- This process can be though of as expanding the portion of the history being replaced to include a segment long enough to contain all the conflicts.
137
- This modified replacement can then be applied using the Low Level Commuting Merge.
138
-
139
- The challenge here is constructing `X + C1`.
140
- Doing this applies C1 in a different context than it was initially applied, and this C1 itself could fail to apply.
141
- This is where the hierarchal edit metadata can be used to assist merging.
142
- If there is code loaded which can use the metadata from the Edits to reapply the edits at a higher level,
143
- this can be used to generate a contextualized version of C1 to include in `X + C1`.
144
- If the higher level edits fail to be applied (either they are not available, or they fail),
145
- then the automatic merge resolution fails, and no merge is created
146
- (effectively merging the change by picking the current version as the result).
147
-
148
- ### Editing Edited History
149
-
150
- When editing history that has already been edited, care must be taken to not accidentally revert the previous edits.
151
- This can be done by using metadata in history edits to construct the branch the history edit logically made with its alternative history instead of walking the actual op sequence.
152
-
153
- When this is implemented, particular care will have to be taken to make sure that multiple edits to history which are created concurrently either merge safely (and in a way that future edits will handle), or conflict.
154
- Details of this design are to be determined, but having history edits reference the newest acknowledged edit, and the range of history they are actually editing,
155
- and only allowing edits of the acknowledged portion of history may be enough.
@@ -1,23 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { Snapshot } from './Snapshot';
6
- import { Checkout } from './Checkout';
7
- import { GenericSharedTree } from './generic';
8
- /**
9
- * Basic Session that stays up to date with the SharedTree.
10
- *
11
- * waitForPendingUpdates is always a no-op since BasicCheckout is always up to date.
12
- * @public
13
- * @sealed
14
- */
15
- export declare class BasicCheckout<TChange> extends Checkout<TChange> {
16
- /**
17
- * @param tree - the tree
18
- */
19
- constructor(tree: GenericSharedTree<TChange>);
20
- protected get latestCommittedView(): Snapshot;
21
- waitForPendingUpdates(): Promise<void>;
22
- }
23
- //# sourceMappingURL=BasicCheckout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BasicCheckout.d.ts","sourceRoot":"","sources":["../src/BasicCheckout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAA+B,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE3E;;;;;;GAMG;AACH,qBAAa,aAAa,CAAC,OAAO,CAAE,SAAQ,QAAQ,CAAC,OAAO,CAAC;IAC5D;;OAEG;gBACgB,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAMnD,SAAS,KAAK,mBAAmB,IAAI,QAAQ,CAE5C;IAEY,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"BasicCheckout.js","sourceRoot":"","sources":["../src/BasicCheckout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC;;;;;;GAMG;AACH,MAAM,OAAO,aAAuB,SAAQ,QAAiB;IAC5D;;OAEG;IACH,YAAmB,IAAgC;QAClD,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,IAA6D,EAAE,EAAE;YAC/F,IAAI,CAAC,UAAU,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,IAAc,mBAAmB;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,qBAAqB;QACjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;CACD","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { Snapshot } from './Snapshot';\nimport { Checkout } from './Checkout';\nimport { EditCommittedEventArguments, GenericSharedTree } from './generic';\n\n/**\n * Basic Session that stays up to date with the SharedTree.\n *\n * waitForPendingUpdates is always a no-op since BasicCheckout is always up to date.\n * @public\n * @sealed\n */\nexport class BasicCheckout<TChange> extends Checkout<TChange> {\n\t/**\n\t * @param tree - the tree\n\t */\n\tpublic constructor(tree: GenericSharedTree<TChange>) {\n\t\tsuper(tree, tree.currentView, (args: EditCommittedEventArguments<GenericSharedTree<TChange>>) => {\n\t\t\tthis.emitChange();\n\t\t});\n\t}\n\n\tprotected get latestCommittedView(): Snapshot {\n\t\treturn this.tree.currentView;\n\t}\n\n\tpublic async waitForPendingUpdates(): Promise<void> {\n\t\treturn Promise.resolve();\n\t}\n}\n"]}
package/lib/Snapshot.d.ts DELETED
@@ -1,198 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { NodeId, TraitLabel } from './Identifiers';
6
- import { Delta } from './Forest';
7
- import { ChangeNode, NodeData, Payload, TraitLocation } from './generic';
8
- /**
9
- * An immutable view of a distributed tree node.
10
- * @public
11
- */
12
- export interface SnapshotNode extends NodeData {
13
- readonly traits: ReadonlyMap<TraitLabel, readonly NodeId[]>;
14
- }
15
- /**
16
- * Index of a place within a trait.
17
- * 0 = before all nodes,
18
- * 1 = after first node,
19
- * etc.
20
- * @public
21
- */
22
- export declare type PlaceIndex = number & {
23
- readonly PlaceIndex: unique symbol;
24
- };
25
- /**
26
- * Index of a node within a trait.
27
- * 0 = first node,
28
- * 1 = second node,
29
- * etc.
30
- * @public
31
- */
32
- export declare type TraitNodeIndex = number & {
33
- readonly TraitNodeIndex: unique symbol;
34
- };
35
- /**
36
- * A place within a particular `Snapshot` that is anchored relative to a specific node in the tree, or relative to the outside of the trait.
37
- * Valid iff 'trait' is valid and, if provided, sibling is in the Location specified by 'trait'.
38
- * @public
39
- */
40
- export interface SnapshotPlace {
41
- readonly sibling?: NodeId;
42
- readonly side: Side;
43
- readonly trait: TraitLocation;
44
- }
45
- /**
46
- * Defines a place relative to sibling.
47
- * The "outside" of a trait is the `undefined` sibling,
48
- * so After `undefined` is the beginning of the trait, and before `undefined` is the end.
49
- *
50
- * For this purpose, traits look like:
51
- *
52
- * `{undefined} - {Node 0} - {Node 1} - ... - {Node N} - {undefined}`
53
- *
54
- * Each `{value}` in the diagram is a possible sibling, which is either a Node or undefined.
55
- * Each `-` in the above diagram is a `Place`, and can be describe as being `After` a particular `{sibling}` or `Before` it.
56
- * This means that `After` `{undefined}` means the same `Place` as before the first node
57
- * and `Before` `{undefined}` means the `Place` after the last Node.
58
- *
59
- * Each place can be specified, (aka 'anchored') in two ways (relative to the sibling before or after):
60
- * the choice of which way to anchor a place only matters when the kept across an edit, and thus evaluated in multiple contexts where the
61
- * two place description may no longer evaluate to the same place.
62
- * @public
63
- */
64
- export declare enum Side {
65
- Before = 0,
66
- After = 1
67
- }
68
- /**
69
- * Specifies the range of nodes from `start` to `end` within a trait within a particular `Snapshot`.
70
- * Valid iff start and end are valid and are withing the same trait.
71
- * @public
72
- */
73
- export interface SnapshotRange {
74
- readonly start: SnapshotPlace;
75
- readonly end: SnapshotPlace;
76
- }
77
- /**
78
- * An immutable view of a distributed tree.
79
- * @public
80
- */
81
- export declare class Snapshot {
82
- readonly root: NodeId;
83
- private readonly forest;
84
- /**
85
- * A cache of node's index within their parent trait.
86
- * Used to avoid redundant linear scans of traits.
87
- * Not shared across snapshots; initialized to empty each time a Snapshot is created.
88
- */
89
- private traitIndicesCache?;
90
- /**
91
- * Constructs a Snapshot using the supplied tree.
92
- * @param root - the root of the tree to use as the contents of the `Snapshot`
93
- */
94
- static fromTree(root: ChangeNode, expensiveValidation?: boolean): Snapshot;
95
- private constructor();
96
- /** Return a tree of JSON-compatible `ChangeNode`s representing the current state of this `Snapshot` */
97
- getChangeNodeTree(): ChangeNode;
98
- /**
99
- * Returns the number of nodes in this `Snapshot`
100
- */
101
- get size(): number;
102
- /**
103
- * @returns true iff the nodeId exists.
104
- */
105
- hasNode(id: NodeId): boolean;
106
- /**
107
- * @returns a `ChangeNode` derived from the `SnapshotNode` in this snapshot with the given `NodeId`.
108
- */
109
- getChangeNode(id: NodeId): ChangeNode;
110
- /**
111
- * @returns the `ChangeNode`s derived from the `SnapshotNode`s in this snapshot with the given `NodeId`s.
112
- */
113
- getChangeNodes(nodeIds: readonly NodeId[]): ChangeNode[];
114
- /**
115
- * Asserts the forest is in a consistent state.
116
- */
117
- assertConsistent(): void;
118
- /**
119
- * Inserts all nodes in a NodeSequence into the forest.
120
- */
121
- addNodes(sequence: Iterable<SnapshotNode>): Snapshot;
122
- /**
123
- * Remove all nodes with the given ids from the forest
124
- */
125
- deleteNodes(nodes: Iterable<NodeId>): Snapshot;
126
- /**
127
- * Parents a set of detached nodes at a specified place.
128
- * @param nodesToAttach - the nodes to parent in the specified place. The nodes must already be present in the Snapshot.
129
- * @param place - the location to insert the nodes.
130
- */
131
- attachRange(nodesToAttach: readonly NodeId[], place: SnapshotPlace): Snapshot;
132
- /**
133
- * Detaches a range of nodes from their parent. The detached nodes remain in the Snapshot.
134
- * @param rangeToDetach - the range of nodes to detach
135
- */
136
- detachRange(rangeToDetach: SnapshotRange): {
137
- snapshot: Snapshot;
138
- detached: readonly NodeId[];
139
- };
140
- /**
141
- * Sets a node's value. The node must exist in this `Snapshot`.
142
- * @param nodeId - the id of the node
143
- * @param value - the new value
144
- */
145
- setNodeValue(nodeId: NodeId, value: Payload): Snapshot;
146
- /**
147
- * @returns the index just after place (which specifies a location between items).
148
- * Performance note: this is O(siblings in trait).
149
- */
150
- findIndexWithinTrait(place: SnapshotPlace): PlaceIndex;
151
- /**
152
- * Returns the node associated with `id` in this `Snapshot`.
153
- */
154
- getSnapshotNode(id: NodeId): SnapshotNode;
155
- /**
156
- * Returns the label of the trait that a node is under. Returns undefined if the node is not present or if it is the root node.
157
- */
158
- getTraitLabel(id: NodeId): TraitLabel | undefined;
159
- /**
160
- * Returns the parent of a node. Returns undefined if the node does not exist in the snapshot or if it does not have a parent.
161
- */
162
- getParentSnapshotNode(id: NodeId): SnapshotNode | undefined;
163
- /**
164
- * @param node - must have a parent.
165
- */
166
- getTraitLocation(node: NodeId): TraitLocation;
167
- /**
168
- * @param node - must have a parent.
169
- * Performance note: this is O(siblings in trait).
170
- */
171
- getIndexInTrait(node: NodeId): TraitNodeIndex;
172
- /**
173
- * Return a trait given its location
174
- * @param traitLocation - the location of the trait
175
- */
176
- getTrait(traitLocation: TraitLocation): readonly NodeId[];
177
- private getIndexOfSide;
178
- /** Compares this snapshot to another for equality. */
179
- equals(snapshot: Snapshot): boolean;
180
- private iterateNodeDescendants;
181
- /**
182
- * Calculate the difference between two `Snapshot`s
183
- * @param snapshot - the other snapshot to compare to this one
184
- * @returns A {@link Delta} which nodes must be changed, added, and removed to get from `this` to `snapshot`.
185
- * The snapshots must share a root.
186
- */
187
- delta(snapshot: Snapshot): Delta<NodeId>;
188
- [Symbol.iterator](): IterableIterator<SnapshotNode>;
189
- }
190
- /**
191
- * Contains some redundant information. Use only in computations between edits. Do not store.
192
- * @public
193
- */
194
- export interface NodeInTrait {
195
- readonly trait: TraitLocation;
196
- readonly index: TraitNodeIndex;
197
- }
198
- //# sourceMappingURL=Snapshot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Snapshot.d.ts","sourceRoot":"","sources":["../src/Snapshot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAU,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC7C,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;CAC5D;AAED;;;;;;GAMG;AACH,oBAAY,UAAU,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,UAAU,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAEzE;;;;;;GAMG;AACH,oBAAY,cAAc,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,cAAc,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAEjF;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,oBAAY,IAAI;IACf,MAAM,IAAI;IACV,KAAK,IAAI;CACT;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;CAC5B;AAED;;;GAGG;AACH,qBAAa,QAAQ;IACpB,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAAC,CAA8B;IAExD;;;OAGG;WACW,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,mBAAmB,UAAQ,GAAG,QAAQ;IA+B/E,OAAO;IAKP,uGAAuG;IAChG,iBAAiB,IAAI,UAAU;IAItC;;OAEG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;OAEG;IACI,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInC;;OAEG;IACI,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU;IAI5C;;OAEG;IACI,cAAc,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,EAAE;IAI/D;;OAEG;IACI,gBAAgB,IAAI,IAAI;IAI/B;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,QAAQ;IAI3D;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ;IAIrD;;;;OAIG;IACI,WAAW,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,QAAQ;IAMpF;;;OAGG;IACI,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE;IAUrG;;;;OAIG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,QAAQ;IAI7D;;;OAGG;IACI,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU;IAO7D;;OAEG;IACI,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY;IAIhD;;OAEG;IACI,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAIxD;;OAEG;IACI,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAQlE;;OAEG;IACI,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;IASpD;;;OAGG;IACI,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc;IAyBpD;;;OAGG;IACI,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,MAAM,EAAE;IAIhE,OAAO,CAAC,cAAc;IAItB,sDAAsD;IAC/C,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAS1C,OAAO,CAAE,sBAAsB;IAU/B;;;;;OAKG;IACI,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;IAKxC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,YAAY,CAAC;CAG1D;AAOD;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;CAC/B"}