@tinyrack/dotweave 0.42.13 → 0.42.21

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 (234) hide show
  1. package/README.md +6 -2
  2. package/dist/application.d.ts +0 -3
  3. package/dist/application.d.ts.map +1 -1
  4. package/dist/application.js +23 -22
  5. package/dist/application.js.map +1 -1
  6. package/dist/cli/autocomplete.d.ts +5 -4
  7. package/dist/cli/autocomplete.d.ts.map +1 -1
  8. package/dist/cli/autocomplete.js +33 -28
  9. package/dist/cli/autocomplete.js.map +1 -1
  10. package/dist/cli/cd.d.ts +2 -2
  11. package/dist/cli/cd.d.ts.map +1 -1
  12. package/dist/cli/cd.js +1 -4
  13. package/dist/cli/cd.js.map +1 -1
  14. package/dist/cli/doctor.d.ts +2 -2
  15. package/dist/cli/doctor.d.ts.map +1 -1
  16. package/dist/cli/doctor.js +19 -28
  17. package/dist/cli/doctor.js.map +1 -1
  18. package/dist/cli/index.d.ts +1 -3
  19. package/dist/cli/index.d.ts.map +1 -1
  20. package/dist/cli/index.js +5 -5
  21. package/dist/cli/index.js.map +1 -1
  22. package/dist/cli/init.d.ts +2 -2
  23. package/dist/cli/init.d.ts.map +1 -1
  24. package/dist/cli/init.js +9 -15
  25. package/dist/cli/init.js.map +1 -1
  26. package/dist/cli/profile/add.d.ts +4 -0
  27. package/dist/cli/profile/add.d.ts.map +1 -0
  28. package/dist/cli/profile/add.js +29 -0
  29. package/dist/cli/profile/add.js.map +1 -0
  30. package/dist/cli/profile/index.d.ts +1 -1
  31. package/dist/cli/profile/index.d.ts.map +1 -1
  32. package/dist/cli/profile/index.js +5 -1
  33. package/dist/cli/profile/index.js.map +1 -1
  34. package/dist/cli/profile/list.d.ts +2 -2
  35. package/dist/cli/profile/list.d.ts.map +1 -1
  36. package/dist/cli/profile/list.js +8 -26
  37. package/dist/cli/profile/list.js.map +1 -1
  38. package/dist/cli/profile/remove.d.ts +4 -0
  39. package/dist/cli/profile/remove.d.ts.map +1 -0
  40. package/dist/cli/profile/remove.js +29 -0
  41. package/dist/cli/profile/remove.js.map +1 -0
  42. package/dist/cli/profile/use.d.ts +2 -2
  43. package/dist/cli/profile/use.d.ts.map +1 -1
  44. package/dist/cli/profile/use.js +5 -14
  45. package/dist/cli/profile/use.js.map +1 -1
  46. package/dist/cli/pull.d.ts +2 -2
  47. package/dist/cli/pull.d.ts.map +1 -1
  48. package/dist/cli/pull.js +22 -41
  49. package/dist/cli/pull.js.map +1 -1
  50. package/dist/cli/push.d.ts +2 -2
  51. package/dist/cli/push.d.ts.map +1 -1
  52. package/dist/cli/push.js +17 -23
  53. package/dist/cli/push.js.map +1 -1
  54. package/dist/cli/root-commands.d.ts +9 -10
  55. package/dist/cli/root-commands.d.ts.map +1 -1
  56. package/dist/cli/root-commands.js +0 -4
  57. package/dist/cli/root-commands.js.map +1 -1
  58. package/dist/cli/shared-flags.d.ts +9 -0
  59. package/dist/cli/shared-flags.d.ts.map +1 -0
  60. package/dist/cli/shared-flags.js +8 -0
  61. package/dist/cli/shared-flags.js.map +1 -0
  62. package/dist/cli/status.d.ts +2 -2
  63. package/dist/cli/status.d.ts.map +1 -1
  64. package/dist/cli/status.js +26 -55
  65. package/dist/cli/status.js.map +1 -1
  66. package/dist/cli/track.d.ts +2 -2
  67. package/dist/cli/track.d.ts.map +1 -1
  68. package/dist/cli/track.js +19 -35
  69. package/dist/cli/track.js.map +1 -1
  70. package/dist/cli/untrack.d.ts +2 -2
  71. package/dist/cli/untrack.d.ts.map +1 -1
  72. package/dist/cli/untrack.js +5 -14
  73. package/dist/cli/untrack.js.map +1 -1
  74. package/dist/config/constants.d.ts +2 -2
  75. package/dist/config/constants.d.ts.map +1 -1
  76. package/dist/config/constants.js +2 -2
  77. package/dist/config/constants.js.map +1 -1
  78. package/dist/config/global-config.d.ts +3 -3
  79. package/dist/config/global-config.d.ts.map +1 -1
  80. package/dist/config/global-config.js +7 -8
  81. package/dist/config/global-config.js.map +1 -1
  82. package/dist/config/identity-file.d.ts +0 -7
  83. package/dist/config/identity-file.d.ts.map +1 -1
  84. package/dist/config/identity-file.js +2 -44
  85. package/dist/config/identity-file.js.map +1 -1
  86. package/dist/config/migration.d.ts +6 -0
  87. package/dist/config/migration.d.ts.map +1 -1
  88. package/dist/config/migration.js +35 -13
  89. package/dist/config/migration.js.map +1 -1
  90. package/dist/config/runtime-env.d.ts.map +1 -1
  91. package/dist/config/runtime-env.js +2 -7
  92. package/dist/config/runtime-env.js.map +1 -1
  93. package/dist/config/{sync-entry.d.ts → sync-queries.d.ts} +5 -3
  94. package/dist/config/sync-queries.d.ts.map +1 -0
  95. package/dist/config/{sync-entry.js → sync-queries.js} +15 -6
  96. package/dist/config/sync-queries.js.map +1 -0
  97. package/dist/config/sync-schema.d.ts +13 -8
  98. package/dist/config/sync-schema.d.ts.map +1 -1
  99. package/dist/config/sync-schema.js +138 -18
  100. package/dist/config/sync-schema.js.map +1 -1
  101. package/dist/config/xdg.d.ts.map +1 -1
  102. package/dist/config/xdg.js +15 -34
  103. package/dist/config/xdg.js.map +1 -1
  104. package/dist/lib/error.js +1 -1
  105. package/dist/lib/error.js.map +1 -1
  106. package/dist/lib/git.d.ts +3 -4
  107. package/dist/lib/git.d.ts.map +1 -1
  108. package/dist/lib/git.js +7 -48
  109. package/dist/lib/git.js.map +1 -1
  110. package/dist/lib/jsonc.d.ts +1 -1
  111. package/dist/lib/jsonc.d.ts.map +1 -1
  112. package/dist/lib/jsonc.js +1 -1
  113. package/dist/lib/jsonc.js.map +1 -1
  114. package/dist/lib/path.d.ts +3 -16
  115. package/dist/lib/path.d.ts.map +1 -1
  116. package/dist/lib/path.js +36 -19
  117. package/dist/lib/path.js.map +1 -1
  118. package/dist/lib/string.d.ts +1 -4
  119. package/dist/lib/string.d.ts.map +1 -1
  120. package/dist/lib/string.js +6 -4
  121. package/dist/lib/string.js.map +1 -1
  122. package/dist/lib/version.d.ts.map +1 -1
  123. package/dist/lib/version.js +2 -2
  124. package/dist/lib/version.js.map +1 -1
  125. package/dist/migrations/sync-v8.d.ts +3 -0
  126. package/dist/migrations/sync-v8.d.ts.map +1 -0
  127. package/dist/migrations/sync-v8.js +66 -0
  128. package/dist/migrations/sync-v8.js.map +1 -0
  129. package/dist/services/autocomplete.js +13 -13
  130. package/dist/services/autocomplete.js.map +1 -1
  131. package/dist/services/config-file.d.ts +6 -5
  132. package/dist/services/config-file.d.ts.map +1 -1
  133. package/dist/services/config-file.js +9 -8
  134. package/dist/services/config-file.js.map +1 -1
  135. package/dist/services/doctor.d.ts +1 -4
  136. package/dist/services/doctor.d.ts.map +1 -1
  137. package/dist/services/doctor.js +10 -37
  138. package/dist/services/doctor.js.map +1 -1
  139. package/dist/services/init.d.ts +1 -5
  140. package/dist/services/init.d.ts.map +1 -1
  141. package/dist/services/init.js +25 -59
  142. package/dist/services/init.js.map +1 -1
  143. package/dist/services/local-snapshot.d.ts +2 -7
  144. package/dist/services/local-snapshot.d.ts.map +1 -1
  145. package/dist/services/local-snapshot.js +12 -35
  146. package/dist/services/local-snapshot.js.map +1 -1
  147. package/dist/services/profile.d.ts +8 -4
  148. package/dist/services/profile.d.ts.map +1 -1
  149. package/dist/services/profile.js +110 -34
  150. package/dist/services/profile.js.map +1 -1
  151. package/dist/services/pull-apply.d.ts +30 -0
  152. package/dist/services/pull-apply.d.ts.map +1 -0
  153. package/dist/services/{local-materialization.js → pull-apply.js} +150 -210
  154. package/dist/services/pull-apply.js.map +1 -0
  155. package/dist/services/pull.d.ts +7 -10
  156. package/dist/services/pull.d.ts.map +1 -1
  157. package/dist/services/pull.js +19 -30
  158. package/dist/services/pull.js.map +1 -1
  159. package/dist/services/push.d.ts +4 -7
  160. package/dist/services/push.d.ts.map +1 -1
  161. package/dist/services/push.js +15 -38
  162. package/dist/services/push.js.map +1 -1
  163. package/dist/services/repo-artifacts.d.ts +5 -6
  164. package/dist/services/repo-artifacts.d.ts.map +1 -1
  165. package/dist/services/repo-artifacts.js +21 -60
  166. package/dist/services/repo-artifacts.js.map +1 -1
  167. package/dist/services/repo-snapshot.d.ts +2 -3
  168. package/dist/services/repo-snapshot.d.ts.map +1 -1
  169. package/dist/services/repo-snapshot.js +14 -26
  170. package/dist/services/repo-snapshot.js.map +1 -1
  171. package/dist/services/status.d.ts +1 -5
  172. package/dist/services/status.d.ts.map +1 -1
  173. package/dist/services/status.js +7 -17
  174. package/dist/services/status.js.map +1 -1
  175. package/dist/services/{runtime.d.ts → sync-context.d.ts} +9 -3
  176. package/dist/services/sync-context.d.ts.map +1 -0
  177. package/dist/services/{runtime.js → sync-context.js} +24 -8
  178. package/dist/services/sync-context.js.map +1 -0
  179. package/dist/services/{set.d.ts → sync-mode.d.ts} +7 -9
  180. package/dist/services/sync-mode.d.ts.map +1 -0
  181. package/dist/services/{set.js → sync-mode.js} +9 -23
  182. package/dist/services/sync-mode.js.map +1 -0
  183. package/dist/services/{paths.d.ts → sync-paths.d.ts} +2 -2
  184. package/dist/services/sync-paths.d.ts.map +1 -0
  185. package/dist/services/{paths.js → sync-paths.js} +4 -6
  186. package/dist/services/sync-paths.js.map +1 -0
  187. package/dist/services/terminal/logger.d.ts +30 -5
  188. package/dist/services/terminal/logger.d.ts.map +1 -1
  189. package/dist/services/terminal/logger.js +61 -14
  190. package/dist/services/terminal/logger.js.map +1 -1
  191. package/dist/services/terminal/path-completion.d.ts +2 -2
  192. package/dist/services/terminal/path-completion.d.ts.map +1 -1
  193. package/dist/services/terminal/path-completion.js +16 -13
  194. package/dist/services/terminal/path-completion.js.map +1 -1
  195. package/dist/services/terminal/shell.d.ts +1 -12
  196. package/dist/services/terminal/shell.d.ts.map +1 -1
  197. package/dist/services/terminal/shell.js +7 -160
  198. package/dist/services/terminal/shell.js.map +1 -1
  199. package/dist/services/terminal/spinner.d.ts +10 -0
  200. package/dist/services/terminal/spinner.d.ts.map +1 -0
  201. package/dist/services/terminal/spinner.js +61 -0
  202. package/dist/services/terminal/spinner.js.map +1 -0
  203. package/dist/services/terminal/theme.d.ts +31 -0
  204. package/dist/services/terminal/theme.d.ts.map +1 -0
  205. package/dist/services/terminal/theme.js +32 -0
  206. package/dist/services/terminal/theme.js.map +1 -0
  207. package/dist/services/track.d.ts +1 -3
  208. package/dist/services/track.d.ts.map +1 -1
  209. package/dist/services/track.js +27 -23
  210. package/dist/services/track.js.map +1 -1
  211. package/dist/services/untrack.d.ts +0 -2
  212. package/dist/services/untrack.d.ts.map +1 -1
  213. package/dist/services/untrack.js +4 -11
  214. package/dist/services/untrack.js.map +1 -1
  215. package/package.json +1 -2
  216. package/dist/config/sync-entry.d.ts.map +0 -1
  217. package/dist/config/sync-entry.js.map +0 -1
  218. package/dist/config/sync.d.ts +0 -8
  219. package/dist/config/sync.d.ts.map +0 -1
  220. package/dist/config/sync.js +0 -53
  221. package/dist/config/sync.js.map +0 -1
  222. package/dist/services/local-materialization.d.ts +0 -30
  223. package/dist/services/local-materialization.d.ts.map +0 -1
  224. package/dist/services/local-materialization.js.map +0 -1
  225. package/dist/services/paths.d.ts.map +0 -1
  226. package/dist/services/paths.js.map +0 -1
  227. package/dist/services/runtime.d.ts.map +0 -1
  228. package/dist/services/runtime.js.map +0 -1
  229. package/dist/services/set.d.ts.map +0 -1
  230. package/dist/services/set.js.map +0 -1
  231. package/dist/services/terminal/cli-runtime.d.ts +0 -18
  232. package/dist/services/terminal/cli-runtime.d.ts.map +0 -1
  233. package/dist/services/terminal/cli-runtime.js +0 -19
  234. package/dist/services/terminal/cli-runtime.js.map +0 -1
