loro-crdt 1.2.2 → 1.2.4

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.
@@ -268,7 +268,7 @@ export type UndoConfig = {
268
268
  mergeInterval?: number,
269
269
  maxUndoSteps?: number,
270
270
  excludeOriginPrefixes?: string[],
271
- onPush?: (isUndo: boolean, counterRange: { start: number, end: number }) => { value: Value, cursors: Cursor[] },
271
+ onPush?: (isUndo: boolean, counterRange: { start: number, end: number }, event?: LoroEventBatch) => { value: Value, cursors: Cursor[] },
272
272
  onPop?: (isUndo: boolean, value: { value: Value, cursors: Cursor[] }, counterRange: { start: number, end: number }) => void
273
273
  };
274
274
  export type Container = LoroList | LoroMap | LoroText | LoroTree | LoroMovableList;
@@ -793,6 +793,14 @@ interface LoroDoc<T extends Record<string, Container> = Record<string, Container
793
793
  */
794
794
  getTree<Key extends keyof T | ContainerID>(name: Key): T[Key] extends LoroTree ? T[Key] : LoroTree;
795
795
  getText(key: string | ContainerID): LoroText;
796
+ /**
797
+ * Export the updates in the given range.
798
+ *
799
+ * @param start - The start version vector.
800
+ * @param end - The end version vector.
801
+ * @returns The updates in the given range.
802
+ */
803
+ exportJsonUpdates(start?: VersionVector, end?: VersionVector): JsonSchema;
796
804
  }
