@fluidframework/tree 2.53.1 → 2.60.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 (424) hide show
  1. package/.eslintrc.cjs +0 -19
  2. package/.mocharc.customBenchmarks.cjs +1 -9
  3. package/CHANGELOG.md +56 -0
  4. package/api-report/tree.alpha.api.md +50 -36
  5. package/api-report/tree.beta.api.md +15 -1
  6. package/api-report/{tree.legacy.alpha.api.md → tree.legacy.beta.api.md} +5 -5
  7. package/api-report/tree.legacy.public.api.md +1 -1
  8. package/api-report/tree.public.api.md +1 -1
  9. package/dist/alpha.d.ts +8 -2
  10. package/dist/beta.d.ts +3 -0
  11. package/dist/codec/codec.d.ts +43 -6
  12. package/dist/codec/codec.d.ts.map +1 -1
  13. package/dist/codec/codec.js +22 -2
  14. package/dist/codec/codec.js.map +1 -1
  15. package/dist/codec/index.d.ts +1 -1
  16. package/dist/codec/index.d.ts.map +1 -1
  17. package/dist/codec/index.js +4 -1
  18. package/dist/codec/index.js.map +1 -1
  19. package/dist/external-utilities/index.d.ts +1 -1
  20. package/dist/external-utilities/index.d.ts.map +1 -1
  21. package/dist/external-utilities/index.js +2 -1
  22. package/dist/external-utilities/index.js.map +1 -1
  23. package/dist/external-utilities/typeboxValidator.d.ts +6 -1
  24. package/dist/external-utilities/typeboxValidator.d.ts.map +1 -1
  25. package/dist/external-utilities/typeboxValidator.js +7 -1
  26. package/dist/external-utilities/typeboxValidator.js.map +1 -1
  27. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +10 -1
  28. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
  29. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js +28 -5
  30. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
  31. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +19 -2
  32. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -1
  33. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +10 -2
  34. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -1
  35. package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts +59 -4
  36. package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
  37. package/dist/feature-libraries/chunked-forest/codec/codecs.js +9 -2
  38. package/dist/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
  39. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +46 -8
  40. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
  41. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js +91 -16
  42. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
  43. package/dist/feature-libraries/chunked-forest/codec/format.d.ts +14 -0
  44. package/dist/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -1
  45. package/dist/feature-libraries/chunked-forest/codec/format.js +10 -1
  46. package/dist/feature-libraries/chunked-forest/codec/format.js.map +1 -1
  47. package/dist/feature-libraries/chunked-forest/codec/index.d.ts +1 -1
  48. package/dist/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -1
  49. package/dist/feature-libraries/chunked-forest/codec/index.js.map +1 -1
  50. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncode.d.ts +8 -3
  51. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncode.d.ts.map +1 -1
  52. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncode.js +17 -6
  53. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncode.js.map +1 -1
  54. package/dist/feature-libraries/chunked-forest/index.d.ts +1 -1
  55. package/dist/feature-libraries/chunked-forest/index.d.ts.map +1 -1
  56. package/dist/feature-libraries/chunked-forest/index.js.map +1 -1
  57. package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -1
  58. package/dist/feature-libraries/forest-summary/codec.js +3 -0
  59. package/dist/feature-libraries/forest-summary/codec.js.map +1 -1
  60. package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts +13 -8
  61. package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
  62. package/dist/feature-libraries/forest-summary/forestSummarizer.js +76 -38
  63. package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
  64. package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts +178 -0
  65. package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts.map +1 -0
  66. package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.js +322 -0
  67. package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.js.map +1 -0
  68. package/dist/feature-libraries/forest-summary/index.d.ts +1 -1
  69. package/dist/feature-libraries/forest-summary/index.d.ts.map +1 -1
  70. package/dist/feature-libraries/forest-summary/index.js +2 -1
  71. package/dist/feature-libraries/forest-summary/index.js.map +1 -1
  72. package/dist/feature-libraries/index.d.ts +1 -1
  73. package/dist/feature-libraries/index.d.ts.map +1 -1
  74. package/dist/feature-libraries/index.js +2 -1
  75. package/dist/feature-libraries/index.js.map +1 -1
  76. package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts +2 -2
  77. package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
  78. package/dist/feature-libraries/modular-schema/modularChangeCodecs.js +1 -1
  79. package/dist/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
  80. package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts +6 -9
  81. package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -1
  82. package/dist/feature-libraries/treeCompressionUtils.d.ts +15 -0
  83. package/dist/feature-libraries/treeCompressionUtils.d.ts.map +1 -1
  84. package/dist/feature-libraries/treeCompressionUtils.js +16 -1
  85. package/dist/feature-libraries/treeCompressionUtils.js.map +1 -1
  86. package/dist/index.d.ts +3 -3
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.js +6 -2
  89. package/dist/index.js.map +1 -1
  90. package/dist/jsonDomainSchema.d.ts +1 -1
  91. package/dist/jsonDomainSchema.d.ts.map +1 -1
  92. package/dist/packageVersion.d.ts +1 -1
  93. package/dist/packageVersion.js +1 -1
  94. package/dist/packageVersion.js.map +1 -1
  95. package/dist/shared-tree/schematizingTreeView.d.ts +1 -1
  96. package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
  97. package/dist/shared-tree/schematizingTreeView.js.map +1 -1
  98. package/dist/shared-tree/sharedTree.d.ts +23 -6
  99. package/dist/shared-tree/sharedTree.d.ts.map +1 -1
  100. package/dist/shared-tree/sharedTree.js +4 -1
  101. package/dist/shared-tree/sharedTree.js.map +1 -1
  102. package/dist/shared-tree/sharedTreeChangeFamily.d.ts +2 -2
  103. package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
  104. package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -1
  105. package/dist/shared-tree/tree.d.ts.map +1 -1
  106. package/dist/shared-tree/tree.js +3 -0
  107. package/dist/shared-tree/tree.js.map +1 -1
  108. package/dist/shared-tree/treeAlpha.d.ts +9 -11
  109. package/dist/shared-tree/treeAlpha.d.ts.map +1 -1
  110. package/dist/shared-tree/treeAlpha.js.map +1 -1
  111. package/dist/shared-tree/treeCheckout.d.ts +2 -2
  112. package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
  113. package/dist/shared-tree/treeCheckout.js.map +1 -1
  114. package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
  115. package/dist/shared-tree-core/sharedTreeCore.js +13 -0
  116. package/dist/shared-tree-core/sharedTreeCore.js.map +1 -1
  117. package/dist/sharedTreeAttributes.d.ts +2 -2
  118. package/dist/sharedTreeAttributes.js +2 -2
  119. package/dist/sharedTreeAttributes.js.map +1 -1
  120. package/dist/simple-tree/api/conciseTree.d.ts.map +1 -1
  121. package/dist/simple-tree/api/conciseTree.js +1 -1
  122. package/dist/simple-tree/api/conciseTree.js.map +1 -1
  123. package/dist/simple-tree/api/customTree.d.ts +39 -11
  124. package/dist/simple-tree/api/customTree.d.ts.map +1 -1
  125. package/dist/simple-tree/api/customTree.js +79 -19
  126. package/dist/simple-tree/api/customTree.js.map +1 -1
  127. package/dist/simple-tree/api/getJsonSchema.d.ts +7 -2
  128. package/dist/simple-tree/api/getJsonSchema.d.ts.map +1 -1
  129. package/dist/simple-tree/api/getJsonSchema.js +1 -0
  130. package/dist/simple-tree/api/getJsonSchema.js.map +1 -1
  131. package/dist/simple-tree/api/index.d.ts +2 -1
  132. package/dist/simple-tree/api/index.d.ts.map +1 -1
  133. package/dist/simple-tree/api/index.js +4 -1
  134. package/dist/simple-tree/api/index.js.map +1 -1
  135. package/dist/simple-tree/api/schemaCreationUtilities.d.ts +1 -1
  136. package/dist/simple-tree/api/schemaCreationUtilities.js +1 -1
  137. package/dist/simple-tree/api/schemaCreationUtilities.js.map +1 -1
  138. package/dist/simple-tree/api/schemaFactory.d.ts +9 -6
  139. package/dist/simple-tree/api/schemaFactory.d.ts.map +1 -1
  140. package/dist/simple-tree/api/schemaFactory.js +8 -7
  141. package/dist/simple-tree/api/schemaFactory.js.map +1 -1
  142. package/dist/simple-tree/api/schemaFactoryAlpha.d.ts +13 -17
  143. package/dist/simple-tree/api/schemaFactoryAlpha.d.ts.map +1 -1
  144. package/dist/simple-tree/api/schemaFactoryAlpha.js +21 -25
  145. package/dist/simple-tree/api/schemaFactoryAlpha.js.map +1 -1
  146. package/dist/simple-tree/api/schemaFactoryBeta.d.ts +20 -0
  147. package/dist/simple-tree/api/schemaFactoryBeta.d.ts.map +1 -0
  148. package/dist/simple-tree/api/schemaFactoryBeta.js +26 -0
  149. package/dist/simple-tree/api/schemaFactoryBeta.js.map +1 -0
  150. package/dist/simple-tree/api/simpleSchemaToJsonSchema.d.ts +0 -2
  151. package/dist/simple-tree/api/simpleSchemaToJsonSchema.d.ts.map +1 -1
  152. package/dist/simple-tree/api/simpleSchemaToJsonSchema.js +6 -3
  153. package/dist/simple-tree/api/simpleSchemaToJsonSchema.js.map +1 -1
  154. package/dist/simple-tree/api/transactionTypes.d.ts +1 -0
  155. package/dist/simple-tree/api/transactionTypes.d.ts.map +1 -1
  156. package/dist/simple-tree/api/transactionTypes.js.map +1 -1
  157. package/dist/simple-tree/api/tree.d.ts +68 -74
  158. package/dist/simple-tree/api/tree.d.ts.map +1 -1
  159. package/dist/simple-tree/api/tree.js.map +1 -1
  160. package/dist/simple-tree/api/verboseTree.d.ts.map +1 -1
  161. package/dist/simple-tree/api/verboseTree.js +3 -3
  162. package/dist/simple-tree/api/verboseTree.js.map +1 -1
  163. package/dist/simple-tree/core/simpleNodeSchemaBase.d.ts +6 -0
  164. package/dist/simple-tree/core/simpleNodeSchemaBase.d.ts.map +1 -1
  165. package/dist/simple-tree/core/simpleNodeSchemaBase.js.map +1 -1
  166. package/dist/simple-tree/fieldSchema.d.ts +3 -4
  167. package/dist/simple-tree/fieldSchema.d.ts.map +1 -1
  168. package/dist/simple-tree/fieldSchema.js +0 -3
  169. package/dist/simple-tree/fieldSchema.js.map +1 -1
  170. package/dist/simple-tree/index.d.ts +1 -1
  171. package/dist/simple-tree/index.d.ts.map +1 -1
  172. package/dist/simple-tree/index.js +4 -2
  173. package/dist/simple-tree/index.js.map +1 -1
  174. package/dist/simple-tree/node-kinds/record/recordNode.d.ts.map +1 -1
  175. package/dist/simple-tree/node-kinds/record/recordNode.js +2 -3
  176. package/dist/simple-tree/node-kinds/record/recordNode.js.map +1 -1
  177. package/dist/simple-tree/simpleSchema.d.ts +12 -0
  178. package/dist/simple-tree/simpleSchema.d.ts.map +1 -1
  179. package/dist/simple-tree/simpleSchema.js.map +1 -1
  180. package/dist/simple-tree/toStoredSchema.d.ts +0 -3
  181. package/dist/simple-tree/toStoredSchema.d.ts.map +1 -1
  182. package/dist/simple-tree/toStoredSchema.js +0 -3
  183. package/dist/simple-tree/toStoredSchema.js.map +1 -1
  184. package/dist/tableSchema.d.ts +11 -80
  185. package/dist/tableSchema.d.ts.map +1 -1
  186. package/dist/tableSchema.js +200 -117
  187. package/dist/tableSchema.js.map +1 -1
  188. package/dist/treeFactory.d.ts +1 -2
  189. package/dist/treeFactory.d.ts.map +1 -1
  190. package/dist/treeFactory.js +1 -2
  191. package/dist/treeFactory.js.map +1 -1
  192. package/lib/alpha.d.ts +8 -2
  193. package/lib/beta.d.ts +3 -0
  194. package/lib/codec/codec.d.ts +43 -6
  195. package/lib/codec/codec.d.ts.map +1 -1
  196. package/lib/codec/codec.js +19 -1
  197. package/lib/codec/codec.js.map +1 -1
  198. package/lib/codec/index.d.ts +1 -1
  199. package/lib/codec/index.d.ts.map +1 -1
  200. package/lib/codec/index.js +1 -1
  201. package/lib/codec/index.js.map +1 -1
  202. package/lib/external-utilities/index.d.ts +1 -1
  203. package/lib/external-utilities/index.d.ts.map +1 -1
  204. package/lib/external-utilities/index.js +1 -1
  205. package/lib/external-utilities/index.js.map +1 -1
  206. package/lib/external-utilities/typeboxValidator.d.ts +6 -1
  207. package/lib/external-utilities/typeboxValidator.d.ts.map +1 -1
  208. package/lib/external-utilities/typeboxValidator.js +6 -0
  209. package/lib/external-utilities/typeboxValidator.js.map +1 -1
  210. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +10 -1
  211. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
  212. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js +27 -5
  213. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
  214. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +19 -2
  215. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -1
  216. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +10 -2
  217. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -1
  218. package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts +59 -4
  219. package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
  220. package/lib/feature-libraries/chunked-forest/codec/codecs.js +10 -3
  221. package/lib/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
  222. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +46 -8
  223. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
  224. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js +87 -14
  225. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
  226. package/lib/feature-libraries/chunked-forest/codec/format.d.ts +14 -0
  227. package/lib/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -1
  228. package/lib/feature-libraries/chunked-forest/codec/format.js +9 -0
  229. package/lib/feature-libraries/chunked-forest/codec/format.js.map +1 -1
  230. package/lib/feature-libraries/chunked-forest/codec/index.d.ts +1 -1
  231. package/lib/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -1
  232. package/lib/feature-libraries/chunked-forest/codec/index.js.map +1 -1
  233. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncode.d.ts +8 -3
  234. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncode.d.ts.map +1 -1
  235. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncode.js +18 -7
  236. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncode.js.map +1 -1
  237. package/lib/feature-libraries/chunked-forest/index.d.ts +1 -1
  238. package/lib/feature-libraries/chunked-forest/index.d.ts.map +1 -1
  239. package/lib/feature-libraries/chunked-forest/index.js.map +1 -1
  240. package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -1
  241. package/lib/feature-libraries/forest-summary/codec.js +3 -0
  242. package/lib/feature-libraries/forest-summary/codec.js.map +1 -1
  243. package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts +13 -8
  244. package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
  245. package/lib/feature-libraries/forest-summary/forestSummarizer.js +75 -37
  246. package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
  247. package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts +178 -0
  248. package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts.map +1 -0
  249. package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.js +318 -0
  250. package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.js.map +1 -0
  251. package/lib/feature-libraries/forest-summary/index.d.ts +1 -1
  252. package/lib/feature-libraries/forest-summary/index.d.ts.map +1 -1
  253. package/lib/feature-libraries/forest-summary/index.js +1 -1
  254. package/lib/feature-libraries/forest-summary/index.js.map +1 -1
  255. package/lib/feature-libraries/index.d.ts +1 -1
  256. package/lib/feature-libraries/index.d.ts.map +1 -1
  257. package/lib/feature-libraries/index.js +1 -1
  258. package/lib/feature-libraries/index.js.map +1 -1
  259. package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts +2 -2
  260. package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
  261. package/lib/feature-libraries/modular-schema/modularChangeCodecs.js +3 -3
  262. package/lib/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
  263. package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts +6 -9
  264. package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -1
  265. package/lib/feature-libraries/treeCompressionUtils.d.ts +15 -0
  266. package/lib/feature-libraries/treeCompressionUtils.d.ts.map +1 -1
  267. package/lib/feature-libraries/treeCompressionUtils.js +15 -0
  268. package/lib/feature-libraries/treeCompressionUtils.js.map +1 -1
  269. package/lib/index.d.ts +3 -3
  270. package/lib/index.d.ts.map +1 -1
  271. package/lib/index.js +4 -4
  272. package/lib/index.js.map +1 -1
  273. package/lib/jsonDomainSchema.d.ts +1 -1
  274. package/lib/jsonDomainSchema.d.ts.map +1 -1
  275. package/lib/packageVersion.d.ts +1 -1
  276. package/lib/packageVersion.js +1 -1
  277. package/lib/packageVersion.js.map +1 -1
  278. package/lib/shared-tree/schematizingTreeView.d.ts +1 -1
  279. package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
  280. package/lib/shared-tree/schematizingTreeView.js.map +1 -1
  281. package/lib/shared-tree/sharedTree.d.ts +23 -6
  282. package/lib/shared-tree/sharedTree.d.ts.map +1 -1
  283. package/lib/shared-tree/sharedTree.js +4 -1
  284. package/lib/shared-tree/sharedTree.js.map +1 -1
  285. package/lib/shared-tree/sharedTreeChangeFamily.d.ts +2 -2
  286. package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
  287. package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -1
  288. package/lib/shared-tree/tree.d.ts.map +1 -1
  289. package/lib/shared-tree/tree.js +3 -0
  290. package/lib/shared-tree/tree.js.map +1 -1
  291. package/lib/shared-tree/treeAlpha.d.ts +9 -11
  292. package/lib/shared-tree/treeAlpha.d.ts.map +1 -1
  293. package/lib/shared-tree/treeAlpha.js.map +1 -1
  294. package/lib/shared-tree/treeCheckout.d.ts +2 -2
  295. package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
  296. package/lib/shared-tree/treeCheckout.js.map +1 -1
  297. package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
  298. package/lib/shared-tree-core/sharedTreeCore.js +13 -0
  299. package/lib/shared-tree-core/sharedTreeCore.js.map +1 -1
  300. package/lib/sharedTreeAttributes.d.ts +2 -2
  301. package/lib/sharedTreeAttributes.js +2 -2
  302. package/lib/sharedTreeAttributes.js.map +1 -1
  303. package/lib/simple-tree/api/conciseTree.d.ts.map +1 -1
  304. package/lib/simple-tree/api/conciseTree.js +2 -2
  305. package/lib/simple-tree/api/conciseTree.js.map +1 -1
  306. package/lib/simple-tree/api/customTree.d.ts +39 -11
  307. package/lib/simple-tree/api/customTree.d.ts.map +1 -1
  308. package/lib/simple-tree/api/customTree.js +79 -19
  309. package/lib/simple-tree/api/customTree.js.map +1 -1
  310. package/lib/simple-tree/api/getJsonSchema.d.ts +7 -2
  311. package/lib/simple-tree/api/getJsonSchema.d.ts.map +1 -1
  312. package/lib/simple-tree/api/getJsonSchema.js +1 -0
  313. package/lib/simple-tree/api/getJsonSchema.js.map +1 -1
  314. package/lib/simple-tree/api/index.d.ts +2 -1
  315. package/lib/simple-tree/api/index.d.ts.map +1 -1
  316. package/lib/simple-tree/api/index.js +2 -1
  317. package/lib/simple-tree/api/index.js.map +1 -1
  318. package/lib/simple-tree/api/schemaCreationUtilities.d.ts +1 -1
  319. package/lib/simple-tree/api/schemaCreationUtilities.js +1 -1
  320. package/lib/simple-tree/api/schemaCreationUtilities.js.map +1 -1
  321. package/lib/simple-tree/api/schemaFactory.d.ts +9 -6
  322. package/lib/simple-tree/api/schemaFactory.d.ts.map +1 -1
  323. package/lib/simple-tree/api/schemaFactory.js +6 -6
  324. package/lib/simple-tree/api/schemaFactory.js.map +1 -1
  325. package/lib/simple-tree/api/schemaFactoryAlpha.d.ts +13 -17
  326. package/lib/simple-tree/api/schemaFactoryAlpha.d.ts.map +1 -1
  327. package/lib/simple-tree/api/schemaFactoryAlpha.js +22 -26
  328. package/lib/simple-tree/api/schemaFactoryAlpha.js.map +1 -1
  329. package/lib/simple-tree/api/schemaFactoryBeta.d.ts +20 -0
  330. package/lib/simple-tree/api/schemaFactoryBeta.d.ts.map +1 -0
  331. package/lib/simple-tree/api/schemaFactoryBeta.js +22 -0
  332. package/lib/simple-tree/api/schemaFactoryBeta.js.map +1 -0
  333. package/lib/simple-tree/api/simpleSchemaToJsonSchema.d.ts +0 -2
  334. package/lib/simple-tree/api/simpleSchemaToJsonSchema.d.ts.map +1 -1
  335. package/lib/simple-tree/api/simpleSchemaToJsonSchema.js +6 -3
  336. package/lib/simple-tree/api/simpleSchemaToJsonSchema.js.map +1 -1
  337. package/lib/simple-tree/api/transactionTypes.d.ts +1 -0
  338. package/lib/simple-tree/api/transactionTypes.d.ts.map +1 -1
  339. package/lib/simple-tree/api/transactionTypes.js.map +1 -1
  340. package/lib/simple-tree/api/tree.d.ts +68 -74
  341. package/lib/simple-tree/api/tree.d.ts.map +1 -1
  342. package/lib/simple-tree/api/tree.js.map +1 -1
  343. package/lib/simple-tree/api/verboseTree.d.ts.map +1 -1
  344. package/lib/simple-tree/api/verboseTree.js +4 -4
  345. package/lib/simple-tree/api/verboseTree.js.map +1 -1
  346. package/lib/simple-tree/core/simpleNodeSchemaBase.d.ts +6 -0
  347. package/lib/simple-tree/core/simpleNodeSchemaBase.d.ts.map +1 -1
  348. package/lib/simple-tree/core/simpleNodeSchemaBase.js.map +1 -1
  349. package/lib/simple-tree/fieldSchema.d.ts +3 -4
  350. package/lib/simple-tree/fieldSchema.d.ts.map +1 -1
  351. package/lib/simple-tree/fieldSchema.js +0 -3
  352. package/lib/simple-tree/fieldSchema.js.map +1 -1
  353. package/lib/simple-tree/index.d.ts +1 -1
  354. package/lib/simple-tree/index.d.ts.map +1 -1
  355. package/lib/simple-tree/index.js +1 -1
  356. package/lib/simple-tree/index.js.map +1 -1
  357. package/lib/simple-tree/node-kinds/record/recordNode.d.ts.map +1 -1
  358. package/lib/simple-tree/node-kinds/record/recordNode.js +2 -3
  359. package/lib/simple-tree/node-kinds/record/recordNode.js.map +1 -1
  360. package/lib/simple-tree/simpleSchema.d.ts +12 -0
  361. package/lib/simple-tree/simpleSchema.d.ts.map +1 -1
  362. package/lib/simple-tree/simpleSchema.js.map +1 -1
  363. package/lib/simple-tree/toStoredSchema.d.ts +0 -3
  364. package/lib/simple-tree/toStoredSchema.d.ts.map +1 -1
  365. package/lib/simple-tree/toStoredSchema.js +0 -3
  366. package/lib/simple-tree/toStoredSchema.js.map +1 -1
  367. package/lib/tableSchema.d.ts +11 -80
  368. package/lib/tableSchema.d.ts.map +1 -1
  369. package/lib/tableSchema.js +201 -118
  370. package/lib/tableSchema.js.map +1 -1
  371. package/lib/treeFactory.d.ts +1 -2
  372. package/lib/treeFactory.d.ts.map +1 -1
  373. package/lib/treeFactory.js +1 -2
  374. package/lib/treeFactory.js.map +1 -1
  375. package/package.json +21 -21
  376. package/src/codec/codec.ts +52 -7
  377. package/src/codec/index.ts +4 -0
  378. package/src/external-utilities/index.ts +1 -1
  379. package/src/external-utilities/typeboxValidator.ts +7 -1
  380. package/src/feature-libraries/chunked-forest/codec/chunkDecoding.ts +38 -4
  381. package/src/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.ts +10 -3
  382. package/src/feature-libraries/chunked-forest/codec/codecs.ts +96 -8
  383. package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +123 -19
  384. package/src/feature-libraries/chunked-forest/codec/format.ts +11 -0
  385. package/src/feature-libraries/chunked-forest/codec/index.ts +4 -0
  386. package/src/feature-libraries/chunked-forest/codec/schemaBasedEncode.ts +28 -3
  387. package/src/feature-libraries/chunked-forest/index.ts +2 -0
  388. package/src/feature-libraries/forest-summary/codec.ts +3 -0
  389. package/src/feature-libraries/forest-summary/forestSummarizer.ts +118 -50
  390. package/src/feature-libraries/forest-summary/incrementalSummaryBuilder.ts +511 -0
  391. package/src/feature-libraries/forest-summary/index.ts +1 -1
  392. package/src/feature-libraries/index.ts +5 -1
  393. package/src/feature-libraries/modular-schema/modularChangeCodecs.ts +8 -4
  394. package/src/feature-libraries/treeCompressionUtils.ts +19 -0
  395. package/src/index.ts +6 -1
  396. package/src/packageVersion.ts +1 -1
  397. package/src/shared-tree/schematizingTreeView.ts +1 -1
  398. package/src/shared-tree/sharedTree.ts +37 -4
  399. package/src/shared-tree/sharedTreeChangeFamily.ts +2 -2
  400. package/src/shared-tree/tree.ts +3 -0
  401. package/src/shared-tree/treeAlpha.ts +10 -11
  402. package/src/shared-tree/treeCheckout.ts +2 -2
  403. package/src/shared-tree-core/sharedTreeCore.ts +17 -0
  404. package/src/sharedTreeAttributes.ts +2 -2
  405. package/src/simple-tree/api/conciseTree.ts +2 -1
  406. package/src/simple-tree/api/customTree.ts +102 -32
  407. package/src/simple-tree/api/getJsonSchema.ts +7 -2
  408. package/src/simple-tree/api/index.ts +3 -0
  409. package/src/simple-tree/api/schemaCreationUtilities.ts +1 -1
  410. package/src/simple-tree/api/schemaFactory.ts +21 -14
  411. package/src/simple-tree/api/schemaFactoryAlpha.ts +29 -30
  412. package/src/simple-tree/api/schemaFactoryBeta.ts +28 -0
  413. package/src/simple-tree/api/simpleSchemaToJsonSchema.ts +7 -3
  414. package/src/simple-tree/api/transactionTypes.ts +1 -0
  415. package/src/simple-tree/api/tree.ts +75 -81
  416. package/src/simple-tree/api/verboseTree.ts +42 -39
  417. package/src/simple-tree/core/simpleNodeSchemaBase.ts +6 -0
  418. package/src/simple-tree/fieldSchema.ts +3 -4
  419. package/src/simple-tree/index.ts +3 -0
  420. package/src/simple-tree/node-kinds/record/recordNode.ts +2 -3
  421. package/src/simple-tree/simpleSchema.ts +12 -0
  422. package/src/simple-tree/toStoredSchema.ts +0 -3
  423. package/src/tableSchema.ts +261 -243
  424. package/src/treeFactory.ts +1 -2
