@vrtmrz/livesync-commonlib 0.1.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +49 -0
  3. package/dist/API/DirectFileManipulator.d.ts +2 -0
  4. package/dist/API/DirectFileManipulator.js +4 -0
  5. package/dist/API/DirectFileManipulatorV2.d.ts +150 -0
  6. package/dist/API/DirectFileManipulatorV2.js +424 -0
  7. package/dist/API/processSetting.d.ts +41 -0
  8. package/dist/API/processSetting.js +140 -0
  9. package/dist/ContentSplitter/ContentSplitter.d.ts +28 -0
  10. package/dist/ContentSplitter/ContentSplitter.js +5 -0
  11. package/dist/ContentSplitter/ContentSplitterBase.d.ts +51 -0
  12. package/dist/ContentSplitter/ContentSplitterBase.js +83 -0
  13. package/dist/ContentSplitter/ContentSplitterRabinKarp.d.ts +9 -0
  14. package/dist/ContentSplitter/ContentSplitterRabinKarp.js +32 -0
  15. package/dist/ContentSplitter/ContentSplitterV1.d.ts +9 -0
  16. package/dist/ContentSplitter/ContentSplitterV1.js +34 -0
  17. package/dist/ContentSplitter/ContentSplitterV2.d.ts +9 -0
  18. package/dist/ContentSplitter/ContentSplitterV2.js +34 -0
  19. package/dist/ContentSplitter/ContentSplitters.d.ts +12 -0
  20. package/dist/ContentSplitter/ContentSplitters.js +29 -0
  21. package/dist/bureau/bureau.d.ts +7 -0
  22. package/dist/bureau/bureau.js +5 -0
  23. package/dist/common/ConnectionString.d.ts +30 -0
  24. package/dist/common/ConnectionString.js +179 -0
  25. package/dist/common/LSError.d.ts +48 -0
  26. package/dist/common/LSError.js +112 -0
  27. package/dist/common/configForDoc.d.ts +79 -0
  28. package/dist/common/configForDoc.js +312 -0
  29. package/dist/common/coreEnvFunctions.d.ts +21 -0
  30. package/dist/common/coreEnvFunctions.js +22 -0
  31. package/dist/common/coreEnvVars.d.ts +3 -0
  32. package/dist/common/coreEnvVars.js +6 -0
  33. package/dist/common/i18n.d.ts +18 -0
  34. package/dist/common/i18n.js +7193 -0
  35. package/dist/common/logger.d.ts +2 -0
  36. package/dist/common/logger.js +1 -0
  37. package/dist/common/messages/combinedMessages.dev.d.ts +7 -0
  38. package/dist/common/messages/combinedMessages.dev.js +44 -0
  39. package/dist/common/messages/combinedMessages.prod.d.ts +9264 -0
  40. package/dist/common/messages/combinedMessages.prod.js +9271 -0
  41. package/dist/common/messages/de.d.ts +297 -0
  42. package/dist/common/messages/de.js +7 -0
  43. package/dist/common/messages/def.d.ts +1119 -0
  44. package/dist/common/messages/def.js +7 -0
  45. package/dist/common/messages/es.d.ts +689 -0
  46. package/dist/common/messages/es.js +7 -0
  47. package/dist/common/messages/fr.d.ts +582 -0
  48. package/dist/common/messages/fr.js +7 -0
  49. package/dist/common/messages/he.d.ts +583 -0
  50. package/dist/common/messages/he.js +7 -0
  51. package/dist/common/messages/ja.d.ts +838 -0
  52. package/dist/common/messages/ja.js +7 -0
  53. package/dist/common/messages/ko.d.ts +800 -0
  54. package/dist/common/messages/ko.js +7 -0
  55. package/dist/common/messages/ru.d.ts +858 -0
  56. package/dist/common/messages/ru.js +7 -0
  57. package/dist/common/messages/zh-tw.d.ts +384 -0
  58. package/dist/common/messages/zh-tw.js +7 -0
  59. package/dist/common/messages/zh.d.ts +1093 -0
  60. package/dist/common/messages/zh.js +7 -0
  61. package/dist/common/messagesJson/de.json +295 -0
  62. package/dist/common/messagesJson/en.json +1117 -0
  63. package/dist/common/messagesJson/es.json +687 -0
  64. package/dist/common/messagesJson/fr.json +580 -0
  65. package/dist/common/messagesJson/he.json +581 -0
  66. package/dist/common/messagesJson/ja.json +836 -0
  67. package/dist/common/messagesJson/ko.json +798 -0
  68. package/dist/common/messagesJson/ru.json +856 -0
  69. package/dist/common/messagesJson/zh-tw.json +382 -0
  70. package/dist/common/messagesJson/zh.json +1091 -0
  71. package/dist/common/models/auth.type.d.ts +41 -0
  72. package/dist/common/models/auth.type.js +0 -0
  73. package/dist/common/models/db.const.d.ts +20 -0
  74. package/dist/common/models/db.const.js +28 -0
  75. package/dist/common/models/db.definition.d.ts +56 -0
  76. package/dist/common/models/db.definition.js +6 -0
  77. package/dist/common/models/db.type.d.ts +142 -0
  78. package/dist/common/models/db.type.js +0 -0
  79. package/dist/common/models/diff.definition.d.ts +16 -0
  80. package/dist/common/models/diff.definition.js +0 -0
  81. package/dist/common/models/fileaccess.const.d.ts +7 -0
  82. package/dist/common/models/fileaccess.const.js +16 -0
  83. package/dist/common/models/fileaccess.type.d.ts +72 -0
  84. package/dist/common/models/fileaccess.type.js +0 -0
  85. package/dist/common/models/redflag.const.d.ts +32 -0
  86. package/dist/common/models/redflag.const.js +27 -0
  87. package/dist/common/models/setting.const.d.ts +49 -0
  88. package/dist/common/models/setting.const.defaults.d.ts +3 -0
  89. package/dist/common/models/setting.const.defaults.js +185 -0
  90. package/dist/common/models/setting.const.js +68 -0
  91. package/dist/common/models/setting.const.preferred.d.ts +5 -0
  92. package/dist/common/models/setting.const.preferred.js +35 -0
  93. package/dist/common/models/setting.const.qr.d.ts +2 -0
  94. package/dist/common/models/setting.const.qr.js +174 -0
  95. package/dist/common/models/setting.type.d.ts +900 -0
  96. package/dist/common/models/setting.type.js +8 -0
  97. package/dist/common/models/shared.const.behabiour.d.ts +28 -0
  98. package/dist/common/models/shared.const.behabiour.js +36 -0
  99. package/dist/common/models/shared.const.d.ts +5 -0
  100. package/dist/common/models/shared.const.js +12 -0
  101. package/dist/common/models/shared.const.symbols.d.ts +9 -0
  102. package/dist/common/models/shared.const.symbols.js +20 -0
  103. package/dist/common/models/shared.definition.configNames.d.ts +36 -0
  104. package/dist/common/models/shared.definition.configNames.js +203 -0
  105. package/dist/common/models/shared.definition.d.ts +22 -0
  106. package/dist/common/models/shared.definition.js +24 -0
  107. package/dist/common/models/shared.type.util.d.ts +8 -0
  108. package/dist/common/models/shared.type.util.js +0 -0
  109. package/dist/common/models/sync.definition.d.ts +18 -0
  110. package/dist/common/models/sync.definition.js +20 -0
  111. package/dist/common/models/tweak.definition.d.ts +191 -0
  112. package/dist/common/models/tweak.definition.js +77 -0
  113. package/dist/common/rosetta.d.ts +42 -0
  114. package/dist/common/rosetta.js +57 -0
  115. package/dist/common/settingConstants.d.ts +216 -0
  116. package/dist/common/settingConstants.js +434 -0
  117. package/dist/common/typeUtils.d.ts +17 -0
  118. package/dist/common/typeUtils.js +51 -0
  119. package/dist/common/types.d.ts +107 -0
  120. package/dist/common/types.js +212 -0
  121. package/dist/common/utils.d.ts +129 -0
  122. package/dist/common/utils.doc.d.ts +11 -0
  123. package/dist/common/utils.doc.js +35 -0
  124. package/dist/common/utils.js +583 -0
  125. package/dist/common/utils.object.d.ts +2 -0
  126. package/dist/common/utils.object.js +14 -0
  127. package/dist/common/utils.patch.d.ts +8 -0
  128. package/dist/common/utils.patch.js +178 -0
  129. package/dist/common/utils.type.d.ts +1 -0
  130. package/dist/common/utils.type.js +0 -0
  131. package/dist/context.d.ts +8 -0
  132. package/dist/context.js +14 -0
  133. package/dist/databases/IndexedDBKeyValueDatabase.d.ts +26 -0
  134. package/dist/databases/IndexedDBKeyValueDatabase.js +130 -0
  135. package/dist/dataobject/StoredMap.d.ts +12 -0
  136. package/dist/dataobject/StoredMap.js +47 -0
  137. package/dist/dev/checks.d.ts +5 -0
  138. package/dist/dev/checks.js +38 -0
  139. package/dist/encryption/encryptHKDF.d.ts +3 -0
  140. package/dist/encryption/encryptHKDF.js +7 -0
  141. package/dist/encryption/stringEncryption.d.ts +27 -0
  142. package/dist/encryption/stringEncryption.js +59 -0
  143. package/dist/events/coreEvents.d.ts +54 -0
  144. package/dist/events/coreEvents.js +46 -0
  145. package/dist/hub/hub.d.ts +11 -0
  146. package/dist/hub/hub.js +7 -0
  147. package/dist/index.d.ts +1 -0
  148. package/dist/index.js +4 -0
  149. package/dist/interfaces/AsyncActivityRunner.d.ts +18 -0
  150. package/dist/interfaces/AsyncActivityRunner.js +7 -0
  151. package/dist/interfaces/Confirm.d.ts +17 -0
  152. package/dist/interfaces/Confirm.js +0 -0
  153. package/dist/interfaces/DatabaseFileAccess.d.ts +14 -0
  154. package/dist/interfaces/DatabaseFileAccess.js +0 -0
  155. package/dist/interfaces/DatabaseRebuilder.d.ts +13 -0
  156. package/dist/interfaces/DatabaseRebuilder.js +0 -0
  157. package/dist/interfaces/FileHandler.d.ts +13 -0
  158. package/dist/interfaces/FileHandler.js +0 -0
  159. package/dist/interfaces/KeyValueDatabase.d.ts +11 -0
  160. package/dist/interfaces/KeyValueDatabase.js +0 -0
  161. package/dist/interfaces/ServiceModule.d.ts +59 -0
  162. package/dist/interfaces/ServiceModule.js +19 -0
  163. package/dist/interfaces/StorageAccess.d.ts +44 -0
  164. package/dist/interfaces/StorageAccess.js +0 -0
  165. package/dist/interfaces/StorageEventManager.d.ts +16 -0
  166. package/dist/interfaces/StorageEventManager.js +5 -0
  167. package/dist/managers/ChangeManager.d.ts +61 -0
  168. package/dist/managers/ChangeManager.js +104 -0
  169. package/dist/managers/ChunkDeliveryCoordinator.d.ts +51 -0
  170. package/dist/managers/ChunkDeliveryCoordinator.js +136 -0
  171. package/dist/managers/ChunkFetcher.d.ts +44 -0
  172. package/dist/managers/ChunkFetcher.js +251 -0
  173. package/dist/managers/ChunkManager.d.ts +2 -0
  174. package/dist/managers/ChunkManager.js +4 -0
  175. package/dist/managers/ConflictManager.d.ts +37 -0
  176. package/dist/managers/ConflictManager.js +322 -0
  177. package/dist/managers/EntryManager/EntryManager.d.ts +37 -0
  178. package/dist/managers/EntryManager/EntryManager.js +73 -0
  179. package/dist/managers/EntryManager/EntryManagerImpls.d.ts +74 -0
  180. package/dist/managers/EntryManager/EntryManagerImpls.js +499 -0
  181. package/dist/managers/HashManager/HashManager.d.ts +60 -0
  182. package/dist/managers/HashManager/HashManager.js +97 -0
  183. package/dist/managers/HashManager/HashManagerCore.d.ts +114 -0
  184. package/dist/managers/HashManager/HashManagerCore.js +99 -0
  185. package/dist/managers/HashManager/PureJSHashManager.d.ts +77 -0
  186. package/dist/managers/HashManager/PureJSHashManager.js +84 -0
  187. package/dist/managers/HashManager/XXHashHashManager.d.ts +96 -0
  188. package/dist/managers/HashManager/XXHashHashManager.js +111 -0
  189. package/dist/managers/LayeredChunkManager/ArrivalWaitLayer.d.ts +30 -0
  190. package/dist/managers/LayeredChunkManager/ArrivalWaitLayer.js +115 -0
  191. package/dist/managers/LayeredChunkManager/CacheLayer.d.ts +59 -0
  192. package/dist/managers/LayeredChunkManager/CacheLayer.js +161 -0
  193. package/dist/managers/LayeredChunkManager/ChunkLayerInterfaces.d.ts +37 -0
  194. package/dist/managers/LayeredChunkManager/ChunkLayerInterfaces.js +0 -0
  195. package/dist/managers/LayeredChunkManager/DatabaseReadLayer.d.ts +14 -0
  196. package/dist/managers/LayeredChunkManager/DatabaseReadLayer.js +78 -0
  197. package/dist/managers/LayeredChunkManager/DatabaseWriteLayer.d.ts +11 -0
  198. package/dist/managers/LayeredChunkManager/DatabaseWriteLayer.js +43 -0
  199. package/dist/managers/LayeredChunkManager/HotPackLayer.d.ts +9 -0
  200. package/dist/managers/LayeredChunkManager/HotPackLayer.js +8 -0
  201. package/dist/managers/LayeredChunkManager/types.d.ts +39 -0
  202. package/dist/managers/LayeredChunkManager/types.js +0 -0
  203. package/dist/managers/LayeredChunkManager.d.ts +53 -0
  204. package/dist/managers/LayeredChunkManager.js +240 -0
  205. package/dist/managers/LiveSyncManagers.d.ts +48 -0
  206. package/dist/managers/LiveSyncManagers.js +136 -0
  207. package/dist/managers/StorageEventManager.d.ts +135 -0
  208. package/dist/managers/StorageEventManager.js +564 -0
  209. package/dist/managers/StorageProcessingManager.d.ts +14 -0
  210. package/dist/managers/StorageProcessingManager.js +48 -0
  211. package/dist/managers/adapters/IStorageEventConverterAdapter.d.ts +16 -0
  212. package/dist/managers/adapters/IStorageEventConverterAdapter.js +0 -0
  213. package/dist/managers/adapters/IStorageEventManagerAdapter.d.ts +18 -0
  214. package/dist/managers/adapters/IStorageEventManagerAdapter.js +0 -0
  215. package/dist/managers/adapters/IStorageEventPersistenceAdapter.d.ts +15 -0
  216. package/dist/managers/adapters/IStorageEventPersistenceAdapter.js +0 -0
  217. package/dist/managers/adapters/IStorageEventStatusAdapter.d.ts +13 -0
  218. package/dist/managers/adapters/IStorageEventStatusAdapter.js +0 -0
  219. package/dist/managers/adapters/IStorageEventTypeGuardAdapter.d.ts +16 -0
  220. package/dist/managers/adapters/IStorageEventTypeGuardAdapter.js +0 -0
  221. package/dist/managers/adapters/IStorageEventWatchAdapter.d.ts +21 -0
  222. package/dist/managers/adapters/IStorageEventWatchAdapter.js +0 -0
  223. package/dist/managers/adapters/index.d.ts +6 -0
  224. package/dist/managers/adapters/index.js +0 -0
  225. package/dist/mock_and_interop/stores.d.ts +21 -0
  226. package/dist/mock_and_interop/stores.js +15 -0
  227. package/dist/mock_and_interop/wrapper.d.ts +7 -0
  228. package/dist/mock_and_interop/wrapper.js +37 -0
  229. package/dist/mods.d.ts +1 -0
  230. package/dist/mods.js +18 -0
  231. package/dist/platform/browser/index.d.ts +1 -0
  232. package/dist/platform/browser/index.js +10 -0
  233. package/dist/platform/browser/storage.d.ts +35 -0
  234. package/dist/platform/browser/storage.js +139 -0
  235. package/dist/platform/node/index.d.ts +23 -0
  236. package/dist/platform/node/index.js +33 -0
  237. package/dist/platform/node/storage.d.ts +31 -0
  238. package/dist/platform/node/storage.js +104 -0
  239. package/dist/platform/storagePath.d.ts +7 -0
  240. package/dist/platform/storagePath.js +20 -0
  241. package/dist/pouchdb/LiveSyncDBFunctions.d.ts +14 -0
  242. package/dist/pouchdb/LiveSyncDBFunctions.js +129 -0
  243. package/dist/pouchdb/LiveSyncLocalDB.d.ts +196 -0
  244. package/dist/pouchdb/LiveSyncLocalDB.js +381 -0
  245. package/dist/pouchdb/PouchDBConstructor.d.ts +3 -0
  246. package/dist/pouchdb/PouchDBConstructor.js +0 -0
  247. package/dist/pouchdb/ReplicatorShim.d.ts +51 -0
  248. package/dist/pouchdb/ReplicatorShim.js +109 -0
  249. package/dist/pouchdb/StreamingFetch.d.ts +19 -0
  250. package/dist/pouchdb/StreamingFetch.js +263 -0
  251. package/dist/pouchdb/chunks.d.ts +38 -0
  252. package/dist/pouchdb/chunks.js +314 -0
  253. package/dist/pouchdb/compress.d.ts +11 -0
  254. package/dist/pouchdb/compress.js +99 -0
  255. package/dist/pouchdb/encryption.d.ts +20 -0
  256. package/dist/pouchdb/encryption.js +458 -0
  257. package/dist/pouchdb/negotiation.d.ts +9 -0
  258. package/dist/pouchdb/negotiation.js +109 -0
  259. package/dist/pouchdb/pouchdb-browser.d.ts +2 -0
  260. package/dist/pouchdb/pouchdb-browser.js +96 -0
  261. package/dist/pouchdb/pouchdb-http.d.ts +2 -0
  262. package/dist/pouchdb/pouchdb-http.js +94 -0
  263. package/dist/pouchdb/pouchdb-test.d.ts +2 -0
  264. package/dist/pouchdb/pouchdb-test.js +12 -0
  265. package/dist/pouchdb/utils_couchdb.d.ts +4 -0
  266. package/dist/pouchdb/utils_couchdb.js +38 -0
  267. package/dist/replication/LiveSyncAbstractReplicator.d.ts +69 -0
  268. package/dist/replication/LiveSyncAbstractReplicator.js +92 -0
  269. package/dist/replication/SyncParamsHandler.d.ts +35 -0
  270. package/dist/replication/SyncParamsHandler.js +118 -0
  271. package/dist/replication/couchdb/LiveSyncReplicator.d.ts +85 -0
  272. package/dist/replication/couchdb/LiveSyncReplicator.js +1132 -0
  273. package/dist/replication/httplib.d.ts +75 -0
  274. package/dist/replication/httplib.js +187 -0
  275. package/dist/replication/journal/JournalSyncCore.d.ts +70 -0
  276. package/dist/replication/journal/JournalSyncCore.js +737 -0
  277. package/dist/replication/journal/JournalSyncTypes.d.ts +9 -0
  278. package/dist/replication/journal/JournalSyncTypes.js +11 -0
  279. package/dist/replication/journal/LiveSyncJournalReplicator.d.ts +40 -0
  280. package/dist/replication/journal/LiveSyncJournalReplicator.js +294 -0
  281. package/dist/replication/journal/LiveSyncJournalReplicatorEnv.d.ts +3 -0
  282. package/dist/replication/journal/LiveSyncJournalReplicatorEnv.js +0 -0
  283. package/dist/replication/journal/objectstore/JournalStorageAdapter.d.ts +15 -0
  284. package/dist/replication/journal/objectstore/JournalStorageAdapter.js +0 -0
  285. package/dist/replication/journal/objectstore/MinioStorageAdapter.d.ts +21 -0
  286. package/dist/replication/journal/objectstore/MinioStorageAdapter.js +204 -0
  287. package/dist/replication/trystero/LiveSyncTrysteroReplicator.d.ts +90 -0
  288. package/dist/replication/trystero/LiveSyncTrysteroReplicator.js +380 -0
  289. package/dist/replication/trystero/P2PLogCollector.d.ts +8 -0
  290. package/dist/replication/trystero/P2PLogCollector.js +91 -0
  291. package/dist/replication/trystero/P2PReplicatorBase.d.ts +19 -0
  292. package/dist/replication/trystero/P2PReplicatorBase.js +0 -0
  293. package/dist/replication/trystero/P2PReplicatorCore.d.ts +12 -0
  294. package/dist/replication/trystero/P2PReplicatorCore.js +126 -0
  295. package/dist/replication/trystero/P2PReplicatorPaneCommon.d.ts +41 -0
  296. package/dist/replication/trystero/P2PReplicatorPaneCommon.js +20 -0
  297. package/dist/replication/trystero/ProxiedDB.d.ts +13 -0
  298. package/dist/replication/trystero/ProxiedDB.js +20 -0
  299. package/dist/replication/trystero/TrysteroReplicator.d.ts +152 -0
  300. package/dist/replication/trystero/TrysteroReplicator.js +683 -0
  301. package/dist/replication/trystero/TrysteroReplicatorP2PClient.d.ts +19 -0
  302. package/dist/replication/trystero/TrysteroReplicatorP2PClient.js +80 -0
  303. package/dist/replication/trystero/TrysteroReplicatorP2PConnection.d.ts +2 -0
  304. package/dist/replication/trystero/TrysteroReplicatorP2PConnection.js +4 -0
  305. package/dist/replication/trystero/TrysteroReplicatorP2PServer.d.ts +117 -0
  306. package/dist/replication/trystero/TrysteroReplicatorP2PServer.js +540 -0
  307. package/dist/replication/trystero/UseP2PReplicatorResult.d.ts +11 -0
  308. package/dist/replication/trystero/UseP2PReplicatorResult.js +0 -0
  309. package/dist/replication/trystero/addP2PEventHandlers.d.ts +35 -0
  310. package/dist/replication/trystero/addP2PEventHandlers.js +43 -0
  311. package/dist/replication/trystero/rpcCompat.d.ts +1 -0
  312. package/dist/replication/trystero/rpcCompat.js +9 -0
  313. package/dist/replication/trystero/types.d.ts +95 -0
  314. package/dist/replication/trystero/types.js +27 -0
  315. package/dist/replication/trystero/useP2PReplicatorCommands.d.ts +7 -0
  316. package/dist/replication/trystero/useP2PReplicatorCommands.js +25 -0
  317. package/dist/replication/trystero/useP2PReplicatorFeature.d.ts +17 -0
  318. package/dist/replication/trystero/useP2PReplicatorFeature.js +82 -0
  319. package/dist/rpc/RpcRoom.d.ts +24 -0
  320. package/dist/rpc/RpcRoom.js +300 -0
  321. package/dist/rpc/RpcSession.d.ts +9 -0
  322. package/dist/rpc/RpcSession.js +32 -0
  323. package/dist/rpc/chunking.d.ts +11 -0
  324. package/dist/rpc/chunking.js +58 -0
  325. package/dist/rpc/errors.d.ts +8 -0
  326. package/dist/rpc/errors.js +26 -0
  327. package/dist/rpc/index.d.ts +6 -0
  328. package/dist/rpc/index.js +12 -0
  329. package/dist/rpc/pouchdb/RpcPouchDBProxy.d.ts +75 -0
  330. package/dist/rpc/pouchdb/RpcPouchDBProxy.js +115 -0
  331. package/dist/rpc/pouchdb/RpcPouchDBServer.d.ts +16 -0
  332. package/dist/rpc/pouchdb/RpcPouchDBServer.js +55 -0
  333. package/dist/rpc/transports/DiagRTCPeerConnections.d.ts +24 -0
  334. package/dist/rpc/transports/DiagRTCPeerConnections.js +208 -0
  335. package/dist/rpc/transports/DiagRTCPeerConnections.types.d.ts +64 -0
  336. package/dist/rpc/transports/DiagRTCPeerConnections.types.js +12 -0
  337. package/dist/rpc/transports/DiagRTCPeerConnections.utils.d.ts +33 -0
  338. package/dist/rpc/transports/DiagRTCPeerConnections.utils.js +217 -0
  339. package/dist/rpc/transports/TrysteroTransport.d.ts +216 -0
  340. package/dist/rpc/transports/TrysteroTransport.js +134 -0
  341. package/dist/rpc/transports/trysteroUtils.d.ts +3 -0
  342. package/dist/rpc/transports/trysteroUtils.js +37 -0
  343. package/dist/rpc/types.d.ts +75 -0
  344. package/dist/rpc/types.js +6 -0
  345. package/dist/serviceFeatures/checkRemoteSize.d.ts +28 -0
  346. package/dist/serviceFeatures/checkRemoteSize.js +178 -0
  347. package/dist/serviceFeatures/offlineScanner.d.ts +128 -0
  348. package/dist/serviceFeatures/offlineScanner.js +553 -0
  349. package/dist/serviceFeatures/prepareDatabaseForUse.d.ts +20 -0
  350. package/dist/serviceFeatures/prepareDatabaseForUse.js +39 -0
  351. package/dist/serviceFeatures/remoteConfig.d.ts +46 -0
  352. package/dist/serviceFeatures/remoteConfig.js +247 -0
  353. package/dist/serviceFeatures/setupObsidian/qrCode.d.ts +4 -0
  354. package/dist/serviceFeatures/setupObsidian/qrCode.js +67 -0
  355. package/dist/serviceFeatures/setupObsidian/setupUri.d.ts +7 -0
  356. package/dist/serviceFeatures/setupObsidian/setupUri.js +70 -0
  357. package/dist/serviceFeatures/setupObsidian/types.d.ts +2 -0
  358. package/dist/serviceFeatures/setupObsidian/types.js +0 -0
  359. package/dist/serviceFeatures/targetFilter.d.ts +24 -0
  360. package/dist/serviceFeatures/targetFilter.js +178 -0
  361. package/dist/serviceModules/FileAccessBase.d.ts +93 -0
  362. package/dist/serviceModules/FileAccessBase.js +219 -0
  363. package/dist/serviceModules/Rebuilder.d.ts +92 -0
  364. package/dist/serviceModules/Rebuilder.js +449 -0
  365. package/dist/serviceModules/ServiceDatabaseFileAccessBase.d.ts +40 -0
  366. package/dist/serviceModules/ServiceDatabaseFileAccessBase.js +306 -0
  367. package/dist/serviceModules/ServiceFileAccessBase.d.ts +64 -0
  368. package/dist/serviceModules/ServiceFileAccessBase.js +312 -0
  369. package/dist/serviceModules/ServiceFileHandlerBase.d.ts +52 -0
  370. package/dist/serviceModules/ServiceFileHandlerBase.js +493 -0
  371. package/dist/serviceModules/ServiceModuleBase.d.ts +10 -0
  372. package/dist/serviceModules/ServiceModuleBase.js +13 -0
  373. package/dist/serviceModules/adapters/IConversionAdapter.d.ts +15 -0
  374. package/dist/serviceModules/adapters/IConversionAdapter.js +0 -0
  375. package/dist/serviceModules/adapters/IFileSystemAdapter.d.ts +47 -0
  376. package/dist/serviceModules/adapters/IFileSystemAdapter.js +0 -0
  377. package/dist/serviceModules/adapters/IPathAdapter.d.ts +15 -0
  378. package/dist/serviceModules/adapters/IPathAdapter.js +0 -0
  379. package/dist/serviceModules/adapters/IStorageAdapter.d.ts +56 -0
  380. package/dist/serviceModules/adapters/IStorageAdapter.js +0 -0
  381. package/dist/serviceModules/adapters/ITypeGuardAdapter.d.ts +14 -0
  382. package/dist/serviceModules/adapters/ITypeGuardAdapter.js +0 -0
  383. package/dist/serviceModules/adapters/IVaultAdapter.d.ts +51 -0
  384. package/dist/serviceModules/adapters/IVaultAdapter.js +0 -0
  385. package/dist/serviceModules/adapters/index.d.ts +6 -0
  386. package/dist/serviceModules/adapters/index.js +0 -0
  387. package/dist/services/BrowserServices.d.ts +36 -0
  388. package/dist/services/BrowserServices.js +123 -0
  389. package/dist/services/HeadlessServices.d.ts +14 -0
  390. package/dist/services/HeadlessServices.js +144 -0
  391. package/dist/services/InjectableServices.d.ts +1 -0
  392. package/dist/services/InjectableServices.js +4 -0
  393. package/dist/services/ServiceHub.d.ts +82 -0
  394. package/dist/services/ServiceHub.js +66 -0
  395. package/dist/services/base/APIService.d.ts +93 -0
  396. package/dist/services/base/APIService.js +44 -0
  397. package/dist/services/base/AppLifecycleService.d.ts +132 -0
  398. package/dist/services/base/AppLifecycleService.js +123 -0
  399. package/dist/services/base/ConfigService.d.ts +7 -0
  400. package/dist/services/base/ConfigService.js +6 -0
  401. package/dist/services/base/ConflictService.d.ts +54 -0
  402. package/dist/services/base/ConflictService.js +22 -0
  403. package/dist/services/base/ControlService.d.ts +54 -0
  404. package/dist/services/base/ControlService.js +103 -0
  405. package/dist/services/base/DatabaseEventService.d.ts +38 -0
  406. package/dist/services/base/DatabaseEventService.js +38 -0
  407. package/dist/services/base/DatabaseService.d.ts +40 -0
  408. package/dist/services/base/DatabaseService.js +79 -0
  409. package/dist/services/base/FileProcessingService.d.ts +25 -0
  410. package/dist/services/base/FileProcessingService.js +28 -0
  411. package/dist/services/base/IService.d.ts +284 -0
  412. package/dist/services/base/IService.js +1 -0
  413. package/dist/services/base/KeyValueDBService.d.ts +42 -0
  414. package/dist/services/base/KeyValueDBService.js +133 -0
  415. package/dist/services/base/MessageTranslator.d.ts +6 -0
  416. package/dist/services/base/MessageTranslator.js +4 -0
  417. package/dist/services/base/PathService.d.ts +38 -0
  418. package/dist/services/base/PathService.js +66 -0
  419. package/dist/services/base/RemoteService.d.ts +61 -0
  420. package/dist/services/base/RemoteService.js +212 -0
  421. package/dist/services/base/ReplicationService.d.ts +92 -0
  422. package/dist/services/base/ReplicationService.js +261 -0
  423. package/dist/services/base/ReplicatorService.d.ts +66 -0
  424. package/dist/services/base/ReplicatorService.js +164 -0
  425. package/dist/services/base/ServiceBase.d.ts +33 -0
  426. package/dist/services/base/ServiceBase.js +27 -0
  427. package/dist/services/base/SettingService.d.ts +112 -0
  428. package/dist/services/base/SettingService.js +543 -0
  429. package/dist/services/base/TestService.d.ts +28 -0
  430. package/dist/services/base/TestService.js +19 -0
  431. package/dist/services/base/TweakValueService.d.ts +40 -0
  432. package/dist/services/base/TweakValueService.js +6 -0
  433. package/dist/services/base/UnresolvedErrorManager.d.ts +15 -0
  434. package/dist/services/base/UnresolvedErrorManager.js +44 -0
  435. package/dist/services/base/VaultService.d.ts +69 -0
  436. package/dist/services/base/VaultService.js +70 -0
  437. package/dist/services/implements/base/SvelteDialog.d.ts +79 -0
  438. package/dist/services/implements/base/SvelteDialog.js +134 -0
  439. package/dist/services/implements/base/UIService.d.ts +24 -0
  440. package/dist/services/implements/base/UIService.js +37 -0
  441. package/dist/services/implements/browser/BrowserAPIService.d.ts +54 -0
  442. package/dist/services/implements/browser/BrowserAPIService.js +298 -0
  443. package/dist/services/implements/browser/BrowserDatabaseService.d.ts +7 -0
  444. package/dist/services/implements/browser/BrowserDatabaseService.js +10 -0
  445. package/dist/services/implements/browser/ConfigServiceBrowserCompat.d.ts +16 -0
  446. package/dist/services/implements/browser/ConfigServiceBrowserCompat.js +23 -0
  447. package/dist/services/implements/headless/HeadlessAPIService.d.ts +52 -0
  448. package/dist/services/implements/headless/HeadlessAPIService.js +127 -0
  449. package/dist/services/implements/headless/HeadlessDatabaseService.d.ts +7 -0
  450. package/dist/services/implements/headless/HeadlessDatabaseService.js +10 -0
  451. package/dist/services/implements/injectable/InjectableAPIService.d.ts +7 -0
  452. package/dist/services/implements/injectable/InjectableAPIService.js +18 -0
  453. package/dist/services/implements/injectable/InjectableAppLifecycleService.d.ts +11 -0
  454. package/dist/services/implements/injectable/InjectableAppLifecycleService.js +14 -0
  455. package/dist/services/implements/injectable/InjectableConflictService.d.ts +11 -0
  456. package/dist/services/implements/injectable/InjectableConflictService.js +14 -0
  457. package/dist/services/implements/injectable/InjectableDatabaseEventService.d.ts +4 -0
  458. package/dist/services/implements/injectable/InjectableDatabaseEventService.js +7 -0
  459. package/dist/services/implements/injectable/InjectableFileProcessingService.d.ts +4 -0
  460. package/dist/services/implements/injectable/InjectableFileProcessingService.js +6 -0
  461. package/dist/services/implements/injectable/InjectablePathService.d.ts +12 -0
  462. package/dist/services/implements/injectable/InjectablePathService.js +36 -0
  463. package/dist/services/implements/injectable/InjectableRemoteService.d.ts +4 -0
  464. package/dist/services/implements/injectable/InjectableRemoteService.js +7 -0
  465. package/dist/services/implements/injectable/InjectableReplicationService.d.ts +4 -0
  466. package/dist/services/implements/injectable/InjectableReplicationService.js +6 -0
  467. package/dist/services/implements/injectable/InjectableReplicatorService.d.ts +4 -0
  468. package/dist/services/implements/injectable/InjectableReplicatorService.js +7 -0
  469. package/dist/services/implements/injectable/InjectableServiceHub.d.ts +72 -0
  470. package/dist/services/implements/injectable/InjectableServiceHub.js +125 -0
  471. package/dist/services/implements/injectable/InjectableServices.d.ts +36 -0
  472. package/dist/services/implements/injectable/InjectableServices.js +1 -0
  473. package/dist/services/implements/injectable/InjectableSettingService.d.ts +11 -0
  474. package/dist/services/implements/injectable/InjectableSettingService.js +33 -0
  475. package/dist/services/implements/injectable/InjectableTestService.d.ts +5 -0
  476. package/dist/services/implements/injectable/InjectableTestService.js +8 -0
  477. package/dist/services/implements/injectable/InjectableTweakValueService.d.ts +15 -0
  478. package/dist/services/implements/injectable/InjectableTweakValueService.js +12 -0
  479. package/dist/services/implements/injectable/InjectableVaultService.d.ts +9 -0
  480. package/dist/services/implements/injectable/InjectableVaultService.js +20 -0
  481. package/dist/services/lib/HandlerUtils.d.ts +374 -0
  482. package/dist/services/lib/HandlerUtils.js +412 -0
  483. package/dist/services/lib/logUtils.d.ts +13 -0
  484. package/dist/services/lib/logUtils.js +28 -0
  485. package/dist/services/lib/remoteActivity.d.ts +13 -0
  486. package/dist/services/lib/remoteActivity.js +11 -0
  487. package/dist/string_and_binary/chunks.d.ts +10 -0
  488. package/dist/string_and_binary/chunks.js +561 -0
  489. package/dist/string_and_binary/convert.d.ts +8 -0
  490. package/dist/string_and_binary/convert.js +46 -0
  491. package/dist/string_and_binary/hash.d.ts +2 -0
  492. package/dist/string_and_binary/hash.js +1 -0
  493. package/dist/string_and_binary/path.d.ts +35 -0
  494. package/dist/string_and_binary/path.js +240 -0
  495. package/dist/worker/bg.common.d.ts +2 -0
  496. package/dist/worker/bg.common.js +6 -0
  497. package/dist/worker/bg.worker.d.ts +1 -0
  498. package/dist/worker/bg.worker.encryption.d.ts +7 -0
  499. package/dist/worker/bg.worker.encryption.js +30 -0
  500. package/dist/worker/bg.worker.js +14 -0
  501. package/dist/worker/bg.worker.splitting.d.ts +6 -0
  502. package/dist/worker/bg.worker.splitting.js +36 -0
  503. package/dist/worker/bgWorker.d.ts +25 -0
  504. package/dist/worker/bgWorker.direct.d.ts +40 -0
  505. package/dist/worker/bgWorker.direct.js +65 -0
  506. package/dist/worker/bgWorker.encryption.d.ts +22 -0
  507. package/dist/worker/bgWorker.encryption.js +40 -0
  508. package/dist/worker/bgWorker.js +348 -0
  509. package/dist/worker/bgWorker.splitting.d.ts +27 -0
  510. package/dist/worker/bgWorker.splitting.js +123 -0
  511. package/dist/worker/universalTypes.d.ts +63 -0
  512. package/dist/worker/universalTypes.js +4 -0
  513. package/docs/development.md +51 -0
  514. package/docs/platform-storage.md +60 -0
  515. package/docs/releasing.md +69 -0
  516. package/package.json +693 -0