@@ -1,77 +1,77 @@
1
1
  import { buildCommand } from "@stricli/core";
2
- import pc from "picocolors";
3
2
  import { getStatus, } from "#app/services/status.ts";
4
- import { verboseFlag, } from "#app/services/terminal/cli-runtime.ts";
5
3
  import { createCliLogger } from "#app/services/terminal/logger.ts";
4
+ import { color, SYMBOLS } from "#app/services/terminal/theme.ts";
5
+ import { profileFlag } from "./shared-flags.js";
6
6
  const MAX_DISPLAY_ITEMS = 10;
7
7
  const logPushChanges = (logger, changes) => {
8
8
  const hasChanges = changes.added.length > 0 ||
9
9
  changes.modified.length > 0 ||
10
10
  changes.deleted.length > 0;
11
11
  if (!hasChanges) {
12
- logger.log(` ${pc.dim("No push changes")}`);
12
+ logger.log(" No push changes");
13
13
  return;
14
14
  }
15
15
  if (changes.added.length > 0) {
16
- logger.log(` ${pc.green("+")} ${pc.bold("Add")} (${changes.added.length}):`);
16
+ logger.section(`Add (${changes.added.length})`);
17
17
  const displayItems = changes.added.slice(0, MAX_DISPLAY_ITEMS);
18
18
  const remainingCount = changes.added.length - displayItems.length;
19
19
  for (const path of displayItems) {
20
- logger.log(pc.dim(` ${path}`));
20
+ logger.log(` ${color.action.add(SYMBOLS.add)} ${color.path(path)}`);
21
21
  }
22
22
  if (remainingCount > 0) {
23
- logger.log(pc.dim(` ... and ${remainingCount} more`));
23
+ logger.log(color.dim(` ... and ${remainingCount} more`));
24
24
  }
25
25
  }
26
26
  if (changes.modified.length > 0) {
27
- logger.log(` ${pc.yellow("~")} ${pc.bold("Modify")} (${changes.modified.length}):`);
27
+ logger.section(`Modify (${changes.modified.length})`);
28
28
  const displayItems = changes.modified.slice(0, MAX_DISPLAY_ITEMS);
29
29
  const remainingCount = changes.modified.length - displayItems.length;
30
30
  for (const path of displayItems) {
31
- logger.log(pc.dim(` ${path}`));
31
+ logger.log(` ${color.action.modify(SYMBOLS.modify)} ${color.path(path)}`);
32
32
  }
33
33
  if (remainingCount > 0) {
34
- logger.log(pc.dim(` ... and ${remainingCount} more`));
34
+ logger.log(color.dim(` ... and ${remainingCount} more`));
35
35
  }
36
36
  }
37
37
  if (changes.deleted.length > 0) {
38
- logger.log(` ${pc.red("-")} ${pc.bold("Delete")} (${changes.deleted.length}):`);
38
+ logger.section(`Delete (${changes.deleted.length})`);
39
39
  const displayItems = changes.deleted.slice(0, MAX_DISPLAY_ITEMS);
40
40
  const remainingCount = changes.deleted.length - displayItems.length;
41
41
  for (const path of displayItems) {
42
- logger.log(pc.dim(` ${path}`));
42
+ logger.log(` ${color.action.delete(SYMBOLS.delete)} ${color.path(path)}`);
43
43
  }
44
44
  if (remainingCount > 0) {
45
- logger.log(pc.dim(` ... and ${remainingCount} more`));
45
+ logger.log(color.dim(` ... and ${remainingCount} more`));
46
46
  }
47
47
  }
48
48
  };