@@ -1 +1 @@
1
- {"version":3,"file":"toStoredSchema.js","sourceRoot":"","sources":["../../src/simple-tree/toStoredSchema.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { unreachableCase, fail } from \"@fluidframework/core-utils/internal\";\nimport { UsageError } from \"@fluidframework/telemetry-utils/internal\";\n\nimport {\n\tEmptyKey,\n\tLeafNodeStoredSchema,\n\tMapNodeStoredSchema,\n\tObjectNodeStoredSchema,\n\ttype FieldKey,\n\ttype FieldKindIdentifier,\n\ttype TreeFieldStoredSchema,\n\ttype TreeNodeSchemaIdentifier,\n\ttype TreeNodeStoredSchema,\n\ttype TreeStoredSchema,\n\ttype TreeTypeSet,\n} from \"../core/index.js\";\nimport { FieldKinds, type FlexFieldKind } from \"../feature-libraries/index.js\";\nimport { brand, getOrCreate, type JsonCompatibleReadOnlyObject } from \"../util/index.js\";\n\nimport {\n\tallowedTypeFilter,\n\tconvertAllowedTypes,\n\tgetTreeNodeSchemaPrivateData,\n\tisClassBasedSchema,\n\tNodeKind,\n\ttype SimpleNodeSchemaBase,\n\ttype StoredSchemaGenerationOptions,\n} from \"./core/index.js\";\nimport {\n\tFieldKind,\n\tFieldSchemaAlpha,\n\tnormalizeFieldSchema,\n\ttype ImplicitAnnotatedFieldSchema,\n\ttype ImplicitFieldSchema,\n} from \"./fieldSchema.js\";\nimport type { SimpleFieldSchema, SimpleNodeSchema } from \"./simpleSchema.js\";\nimport { walkFieldSchema } from \"./walkFieldSchema.js\";\n\nconst viewToStoredCache = new WeakMap<\n\tStoredSchemaGenerationOptions,\n\tWeakMap<ImplicitFieldSchema, TreeStoredSchema>\n>();\n\nexport const restrictiveStoredSchemaGenerationOptions: StoredSchemaGenerationOptions = {\n\tincludeStaged: () => false,\n};\n\nexport const permissiveStoredSchemaGenerationOptions: StoredSchemaGenerationOptions = {\n\tincludeStaged: () => true,\n};\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema} for use in schema upgrades.\n *\n * TODO: once upgrades are more flexible, this should take in more options, including the old schema and specific upgrades to enable.\n */\nexport function toUpgradeSchema(root: ImplicitAnnotatedFieldSchema): TreeStoredSchema {\n\treturn toStoredSchema(root, restrictiveStoredSchemaGenerationOptions);\n}\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema} for use as initial document schema.\n */\nexport function toInitialSchema(root: ImplicitAnnotatedFieldSchema): TreeStoredSchema {\n\treturn toStoredSchema(root, restrictiveStoredSchemaGenerationOptions);\n}\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema} to used for unhydrated nodes.\n * @remarks\n * This allows as much as possible, relying on further validation when inserting the content.\n *\n * TODO: this should get additional options to enable support for unknown optional fields.\n */\nexport const toUnhydratedSchema = permissiveStoredSchemaGenerationOptions;\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema}.\n *\n * @privateRemarks\n * TODO:#38722 When runtime schema upgrades are implemented, this will need to be updated to check if\n * a staged allowed type has been upgraded and if so, include it in the conversion.\n *\n * @throws\n * Throws a `UsageError` if multiple schemas are encountered with the same identifier.\n */\nexport function toStoredSchema(\n\troot: ImplicitAnnotatedFieldSchema,\n\toptions: StoredSchemaGenerationOptions,\n): TreeStoredSchema {\n\tconst cache = getOrCreate(viewToStoredCache, options, () => new WeakMap());\n\treturn getOrCreate(cache, root, () => {\n\t\tconst normalized = normalizeFieldSchema(root);\n\t\tconst nodeSchema: Map<TreeNodeSchemaIdentifier, TreeNodeStoredSchema> = new Map();\n\t\twalkFieldSchema(normalized, {\n\t\t\tnode(schema) {\n\t\t\t\tif (nodeSchema.has(brand(schema.identifier))) {\n\t\t\t\t\t// Use JSON.stringify to quote and escape identifier string.\n\t\t\t\t\tthrow new UsageError(\n\t\t\t\t\t\t`Multiple schema encountered with the identifier ${JSON.stringify(\n\t\t\t\t\t\t\tschema.identifier,\n\t\t\t\t\t\t)}. Remove or rename them to avoid the collision.`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tnodeSchema.set(\n\t\t\t\t\tbrand(schema.identifier),\n\t\t\t\t\tgetStoredSchema(\n\t\t\t\t\t\tschema as SimpleNodeSchemaBase<NodeKind> as SimpleNodeSchema,\n\t\t\t\t\t\toptions,\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t\t},\n\t\t\tallowedTypeFilter: (allowedType) => allowedTypeFilter(allowedType, options),\n\t\t});\n\n\t\tconst result: TreeStoredSchema = {\n\t\t\tnodeSchema,\n\t\t\trootFieldSchema: convertField(normalized, options),\n\t\t};\n\t\treturn result;\n\t});\n}\n\n/**\n * Normalizes an {@link ImplicitFieldSchema} into a {@link TreeFieldSchema}.\n */\nexport function convertField(\n\tschema: SimpleFieldSchema | FieldSchemaAlpha,\n\toptions: StoredSchemaGenerationOptions,\n): TreeFieldStoredSchema {\n\tconst kind: FieldKindIdentifier =\n\t\tconvertFieldKind.get(schema.kind)?.identifier ?? fail(0xae3 /* Invalid field kind */);\n\tlet types: TreeTypeSet;\n\t// eslint-disable-next-line unicorn/prefer-ternary\n\tif (schema instanceof FieldSchemaAlpha) {\n\t\ttypes = convertAllowedTypes(schema.annotatedAllowedTypesNormalized, options);\n\t} else {\n\t\ttypes = schema.allowedTypesIdentifiers as TreeTypeSet;\n\t}\n\treturn { kind, types, persistedMetadata: schema.persistedMetadata };\n}\n\n/**\n * A map that converts {@link FieldKind} to {@link FlexFieldKind}.\n */\nexport const convertFieldKind: ReadonlyMap<FieldKind, FlexFieldKind> = new Map<\n\tFieldKind,\n\tFlexFieldKind\n>([\n\t[FieldKind.Optional, FieldKinds.optional],\n\t[FieldKind.Required, FieldKinds.required],\n\t[FieldKind.Identifier, FieldKinds.identifier],\n]);\n\n/**\n * Converts a {@link TreeNodeSchema} into a {@link TreeNodeStoredSchema}.\n * @privateRemarks\n * TODO: Persist node metadata once schema FormatV2 is supported.\n *\n * TODO: AB#43548: Using a stored schema for unhydrated flex trees does not handle schema evolution features like \"allowUnknownOptionalFields\".\n * Usage of this and the conversion which wrap it should be audited and reduced.\n */\nexport function getStoredSchema(\n\tschema: SimpleNodeSchema,\n\toptions: StoredSchemaGenerationOptions,\n): TreeNodeStoredSchema {\n\tif (isClassBasedSchema(schema)) {\n\t\treturn getTreeNodeSchemaPrivateData(schema).toStored(options);\n\t}\n\tconst kind = schema.kind;\n\tswitch (kind) {\n\t\tcase NodeKind.Leaf: {\n\t\t\treturn new LeafNodeStoredSchema(schema.leafKind);\n\t\t}\n\t\tcase NodeKind.Map:\n\t\tcase NodeKind.Record: {\n\t\t\tconst types = schema.allowedTypesIdentifiers as TreeTypeSet;\n\t\t\treturn new MapNodeStoredSchema(\n\t\t\t\t{\n\t\t\t\t\tkind: FieldKinds.optional.identifier,\n\t\t\t\t\ttypes,\n\t\t\t\t\tpersistedMetadata: schema.persistedMetadata,\n\t\t\t\t},\n\t\t\t\t// TODO: Find a way to avoid injecting persistedMetadata twice in these constructor calls.\n\t\t\t\tschema.persistedMetadata,\n\t\t\t);\n\t\t}\n\t\tcase NodeKind.Array: {\n\t\t\tconst types = schema.allowedTypesIdentifiers as TreeTypeSet;\n\t\t\treturn arrayNodeStoredSchema(types, schema.persistedMetadata);\n\t\t}\n\t\tcase NodeKind.Object: {\n\t\t\tconst fields: Map<FieldKey, TreeFieldStoredSchema> = new Map();\n\t\t\tfor (const fieldSchema of schema.fields.values()) {\n\t\t\t\tfields.set(brand(fieldSchema.storedKey), convertField(fieldSchema, options));\n\t\t\t}\n\t\t\treturn new ObjectNodeStoredSchema(fields, schema.persistedMetadata);\n\t\t}\n\t\tdefault: {\n\t\t\tunreachableCase(kind);\n\t\t}\n\t}\n}\n\nexport function arrayNodeStoredSchema(\n\ttypes: TreeTypeSet,\n\tpersistedMetadata: JsonCompatibleReadOnlyObject | undefined,\n): ObjectNodeStoredSchema {\n\tconst field = {\n\t\tkind: FieldKinds.sequence.identifier,\n\t\ttypes,\n\t\tpersistedMetadata,\n\t};\n\tconst fields = new Map([[EmptyKey, field]]);\n\treturn new ObjectNodeStoredSchema(fields, persistedMetadata);\n}\n"]}
1
+ {"version":3,"file":"toStoredSchema.js","sourceRoot":"","sources":["../../src/simple-tree/toStoredSchema.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { unreachableCase, fail } from \"@fluidframework/core-utils/internal\";\nimport { UsageError } from \"@fluidframework/telemetry-utils/internal\";\n\nimport {\n\tEmptyKey,\n\tLeafNodeStoredSchema,\n\tMapNodeStoredSchema,\n\tObjectNodeStoredSchema,\n\ttype FieldKey,\n\ttype FieldKindIdentifier,\n\ttype TreeFieldStoredSchema,\n\ttype TreeNodeSchemaIdentifier,\n\ttype TreeNodeStoredSchema,\n\ttype TreeStoredSchema,\n\ttype TreeTypeSet,\n} from \"../core/index.js\";\nimport { FieldKinds, type FlexFieldKind } from \"../feature-libraries/index.js\";\nimport { brand, getOrCreate, type JsonCompatibleReadOnlyObject } from \"../util/index.js\";\n\nimport {\n\tallowedTypeFilter,\n\tconvertAllowedTypes,\n\tgetTreeNodeSchemaPrivateData,\n\tisClassBasedSchema,\n\tNodeKind,\n\ttype SimpleNodeSchemaBase,\n\ttype StoredSchemaGenerationOptions,\n} from \"./core/index.js\";\nimport {\n\tFieldKind,\n\tFieldSchemaAlpha,\n\tnormalizeFieldSchema,\n\ttype ImplicitAnnotatedFieldSchema,\n\ttype ImplicitFieldSchema,\n} from \"./fieldSchema.js\";\nimport type { SimpleFieldSchema, SimpleNodeSchema } from \"./simpleSchema.js\";\nimport { walkFieldSchema } from \"./walkFieldSchema.js\";\n\nconst viewToStoredCache = new WeakMap<\n\tStoredSchemaGenerationOptions,\n\tWeakMap<ImplicitFieldSchema, TreeStoredSchema>\n>();\n\nexport const restrictiveStoredSchemaGenerationOptions: StoredSchemaGenerationOptions = {\n\tincludeStaged: () => false,\n};\n\nexport const permissiveStoredSchemaGenerationOptions: StoredSchemaGenerationOptions = {\n\tincludeStaged: () => true,\n};\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema} for use in schema upgrades.\n *\n * TODO: once upgrades are more flexible, this should take in more options, including the old schema and specific upgrades to enable.\n */\nexport function toUpgradeSchema(root: ImplicitAnnotatedFieldSchema): TreeStoredSchema {\n\treturn toStoredSchema(root, restrictiveStoredSchemaGenerationOptions);\n}\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema} for use as initial document schema.\n */\nexport function toInitialSchema(root: ImplicitAnnotatedFieldSchema): TreeStoredSchema {\n\treturn toStoredSchema(root, restrictiveStoredSchemaGenerationOptions);\n}\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema} to used for unhydrated nodes.\n * @remarks\n * This allows as much as possible, relying on further validation when inserting the content.\n *\n * TODO: this should get additional options to enable support for unknown optional fields.\n */\nexport const toUnhydratedSchema = permissiveStoredSchemaGenerationOptions;\n\n/**\n * Converts a {@link ImplicitAnnotatedFieldSchema} into a {@link TreeStoredSchema}.\n *\n * @privateRemarks\n * TODO:#38722 When runtime schema upgrades are implemented, this will need to be updated to check if\n * a staged allowed type has been upgraded and if so, include it in the conversion.\n *\n * @throws\n * Throws a `UsageError` if multiple schemas are encountered with the same identifier.\n */\nexport function toStoredSchema(\n\troot: ImplicitAnnotatedFieldSchema,\n\toptions: StoredSchemaGenerationOptions,\n): TreeStoredSchema {\n\tconst cache = getOrCreate(viewToStoredCache, options, () => new WeakMap());\n\treturn getOrCreate(cache, root, () => {\n\t\tconst normalized = normalizeFieldSchema(root);\n\t\tconst nodeSchema: Map<TreeNodeSchemaIdentifier, TreeNodeStoredSchema> = new Map();\n\t\twalkFieldSchema(normalized, {\n\t\t\tnode(schema) {\n\t\t\t\tif (nodeSchema.has(brand(schema.identifier))) {\n\t\t\t\t\t// Use JSON.stringify to quote and escape identifier string.\n\t\t\t\t\tthrow new UsageError(\n\t\t\t\t\t\t`Multiple schema encountered with the identifier ${JSON.stringify(\n\t\t\t\t\t\t\tschema.identifier,\n\t\t\t\t\t\t)}. Remove or rename them to avoid the collision.`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tnodeSchema.set(\n\t\t\t\t\tbrand(schema.identifier),\n\t\t\t\t\tgetStoredSchema(\n\t\t\t\t\t\tschema as SimpleNodeSchemaBase<NodeKind> as SimpleNodeSchema,\n\t\t\t\t\t\toptions,\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t\t},\n\t\t\tallowedTypeFilter: (allowedType) => allowedTypeFilter(allowedType, options),\n\t\t});\n\n\t\tconst result: TreeStoredSchema = {\n\t\t\tnodeSchema,\n\t\t\trootFieldSchema: convertField(normalized, options),\n\t\t};\n\t\treturn result;\n\t});\n}\n\n/**\n * Normalizes an {@link ImplicitFieldSchema} into a {@link TreeFieldSchema}.\n */\nexport function convertField(\n\tschema: SimpleFieldSchema | FieldSchemaAlpha,\n\toptions: StoredSchemaGenerationOptions,\n): TreeFieldStoredSchema {\n\tconst kind: FieldKindIdentifier =\n\t\tconvertFieldKind.get(schema.kind)?.identifier ?? fail(0xae3 /* Invalid field kind */);\n\tlet types: TreeTypeSet;\n\t// eslint-disable-next-line unicorn/prefer-ternary\n\tif (schema instanceof FieldSchemaAlpha) {\n\t\ttypes = convertAllowedTypes(schema.annotatedAllowedTypesNormalized, options);\n\t} else {\n\t\ttypes = schema.allowedTypesIdentifiers as TreeTypeSet;\n\t}\n\treturn { kind, types, persistedMetadata: schema.persistedMetadata };\n}\n\n/**\n * A map that converts {@link FieldKind} to {@link FlexFieldKind}.\n */\nexport const convertFieldKind: ReadonlyMap<FieldKind, FlexFieldKind> = new Map<\n\tFieldKind,\n\tFlexFieldKind\n>([\n\t[FieldKind.Optional, FieldKinds.optional],\n\t[FieldKind.Required, FieldKinds.required],\n\t[FieldKind.Identifier, FieldKinds.identifier],\n]);\n\n/**\n * Converts a {@link TreeNodeSchema} into a {@link TreeNodeStoredSchema}.\n * @privateRemarks\n * TODO: Persist node metadata once schema FormatV2 is supported.\n */\nexport function getStoredSchema(\n\tschema: SimpleNodeSchema,\n\toptions: StoredSchemaGenerationOptions,\n): TreeNodeStoredSchema {\n\tif (isClassBasedSchema(schema)) {\n\t\treturn getTreeNodeSchemaPrivateData(schema).toStored(options);\n\t}\n\tconst kind = schema.kind;\n\tswitch (kind) {\n\t\tcase NodeKind.Leaf: {\n\t\t\treturn new LeafNodeStoredSchema(schema.leafKind);\n\t\t}\n\t\tcase NodeKind.Map:\n\t\tcase NodeKind.Record: {\n\t\t\tconst types = schema.allowedTypesIdentifiers as TreeTypeSet;\n\t\t\treturn new MapNodeStoredSchema(\n\t\t\t\t{\n\t\t\t\t\tkind: FieldKinds.optional.identifier,\n\t\t\t\t\ttypes,\n\t\t\t\t\tpersistedMetadata: schema.persistedMetadata,\n\t\t\t\t},\n\t\t\t\t// TODO: Find a way to avoid injecting persistedMetadata twice in these constructor calls.\n\t\t\t\tschema.persistedMetadata,\n\t\t\t);\n\t\t}\n\t\tcase NodeKind.Array: {\n\t\t\tconst types = schema.allowedTypesIdentifiers as TreeTypeSet;\n\t\t\treturn arrayNodeStoredSchema(types, schema.persistedMetadata);\n\t\t}\n\t\tcase NodeKind.Object: {\n\t\t\tconst fields: Map<FieldKey, TreeFieldStoredSchema> = new Map();\n\t\t\tfor (const fieldSchema of schema.fields.values()) {\n\t\t\t\tfields.set(brand(fieldSchema.storedKey), convertField(fieldSchema, options));\n\t\t\t}\n\t\t\treturn new ObjectNodeStoredSchema(fields, schema.persistedMetadata);\n\t\t}\n\t\tdefault: {\n\t\t\tunreachableCase(kind);\n\t\t}\n\t}\n}\n\nexport function arrayNodeStoredSchema(\n\ttypes: TreeTypeSet,\n\tpersistedMetadata: JsonCompatibleReadOnlyObject | undefined,\n): ObjectNodeStoredSchema {\n\tconst field = {\n\t\tkind: FieldKinds.sequence.identifier,\n\t\ttypes,\n\t\tpersistedMetadata,\n\t};\n\tconst fields = new Map([[EmptyKey, field]]);\n\treturn new ObjectNodeStoredSchema(fields, persistedMetadata);\n}\n"]}
@@ -420,21 +420,6 @@ export declare namespace TableSchema {
420
420
  */
421
421
  readonly row: string | TreeNodeFromImplicitAllowedTypes<TRow>;
422
422
  }
