document-model 2.20.0 → 2.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (740) hide show
  1. package/dist/index.d.ts +17 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +11 -0
  4. package/dist/{browser/src → src}/document/actions/creators.d.ts +3 -2
  5. package/dist/src/document/actions/creators.d.ts.map +1 -0
  6. package/dist/{node/src/document/actions/creators.d.ts → src/document/actions/creators.js} +17 -9
  7. package/dist/src/document/actions/operations.d.ts +23 -0
  8. package/dist/src/document/actions/operations.d.ts.map +1 -0
  9. package/dist/src/document/actions/operations.js +130 -0
  10. package/dist/src/document/actions/types.d.ts +16 -0
  11. package/dist/src/document/actions/types.d.ts.map +1 -0
  12. package/dist/src/document/actions/types.js +6 -0
  13. package/dist/{browser/src → src}/document/object.d.ts +16 -14
  14. package/dist/src/document/object.d.ts.map +1 -0
  15. package/dist/{node/src/document/object.d.ts → src/document/object.js} +92 -30
  16. package/dist/src/document/reducer.d.ts +49 -0
  17. package/dist/src/document/reducer.d.ts.map +1 -0
  18. package/dist/src/document/reducer.js +341 -0
  19. package/dist/{browser/src → src}/document/schema/types.d.ts +1 -1
  20. package/dist/src/document/schema/types.d.ts.map +1 -0
  21. package/dist/src/document/schema/types.js +1 -0
  22. package/dist/{browser/src → src}/document/schema/zod.d.ts +20 -20
  23. package/dist/src/document/schema/zod.d.ts.map +1 -0
  24. package/dist/src/document/schema/zod.js +112 -0
  25. package/dist/{node/src → src}/document/signal.d.ts +9 -9
  26. package/dist/src/document/signal.d.ts.map +1 -0
  27. package/dist/src/document/signal.js +1 -0
  28. package/dist/src/document/types.d.ts +302 -0
  29. package/dist/src/document/types.d.ts.map +1 -0
  30. package/dist/src/document/types.js +1 -0
  31. package/dist/src/document/utils/base.d.ts +84 -0
  32. package/dist/src/document/utils/base.d.ts.map +1 -0
  33. package/dist/src/document/utils/base.js +328 -0
  34. package/dist/{browser/src → src}/document/utils/browser.d.ts +1 -1
  35. package/dist/src/document/utils/browser.d.ts.map +1 -0
  36. package/dist/src/document/utils/browser.js +46 -0
  37. package/dist/src/document/utils/crypto.d.ts +11 -0
  38. package/dist/src/document/utils/crypto.d.ts.map +1 -0
  39. package/dist/src/document/utils/crypto.js +79 -0
  40. package/dist/src/document/utils/document-helpers.d.ts +78 -0
  41. package/dist/src/document/utils/document-helpers.d.ts.map +1 -0
  42. package/dist/src/document/utils/document-helpers.js +410 -0
  43. package/dist/{browser/src → src}/document/utils/errors.d.ts +1 -1
  44. package/dist/src/document/utils/errors.d.ts.map +1 -0
  45. package/dist/src/document/utils/errors.js +18 -0
  46. package/dist/{browser/src → src}/document/utils/file.d.ts +9 -8
  47. package/dist/src/document/utils/file.d.ts.map +1 -0
  48. package/dist/src/document/utils/file.js +155 -0
  49. package/dist/{browser/src → src}/document/utils/node.d.ts +2 -2
  50. package/dist/src/document/utils/node.d.ts.map +1 -0
  51. package/dist/src/document/utils/node.js +54 -0
  52. package/dist/src/document/utils/validation.d.ts +3 -0
  53. package/dist/src/document/utils/validation.d.ts.map +1 -0
  54. package/dist/src/document/utils/validation.js +22 -0
  55. package/dist/src/document-model/custom/reducers/header.d.ts +3 -0
  56. package/dist/src/document-model/custom/reducers/header.d.ts.map +1 -0
  57. package/dist/src/document-model/custom/reducers/header.js +22 -0
  58. package/dist/src/document-model/custom/reducers/module.d.ts +3 -0
  59. package/dist/src/document-model/custom/reducers/module.d.ts.map +1 -0
  60. package/dist/src/document-model/custom/reducers/module.js +40 -0
  61. package/dist/src/document-model/custom/reducers/operation-error.d.ts +3 -0
  62. package/dist/src/document-model/custom/reducers/operation-error.d.ts.map +1 -0
  63. package/dist/src/document-model/custom/reducers/operation-error.js +93 -0
  64. package/dist/src/document-model/custom/reducers/operation-example.d.ts +3 -0
  65. package/dist/src/document-model/custom/reducers/operation-example.d.ts.map +1 -0
  66. package/dist/src/document-model/custom/reducers/operation-example.js +52 -0
  67. package/dist/src/document-model/custom/reducers/operation.d.ts +3 -0
  68. package/dist/src/document-model/custom/reducers/operation.d.ts.map +1 -0
  69. package/dist/src/document-model/custom/reducers/operation.js +124 -0
  70. package/dist/src/document-model/custom/reducers/state.d.ts +3 -0
  71. package/dist/src/document-model/custom/reducers/state.d.ts.map +1 -0
  72. package/dist/src/document-model/custom/reducers/state.js +70 -0
  73. package/dist/src/document-model/custom/reducers/versioning.d.ts +8 -0
  74. package/dist/src/document-model/custom/reducers/versioning.d.ts.map +1 -0
  75. package/dist/src/document-model/custom/reducers/versioning.js +22 -0
  76. package/dist/{browser/src → src}/document-model/custom/utils.d.ts +3 -3
  77. package/dist/src/document-model/custom/utils.d.ts.map +1 -0
  78. package/dist/src/document-model/custom/utils.js +104 -0
  79. package/dist/src/document-model/gen/actions.d.ts +16 -0
  80. package/dist/src/document-model/gen/actions.d.ts.map +1 -0
  81. package/dist/src/document-model/gen/actions.js +7 -0
  82. package/dist/src/document-model/gen/constants.d.ts +7 -0
  83. package/dist/src/document-model/gen/constants.d.ts.map +1 -0
  84. package/dist/src/document-model/gen/constants.js +33 -0
  85. package/dist/src/document-model/gen/creators.d.ts +8 -0
  86. package/dist/src/document-model/gen/creators.d.ts.map +1 -0
  87. package/dist/src/document-model/gen/creators.js +7 -0
  88. package/dist/src/document-model/gen/document-model.d.ts +3 -0
  89. package/dist/src/document-model/gen/document-model.d.ts.map +1 -0
  90. package/dist/src/document-model/gen/document-model.js +541 -0
  91. package/dist/src/document-model/gen/header/actions.d.ts +10 -0
  92. package/dist/src/document-model/gen/header/actions.d.ts.map +1 -0
  93. package/dist/src/document-model/gen/header/actions.js +1 -0
  94. package/dist/{browser/src → src}/document-model/gen/header/creators.d.ts +2 -2
  95. package/dist/src/document-model/gen/header/creators.d.ts.map +1 -0
  96. package/dist/src/document-model/gen/header/creators.js +9 -0
  97. package/dist/src/document-model/gen/header/object.d.ts +13 -0
  98. package/dist/src/document-model/gen/header/object.d.ts.map +1 -0
  99. package/dist/src/document-model/gen/header/object.js +22 -0
  100. package/dist/{node/src → src}/document-model/gen/header/operations.d.ts +2 -2
  101. package/dist/src/document-model/gen/header/operations.d.ts.map +1 -0
  102. package/dist/src/document-model/gen/header/operations.js +1 -0
  103. package/dist/src/document-model/gen/module/actions.d.ts +9 -0
  104. package/dist/src/document-model/gen/module/actions.d.ts.map +1 -0
  105. package/dist/src/document-model/gen/module/actions.js +1 -0
  106. package/dist/{node/src → src}/document-model/gen/module/creators.d.ts +2 -2
  107. package/dist/src/document-model/gen/module/creators.d.ts.map +1 -0
  108. package/dist/src/document-model/gen/module/creators.js +8 -0
  109. package/dist/src/document-model/gen/module/object.d.ts +12 -0
  110. package/dist/src/document-model/gen/module/object.d.ts.map +1 -0
  111. package/dist/src/document-model/gen/module/object.js +19 -0
  112. package/dist/{browser/src → src}/document-model/gen/module/operations.d.ts +2 -2
  113. package/dist/src/document-model/gen/module/operations.d.ts.map +1 -0
  114. package/dist/src/document-model/gen/module/operations.js +1 -0
  115. package/dist/src/document-model/gen/object.d.ts +30 -0
  116. package/dist/src/document-model/gen/object.d.ts.map +1 -0
  117. package/dist/src/document-model/gen/object.js +46 -0
  118. package/dist/src/document-model/gen/operation/actions.d.ts +14 -0
  119. package/dist/src/document-model/gen/operation/actions.d.ts.map +1 -0
  120. package/dist/src/document-model/gen/operation/actions.js +1 -0
  121. package/dist/{browser/src → src}/document-model/gen/operation/creators.d.ts +2 -2
  122. package/dist/src/document-model/gen/operation/creators.d.ts.map +1 -0
  123. package/dist/src/document-model/gen/operation/creators.js +19 -0
  124. package/dist/{node/src → src}/document-model/gen/operation/object.d.ts +6 -5
  125. package/dist/src/document-model/gen/operation/object.d.ts.map +1 -0
  126. package/dist/src/document-model/gen/operation/object.js +34 -0
  127. package/dist/{browser/src → src}/document-model/gen/operation/operations.d.ts +2 -2
  128. package/dist/src/document-model/gen/operation/operations.d.ts.map +1 -0
  129. package/dist/src/document-model/gen/operation/operations.js +1 -0
  130. package/dist/src/document-model/gen/operation-error/actions.d.ts +11 -0
  131. package/dist/src/document-model/gen/operation-error/actions.d.ts.map +1 -0
  132. package/dist/src/document-model/gen/operation-error/actions.js +1 -0
  133. package/dist/{node/src → src}/document-model/gen/operation-error/creators.d.ts +2 -2
  134. package/dist/src/document-model/gen/operation-error/creators.d.ts.map +1 -0
  135. package/dist/src/document-model/gen/operation-error/creators.js +16 -0
  136. package/dist/{node/src → src}/document-model/gen/operation-error/object.d.ts +6 -5
  137. package/dist/src/document-model/gen/operation-error/object.d.ts.map +1 -0
  138. package/dist/src/document-model/gen/operation-error/object.js +25 -0
  139. package/dist/{browser/src → src}/document-model/gen/operation-error/operations.d.ts +2 -2
  140. package/dist/src/document-model/gen/operation-error/operations.d.ts.map +1 -0
  141. package/dist/src/document-model/gen/operation-error/operations.js +1 -0
  142. package/dist/src/document-model/gen/operation-example/actions.d.ts +8 -0
  143. package/dist/src/document-model/gen/operation-example/actions.d.ts.map +1 -0
  144. package/dist/src/document-model/gen/operation-example/actions.js +1 -0
  145. package/dist/{browser/src → src}/document-model/gen/operation-example/creators.d.ts +2 -2
  146. package/dist/src/document-model/gen/operation-example/creators.d.ts.map +1 -0
  147. package/dist/src/document-model/gen/operation-example/creators.js +13 -0
  148. package/dist/src/document-model/gen/operation-example/object.d.ts +12 -0
  149. package/dist/src/document-model/gen/operation-example/object.d.ts.map +1 -0
  150. package/dist/src/document-model/gen/operation-example/object.js +16 -0
  151. package/dist/{browser/src → src}/document-model/gen/operation-example/operations.d.ts +2 -2
  152. package/dist/src/document-model/gen/operation-example/operations.d.ts.map +1 -0
  153. package/dist/src/document-model/gen/operation-example/operations.js +1 -0
  154. package/dist/src/document-model/gen/reducer.d.ts +5 -0
  155. package/dist/src/document-model/gen/reducer.d.ts.map +1 -0
  156. package/dist/src/document-model/gen/reducer.js +192 -0
  157. package/dist/{node/src → src}/document-model/gen/schema/types.d.ts +5 -1
  158. package/dist/src/document-model/gen/schema/types.d.ts.map +1 -0
  159. package/dist/src/document-model/gen/schema/types.js +1 -0
  160. package/dist/{browser/src → src}/document-model/gen/schema/zod.d.ts +198 -198
  161. package/dist/src/document-model/gen/schema/zod.d.ts.map +1 -0
  162. package/dist/src/document-model/gen/schema/zod.js +393 -0
  163. package/dist/src/document-model/gen/state/actions.d.ts +10 -0
  164. package/dist/src/document-model/gen/state/actions.d.ts.map +1 -0
  165. package/dist/src/document-model/gen/state/actions.js +1 -0
  166. package/dist/{browser/src → src}/document-model/gen/state/creators.d.ts +2 -2
  167. package/dist/src/document-model/gen/state/creators.d.ts.map +1 -0
  168. package/dist/src/document-model/gen/state/creators.js +9 -0
  169. package/dist/src/document-model/gen/state/object.d.ts +13 -0
  170. package/dist/src/document-model/gen/state/object.d.ts.map +1 -0
  171. package/dist/src/document-model/gen/state/object.js +22 -0
  172. package/dist/{browser/src → src}/document-model/gen/state/operations.d.ts +2 -2
  173. package/dist/src/document-model/gen/state/operations.d.ts.map +1 -0
  174. package/dist/src/document-model/gen/state/operations.js +1 -0
  175. package/dist/src/document-model/gen/types.d.ts +7 -0
  176. package/dist/src/document-model/gen/types.d.ts.map +1 -0
  177. package/dist/src/document-model/gen/types.js +1 -0
  178. package/dist/src/document-model/gen/utils.d.ts +11 -0
  179. package/dist/src/document-model/gen/utils.d.ts.map +1 -0
  180. package/dist/src/document-model/gen/utils.js +29 -0
  181. package/dist/src/document-model/gen/versioning/actions.d.ts +9 -0
  182. package/dist/src/document-model/gen/versioning/actions.d.ts.map +1 -0
  183. package/dist/src/document-model/gen/versioning/actions.js +1 -0
  184. package/dist/{browser/src → src}/document-model/gen/versioning/creators.d.ts +2 -2
  185. package/dist/src/document-model/gen/versioning/creators.d.ts.map +1 -0
  186. package/dist/src/document-model/gen/versioning/creators.js +12 -0
  187. package/dist/src/document-model/gen/versioning/object.d.ts +13 -0
  188. package/dist/src/document-model/gen/versioning/object.d.ts.map +1 -0
  189. package/dist/src/document-model/gen/versioning/object.js +19 -0
  190. package/dist/{browser/src → src}/document-model/gen/versioning/operations.d.ts +2 -2
  191. package/dist/src/document-model/gen/versioning/operations.d.ts.map +1 -0
  192. package/dist/src/document-model/gen/versioning/operations.js +1 -0
  193. package/dist/src/document-model/module.d.ts +3 -0
  194. package/dist/src/document-model/module.d.ts.map +1 -0
  195. package/dist/src/document-model/module.js +12 -0
  196. package/dist/src/document-model/types.d.ts +4 -0
  197. package/dist/src/document-model/types.d.ts.map +1 -0
  198. package/dist/src/document-model/types.js +1 -0
  199. package/dist/test/document/crypto.test.d.ts.map +1 -0
  200. package/dist/test/document/crypto.test.js +180 -0
  201. package/dist/test/document/event-vs-command.test.d.ts.map +1 -0
  202. package/dist/test/document/event-vs-command.test.js +168 -0
  203. package/dist/test/document/local.test.d.ts.map +1 -0
  204. package/dist/test/document/local.test.js +247 -0
  205. package/dist/test/document/object.test.d.ts.map +1 -0
  206. package/dist/test/document/object.test.js +12 -0
  207. package/dist/test/document/operation-id.test.d.ts.map +1 -0
  208. package/dist/test/document/operation-id.test.js +158 -0
  209. package/dist/test/document/prune.test.d.ts.map +1 -0
  210. package/dist/test/document/prune.test.js +176 -0
  211. package/dist/test/document/reducer.test.d.ts.map +1 -0
  212. package/dist/test/document/reducer.test.js +268 -0
  213. package/dist/test/document/skip-operations.test.d.ts.map +1 -0
  214. package/dist/test/document/skip-operations.test.js +441 -0
  215. package/dist/test/document/undo-redo.test.d.ts.map +1 -0
  216. package/dist/test/document/undo-redo.test.js +376 -0
  217. package/dist/test/document/utils.test.d.ts.map +1 -0
  218. package/dist/test/document/utils.test.js +151 -0
  219. package/dist/test/document-helpers/addUndo.test.d.ts.map +1 -0
  220. package/dist/test/document-helpers/addUndo.test.js +119 -0
  221. package/dist/test/document-helpers/attachBranch.test.d.ts.map +1 -0
  222. package/dist/test/document-helpers/attachBranch.test.js +363 -0
  223. package/dist/test/document-helpers/checkCleanedOperationsIntegrity.test.d.ts.map +1 -0
  224. package/dist/test/document-helpers/checkCleanedOperationsIntegrity.test.js +251 -0
  225. package/dist/test/document-helpers/conflictResolution.test.d.ts.map +1 -0
  226. package/dist/test/document-helpers/conflictResolution.test.js +108 -0
  227. package/dist/test/document-helpers/filterDuplicatedOperations.test.d.ts.map +1 -0
  228. package/dist/test/document-helpers/filterDuplicatedOperations.test.js +125 -0
  229. package/dist/test/document-helpers/garbageCollect.test.d.ts.map +1 -0
  230. package/dist/test/document-helpers/garbageCollect.test.js +135 -0
  231. package/dist/test/document-helpers/groupOperationsByScope.test.d.ts.map +1 -0
  232. package/dist/test/document-helpers/groupOperationsByScope.test.js +97 -0
  233. package/dist/test/document-helpers/merge.test.d.ts.map +1 -0
  234. package/dist/test/document-helpers/merge.test.js +905 -0
  235. package/dist/test/document-helpers/nextSkipNumber.test.d.ts.map +1 -0
  236. package/dist/test/document-helpers/nextSkipNumber.test.js +134 -0
  237. package/dist/test/document-helpers/prepareOperations.test.d.ts.map +1 -0
  238. package/dist/test/document-helpers/prepareOperations.test.js +303 -0
  239. package/dist/test/document-helpers/removeExistingOperations.test.d.ts.map +1 -0
  240. package/dist/test/document-helpers/removeExistingOperations.test.js +149 -0
  241. package/dist/test/document-helpers/reshuffleByTimestamp.test.d.ts.map +1 -0
  242. package/dist/test/document-helpers/reshuffleByTimestamp.test.js +147 -0
  243. package/dist/test/document-helpers/reshuffleByTimestampAndIndex.test.d.ts.map +1 -0
  244. package/dist/test/document-helpers/reshuffleByTimestampAndIndex.test.js +199 -0
  245. package/dist/test/document-helpers/skipHeaderOperations.test.d.ts.map +1 -0
  246. package/dist/test/document-helpers/skipHeaderOperations.test.js +73 -0
  247. package/dist/test/document-helpers/sortOperations.test.d.ts.map +1 -0
  248. package/dist/test/document-helpers/sortOperations.test.js +100 -0
  249. package/dist/test/document-helpers/split.test.d.ts.map +1 -0
  250. package/dist/test/document-helpers/split.test.js +120 -0
  251. package/dist/{browser/test → test}/document-helpers/utils.d.ts +1 -1
  252. package/dist/test/document-helpers/utils.d.ts.map +1 -0
  253. package/dist/test/document-helpers/utils.js +21 -0
  254. package/dist/test/document-model/object.test.d.ts.map +1 -0
  255. package/dist/test/document-model/object.test.js +242 -0
  256. package/dist/test/document-model/replay.test.d.ts.map +1 -0
  257. package/dist/test/document-model/replay.test.js +137 -0
  258. package/dist/test/document-model/skip-operations.test.d.ts.map +1 -0
  259. package/dist/test/document-model/skip-operations.test.js +216 -0
  260. package/dist/test/document-model/validation.test.d.ts.map +1 -0
  261. package/dist/test/document-model/validation.test.js +257 -0
  262. package/dist/test/document-model/zip.test.d.ts.map +1 -0
  263. package/dist/test/document-model/zip.test.js +80 -0
  264. package/dist/test/helpers.d.ts +31 -0
  265. package/dist/test/helpers.d.ts.map +1 -0
  266. package/dist/test/helpers.js +69 -0
  267. package/dist/tsconfig.tsbuildinfo +1 -0
  268. package/dist/vitest.config.d.ts +3 -0
  269. package/dist/vitest.config.d.ts.map +1 -0
  270. package/dist/vitest.config.js +6 -0
  271. package/package.json +16 -53
  272. package/dist/browser/cjs/document-model.js +0 -21
  273. package/dist/browser/cjs/document-model.js.map +0 -1
  274. package/dist/browser/cjs/document.js +0 -16
  275. package/dist/browser/cjs/document.js.map +0 -1
  276. package/dist/browser/cjs/index.js +0 -14
  277. package/dist/browser/cjs/index.js.map +0 -1
  278. package/dist/browser/cjs/internal/creators-DJg3Kd1P.js +0 -2901
  279. package/dist/browser/cjs/internal/creators-DJg3Kd1P.js.map +0 -1
  280. package/dist/browser/cjs/internal/index-CGExio27.js +0 -2216
  281. package/dist/browser/cjs/internal/index-CGExio27.js.map +0 -1
  282. package/dist/browser/cjs/internal/index-CQg4iLBq.js +0 -19
  283. package/dist/browser/cjs/internal/index-CQg4iLBq.js.map +0 -1
  284. package/dist/browser/cjs/internal/index-DcdJY5J3.js +0 -47
  285. package/dist/browser/cjs/internal/index-DcdJY5J3.js.map +0 -1
  286. package/dist/browser/cjs/internal/object-C3OfcOUa.js +0 -183
  287. package/dist/browser/cjs/internal/object-C3OfcOUa.js.map +0 -1
  288. package/dist/browser/cjs/package.json +0 -1
  289. package/dist/browser/cjs/utils.js +0 -44
  290. package/dist/browser/cjs/utils.js.map +0 -1
  291. package/dist/browser/document-model.d.ts +0 -2
  292. package/dist/browser/document.d.ts +0 -2
  293. package/dist/browser/es/document-model.js +0 -21
  294. package/dist/browser/es/document-model.js.map +0 -1
  295. package/dist/browser/es/document.js +0 -16
  296. package/dist/browser/es/document.js.map +0 -1
  297. package/dist/browser/es/index.js +0 -14
  298. package/dist/browser/es/index.js.map +0 -1
  299. package/dist/browser/es/internal/creators-Dir4K_-h.js +0 -2902
  300. package/dist/browser/es/internal/creators-Dir4K_-h.js.map +0 -1
  301. package/dist/browser/es/internal/index-BxCiP58y.js +0 -48
  302. package/dist/browser/es/internal/index-BxCiP58y.js.map +0 -1
  303. package/dist/browser/es/internal/index-HlkIVQZ6.js +0 -2217
  304. package/dist/browser/es/internal/index-HlkIVQZ6.js.map +0 -1
  305. package/dist/browser/es/internal/index-qYp7hG3r.js +0 -20
  306. package/dist/browser/es/internal/index-qYp7hG3r.js.map +0 -1
  307. package/dist/browser/es/internal/object-CzFSgK3q.js +0 -184
  308. package/dist/browser/es/internal/object-CzFSgK3q.js.map +0 -1
  309. package/dist/browser/es/package.json +0 -1
  310. package/dist/browser/es/utils.js +0 -44
  311. package/dist/browser/es/utils.js.map +0 -1
  312. package/dist/browser/index.d.ts +0 -6
  313. package/dist/browser/src/document/actions/creators.d.ts.map +0 -1
  314. package/dist/browser/src/document/actions/index.d.ts +0 -15
  315. package/dist/browser/src/document/actions/index.d.ts.map +0 -1
  316. package/dist/browser/src/document/actions/types.d.ts +0 -16
  317. package/dist/browser/src/document/actions/types.d.ts.map +0 -1
  318. package/dist/browser/src/document/index.d.ts +0 -7
  319. package/dist/browser/src/document/index.d.ts.map +0 -1
  320. package/dist/browser/src/document/object.d.ts.map +0 -1
  321. package/dist/browser/src/document/reducer.d.ts +0 -66
  322. package/dist/browser/src/document/reducer.d.ts.map +0 -1
  323. package/dist/browser/src/document/schema/index.d.ts +0 -3
  324. package/dist/browser/src/document/schema/index.d.ts.map +0 -1
  325. package/dist/browser/src/document/schema/types.d.ts.map +0 -1
  326. package/dist/browser/src/document/schema/zod.d.ts.map +0 -1
  327. package/dist/browser/src/document/signal.d.ts +0 -30
  328. package/dist/browser/src/document/signal.d.ts.map +0 -1
  329. package/dist/browser/src/document/types.d.ts +0 -292
  330. package/dist/browser/src/document/types.d.ts.map +0 -1
  331. package/dist/browser/src/document/utils/base.d.ts +0 -89
  332. package/dist/browser/src/document/utils/base.d.ts.map +0 -1
  333. package/dist/browser/src/document/utils/browser.d.ts.map +0 -1
  334. package/dist/browser/src/document/utils/crypto.d.ts +0 -11
  335. package/dist/browser/src/document/utils/crypto.d.ts.map +0 -1
  336. package/dist/browser/src/document/utils/document-helpers.d.ts +0 -74
  337. package/dist/browser/src/document/utils/document-helpers.d.ts.map +0 -1
  338. package/dist/browser/src/document/utils/errors.d.ts.map +0 -1
  339. package/dist/browser/src/document/utils/file.d.ts.map +0 -1
  340. package/dist/browser/src/document/utils/index.d.ts +0 -8
  341. package/dist/browser/src/document/utils/index.d.ts.map +0 -1
  342. package/dist/browser/src/document/utils/node.d.ts.map +0 -1
  343. package/dist/browser/src/document/utils/validation.d.ts +0 -3
  344. package/dist/browser/src/document/utils/validation.d.ts.map +0 -1
  345. package/dist/browser/src/document-model/custom/reducers/header.d.ts +0 -3
  346. package/dist/browser/src/document-model/custom/reducers/header.d.ts.map +0 -1
  347. package/dist/browser/src/document-model/custom/reducers/module.d.ts +0 -3
  348. package/dist/browser/src/document-model/custom/reducers/module.d.ts.map +0 -1
  349. package/dist/browser/src/document-model/custom/reducers/operation-error.d.ts +0 -3
  350. package/dist/browser/src/document-model/custom/reducers/operation-error.d.ts.map +0 -1
  351. package/dist/browser/src/document-model/custom/reducers/operation-example.d.ts +0 -3
  352. package/dist/browser/src/document-model/custom/reducers/operation-example.d.ts.map +0 -1
  353. package/dist/browser/src/document-model/custom/reducers/operation.d.ts +0 -3
  354. package/dist/browser/src/document-model/custom/reducers/operation.d.ts.map +0 -1
  355. package/dist/browser/src/document-model/custom/reducers/state.d.ts +0 -3
  356. package/dist/browser/src/document-model/custom/reducers/state.d.ts.map +0 -1
  357. package/dist/browser/src/document-model/custom/reducers/versioning.d.ts +0 -3
  358. package/dist/browser/src/document-model/custom/reducers/versioning.d.ts.map +0 -1
  359. package/dist/browser/src/document-model/custom/utils.d.ts.map +0 -1
  360. package/dist/browser/src/document-model/gen/actions.d.ts +0 -16
  361. package/dist/browser/src/document-model/gen/actions.d.ts.map +0 -1
  362. package/dist/browser/src/document-model/gen/creators.d.ts +0 -8
  363. package/dist/browser/src/document-model/gen/creators.d.ts.map +0 -1
  364. package/dist/browser/src/document-model/gen/document-model.d.ts +0 -3
  365. package/dist/browser/src/document-model/gen/document-model.d.ts.map +0 -1
  366. package/dist/browser/src/document-model/gen/header/actions.d.ts +0 -10
  367. package/dist/browser/src/document-model/gen/header/actions.d.ts.map +0 -1
  368. package/dist/browser/src/document-model/gen/header/creators.d.ts.map +0 -1
  369. package/dist/browser/src/document-model/gen/header/object.d.ts +0 -13
  370. package/dist/browser/src/document-model/gen/header/object.d.ts.map +0 -1
  371. package/dist/browser/src/document-model/gen/header/operations.d.ts +0 -11
  372. package/dist/browser/src/document-model/gen/header/operations.d.ts.map +0 -1
  373. package/dist/browser/src/document-model/gen/index.d.ts +0 -6
  374. package/dist/browser/src/document-model/gen/index.d.ts.map +0 -1
  375. package/dist/browser/src/document-model/gen/module/actions.d.ts +0 -9
  376. package/dist/browser/src/document-model/gen/module/actions.d.ts.map +0 -1
  377. package/dist/browser/src/document-model/gen/module/creators.d.ts +0 -8
  378. package/dist/browser/src/document-model/gen/module/creators.d.ts.map +0 -1
  379. package/dist/browser/src/document-model/gen/module/object.d.ts +0 -12
  380. package/dist/browser/src/document-model/gen/module/object.d.ts.map +0 -1
  381. package/dist/browser/src/document-model/gen/module/operations.d.ts.map +0 -1
  382. package/dist/browser/src/document-model/gen/object.d.ts +0 -29
  383. package/dist/browser/src/document-model/gen/object.d.ts.map +0 -1
  384. package/dist/browser/src/document-model/gen/operation/actions.d.ts +0 -14
  385. package/dist/browser/src/document-model/gen/operation/actions.d.ts.map +0 -1
  386. package/dist/browser/src/document-model/gen/operation/creators.d.ts.map +0 -1
  387. package/dist/browser/src/document-model/gen/operation/object.d.ts +0 -17
  388. package/dist/browser/src/document-model/gen/operation/object.d.ts.map +0 -1
  389. package/dist/browser/src/document-model/gen/operation/operations.d.ts.map +0 -1
  390. package/dist/browser/src/document-model/gen/operation-error/actions.d.ts +0 -11
  391. package/dist/browser/src/document-model/gen/operation-error/actions.d.ts.map +0 -1
  392. package/dist/browser/src/document-model/gen/operation-error/creators.d.ts +0 -10
  393. package/dist/browser/src/document-model/gen/operation-error/creators.d.ts.map +0 -1
  394. package/dist/browser/src/document-model/gen/operation-error/object.d.ts +0 -14
  395. package/dist/browser/src/document-model/gen/operation-error/object.d.ts.map +0 -1
  396. package/dist/browser/src/document-model/gen/operation-error/operations.d.ts.map +0 -1
  397. package/dist/browser/src/document-model/gen/operation-example/actions.d.ts +0 -8
  398. package/dist/browser/src/document-model/gen/operation-example/actions.d.ts.map +0 -1
  399. package/dist/browser/src/document-model/gen/operation-example/creators.d.ts.map +0 -1
  400. package/dist/browser/src/document-model/gen/operation-example/object.d.ts +0 -11
  401. package/dist/browser/src/document-model/gen/operation-example/object.d.ts.map +0 -1
  402. package/dist/browser/src/document-model/gen/operation-example/operations.d.ts.map +0 -1
  403. package/dist/browser/src/document-model/gen/reducer.d.ts +0 -6
  404. package/dist/browser/src/document-model/gen/reducer.d.ts.map +0 -1
  405. package/dist/browser/src/document-model/gen/schema/index.d.ts +0 -3
  406. package/dist/browser/src/document-model/gen/schema/index.d.ts.map +0 -1
  407. package/dist/browser/src/document-model/gen/schema/types.d.ts +0 -454
  408. package/dist/browser/src/document-model/gen/schema/types.d.ts.map +0 -1
  409. package/dist/browser/src/document-model/gen/schema/zod.d.ts.map +0 -1
  410. package/dist/browser/src/document-model/gen/state/actions.d.ts +0 -10
  411. package/dist/browser/src/document-model/gen/state/actions.d.ts.map +0 -1
  412. package/dist/browser/src/document-model/gen/state/creators.d.ts.map +0 -1
  413. package/dist/browser/src/document-model/gen/state/object.d.ts +0 -13
  414. package/dist/browser/src/document-model/gen/state/object.d.ts.map +0 -1
  415. package/dist/browser/src/document-model/gen/state/operations.d.ts.map +0 -1
  416. package/dist/browser/src/document-model/gen/types.d.ts +0 -9
  417. package/dist/browser/src/document-model/gen/types.d.ts.map +0 -1
  418. package/dist/browser/src/document-model/gen/utils.d.ts +0 -7
  419. package/dist/browser/src/document-model/gen/utils.d.ts.map +0 -1
  420. package/dist/browser/src/document-model/gen/versioning/actions.d.ts +0 -9
  421. package/dist/browser/src/document-model/gen/versioning/actions.d.ts.map +0 -1
  422. package/dist/browser/src/document-model/gen/versioning/creators.d.ts.map +0 -1
  423. package/dist/browser/src/document-model/gen/versioning/object.d.ts +0 -12
  424. package/dist/browser/src/document-model/gen/versioning/object.d.ts.map +0 -1
  425. package/dist/browser/src/document-model/gen/versioning/operations.d.ts.map +0 -1
  426. package/dist/browser/src/document-model/index.d.ts +0 -77
  427. package/dist/browser/src/document-model/index.d.ts.map +0 -1
  428. package/dist/browser/src/index.d.ts +0 -25
  429. package/dist/browser/src/index.d.ts.map +0 -1
  430. package/dist/browser/test/document/crypto.test.d.ts.map +0 -1
  431. package/dist/browser/test/document/event-vs-command.test.d.ts.map +0 -1
  432. package/dist/browser/test/document/local.test.d.ts.map +0 -1
  433. package/dist/browser/test/document/object.test.d.ts.map +0 -1
  434. package/dist/browser/test/document/operation-id.test.d.ts.map +0 -1
  435. package/dist/browser/test/document/prune.test.d.ts.map +0 -1
  436. package/dist/browser/test/document/reducer.test.d.ts.map +0 -1
  437. package/dist/browser/test/document/skip-operations.test.d.ts.map +0 -1
  438. package/dist/browser/test/document/undo-redo.test.d.ts.map +0 -1
  439. package/dist/browser/test/document/utils.test.d.ts.map +0 -1
  440. package/dist/browser/test/document-helpers/addUndo.test.d.ts.map +0 -1
  441. package/dist/browser/test/document-helpers/attachBranch.test.d.ts.map +0 -1
  442. package/dist/browser/test/document-helpers/checkCleanedOperationsIntegrity.test.d.ts.map +0 -1
  443. package/dist/browser/test/document-helpers/conflictResolution.test.d.ts.map +0 -1
  444. package/dist/browser/test/document-helpers/filterDuplicatedOperations.test.d.ts.map +0 -1
  445. package/dist/browser/test/document-helpers/garbageCollect.test.d.ts.map +0 -1
  446. package/dist/browser/test/document-helpers/groupOperationsByScope.test.d.ts.map +0 -1
  447. package/dist/browser/test/document-helpers/merge.test.d.ts.map +0 -1
  448. package/dist/browser/test/document-helpers/nextSkipNumber.test.d.ts.map +0 -1
  449. package/dist/browser/test/document-helpers/prepareOperations.test.d.ts.map +0 -1
  450. package/dist/browser/test/document-helpers/removeExistingOperations.test.d.ts.map +0 -1
  451. package/dist/browser/test/document-helpers/reshuffleByTimestamp.test.d.ts.map +0 -1
  452. package/dist/browser/test/document-helpers/reshuffleByTimestampAndIndex.test.d.ts.map +0 -1
  453. package/dist/browser/test/document-helpers/skipHeaderOperations.test.d.ts.map +0 -1
  454. package/dist/browser/test/document-helpers/sortOperations.test.d.ts.map +0 -1
  455. package/dist/browser/test/document-helpers/split.test.d.ts.map +0 -1
  456. package/dist/browser/test/document-helpers/utils.d.ts.map +0 -1
  457. package/dist/browser/test/document-model/object.test.d.ts.map +0 -1
  458. package/dist/browser/test/document-model/replay.test.d.ts.map +0 -1
  459. package/dist/browser/test/document-model/skip-operations.test.d.ts.map +0 -1
  460. package/dist/browser/test/document-model/validation.test.d.ts.map +0 -1
  461. package/dist/browser/test/document-model/zip.test.d.ts.map +0 -1
  462. package/dist/browser/test/helpers.d.ts +0 -40
  463. package/dist/browser/test/helpers.d.ts.map +0 -1
  464. package/dist/browser/utils.d.ts +0 -2
  465. package/dist/browser/vite.config.d.ts +0 -3
  466. package/dist/browser/vite.config.d.ts.map +0 -1
  467. package/dist/browser/vitest.config.d.ts +0 -3
  468. package/dist/browser/vitest.config.d.ts.map +0 -1
  469. package/dist/node/cjs/document-model.js +0 -25
  470. package/dist/node/cjs/document-model.js.map +0 -1
  471. package/dist/node/cjs/document.js +0 -16
  472. package/dist/node/cjs/document.js.map +0 -1
  473. package/dist/node/cjs/index.js +0 -14
  474. package/dist/node/cjs/index.js.map +0 -1
  475. package/dist/node/cjs/internal/creators-ZpkFlacS.js +0 -2684
  476. package/dist/node/cjs/internal/creators-ZpkFlacS.js.map +0 -1
  477. package/dist/node/cjs/internal/index-B9N2GsMZ.js +0 -47
  478. package/dist/node/cjs/internal/index-B9N2GsMZ.js.map +0 -1
  479. package/dist/node/cjs/internal/index-ClITlWIV.js +0 -19
  480. package/dist/node/cjs/internal/index-ClITlWIV.js.map +0 -1
  481. package/dist/node/cjs/internal/index-DVgdtYs7.js +0 -2220
  482. package/dist/node/cjs/internal/index-DVgdtYs7.js.map +0 -1
  483. package/dist/node/cjs/internal/object-DVKEoARn.js +0 -183
  484. package/dist/node/cjs/internal/object-DVKEoARn.js.map +0 -1
  485. package/dist/node/cjs/package.json +0 -1
  486. package/dist/node/cjs/utils.js +0 -44
  487. package/dist/node/cjs/utils.js.map +0 -1
  488. package/dist/node/document-model.d.ts +0 -2
  489. package/dist/node/document.d.ts +0 -2
  490. package/dist/node/es/document-model.js +0 -25
  491. package/dist/node/es/document-model.js.map +0 -1
  492. package/dist/node/es/document.js +0 -16
  493. package/dist/node/es/document.js.map +0 -1
  494. package/dist/node/es/index.js +0 -14
  495. package/dist/node/es/index.js.map +0 -1
  496. package/dist/node/es/internal/creators-0lHfLHX0.js +0 -2685
  497. package/dist/node/es/internal/creators-0lHfLHX0.js.map +0 -1
  498. package/dist/node/es/internal/index-BOhJLvSm.js +0 -48
  499. package/dist/node/es/internal/index-BOhJLvSm.js.map +0 -1
  500. package/dist/node/es/internal/index-CxWihLAA.js +0 -2221
  501. package/dist/node/es/internal/index-CxWihLAA.js.map +0 -1
  502. package/dist/node/es/internal/index-bxdb71Hw.js +0 -20
  503. package/dist/node/es/internal/index-bxdb71Hw.js.map +0 -1
  504. package/dist/node/es/internal/object-Bl-LmXHF.js +0 -184
  505. package/dist/node/es/internal/object-Bl-LmXHF.js.map +0 -1
  506. package/dist/node/es/package.json +0 -1
  507. package/dist/node/es/utils.js +0 -44
  508. package/dist/node/es/utils.js.map +0 -1
  509. package/dist/node/index.d.ts +0 -6
  510. package/dist/node/src/document/actions/creators.d.ts.map +0 -1
  511. package/dist/node/src/document/actions/index.d.ts +0 -15
  512. package/dist/node/src/document/actions/index.d.ts.map +0 -1
  513. package/dist/node/src/document/actions/types.d.ts +0 -16
  514. package/dist/node/src/document/actions/types.d.ts.map +0 -1
  515. package/dist/node/src/document/index.d.ts +0 -7
  516. package/dist/node/src/document/index.d.ts.map +0 -1
  517. package/dist/node/src/document/object.d.ts.map +0 -1
  518. package/dist/node/src/document/reducer.d.ts +0 -66
  519. package/dist/node/src/document/reducer.d.ts.map +0 -1
  520. package/dist/node/src/document/schema/index.d.ts +0 -3
  521. package/dist/node/src/document/schema/index.d.ts.map +0 -1
  522. package/dist/node/src/document/schema/types.d.ts +0 -177
  523. package/dist/node/src/document/schema/types.d.ts.map +0 -1
  524. package/dist/node/src/document/schema/zod.d.ts +0 -99
  525. package/dist/node/src/document/schema/zod.d.ts.map +0 -1
  526. package/dist/node/src/document/signal.d.ts.map +0 -1
  527. package/dist/node/src/document/types.d.ts +0 -292
  528. package/dist/node/src/document/types.d.ts.map +0 -1
  529. package/dist/node/src/document/utils/base.d.ts +0 -89
  530. package/dist/node/src/document/utils/base.d.ts.map +0 -1
  531. package/dist/node/src/document/utils/browser.d.ts +0 -11
  532. package/dist/node/src/document/utils/browser.d.ts.map +0 -1
  533. package/dist/node/src/document/utils/crypto.d.ts +0 -11
  534. package/dist/node/src/document/utils/crypto.d.ts.map +0 -1
  535. package/dist/node/src/document/utils/document-helpers.d.ts +0 -74
  536. package/dist/node/src/document/utils/document-helpers.d.ts.map +0 -1
  537. package/dist/node/src/document/utils/errors.d.ts +0 -10
  538. package/dist/node/src/document/utils/errors.d.ts.map +0 -1
  539. package/dist/node/src/document/utils/file.d.ts +0 -49
  540. package/dist/node/src/document/utils/file.d.ts.map +0 -1
  541. package/dist/node/src/document/utils/index.d.ts +0 -8
  542. package/dist/node/src/document/utils/index.d.ts.map +0 -1
  543. package/dist/node/src/document/utils/node.d.ts +0 -11
  544. package/dist/node/src/document/utils/node.d.ts.map +0 -1
  545. package/dist/node/src/document/utils/validation.d.ts +0 -3
  546. package/dist/node/src/document/utils/validation.d.ts.map +0 -1
  547. package/dist/node/src/document-model/custom/reducers/header.d.ts +0 -3
  548. package/dist/node/src/document-model/custom/reducers/header.d.ts.map +0 -1
  549. package/dist/node/src/document-model/custom/reducers/module.d.ts +0 -3
  550. package/dist/node/src/document-model/custom/reducers/module.d.ts.map +0 -1
  551. package/dist/node/src/document-model/custom/reducers/operation-error.d.ts +0 -3
  552. package/dist/node/src/document-model/custom/reducers/operation-error.d.ts.map +0 -1
  553. package/dist/node/src/document-model/custom/reducers/operation-example.d.ts +0 -3
  554. package/dist/node/src/document-model/custom/reducers/operation-example.d.ts.map +0 -1
  555. package/dist/node/src/document-model/custom/reducers/operation.d.ts +0 -3
  556. package/dist/node/src/document-model/custom/reducers/operation.d.ts.map +0 -1
  557. package/dist/node/src/document-model/custom/reducers/state.d.ts +0 -3
  558. package/dist/node/src/document-model/custom/reducers/state.d.ts.map +0 -1
  559. package/dist/node/src/document-model/custom/reducers/versioning.d.ts +0 -3
  560. package/dist/node/src/document-model/custom/reducers/versioning.d.ts.map +0 -1
  561. package/dist/node/src/document-model/custom/utils.d.ts +0 -8
  562. package/dist/node/src/document-model/custom/utils.d.ts.map +0 -1
  563. package/dist/node/src/document-model/gen/actions.d.ts +0 -16
  564. package/dist/node/src/document-model/gen/actions.d.ts.map +0 -1
  565. package/dist/node/src/document-model/gen/creators.d.ts +0 -8
  566. package/dist/node/src/document-model/gen/creators.d.ts.map +0 -1
  567. package/dist/node/src/document-model/gen/document-model.d.ts +0 -3
  568. package/dist/node/src/document-model/gen/document-model.d.ts.map +0 -1
  569. package/dist/node/src/document-model/gen/header/actions.d.ts +0 -10
  570. package/dist/node/src/document-model/gen/header/actions.d.ts.map +0 -1
  571. package/dist/node/src/document-model/gen/header/creators.d.ts +0 -9
  572. package/dist/node/src/document-model/gen/header/creators.d.ts.map +0 -1
  573. package/dist/node/src/document-model/gen/header/object.d.ts +0 -13
  574. package/dist/node/src/document-model/gen/header/object.d.ts.map +0 -1
  575. package/dist/node/src/document-model/gen/header/operations.d.ts.map +0 -1
  576. package/dist/node/src/document-model/gen/index.d.ts +0 -6
  577. package/dist/node/src/document-model/gen/index.d.ts.map +0 -1
  578. package/dist/node/src/document-model/gen/module/actions.d.ts +0 -9
  579. package/dist/node/src/document-model/gen/module/actions.d.ts.map +0 -1
  580. package/dist/node/src/document-model/gen/module/creators.d.ts.map +0 -1
  581. package/dist/node/src/document-model/gen/module/object.d.ts +0 -12
  582. package/dist/node/src/document-model/gen/module/object.d.ts.map +0 -1
  583. package/dist/node/src/document-model/gen/module/operations.d.ts +0 -10
  584. package/dist/node/src/document-model/gen/module/operations.d.ts.map +0 -1
  585. package/dist/node/src/document-model/gen/object.d.ts +0 -29
  586. package/dist/node/src/document-model/gen/object.d.ts.map +0 -1
  587. package/dist/node/src/document-model/gen/operation/actions.d.ts +0 -14
  588. package/dist/node/src/document-model/gen/operation/actions.d.ts.map +0 -1
  589. package/dist/node/src/document-model/gen/operation/creators.d.ts +0 -13
  590. package/dist/node/src/document-model/gen/operation/creators.d.ts.map +0 -1
  591. package/dist/node/src/document-model/gen/operation/object.d.ts.map +0 -1
  592. package/dist/node/src/document-model/gen/operation/operations.d.ts +0 -15
  593. package/dist/node/src/document-model/gen/operation/operations.d.ts.map +0 -1
  594. package/dist/node/src/document-model/gen/operation-error/actions.d.ts +0 -11
  595. package/dist/node/src/document-model/gen/operation-error/actions.d.ts.map +0 -1
  596. package/dist/node/src/document-model/gen/operation-error/creators.d.ts.map +0 -1
  597. package/dist/node/src/document-model/gen/operation-error/object.d.ts.map +0 -1
  598. package/dist/node/src/document-model/gen/operation-error/operations.d.ts +0 -12
  599. package/dist/node/src/document-model/gen/operation-error/operations.d.ts.map +0 -1
  600. package/dist/node/src/document-model/gen/operation-example/actions.d.ts +0 -8
  601. package/dist/node/src/document-model/gen/operation-example/actions.d.ts.map +0 -1
  602. package/dist/node/src/document-model/gen/operation-example/creators.d.ts +0 -7
  603. package/dist/node/src/document-model/gen/operation-example/creators.d.ts.map +0 -1
  604. package/dist/node/src/document-model/gen/operation-example/object.d.ts +0 -11
  605. package/dist/node/src/document-model/gen/operation-example/object.d.ts.map +0 -1
  606. package/dist/node/src/document-model/gen/operation-example/operations.d.ts +0 -9
  607. package/dist/node/src/document-model/gen/operation-example/operations.d.ts.map +0 -1
  608. package/dist/node/src/document-model/gen/reducer.d.ts +0 -6
  609. package/dist/node/src/document-model/gen/reducer.d.ts.map +0 -1
  610. package/dist/node/src/document-model/gen/schema/index.d.ts +0 -3
  611. package/dist/node/src/document-model/gen/schema/index.d.ts.map +0 -1
  612. package/dist/node/src/document-model/gen/schema/types.d.ts.map +0 -1
  613. package/dist/node/src/document-model/gen/schema/zod.d.ts +0 -454
  614. package/dist/node/src/document-model/gen/schema/zod.d.ts.map +0 -1
  615. package/dist/node/src/document-model/gen/state/actions.d.ts +0 -10
  616. package/dist/node/src/document-model/gen/state/actions.d.ts.map +0 -1
  617. package/dist/node/src/document-model/gen/state/creators.d.ts +0 -9
  618. package/dist/node/src/document-model/gen/state/creators.d.ts.map +0 -1
  619. package/dist/node/src/document-model/gen/state/object.d.ts +0 -13
  620. package/dist/node/src/document-model/gen/state/object.d.ts.map +0 -1
  621. package/dist/node/src/document-model/gen/state/operations.d.ts +0 -11
  622. package/dist/node/src/document-model/gen/state/operations.d.ts.map +0 -1
  623. package/dist/node/src/document-model/gen/types.d.ts +0 -9
  624. package/dist/node/src/document-model/gen/types.d.ts.map +0 -1
  625. package/dist/node/src/document-model/gen/utils.d.ts +0 -7
  626. package/dist/node/src/document-model/gen/utils.d.ts.map +0 -1
  627. package/dist/node/src/document-model/gen/versioning/actions.d.ts +0 -9
  628. package/dist/node/src/document-model/gen/versioning/actions.d.ts.map +0 -1
  629. package/dist/node/src/document-model/gen/versioning/creators.d.ts +0 -8
  630. package/dist/node/src/document-model/gen/versioning/creators.d.ts.map +0 -1
  631. package/dist/node/src/document-model/gen/versioning/object.d.ts +0 -12
  632. package/dist/node/src/document-model/gen/versioning/object.d.ts.map +0 -1
  633. package/dist/node/src/document-model/gen/versioning/operations.d.ts +0 -10
  634. package/dist/node/src/document-model/gen/versioning/operations.d.ts.map +0 -1
  635. package/dist/node/src/document-model/index.d.ts +0 -77
  636. package/dist/node/src/document-model/index.d.ts.map +0 -1
  637. package/dist/node/src/index.d.ts +0 -25
  638. package/dist/node/src/index.d.ts.map +0 -1
  639. package/dist/node/test/document/crypto.test.d.ts +0 -2
  640. package/dist/node/test/document/crypto.test.d.ts.map +0 -1
  641. package/dist/node/test/document/event-vs-command.test.d.ts +0 -2
  642. package/dist/node/test/document/event-vs-command.test.d.ts.map +0 -1
  643. package/dist/node/test/document/local.test.d.ts +0 -2
  644. package/dist/node/test/document/local.test.d.ts.map +0 -1
  645. package/dist/node/test/document/object.test.d.ts +0 -2
  646. package/dist/node/test/document/object.test.d.ts.map +0 -1
  647. package/dist/node/test/document/operation-id.test.d.ts +0 -2
  648. package/dist/node/test/document/operation-id.test.d.ts.map +0 -1
  649. package/dist/node/test/document/prune.test.d.ts +0 -2
  650. package/dist/node/test/document/prune.test.d.ts.map +0 -1
  651. package/dist/node/test/document/reducer.test.d.ts +0 -2
  652. package/dist/node/test/document/reducer.test.d.ts.map +0 -1
  653. package/dist/node/test/document/skip-operations.test.d.ts +0 -2
  654. package/dist/node/test/document/skip-operations.test.d.ts.map +0 -1
  655. package/dist/node/test/document/undo-redo.test.d.ts +0 -2
  656. package/dist/node/test/document/undo-redo.test.d.ts.map +0 -1
  657. package/dist/node/test/document/utils.test.d.ts +0 -2
  658. package/dist/node/test/document/utils.test.d.ts.map +0 -1
  659. package/dist/node/test/document-helpers/addUndo.test.d.ts +0 -2
  660. package/dist/node/test/document-helpers/addUndo.test.d.ts.map +0 -1
  661. package/dist/node/test/document-helpers/attachBranch.test.d.ts +0 -2
  662. package/dist/node/test/document-helpers/attachBranch.test.d.ts.map +0 -1
  663. package/dist/node/test/document-helpers/checkCleanedOperationsIntegrity.test.d.ts +0 -2
  664. package/dist/node/test/document-helpers/checkCleanedOperationsIntegrity.test.d.ts.map +0 -1
  665. package/dist/node/test/document-helpers/conflictResolution.test.d.ts +0 -2
  666. package/dist/node/test/document-helpers/conflictResolution.test.d.ts.map +0 -1
  667. package/dist/node/test/document-helpers/filterDuplicatedOperations.test.d.ts +0 -2
  668. package/dist/node/test/document-helpers/filterDuplicatedOperations.test.d.ts.map +0 -1
  669. package/dist/node/test/document-helpers/garbageCollect.test.d.ts +0 -2
  670. package/dist/node/test/document-helpers/garbageCollect.test.d.ts.map +0 -1
  671. package/dist/node/test/document-helpers/groupOperationsByScope.test.d.ts +0 -2
  672. package/dist/node/test/document-helpers/groupOperationsByScope.test.d.ts.map +0 -1
  673. package/dist/node/test/document-helpers/merge.test.d.ts +0 -2
  674. package/dist/node/test/document-helpers/merge.test.d.ts.map +0 -1
  675. package/dist/node/test/document-helpers/nextSkipNumber.test.d.ts +0 -2
  676. package/dist/node/test/document-helpers/nextSkipNumber.test.d.ts.map +0 -1
  677. package/dist/node/test/document-helpers/prepareOperations.test.d.ts +0 -2
  678. package/dist/node/test/document-helpers/prepareOperations.test.d.ts.map +0 -1
  679. package/dist/node/test/document-helpers/removeExistingOperations.test.d.ts +0 -2
  680. package/dist/node/test/document-helpers/removeExistingOperations.test.d.ts.map +0 -1
  681. package/dist/node/test/document-helpers/reshuffleByTimestamp.test.d.ts +0 -2
  682. package/dist/node/test/document-helpers/reshuffleByTimestamp.test.d.ts.map +0 -1
  683. package/dist/node/test/document-helpers/reshuffleByTimestampAndIndex.test.d.ts +0 -2
  684. package/dist/node/test/document-helpers/reshuffleByTimestampAndIndex.test.d.ts.map +0 -1
  685. package/dist/node/test/document-helpers/skipHeaderOperations.test.d.ts +0 -2
  686. package/dist/node/test/document-helpers/skipHeaderOperations.test.d.ts.map +0 -1
  687. package/dist/node/test/document-helpers/sortOperations.test.d.ts +0 -2
  688. package/dist/node/test/document-helpers/sortOperations.test.d.ts.map +0 -1
  689. package/dist/node/test/document-helpers/split.test.d.ts +0 -2
  690. package/dist/node/test/document-helpers/split.test.d.ts.map +0 -1
  691. package/dist/node/test/document-helpers/utils.d.ts +0 -8
  692. package/dist/node/test/document-helpers/utils.d.ts.map +0 -1
  693. package/dist/node/test/document-model/object.test.d.ts +0 -2
  694. package/dist/node/test/document-model/object.test.d.ts.map +0 -1
  695. package/dist/node/test/document-model/replay.test.d.ts +0 -2
  696. package/dist/node/test/document-model/replay.test.d.ts.map +0 -1
  697. package/dist/node/test/document-model/skip-operations.test.d.ts +0 -2
  698. package/dist/node/test/document-model/skip-operations.test.d.ts.map +0 -1
  699. package/dist/node/test/document-model/validation.test.d.ts +0 -2
  700. package/dist/node/test/document-model/validation.test.d.ts.map +0 -1
  701. package/dist/node/test/document-model/zip.test.d.ts +0 -2
  702. package/dist/node/test/document-model/zip.test.d.ts.map +0 -1
  703. package/dist/node/test/helpers.d.ts +0 -40
  704. package/dist/node/test/helpers.d.ts.map +0 -1
  705. package/dist/node/utils.d.ts +0 -2
  706. package/dist/node/vite.config.d.ts +0 -3
  707. package/dist/node/vite.config.d.ts.map +0 -1
  708. package/dist/node/vitest.config.d.ts +0 -3
  709. package/dist/node/vitest.config.d.ts.map +0 -1
  710. /package/dist/{browser/test → test}/document/crypto.test.d.ts +0 -0
  711. /package/dist/{browser/test → test}/document/event-vs-command.test.d.ts +0 -0
  712. /package/dist/{browser/test → test}/document/local.test.d.ts +0 -0
  713. /package/dist/{browser/test → test}/document/object.test.d.ts +0 -0
  714. /package/dist/{browser/test → test}/document/operation-id.test.d.ts +0 -0
  715. /package/dist/{browser/test → test}/document/prune.test.d.ts +0 -0
  716. /package/dist/{browser/test → test}/document/reducer.test.d.ts +0 -0
  717. /package/dist/{browser/test → test}/document/skip-operations.test.d.ts +0 -0
  718. /package/dist/{browser/test → test}/document/undo-redo.test.d.ts +0 -0
  719. /package/dist/{browser/test → test}/document/utils.test.d.ts +0 -0
  720. /package/dist/{browser/test → test}/document-helpers/addUndo.test.d.ts +0 -0
  721. /package/dist/{browser/test → test}/document-helpers/attachBranch.test.d.ts +0 -0
  722. /package/dist/{browser/test → test}/document-helpers/checkCleanedOperationsIntegrity.test.d.ts +0 -0
  723. /package/dist/{browser/test → test}/document-helpers/conflictResolution.test.d.ts +0 -0
  724. /package/dist/{browser/test → test}/document-helpers/filterDuplicatedOperations.test.d.ts +0 -0
  725. /package/dist/{browser/test → test}/document-helpers/garbageCollect.test.d.ts +0 -0
  726. /package/dist/{browser/test → test}/document-helpers/groupOperationsByScope.test.d.ts +0 -0
  727. /package/dist/{browser/test → test}/document-helpers/merge.test.d.ts +0 -0
  728. /package/dist/{browser/test → test}/document-helpers/nextSkipNumber.test.d.ts +0 -0
  729. /package/dist/{browser/test → test}/document-helpers/prepareOperations.test.d.ts +0 -0
  730. /package/dist/{browser/test → test}/document-helpers/removeExistingOperations.test.d.ts +0 -0
  731. /package/dist/{browser/test → test}/document-helpers/reshuffleByTimestamp.test.d.ts +0 -0
  732. /package/dist/{browser/test → test}/document-helpers/reshuffleByTimestampAndIndex.test.d.ts +0 -0
  733. /package/dist/{browser/test → test}/document-helpers/skipHeaderOperations.test.d.ts +0 -0
  734. /package/dist/{browser/test → test}/document-helpers/sortOperations.test.d.ts +0 -0
  735. /package/dist/{browser/test → test}/document-helpers/split.test.d.ts +0 -0
  736. /package/dist/{browser/test → test}/document-model/object.test.d.ts +0 -0
  737. /package/dist/{browser/test → test}/document-model/replay.test.d.ts +0 -0
  738. /package/dist/{browser/test → test}/document-model/skip-operations.test.d.ts +0 -0
  739. /package/dist/{browser/test → test}/document-model/validation.test.d.ts +0 -0
  740. /package/dist/{browser/test → test}/document-model/zip.test.d.ts +0 -0
