@vrtmrz/livesync-commonlib 0.1.0-rc.0 → 0.1.0-rc.10

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 (148) hide show
  1. package/README.md +101 -17
  2. package/dist/API/DirectFileManipulatorV2.d.ts +3 -0
  3. package/dist/common/configForDoc.d.ts +1 -0
  4. package/dist/common/configForDoc.js +24 -7
  5. package/dist/common/models/setting.const.defaults.d.ts +19 -0
  6. package/dist/common/models/setting.const.defaults.js +21 -2
  7. package/dist/common/models/setting.const.preferred.js +1 -2
  8. package/dist/common/models/setting.lifecycle.d.ts +33 -0
  9. package/dist/common/models/setting.lifecycle.js +121 -0
  10. package/dist/common/models/setting.type.d.ts +10 -4
  11. package/dist/common/models/shared.definition.configNames.js +3 -3
  12. package/dist/common/models/tweak.definition.d.ts +1 -1
  13. package/dist/common/models/tweak.definition.js +1 -6
  14. package/dist/common/settingConstants.d.ts +3 -2
  15. package/dist/common/settingConstants.js +6 -6
  16. package/dist/common/types.d.ts +4 -2
  17. package/dist/common/types.js +16 -1
  18. package/dist/context.d.ts +3 -1
  19. package/dist/context.js +4 -0
  20. package/dist/interfaces/Confirm.d.ts +10 -2
  21. package/dist/interfaces/DatabaseFileAccess.d.ts +8 -0
  22. package/dist/interfaces/DatabaseRebuilder.d.ts +12 -2
  23. package/dist/interfaces/FileReflectionProvenance.d.ts +32 -0
  24. package/dist/interfaces/FileReflectionProvenance.js +25 -0
  25. package/dist/managers/ConflictManager.js +16 -7
  26. package/dist/managers/EntryManager/EntryManager.d.ts +1 -0
  27. package/dist/managers/EntryManager/EntryManager.js +5 -1
  28. package/dist/managers/EntryManager/EntryManagerImpls.d.ts +1 -0
  29. package/dist/managers/EntryManager/EntryManagerImpls.js +29 -1
  30. package/dist/platform/node/index.d.ts +1 -0
  31. package/dist/platform/node/index.js +4 -0
  32. package/dist/platform/node/standardIo.d.ts +24 -0
  33. package/dist/platform/node/standardIo.js +39 -0
  34. package/dist/platform/node/storage.d.ts +10 -1
  35. package/dist/platform/node/storage.js +86 -25
  36. package/dist/platform/standardIo.d.ts +19 -0
  37. package/dist/platform/standardIo.js +0 -0
  38. package/dist/pouchdb/LiveSyncLocalDB.d.ts +1 -0
  39. package/dist/pouchdb/LiveSyncLocalDB.js +3 -0
  40. package/dist/remoteConfigurations.d.ts +9 -0
  41. package/dist/remoteConfigurations.js +14 -0
  42. package/dist/replication/LiveSyncAbstractReplicator.d.ts +3 -3
  43. package/dist/replication/couchdb/LiveSyncReplicator.d.ts +0 -1
  44. package/dist/replication/couchdb/LiveSyncReplicator.js +0 -3
  45. package/dist/replication/journal/LiveSyncJournalReplicator.d.ts +0 -1
  46. package/dist/replication/journal/LiveSyncJournalReplicator.js +0 -3
  47. package/dist/replication/trystero/LiveSyncTrysteroReplicator.d.ts +5 -3
  48. package/dist/replication/trystero/LiveSyncTrysteroReplicator.js +42 -30
  49. package/dist/replication/trystero/P2PReplicatorCore.d.ts +2 -6
  50. package/dist/replication/trystero/P2PReplicatorCore.js +16 -86
  51. package/dist/replication/trystero/TrysteroReplicator.d.ts +2 -1
  52. package/dist/replication/trystero/TrysteroReplicator.js +10 -4
  53. package/dist/replication/trystero/TrysteroReplicatorP2PServer.d.ts +4 -5
  54. package/dist/replication/trystero/TrysteroReplicatorP2PServer.js +22 -30
  55. package/dist/replication/trystero/UseP2PReplicatorResult.d.ts +10 -2
  56. package/dist/replication/trystero/addP2PEventHandlers.d.ts +4 -2
  57. package/dist/replication/trystero/addP2PEventHandlers.js +9 -10
  58. package/dist/replication/trystero/types.d.ts +2 -0
  59. package/dist/replication/trystero/useP2PReplicatorCommands.d.ts +1 -1
  60. package/dist/replication/trystero/useP2PReplicatorCommands.js +3 -1
  61. package/dist/replication/trystero/useP2PReplicatorFeature.js +25 -15
  62. package/dist/rpc/RpcRoom.d.ts +1 -1
  63. package/dist/rpc/RpcRoom.js +22 -16
  64. package/dist/rpc/transports/TrysteroTransport.d.ts +2 -0
  65. package/dist/rpc/transports/TrysteroTransport.js +24 -17
  66. package/dist/rpc/transports/trysteroRoomEvents.d.ts +14 -0
  67. package/dist/rpc/transports/trysteroRoomEvents.js +34 -0
  68. package/dist/serviceFeatures/checkRemoteSize.d.ts +5 -3
  69. package/dist/serviceFeatures/checkRemoteSize.js +51 -11
  70. package/dist/serviceFeatures/remoteConfig.d.ts +37 -1
  71. package/dist/serviceFeatures/remoteConfig.js +90 -0
  72. package/dist/serviceModules/Rebuilder.d.ts +3 -6
  73. package/dist/serviceModules/Rebuilder.js +31 -22
  74. package/dist/serviceModules/ServiceDatabaseFileAccessBase.d.ts +5 -0
  75. package/dist/serviceModules/ServiceDatabaseFileAccessBase.js +69 -13
  76. package/dist/serviceModules/ServiceFileHandlerBase.d.ts +20 -0
  77. package/dist/serviceModules/ServiceFileHandlerBase.js +224 -40
  78. package/dist/services/BrowserServices.d.ts +2 -0
  79. package/dist/services/BrowserServices.js +4 -1
  80. package/dist/services/HeadlessServices.d.ts +2 -0
  81. package/dist/services/HeadlessServices.js +2 -1
  82. package/dist/services/base/CommonlibMessages.d.ts +318 -0
  83. package/dist/services/base/CommonlibMessages.js +313 -0
  84. package/dist/services/base/IService.d.ts +13 -6
  85. package/dist/services/base/KeyValueDBService.d.ts +1 -1
  86. package/dist/services/base/KeyValueDBService.js +3 -1
  87. package/dist/services/base/MessageTranslator.d.ts +5 -2
  88. package/dist/services/base/MessageTranslator.js +21 -0
  89. package/dist/services/base/ReplicationService.d.ts +4 -2
  90. package/dist/services/base/ReplicationService.js +11 -16
  91. package/dist/services/base/ServiceBase.d.ts +1 -1
  92. package/dist/services/base/ServiceBase.js +2 -4
  93. package/dist/services/base/SettingService.d.ts +17 -9
  94. package/dist/services/base/SettingService.js +38 -19
  95. package/dist/services/implements/headless/HeadlessAPIService.d.ts +3 -3
  96. package/dist/services/implements/headless/HeadlessAPIService.js +2 -2
  97. package/dist/services/implements/injectable/InjectableTweakValueService.d.ts +3 -3
  98. package/dist/settings.d.ts +10 -0
  99. package/dist/settings.js +32 -0
  100. package/dist/worker/bgWorker.js +1 -1
  101. package/docs/conflict-resolution.md +153 -0
  102. package/docs/development.md +108 -8
  103. package/docs/p2p-transport-lifecycle.md +62 -0
  104. package/docs/platform-standard-io.md +44 -0
  105. package/docs/platform-storage.md +4 -0
  106. package/docs/proven-in-use.md +65 -0
  107. package/docs/releasing.md +26 -6
  108. package/docs/remote-configurations.md +63 -0
  109. package/docs/settings-lifecycle.md +85 -0
  110. package/package.json +17 -27
  111. package/dist/common/i18n.d.ts +0 -18
  112. package/dist/common/i18n.js +0 -7193
  113. package/dist/common/messages/combinedMessages.dev.d.ts +0 -7
  114. package/dist/common/messages/combinedMessages.dev.js +0 -44
  115. package/dist/common/messages/combinedMessages.prod.d.ts +0 -9264
  116. package/dist/common/messages/combinedMessages.prod.js +0 -9271
  117. package/dist/common/messages/de.d.ts +0 -297
  118. package/dist/common/messages/de.js +0 -7
  119. package/dist/common/messages/def.d.ts +0 -1119
  120. package/dist/common/messages/def.js +0 -7
  121. package/dist/common/messages/es.d.ts +0 -689
  122. package/dist/common/messages/es.js +0 -7
  123. package/dist/common/messages/fr.d.ts +0 -582
  124. package/dist/common/messages/fr.js +0 -7
  125. package/dist/common/messages/he.d.ts +0 -583
  126. package/dist/common/messages/he.js +0 -7
  127. package/dist/common/messages/ja.d.ts +0 -838
  128. package/dist/common/messages/ja.js +0 -7
  129. package/dist/common/messages/ko.d.ts +0 -800
  130. package/dist/common/messages/ko.js +0 -7
  131. package/dist/common/messages/ru.d.ts +0 -858
  132. package/dist/common/messages/ru.js +0 -7
  133. package/dist/common/messages/zh-tw.d.ts +0 -384
  134. package/dist/common/messages/zh-tw.js +0 -7
  135. package/dist/common/messages/zh.d.ts +0 -1093
  136. package/dist/common/messages/zh.js +0 -7
  137. package/dist/common/messagesJson/de.json +0 -295
  138. package/dist/common/messagesJson/en.json +0 -1117
  139. package/dist/common/messagesJson/es.json +0 -687
  140. package/dist/common/messagesJson/fr.json +0 -580
  141. package/dist/common/messagesJson/he.json +0 -581
  142. package/dist/common/messagesJson/ja.json +0 -836
  143. package/dist/common/messagesJson/ko.json +0 -798
  144. package/dist/common/messagesJson/ru.json +0 -856
  145. package/dist/common/messagesJson/zh-tw.json +0 -382
  146. package/dist/common/messagesJson/zh.json +0 -1091
  147. package/dist/common/rosetta.d.ts +0 -42
  148. package/dist/common/rosetta.js +0 -57