423
- /**
424
- * {@link TableSchema.Table.insertColumn} parameters.
425
- * @alpha
426
- */
427
- interface InsertColumnParameters<TColumn extends ImplicitAllowedTypes> {
428
- /**
429
- * The index at which to insert the new column.
430
- * @remarks If not provided, the column will be appended to the end of the table.
431
- */
432
- readonly index?: number | undefined;
433
- /**
434
- * The column to insert.
435
- */
436
- readonly column: InsertableTreeNodeFromImplicitAllowedTypes<TColumn>;
437
- }
438
423
  /**
439
424
  * {@link TableSchema.Table.insertColumns} parameters.
440
425
  * @alpha
@@ -450,21 +435,6 @@ export declare namespace TableSchema {
450
435
  */
451
436
  readonly columns: InsertableTreeNodeFromImplicitAllowedTypes<TColumn>[];
452
437
  }
453
- /**
454
- * {@link TableSchema.Table.insertRow} parameters.
455
- * @alpha
456
- */
457
- interface InsertRowParameters<TRow extends ImplicitAllowedTypes> {
458
- /**
459
- * The index at which to insert the new row.
460
- * @remarks If not provided, the row will be appended to the end of the table.
461
- */
462
- readonly index?: number | undefined;
463
- /**
464
- * The row to insert.
465
- */
466
- readonly row: InsertableTreeNodeFromImplicitAllowedTypes<TRow>;
467
- }
468
438
  /**
469
439
  * {@link TableSchema.Table.insertRows} parameters.
470
440
  * @alpha
@@ -524,14 +494,6 @@ export declare namespace TableSchema {
524
494
  * @param key - A key that uniquely distinguishes a cell in the table, represented as a combination of the column ID and row ID.
525
495
  */