49
49
  const logPullChanges = (logger, changes) => {
50
50
  const hasChanges = changes.updated.length > 0 || changes.deleted.length > 0;
51
51
  if (!hasChanges) {
52
- logger.log(` ${pc.dim("No pull changes")}`);
52
+ logger.log(" No pull changes");
53
53
  return;
54
54
  }
55
55
  if (changes.updated.length > 0) {
56
- logger.log(` ${pc.green("+")} ${pc.bold("Changed")} (${changes.updated.length}):`);
56
+ logger.section(`Changed (${changes.updated.length})`);
57
57
  const displayItems = changes.updated.slice(0, MAX_DISPLAY_ITEMS);
58
58
  const remainingCount = changes.updated.length - displayItems.length;
59
59
  for (const path of displayItems) {
60
- logger.log(pc.dim(` ${path}`));
60
+ logger.log(` ${color.action.add(SYMBOLS.add)} ${color.path(path)}`);
61
61
  }
62
62
  if (remainingCount > 0) {
63
- logger.log(pc.dim(` ... and ${remainingCount} more`));
63
+ logger.log(color.dim(` ... and ${remainingCount} more`));
64
64
  }
65
65
  }
66
66
  if (changes.deleted.length > 0) {
67
- logger.log(` ${pc.red("-")} ${pc.bold("Remove")} (${changes.deleted.length}):`);
67
+ logger.section(`Remove (${changes.deleted.length})`);
68
68
  const displayItems = changes.deleted.slice(0, MAX_DISPLAY_ITEMS);
69
69
  const remainingCount = changes.deleted.length - displayItems.length;
70
70
  for (const path of displayItems) {
71
- logger.log(pc.dim(` ${path}`));
71
+ logger.log(` ${color.action.delete(SYMBOLS.delete)} ${color.path(path)}`);
72
72
  }
73
73
  if (remainingCount > 0) {
74
- logger.log(pc.dim(` ... and ${remainingCount} more`));
74
+ logger.log(color.dim(` ... and ${remainingCount} more`));
75
75
  }
76
76
  }
77
77
  };