@@ -0,0 +1,41 @@
1
+ export type CouchDBCredentials = BasicCredentials | JWTCredentials;
2
+ export type JWTAlgorithm = "HS256" | "HS512" | "ES256" | "ES512" | "";
3
+ export type Credential = {
4
+ username: string;
5
+ password: string;
6
+ };
7
+ export type BasicCredentials = {
8
+ username: string;
9
+ password: string;
10
+ type: "basic";
11
+ };
12
+ export type JWTCredentials = {
13
+ jwtAlgorithm: JWTAlgorithm;
14
+ jwtKey: string;
15
+ jwtKid: string;
16
+ jwtSub: string;
17
+ jwtExpDuration: number;
18
+ type: "jwt";
19
+ };
20
+ export interface JWTHeader {
21
+ alg: string;
22
+ typ: string;
23
+ kid?: string;
24
+ }
25
+ export interface JWTPayload {
26
+ sub: string;
27
+ exp: number;
28
+ iss?: string;
29
+ iat: number;
30
+ [key: string]: unknown;
31
+ }
32
+ export interface JWTParams {
33
+ header: JWTHeader;
34
+ payload: JWTPayload;
35
+ credentials: JWTCredentials;
36
+ }
37
+ export interface PreparedJWT {
38
+ header: JWTHeader;
39
+ payload: JWTPayload;
40
+ token: string;
41
+ }
File without changes
@@ -0,0 +1,20 @@
1
+ import type { DocumentID } from "./db.type.js";
2
+ export declare const VERSIONING_DOCID: DocumentID;
3
+ export declare const MILESTONE_DOCID: DocumentID;
4
+ export declare const NODEINFO_DOCID: DocumentID;
5
+ export declare const SYNCINFO_ID: DocumentID;
6
+ export declare const EntryTypes: {
7
+ readonly NOTE_LEGACY: "notes";
8
+ readonly NOTE_BINARY: "newnote";
9
+ readonly NOTE_PLAIN: "plain";
10
+ readonly INTERNAL_FILE: "internalfile";
11
+ readonly CHUNK: "leaf";
12
+ readonly CHUNK_PACK: "chunkpack";
13
+ readonly VERSION_INFO: "versioninfo";
14
+ readonly SYNC_INFO: "syncinfo";
15
+ readonly SYNC_PARAMETERS: "sync-parameters";
16
+ readonly MILESTONE_INFO: "milestoneinfo";
17
+ readonly NODE_INFO: "nodeinfo";
18
+ };
19
+ export declare const NoteTypes: ("notes" | "newnote" | "plain")[];
20
+ export declare const ChunkTypes: ("leaf" | "chunkpack")[];
@@ -0,0 +1,28 @@
1
+ const VERSIONING_DOCID = "obsydian_livesync_version";
2
+ const MILESTONE_DOCID = "_local/obsydian_livesync_milestone";
3
+ const NODEINFO_DOCID = "_local/obsydian_livesync_nodeinfo";
4
+ const SYNCINFO_ID = "syncinfo";
5
+ const EntryTypes = {
6
+ NOTE_LEGACY: "notes",
7
+ NOTE_BINARY: "newnote",
8
+ NOTE_PLAIN: "plain",
9
+ INTERNAL_FILE: "internalfile",
10
+ CHUNK: "leaf",
11
+ CHUNK_PACK: "chunkpack",
12
+ VERSION_INFO: "versioninfo",
13
+ SYNC_INFO: "syncinfo",
14
+ SYNC_PARAMETERS: "sync-parameters",
15
+ MILESTONE_INFO: "milestoneinfo",
16
+ NODE_INFO: "nodeinfo"
17
+ };
18
+ const NoteTypes = [EntryTypes.NOTE_LEGACY, EntryTypes.NOTE_BINARY, EntryTypes.NOTE_PLAIN];
19
+ const ChunkTypes = [EntryTypes.CHUNK, EntryTypes.CHUNK_PACK];
20
+ export {
21
+ ChunkTypes,
22
+ EntryTypes,
23
+ MILESTONE_DOCID,
24
+ NODEINFO_DOCID,
25
+ NoteTypes,
26
+ SYNCINFO_ID,
27
+ VERSIONING_DOCID
28
+ };
@@ -0,0 +1,56 @@
1
+ import type { MILESTONE_DOCID, NODEINFO_DOCID } from "./db.const.js";
2
+ import type { AnyEntry, ChunkVersionRange, DatabaseEntry, EntryChunkPack, EntryLeaf, EntryTypes, EntryVersionInfo, InternalFileEntry, LoadedEntry, MetaEntry, NewEntry, NoteEntry, PlainEntry } from "./db.type.js";
3
+ import type { TweakValues } from "./tweak.definition.js";
4
+ export type NodeKey = string;
5
+ export interface DeviceInfo {
6
+ /**
7
+ * Name of the device (Initially from deviceAndVaultName setting, configurable).
8
+ */
9
+ device_name: string;
10
+ /**
11
+ * Vault name (From vaultName setting).
12
+ */
13
+ vault_name: string;
14
+ /**
15
+ * Obsidian App version of the device.
16
+ */
17
+ app_version: string;
18
+ /**
19
+ * Plugin version of the device.
20
+ */
21
+ plugin_version: string;
22
+ progress: string;
23
+ }
24
+ export interface NodeData extends DeviceInfo {
25
+ /**
26
+ * Epoch time in milliseconds when the device last connected.
27
+ */
28
+ last_connected: number;
29
+ }
30
+ export interface EntryMilestoneInfo extends DatabaseEntry {
31
+ _id: typeof MILESTONE_DOCID;
32
+ type: EntryTypes["MILESTONE_INFO"];
33
+ created: number;
34
+ accepted_nodes: string[];
35
+ node_info: {
36
+ [key: NodeKey]: NodeData;
37
+ };
38
+ locked: boolean;
39
+ cleaned?: boolean;
40
+ node_chunk_info: {
41
+ [key: NodeKey]: ChunkVersionRange;
42
+ };
43
+ tweak_values: {
44
+ [key: NodeKey]: TweakValues;
45
+ };
46
+ }
47
+ export interface EntryNodeInfo extends DatabaseEntry {
48
+ _id: typeof NODEINFO_DOCID;
49
+ type: EntryTypes["NODE_INFO"];
50
+ nodeid: string;
51
+ v20220607?: boolean;
52
+ }
53
+ export type EntryBody = NoteEntry | NewEntry | PlainEntry | InternalFileEntry;
54
+ export type EntryDoc = EntryBody | LoadedEntry | EntryLeaf | EntryVersionInfo | EntryMilestoneInfo | EntryNodeInfo | EntryChunkPack;
55
+ export type EntryDocResponse = EntryDoc & PouchDB.Core.IdMeta & PouchDB.Core.GetMeta;
56
+ export declare function isMetaEntry(entry: AnyEntry): entry is MetaEntry;
@@ -0,0 +1,6 @@
1
+ function isMetaEntry(entry) {
2
+ return "children" in entry;
3
+ }
4
+ export {
5
+ isMetaEntry
6
+ };
@@ -0,0 +1,142 @@
1
+ import type { TaggedType } from "octagonal-wheels/common/types";
2
+ import type { EntryTypes, SYNCINFO_ID } from "./db.const.js";
3
+ export type FilePath = TaggedType<string, "FilePath">;
4
+ export type FilePathWithPrefixLC = TaggedType<string, "FilePathWithPrefixLC">;
5
+ export type FilePathWithPrefix = TaggedType<string, "FilePathWithPrefix"> | FilePath | FilePathWithPrefixLC;
6
+ export type DocumentID = TaggedType<string, "documentId">;
7
+ export type EntryType = (typeof EntryTypes)[keyof typeof EntryTypes];
8
+ export type EntryTypes = typeof EntryTypes;
9
+ export type EntryTypeNotes = EntryTypes["NOTE_BINARY"] | EntryTypes["NOTE_PLAIN"];
10
+ export type EntryTypeNotesWithLegacy = EntryTypeNotes | EntryTypes["NOTE_LEGACY"];
11
+ /**
12
+ * Represents an entry in the database.
13
+ */
14
+ export interface DatabaseEntry {
15
+ /**
16
+ * The ID of the document.
17
+ */
18
+ _id: DocumentID;
19
+ /**
20
+ * The revision of the document.
21
+ */
22
+ _rev?: string;
23
+ /**
24
+ * Deleted flag.
25
+ */
26
+ _deleted?: boolean;
27
+ /**
28
+ * Conflicts (if exists).
29
+ */
30
+ _conflicts?: string[];
31
+ }
32
+ /**
33
+ * Represents the base structure for an entry that represents a file.
34
+ */
35
+ export type EntryBase = {
36
+ /**
37
+ * The creation time of the file.
38
+ */
39
+ ctime: number;
40
+ /**
41
+ * The modification time of the file.
42
+ */
43
+ mtime: number;
44
+ /**
45
+ * The size of the file.
46
+ */
47
+ size: number;
48
+ /**
49
+ * Deleted flag.
50
+ */
51
+ deleted?: boolean;
52
+ };
53
+ export type EdenChunk = {
54
+ data: string;
55
+ epoch: number;
56
+ };
57
+ export type EntryWithEden = {
58
+ eden: Record<DocumentID, EdenChunk>;
59
+ };
60
+ export type NoteEntry = DatabaseEntry & EntryBase & EntryWithEden & {
61
+ /**
62
+ * The path of the file.
63
+ */
64
+ path: FilePathWithPrefix;
65
+ /**
66
+ * Contents of the file.
67
+ */
68
+ data: string | string[];
69
+ /**
70
+ * The type of the entry.
71
+ */
72
+ type: EntryTypes["NOTE_LEGACY"];
73
+ };
74
+ export type NewEntry = DatabaseEntry & EntryBase & EntryWithEden & {
75
+ /**
76
+ * The path of the file.
77
+ */
78
+ path: FilePathWithPrefix;
79
+ /**
80
+ * Chunk IDs indicating the contents of the file.
81
+ */
82
+ children: string[];
83
+ /**
84
+ * The type of the entry.
85
+ */
86
+ type: EntryTypes["NOTE_BINARY"];
87
+ };
88
+ export type PlainEntry = DatabaseEntry & EntryBase & EntryWithEden & {
89
+ /**
90
+ * The path of the file.
91
+ */
92
+ path: FilePathWithPrefix;
93
+ /**
94
+ * Chunk IDs indicating the contents of the file.
95
+ */
96
+ children: string[];
97
+ /**
98
+ * The type of the entry.
99
+ */
100
+ type: EntryTypes["NOTE_PLAIN"];
101
+ };
102
+ export type InternalFileEntry = DatabaseEntry & NewEntry & EntryBase & {
103
+ deleted?: boolean;
104
+ };
105
+ export type AnyEntry = NoteEntry | NewEntry | PlainEntry | InternalFileEntry;
106
+ export type LoadedEntry = AnyEntry & {
107
+ data: string | string[];
108
+ datatype: EntryTypeNotes;
109
+ };
110
+ export type SavingEntry = AnyEntry & {
111
+ data: Blob;
112
+ datatype: EntryTypeNotes;
113
+ };
114
+ export type MetaEntry = AnyEntry & {
115
+ children: string[];
116
+ };
117
+ export type EntryLeaf = DatabaseEntry & {
118
+ type: EntryTypes["CHUNK"];
119
+ data: string;
120
+ isCorrupted?: boolean;
121
+ };
122
+ export type EntryChunkPack = DatabaseEntry & {
123
+ type: EntryTypes["CHUNK_PACK"];
124
+ data: string;
125
+ };
126
+ export interface EntryVersionInfo extends DatabaseEntry {
127
+ type: EntryTypes["VERSION_INFO"];
128
+ version: number;
129
+ }
130
+ export interface EntryHasPath {
131
+ path: FilePathWithPrefix | FilePath;
132
+ }
133
+ export interface ChunkVersionRange {
134
+ min: number;
135
+ max: number;
136
+ current: number;
137
+ }
138
+ export interface SyncInfo extends DatabaseEntry {
139
+ _id: typeof SYNCINFO_ID;
140
+ type: EntryTypes["SYNC_INFO"];
141
+ data: string;
142
+ }
File without changes
@@ -0,0 +1,16 @@
1
+ import type { AUTO_MERGED, CANCELLED, MISSING_OR_ERROR, NOT_CONFLICTED } from "./shared.const.symbols.js";
2
+ export type diff_result_leaf = {
3
+ rev: string;
4
+ data: string;
5
+ ctime: number;
6
+ mtime: number;
7
+ deleted?: boolean;
8
+ };
9
+ export type dmp_result = Array<[number, string]>;
10
+ export type diff_result = {
11
+ left: diff_result_leaf;
12
+ right: diff_result_leaf;
13
+ diff: dmp_result;
14
+ };
15
+ export type DIFF_CHECK_RESULT_AUTO = typeof CANCELLED | typeof AUTO_MERGED | typeof NOT_CONFLICTED | typeof MISSING_OR_ERROR;
16
+ export type diff_check_result = DIFF_CHECK_RESULT_AUTO | diff_result;
File without changes
@@ -0,0 +1,7 @@
1
+ export declare const CHeader = "h:";
2
+ export declare const PSCHeader = "ps:";
3
+ export declare const PSCHeaderEnd = "ps;";
4
+ export declare const ICHeader = "i:";
5
+ export declare const ICHeaderEnd = "i;";
6
+ export declare const ICHeaderLength: number;
7
+ export declare const ICXHeader = "ix:";
@@ -0,0 +1,16 @@
1
+ const CHeader = "h:";
2
+ const PSCHeader = "ps:";
3
+ const PSCHeaderEnd = "ps;";
4
+ const ICHeader = "i:";
5
+ const ICHeaderEnd = "i;";
6
+ const ICHeaderLength = ICHeader.length;
7
+ const ICXHeader = "ix:";
8
+ export {
9
+ CHeader,
10
+ ICHeader,
11
+ ICHeaderEnd,
12
+ ICHeaderLength,
13
+ ICXHeader,
14
+ PSCHeader,
15
+ PSCHeaderEnd
16
+ };
@@ -0,0 +1,72 @@
1
+ import type { FilePath, FilePathWithPrefix } from "./db.type.js";
2
+ export type UXStat = {
3
+ size: number;
4
+ mtime: number;
5
+ ctime: number;
6
+ type: "file" | "folder";
7
+ };
8
+ export type UXFileInfoStub = {
9
+ name: string;
10
+ path: FilePath | FilePathWithPrefix;
11
+ stat: UXStat;
12
+ deleted?: boolean;
13
+ isFolder?: false;
14
+ isInternal?: boolean;
15
+ };
16
+ export type UXFileInfo = UXFileInfoStub & {
17
+ body: Blob;
18
+ };
19
+ export type UXAbstractInfoStub = UXFileInfoStub | UXFolderInfo;
20
+ export type UXInternalFileInfoStub = {
21
+ name: string;
22
+ path: FilePath | FilePathWithPrefix;
23
+ deleted?: boolean;
24
+ isFolder?: false;
25
+ isInternal: true;
26
+ stat: undefined;
27
+ };
28
+ export type UXFolderInfo = {
29
+ name: string;
30
+ path: FilePath | FilePathWithPrefix;
31
+ deleted?: boolean;
32
+ isFolder: true;
33
+ children: UXFileInfoStub[];
34
+ parent: FilePath | FilePathWithPrefix | undefined;
35
+ };
36
+ export type UXDataWriteOptions = {
37
+ /**
38
+ * Time of creation, represented as a unix timestamp, in milliseconds.
39
+ * Omit this if you want to keep the default behaviour.
40
+ * @public
41
+ * */
42
+ ctime?: number;
43
+ /**
44
+ * Time of last modification, represented as a unix timestamp, in milliseconds.
45
+ * Omit this if you want to keep the default behaviour.
46
+ * @public
47
+ */
48
+ mtime?: number;
49
+ };
50
+ export type CacheData = string | ArrayBuffer;
51
+ export type FileEventType = "CREATE" | "DELETE" | "CHANGED" | "RENAME" | "INTERNAL";
52
+ export type FileEventArgs = {
53
+ file: UXFileInfoStub | UXInternalFileInfoStub;
54
+ cache?: CacheData;
55
+ oldPath?: string;
56
+ ctx?: unknown;
57
+ };
58
+ export type FileEventItem = {
59
+ type: FileEventType;
60
+ args: FileEventArgs;
61
+ key: string;
62
+ skipBatchWait?: boolean;
63
+ cancelled?: boolean;
64
+ batched?: boolean;
65
+ };
66
+ export interface FileWithFileStat extends Omit<UXStat, "type"> {
67
+ path: FilePath;
68
+ }
69
+ export interface FileWithStatAsProp {
70
+ path: FilePath;
71
+ stat: Omit<UXStat, "type">;
72
+ }
File without changes
@@ -0,0 +1,32 @@
1
+ import type { FilePath } from "./db.type.js";
2
+ export declare const PREFIXMD_LOGFILE = "livesync_log_";
3
+ export declare const PREFIXMD_LOGFILE_UC = "LIVESYNC_LOG_";
4
+ export declare const FlagFilesOriginal: {
5
+ readonly SUSPEND_ALL: FilePath;
6
+ readonly REBUILD_ALL: FilePath;
7
+ readonly FETCH_ALL: FilePath;
8
+ };
9
+ export declare const FlagFilesHumanReadable: {
10
+ readonly REBUILD_ALL: FilePath;
11
+ readonly FETCH_ALL: FilePath;
12
+ };
13
+ /**
14
+ * @deprecated Use `FlagFilesOriginal.SUSPEND_ALL` instead.
15
+ */
16
+ export declare const FLAGMD_REDFLAG: FilePath;
17
+ /**
18
+ * @deprecated Use `FlagFilesHumanReadable.REBUILD_ALL` instead.
19
+ */
20
+ export declare const FLAGMD_REDFLAG2: FilePath;
21
+ /**
22
+ * @deprecated Use `FlagFilesHumanReadable.FETCH_ALL` instead.
23
+ */
24
+ export declare const FLAGMD_REDFLAG2_HR: FilePath;
25
+ /**
26
+ * @deprecated Use `FlagFilesOriginal.FETCH_ALL` instead.
27
+ */
28
+ export declare const FLAGMD_REDFLAG3: FilePath;
29
+ /**
30
+ * @deprecated Use `FlagFilesHumanReadable.FETCH_ALL` instead.
31
+ */
32
+ export declare const FLAGMD_REDFLAG3_HR: FilePath;
@@ -0,0 +1,27 @@
1
+ const PREFIXMD_LOGFILE = "livesync_log_";
2
+ const PREFIXMD_LOGFILE_UC = "LIVESYNC_LOG_";
3
+ const FlagFilesOriginal = {
4
+ SUSPEND_ALL: "redflag.md",
5
+ REBUILD_ALL: "redflag2.md",
6
+ FETCH_ALL: "redflag3.md"
7
+ };
8
+ const FlagFilesHumanReadable = {
9
+ REBUILD_ALL: "flag_rebuild.md",
10
+ FETCH_ALL: "flag_fetch.md"
11
+ };
12
+ const FLAGMD_REDFLAG = FlagFilesOriginal.SUSPEND_ALL;
13
+ const FLAGMD_REDFLAG2 = FlagFilesOriginal.REBUILD_ALL;
14
+ const FLAGMD_REDFLAG2_HR = FlagFilesHumanReadable.REBUILD_ALL;
15
+ const FLAGMD_REDFLAG3 = FlagFilesOriginal.FETCH_ALL;
16
+ const FLAGMD_REDFLAG3_HR = FlagFilesHumanReadable.FETCH_ALL;
17
+ export {
18
+ FLAGMD_REDFLAG,
19
+ FLAGMD_REDFLAG2,
20
+ FLAGMD_REDFLAG2_HR,
21
+ FLAGMD_REDFLAG3,
22
+ FLAGMD_REDFLAG3_HR,
23
+ FlagFilesHumanReadable,
24
+ FlagFilesOriginal,
25
+ PREFIXMD_LOGFILE,
26
+ PREFIXMD_LOGFILE_UC
27
+ };
@@ -0,0 +1,49 @@
1
+ export declare const SETTING_VERSION_INITIAL = 0;
2
+ export declare const SETTING_VERSION_SUPPORT_CASE_INSENSITIVE = 10;
3
+ export declare const CURRENT_SETTING_VERSION = 10;
4
+ export declare const RemoteTypes: {
5
+ readonly REMOTE_COUCHDB: "";
6
+ readonly REMOTE_MINIO: "MINIO";
7
+ readonly REMOTE_P2P: "ONLY_P2P";
8
+ };
9
+ export declare const REMOTE_COUCHDB: "";
10
+ export declare const REMOTE_MINIO: "MINIO";
11
+ export declare const REMOTE_P2P: "ONLY_P2P";
12
+ export declare const E2EEAlgorithmNames: {
13
+ readonly "": "V1: Legacy";
14
+ readonly v2: "V2: AES-256-GCM With HKDF";
15
+ readonly forceV1: "Force-V1: Force Legacy (Not recommended)";
16
+ };
17
+ export declare const E2EEAlgorithms: {
18
+ readonly V1: "";
19
+ readonly V2: "v2";
20
+ readonly ForceV1: "forceV1";
21
+ };
22
+ export declare const HashAlgorithms: {
23
+ readonly XXHASH32: "xxhash32";
24
+ readonly XXHASH64: "xxhash64";
25
+ readonly MIXED_PUREJS: "mixed-purejs";
26
+ readonly SHA1: "sha1";
27
+ readonly LEGACY: "";
28
+ };
29
+ export declare const ChunkAlgorithmNames: {
30
+ readonly v1: "V1: Legacy";
31
+ readonly v2: "V2: Simple (Default)";
32
+ readonly "v2-segmenter": "V2.5: Lexical chunks";
33
+ readonly "v3-rabin-karp": "V3: Fine deduplication";
34
+ };
35
+ export declare const ChunkAlgorithms: {
36
+ readonly V1: "v1";
37
+ readonly V2: "v2";
38
+ readonly V2Segmenter: "v2-segmenter";
39
+ readonly RabinKarp: "v3-rabin-karp";
40
+ };
41
+ export declare const MODE_SELECTIVE = 0;
42
+ export declare const MODE_AUTOMATIC = 1;
43
+ export declare const MODE_PAUSED = 2;
44
+ export declare const MODE_SHINY = 3;
45
+ export declare const NetworkWarningStyles: {
46
+ readonly BANNER: "";
47
+ readonly ICON: "icon";
48
+ readonly HIDDEN: "hidden";
49
+ };
@@ -0,0 +1,3 @@
1
+ import { type ObsidianLiveSyncSettings, type P2PSyncSetting } from "./setting.type.js";
2
+ export declare const P2P_DEFAULT_SETTINGS: P2PSyncSetting;
3
+ export declare const DEFAULT_SETTINGS: ObsidianLiveSyncSettings;