@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,212 @@
1
+ import {
2
+ LOG_LEVEL_DEBUG,
3
+ LOG_LEVEL_INFO,
4
+ LOG_LEVEL_NOTICE,
5
+ LOG_LEVEL_URGENT,
6
+ LOG_LEVEL_VERBOSE
7
+ } from "octagonal-wheels/common/logger";
8
+ import { RESULT_NOT_FOUND, RESULT_TIMED_OUT } from "octagonal-wheels/common/const";
9
+ import {
10
+ ChunkTypes,
11
+ EntryTypes,
12
+ MILESTONE_DOCID,
13
+ NODEINFO_DOCID,
14
+ NoteTypes,
15
+ SYNCINFO_ID,
16
+ VERSIONING_DOCID
17
+ } from "./models/db.const.js";
18
+ import {
19
+ AUTO_MERGED,
20
+ CANCELLED,
21
+ LEAVE_TO_SUBSEQUENT,
22
+ MISSING_OR_ERROR,
23
+ NOT_CONFLICTED,
24
+ TIME_ARGUMENT_INFINITY
25
+ } from "./models/shared.const.symbols.js";
26
+ import {
27
+ IDPrefixes,
28
+ LEAF_WAIT_ONLY_REMOTE,
29
+ LEAF_WAIT_TIMEOUT,
30
+ LEAF_WAIT_TIMEOUT_SEQUENTIAL_REPLICATOR,
31
+ MAX_DOC_SIZE,
32
+ MAX_DOC_SIZE_BIN,
33
+ PREFIX_CHUNK,
34
+ PREFIX_ENCRYPTED_CHUNK,
35
+ PREFIX_OBFUSCATED,
36
+ RECENT_MODIFIED_DOCS_QTY,
37
+ REPLICATION_BUSY_TIMEOUT,
38
+ SALT_OF_ID,
39
+ SALT_OF_PASSPHRASE,
40
+ SEED_MURMURHASH,
41
+ VER
42
+ } from "./models/shared.const.behabiour.js";
43
+ import {
44
+ AutoAccepting
45
+ } from "./models/setting.type.js";
46
+ import {
47
+ ChunkAlgorithmNames,
48
+ ChunkAlgorithms,
49
+ CURRENT_SETTING_VERSION,
50
+ E2EEAlgorithmNames,
51
+ E2EEAlgorithms,
52
+ HashAlgorithms,
53
+ REMOTE_COUCHDB,
54
+ REMOTE_MINIO,
55
+ REMOTE_P2P,
56
+ RemoteTypes,
57
+ SETTING_VERSION_INITIAL,
58
+ SETTING_VERSION_SUPPORT_CASE_INSENSITIVE,
59
+ MODE_AUTOMATIC,
60
+ MODE_PAUSED,
61
+ MODE_SELECTIVE,
62
+ MODE_SHINY
63
+ } from "./models/setting.const.js";
64
+ import {
65
+ PREFERRED_BASE,
66
+ PREFERRED_JOURNAL_SYNC,
67
+ PREFERRED_SETTING_CLOUDANT,
68
+ PREFERRED_SETTING_SELF_HOSTED
69
+ } from "./models/setting.const.preferred.js";
70
+ import { P2P_DEFAULT_SETTINGS, DEFAULT_SETTINGS } from "./models/setting.const.defaults.js";
71
+ import { KeyIndexOfSettings } from "./models/setting.const.qr.js";
72
+ import { isMetaEntry } from "./models/db.definition.js";
73
+ import {
74
+ SETTING_KEY_P2P_DEVICE_NAME,
75
+ configURIBase,
76
+ configURIBaseQR,
77
+ SuffixDatabaseName,
78
+ ExtraSuffixIndexedDB
79
+ } from "./models/shared.const.js";
80
+ import {
81
+ configurationNames,
82
+ LEVEL_ADVANCED,
83
+ LEVEL_POWER_USER,
84
+ LEVEL_EDGE_CASE,
85
+ statusDisplay,
86
+ confName,
87
+ confDesc
88
+ } from "./models/shared.definition.configNames.js";
89
+ import {
90
+ ProtocolVersions,
91
+ DOCID_SYNC_PARAMETERS,
92
+ DOCID_JOURNAL_SYNC_PARAMETERS,
93
+ DEFAULT_SYNC_PARAMETERS
94
+ } from "./models/sync.definition.js";
95
+ import {
96
+ TweakValuesShouldMatchedTemplate,
97
+ IncompatibleChanges,
98
+ CompatibleButLossyChanges,
99
+ IncompatibleChangesInSpecificPattern,
100
+ TweakValuesRecommendedTemplate,
101
+ TweakValuesDefault,
102
+ TweakValuesTemplate,
103
+ DEVICE_ID_PREFERRED
104
+ } from "./models/tweak.definition.js";
105
+ import {
106
+ PREFIXMD_LOGFILE,
107
+ PREFIXMD_LOGFILE_UC,
108
+ FlagFilesOriginal,
109
+ FlagFilesHumanReadable,
110
+ FLAGMD_REDFLAG,
111
+ FLAGMD_REDFLAG2,
112
+ FLAGMD_REDFLAG2_HR,
113
+ FLAGMD_REDFLAG3,
114
+ FLAGMD_REDFLAG3_HR
115
+ } from "./models/redflag.const.js";
116
+ import { DatabaseConnectingStatuses } from "./models/shared.definition.js";
117
+ export {
118
+ AUTO_MERGED,
119
+ AutoAccepting,
120
+ CANCELLED,
121
+ CURRENT_SETTING_VERSION,
122
+ ChunkAlgorithmNames,
123
+ ChunkAlgorithms,
124
+ ChunkTypes,
125
+ CompatibleButLossyChanges,
126
+ DEFAULT_SETTINGS,
127
+ DEFAULT_SYNC_PARAMETERS,
128
+ DEVICE_ID_PREFERRED,
129
+ DOCID_JOURNAL_SYNC_PARAMETERS,
130
+ DOCID_SYNC_PARAMETERS,
131
+ DatabaseConnectingStatuses,
132
+ E2EEAlgorithmNames,
133
+ E2EEAlgorithms,
134
+ EntryTypes,
135
+ ExtraSuffixIndexedDB,
136
+ FLAGMD_REDFLAG,
137
+ FLAGMD_REDFLAG2,
138
+ FLAGMD_REDFLAG2_HR,
139
+ FLAGMD_REDFLAG3,
140
+ FLAGMD_REDFLAG3_HR,
141
+ FlagFilesHumanReadable,
142
+ FlagFilesOriginal,
143
+ HashAlgorithms,
144
+ IDPrefixes,
145
+ IncompatibleChanges,
146
+ IncompatibleChangesInSpecificPattern,
147
+ KeyIndexOfSettings,
148
+ LEAF_WAIT_ONLY_REMOTE,
149
+ LEAF_WAIT_TIMEOUT,
150
+ LEAF_WAIT_TIMEOUT_SEQUENTIAL_REPLICATOR,
151
+ LEAVE_TO_SUBSEQUENT,
152
+ LEVEL_ADVANCED,
153
+ LEVEL_EDGE_CASE,
154
+ LEVEL_POWER_USER,
155
+ LOG_LEVEL_DEBUG,
156
+ LOG_LEVEL_INFO,
157
+ LOG_LEVEL_NOTICE,
158
+ LOG_LEVEL_URGENT,
159
+ LOG_LEVEL_VERBOSE,
160
+ MAX_DOC_SIZE,
161
+ MAX_DOC_SIZE_BIN,
162
+ MILESTONE_DOCID,
163
+ MISSING_OR_ERROR,
164
+ MODE_AUTOMATIC,
165
+ MODE_PAUSED,
166
+ MODE_SELECTIVE,
167
+ MODE_SHINY,
168
+ NODEINFO_DOCID,
169
+ NOT_CONFLICTED,
170
+ NoteTypes,
171
+ P2P_DEFAULT_SETTINGS,
172
+ PREFERRED_BASE,
173
+ PREFERRED_JOURNAL_SYNC,
174
+ PREFERRED_SETTING_CLOUDANT,
175
+ PREFERRED_SETTING_SELF_HOSTED,
176
+ PREFIXMD_LOGFILE,
177
+ PREFIXMD_LOGFILE_UC,
178
+ PREFIX_CHUNK,
179
+ PREFIX_ENCRYPTED_CHUNK,
180
+ PREFIX_OBFUSCATED,
181
+ ProtocolVersions,
182
+ RECENT_MODIFIED_DOCS_QTY,
183
+ REMOTE_COUCHDB,
184
+ REMOTE_MINIO,
185
+ REMOTE_P2P,
186
+ REPLICATION_BUSY_TIMEOUT,
187
+ RESULT_NOT_FOUND,
188
+ RESULT_TIMED_OUT,
189
+ RemoteTypes,
190
+ SALT_OF_ID,
191
+ SALT_OF_PASSPHRASE,
192
+ SEED_MURMURHASH,
193
+ SETTING_KEY_P2P_DEVICE_NAME,
194
+ SETTING_VERSION_INITIAL,
195
+ SETTING_VERSION_SUPPORT_CASE_INSENSITIVE,
196
+ SYNCINFO_ID,
197
+ SuffixDatabaseName,
198
+ TIME_ARGUMENT_INFINITY,
199
+ TweakValuesDefault,
200
+ TweakValuesRecommendedTemplate,
201
+ TweakValuesShouldMatchedTemplate,
202
+ TweakValuesTemplate,
203
+ VER,
204
+ VERSIONING_DOCID,
205
+ confDesc,
206
+ confName,
207
+ configURIBase,
208
+ configURIBaseQR,
209
+ configurationNames,
210
+ isMetaEntry,
211
+ statusDisplay
212
+ };
@@ -0,0 +1,129 @@
1
+ import { type AnyEntry, type DatabaseEntry, type EntryLeaf, type SyncInfo, type LoadedEntry, type SavingEntry, type NewEntry, type PlainEntry, type CustomRegExpSource, type ParsedCustomRegExp, type CustomRegExpSourceList, type ObsidianLiveSyncSettings, type RemoteDBSettings, type P2PConnectionInfo, type BucketSyncSetting, type CouchDBConnection, type EncryptionSettings } from "./types.js";
2
+ import { replaceAll, replaceAllPairs } from "octagonal-wheels/string";
3
+ export { replaceAll, replaceAllPairs };
4
+ import { concatUInt8Array } from "octagonal-wheels/binary";
5
+ export { concatUInt8Array };
6
+ import { delay, fireAndForget } from "octagonal-wheels/promises";
7
+ export { delay, fireAndForget };
8
+ import { arrayToChunkedArray, unique } from "octagonal-wheels/collection";
9
+ export { arrayToChunkedArray, unique };
10
+ import { extractObject, isObjectDifferent } from "octagonal-wheels/object";
11
+ export { extractObject, isObjectDifferent };
12
+ import { sendValue, sendSignal, waitForSignal, waitForValue } from "octagonal-wheels/messagepassing/signal";
13
+ export { sendValue, sendSignal, waitForSignal, waitForValue };
14
+ import { throttle } from "octagonal-wheels/function";
15
+ export { throttle };
16
+ import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase";
17
+ import { BASE_IS_NEW, EVEN, TARGET_IS_NEW } from "./models/shared.const.symbols.js";
18
+ export type { SimpleStore };
19
+ export { sizeToHumanReadable } from "octagonal-wheels/number";
20
+ export declare function resolveWithIgnoreKnownError<T>(p: Promise<T>, def: T): Promise<T>;
21
+ export declare const Parallels: (ps?: Set<Promise<unknown>>) => {
22
+ add: (p: Promise<unknown>) => Set<Promise<unknown>>;
23
+ wait: (limit: number) => Promise<unknown>;
24
+ all: () => Promise<unknown[]>;
25
+ };
26
+ export declare function allSettledWithConcurrencyLimit<T>(processes: Promise<T>[], limit: number): Promise<void>;
27
+ export declare function getDocData(doc: string | string[]): string;
28
+ export declare function getDocDataAsArray(doc: string | string[]): string[];
29
+ export declare function getDocDataAsArrayBuffer(doc: string | string[] | ArrayBuffer): Uint8Array<ArrayBuffer>;
30
+ export declare function isTextBlob(blob: Blob): boolean;
31
+ export declare function createTextBlob(data: string | string[]): Blob;
32
+ export declare function createBinaryBlob(data: Uint8Array<ArrayBuffer> | ArrayBuffer): Blob;
33
+ export declare function createBlob(data: string | string[] | Uint8Array<ArrayBuffer> | ArrayBuffer | Blob): Blob;
34
+ export declare function isTextDocument(doc: LoadedEntry): boolean;
35
+ export declare function readAsBlob(doc: LoadedEntry): Blob;
36
+ export declare function readContent(doc: LoadedEntry): string | ArrayBuffer;
37
+ export declare function isDocContentSame(docA: string | string[] | Blob | ArrayBuffer, docB: string | string[] | Blob | ArrayBuffer): Promise<boolean>;
38
+ export declare function isObfuscatedEntry(doc: DatabaseEntry): doc is AnyEntry;
39
+ export declare function isEncryptedChunkEntry(doc: DatabaseEntry): doc is EntryLeaf;
40
+ export declare function isSyncInfoEntry(doc: DatabaseEntry): doc is SyncInfo;
41
+ export declare function memorizeFuncWithLRUCache<T, U>(func: (key: T) => U): (key: T) => U;
42
+ export declare function memorizeFuncWithLRUCacheMulti<T extends unknown[], U>(func: (...keys: T) => U): (keys: T) => U;
43
+ /**
44
+ *
45
+ * @param exclusion return only not exclusion
46
+ * @returns
47
+ *
48
+ * ["something",false,"aaaaa"].filter(onlyNot(false)) => yields ["something","aaaaaa"]. but, as string[].
49
+ */
50
+ export declare function onlyNot<A, B>(exclusion: B): (item: A | B) => item is Exclude<A, B>;
51
+ /**
52
+ * Run task with keeping minimum interval
53
+ * @param key waiting key
54
+ * @param interval interval (ms)
55
+ * @param task task to perform.
56
+ * @returns result of task
57
+ * @remarks This function is not designed to be concurrent.
58
+ */
59
+ export declare function runWithInterval<T>(key: string, interval: number, task: () => Promise<T>): Promise<T>;
60
+ /**
61
+ * Run task with keeping minimum interval on start
62
+ * @param key waiting key
63
+ * @param interval interval (ms)
64
+ * @param task task to perform.
65
+ * @returns result of task
66
+ * @remarks This function is not designed to be concurrent.
67
+ */
68
+ export declare function runWithStartInterval<T>(key: string, interval: number, task: () => Promise<T>): Promise<T>;
69
+ export declare const globalConcurrencyController: import("octagonal-wheels/concurrency/semaphore_v2").SemaphoreObject;
70
+ export declare function determineTypeFromBlob(data: Blob): "newnote" | "plain";
71
+ export declare function determineType(path: string, data: string | string[] | Uint8Array | ArrayBuffer | Blob): "newnote" | "plain";
72
+ export declare function isAnyNote(doc: DatabaseEntry): doc is NewEntry | PlainEntry;
73
+ export declare function isLoadedEntry(doc: DatabaseEntry): doc is LoadedEntry;
74
+ export declare function isDeletedEntry(doc: LoadedEntry): boolean;
75
+ export declare function createSavingEntryFromLoadedEntry(doc: LoadedEntry): SavingEntry;
76
+ export declare function setAllItems<T>(set: Set<T>, items: T[]): Set<T>;
77
+ export declare function escapeNewLineFromString(str: string): string;
78
+ export declare function unescapeNewLineFromString(str: string): string;
79
+ export declare function escapeMarkdownValue<T>(value: T): T;
80
+ export declare function timeDeltaToHumanReadable(delta: number): string;
81
+ export declare function wrapException<T>(func: () => Promise<Awaited<T>>): Promise<Awaited<T> | Error>;
82
+ export declare function toRanges(sorted: number[]): string;
83
+ export declare function isDirty(key: string, value: unknown): boolean;
84
+ export declare function tryParseJSON<T extends object>(str: string, fallbackValue?: T): T | undefined;
85
+ export { mergeObject, applyPatch, generatePatchObj, flattenObject, isObjectMargeApplicable, isSensibleMargeApplicable, } from "./utils.patch.js";
86
+ export declare function parseHeaderValues(strHeader: string): Record<string, string>;
87
+ /***
88
+ * Parse custom regular expression
89
+ * @param regexp
90
+ * @returns [negate: boolean, regexp: string]
91
+ * @example `!!foo` => [true, "foo"]
92
+ * @example `foo` => [false, "foo"]
93
+ */
94
+ export declare function parseCustomRegExp(regexp: CustomRegExpSource): ParsedCustomRegExp;
95
+ export declare function matchRegExp(regexp: CustomRegExpSource, target: string): boolean;
96
+ export declare function isValidRegExp(regexp: CustomRegExpSource): boolean;
97
+ export declare function isInvertedRegExp(regexp: CustomRegExpSource): boolean;
98
+ export declare function constructCustomRegExpList<D extends string>(items: CustomRegExpSource[], delimiter: D): CustomRegExpSourceList<D>;
99
+ export declare function splitCustomRegExpList<D extends string>(list: CustomRegExpSourceList<D>, delimiter: D): CustomRegExpSource[];
100
+ export declare class CustomRegExp {
101
+ regexp: RegExp;
102
+ negate: boolean;
103
+ pattern: string;
104
+ constructor(regexp: CustomRegExpSource, flags?: string);
105
+ test(str: string): boolean;
106
+ }
107
+ type RegExpSettingKey = "syncOnlyRegEx" | "syncIgnoreRegEx" | "syncInternalFilesIgnorePatterns" | "syncInternalFilesTargetPatterns" | "syncInternalFileOverwritePatterns";
108
+ export declare function getFileRegExp(settings: ObsidianLiveSyncSettings | RemoteDBSettings, key: RegExpSettingKey): CustomRegExp[];
109
+ /**
110
+ * Copies properties from the source object to the target object only if they exist in the target.
111
+ * @param source The object to copy properties from.
112
+ * @param target The object to copy properties to.
113
+ */
114
+ export declare function copyTo<T extends object, U extends T>(source: U, target: T): void;
115
+ export declare function pickBucketSyncSettings(setting: ObsidianLiveSyncSettings): BucketSyncSetting;
116
+ export declare function pickCouchDBSyncSettings(setting: ObsidianLiveSyncSettings): CouchDBConnection;
117
+ export declare function pickEncryptionSettings(setting: ObsidianLiveSyncSettings | EncryptionSettings): EncryptionSettings;
118
+ export declare function pickP2PSyncSettings(setting: Partial<ObsidianLiveSyncSettings> & P2PConnectionInfo): P2PConnectionInfo;
119
+ export declare function wrapByDefault<T, U>(func: () => T, onError: (err: Error) => U): T | U;
120
+ export declare function compareMTime(baseMTime: number, targetMTime: number): typeof BASE_IS_NEW | typeof TARGET_IS_NEW | typeof EVEN;
121
+ export declare function displayRev(rev: string): string;
122
+ /**
123
+ * Generate a random P2P Room ID in the format `123-456-789-abc`.
124
+ */
125
+ export declare function generateP2PRoomId(): string;
126
+ /**
127
+ * Extract the stable suffix (last segment) from a Room ID.
128
+ */
129
+ export declare function extractP2PRoomSuffix(roomId: string): string;
@@ -0,0 +1,11 @@
1
+ export declare function isErrorOf(ex: unknown, statusCode: number): boolean;
2
+ /**
3
+ * Checks if the error is effectively a 404 error from CouchDB or PouchDB.
4
+ * @param ex some error object, expected to be from CouchDB or PouchDB.
5
+ * @returns true if the error is a 404 not found error, false otherwise.
6
+ * @throws if the input is not an object or does not have a numeric "status" property.
7
+ */
8
+ export declare function isNotFoundError(ex: unknown): boolean;
9
+ export declare function isConflictError(ex: unknown): boolean;
10
+ export declare function isUnauthorizedError(ex: unknown): boolean;
11
+ export declare function tryGetFilePath(entry: unknown): string | undefined;
@@ -0,0 +1,35 @@
1
+ function isErrorOf(ex, statusCode) {
2
+ if (!ex || typeof ex !== "object") {
3
+ throw new Error(`Expected an object error, but got ${typeof ex}`);
4
+ }
5
+ if ("status" in ex && typeof ex.status === "number" && ex.status == statusCode) {
6
+ return true;
7
+ }
8
+ return false;
9
+ }
10
+ function isNotFoundError(ex) {
11
+ return isErrorOf(ex, 404);
12
+ }
13
+ function isConflictError(ex) {
14
+ return isErrorOf(ex, 409);
15
+ }
16
+ function isUnauthorizedError(ex) {
17
+ return isErrorOf(ex, 401);
18
+ }
19
+ function isEntryWithPath(entry) {
20
+ if (!entry || typeof entry !== "object") return false;
21
+ return "path" in entry && typeof entry.path === "string";
22
+ }
23
+ function tryGetFilePath(entry) {
24
+ if (isEntryWithPath(entry)) {
25
+ return entry.path;
26
+ }
27
+ return void 0;
28
+ }
29
+ export {
30
+ isConflictError,
31
+ isErrorOf,
32
+ isNotFoundError,
33
+ isUnauthorizedError,
34
+ tryGetFilePath
35
+ };