@@ -81,50 +81,21 @@ const statusCommand = buildCommand({
81
81
  fullDescription: "Compare the tracked local files with the sync directory and report what push would write to the repository and what pull would write back locally.",
82
82
  },
83
83
  async func(flags) {
84
- const verbose = flags.verbose ?? false;
85
- const logger = createCliLogger({ verbose });
86
- const reporter = verbose ? logger : undefined;
84
+ const logger = createCliLogger();
85
+ const spin = logger.spinner("Checking sync status...");
87
86
  const result = await getStatus({
88
87
  profile: flags.profile,
89
- reporter,
90
88
  });
91
- logger.info("Sync status");
92
- logger.log(` profile: ${result.activeProfile ?? "none"} · ${result.entryCount} entries · ${result.recipientCount} recipients`);
93
- logger.log("");
94
- logger.log(`${pc.bold("Push changes")} ${pc.dim("(repository):")}`);
89
+ spin.stop();
90
+ logger.info(`Sync status — ${result.entryCount} entries, ${result.recipientCount} recipients, profile: ${result.activeProfile ?? "none"}`);
91
+ logger.section("Push changes (repository)");
95
92
  logPushChanges(logger, result.push.changes);
96
- logger.log("");
97
- logger.log(`${pc.bold("Pull changes")} ${pc.dim("(local):")}`);
93
+ logger.section("Pull changes (local)");
98
94
  logPullChanges(logger, result.pull.changes);
99
- if (verbose) {
100
- logger.log("");
101
- logger.log(pc.bold("Entries:"));
102
- if (result.entries.length === 0) {
103
- logger.log(pc.dim(" none"));
104
- }
105
- else {
106
- for (const entry of result.entries) {
107
- const profiles = entry.profiles.length > 0
108
- ? `, profiles: ${entry.profiles.join(", ")}`
109
- : "";
110
- logger.log(pc.dim(` ${entry.repoPath} → ${entry.localPath} (${entry.kind}, ${entry.mode}${profiles})`));
111
- }
112
- }
113
- logger.log("");
114
- logger.log(pc.dim(` sync dir ${result.syncDirectory}`));
115
- logger.log(pc.dim(` config ${result.configPath}`));
116
- }
117
95
  },
118
96
  parameters: {
119
97
  flags: {
120
- profile: {
121
- brief: "Use a specific profile layer for this command",
122
- kind: "parsed",
123
- optional: true,
124
- parse: String,
125
- placeholder: "profile",
126
- },
127
- verbose: verboseFlag,
98
+ profile: profileFlag,
128
99
  },
129
100
  },
130
101
  });
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type DotweaveCliContext } from "#app/services/terminal/cli-runtime.ts";
2
- declare const trackCommand: import("@stricli/core").Command<DotweaveCliContext>;
1
+ import type { ApplicationContext } from "@stricli/core";
2
+ declare const trackCommand: import("@stricli/core").Command<ApplicationContext>;
3
3
  export default trackCommand;
4
4
  //# sourceMappingURL=track.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,uCAAuC,CAAC;AAY/C,QAAA,MAAM,YAAY,qDAwJhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAmBxD,QAAA,MAAM,YAAY,qDAmIhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
package/dist/cli/track.js CHANGED
@@ -1,10 +1,8 @@
1
1
  import { buildCommand } from "@stricli/core";
2
- import pc from "picocolors";
3
- import { CONSTANTS } from "#app/config/constants.ts";
2
+ import { AppConstants } from "#app/config/constants.ts";
4
3
  import { DotweaveError } from "#app/lib/error.ts";
5
- import { assignProfiles } from "#app/services/profile.ts";
6
- import { setTargetMode } from "#app/services/set.ts";
7
- import { verboseFlag, } from "#app/services/terminal/cli-runtime.ts";
4
+ import { assignProfiles, validateProfilesExist, } from "#app/services/profile.ts";
5
+ import { setTargetMode } from "#app/services/sync-mode.ts";
8
6
  import { createCliLogger } from "#app/services/terminal/logger.ts";
9
7
  import { proposePathCompletions } from "#app/services/terminal/path-completion.ts";
10
8
  import { trackTarget } from "#app/services/track.ts";