797
805
  interface LoroList<T = unknown> {
798
806
  new(): LoroList<T>;
@@ -1866,13 +1874,6 @@ export class LoroDoc {
1866
1874
  */
1867
1875
  export(mode: ExportMode): Uint8Array;
1868
1876
  /**
1869
- * Export updates in the given range in JSON format.
1870
- * @param {VersionVector | undefined} [start_vv]
1871
- * @param {VersionVector | undefined} [end_vv]
1872
- * @returns {JsonSchema}
1873
- */
1874
- exportJsonUpdates(start_vv?: VersionVector, end_vv?: VersionVector): JsonSchema;
1875
- /**
1876
1877
  * Import updates from the JSON format.
1877
1878
  *
1878
1879
  * only supports backward compatibility but not forward compatibility.
@@ -1815,18 +1815,13 @@ export class LoroDoc {
1815
1815
  * // get updates from specific version to the latest version
1816
1816
  * const updates2 = doc.exportFrom(version);
1817
1817
  * ```
1818
- * @param {VersionVector | undefined} [vv]
1818
+ * @param {any} vv
1819
1819
  * @returns {Uint8Array}
1820
1820
  */
1821
1821
  exportFrom(vv) {
1822
1822
  try {
1823
1823
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1824
- let ptr0 = 0;
1825
- if (!isLikeNone(vv)) {
1826
- _assertClass(vv, VersionVector);
1827
- ptr0 = vv.__destroy_into_raw();
1828
- }
1829
- wasm.lorodoc_exportFrom(retptr, this.__wbg_ptr, ptr0);
1824
+ wasm.lorodoc_exportFrom(retptr, this.__wbg_ptr, addHeapObject(vv));
1830
1825
  var r0 = getInt32Memory0()[retptr / 4 + 0];
1831
1826
  var r1 = getInt32Memory0()[retptr / 4 + 1];
1832
1827
  var r2 = getInt32Memory0()[retptr / 4 + 2];
@@ -1834,9 +1829,9 @@ export class LoroDoc {
1834
1829
  if (r3) {
1835
1830
  throw takeObject(r2);
1836
1831
  }
1837
- var v2 = getArrayU8FromWasm0(r0, r1).slice();
1832
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
1838
1833
  wasm.__wbindgen_export_5(r0, r1 * 1, 1);
1839
- return v2;
1834
+ return v1;
1840
1835
  } finally {
1841
1836
  wasm.__wbindgen_add_to_stack_pointer(16);
1842
1837
  }
@@ -1900,24 +1895,14 @@ export class LoroDoc {
1900
1895
  }
1901
1896
  /**
1902
1897
  * Export updates in the given range in JSON format.
1903
- * @param {VersionVector | undefined} [start_vv]
1904
- * @param {VersionVector | undefined} [end_vv]
1898
+ * @param {any} start_vv
1899
+ * @param {any} end_vv
1905
1900
  * @returns {JsonSchema}
1906
1901
  */
1907
1902
  exportJsonUpdates(start_vv, end_vv) {
1908
1903
  try {
1909
1904
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1910
- let ptr0 = 0;
1911
- if (!isLikeNone(start_vv)) {
1912
- _assertClass(start_vv, VersionVector);
1913
- ptr0 = start_vv.__destroy_into_raw();
1914
- }
1915
- let ptr1 = 0;
1916
- if (!isLikeNone(end_vv)) {
1917
- _assertClass(end_vv, VersionVector);
1918
- ptr1 = end_vv.__destroy_into_raw();
1919
- }
1920
- wasm.lorodoc_exportJsonUpdates(retptr, this.__wbg_ptr, ptr0, ptr1);
1905
+ wasm.lorodoc_exportJsonUpdates(retptr, this.__wbg_ptr, addHeapObject(start_vv), addHeapObject(end_vv));
1921
1906
  var r0 = getInt32Memory0()[retptr / 4 + 0];
1922
1907
  var r1 = getInt32Memory0()[retptr / 4 + 1];
1923
1908
  var r2 = getInt32Memory0()[retptr / 4 + 2];
@@ -5976,6 +5961,11 @@ export function __wbindgen_is_string(arg0) {
5976
5961
  return ret;
5977
5962
  };
5978
5963
 
5964
+ export function __wbindgen_is_null(arg0) {
5965
+ const ret = getObject(arg0) === null;
5966
+ return ret;
5967
+ };
5968
+
5979
5969
  export function __wbindgen_number_new(arg0) {
5980
5970
  const ret = arg0;
5981
5971
  return addHeapObject(ret);
@@ -5986,11 +5976,6 @@ export function __wbindgen_typeof(arg0) {
5986
5976
  return addHeapObject(ret);
5987
5977
  };
5988
5978
 
5989
- export function __wbindgen_is_null(arg0) {
5990
- const ret = getObject(arg0) === null;
5991
- return ret;
5992
- };
5993
-
5994
5979
  export function __wbg_error_c8c2cca30a630316(arg0, arg1) {
5995
5980
  console.error(getStringFromWasm0(arg0, arg1));
5996
5981
  };
Binary file
@@ -268,7 +268,7 @@ export type UndoConfig = {
268
268
  mergeInterval?: number,
269
269
  maxUndoSteps?: number,
270
270
  excludeOriginPrefixes?: string[],
271
- onPush?: (isUndo: boolean, counterRange: { start: number, end: number }) => { value: Value, cursors: Cursor[] },
271
+ onPush?: (isUndo: boolean, counterRange: { start: number, end: number }, event?: LoroEventBatch) => { value: Value, cursors: Cursor[] },
272
272
  onPop?: (isUndo: boolean, value: { value: Value, cursors: Cursor[] }, counterRange: { start: number, end: number }) => void
273
273
  };
274
274
  export type Container = LoroList | LoroMap | LoroText | LoroTree | LoroMovableList;
@@ -793,6 +793,14 @@ interface LoroDoc<T extends Record<string, Container> = Record<string, Container
793
793
  */
794
794
  getTree<Key extends keyof T | ContainerID>(name: Key): T[Key] extends LoroTree ? T[Key] : LoroTree;
795
795
  getText(key: string | ContainerID): LoroText;
796
+ /**
797
+ * Export the updates in the given range.
798
+ *
799
+ * @param start - The start version vector.
800
+ * @param end - The end version vector.
801
+ * @returns The updates in the given range.
802
+ */
803
+ exportJsonUpdates(start?: VersionVector, end?: VersionVector): JsonSchema;
796
804
  }
797
805
  interface LoroList<T = unknown> {
798
806
  new(): LoroList<T>;
@@ -1866,13 +1874,6 @@ export class LoroDoc {
1866
1874
  */
1867
1875
  export(mode: ExportMode): Uint8Array;
1868
1876
  /**
1869
- * Export updates in the given range in JSON format.
1870
- * @param {VersionVector | undefined} [start_vv]
1871
- * @param {VersionVector | undefined} [end_vv]
1872
- * @returns {JsonSchema}
1873
- */
1874
- exportJsonUpdates(start_vv?: VersionVector, end_vv?: VersionVector): JsonSchema;
1875
- /**
1876
1877
  * Import updates from the JSON format.
1877
1878
  *
1878
1879
  * only supports backward compatibility but not forward compatibility.
@@ -1813,18 +1813,13 @@ class LoroDoc {
1813
1813
  * // get updates from specific version to the latest version
1814
1814
  * const updates2 = doc.exportFrom(version);
1815
1815
  * ```
1816
- * @param {VersionVector | undefined} [vv]
1816
+ * @param {any} vv
1817
1817
  * @returns {Uint8Array}
1818
1818
  */
1819
1819
  exportFrom(vv) {
1820
1820
  try {
1821
1821
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1822
- let ptr0 = 0;
1823
- if (!isLikeNone(vv)) {
1824
- _assertClass(vv, VersionVector);
1825
- ptr0 = vv.__destroy_into_raw();
1826
- }
1827
- wasm.lorodoc_exportFrom(retptr, this.__wbg_ptr, ptr0);
1822
+ wasm.lorodoc_exportFrom(retptr, this.__wbg_ptr, addHeapObject(vv));
1828
1823
  var r0 = getInt32Memory0()[retptr / 4 + 0];
1829
1824
  var r1 = getInt32Memory0()[retptr / 4 + 1];
1830
1825
  var r2 = getInt32Memory0()[retptr / 4 + 2];
@@ -1832,9 +1827,9 @@ class LoroDoc {
1832
1827
  if (r3) {
1833
1828
  throw takeObject(r2);
1834
1829
  }
1835
- var v2 = getArrayU8FromWasm0(r0, r1).slice();
1830
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
1836
1831
  wasm.__wbindgen_export_5(r0, r1 * 1, 1);
1837
- return v2;
1832
+ return v1;
1838
1833
  } finally {
1839
1834
  wasm.__wbindgen_add_to_stack_pointer(16);
1840
1835
  }
@@ -1898,24 +1893,14 @@ class LoroDoc {
1898
1893
  }
1899
1894
  /**
1900
1895
  * Export updates in the given range in JSON format.
1901
- * @param {VersionVector | undefined} [start_vv]
1902
- * @param {VersionVector | undefined} [end_vv]
1896
+ * @param {any} start_vv
1897
+ * @param {any} end_vv
1903
1898
  * @returns {JsonSchema}
1904
1899
  */
1905
1900
  exportJsonUpdates(start_vv, end_vv) {
1906
1901
  try {
1907
1902
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1908
- let ptr0 = 0;
1909
- if (!isLikeNone(start_vv)) {
1910
- _assertClass(start_vv, VersionVector);
1911
- ptr0 = start_vv.__destroy_into_raw();
1912
- }
1913
- let ptr1 = 0;
1914
- if (!isLikeNone(end_vv)) {
1915
- _assertClass(end_vv, VersionVector);
1916
- ptr1 = end_vv.__destroy_into_raw();
1917
- }
1918
- wasm.lorodoc_exportJsonUpdates(retptr, this.__wbg_ptr, ptr0, ptr1);
1903
+ wasm.lorodoc_exportJsonUpdates(retptr, this.__wbg_ptr, addHeapObject(start_vv), addHeapObject(end_vv));
1919
1904
  var r0 = getInt32Memory0()[retptr / 4 + 0];
1920
1905
  var r1 = getInt32Memory0()[retptr / 4 + 1];
1921
1906
  var r2 = getInt32Memory0()[retptr / 4 + 2];
@@ -5983,6 +5968,11 @@ module.exports.__wbindgen_is_string = function(arg0) {
5983
5968
  return ret;
5984
5969
  };
5985
5970
 
5971
+ module.exports.__wbindgen_is_null = function(arg0) {
5972
+ const ret = getObject(arg0) === null;
5973
+ return ret;
5974
+ };
5975
+
5986
5976
  module.exports.__wbindgen_number_new = function(arg0) {
5987
5977
  const ret = arg0;
5988
5978
  return addHeapObject(ret);
@@ -5993,11 +5983,6 @@ module.exports.__wbindgen_typeof = function(arg0) {
5993
5983
  return addHeapObject(ret);
5994
5984
  };
5995
5985
 
5996
- module.exports.__wbindgen_is_null = function(arg0) {
5997
- const ret = getObject(arg0) === null;
5998
- return ret;
5999
- };
6000
-
6001
5986
  module.exports.__wbg_error_c8c2cca30a630316 = function(arg0, arg1) {
6002
5987
  console.error(getStringFromWasm0(arg0, arg1));
6003
5988
  };
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "loro-crdt",
3
- "version": "1.2.2",
3
+ "version": "1.2.4",
4
4
  "description": "Loro CRDTs is a high-performance CRDT framework that makes your app state synchronized, collaborative and maintainable effortlessly.",
5
5
  "keywords": [
6
6
  "crdt",
@@ -268,7 +268,7 @@ export type UndoConfig = {
268
268
  mergeInterval?: number,
269
269
  maxUndoSteps?: number,
270
270
  excludeOriginPrefixes?: string[],
271
- onPush?: (isUndo: boolean, counterRange: { start: number, end: number }) => { value: Value, cursors: Cursor[] },
271
+ onPush?: (isUndo: boolean, counterRange: { start: number, end: number }, event?: LoroEventBatch) => { value: Value, cursors: Cursor[] },
272
272
  onPop?: (isUndo: boolean, value: { value: Value, cursors: Cursor[] }, counterRange: { start: number, end: number }) => void
273
273
  };
274
274
  export type Container = LoroList | LoroMap | LoroText | LoroTree | LoroMovableList;
@@ -793,6 +793,14 @@ interface LoroDoc<T extends Record<string, Container> = Record<string, Container
793
793
  */
794
794
  getTree<Key extends keyof T | ContainerID>(name: Key): T[Key] extends LoroTree ? T[Key] : LoroTree;
795
795
  getText(key: string | ContainerID): LoroText;
796
+ /**
797
+ * Export the updates in the given range.
798
+ *
799
+ * @param start - The start version vector.
800
+ * @param end - The end version vector.
801
+ * @returns The updates in the given range.
802
+ */
803
+ exportJsonUpdates(start?: VersionVector, end?: VersionVector): JsonSchema;
796
804
  }
797
805
  interface LoroList<T = unknown> {
798
806
  new(): LoroList<T>;
@@ -1866,13 +1874,6 @@ export class LoroDoc {
1866
1874
  */
1867
1875
  export(mode: ExportMode): Uint8Array;
1868
1876
  /**
1869
- * Export updates in the given range in JSON format.
1870
- * @param {VersionVector | undefined} [start_vv]
1871
- * @param {VersionVector | undefined} [end_vv]
1872
- * @returns {JsonSchema}
1873
- */
1874
- exportJsonUpdates(start_vv?: VersionVector, end_vv?: VersionVector): JsonSchema;
1875
- /**
1876
1877
  * Import updates from the JSON format.
1877
1878
  *
1878
1879
  * only supports backward compatibility but not forward compatibility.
package/web/loro_wasm.js CHANGED
@@ -1807,18 +1807,13 @@ export class LoroDoc {
1807
1807
  * // get updates from specific version to the latest version
1808
1808
  * const updates2 = doc.exportFrom(version);
1809
1809
  * ```
1810
- * @param {VersionVector | undefined} [vv]
1810
+ * @param {any} vv
1811
1811
  * @returns {Uint8Array}
1812
1812
  */
1813
1813
  exportFrom(vv) {
1814
1814
  try {
1815
1815
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1816
- let ptr0 = 0;
1817
- if (!isLikeNone(vv)) {
1818
- _assertClass(vv, VersionVector);
1819
- ptr0 = vv.__destroy_into_raw();
1820
- }
1821
- wasm.lorodoc_exportFrom(retptr, this.__wbg_ptr, ptr0);
1816
+ wasm.lorodoc_exportFrom(retptr, this.__wbg_ptr, addHeapObject(vv));
1822
1817
  var r0 = getInt32Memory0()[retptr / 4 + 0];
1823
1818
  var r1 = getInt32Memory0()[retptr / 4 + 1];
1824
1819
  var r2 = getInt32Memory0()[retptr / 4 + 2];
@@ -1826,9 +1821,9 @@ export class LoroDoc {
1826
1821
  if (r3) {
1827
1822
  throw takeObject(r2);
1828
1823
  }
1829
- var v2 = getArrayU8FromWasm0(r0, r1).slice();
1824
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
1830
1825
  wasm.__wbindgen_export_5(r0, r1 * 1, 1);
1831
- return v2;
1826
+ return v1;
1832
1827
  } finally {
1833
1828
  wasm.__wbindgen_add_to_stack_pointer(16);
1834
1829
  }
@@ -1892,24 +1887,14 @@ export class LoroDoc {
1892
1887
  }
1893
1888
  /**
1894
1889
  * Export updates in the given range in JSON format.
1895
- * @param {VersionVector | undefined} [start_vv]
1896
- * @param {VersionVector | undefined} [end_vv]
1890
+ * @param {any} start_vv
1891
+ * @param {any} end_vv
1897
1892
  * @returns {JsonSchema}
1898
1893
  */
1899
1894
  exportJsonUpdates(start_vv, end_vv) {
1900
1895
  try {
1901
1896
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1902
- let ptr0 = 0;
1903
- if (!isLikeNone(start_vv)) {
1904
- _assertClass(start_vv, VersionVector);
1905
- ptr0 = start_vv.__destroy_into_raw();
1906
- }
1907
- let ptr1 = 0;
1908
- if (!isLikeNone(end_vv)) {
1909
- _assertClass(end_vv, VersionVector);
1910
- ptr1 = end_vv.__destroy_into_raw();
1911
- }
1912
- wasm.lorodoc_exportJsonUpdates(retptr, this.__wbg_ptr, ptr0, ptr1);
1897
+ wasm.lorodoc_exportJsonUpdates(retptr, this.__wbg_ptr, addHeapObject(start_vv), addHeapObject(end_vv));
1913
1898
  var r0 = getInt32Memory0()[retptr / 4 + 0];
1914
1899
  var r1 = getInt32Memory0()[retptr / 4 + 1];
1915
1900
  var r2 = getInt32Memory0()[retptr / 4 + 2];
@@ -5975,6 +5960,10 @@ function __wbg_get_imports() {
5975
5960
  const ret = typeof(getObject(arg0)) === 'string';
5976
5961
  return ret;
5977
5962
  };
5963
+ imports.wbg.__wbindgen_is_null = function(arg0) {
5964
+ const ret = getObject(arg0) === null;
5965
+ return ret;
5966
+ };
5978
5967
  imports.wbg.__wbindgen_number_new = function(arg0) {
5979
5968
  const ret = arg0;
5980
5969
  return addHeapObject(ret);
@@ -5983,10 +5972,6 @@ function __wbg_get_imports() {
5983
5972
  const ret = typeof getObject(arg0);
5984
5973
  return addHeapObject(ret);
5985
5974
  };
5986
- imports.wbg.__wbindgen_is_null = function(arg0) {
5987
- const ret = getObject(arg0) === null;
5988
- return ret;
5989
- };
5990
5975
  imports.wbg.__wbg_error_c8c2cca30a630316 = function(arg0, arg1) {
5991
5976
  console.error(getStringFromWasm0(arg0, arg1));
5992
5977
  };
Binary file