@vrtmrz/livesync-commonlib 0.1.0-rc.5 → 0.1.0-rc.7

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 (70) hide show
  1. package/README.md +11 -9
  2. package/dist/common/configForDoc.js +7 -2
  3. package/dist/common/models/setting.type.d.ts +2 -1
  4. package/dist/common/models/tweak.definition.d.ts +1 -1
  5. package/dist/common/settingConstants.d.ts +3 -2
  6. package/dist/common/settingConstants.js +2 -2
  7. package/dist/context.d.ts +2 -1
  8. package/dist/context.js +4 -0
  9. package/dist/platform/node/storage.d.ts +4 -0
  10. package/dist/platform/node/storage.js +86 -25
  11. package/dist/replication/LiveSyncAbstractReplicator.d.ts +2 -1
  12. package/dist/replication/trystero/addP2PEventHandlers.js +1 -4
  13. package/dist/replication/trystero/useP2PReplicatorFeature.js +24 -14
  14. package/dist/serviceModules/Rebuilder.js +8 -3
  15. package/dist/services/BrowserServices.d.ts +2 -0
  16. package/dist/services/BrowserServices.js +4 -1
  17. package/dist/services/HeadlessServices.d.ts +2 -0
  18. package/dist/services/HeadlessServices.js +2 -1
  19. package/dist/services/base/CommonlibMessages.d.ts +318 -0
  20. package/dist/services/base/CommonlibMessages.js +313 -0
  21. package/dist/services/base/MessageTranslator.d.ts +5 -2
  22. package/dist/services/base/MessageTranslator.js +21 -0
  23. package/dist/services/base/ServiceBase.d.ts +1 -1
  24. package/dist/services/base/ServiceBase.js +2 -4
  25. package/dist/services/base/SettingService.d.ts +3 -0
  26. package/dist/services/base/SettingService.js +3 -2
  27. package/docs/development.md +28 -15
  28. package/docs/p2p-transport-lifecycle.md +14 -4
  29. package/docs/platform-storage.md +2 -0
  30. package/docs/proven-in-use.md +18 -12
  31. package/docs/releasing.md +14 -0
  32. package/package.json +1 -26
  33. package/dist/common/i18n.d.ts +0 -18
  34. package/dist/common/i18n.js +0 -101
  35. package/dist/common/messages/combinedMessages.dev.d.ts +0 -7
  36. package/dist/common/messages/combinedMessages.dev.js +0 -44
  37. package/dist/common/messages/combinedMessages.prod.d.ts +0 -9276
  38. package/dist/common/messages/combinedMessages.prod.js +0 -9283
  39. package/dist/common/messages/de.d.ts +0 -297
  40. package/dist/common/messages/de.js +0 -7
  41. package/dist/common/messages/def.d.ts +0 -1123
  42. package/dist/common/messages/def.js +0 -7
  43. package/dist/common/messages/es.d.ts +0 -689
  44. package/dist/common/messages/es.js +0 -7
  45. package/dist/common/messages/fr.d.ts +0 -582
  46. package/dist/common/messages/fr.js +0 -7
  47. package/dist/common/messages/he.d.ts +0 -583
  48. package/dist/common/messages/he.js +0 -7
  49. package/dist/common/messages/ja.d.ts +0 -838
  50. package/dist/common/messages/ja.js +0 -7
  51. package/dist/common/messages/ko.d.ts +0 -800
  52. package/dist/common/messages/ko.js +0 -7
  53. package/dist/common/messages/ru.d.ts +0 -858
  54. package/dist/common/messages/ru.js +0 -7
  55. package/dist/common/messages/zh-tw.d.ts +0 -384
  56. package/dist/common/messages/zh-tw.js +0 -7
  57. package/dist/common/messages/zh.d.ts +0 -1093
  58. package/dist/common/messages/zh.js +0 -7
  59. package/dist/common/messagesJson/de.json +0 -295
  60. package/dist/common/messagesJson/en.json +0 -1121
  61. package/dist/common/messagesJson/es.json +0 -687
  62. package/dist/common/messagesJson/fr.json +0 -580
  63. package/dist/common/messagesJson/he.json +0 -581
  64. package/dist/common/messagesJson/ja.json +0 -836
  65. package/dist/common/messagesJson/ko.json +0 -798
  66. package/dist/common/messagesJson/ru.json +0 -856
  67. package/dist/common/messagesJson/zh-tw.json +0 -382
  68. package/dist/common/messagesJson/zh.json +0 -1091
  69. package/dist/common/rosetta.d.ts +0 -42
  70. 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
- };