@@ -1,42 +0,0 @@
1
- /**
2
- # Rosetta stone
3
- - To localise messages to your language, please write a translation to this file and submit a PR.
4
- - Please order languages in alphabetic order, if you write multiple items.
5
-
6
- ## Notice to ensure that your favours are not wasted.
7
-
8
- If you plan to utilise machine translation engines to contribute translated resources,
9
- please ensure the engine's terms of service are compatible with our project's license.
10
- Your diligence in this matter helps maintain compliance and avoid potential licensing issues.
11
- Thank you for your consideration.
12
-
13
- Usually, our projects (Self-hosted LiveSync and its families) are licensed under MIT License.
14
- To see details, please refer to the LICENSES file on each repository.
15
-
16
- ## How to internationalise untranslated items?
17
- 1. Change the message literal to use `$msg`
18
- "Could not parse YAML" -> $msg('anyKey')
19
- 2. Create `ls-debug` folder under the `.obsidian` folder of your vault.
20
- 3. Run Self-hosted LiveSync in dev mode (npm run dev).
21
- 4. You will get the `missing-translation-YYYY-MM-DD.jsonl` under `ls-debug`. Please copy and paste inside `allMessages` and write the translations.
22
- 5. Send me the PR!
23
- */
24
- declare const LANG_DE = "de";
25
- declare const LANG_ES = "es";
26
- declare const LANG_FR = "fr";
27
- declare const LANG_HE = "he";
28
- declare const LANG_JA = "ja";
29
- declare const LANG_RU = "ru";
30
- declare const LANG_ZH = "zh";
31
- declare const LANG_KO = "ko";
32
- declare const LANG_ZH_TW = "zh-tw";
33
- declare const LANG_DEF = "def";
34
- export declare const SUPPORTED_I18N_LANGS: string[];
35
- export type I18N_LANGS = typeof LANG_DEF | typeof LANG_DE | typeof LANG_ES | typeof LANG_FR | typeof LANG_HE | typeof LANG_JA | typeof LANG_KO | typeof LANG_RU | typeof LANG_ZH | typeof LANG_ZH_TW | "";
36
- export type MESSAGE = {
37
- [key in I18N_LANGS]?: string;
38
- };
39
- import type { MessageKeys } from "./messages/combinedMessages.dev.js";
40
- export declare function expandKeywords<T extends Record<string, U>, U extends Record<string, string>>(message: T, lang: I18N_LANGS, recurseLimit?: number): T;
41
- export type AllMessageKeys = MessageKeys;
42
- export {};
@@ -1,57 +0,0 @@
1
- const LANG_DE = "de";
2
- const LANG_ES = "es";
3
- const LANG_FR = "fr";
4
- const LANG_HE = "he";
5
- const LANG_JA = "ja";
6
- const LANG_RU = "ru";
7
- const LANG_ZH = "zh";
8
- const LANG_KO = "ko";
9
- const LANG_ZH_TW = "zh-tw";
10
- const LANG_DEF = "def";
11
- const SUPPORTED_I18N_LANGS = [
12
- LANG_DEF,
13
- LANG_DE,
14
- LANG_ES,
15
- LANG_FR,
16
- LANG_HE,
17
- LANG_JA,
18
- LANG_KO,
19
- LANG_RU,
20
- LANG_ZH,
21
- LANG_ZH_TW
22
- ];
23
- import { Logger } from "./logger.js";
24
- function expandKeywords(message, lang, recurseLimit = 10) {
25
- if (recurseLimit <= 0) {
26
- Logger(
27
- `ExpandKeywords hit the recursion limit, returning the current state. but this is not expected. May recursive referenced.`
28
- );
29
- return message;
30
- }
31
- const keywordMap = /* @__PURE__ */ new Map();
32
- for (const [key, value] of Object.entries(message)) {
33
- const messageValue = value[lang];
34
- if (typeof messageValue !== "string") continue;
35
- const normalizedKey = key.startsWith("K.") ? key.substring("K.".length) : key;
36
- keywordMap.set(`%{${normalizedKey}}`, messageValue);
37
- }
38
- const ret = {
39
- ...message
40
- };
41
- let isChanged = false;
42
- for (const key of Object.keys(message)) {
43
- if (!(lang in ret[key])) continue;
44
- if (!ret[key][lang].includes("%{")) continue;
45
- const replaced = ret[key][lang].replace(/%\{[^}]+\}/g, (token) => keywordMap.get(token) ?? token);
46
- if (replaced !== ret[key][lang]) {
47
- ret[key][lang] = replaced;
48
- isChanged = true;
49
- }
50
- }
51
- if (isChanged) return expandKeywords(ret, lang, recurseLimit--);
52
- return ret;
53
- }
54
- export {
55
- SUPPORTED_I18N_LANGS,
56
- expandKeywords
57
- };