526
496
  getCell(key: CellKey<TColumn, TRow>): TreeNodeFromImplicitAllowedTypes<TCell> | undefined;
527
- /**
528
- * Inserts a column into the table.
529
- *
530
- * @throws Throws an error if the specified index is out of range.
531
- *
532
- * No column is inserted in this case.
533
- */
534
- insertColumn(params: InsertColumnParameters<TColumn>): TreeNodeFromImplicitAllowedTypes<TColumn>;
535
497
  /**
536
498
  * Inserts 0 or more columns into the table.
537
499
  *
@@ -540,19 +502,6 @@ export declare namespace TableSchema {
540
502
  * No columns are inserted in this case.
541
503
  */
542
504
  insertColumns(params: InsertColumnsParameters<TColumn>): TreeNodeFromImplicitAllowedTypes<TColumn>[];
543
- /**
544
- * Inserts a row into the table.
545
- *
546
- * @throws
547
- * Throws an error in the following cases:
548
- *
549
- * - The row contains cells, but the table does not contain matching columns for one or more of those cells.
550
- *
551
- * - The specified index is out of range.
552
- *
553
- * No row is inserted in these cases.
554
- */
555
- insertRow(params: InsertRowParameters<TRow>): TreeNodeFromImplicitAllowedTypes<TRow>;
556
505
  /**
557
506
  * Inserts 0 or more rows into the table.
558
507
  *
@@ -572,19 +521,19 @@ export declare namespace TableSchema {
572
521
  */
