pushwork 2.0.0-preview.6 → 2.0.0-preview.8

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 (127) hide show
  1. package/dist/branches.d.ts +1 -2
  2. package/dist/branches.d.ts.map +1 -1
  3. package/dist/branches.js +4 -23
  4. package/dist/branches.js.map +1 -1
  5. package/dist/cli/commands.d.ts +71 -0
  6. package/dist/cli/commands.d.ts.map +1 -0
  7. package/dist/cli/commands.js +794 -0
  8. package/dist/cli/commands.js.map +1 -0
  9. package/dist/cli/index.d.ts +2 -0
  10. package/dist/cli/index.d.ts.map +1 -0
  11. package/dist/cli/index.js +19 -0
  12. package/dist/cli/index.js.map +1 -0
  13. package/dist/cli.js +56 -1
  14. package/dist/cli.js.map +1 -1
  15. package/dist/commands.d.ts +58 -0
  16. package/dist/commands.d.ts.map +1 -0
  17. package/dist/commands.js +975 -0
  18. package/dist/commands.js.map +1 -0
  19. package/dist/config/index.d.ts +71 -0
  20. package/dist/config/index.d.ts.map +1 -0
  21. package/dist/config/index.js +314 -0
  22. package/dist/config/index.js.map +1 -0
  23. package/dist/core/change-detection.d.ts +80 -0
  24. package/dist/core/change-detection.d.ts.map +1 -0
  25. package/dist/core/change-detection.js +560 -0
  26. package/dist/core/change-detection.js.map +1 -0
  27. package/dist/core/config.d.ts +81 -0
  28. package/dist/core/config.d.ts.map +1 -0
  29. package/dist/core/config.js +304 -0
  30. package/dist/core/config.js.map +1 -0
  31. package/dist/core/index.d.ts +6 -0
  32. package/dist/core/index.d.ts.map +1 -0
  33. package/dist/core/index.js +22 -0
  34. package/dist/core/index.js.map +1 -0
  35. package/dist/core/move-detection.d.ts +34 -0
  36. package/dist/core/move-detection.d.ts.map +1 -0
  37. package/dist/core/move-detection.js +128 -0
  38. package/dist/core/move-detection.js.map +1 -0
  39. package/dist/core/snapshot.d.ts +105 -0
  40. package/dist/core/snapshot.d.ts.map +1 -0
  41. package/dist/core/snapshot.js +254 -0
  42. package/dist/core/snapshot.js.map +1 -0
  43. package/dist/core/sync-engine.d.ts +177 -0
  44. package/dist/core/sync-engine.d.ts.map +1 -0
  45. package/dist/core/sync-engine.js +1471 -0
  46. package/dist/core/sync-engine.js.map +1 -0
  47. package/dist/pushwork.d.ts +4 -0
  48. package/dist/pushwork.d.ts.map +1 -1
  49. package/dist/pushwork.js +74 -2
  50. package/dist/pushwork.js.map +1 -1
  51. package/dist/stash.d.ts +0 -2
  52. package/dist/stash.d.ts.map +1 -1
  53. package/dist/stash.js +0 -1
  54. package/dist/stash.js.map +1 -1
  55. package/dist/types/config.d.ts +102 -0
  56. package/dist/types/config.d.ts.map +1 -0
  57. package/dist/types/config.js +10 -0
  58. package/dist/types/config.js.map +1 -0
  59. package/dist/types/documents.d.ts +88 -0
  60. package/dist/types/documents.d.ts.map +1 -0
  61. package/dist/types/documents.js +23 -0
  62. package/dist/types/documents.js.map +1 -0
  63. package/dist/types/index.d.ts +4 -0
  64. package/dist/types/index.d.ts.map +1 -0
  65. package/dist/types/index.js +20 -0
  66. package/dist/types/index.js.map +1 -0
  67. package/dist/types/snapshot.d.ts +64 -0
  68. package/dist/types/snapshot.d.ts.map +1 -0
  69. package/dist/types/snapshot.js +3 -0
  70. package/dist/types/snapshot.js.map +1 -0
  71. package/dist/utils/content-similarity.d.ts +53 -0
  72. package/dist/utils/content-similarity.d.ts.map +1 -0
  73. package/dist/utils/content-similarity.js +155 -0
  74. package/dist/utils/content-similarity.js.map +1 -0
  75. package/dist/utils/content.d.ts +10 -0
  76. package/dist/utils/content.d.ts.map +1 -0
  77. package/dist/utils/content.js +35 -0
  78. package/dist/utils/content.js.map +1 -0
  79. package/dist/utils/directory.d.ts +24 -0
  80. package/dist/utils/directory.d.ts.map +1 -0
  81. package/dist/utils/directory.js +56 -0
  82. package/dist/utils/directory.js.map +1 -0
  83. package/dist/utils/fs.d.ts +74 -0
  84. package/dist/utils/fs.d.ts.map +1 -0
  85. package/dist/utils/fs.js +298 -0
  86. package/dist/utils/fs.js.map +1 -0
  87. package/dist/utils/index.d.ts +5 -0
  88. package/dist/utils/index.d.ts.map +1 -0
  89. package/dist/utils/index.js +21 -0
  90. package/dist/utils/index.js.map +1 -0
  91. package/dist/utils/mime-types.d.ts +13 -0
  92. package/dist/utils/mime-types.d.ts.map +1 -0
  93. package/dist/utils/mime-types.js +247 -0
  94. package/dist/utils/mime-types.js.map +1 -0
  95. package/dist/utils/network-sync.d.ts +30 -0
  96. package/dist/utils/network-sync.d.ts.map +1 -0
  97. package/dist/utils/network-sync.js +391 -0
  98. package/dist/utils/network-sync.js.map +1 -0
  99. package/dist/utils/node-polyfills.d.ts +9 -0
  100. package/dist/utils/node-polyfills.d.ts.map +1 -0
  101. package/dist/utils/node-polyfills.js +9 -0
  102. package/dist/utils/node-polyfills.js.map +1 -0
  103. package/dist/utils/output.d.ts +129 -0
  104. package/dist/utils/output.d.ts.map +1 -0
  105. package/dist/utils/output.js +375 -0
  106. package/dist/utils/output.js.map +1 -0
  107. package/dist/utils/repo-factory.d.ts +15 -0
  108. package/dist/utils/repo-factory.d.ts.map +1 -0
  109. package/dist/utils/repo-factory.js +156 -0
  110. package/dist/utils/repo-factory.js.map +1 -0
  111. package/dist/utils/string-similarity.d.ts +14 -0
  112. package/dist/utils/string-similarity.d.ts.map +1 -0
  113. package/dist/utils/string-similarity.js +43 -0
  114. package/dist/utils/string-similarity.js.map +1 -0
  115. package/dist/utils/text-diff.d.ts +37 -0
  116. package/dist/utils/text-diff.d.ts.map +1 -0
  117. package/dist/utils/text-diff.js +131 -0
  118. package/dist/utils/text-diff.js.map +1 -0
  119. package/dist/utils/trace.d.ts +19 -0
  120. package/dist/utils/trace.d.ts.map +1 -0
  121. package/dist/utils/trace.js +68 -0
  122. package/dist/utils/trace.js.map +1 -0
  123. package/package.json +5 -5
  124. package/dist/checkpoints.d.ts +0 -41
  125. package/dist/checkpoints.d.ts.map +0 -1
  126. package/dist/checkpoints.js +0 -210
  127. package/dist/checkpoints.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-sync.js","sourceRoot":"","sources":["../../src/utils/network-sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Polyfills for browser APIs required by @automerge/automerge-subduction.