@@ -14,8 +12,7 @@ const trackCommand = buildCommand({
14
12
  fullDescription: "Register one or more files or directories inside your home directory so dotweave can mirror them into the sync directory. If a target is already tracked, its mode is updated. Targets may also be repository paths inside a tracked directory to create child entries with a specific mode.",
15
13
  },
16
14
  async func(flags, ...targets) {
17
- const verbose = flags.verbose ?? false;
18
- const logger = createCliLogger({ verbose });
15
+ const logger = createCliLogger();
19
16
  const profiles = [...(flags.profile ?? [])];
20
17
  const cwd = process.cwd();
21
18
  if (flags.repoPath !== undefined && targets.length !== 1) {
@@ -24,13 +21,7 @@ const trackCommand = buildCommand({
24
21
  hint: "Track one target at a time when overriding its repository path.",
25
22
  });
26
23
  }
27
- if (verbose) {
28
- logger.start(`Processing ${targets.length} sync target${targets.length === 1 ? "" : "s"}...`);
29
- }
30
24
  for (const target of targets) {
31
- if (verbose) {
32
- logger.start(`Resolving ${target}...`);
33
- }
34
25
  try {
35
26
  const result = await trackTarget({
36
27
  mode: flags.mode,
@@ -49,26 +40,25 @@ const trackCommand = buildCommand({
49
40
  else {
50
41
  logger.info(`${result.repoPath} already tracked`);
51
42
  }
52
- const profileInfo = result.profiles.length > 0
53
- ? ` · profiles: ${result.profiles.join(", ")}`
54
- : "";
55
- logger.log(` ${result.localPath} · mode: ${result.mode}${profileInfo}`);
56
- if (verbose) {
57
- logger.log(pc.dim(` kind: ${result.kind}`));
58
- logger.log(pc.dim(` sync dir ${result.syncDirectory}`));
59
- logger.log(pc.dim(` config ${result.configPath}`));
43
+ const details = [
44
+ { key: "path", value: result.localPath },
45
+ { key: "mode", value: result.mode },
46
+ ];
47
+ if (result.profiles.length > 0) {
48
+ details.push({ key: "profiles", value: result.profiles.join(", ") });
60
49
  }
50
+ logger.listKeyValue(details);
61
51
  }
62
52
  catch (error) {
63
53
  if (flags.repoPath === undefined &&
64
54
  error instanceof DotweaveError &&
65
55
  error.code === "TARGET_NOT_FOUND") {
66
- if (verbose) {
67
- logger.start(`Updating existing target ${target}...`);
56
+ const isProfileClear = profiles.length === 1 && profiles[0] === "";
57
+ if (profiles.length > 0 && !isProfileClear) {
58
+ await validateProfilesExist(profiles);
68
59
  }
69
60
  const setResult = await setTargetMode({ mode: flags.mode, target }, cwd);
70
61
  if (profiles.length > 0) {
71
- const isProfileClear = profiles.length === 1 && profiles[0] === "";
72
62
  await assignProfiles({ profiles: isProfileClear ? [] : profiles, target }, cwd);
73
63
  }
74
64
  if (setResult.action === "unchanged") {
@@ -77,14 +67,9 @@ const trackCommand = buildCommand({
77
67
  else {
78
68
  logger.success(`Updated sync mode for ${setResult.repoPath}`);
79
69
  }
80
- logger.log(` mode: ${setResult.mode}`);
70
+ logger.listKeyValue([{ key: "mode", value: setResult.mode }]);
81
71
  if (setResult.reason === "already-set") {
82
- logger.log(pc.dim(` already ${setResult.mode}`));
83
- }
84
- if (verbose) {
85
- logger.log(pc.dim(` local ${setResult.localPath}`));
86
- logger.log(pc.dim(` sync dir ${setResult.syncDirectory}`));
87
- logger.log(pc.dim(` config ${setResult.configPath}`));
72
+ logger.log(` already ${setResult.mode}`);
88
73
  }
89
74
  continue;
90
75
  }
@@ -96,12 +81,12 @@ const trackCommand = buildCommand({
96
81
  flags: {
97
82
  mode: {
98
83
  brief: "Sync mode for the tracked targets",
99
- default: CONSTANTS.SYNC.MODES[0],
84
+ default: AppConstants.SYNC.MODES[0],
100
85
  kind: "enum",
101
- values: CONSTANTS.SYNC.MODES,
86
+ values: AppConstants.SYNC.MODES,
102
87
  },
103
88
  profile: {
104
- brief: "Restrict syncing to specific profiles",
89
+ brief: "Restrict syncing to registered profiles (add non-default profiles with 'dotweave profile add')",
105
90
  kind: "parsed",
106
91
  optional: true,
107
92
  parse: String,
@@ -115,7 +100,6 @@ const trackCommand = buildCommand({
115
100
  parse: String,
116
101
  placeholder: "path",
117
102
  },
118
- verbose: verboseFlag,
119
103
  },
120
104
  positional: {
121
105
  kind: "array",
@@ -1 +1 @@
1
- {"version":3,"file":"track.js","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track.js","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type DotweaveCliContext } from "#app/services/terminal/cli-runtime.ts";
2
- declare const untrackCommand: import("@stricli/core").Command<DotweaveCliContext>;
1
+ import type { ApplicationContext } from "@stricli/core";
2
+ declare const untrackCommand: import("@stricli/core").Command<ApplicationContext>;
3
3
  export default untrackCommand;
4
4
  //# sourceMappingURL=untrack.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"untrack.d.ts","sourceRoot":"","sources":["../../src/cli/untrack.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,uCAAuC,CAAC;AAQ/C,QAAA,MAAM,cAAc,qDAyCnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"untrack.d.ts","sourceRoot":"","sources":["../../src/cli/untrack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAMxD,QAAA,MAAM,cAAc,qDA6BlB,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -1,6 +1,4 @@
1
1
  import { buildCommand } from "@stricli/core";
2
- import pc from "picocolors";
3
- import { verboseFlag, } from "#app/services/terminal/cli-runtime.ts";
4
2
  import { createCliLogger } from "#app/services/terminal/logger.ts";
5
3
  import { untrackTarget } from "#app/services/untrack.ts";
6
4
  const untrackCommand = buildCommand({
@@ -8,22 +6,15 @@ const untrackCommand = buildCommand({
8
6
  brief: "Stop tracking a synced path",
9
7
  fullDescription: "Remove a tracked root entry or a nested override from dotweave configuration. This only updates the sync config; actual file changes happen on the next push or pull. Use a local path to remove the main tracked target, or use a repository-relative child path inside a tracked directory to remove only that override.",
10
8
  },
11
- async func(flags, target) {
12
- const verbose = flags.verbose ?? false;
13
- const logger = createCliLogger({ verbose });
9
+ async func(_flags, target) {
10
+ const logger = createCliLogger();
14
11
  const result = await untrackTarget({ target }, process.cwd());
15
12
  logger.success(`Stopped tracking ${result.repoPath}`);
16
- logger.log(` ${result.plainArtifactCount} plain · ${result.secretArtifactCount} secret artifacts`);
17
- if (verbose) {
18
- logger.log(pc.dim(` local ${result.localPath}`));
19
- logger.log(pc.dim(` sync dir ${result.syncDirectory}`));
20
- logger.log(pc.dim(` config ${result.configPath}`));
21
- }
13
+ logger.kv("plain", String(result.plainArtifactCount));
14
+ logger.kv("secret", String(result.secretArtifactCount));
22
15
  },
23
16
  parameters: {
24
- flags: {
25
- verbose: verboseFlag,
26
- },
17
+ flags: {},
27
18
  positional: {
28
19
  kind: "tuple",
29
20
  parameters: [
@@ -1 +1 @@
1
- {"version":3,"file":"untrack.js","sourceRoot":"","sources":["../../src/cli/untrack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAEL,WAAW,GACZ,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAMzD,MAAM,cAAc,GAAG,YAAY,CACjC;IACE,IAAI,EAAE;QACJ,KAAK,EAAE,6BAA6B;QACpC,eAAe,EACb,4TAA4T;KAC/T;IACD,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;QACtB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;QACvC,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAE5C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAE9D,MAAM,CAAC,OAAO,CAAC,oBAAoB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,GAAG,CACR,KAAK,MAAM,CAAC,kBAAkB,YAAY,MAAM,CAAC,mBAAmB,mBAAmB,CACxF,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACtD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAC1D,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,OAAO,EAAE,WAAW;SACrB;QACD,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,UAAU,EAAE;gBACV;oBACE,KAAK,EACH,iFAAiF;oBACnF,KAAK,EAAE,MAAM;oBACb,WAAW,EAAE,QAAQ;iBACtB;aACF;SACF;KACF;CACF,CACF,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"untrack.js","sourceRoot":"","sources":["../../src/cli/untrack.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,cAAc,GAAG,YAAY,CAAwC;IACzE,IAAI,EAAE;QACJ,KAAK,EAAE,6BAA6B;QACpC,eAAe,EACb,4TAA4T;KAC/T;IACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM;QACvB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QAEjC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAE9D,MAAM,CAAC,OAAO,CAAC,oBAAoB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,UAAU,EAAE;QACV,KAAK,EAAE,EAAE;QACT,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,UAAU,EAAE;gBACV;oBACE,KAAK,EACH,iFAAiF;oBACnF,KAAK,EAAE,MAAM;oBACb,WAAW,EAAE,QAAQ;iBACtB;aACF;SACF;KACF;CACF,CAAC,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -1,4 +1,4 @@
1
- export declare const CONSTANTS: {
1
+ export declare const AppConstants: {
2
2
  readonly APP: {
3
3
  readonly NAME: "dotweave";
4
4
  };
@@ -17,7 +17,7 @@ export declare const CONSTANTS: {
17
17
  };
18
18
  readonly SYNC: {
19
19
  readonly CONFIG_FILE_NAME: "manifest.jsonc";
20
- readonly CONFIG_VERSION: 7;
20
+ readonly CONFIG_VERSION: 8;
21
21
  readonly DEFAULT_CONCURRENCY: 20;
22
22
  readonly DEFAULT_PROFILE: "default";
23
23
  readonly MODES: readonly ["normal", "secret", "ignore"];
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BZ,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Bf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  const APP_NAME = "dotweave";
2
2
  const AUTOCOMPLETE_COMPLETE_SUBCOMMAND = "__complete";
3
- export const CONSTANTS = {
3
+ export const AppConstants = {
4
4
  APP: {
5
5
  NAME: APP_NAME,
6
6
  },
@@ -19,7 +19,7 @@ export const CONSTANTS = {
19
19
  },
20
20
  SYNC: {
21
21
  CONFIG_FILE_NAME: "manifest.jsonc",
22
- CONFIG_VERSION: 7,
22
+ CONFIG_VERSION: 8,
23
23
  DEFAULT_CONCURRENCY: 20,
24
24
  DEFAULT_PROFILE: "default",
25
25
  MODES: ["normal", "secret", "ignore"],
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,gCAAgC,GAAG,YAAY,CAAC;AAEtD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,EAAE;QACH,IAAI,EAAE,QAAQ;KACf;IACD,YAAY,EAAE;QACZ,gBAAgB,EAAE,QAAQ;QAC1B,OAAO,EAAE,GAAG,QAAQ,IAAI,gCAAgC,EAAE;QAC1D,mBAAmB,EAAE,gCAAgC;KACtD;IACD,aAAa,EAAE;QACb,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,gBAAgB;KAC5B;IACD,IAAI,EAAE;QACJ,qBAAqB,EAAE,aAAa,QAAQ,WAAW;QACvD,oBAAoB,EAAE,aAAa,QAAQ,eAAe;KAC3D;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,gBAAgB;QAClC,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,EAAE;QACvB,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACrC,sBAAsB,EAAE,kBAAkB;KAC3C;IACD,GAAG,EAAE;QACH,kBAAkB,EAAE,QAAQ;QAC5B,mBAAmB,EAAE,YAAY;KAClC;CACO,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,gCAAgC,GAAG,YAAY,CAAC;AAEtD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE;QACH,IAAI,EAAE,QAAQ;KACf;IACD,YAAY,EAAE;QACZ,gBAAgB,EAAE,QAAQ;QAC1B,OAAO,EAAE,GAAG,QAAQ,IAAI,gCAAgC,EAAE;QAC1D,mBAAmB,EAAE,gCAAgC;KACtD;IACD,aAAa,EAAE;QACb,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,gBAAgB;KAC5B;IACD,IAAI,EAAE;QACJ,qBAAqB,EAAE,aAAa,QAAQ,WAAW;QACvD,oBAAoB,EAAE,aAAa,QAAQ,eAAe;KAC3D;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,gBAAgB;QAClC,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,EAAE;QACvB,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACrC,sBAAsB,EAAE,kBAAkB;KAC3C;IACD,GAAG,EAAE;QACH,kBAAkB,EAAE,QAAQ;QAC5B,mBAAmB,EAAE,YAAY;KAClC;CACO,CAAC"}
@@ -1,7 +1,7 @@
1
- import { CONSTANTS } from "#app/config/constants.ts";
1
+ import { AppConstants } from "#app/config/constants.ts";
2
2
  export type GlobalDotweaveConfig = Readonly<{
3
3
  activeProfile?: string;
4
- version: typeof CONSTANTS.GLOBAL_CONFIG.CURRENT_VERSION;
4
+ version: typeof AppConstants.GLOBAL_CONFIG.CURRENT_VERSION;
5
5
  }>;
6
6
  export type ActiveProfileSelection = Readonly<{
7
7
  profile?: undefined;
@@ -14,7 +14,7 @@ export declare const parseGlobalDotweaveConfig: (input: unknown) => GlobalDotwea
14
14
  export declare const formatGlobalDotweaveConfig: (config: GlobalDotweaveConfig) => string;
15
15
  export declare const readGlobalDotweaveConfig: (filePath: string) => Promise<Readonly<{
16
16
  activeProfile?: string;
17
- version: typeof CONSTANTS.GLOBAL_CONFIG.CURRENT_VERSION;
17
+ version: typeof AppConstants.GLOBAL_CONFIG.CURRENT_VERSION;
18
18
  }> | undefined>;
19
19
  export declare const resolveActiveProfileSelection: (config: GlobalDotweaveConfig | undefined) => ActiveProfileSelection;
20
20
  export declare const isProfileActive: (selection: ActiveProfileSelection, profile: string | undefined) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAkBrD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC;CACzD,CAAC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CACzC;IACE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,GACD;IACE,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;CAChB,CACJ,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,OAAO,OAAO,KACb,oBAmBF,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,QAAQ,oBAAoB,WAEtE,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,UAAU,MAAM;oBA1C7C,MAAM;aACb,OAAO,SAAS,CAAC,aAAa,CAAC,eAAe;eAkFxD,CAAC;AAEF,eAAO,MAAM,6BAA6B,GACxC,QAAQ,oBAAoB,GAAG,SAAS,KACvC,sBAWF,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,WAAW,sBAAsB,EACjC,SAAS,MAAM,GAAG,SAAS,YAW5B,CAAC"}
1
+ {"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAgBxD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,YAAY,CAAC,aAAa,CAAC,eAAe,CAAC;CAC5D,CAAC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CACzC;IACE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,GACD;IACE,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;CAChB,CACJ,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,OAAO,OAAO,KACb,oBAmBF,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,QAAQ,oBAAoB,WAEtE,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,UAAU,MAAM;oBA1C7C,MAAM;aACb,OAAO,YAAY,CAAC,aAAa,CAAC,eAAe;eAkF3D,CAAC;AAEF,eAAO,MAAM,6BAA6B,GACxC,QAAQ,oBAAoB,GAAG,SAAS,KACvC,sBAWF,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,WAAW,sBAAsB,EACjC,SAAS,MAAM,GAAG,SAAS,YAW5B,CAAC"}
@@ -1,18 +1,17 @@
1
1
  import { readFile } from "node:fs/promises";
2
2
  import { z } from "zod";
3
- import { CONSTANTS } from "#app/config/constants.ts";
3
+ import { AppConstants } from "#app/config/constants.ts";
4
4
  import { runConfigMigrations } from "#app/config/migration.ts";
5
5
  import { DotweaveError } from "#app/lib/error.ts";
6
- import { parseJsonc, resolveJsoncConfigPath } from "#app/lib/jsonc.ts";
6
+ import { parseJsonc, validateJsoncConfigPath } from "#app/lib/jsonc.ts";
7
7
  import { ensureTrailingNewline } from "#app/lib/string.ts";
8
8
  import { formatInputIssues } from "#app/lib/validation.ts";
9
9
  import { migrateGlobalConfigV2ToV3 } from "#app/migrations/global-v3.ts";
10
- import { normalizeSyncProfileName } from "./sync.js";
10
+ import { normalizeSyncProfileName } from "./sync-schema.js";
11
11
  const globalConfigMigrationRegistry = new Map([[2, migrateGlobalConfigV2ToV3]]);
12
- const optionalTrimmedStringSchema = z.string().trim().min(1).optional();
13
12
  const globalConfigSchema = z.object({
14
- activeProfile: optionalTrimmedStringSchema,
15
- version: z.literal(CONSTANTS.GLOBAL_CONFIG.CURRENT_VERSION),
13
+ activeProfile: z.string().trim().min(1).optional(),
14
+ version: z.literal(AppConstants.GLOBAL_CONFIG.CURRENT_VERSION),
16
15
  });
17
16
  export const parseGlobalDotweaveConfig = (input) => {
18
17
  const result = globalConfigSchema.safeParse(input);
@@ -36,11 +35,11 @@ export const formatGlobalDotweaveConfig = (config) => {
36
35
  return ensureTrailingNewline(JSON.stringify(config, null, 2));
37
36
  };
38
37
  export const readGlobalDotweaveConfig = async (filePath) => {
39
- const resolvedPath = await resolveJsoncConfigPath(filePath);
38
+ const resolvedPath = await validateJsoncConfigPath(filePath);
40
39
  try {
41
40
  const contents = await readFile(resolvedPath, "utf8");
42
41
  const parsed = parseJsonc(contents);
43
- const migrated = await runConfigMigrations(parsed, globalConfigMigrationRegistry, CONSTANTS.GLOBAL_CONFIG.CURRENT_VERSION, resolvedPath);
42
+ const migrated = await runConfigMigrations(parsed, globalConfigMigrationRegistry, AppConstants.GLOBAL_CONFIG.CURRENT_VERSION, resolvedPath);
44
43
  return parseGlobalDotweaveConfig(migrated);
45
44
  }
46
45
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC;AAEhF,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAExE,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,aAAa,EAAE,2BAA2B;IAC1C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC;CAC5D,CAAC,CAAC;AAkBH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,KAAc,EACQ,EAAE;IACxB,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAEnD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,aAAa,CAAC,2CAA2C,EAAE;YACnE,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3D,IAAI,EAAE,oEAAoE;SAC3E,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,aAAa,EAAE,wBAAwB,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;aACnE,CAAC;QACN,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO;KAC7B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,MAA4B,EAAE,EAAE;IACzE,OAAO,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,QAAgB,EAAE,EAAE;IACjE,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CACxC,MAAM,EACN,6BAA6B,EAC7B,SAAS,CAAC,aAAa,CAAC,eAAe,EACvC,YAAY,CACb,CAAC;QAEF,OAAO,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,aAAa,CACrB,kDAAkD,EAClD;gBACE,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,CAAC,gBAAgB,YAAY,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC;gBACxD,IAAI,EAAE,uFAAuF;aAC9F,CACF,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,aAAa,CAAC,+CAA+C,EAAE;YACvE,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE;gBACP,gBAAgB,YAAY,EAAE;gBAC9B,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACnD;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,MAAwC,EAChB,EAAE;IAC1B,IAAI,MAAM,EAAE,aAAa,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO;YACL,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,aAAa;QAC7B,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,SAAiC,EACjC,OAA2B,EAC3B,EAAE;IACF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC;AACvC,CAAC,CAAC"}
1
+ {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,2 @@
1
- export type ResolveConfiguredIdentityFileOptions = Readonly<{
2
- configPath?: string;
3
- hint?: string;
4
- source?: string;
5
- }>;
6
1
  export declare const resolveDefaultIdentityFile: (home: string | undefined, xdgConfigHome: string | undefined) => string;
7
- export declare const resolveLegacyIdentityFile: (home: string | undefined, xdgConfigHome: string | undefined) => string;
8
- export declare const resolveConfiguredIdentityFile: (value: string, home: string | undefined, xdgConfigHome: string | undefined, options?: ResolveConfiguredIdentityFileOptions) => string;
9
2
  //# sourceMappingURL=identity-file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-file.d.ts","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,oCAAoC,GAAG,QAAQ,CAAC;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC;AAIH,eAAO,MAAM,0BAA0B,GACrC,MAAM,MAAM,GAAG,SAAS,EACxB,eAAe,MAAM,GAAG,SAAS,WAOlC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,MAAM,MAAM,GAAG,SAAS,EACxB,eAAe,MAAM,GAAG,SAAS,WAOlC,CAAC;AAEF,eAAO,MAAM,6BAA6B,GACxC,OAAO,MAAM,EACb,MAAM,MAAM,GAAG,SAAS,EACxB,eAAe,MAAM,GAAG,SAAS,EACjC,UAAS,oCAAyC,WAmDnD,CAAC"}
1
+ {"version":3,"file":"identity-file.d.ts","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,0BAA0B,GACrC,MAAM,MAAM,GAAG,SAAS,EACxB,eAAe,MAAM,GAAG,SAAS,WAOlC,CAAC"}
@@ -1,48 +1,6 @@
1
- import { CONSTANTS } from "#app/config/constants.ts";
1
+ import { AppConstants } from "#app/config/constants.ts";
2
2
  import { resolveConfiguredAbsolutePath } from "#app/config/xdg.ts";
3
- import { DotweaveError } from "#app/lib/error.ts";
4
- const defaultIdentityFileSource = "Configured identity file";
5
3
  export const resolveDefaultIdentityFile = (home, xdgConfigHome) => {
6
- return resolveConfiguredAbsolutePath(CONSTANTS.INIT.DEFAULT_IDENTITY_FILE, home, xdgConfigHome);
7
- };
8
- export const resolveLegacyIdentityFile = (home, xdgConfigHome) => {
9
- return resolveConfiguredAbsolutePath(CONSTANTS.INIT.LEGACY_IDENTITY_FILE, home, xdgConfigHome);
10
- };
11
- export const resolveConfiguredIdentityFile = (value, home, xdgConfigHome, options = {}) => {
12
- const configuredIdentityFile = value.trim();
13
- const source = options.source ?? defaultIdentityFileSource;
14
- let resolvedIdentityFile;
15
- try {
16
- resolvedIdentityFile = resolveConfiguredAbsolutePath(configuredIdentityFile, home, xdgConfigHome);
17
- }
18
- catch (error) {
19
- throw new DotweaveError(error instanceof Error
20
- ? error.message
21
- : `Invalid age identity file path: ${value}`, {
22
- code: "AGE_IDENTITY_PATH_INVALID",
23
- details: [
24
- `${source}: ${configuredIdentityFile}`,
25
- ...(options.configPath === undefined
26
- ? []
27
- : [`Config file: ${options.configPath}`]),
28
- ],
29
- });
30
- }
31
- if (resolvedIdentityFile === resolveLegacyIdentityFile(home, xdgConfigHome)) {
32
- throw new DotweaveError("Configured age identity file uses the removed legacy path.", {
33
- code: "AGE_IDENTITY_LEGACY_PATH",
34
- details: [
35
- `${source}: ${configuredIdentityFile}`,
36
- ...(options.configPath === undefined
37
- ? []
38
- : [`Config file: ${options.configPath}`]),
39
- `Resolved identity file: ${resolvedIdentityFile}`,
40
- `Supported identity file: ${resolveDefaultIdentityFile(home, xdgConfigHome)}`,
41
- ],
42
- hint: options.hint ??
43
- `Update the identity file path to ${CONSTANTS.INIT.DEFAULT_IDENTITY_FILE}.`,
44
- });
45
- }
46
- return resolvedIdentityFile;
4
+ return resolveConfiguredAbsolutePath(AppConstants.INIT.DEFAULT_IDENTITY_FILE, home, xdgConfigHome);
47
5
  };
48
6
  //# sourceMappingURL=identity-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-file.js","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAQlD,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AAE7D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,IAAwB,EACxB,aAAiC,EACjC,EAAE;IACF,OAAO,6BAA6B,CAClC,SAAS,CAAC,IAAI,CAAC,qBAAqB,EACpC,IAAI,EACJ,aAAa,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,IAAwB,EACxB,aAAiC,EACjC,EAAE;IACF,OAAO,6BAA6B,CAClC,SAAS,CAAC,IAAI,CAAC,oBAAoB,EACnC,IAAI,EACJ,aAAa,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,KAAa,EACb,IAAwB,EACxB,aAAiC,EACjC,UAAgD,EAAE,EAClD,EAAE;IACF,MAAM,sBAAsB,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,yBAAyB,CAAC;IAE3D,IAAI,oBAA4B,CAAC;IAEjC,IAAI,CAAC;QACH,oBAAoB,GAAG,6BAA6B,CAClD,sBAAsB,EACtB,IAAI,EACJ,aAAa,CACd,CAAC;IACJ,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,IAAI,aAAa,CACrB,KAAK,YAAY,KAAK;YACpB,CAAC,CAAC,KAAK,CAAC,OAAO;YACf,CAAC,CAAC,mCAAmC,KAAK,EAAE,EAC9C;YACE,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE;gBACP,GAAG,MAAM,KAAK,sBAAsB,EAAE;gBACtC,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;oBAClC,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,CAAC,gBAAgB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;aAC5C;SACF,CACF,CAAC;IACJ,CAAC;IAED,IAAI,oBAAoB,KAAK,yBAAyB,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,aAAa,CACrB,4DAA4D,EAC5D;YACE,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE;gBACP,GAAG,MAAM,KAAK,sBAAsB,EAAE;gBACtC,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;oBAClC,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,CAAC,gBAAgB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC3C,2BAA2B,oBAAoB,EAAE;gBACjD,4BAA4B,0BAA0B,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE;aAC9E;YACD,IAAI,EACF,OAAO,CAAC,IAAI;gBACZ,oCAAoC,SAAS,CAAC,IAAI,CAAC,qBAAqB,GAAG;SAC9E,CACF,CAAC;IACJ,CAAC;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC,CAAC"}
1
+ {"version":3,"file":"identity-file.js","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAEnE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,IAAwB,EACxB,aAAiC,EACjC,EAAE;IACF,OAAO,6BAA6B,CAClC,YAAY,CAAC,IAAI,CAAC,qBAAqB,EACvC,IAAI,EACJ,aAAa,CACd,CAAC;AACJ,CAAC,CAAC"}