@yorkie-js/sdk 0.7.11 → 0.7.12
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.
- package/dist/yorkie-js-sdk.d.ts +79 -0
- package/dist/yorkie-js-sdk.es.js +103 -10
- package/dist/yorkie-js-sdk.es.js.map +1 -1
- package/dist/yorkie-js-sdk.js +103 -10
- package/dist/yorkie-js-sdk.js.map +1 -1
- package/package.json +6 -6
package/dist/yorkie-js-sdk.js
CHANGED
|
@@ -5869,7 +5869,7 @@
|
|
|
5869
5869
|
DocEventType2[DocEventType2["DOCUMENT_BROADCAST"] = 3] = "DOCUMENT_BROADCAST";
|
|
5870
5870
|
return DocEventType2;
|
|
5871
5871
|
})(DocEventType$1 || {});
|
|
5872
|
-
const file_yorkie_v1_yorkie = /* @__PURE__ */ fileDesc("
|
|
5872
|
+
const file_yorkie_v1_yorkie = /* @__PURE__ */ fileDesc("ChZ5b3JraWUvdjEveW9ya2llLnByb3RvEgl5b3JraWUudjEingEKFUFjdGl2YXRlQ2xpZW50UmVxdWVzdBISCgpjbGllbnRfa2V5GAEgASgJEkAKCG1ldGFkYXRhGAIgAygLMi4ueW9ya2llLnYxLkFjdGl2YXRlQ2xpZW50UmVxdWVzdC5NZXRhZGF0YUVudHJ5Gi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASIrChZBY3RpdmF0ZUNsaWVudFJlc3BvbnNlEhEKCWNsaWVudF9pZBgBIAEoCSJBChdEZWFjdGl2YXRlQ2xpZW50UmVxdWVzdBIRCgljbGllbnRfaWQYASABKAkSEwoLc3luY2hyb25vdXMYAiABKAgiGgoYRGVhY3RpdmF0ZUNsaWVudFJlc3BvbnNlIpgBChVBdHRhY2hEb2N1bWVudFJlcXVlc3QSEQoJY2xpZW50X2lkGAEgASgJEioKC2NoYW5nZV9wYWNrGAIgASgLMhUueW9ya2llLnYxLkNoYW5nZVBhY2sSEgoKc2NoZW1hX2tleRgDIAEoCRISCgpkaXNhYmxlX2djGAQgASgIEhgKEGRpc2FibGVfcHJlc2VuY2UYBSABKAgiuQEKFkF0dGFjaERvY3VtZW50UmVzcG9uc2USEwoLZG9jdW1lbnRfaWQYASABKAkSKgoLY2hhbmdlX3BhY2sYAiABKAsyFS55b3JraWUudjEuQ2hhbmdlUGFjaxIdChVtYXhfc2l6ZV9wZXJfZG9jdW1lbnQYAyABKAUSJQoMc2NoZW1hX3J1bGVzGAQgAygLMg8ueW9ya2llLnYxLlJ1bGUSGAoQZGlzYWJsZV9wcmVzZW5jZRgFIAEoCCKLAQoVRGV0YWNoRG9jdW1lbnRSZXF1ZXN0EhEKCWNsaWVudF9pZBgBIAEoCRITCgtkb2N1bWVudF9pZBgCIAEoCRIqCgtjaGFuZ2VfcGFjaxgDIAEoCzIVLnlvcmtpZS52MS5DaGFuZ2VQYWNrEh4KFnJlbW92ZV9pZl9ub3RfYXR0YWNoZWQYBCABKAgiRAoWRGV0YWNoRG9jdW1lbnRSZXNwb25zZRIqCgtjaGFuZ2VfcGFjaxgCIAEoCzIVLnlvcmtpZS52MS5DaGFuZ2VQYWNrIlMKDFdhdGNoUmVxdWVzdBIRCgljbGllbnRfaWQYASABKAkSMAoJcmVzb3VyY2VzGAIgAygLMh0ueW9ya2llLnYxLlJlc291cmNlRGVzY3JpcHRvciKEAQoSUmVzb3VyY2VEZXNjcmlwdG9yEjEKCGRvY3VtZW50GAEgASgLMh0ueW9ya2llLnYxLkRvY3VtZW50RGVzY3JpcHRvckgAEi8KB2NoYW5uZWwYAiABKAsyHC55b3JraWUudjEuQ2hhbm5lbERlc2NyaXB0b3JIAEIKCghyZXNvdXJjZSIpChJEb2N1bWVudERlc2NyaXB0b3ISEwoLZG9jdW1lbnRfaWQYASABKAkiKAoRQ2hhbm5lbERlc2NyaXB0b3ISEwoLY2hhbm5lbF9rZXkYASABKAkieQoNV2F0Y2hSZXNwb25zZRI4Cg5pbml0aWFsaXphdGlvbhgBIAEoCzIeLnlvcmtpZS52MS5XYXRjaEluaXRpYWxpemF0aW9uSAASJgoFZXZlbnQYAiABKAsyFS55b3JraWUudjEuV2F0Y2hFdmVudEgAQgYKBGJvZHkiRgoTV2F0Y2hJbml0aWFsaXphdGlvbhIvCg5yZXNvdXJjZV9pbml0cxgBIAMoCzIXLnlvcmtpZS52MS5SZXNvdXJjZUluaXQieAoMUmVzb3VyY2VJbml0EjAKDWRvY3VtZW50X2luaXQYASABKAsyFy55b3JraWUudjEuRG9jdW1lbnRJbml0SAASLgoMY2hhbm5lbF9pbml0GAIgASgLMhYueW9ya2llLnYxLkNoYW5uZWxJbml0SABCBgoEaW5pdCI3CgxEb2N1bWVudEluaXQSEwoLZG9jdW1lbnRfaWQYASABKAkSEgoKY2xpZW50X2lkcxgCIAMoCSJGCgtDaGFubmVsSW5pdBITCgtjaGFubmVsX2tleRgBIAEoCRIVCg1zZXNzaW9uX2NvdW50GAIgASgDEgsKA3NlcRgDIAEoAyJ7CgpXYXRjaEV2ZW50Ei0KCWRvY19ldmVudBgBIAEoCzIYLnlvcmtpZS52MS5Eb2NXYXRjaEV2ZW50SAASNQoNY2hhbm5lbF9ldmVudBgCIAEoCzIcLnlvcmtpZS52MS5DaGFubmVsV2F0Y2hFdmVudEgAQgcKBWV2ZW50IkgKDURvY1dhdGNoRXZlbnQSEwoLZG9jdW1lbnRfaWQYASABKAkSIgoFZXZlbnQYAiABKAsyEy55b3JraWUudjEuRG9jRXZlbnQiUAoRQ2hhbm5lbFdhdGNoRXZlbnQSEwoLY2hhbm5lbF9rZXkYASABKAkSJgoFZXZlbnQYAiABKAsyFy55b3JraWUudjEuQ2hhbm5lbEV2ZW50Ij4KFFdhdGNoRG9jdW1lbnRSZXF1ZXN0EhEKCWNsaWVudF9pZBgBIAEoCRITCgtkb2N1bWVudF9pZBgCIAEoCSK2AQoVV2F0Y2hEb2N1bWVudFJlc3BvbnNlEkkKDmluaXRpYWxpemF0aW9uGAEgASgLMi8ueW9ya2llLnYxLldhdGNoRG9jdW1lbnRSZXNwb25zZS5Jbml0aWFsaXphdGlvbkgAEiQKBWV2ZW50GAIgASgLMhMueW9ya2llLnYxLkRvY0V2ZW50SAAaJAoOSW5pdGlhbGl6YXRpb24SEgoKY2xpZW50X2lkcxgBIAMoCUIGCgRib2R5Ij0KE1dhdGNoQ2hhbm5lbFJlcXVlc3QSEQoJY2xpZW50X2lkGAEgASgJEhMKC2NoYW5uZWxfa2V5GAIgASgJIoMBChRXYXRjaENoYW5uZWxSZXNwb25zZRI5Cgtpbml0aWFsaXplZBgBIAEoCzIiLnlvcmtpZS52MS5XYXRjaENoYW5uZWxJbml0aWFsaXplZEgAEigKBWV2ZW50GAIgASgLMhcueW9ya2llLnYxLkNoYW5uZWxFdmVudEgAQgYKBGJvZHkiPQoXV2F0Y2hDaGFubmVsSW5pdGlhbGl6ZWQSFQoNc2Vzc2lvbl9jb3VudBgBIAEoAxILCgNzZXEYAiABKAMiawoVUmVtb3ZlRG9jdW1lbnRSZXF1ZXN0EhEKCWNsaWVudF9pZBgBIAEoCRITCgtkb2N1bWVudF9pZBgCIAEoCRIqCgtjaGFuZ2VfcGFjaxgDIAEoCzIVLnlvcmtpZS52MS5DaGFuZ2VQYWNrIkQKFlJlbW92ZURvY3VtZW50UmVzcG9uc2USKgoLY2hhbmdlX3BhY2sYASABKAsyFS55b3JraWUudjEuQ2hhbmdlUGFjayKTAQoWUHVzaFB1bGxDaGFuZ2VzUmVxdWVzdBIRCgljbGllbnRfaWQYASABKAkSEwoLZG9jdW1lbnRfaWQYAiABKAkSKgoLY2hhbmdlX3BhY2sYAyABKAsyFS55b3JraWUudjEuQ2hhbmdlUGFjaxIRCglwdXNoX29ubHkYBCABKAgSEgoKZGlzYWJsZV9nYxgFIAEoCCJFChdQdXNoUHVsbENoYW5nZXNSZXNwb25zZRIqCgtjaGFuZ2VfcGFjaxgBIAEoCzIVLnlvcmtpZS52MS5DaGFuZ2VQYWNrImMKFUNyZWF0ZVJldmlzaW9uUmVxdWVzdBIRCgljbGllbnRfaWQYASABKAkSEwoLZG9jdW1lbnRfaWQYAiABKAkSDQoFbGFiZWwYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkiRgoWQ3JlYXRlUmV2aXNpb25SZXNwb25zZRIsCghyZXZpc2lvbhgBIAEoCzIaLnlvcmtpZS52MS5SZXZpc2lvblN1bW1hcnkiUQoSR2V0UmV2aXNpb25SZXF1ZXN0EhEKCWNsaWVudF9pZBgBIAEoCRITCgtkb2N1bWVudF9pZBgCIAEoCRITCgtyZXZpc2lvbl9pZBgDIAEoCSJDChNHZXRSZXZpc2lvblJlc3BvbnNlEiwKCHJldmlzaW9uGAEgASgLMhoueW9ya2llLnYxLlJldmlzaW9uU3VtbWFyeSJ1ChRMaXN0UmV2aXNpb25zUmVxdWVzdBIRCgljbGllbnRfaWQYASABKAkSEwoLZG9jdW1lbnRfaWQYAiABKAkSEQoJcGFnZV9zaXplGAMgASgFEg4KBm9mZnNldBgEIAEoBRISCgppc19mb3J3YXJkGAUgASgIIkYKFUxpc3RSZXZpc2lvbnNSZXNwb25zZRItCglyZXZpc2lvbnMYASADKAsyGi55b3JraWUudjEuUmV2aXNpb25TdW1tYXJ5IlUKFlJlc3RvcmVSZXZpc2lvblJlcXVlc3QSEQoJY2xpZW50X2lkGAEgASgJEhMKC2RvY3VtZW50X2lkGAIgASgJEhMKC3JldmlzaW9uX2lkGAQgASgJIhkKF1Jlc3RvcmVSZXZpc2lvblJlc3BvbnNlIj4KFEF0dGFjaENoYW5uZWxSZXF1ZXN0EhEKCWNsaWVudF9pZBgBIAEoCRITCgtjaGFubmVsX2tleRgCIAEoCSJCChVBdHRhY2hDaGFubmVsUmVzcG9uc2USEgoKc2Vzc2lvbl9pZBgBIAEoCRIVCg1zZXNzaW9uX2NvdW50GAIgASgDIlIKFERldGFjaENoYW5uZWxSZXF1ZXN0EhEKCWNsaWVudF9pZBgBIAEoCRITCgtjaGFubmVsX2tleRgCIAEoCRISCgpzZXNzaW9uX2lkGAMgASgJIi4KFURldGFjaENoYW5uZWxSZXNwb25zZRIVCg1zZXNzaW9uX2NvdW50GAEgASgDItoBChVSZWZyZXNoQ2hhbm5lbFJlcXVlc3QSEQoJY2xpZW50X2lkGAEgASgJEhMKC2NoYW5uZWxfa2V5GAIgASgJEhIKCnNlc3Npb25faWQYAyABKAkSEgoKY2xpZW50X2tleRgEIAEoCRJACghtZXRhZGF0YRgFIAMoCzIuLnlvcmtpZS52MS5SZWZyZXNoQ2hhbm5lbFJlcXVlc3QuTWV0YWRhdGFFbnRyeRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiVgoWUmVmcmVzaENoYW5uZWxSZXNwb25zZRIVCg1zZXNzaW9uX2NvdW50GAEgASgDEhEKCWNsaWVudF9pZBgCIAEoCRISCgpzZXNzaW9uX2lkGAMgASgJIikKElBlZWtDaGFubmVsUmVxdWVzdBITCgtjaGFubmVsX2tleRgBIAEoCSIsChNQZWVrQ2hhbm5lbFJlc3BvbnNlEhUKDXNlc3Npb25fY291bnQYASABKAMiWgoQQnJvYWRjYXN0UmVxdWVzdBIRCgljbGllbnRfaWQYASABKAkSEwoLY2hhbm5lbF9rZXkYAiABKAkSDQoFdG9waWMYAyABKAkSDwoHcGF5bG9hZBgEIAEoDCITChFCcm9hZGNhc3RSZXNwb25zZTKVDAoNWW9ya2llU2VydmljZRJXCg5BY3RpdmF0ZUNsaWVudBIgLnlvcmtpZS52MS5BY3RpdmF0ZUNsaWVudFJlcXVlc3QaIS55b3JraWUudjEuQWN0aXZhdGVDbGllbnRSZXNwb25zZSIAEl0KEERlYWN0aXZhdGVDbGllbnQSIi55b3JraWUudjEuRGVhY3RpdmF0ZUNsaWVudFJlcXVlc3QaIy55b3JraWUudjEuRGVhY3RpdmF0ZUNsaWVudFJlc3BvbnNlIgASVwoOQXR0YWNoRG9jdW1lbnQSIC55b3JraWUudjEuQXR0YWNoRG9jdW1lbnRSZXF1ZXN0GiEueW9ya2llLnYxLkF0dGFjaERvY3VtZW50UmVzcG9uc2UiABJXCg5EZXRhY2hEb2N1bWVudBIgLnlvcmtpZS52MS5EZXRhY2hEb2N1bWVudFJlcXVlc3QaIS55b3JraWUudjEuRGV0YWNoRG9jdW1lbnRSZXNwb25zZSIAElcKDlJlbW92ZURvY3VtZW50EiAueW9ya2llLnYxLlJlbW92ZURvY3VtZW50UmVxdWVzdBohLnlvcmtpZS52MS5SZW1vdmVEb2N1bWVudFJlc3BvbnNlIgASWgoPUHVzaFB1bGxDaGFuZ2VzEiEueW9ya2llLnYxLlB1c2hQdWxsQ2hhbmdlc1JlcXVlc3QaIi55b3JraWUudjEuUHVzaFB1bGxDaGFuZ2VzUmVzcG9uc2UiABI+CgVXYXRjaBIXLnlvcmtpZS52MS5XYXRjaFJlcXVlc3QaGC55b3JraWUudjEuV2F0Y2hSZXNwb25zZSIAMAESVgoNV2F0Y2hEb2N1bWVudBIfLnlvcmtpZS52MS5XYXRjaERvY3VtZW50UmVxdWVzdBogLnlvcmtpZS52MS5XYXRjaERvY3VtZW50UmVzcG9uc2UiADABElMKDFdhdGNoQ2hhbm5lbBIeLnlvcmtpZS52MS5XYXRjaENoYW5uZWxSZXF1ZXN0Gh8ueW9ya2llLnYxLldhdGNoQ2hhbm5lbFJlc3BvbnNlIgAwARJXCg5DcmVhdGVSZXZpc2lvbhIgLnlvcmtpZS52MS5DcmVhdGVSZXZpc2lvblJlcXVlc3QaIS55b3JraWUudjEuQ3JlYXRlUmV2aXNpb25SZXNwb25zZSIAEk4KC0dldFJldmlzaW9uEh0ueW9ya2llLnYxLkdldFJldmlzaW9uUmVxdWVzdBoeLnlvcmtpZS52MS5HZXRSZXZpc2lvblJlc3BvbnNlIgASVAoNTGlzdFJldmlzaW9ucxIfLnlvcmtpZS52MS5MaXN0UmV2aXNpb25zUmVxdWVzdBogLnlvcmtpZS52MS5MaXN0UmV2aXNpb25zUmVzcG9uc2UiABJaCg9SZXN0b3JlUmV2aXNpb24SIS55b3JraWUudjEuUmVzdG9yZVJldmlzaW9uUmVxdWVzdBoiLnlvcmtpZS52MS5SZXN0b3JlUmV2aXNpb25SZXNwb25zZSIAElQKDUF0dGFjaENoYW5uZWwSHy55b3JraWUudjEuQXR0YWNoQ2hhbm5lbFJlcXVlc3QaIC55b3JraWUudjEuQXR0YWNoQ2hhbm5lbFJlc3BvbnNlIgASVAoNRGV0YWNoQ2hhbm5lbBIfLnlvcmtpZS52MS5EZXRhY2hDaGFubmVsUmVxdWVzdBogLnlvcmtpZS52MS5EZXRhY2hDaGFubmVsUmVzcG9uc2UiABJXCg5SZWZyZXNoQ2hhbm5lbBIgLnlvcmtpZS52MS5SZWZyZXNoQ2hhbm5lbFJlcXVlc3QaIS55b3JraWUudjEuUmVmcmVzaENoYW5uZWxSZXNwb25zZSIAEk4KC1BlZWtDaGFubmVsEh0ueW9ya2llLnYxLlBlZWtDaGFubmVsUmVxdWVzdBoeLnlvcmtpZS52MS5QZWVrQ2hhbm5lbFJlc3BvbnNlIgASSAoJQnJvYWRjYXN0EhsueW9ya2llLnYxLkJyb2FkY2FzdFJlcXVlc3QaHC55b3JraWUudjEuQnJvYWRjYXN0UmVzcG9uc2UiAEJFChFkZXYueW9ya2llLmFwaS52MVABWi5naXRodWIuY29tL3lvcmtpZS10ZWFtL3lvcmtpZS9hcGkveW9ya2llL3YxO3YxYgZwcm90bzM", [file_yorkie_v1_resources]);
|
|
5873
5873
|
const YorkieService = /* @__PURE__ */ serviceDesc(file_yorkie_v1_yorkie, 0);
|
|
5874
5874
|
const file_google_rpc_error_details = /* @__PURE__ */ fileDesc("Ch5nb29nbGUvcnBjL2Vycm9yX2RldGFpbHMucHJvdG8SCmdvb2dsZS5ycGMikwEKCUVycm9ySW5mbxIOCgZyZWFzb24YASABKAkSDgoGZG9tYWluGAIgASgJEjUKCG1ldGFkYXRhGAMgAygLMiMuZ29vZ2xlLnJwYy5FcnJvckluZm8uTWV0YWRhdGFFbnRyeRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiOwoJUmV0cnlJbmZvEi4KC3JldHJ5X2RlbGF5GAEgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uIjIKCURlYnVnSW5mbxIVCg1zdGFja19lbnRyaWVzGAEgAygJEg4KBmRldGFpbBgCIAEoCSKPAwoMUXVvdGFGYWlsdXJlEjYKCnZpb2xhdGlvbnMYASADKAsyIi5nb29nbGUucnBjLlF1b3RhRmFpbHVyZS5WaW9sYXRpb24axgIKCVZpb2xhdGlvbhIPCgdzdWJqZWN0GAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhMKC2FwaV9zZXJ2aWNlGAMgASgJEhQKDHF1b3RhX21ldHJpYxgEIAEoCRIQCghxdW90YV9pZBgFIAEoCRJRChBxdW90YV9kaW1lbnNpb25zGAYgAygLMjcuZ29vZ2xlLnJwYy5RdW90YUZhaWx1cmUuVmlvbGF0aW9uLlF1b3RhRGltZW5zaW9uc0VudHJ5EhMKC3F1b3RhX3ZhbHVlGAcgASgDEh8KEmZ1dHVyZV9xdW90YV92YWx1ZRgIIAEoA0gAiAEBGjYKFFF1b3RhRGltZW5zaW9uc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCFQoTX2Z1dHVyZV9xdW90YV92YWx1ZSKVAQoTUHJlY29uZGl0aW9uRmFpbHVyZRI9Cgp2aW9sYXRpb25zGAEgAygLMikuZ29vZ2xlLnJwYy5QcmVjb25kaXRpb25GYWlsdXJlLlZpb2xhdGlvbho/CglWaW9sYXRpb24SDAoEdHlwZRgBIAEoCRIPCgdzdWJqZWN0GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIswBCgpCYWRSZXF1ZXN0Ej8KEGZpZWxkX3Zpb2xhdGlvbnMYASADKAsyJS5nb29nbGUucnBjLkJhZFJlcXVlc3QuRmllbGRWaW9sYXRpb24afQoORmllbGRWaW9sYXRpb24SDQoFZmllbGQYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSDgoGcmVhc29uGAMgASgJEjcKEWxvY2FsaXplZF9tZXNzYWdlGAQgASgLMhwuZ29vZ2xlLnJwYy5Mb2NhbGl6ZWRNZXNzYWdlIjcKC1JlcXVlc3RJbmZvEhIKCnJlcXVlc3RfaWQYASABKAkSFAoMc2VydmluZ19kYXRhGAIgASgJImAKDFJlc291cmNlSW5mbxIVCg1yZXNvdXJjZV90eXBlGAEgASgJEhUKDXJlc291cmNlX25hbWUYAiABKAkSDQoFb3duZXIYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkiVgoESGVscBIkCgVsaW5rcxgBIAMoCzIVLmdvb2dsZS5ycGMuSGVscC5MaW5rGigKBExpbmsSEwoLZGVzY3JpcHRpb24YASABKAkSCwoDdXJsGAIgASgJIjMKEExvY2FsaXplZE1lc3NhZ2USDgoGbG9jYWxlGAEgASgJEg8KB21lc3NhZ2UYAiABKAlCbAoOY29tLmdvb2dsZS5ycGNCEUVycm9yRGV0YWlsc1Byb3RvUAFaP2dvb2dsZS5nb2xhbmcub3JnL2dlbnByb3RvL2dvb2dsZWFwaXMvcnBjL2VycmRldGFpbHM7ZXJyZGV0YWlsc6ICA1JQQ2IGcHJvdG8z", [file_google_protobuf_duration]);
|
|
5875
5875
|
const ErrorInfoSchema = /* @__PURE__ */ messageDesc(file_google_rpc_error_details, 0);
|
|
@@ -17027,6 +17027,25 @@
|
|
|
17027
17027
|
setPresenceChange(presenceChange) {
|
|
17028
17028
|
this.presenceChange = presenceChange;
|
|
17029
17029
|
}
|
|
17030
|
+
/**
|
|
17031
|
+
* `hasPresenceChange` returns whether a presence change was registered
|
|
17032
|
+
* during this context. Used by `Document.update` to detect a presence
|
|
17033
|
+
* emit when the document was attached with `disablePresence: true`.
|
|
17034
|
+
*/
|
|
17035
|
+
hasPresenceChange() {
|
|
17036
|
+
return this.presenceChange !== void 0;
|
|
17037
|
+
}
|
|
17038
|
+
/**
|
|
17039
|
+
* `dropPresenceChange` clears any presence change registered during
|
|
17040
|
+
* this context. Used by `Document.update` to silently drop presence
|
|
17041
|
+
* emits on documents attached with `disablePresence: true`. After
|
|
17042
|
+
* dropping, the change carries only its operations (if any); when
|
|
17043
|
+
* the context was presence-only the resulting `hasChange()` returns
|
|
17044
|
+
* false and no `Change` is enqueued.
|
|
17045
|
+
*/
|
|
17046
|
+
dropPresenceChange() {
|
|
17047
|
+
this.presenceChange = void 0;
|
|
17048
|
+
}
|
|
17030
17049
|
/**
|
|
17031
17050
|
* `setReversePresence` registers the previous presence to undo presence updates.
|
|
17032
17051
|
*/
|
|
@@ -17050,6 +17069,16 @@
|
|
|
17050
17069
|
}
|
|
17051
17070
|
return reversePresence;
|
|
17052
17071
|
}
|
|
17072
|
+
/**
|
|
17073
|
+
* `clearReversePresence` discards any reverse-presence keys recorded
|
|
17074
|
+
* during this context. Used by `Document.update` alongside
|
|
17075
|
+
* `dropPresenceChange` for documents attached with
|
|
17076
|
+
* `disablePresence: true`, so the dropped presence emit does not push
|
|
17077
|
+
* a no-op undo entry onto the history stack.
|
|
17078
|
+
*/
|
|
17079
|
+
clearReversePresence() {
|
|
17080
|
+
this.reversePresenceKeys.clear();
|
|
17081
|
+
}
|
|
17053
17082
|
/**
|
|
17054
17083
|
* `issueTimeTicket` creates a time ticket to be used to create a new operation.
|
|
17055
17084
|
*/
|
|
@@ -20106,6 +20135,17 @@
|
|
|
20106
20135
|
// remote actors' version vectors into changeID, keeping each subsequent
|
|
20107
20136
|
// local Change's VV at O(1) for high-fan-out Counter workloads.
|
|
20108
20137
|
disableGC;
|
|
20138
|
+
// `disablePresence`, when true, declares that this document does not use
|
|
20139
|
+
// presence. The client sets it from the local option on construction and
|
|
20140
|
+
// overwrites it from the server-fixated value in the attach response. While
|
|
20141
|
+
// true, `Document.update`'s `presence.set` calls are silently dropped on
|
|
20142
|
+
// the way out (server enforcement is authoritative for the wire side).
|
|
20143
|
+
disablePresence;
|
|
20144
|
+
// `presenceDropWarned` ensures the silent-drop warning emitted by
|
|
20145
|
+
// `Document.update` for opt-in documents fires only once per document
|
|
20146
|
+
// lifetime. Otherwise long-lived counter-only documents would spam the
|
|
20147
|
+
// console on every well-meaning `presence.set` call.
|
|
20148
|
+
presenceDropWarned;
|
|
20109
20149
|
/**
|
|
20110
20150
|
* `history` is exposed to the user to manage undo/redo operations.
|
|
20111
20151
|
*/
|
|
@@ -20120,6 +20160,8 @@
|
|
|
20120
20160
|
this.checkpoint = InitialCheckpoint;
|
|
20121
20161
|
this.localChanges = [];
|
|
20122
20162
|
this.disableGC = false;
|
|
20163
|
+
this.disablePresence = !!opts?.disablePresence;
|
|
20164
|
+
this.presenceDropWarned = false;
|
|
20123
20165
|
this.root = CRDTRoot.create();
|
|
20124
20166
|
this.presences = /* @__PURE__ */ new Map();
|
|
20125
20167
|
this.onlineClients = /* @__PURE__ */ new Set();
|
|
@@ -20167,6 +20209,16 @@
|
|
|
20167
20209
|
} finally {
|
|
20168
20210
|
this.isUpdating = false;
|
|
20169
20211
|
}
|
|
20212
|
+
if (this.disablePresence && ctx.hasPresenceChange()) {
|
|
20213
|
+
ctx.dropPresenceChange();
|
|
20214
|
+
ctx.clearReversePresence();
|
|
20215
|
+
if (!this.presenceDropWarned) {
|
|
20216
|
+
this.presenceDropWarned = true;
|
|
20217
|
+
logger.warn(
|
|
20218
|
+
`[Document] "${this.key}" was attached with disablePresence=true; presence updates from Document.update are silently dropped.`
|
|
20219
|
+
);
|
|
20220
|
+
}
|
|
20221
|
+
}
|
|
20170
20222
|
const rules = this.getSchemaRules();
|
|
20171
20223
|
if (!ctx.isPresenceOnlyChange() && rules.length) {
|
|
20172
20224
|
const result = validateYorkieRuleset(this.clone?.root.getObject(), rules);
|
|
@@ -20536,6 +20588,24 @@
|
|
|
20536
20588
|
setDisableGC(disableGC) {
|
|
20537
20589
|
this.disableGC = disableGC;
|
|
20538
20590
|
}
|
|
20591
|
+
/**
|
|
20592
|
+
* `setDisablePresence` records the server-fixated presence-disabled state
|
|
20593
|
+
* of this document. The client calls this on attach (before
|
|
20594
|
+
* `applyChangePack`) so any subsequent `Document.update` invocation sees
|
|
20595
|
+
* the gating state already settled. Flipping the flag at runtime is
|
|
20596
|
+
* supported: the next `update` honours the new value.
|
|
20597
|
+
*/
|
|
20598
|
+
setDisablePresence(disablePresence) {
|
|
20599
|
+
this.disablePresence = disablePresence;
|
|
20600
|
+
}
|
|
20601
|
+
/**
|
|
20602
|
+
* `isPresenceDisabled` returns the current presence-disabled state of
|
|
20603
|
+
* this document. Reflects the server-fixated value once attached;
|
|
20604
|
+
* before attach it reflects the local construction option.
|
|
20605
|
+
*/
|
|
20606
|
+
isPresenceDisabled() {
|
|
20607
|
+
return this.disablePresence;
|
|
20608
|
+
}
|
|
20539
20609
|
/**
|
|
20540
20610
|
* `isEnableDevtools` returns whether devtools is enabled or not.
|
|
20541
20611
|
*/
|
|
@@ -21273,6 +21343,14 @@
|
|
|
21273
21343
|
* omit the response VersionVector. Documents only.
|
|
21274
21344
|
*/
|
|
21275
21345
|
disableGC;
|
|
21346
|
+
/**
|
|
21347
|
+
* `disablePresence` mirrors the server-fixated value returned by the
|
|
21348
|
+
* attach response. `pushPullChanges` does **not** read this — the
|
|
21349
|
+
* `disable_presence` wire field is request-only (set on the first
|
|
21350
|
+
* attach, ignored thereafter on the server side). Carried here for
|
|
21351
|
+
* devtools / debugging visibility. Documents only.
|
|
21352
|
+
*/
|
|
21353
|
+
disablePresence;
|
|
21276
21354
|
/**
|
|
21277
21355
|
* `unsubscribeLocalBroadcast` is set by `attachChannel` when it forwards
|
|
21278
21356
|
* a Channel's `local-broadcast` events to the RPC client, and consumed
|
|
@@ -21288,7 +21366,7 @@
|
|
|
21288
21366
|
watchAbortController;
|
|
21289
21367
|
syncPromise;
|
|
21290
21368
|
_detaching = false;
|
|
21291
|
-
constructor(reconnectStreamDelay, resource, resourceID = "", syncMode, pollInterval = 0, pollIntervalPinned = false, disableGC = false) {
|
|
21369
|
+
constructor(reconnectStreamDelay, resource, resourceID = "", syncMode, pollInterval = 0, pollIntervalPinned = false, disableGC = false, disablePresence = false) {
|
|
21292
21370
|
this.reconnectStreamDelay = reconnectStreamDelay;
|
|
21293
21371
|
this.resource = resource;
|
|
21294
21372
|
this.resourceID = resourceID;
|
|
@@ -21298,6 +21376,7 @@
|
|
|
21298
21376
|
this.pollInterval = pollInterval;
|
|
21299
21377
|
this.pollIntervalPinned = pollIntervalPinned;
|
|
21300
21378
|
this.disableGC = disableGC;
|
|
21379
|
+
this.disablePresence = disablePresence;
|
|
21301
21380
|
this.cancelled = false;
|
|
21302
21381
|
}
|
|
21303
21382
|
/**
|
|
@@ -21457,7 +21536,7 @@
|
|
|
21457
21536
|
};
|
|
21458
21537
|
}
|
|
21459
21538
|
const name = "@yorkie-js/sdk";
|
|
21460
|
-
const version = "0.7.
|
|
21539
|
+
const version = "0.7.12";
|
|
21461
21540
|
const pkg = {
|
|
21462
21541
|
name,
|
|
21463
21542
|
version
|
|
@@ -21768,7 +21847,8 @@
|
|
|
21768
21847
|
syncLoopDuration: 50,
|
|
21769
21848
|
retrySyncLoopDelay: 1e3,
|
|
21770
21849
|
reconnectStreamDelay: 1e3,
|
|
21771
|
-
channelHeartbeatInterval: DefaultChannelHeartbeatMs
|
|
21850
|
+
channelHeartbeatInterval: DefaultChannelHeartbeatMs,
|
|
21851
|
+
deactivateOnUnload: true
|
|
21772
21852
|
};
|
|
21773
21853
|
const DefaultBroadcastOptions = {
|
|
21774
21854
|
maxRetries: Infinity,
|
|
@@ -21788,6 +21868,7 @@
|
|
|
21788
21868
|
reconnectStreamDelay;
|
|
21789
21869
|
retrySyncLoopDelay;
|
|
21790
21870
|
channelHeartbeatInterval;
|
|
21871
|
+
deactivateOnUnload;
|
|
21791
21872
|
rpcClient;
|
|
21792
21873
|
setAuthToken;
|
|
21793
21874
|
taskQueue;
|
|
@@ -21821,6 +21902,7 @@
|
|
|
21821
21902
|
this.reconnectStreamDelay = opts.reconnectStreamDelay ?? DefaultClientOptions.reconnectStreamDelay;
|
|
21822
21903
|
this.retrySyncLoopDelay = opts.retrySyncLoopDelay ?? DefaultClientOptions.retrySyncLoopDelay;
|
|
21823
21904
|
this.channelHeartbeatInterval = opts.channelHeartbeatInterval ?? DefaultClientOptions.channelHeartbeatInterval;
|
|
21905
|
+
this.deactivateOnUnload = opts.deactivateOnUnload ?? DefaultClientOptions.deactivateOnUnload;
|
|
21824
21906
|
const { authInterceptor, setToken } = createAuthInterceptor(this.apiKey);
|
|
21825
21907
|
this.setAuthToken = setToken;
|
|
21826
21908
|
const transportOptions = {
|
|
@@ -21899,9 +21981,14 @@
|
|
|
21899
21981
|
this.deactivating = false;
|
|
21900
21982
|
this.runSyncLoop();
|
|
21901
21983
|
logger.info(`[AC] c:"${this.getKey()}" activated, id:"${this.id}"`);
|
|
21902
|
-
if (typeof window !== "undefined") {
|
|
21903
|
-
window.addEventListener("beforeunload",
|
|
21904
|
-
|
|
21984
|
+
if (typeof window !== "undefined" && this.deactivateOnUnload) {
|
|
21985
|
+
window.addEventListener("beforeunload", () => {
|
|
21986
|
+
void this.deactivate({ keepalive: true }).catch((err) => {
|
|
21987
|
+
logger.debug(
|
|
21988
|
+
`[DC] c:"${this.getKey()}" beforeunload deactivate failed:`,
|
|
21989
|
+
err
|
|
21990
|
+
);
|
|
21991
|
+
});
|
|
21905
21992
|
});
|
|
21906
21993
|
}
|
|
21907
21994
|
} catch (err) {
|
|
@@ -21989,7 +22076,10 @@
|
|
|
21989
22076
|
);
|
|
21990
22077
|
}
|
|
21991
22078
|
doc.setActor(this.id);
|
|
21992
|
-
|
|
22079
|
+
const resolvedDisablePresence = opts.disablePresence ?? doc.isPresenceDisabled() ?? false;
|
|
22080
|
+
if (!resolvedDisablePresence) {
|
|
22081
|
+
doc.update((_, p) => p.set(opts.initialPresence || {}));
|
|
22082
|
+
}
|
|
21993
22083
|
const syncMode = opts.syncMode ?? "realtime";
|
|
21994
22084
|
if (opts.documentPollInterval !== void 0 && opts.documentPollInterval <= 0) {
|
|
21995
22085
|
throw new YorkieError(
|
|
@@ -22006,7 +22096,8 @@
|
|
|
22006
22096
|
clientId: this.id,
|
|
22007
22097
|
changePack: converter.toChangePack(doc.createChangePack()),
|
|
22008
22098
|
schemaKey: opts.schema,
|
|
22009
|
-
disableGc: opts.disableGC ?? false
|
|
22099
|
+
disableGc: opts.disableGC ?? false,
|
|
22100
|
+
disablePresence: resolvedDisablePresence
|
|
22010
22101
|
},
|
|
22011
22102
|
{ headers: { "x-shard-key": `${this.apiKey}/${doc.getKey()}` } }
|
|
22012
22103
|
);
|
|
@@ -22019,6 +22110,7 @@
|
|
|
22019
22110
|
}
|
|
22020
22111
|
const pack = converter.fromChangePack(res.changePack);
|
|
22021
22112
|
doc.setDisableGC(opts.disableGC ?? false);
|
|
22113
|
+
doc.setDisablePresence(res.disablePresence);
|
|
22022
22114
|
doc.applyChangePack(pack);
|
|
22023
22115
|
if (doc.getStatus() === DocStatus.Removed) {
|
|
22024
22116
|
return doc;
|
|
@@ -22033,7 +22125,8 @@
|
|
|
22033
22125
|
syncMode,
|
|
22034
22126
|
pollInterval,
|
|
22035
22127
|
pollIntervalPinned,
|
|
22036
|
-
opts.disableGC ?? false
|
|
22128
|
+
opts.disableGC ?? false,
|
|
22129
|
+
res.disablePresence
|
|
22037
22130
|
)
|
|
22038
22131
|
);
|
|
22039
22132
|
if (syncMode !== "manual" && syncMode !== "polling") {
|