3
+ * Must be imported before any subduction code.
4
+ *
5
+ * The Subduction WASM module uses IndexedDB for key persistence
6
+ * (via WebCryptoSigner). In Node.js we provide a fake-indexeddb polyfill.
7
+ */
8
+ import "fake-indexeddb/auto";
9
+ //# sourceMappingURL=node-polyfills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-polyfills.d.ts","sourceRoot":"","sources":["../../src/utils/node-polyfills.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,qBAAqB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Polyfills for browser APIs required by @automerge/automerge-subduction.
3
+ * Must be imported before any subduction code.
4
+ *
5
+ * The Subduction WASM module uses IndexedDB for key persistence
6
+ * (via WebCryptoSigner). In Node.js we provide a fake-indexeddb polyfill.
7
+ */
8
+ import "fake-indexeddb/auto";
9
+ //# sourceMappingURL=node-polyfills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-polyfills.js","sourceRoot":"","sources":["../../src/utils/node-polyfills.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,qBAAqB,CAAC"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Clean terminal output manager (Singleton)
3
+ * - Progress stays on one line (spinner updates in place)
4
+ * - No emojis
5
+ * - Background colors for section headers
6
+ * - Minimal output
7
+ * - Supports scrolling task lines (max-lines)
8
+ */
9
+ export declare class Output {
10
+ #private;
11
+ private static instance;
12
+ private spinner;
13
+ private taskStartTime;
14
+ private taskOriginalMessage;
15
+ private taskCurrentMessage;
16
+ private taskLines;
17
+ private taskMaxLines;
18
+ private constructor();
19
+ /**
20
+ * Get the singleton instance
21
+ */
22
+ static getInstance(): Output;
23
+ /**
24
+ * Reset the singleton (useful for testing)
25
+ */
26
+ static reset(): void;
27
+ /**
28
+ * Start a task with spinner - updates in place
29
+ * Completes any previous task before starting the new one
30
+ * @param message - The task message
31
+ * @param maxLines - Maximum number of task lines to show (0 = unlimited, lines scroll)
32
+ */
33
+ task(message: string, maxLines?: number): void;
34
+ /**
35
+ * Update spinner text (stays on same line)
36
+ */
37
+ update(message: string): void;
38
+ /**
39
+ * Add a line to the active task (appears below spinner, scrolls if max-lines set)
40
+ * Lines are dimmed and temporary - they disappear when task completes unless kept
41
+ * If no task is active, displays as a regular log message
42
+ */
43
+ taskLine(message: string, keepOnComplete?: boolean): void;
44
+ /**
45
+ * Clear all task lines (useful when you want to reset the scrolling window)
46
+ */
47
+ clearTaskLines(): void;
48
+ /**
49
+ * Complete task with optional duration display
50
+ * Defaults to showing the original task message with duration
51
+ * Task lines marked with keepOnComplete will be preserved, others are cleared
52
+ */
53
+ done(message?: string, showTime?: boolean): void;
54
+ /**
55
+ * Show an object as a table of key-value pairs
56
+ * Filters out undefined values and applies optional transforms
57
+ * Automatically calculates key padding from max key length
58
+ */
59
+ obj(obj: Record<string, any>, keyTransform?: (key: string) => string, valueTransform?: (value: any, key: string) => string): void;
60
+ /**
61
+ * Display array as bulleted list
62
+ * Each item shown with dim bullet and white text
63
+ */
64
+ arr(items: any[]): void;
65
+ /**
66
+ * Show plain message with optional color
67
+ */
68
+ log(message: string, color?: "red" | "green" | "yellow" | "blue" | "cyan" | "magenta" | "gray" | "dim"): void;
69
+ /**
70
+ * Show success message (green text)
71
+ */
72
+ success(message: string): void;
73
+ /**
74
+ * Show success block (green background label + optional message)
75
+ */
76
+ successBlock(label: string, message?: string): void;
77
+ /**
78
+ * Show success message (green text)
79
+ */
80
+ spicy(message: string): void;
81
+ /**
82
+ * Show success block (green background label + optional message)
83
+ */
84
+ spicyBlock(label: string, message?: string): void;
85
+ /**
86
+ * Show message with rainbow gradient
87
+ */
88
+ rainbow(message: string): void;
89
+ /**
90
+ * Show info message (dim text)
91
+ */
92
+ info(message: string): void;
93
+ /**
94
+ * Show info block (grey background label + optional message)
95
+ */
96
+ infoBlock(label: string, message?: string): void;
97
+ /**
98
+ * Show error message (red text) - fails spinner if running
99
+ */
100
+ error(message: string | Error | unknown): void;
101
+ /**
102
+ * Show error block (red background label + optional message) - fails spinner if running
103
+ */
104
+ errorBlock(label: string, message?: string): void;
105
+ /**
106
+ * Show warning message (yellow text)
107
+ */
108
+ warn(message: string): void;
109
+ /**
110
+ * Show warning block (yellow background label + optional message)
111
+ */
112
+ warnBlock(label: string, message?: string): void;
113
+ /**
114
+ * Show detailed error information and exit the program
115
+ * Use this when an unexpected/unrecoverable error occurs
116
+ * Shows error message and stack trace, then exits
117
+ */
118
+ crash(error: unknown, exitCode?: number): never;
119
+ /**
120
+ * Exit with code
121
+ */
122
+ exit(code?: number): never;
123
+ }
124
+ /**
125
+ * Global singleton output instance
126
+ * Import and use this anywhere in your code
127
+ */
128
+ export declare const out: Output;
129
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,qBAAa,MAAM;;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAC9C,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,YAAY,CAAa;IAEjC,OAAO;IAEP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM;IAO5B;;OAEG;IACH,MAAM,CAAC,KAAK,IAAI,IAAI;IAQpB;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,IAAI;IAcjD;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO7B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,GAAE,OAAe,GAAG,IAAI;IAkBhE;;OAEG;IACH,cAAc,IAAI,IAAI;IAiCtB;;;;OAIG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,IAAI;IAuCtD;;;;OAIG;IACH,GAAG,CACD,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,EACtC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,GACnD,IAAI;IA0BP;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI;IASvB;;OAEG;IACH,GAAG,CACD,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EACF,KAAK,GACL,OAAO,GACP,QAAQ,GACR,MAAM,GACN,MAAM,GACN,SAAS,GACT,MAAM,GACN,KAAK,GACR,IAAI;IAWP;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK9B;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAW,GAAG,IAAI;IAOvD;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK5B;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAW,GAAG,IAAI;IAOrD;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IA8B9B;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAW,GAAG,IAAI;IAOpD;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,IAAI;IAmB9C;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAW,GAAG,IAAI;IAarD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAW,GAAG,IAAI;IAOpD;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,GAAE,MAAU,GAAG,KAAK;IAuBlD;;OAEG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK;CAoB3B;AAED;;;GAGG;AACH,eAAO,MAAM,GAAG,QAAuB,CAAC"}
@@ -0,0 +1,375 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ var _Output_instances, _Output_updateTaskDisplay, _Output_stopTask;
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.out = exports.Output = void 0;
13
+ const chalk_1 = __importDefault(require("chalk"));
14
+ const ora_1 = __importDefault(require("ora"));
15
+ /**
16
+ * Clean terminal output manager (Singleton)
17
+ * - Progress stays on one line (spinner updates in place)
18
+ * - No emojis
19
+ * - Background colors for section headers
20
+ * - Minimal output
21
+ * - Supports scrolling task lines (max-lines)
22
+ */
23
+ class Output {
24
+ constructor() {
25
+ _Output_instances.add(this);
26
+ this.spinner = null;
27
+ this.taskStartTime = null;
28
+ this.taskOriginalMessage = null; // Original task message for done()
29
+ this.taskCurrentMessage = null; // Current display message (can be updated)
30
+ this.taskLines = []; // Lines written during active task
31
+ this.taskMaxLines = 0; // 0 = unlimited
32
+ }
33
+ /**
34
+ * Get the singleton instance
35
+ */
36
+ static getInstance() {
37
+ if (!Output.instance) {
38
+ Output.instance = new Output();
39
+ }
40
+ return Output.instance;
41
+ }
42
+ /**
43
+ * Reset the singleton (useful for testing)
44
+ */
45
+ static reset() {
46
+ if (Output.instance?.spinner) {
47
+ Output.instance.spinner.stop();
48
+ Output.instance.spinner.clear();
49
+ }
50
+ Output.instance = null;
51
+ }
52
+ /**
53
+ * Start a task with spinner - updates in place
54
+ * Completes any previous task before starting the new one
55
+ * @param message - The task message
56
+ * @param maxLines - Maximum number of task lines to show (0 = unlimited, lines scroll)
57
+ */
58
+ task(message, maxLines = 0) {
59
+ // Complete any existing task first
60
+ if (this.spinner) {
61
+ this.done();
62
+ }
63
+ this.taskStartTime = Date.now();
64
+ this.taskOriginalMessage = message;
65
+ this.taskCurrentMessage = message;
66
+ this.taskMaxLines = maxLines;
67
+ this.taskLines = [];
68
+ this.spinner = (0, ora_1.default)(message).start();
69
+ }
70
+ /**
71
+ * Update spinner text (stays on same line)
72
+ */
73
+ update(message) {
74
+ if (this.spinner) {
75
+ this.taskCurrentMessage = message;
76
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_updateTaskDisplay).call(this);
77
+ }
78
+ }
79
+ /**
80
+ * Add a line to the active task (appears below spinner, scrolls if max-lines set)
81
+ * Lines are dimmed and temporary - they disappear when task completes unless kept
82
+ * If no task is active, displays as a regular log message
83
+ */
84
+ taskLine(message, keepOnComplete = false) {
85
+ if (!this.spinner) {
86
+ // No active task, just log normally as regular output
87
+ this.info(message);
88
+ return;
89
+ }
90
+ // Add to task lines buffer with keep flag
91
+ this.taskLines.push(keepOnComplete ? `[keep]${message}` : message);
92
+ // If max lines set, trim from the start (scroll)
93
+ if (this.taskMaxLines > 0 && this.taskLines.length > this.taskMaxLines) {
94
+ this.taskLines = this.taskLines.slice(-this.taskMaxLines);
95
+ }
96
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_updateTaskDisplay).call(this);
97
+ }
98
+ /**
99
+ * Clear all task lines (useful when you want to reset the scrolling window)
100
+ */
101
+ clearTaskLines() {
102
+ this.taskLines = [];
103
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_updateTaskDisplay).call(this);
104
+ }
105
+ /**
106
+ * Complete task with optional duration display
107
+ * Defaults to showing the original task message with duration
108
+ * Task lines marked with keepOnComplete will be preserved, others are cleared
109
+ */
110
+ done(message, showTime = true) {
111
+ if (!this.spinner)
112
+ return;
113
+ let text = message || this.taskOriginalMessage || "done";
114
+ if (showTime && this.taskStartTime) {
115
+ const durationMs = Date.now() - this.taskStartTime;
116
+ const durationText = (() => {
117
+ switch (true) {
118
+ case durationMs < 1000:
119
+ return `${durationMs}ms`;
120
+ case durationMs < 2000:
121
+ return `${(durationMs / 1000).toFixed(2)}s`;
122
+ default:
123
+ return `${(durationMs / 1000).toFixed(1)}s`;
124
+ }
125
+ })();
126
+ text += chalk_1.default.dim(` (${durationText})`);
127
+ }
128
+ // Clear multiline text and set to just completion message
129
+ this.spinner.text = text;
130
+ this.spinner.succeed();
131
+ this.spinner = null;
132
+ // Print kept task lines after completion
133
+ const keptLines = this.taskLines.filter((line) => line.startsWith("[keep]"));
134
+ for (const line of keptLines) {
135
+ console.log(chalk_1.default.dim(` ${line.slice(6)}`));
136
+ }
137
+ this.taskStartTime = null;
138
+ this.taskOriginalMessage = null;
139
+ this.taskCurrentMessage = null;
140
+ this.taskLines = [];
141
+ this.taskMaxLines = 0;
142
+ }
143
+ /**
144
+ * Show an object as a table of key-value pairs
145
+ * Filters out undefined values and applies optional transforms
146
+ * Automatically calculates key padding from max key length
147
+ */
148
+ obj(obj, keyTransform, valueTransform) {
149
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
150
+ // Filter out undefined values and apply key transform
151
+ const entries = [];
152
+ for (const [key, value] of Object.entries(obj)) {
153
+ if (value === undefined)
154
+ continue;
155
+ const displayKey = keyTransform ? keyTransform(key) : key;
156
+ entries.push([key, displayKey, value]);
157
+ }
158
+ // Calculate max key length for padding
159
+ const maxKeyLength = Math.max(...entries.map(([, displayKey]) => displayKey.length));
160
+ // Print each entry
161
+ for (const [key, displayKey, value] of entries) {
162
+ const displayValue = valueTransform
163
+ ? valueTransform(value, key)
164
+ : String(value);
165
+ const keyFormatted = chalk_1.default.dim(displayKey.padEnd(maxKeyLength + 2));
166
+ console.log(`${keyFormatted}${displayValue}`);
167
+ }
168
+ }
169
+ /**
170
+ * Display array as bulleted list
171
+ * Each item shown with dim bullet and white text
172
+ */
173
+ arr(items) {
174
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
175
+ for (const item of items) {
176
+ const bullet = chalk_1.default.dim("• ");
177
+ console.log(`${bullet}${String(item)}`);
178
+ }
179
+ }
180
+ /**
181
+ * Show plain message with optional color
182
+ */
183
+ log(message, color) {
184
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
185
+ if (color) {
186
+ const colorFn = color === "dim" ? chalk_1.default.dim : chalk_1.default[color];
187
+ console.log(colorFn(message));
188
+ }
189
+ else {
190
+ console.log(message);
191
+ }
192
+ }
193
+ /**
194
+ * Show success message (green text)
195
+ */
196
+ success(message) {
197
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
198
+ console.log(chalk_1.default.green(message));
199
+ }
200
+ /**
201
+ * Show success block (green background label + optional message)
202
+ */
203
+ successBlock(label, message = "") {
204
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
205
+ console.log(`\n${chalk_1.default.bgGreen.black(` ${label} `)}${message && ` ${message}`}`);
206
+ }
207
+ /**
208
+ * Show success message (green text)
209
+ */
210
+ spicy(message) {
211
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
212
+ console.log(chalk_1.default.cyan(message));
213
+ }
214
+ /**
215
+ * Show success block (green background label + optional message)
216
+ */
217
+ spicyBlock(label, message = "") {
218
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
219
+ console.log(`\n${chalk_1.default.bgCyan.black(` ${label} `)}${message && ` ${message}`}`);
220
+ }
221
+ /**
222
+ * Show message with rainbow gradient
223
+ */
224
+ rainbow(message) {
225
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
226
+ // Rainbow colors in order
227
+ const colors = [
228
+ chalk_1.default.red,
229
+ chalk_1.default.rgb(255, 165, 0), // orange
230
+ chalk_1.default.yellow,
231
+ chalk_1.default.green,
232
+ chalk_1.default.cyan,
233
+ chalk_1.default.blue,
234
+ chalk_1.default.magenta,
235
+ ];
236
+ const chars = message.split("");
237
+ const colorCount = colors.length;
238
+ // Spread colors across the string
239
+ const rainbow = chars
240
+ .map((char, i) => {
241
+ // Calculate which color to use based on position
242
+ const colorIndex = Math.floor((i / chars.length) * colorCount);
243
+ const color = colors[Math.min(colorIndex, colorCount - 1)];
244
+ return color(char);
245
+ })
246
+ .join("");
247
+ console.log(rainbow);
248
+ }
249
+ /**
250
+ * Show info message (dim text)
251
+ */
252
+ info(message) {
253
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
254
+ console.log(chalk_1.default.dim(message));
255
+ }
256
+ /**
257
+ * Show info block (grey background label + optional message)
258
+ */
259
+ infoBlock(label, message = "") {
260
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
261
+ console.log(`\n${chalk_1.default.bgGrey.white(` ${label} `)}${message && ` ${message}`}`);
262
+ }
263
+ /**
264
+ * Show error message (red text) - fails spinner if running
265
+ */
266
+ error(message) {
267
+ if (this.spinner) {
268
+ this.spinner.fail("failed");
269
+ this.spinner = null;
270
+ this.taskStartTime = null;
271
+ this.taskOriginalMessage = null;
272
+ this.taskCurrentMessage = null;
273
+ }
274
+ console.error(chalk_1.default.red(message instanceof Error
275
+ ? message.message
276
+ : message instanceof Object
277
+ ? JSON.stringify(message)
278
+ : String(message)));
279
+ }
280
+ /**
281
+ * Show error block (red background label + optional message) - fails spinner if running
282
+ */
283
+ errorBlock(label, message = "") {
284
+ if (this.spinner) {
285
+ this.spinner.fail("failed");
286
+ this.spinner = null;
287
+ this.taskStartTime = null;
288
+ this.taskOriginalMessage = null;
289
+ this.taskCurrentMessage = null;
290
+ }
291
+ console.error(`\n${chalk_1.default.bgRed.white(` ${label} `)}${message && ` ${message}`}`);
292
+ }
293
+ /**
294
+ * Show warning message (yellow text)
295
+ */
296
+ warn(message) {
297
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
298
+ console.log(chalk_1.default.yellow(message));
299
+ }
300
+ /**
301
+ * Show warning block (yellow background label + optional message)
302
+ */
303
+ warnBlock(label, message = "") {
304
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
305
+ console.log(`\n${chalk_1.default.bgYellow.black(` ${label} `)}${message && ` ${message}`}`);
306
+ }
307
+ /**
308
+ * Show detailed error information and exit the program
309
+ * Use this when an unexpected/unrecoverable error occurs
310
+ * Shows error message and stack trace, then exits
311
+ */
312
+ crash(error, exitCode = 1) {
313
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
314
+ if (error instanceof Error) {
315
+ // Error type and message
316
+ console.error(chalk_1.default.red(`${error.name}: ${error.message}`));
317
+ // Stack trace
318
+ if (error.stack) {
319
+ console.error("");
320
+ console.error(chalk_1.default.dim("Stack trace:"));
321
+ const stackLines = error.stack.split("\n").slice(1); // Skip first line (error message)
322
+ stackLines.forEach((line) => console.error(chalk_1.default.dim(` ${line.trim()}`)));
323
+ }
324
+ }
325
+ else {
326
+ console.error(chalk_1.default.red(String(error)));
327
+ }
328
+ process.exit(exitCode);
329
+ }
330
+ /**
331
+ * Exit with code
332
+ */
333
+ exit(code) {
334
+ __classPrivateFieldGet(this, _Output_instances, "m", _Output_stopTask).call(this);
335
+ process.exit(code || 0);
336
+ }
337
+ }
338
+ exports.Output = Output;
339
+ _Output_instances = new WeakSet(), _Output_updateTaskDisplay = function _Output_updateTaskDisplay() {
340
+ if (!this.spinner)
341
+ return;
342
+ const currentText = this.taskCurrentMessage || this.spinner.text.split("\n")[0] || "";
343
+ // If no task lines, show just the spinner message
344
+ if (this.taskLines.length === 0) {
345
+ this.spinner.text = currentText;
346
+ return;
347
+ }
348
+ // Build multiline text: spinner message + task lines below
349
+ const taskLinesText = this.taskLines
350
+ .map((line) => {
351
+ const cleanLine = line.startsWith("[keep]") ? line.slice(6) : line;
352
+ return chalk_1.default.dim(` ${cleanLine}`);
353
+ })
354
+ .join("\n");
355
+ // Set spinner text to include task lines (ora handles multiline rendering)
356
+ this.spinner.text = `${currentText}\n${taskLinesText}`;
357
+ }, _Output_stopTask = function _Output_stopTask() {
358
+ if (this.spinner) {
359
+ this.spinner.stop();
360
+ this.spinner.clear();
361
+ this.spinner = null;
362
+ }
363
+ this.taskStartTime = null;
364
+ this.taskOriginalMessage = null;
365
+ this.taskCurrentMessage = null;
366
+ this.taskLines = [];
367
+ this.taskMaxLines = 0;
368
+ };
369
+ Output.instance = null;
370
+ /**
371
+ * Global singleton output instance
372
+ * Import and use this anywhere in your code
373
+ */
374
+ exports.out = Output.getInstance();
375
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { type Repo } from "@automerge/automerge-repo";
2
+ import { DirectoryConfig } from "../types";
3
+ /**
4
+ * Create an Automerge repository with configuration-based setup.
5
+ *
6
+ * When `sub` is true, uses the Subduction sync backend built into
7
+ * automerge-repo. The Repo manages its own SubductionSource internally —
8
+ * we just pass `subductionWebsocketEndpoints` and the Repo handles
9
+ * connection management, sync, and retries.
10
+ *
11
+ * When `sub` is false (default), uses the traditional WebSocket network
12
+ * adapter for sync via the automerge sync server.
13
+ */
14
+ export declare function createRepo(workingDir: string, config: DirectoryConfig, sub?: boolean): Promise<Repo>;
15
+ //# sourceMappingURL=repo-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-factory.d.ts","sourceRoot":"","sources":["../../src/utils/repo-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,IAAI,EAGT,MAAM,2BAA2B,CAAA;AAIlC,OAAO,EAAC,eAAe,EAAC,MAAM,UAAU,CAAA;AA0ExC;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAC/B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,GAAG,GAAE,OAAe,GAClB,OAAO,CAAC,IAAI,CAAC,CA+Cf"}