573
522
  setCell(params: SetCellParameters<TCell, TColumn, TRow>): void;
574
523
  /**
575
- * Removes the specified column from the table.
524
+ * Removes a range of columns from the table.
525
+ *
576
526
  * @remarks
577
527
  * Also removes any corresponding cells from the table's rows.
578
528
  *
579
529
  * Note: this operation can be slow for tables with many rows.
580
530
  * We are actively working on improving the performance of this operation, but for now it may have a negative
581
531
  * impact on performance.
582
- *
583
- * @param column - The {@link TableSchema.Column | column} or {@link TableSchema.Column.id | column ID} to remove.
584
- * @throws Throws an error if the column is not in the table.
585
- * In this case, no columns are removed.
532
+ * @param index - The starting index of the range to remove. Default: `0`.
533
+ * @param count - The number of columns to remove. Default: all remaining columns starting from `index`.
534
+ * @throws Throws an error if the specified range is invalid. In this case, no columns are removed.
586
535
  */
587
- removeColumn(column: string | TreeNodeFromImplicitAllowedTypes<TColumn>): TreeNodeFromImplicitAllowedTypes<TColumn>;
536
+ removeColumns(index?: number | undefined, count?: number | undefined): TreeNodeFromImplicitAllowedTypes<TColumn>[];
588
537
  /**
589
538
  * Removes 0 or more columns from the table.
590
539
  * @remarks
@@ -615,25 +564,12 @@ export declare namespace TableSchema {
615
564
  */