@@ -0,0 +1,49 @@
1
+ import { SignalDispatch } from "./signal.js";
2
+ import { Action, ActionFromDocument, DefaultAction, Operation, OperationFromDocument, PHDocument, ReducerOptions, StateReducer } from "./types.js";
3
+ /**
4
+ * Updates the document header with the latest revision number and
5
+ * date of last modification.
6
+ *
7
+ * @param state The current state of the document.
8
+ * @param operation The action being applied to the document.
9
+ * @returns The updated document state.
10
+ */
11
+ export declare function updateHeader<TDocument extends PHDocument>(document: TDocument, action: Action | DefaultAction | Operation): TDocument;
12
+ /**
13
+ * Updates the document state based on the provided action.
14
+ *
15
+ * @param state The current state of the document.
16
+ * @param action The action being applied to the document.
17
+ * @param skip The number of operations to skip before applying the action.
18
+ * @param reuseLastOperationIndex Whether to reuse the last operation index (used when a an UNDO operation is performed after an existing one).
19
+ * @returns The updated document state.
20
+ */
21
+ export declare function updateDocument<TDocument extends PHDocument>(document: TDocument, action: Action | Operation, skip?: number, reuseLastOperationIndex?: boolean): TDocument;
22
+ /**
23
+ * Processes an UNDO or REDO action.
24
+ *
25
+ * @param document The current state of the document.
26
+ * @param action The action being applied to the document.
27
+ * @param skip The number of operations to skip before applying the action.
28
+ * @returns The updated document, calculated skip value and transformed action (if applied).
29
+ */
30
+ export declare function processUndoRedo<TDocument extends PHDocument>(document: TDocument, action: ActionFromDocument<TDocument> | OperationFromDocument<TDocument> | DefaultAction, skip: number): {
31
+ document: TDocument;
32
+ action: ActionFromDocument<TDocument> | OperationFromDocument<TDocument>;
33
+ skip: number;
34
+ reuseLastOperationIndex: boolean;
35
+ };
36
+ /**
37
+ * Base document reducer that wraps a custom document reducer and handles
38
+ * document-level actions such as undo, redo, prune, and set name.
39
+ *
40
+ * @template TGlobalState - The type of the state of the custom reducer.
41
+ * @template TAction - The type of the actions of the custom reducer.
42
+ * @param state - The current state of the document.
43
+ * @param action - The action object to apply to the state.
44
+ * @param customReducer - The custom reducer that implements the application logic
45
+ * specific to the document's state.
46
+ * @returns The new state of the document.
47
+ */
48
+ export declare function baseReducer<TDocument extends PHDocument>(document: TDocument, action: Action | Operation, customReducer: StateReducer<TDocument>, dispatch?: SignalDispatch, options?: ReducerOptions): TDocument;
49
+ //# sourceMappingURL=reducer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../src/document/reducer.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,MAAM,EACN,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,qBAAqB,EAErB,UAAU,EACV,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAC;AA0CpB;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,SAAS,SAAS,UAAU,EACvD,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,GACzC,SAAS,CASX;AA4ED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,SAAS,SAAS,UAAU,EACzD,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,IAAI,SAAI,EACR,uBAAuB,UAAQ,GAC9B,SAAS,CASX;AAiCD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,SAAS,SAAS,UAAU,EAC1D,QAAQ,EAAE,SAAS,EACnB,MAAM,EACF,kBAAkB,CAAC,SAAS,CAAC,GAC7B,qBAAqB,CAAC,SAAS,CAAC,GAChC,aAAa,EACjB,IAAI,EAAE,MAAM,GACX;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB,EAAE,OAAO,CAAC;CAClC,CASA;AAuGD;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,SAAS,SAAS,UAAU,EACtD,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,aAAa,EAAE,YAAY,CAAC,SAAS,CAAC,EACtC,QAAQ,CAAC,EAAE,cAAc,EACzB,OAAO,GAAE,cAAmB,GAC3B,SAAS,CA2KX"}
@@ -0,0 +1,341 @@
1
+ import { castDraft, create, unsafe } from "mutative";
2
+ import { loadStateOperation, pruneOperation, redoOperation, setNameOperation, undoOperation, } from "./actions/operations.js";
3
+ import { LOAD_STATE, PRUNE, REDO, SET_NAME, UNDO } from "./actions/types.js";
4
+ import { DocumentActionSchema } from "./schema/zod.js";
5
+ import { getDocumentLastModified, hashDocumentStateForScope, isDocumentAction, isUndo, isUndoRedo, parseResultingState, replayOperations, } from "./utils/base.js";
6
+ import { generateId } from "./utils/crypto.js";
7
+ import { diffOperations, garbageCollect, garbageCollectDocumentOperations, skipHeaderOperations, sortOperations, } from "./utils/document-helpers.js";
8
+ /**
9
+ * Gets the next revision number based on the provided action.
10
+ *
11
+ * @param state The current state of the document.
12
+ * @param operation The action being applied to the document.
13
+ * @returns The next revision number.
14
+ */
15
+ function getNextRevision(document, operation) {
16
+ let latestOperationIndex;
17
+ if ("index" in operation) {
18
+ latestOperationIndex = operation.index;
19
+ }
20
+ else {
21
+ latestOperationIndex =
22
+ document.operations[operation.scope].at(-1)?.index ?? -1;
23
+ }
24
+ return (latestOperationIndex ?? -1) + 1;
25
+ }
26
+ /**
27
+ * Updates the document header with the latest revision number and
28
+ * date of last modification.
29
+ *
30
+ * @param state The current state of the document.
31
+ * @param operation The action being applied to the document.
32
+ * @returns The updated document state.
33
+ */
34
+ export function updateHeader(document, action) {
35
+ return {
36
+ ...document,
37
+ revision: {
38
+ ...document.revision,
39
+ [action.scope]: getNextRevision(document, action),
40
+ },
41
+ lastModified: getDocumentLastModified(document),
42
+ };
43
+ }
44
+ /**
45
+ * Updates the operations history of the document based on the provided action.
46
+ *
47
+ * @param state The current state of the document.
48
+ * @param actionOrOperation The action being applied to the document.
49
+ * @param skip The number of operations to skip before applying the action.
50
+ * @param reuseLastOperationIndex Whether to reuse the last operation index (used when a an UNDO operation is performed after an existing one).
51
+ * @returns The updated document state.
52
+ */
53
+ function updateOperations(document, actionOrOperation, skip = 0, reuseLastOperationIndex = false) {
54
+ // UNDO, REDO and PRUNE are meta operations
55
+ // that alter the operations history themselves
56
+ if ("type" in actionOrOperation &&
57
+ [UNDO, REDO, PRUNE].includes(actionOrOperation.type)) {
58
+ return document;
59
+ }
60
+ const { scope } = actionOrOperation;
61
+ const operations = document.operations[scope].slice();
62
+ let operationId;
63
+ const latestOperation = operations.at(-1);
64
+ const lastOperationIndex = latestOperation?.index ?? -1;
65
+ let nextIndex = reuseLastOperationIndex
66
+ ? lastOperationIndex
67
+ : lastOperationIndex + 1;
68
+ let timestamp = new Date().toISOString();
69
+ if ("index" in actionOrOperation) {
70
+ if (actionOrOperation.index - skip > nextIndex) {
71
+ throw new Error(`Missing operations: expected ${nextIndex} with skip 0 or equivalent, got index ${actionOrOperation.index} with skip ${skip}`);
72
+ }
73
+ nextIndex = actionOrOperation.index;
74
+ operationId = actionOrOperation.id;
75
+ timestamp = actionOrOperation.timestamp;
76
+ }
77
+ else {
78
+ operationId =
79
+ "id" in actionOrOperation
80
+ ? actionOrOperation.id
81
+ : generateId();
82
+ }
83
+ operations.push({
84
+ ...actionOrOperation,
85
+ id: operationId,
86
+ index: nextIndex,
87
+ timestamp,
88
+ hash: "",
89
+ scope,
90
+ skip,
91
+ error: undefined,
92
+ });
93
+ // adds the action to the operations history with
94
+ // the latest index and current timestamp
95
+ return {
96
+ ...document,
97
+ operations: { ...document.operations, [scope]: operations },
98
+ };
99
+ }
100
+ /**
101
+ * Updates the document state based on the provided action.
102
+ *
103
+ * @param state The current state of the document.
104
+ * @param action The action being applied to the document.
105
+ * @param skip The number of operations to skip before applying the action.
106
+ * @param reuseLastOperationIndex Whether to reuse the last operation index (used when a an UNDO operation is performed after an existing one).
107
+ * @returns The updated document state.
108
+ */
109
+ export function updateDocument(document, action, skip = 0, reuseLastOperationIndex = false) {
110
+ let newDocument = updateOperations(document, action, skip, reuseLastOperationIndex);
111
+ newDocument = updateHeader(newDocument, action);
112
+ return newDocument;
113
+ }
114
+ /**
115
+ * The base document reducer function that wraps a custom reducer function.
116
+ *
117
+ * @param state The current state of the document.
118
+ * @param action The action being applied to the document.
119
+ * @param wrappedReducer The custom reducer function being wrapped by the base reducer.
120
+ * @returns The updated document state.
121
+ */
122
+ function _baseReducer(document, action, wrappedReducer) {
123
+ // throws if action is not valid base action
124
+ const parsedAction = DocumentActionSchema().parse(action);
125
+ switch (parsedAction.type) {
126
+ case SET_NAME:
127
+ return setNameOperation(document, parsedAction.input);
128
+ case PRUNE:
129
+ return pruneOperation(document, parsedAction.input, wrappedReducer);
130
+ case LOAD_STATE:
131
+ return loadStateOperation(document, parsedAction.input.state);
132
+ default:
133
+ return document;
134
+ }
135
+ }
136
+ /**
137
+ * Processes an UNDO or REDO action.
138
+ *
139
+ * @param document The current state of the document.
140
+ * @param action The action being applied to the document.
141
+ * @param skip The number of operations to skip before applying the action.
142
+ * @returns The updated document, calculated skip value and transformed action (if applied).
143
+ */
144
+ export function processUndoRedo(document, action, skip) {
145
+ switch (action.type) {
146
+ case UNDO:
147
+ return undoOperation(document, action, skip);
148
+ case REDO:
149
+ return redoOperation(document, action, skip);
150
+ default:
151
+ return { document, action, skip, reuseLastOperationIndex: false };
152
+ }
153
+ }
154
+ function processSkipOperation(document, action, customReducer, skipValue, reuseOperationResultingState = false, resultingStateParser = parseResultingState) {
155
+ const scope = action.scope;
156
+ const latestOperation = document.operations[scope].at(-1);
157
+ if (!latestOperation)
158
+ return document;
159
+ const documentOperations = garbageCollectDocumentOperations({
160
+ ...document.operations,
161
+ [scope]: skipHeaderOperations(document.operations[scope], latestOperation),
162
+ });
163
+ let scopeState = undefined;
164
+ const lastRemainingOperation = documentOperations[scope].at(-1);
165
+ // if the last operation has the resulting state and
166
+ // reuseOperationResultingState is true then reuses it
167
+ // instead of replaying the operations from the beginning
168
+ if (reuseOperationResultingState && lastRemainingOperation?.resultingState) {
169
+ scopeState = resultingStateParser(lastRemainingOperation.resultingState);
170
+ }
171
+ else {
172
+ const { state } = replayOperations(document.initialState, documentOperations, customReducer, undefined, undefined, undefined, undefined, {
173
+ reuseHash: true,
174
+ reuseOperationResultingState,
175
+ operationResultingStateParser: resultingStateParser,
176
+ });
177
+ scopeState = state[scope];
178
+ }
179
+ return {
180
+ ...document,
181
+ state: {
182
+ ...document.state,
183
+ [scope]: scopeState,
184
+ },
185
+ operations: garbageCollectDocumentOperations({
186
+ ...document.operations,
187
+ }),
188
+ };
189
+ }
190
+ function processUndoOperation(document, scope, customReducer, reuseOperationResultingState = false, resultingStateParser = parseResultingState) {
191
+ const operations = [...document.operations[scope]];
192
+ const sortedOperations = sortOperations(operations);
193
+ sortedOperations.pop();
194
+ const documentOperations = garbageCollectDocumentOperations({
195
+ ...document.operations,
196
+ });
197
+ const clearedOperations = [...documentOperations[scope]];
198
+ const diff = diffOperations(garbageCollect(sortedOperations), clearedOperations);
199
+ const doc = replayOperations(document.initialState, documentOperations, customReducer, undefined, undefined, undefined, undefined, {
200
+ reuseHash: true,
201
+ reuseOperationResultingState,
202
+ operationResultingStateParser: resultingStateParser,
203
+ });
204
+ const clipboard = sortOperations([...document.clipboard, ...diff].filter((op) => op.type !== "NOOP")).reverse();
205
+ return { ...doc, clipboard };
206
+ }
207
+ /**
208
+ * Base document reducer that wraps a custom document reducer and handles
209
+ * document-level actions such as undo, redo, prune, and set name.
210
+ *
211
+ * @template TGlobalState - The type of the state of the custom reducer.
212
+ * @template TAction - The type of the actions of the custom reducer.
213
+ * @param state - The current state of the document.
214
+ * @param action - The action object to apply to the state.
215
+ * @param customReducer - The custom reducer that implements the application logic
216
+ * specific to the document's state.
217
+ * @returns The new state of the document.
218
+ */
219
+ export function baseReducer(document, action, customReducer, dispatch, options = {}) {
220
+ const { skip, ignoreSkipOperations = false, reuseHash = false, reuseOperationResultingState = false, operationResultingStateParser, } = options;
221
+ let _action = { ...action };
222
+ let skipValue = skip || 0;
223
+ let newDocument = {
224
+ ...document,
225
+ };
226
+ let reuseLastOperationIndex = false;
227
+ const shouldProcessSkipOperation = !ignoreSkipOperations &&
228
+ (skipValue > 0 ||
229
+ ("index" in _action &&
230
+ "skip" in _action &&
231
+ typeof _action.skip === "number" &&
232
+ _action.skip > 0));
233
+ if (isUndoRedo(_action)) {
234
+ const { skip: calculatedSkip, action: transformedAction, document: processedDocument, reuseLastOperationIndex: reuseIndex, } = processUndoRedo(document, _action, skipValue);
235
+ _action = transformedAction;
236
+ skipValue = calculatedSkip;
237
+ newDocument = processedDocument;
238
+ reuseLastOperationIndex = reuseIndex;
239
+ }
240
+ else {
241
+ newDocument = {
242
+ ...newDocument,
243
+ clipboard: [],
244
+ };
245
+ }
246
+ // if the action is one the base document actions (SET_NAME, UNDO, REDO, PRUNE)
247
+ // then runs the base reducer first
248
+ if (isDocumentAction(_action)) {
249
+ newDocument = _baseReducer(newDocument, _action, customReducer);
250
+ }
251
+ // updates the document revision number, last modified date
252
+ // and operation history
253
+ newDocument = updateDocument(newDocument, _action, skipValue, reuseLastOperationIndex);
254
+ const isUndoAction = isUndo(action);
255
+ if (isUndoAction) {
256
+ const result = processUndoOperation(newDocument, action.scope, customReducer);
257
+ return result;
258
+ }
259
+ if (shouldProcessSkipOperation) {
260
+ newDocument = processSkipOperation(newDocument, _action, customReducer, skipValue, reuseOperationResultingState, operationResultingStateParser);
261
+ }
262
+ // wraps the custom reducer with Mutative to avoid
263
+ // mutation bugs and allow writing reducers with
264
+ // mutating code
265
+ newDocument = create(newDocument, (draft) => {
266
+ // the reducer runs on a immutable version of
267
+ // provided state
268
+ try {
269
+ const newState = customReducer(draft.state, _action, dispatch);
270
+ // const clipboardValue = isUndoRedo(action) ? [...clipboard] : [];
271
+ // if the reducer creates a new state object instead
272
+ // of mutating the draft then returns the new state
273
+ if (newState) {
274
+ // Object.assign(draft.state, newState);
275
+ unsafe(() => {
276
+ // casts new state as draft to comply with typescript
277
+ draft.state = castDraft(newState);
278
+ // clipboard: [...clipboardValue],
279
+ });
280
+ }
281
+ else {
282
+ // unsafe(() => {
283
+ // draft.clipboard = castDraft([...clipboardValue]);
284
+ // });
285
+ }
286
+ }
287
+ catch (error) {
288
+ // if the reducer throws an error then we should keep the previous state (before replayOperations)
289
+ // and remove skip number from action/operation
290
+ const lastOperationIndex = newDocument.operations[_action.scope].length - 1;
291
+ draft.operations[_action.scope][lastOperationIndex].error = error.message;
292
+ draft.operations[_action.scope][lastOperationIndex].skip = 0;
293
+ if (shouldProcessSkipOperation) {
294
+ draft.state = castDraft({
295
+ ...document.state,
296
+ });
297
+ draft.operations = castDraft({
298
+ ...document.operations,
299
+ [_action.scope]: [
300
+ ...document.operations[_action.scope],
301
+ {
302
+ ...draft.operations[_action.scope][lastOperationIndex],
303
+ },
304
+ ],
305
+ });
306
+ }
307
+ }
308
+ });
309
+ // updates the document history
310
+ // meta operations are not added to the operations history
311
+ if ([UNDO, REDO, PRUNE].includes(_action.type)) {
312
+ return newDocument;
313
+ }
314
+ // if reuseHash is true, checks if the action has
315
+ // an hash and uses it instead of generating it
316
+ const scope = _action.scope || "global";
317
+ const hash = reuseHash && Object.prototype.hasOwnProperty.call(_action, "hash")
318
+ ? _action.hash
319
+ : hashDocumentStateForScope(newDocument, scope);
320
+ // updates the last operation with the hash of the resulting state
321
+ const lastOperation = newDocument.operations[scope].at(-1);
322
+ if (lastOperation) {
323
+ lastOperation.hash = hash;
324
+ if (reuseOperationResultingState) {
325
+ lastOperation.resultingState = JSON.stringify(newDocument.state[scope]);
326
+ }
327
+ // if the action has attachments then adds them to the document
328
+ if (!isDocumentAction(_action) && _action.attachments) {
329
+ _action.attachments.forEach((attachment) => {
330
+ const { hash, ...file } = attachment;
331
+ if (!newDocument.attachments) {
332
+ newDocument.attachments = {};
333
+ }
334
+ newDocument.attachments[hash] = {
335
+ ...file,
336
+ };
337
+ });
338
+ }
339
+ }
340
+ return newDocument;
341
+ }
@@ -1,4 +1,4 @@
1
- import { OperationScope } from '..';
1
+ import { OperationScope } from "../types.js";
2
2
  export type Maybe<T> = T | null;