616
565
  removeColumns(columns: readonly string[]): TreeNodeFromImplicitAllowedTypes<TColumn>[];
617
566
  /**
618
- * Removes all columns from the table.
619
- *
620
- * @remarks
621
- * Also removes any corresponding cells from the table's rows.
622
- *
623
- * Note: this operation can be slow for tables with many rows.
624
- * We are actively working on improving the performance of this operation, but for now it may have a negative
625
- * impact on performance.
626
- *
627
- * @returns The removed columns.
628
- */
629
- removeAllColumns(): TreeNodeFromImplicitAllowedTypes<TColumn>[];
630
- /**
631
- * Removes the specified row from the table.
632
- * @param row - The {@link TableSchema.Row | row} or {@link TableSchema.Row.id | row ID} to remove.
633
- * @throws Throws an error if the row is not in the table.
634
- * In this case, no rows are removed.
567
+ * Removes a range of rows from the table.
568
+ * @param index - The starting index of the range to remove. Default: `0`.
569
+ * @param count - The number of rows to remove. Default: all remaining rows starting from `index`.
570
+ * @throws Throws an error if the specified range is invalid. In this case, no rows are removed.
635
571
  */
636
- removeRow(row: string | TreeNodeFromImplicitAllowedTypes<TRow>): TreeNodeFromImplicitAllowedTypes<TRow>;
572
+ removeRows(index?: number | undefined, count?: number | undefined): TreeNodeFromImplicitAllowedTypes<TRow>[];
637
573
  /**
638
574
  * Removes 0 or more rows from the table.
639
575
  * @param rows - The rows to remove.
@@ -648,11 +584,6 @@ export declare namespace TableSchema {
648
584
  * In this case, no rows are removed.
649
585
  */
650
586
  removeRows(rows: readonly string[]): TreeNodeFromImplicitAllowedTypes<TRow>[];
651
- /**
652
- * Removes all rows from the table.
653
- * @returns The removed rows.
654
- */
655
- removeAllRows(): TreeNodeFromImplicitAllowedTypes<TRow>[];
656
587
  /**
657
588
  * Removes the cell at the specified location in the table.
658
589
  * @returns The cell if it exists, otherwise undefined.
@@ -1 +1 @@
1
- {"version":3,"file":"tableSchema.d.ts","sourceRoot":"","sources":["../src/tableSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tableSchema.d.ts","sourceRoot":"","sources":["../src/tableSchema.ts"],"names":[],"mappings":"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"}