3
3
  export type InputMaybe<T> = T | null | undefined;
4
4
  export type Exact<T extends Record<string, unknown>> = {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/document/schema/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAChC,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AACjD,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;KACpD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;KAC3D,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;CACjC,CAAC;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;KACxD,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;CAChC,CAAC;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI;KAC3E,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK;CACjB,CAAC;AACF,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB,CAAC,GACD;KACG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,gBAAgB,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CAC1E,CAAC;AACN,qEAAqE;AACrE,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,OAAO,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7C,GAAG,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,OAAO,EAAE;QACP,KAAK,EAAE,GAAG,MAAM,MAAM,MAAM,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,MAAM,MAAM,MAAM,EAAE,CAAC;KACjC,CAAC;IACF,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,OAAO,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,OAAO,GAAG;IAC7B,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,UAAU,CAAC;AAErD,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7C,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1C,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;IAChC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC;AAEtC,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,oBAAoB,CAAC;IAC5B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;IACpC,KAAK,EAAE,yBAAyB,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC5B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACxB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,eAAe,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG;IACnC,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;IAChC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,CAAC;AAE5B,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IAC1C,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;IAChC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IACnC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,6 +1,6 @@
1
- import { z } from 'zod';
2
- import { Action, DocumentFile, Load_State, LoadStateAction, LoadStateActionInput, LoadStateActionStateInput, Operation, Prune, PruneAction, PruneActionInput, Redo, RedoAction, Set_Name, SetNameAction, SetNameOperation, Undo, UndoAction } from '.';
3
- import { OperationScope } from '../types';
1
+ import { z } from "zod";
2
+ import { OperationScope } from "../types.js";
3
+ import { Action, DocumentFile, LoadStateAction, LoadStateActionInput, LoadStateActionStateInput, Operation, PruneAction, PruneActionInput, RedoAction, SetNameAction, SetNameOperation, UndoAction } from "./types.js";
4
4
  type Properties<T> = Required<{
5
5
  [K in keyof T]: z.ZodType<T[K], any, T[K]>;
6
6
  }>;
@@ -14,17 +14,17 @@ export declare const Set_NameSchema: z.ZodEnum<["SET_NAME"]>;
14
14
  export declare const UndoSchema: z.ZodEnum<["UNDO"]>;
15
15
  export declare function ActionSchema(): z.ZodObject<Properties<Action>>;
16
16
  export declare function OperationScopeSchema(): z.ZodType<OperationScope>;
17
- export declare function BaseActionSchema(): z.ZodUnion<[z.ZodObject<Required<{
17
+ export declare function DocumentActionSchema(): z.ZodUnion<[z.ZodObject<Required<{
18
18
  input: z.ZodType<LoadStateActionInput, any, LoadStateActionInput>;
19
19
  type: z.ZodType<"LOAD_STATE", any, "LOAD_STATE">;
20
20
  scope: z.ZodType<OperationScope, any, OperationScope>;
21
21
  }>, z.UnknownKeysParam, z.ZodTypeAny, {
22
22
  input: LoadStateActionInput;
23
- type: Load_State;
23
+ type: import("./types.js").Load_State;
24
24
  scope: OperationScope;
25
25
  }, {
26
26
  input: LoadStateActionInput;
27
- type: Load_State;
27
+ type: import("./types.js").Load_State;
28
28
  scope: OperationScope;
29
29
  }>, z.ZodObject<Required<{
30
30
  input: z.ZodType<PruneActionInput, any, PruneActionInput>;
@@ -32,47 +32,47 @@ export declare function BaseActionSchema(): z.ZodUnion<[z.ZodObject<Required<{
32
32
  scope: z.ZodType<OperationScope, any, OperationScope>;
33
33
  }>, z.UnknownKeysParam, z.ZodTypeAny, {
34
34
  input: PruneActionInput;
35
- type: Prune;
35
+ type: import("./types.js").Prune;
36
36
  scope: OperationScope;
37
37
  }, {
38
38
  input: PruneActionInput;
39
- type: Prune;
39
+ type: import("./types.js").Prune;
40
40
  scope: OperationScope;
41
41
  }>, z.ZodObject<Required<{
42
42
  input: z.ZodType<number, any, number>;
43
43
  type: z.ZodType<"REDO", any, "REDO">;
44
44
  scope: z.ZodType<OperationScope, any, OperationScope>;
45
45
  }>, z.UnknownKeysParam, z.ZodTypeAny, {
46
- input: import('./types').Scalars["Int"]["input"];
47
- type: Redo;
46
+ input: import("./types.js").Scalars["Int"]["input"];
47
+ type: import("./types.js").Redo;
48
48
  scope: OperationScope;
49
49
  }, {
50
- input: import('./types').Scalars["Int"]["input"];
51
- type: Redo;
50
+ input: import("./types.js").Scalars["Int"]["input"];
51
+ type: import("./types.js").Redo;
52
52
  scope: OperationScope;
53
53
  }>, z.ZodObject<Required<{
54
54
  input: z.ZodType<string, any, string>;
55
55
  type: z.ZodType<"SET_NAME", any, "SET_NAME">;
56
56
  scope: z.ZodType<"global", any, "global">;
57
57
  }>, z.UnknownKeysParam, z.ZodTypeAny, {
58
- input: import('./types').Scalars["String"]["input"];
59
- type: Set_Name;
58
+ input: import("./types.js").Scalars["String"]["input"];
59
+ type: import("./types.js").Set_Name;
60
60
  scope: "global";
61
61
  }, {
62
- input: import('./types').Scalars["String"]["input"];
63
- type: Set_Name;
62
+ input: import("./types.js").Scalars["String"]["input"];
63
+ type: import("./types.js").Set_Name;
64
64
  scope: "global";
65
65
  }>, z.ZodObject<Required<{
66
66
  input: z.ZodType<number, any, number>;
67
67
  type: z.ZodType<"UNDO", any, "UNDO">;
68
68
  scope: z.ZodType<OperationScope, any, OperationScope>;
69
69
  }>, z.UnknownKeysParam, z.ZodTypeAny, {
70
- input: import('./types').Scalars["Int"]["input"];
71
- type: Undo;
70
+ input: import("./types.js").Scalars["Int"]["input"];
71
+ type: import("./types.js").Undo;
72
72
  scope: OperationScope;
73
73
  }, {
74
- input: import('./types').Scalars["Int"]["input"];
75
- type: Undo;
74
+ input: import("./types.js").Scalars["Int"]["input"];
75
+ type: import("./types.js").Undo;
76
76
  scope: OperationScope;
77
77
  }>]>;
78
78
  export declare function DocumentFileSchema(): z.ZodObject<Properties<DocumentFile>>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../../../../src/document/schema/zod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,MAAM,EACN,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,KAAK,UAAU,CAAC,CAAC,IAAI,QAAQ,CAAC;KAC3B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3C,CAAC,CAAC;AAEH,KAAK,iBAAiB,GAAG,EAAE,CAAC;AAE5B,eAAO,MAAM,mBAAmB,MAAO,GAAG,KAAG,CAAC,IAAI,iBACnB,CAAC;AAEhC,eAAO,MAAM,uBAAuB,gDAEI,CAAC;AAEzC,eAAO,MAAM,gBAAgB,2BAAyB,CAAC;AAEvD,eAAO,MAAM,WAAW,sBAAoB,CAAC;AAE7C,eAAO,MAAM,UAAU,qBAAmB,CAAC;AAE3C,eAAO,MAAM,cAAc,yBAAuB,CAAC;AAEnD,eAAO,MAAM,UAAU,qBAAmB,CAAC;AAE3C,wBAAgB,YAAY,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAK9D;AAED,wBAAgB,oBAAoB,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAEhE;AAED,wBAAgB,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAqGtB,mCACR;;;;WADQ,mCACR;;;;;;;;WAMoC,sCAE9B;;;;WAF8B,sCAE9B;;;;;;;;WAOoM,mCAAe;;;;WAAf,mCAAe;;;KA7G9N;AAED,wBAAgB,kBAAkB,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAQ1E;AAED,wBAAgB,qBAAqB,IAAI,CAAC,CAAC,SAAS,CAClD,UAAU,CAAC,eAAe,CAAC,CAC5B,CAMA;AAED,wBAAgB,0BAA0B,IAAI,CAAC,CAAC,SAAS,CACvD,UAAU,CAAC,oBAAoB,CAAC,CACjC,CAKA;AAED,wBAAgB,+BAA+B,IAAI,CAAC,CAAC,SAAS,CAC5D,UAAU,CAAC,yBAAyB,CAAC,CACtC,CAKA;AAED,wBAAgB,eAAe,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAQpE;AAED,wBAAgB,iBAAiB,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAMxE;AAED,wBAAgB,sBAAsB,IAAI,CAAC,CAAC,SAAS,CACnD,UAAU,CAAC,gBAAgB,CAAC,CAC7B,CAKA;AAED,eAAO,MAAM,qBAAqB;UA0Cyy0C,CAAC;iBA1C/x0C,CAAC;AAE9C,wBAAgB,gBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAMtE;AAED,eAAO,MAAM,wBAAwB;UAgC0s0C,CAAC;iBAhChs0C,CAAC;AAEjD,wBAAgB,mBAAmB,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAM5E;AAED,wBAAgB,sBAAsB,IAAI,CAAC,CAAC,SAAS,CACnD,UAAU,CAAC,gBAAgB,CAAC,CAC7B,CASA;AAED,eAAO,MAAM,qBAAqB;UASyy0C,CAAC;iBAT/x0C,CAAC;AAE9C,wBAAgB,gBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAMtE"}
@@ -0,0 +1,112 @@
1
+ import { z } from "zod";
2
+ export const isDefinedNonNullAny = (v) => v !== undefined && v !== null;
3
+ export const definedNonNullAnySchema = z
4
+ .any()
5
+ .refine((v) => isDefinedNonNullAny(v));
6
+ export const Load_StateSchema = z.enum(["LOAD_STATE"]);
7
+ export const PruneSchema = z.enum(["PRUNE"]);
8
+ export const RedoSchema = z.enum(["REDO"]);
9
+ export const Set_NameSchema = z.enum(["SET_NAME"]);
10
+ export const UndoSchema = z.enum(["UNDO"]);
11
+ export function ActionSchema() {
12
+ return z.object({
13
+ __typename: z.literal("Action").optional(),
14
+ type: z.string(),
15
+ });
16
+ }
17
+ export function OperationScopeSchema() {
18
+ return z.literal("global").or(z.literal("local"));
19
+ }
20
+ export function DocumentActionSchema() {
21
+ return z.union([
22
+ LoadStateActionSchema(),
23
+ PruneActionSchema(),
24
+ RedoActionSchema(),
25
+ SetNameActionSchema(),
26
+ UndoActionSchema(),
27
+ ]);
28
+ }
29
+ export function DocumentFileSchema() {
30
+ return z.object({
31
+ __typename: z.literal("DocumentFile").optional(),
32
+ data: z.string(),
33
+ extension: z.string().nullable(),
34
+ fileName: z.string().nullable(),
35
+ mimeType: z.string(),
36
+ });
37
+ }
38
+ export function LoadStateActionSchema() {
39
+ return z.object({
40
+ input: z.lazy(() => LoadStateActionInputSchema()),
41
+ type: Load_StateSchema,
42
+ scope: OperationScopeSchema(),
43
+ });
44
+ }
45
+ export function LoadStateActionInputSchema() {
46
+ return z.object({
47
+ operations: z.number(),
48
+ state: z.lazy(() => LoadStateActionStateInputSchema()),
49
+ });
50
+ }
51
+ export function LoadStateActionStateInputSchema() {
52
+ return z.object({
53
+ data: z.unknown().nullish(),
54
+ name: z.string(),
55
+ });
56
+ }
57
+ export function OperationSchema() {
58
+ return z.object({
59
+ __typename: z.literal("Operation").optional(),
60
+ hash: z.string(),
61
+ index: z.number(),
62
+ timestamp: z.string().datetime(),
63
+ type: z.string(),
64
+ });
65
+ }
66
+ export function PruneActionSchema() {
67
+ return z.object({
68
+ input: z.lazy(() => PruneActionInputSchema()),
69
+ type: PruneSchema,
70
+ scope: OperationScopeSchema(),
71
+ });
72
+ }
73
+ export function PruneActionInputSchema() {
74
+ return z.object({
75
+ end: z.number().nullish(),
76
+ start: z.number().nullish(),
77
+ });
78
+ }
79
+ export const RedoActionInputSchema = z.number;
80
+ export function RedoActionSchema() {
81
+ return z.object({
82
+ input: RedoActionInputSchema(),
83
+ type: RedoSchema,
84
+ scope: OperationScopeSchema(),
85
+ });
86
+ }
87
+ export const SetNameActionInputSchema = z.string;
88
+ export function SetNameActionSchema() {
89
+ return z.object({
90
+ input: SetNameActionInputSchema(),
91
+ type: Set_NameSchema,
92
+ scope: z.literal("global"),
93
+ });
94
+ }
95
+ export function SetNameOperationSchema() {
96
+ return z.object({
97
+ __typename: z.literal("SetNameOperation").optional(),
98
+ hash: z.string(),
99
+ index: z.number(),
100
+ input: z.string(),
101
+ timestamp: z.string().datetime(),
102
+ type: z.string(),
103
+ });
104
+ }
105
+ export const UndoActionInputSchema = z.number;
106
+ export function UndoActionSchema() {
107
+ return z.object({
108
+ input: UndoActionInputSchema(),
109
+ type: UndoSchema,
110
+ scope: OperationScopeSchema(),
111
+ });
112
+ }
@@ -1,18 +1,18 @@
1
- import { Document, OperationScope } from './types';
2
- export interface ISignal<T extends string = string, I = unknown> {
3
- type: T;
4
- input: I;
1
+ import { OperationScope, PHDocument } from "./types.js";
2
+ export interface ISignal<TType extends string, TInput> {
3
+ type: TType;
4
+ input: TInput;
5
5
  }
6
- export type SynchronizationUnit = {
6
+ export type SynchronizationUnitInput = {
7
7
  syncId: string;
8
8
  scope: OperationScope;
9
9
  branch: string;
10
10
  };
11
- export type CreateChildDocumentInput = {
11
+ export type CreateChildDocumentInput<TDocument extends PHDocument = PHDocument> = {
12
12
  id: string;
13
13
  documentType: string;
14
- document?: Document;
15
- synchronizationUnits: SynchronizationUnit[];
14
+ document?: TDocument;
15
+ synchronizationUnits: SynchronizationUnitInput[];
16
16
  };
17
17
  export type CreateChildDocumentSignal = ISignal<"CREATE_CHILD_DOCUMENT", CreateChildDocumentInput>;
18
18
  export type DeleteChildDocumentInput = {
@@ -22,7 +22,7 @@ export type DeleteChildDocumentSignal = ISignal<"DELETE_CHILD_DOCUMENT", DeleteC
22
22
  export type CopyChildDocumentInput = {
23
23
  id: string;
24
24
  newId: string;
25
- synchronizationUnits: SynchronizationUnit[];
25
+ synchronizationUnits: SynchronizationUnitInput[];
26
26
  };
27
27
  export type CopyChildDocumentSignal = ISignal<"COPY_CHILD_DOCUMENT", CopyChildDocumentInput>;
28
28
  export type Signal = CreateChildDocumentSignal | DeleteChildDocumentSignal | CopyChildDocumentSignal;