pushwork 1.1.8 → 1.2.2

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 (84) hide show
  1. package/ARCHITECTURE-ACCORDING-TO-CLAUDE.md +17 -11
  2. package/CLAUDE.md +46 -1
  3. package/README.md +18 -4
  4. package/dist/cli.js +45 -4
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands.d.ts +1 -0
  7. package/dist/commands.d.ts.map +1 -1
  8. package/dist/commands.js +151 -38
  9. package/dist/commands.js.map +1 -1
  10. package/dist/core/change-detection.js +2 -2
  11. package/dist/core/change-detection.js.map +1 -1
  12. package/dist/core/config.d.ts.map +1 -1
  13. package/dist/core/config.js +3 -0
  14. package/dist/core/config.js.map +1 -1
  15. package/dist/core/move-detection.d.ts.map +1 -1
  16. package/dist/core/move-detection.js +4 -1
  17. package/dist/core/move-detection.js.map +1 -1
  18. package/dist/core/sync-engine.d.ts +7 -3
  19. package/dist/core/sync-engine.d.ts.map +1 -1
  20. package/dist/core/sync-engine.js +40 -14
  21. package/dist/core/sync-engine.js.map +1 -1
  22. package/dist/types/config.d.ts +4 -0
  23. package/dist/types/config.d.ts.map +1 -1
  24. package/dist/types/config.js +2 -1
  25. package/dist/types/config.js.map +1 -1
  26. package/dist/utils/content.js +1 -1
  27. package/dist/utils/content.js.map +1 -1
  28. package/dist/utils/network-sync.d.ts +1 -2
  29. package/dist/utils/network-sync.d.ts.map +1 -1
  30. package/dist/utils/network-sync.js +76 -7
  31. package/dist/utils/network-sync.js.map +1 -1
  32. package/dist/utils/output.js +7 -7
  33. package/dist/utils/output.js.map +1 -1
  34. package/dist/utils/repo-factory.d.ts +11 -3
  35. package/dist/utils/repo-factory.d.ts.map +1 -1
  36. package/dist/utils/repo-factory.js +112 -8
  37. package/dist/utils/repo-factory.js.map +1 -1
  38. package/flake.lock +128 -0
  39. package/flake.nix +66 -0
  40. package/package.json +98 -96
  41. package/scripts/roundtrip-test.sh +35 -0
  42. package/src/cli.ts +53 -6
  43. package/src/commands.ts +150 -26
  44. package/src/core/change-detection.ts +2 -2
  45. package/src/core/config.ts +4 -0
  46. package/src/core/move-detection.ts +3 -1
  47. package/src/core/sync-engine.ts +40 -15
  48. package/src/types/config.ts +4 -0
  49. package/src/utils/content.ts +1 -1
  50. package/src/utils/network-sync.ts +92 -8
  51. package/src/utils/output.ts +7 -7
  52. package/src/utils/repo-factory.ts +124 -10
  53. package/test/integration/clone-test.sh +0 -0
  54. package/test/integration/conflict-resolution-test.sh +0 -0
  55. package/test/integration/deletion-behavior-test.sh +0 -0
  56. package/test/integration/deletion-sync-test-simple.sh +0 -0
  57. package/test/integration/deletion-sync-test.sh +0 -0
  58. package/test/integration/full-integration-test.sh +0 -0
  59. package/test/integration/manual-sync-test.sh +0 -0
  60. package/test/integration/sub-flag.test.ts +187 -0
  61. package/test/run-tests.sh +0 -0
  62. package/test/unit/network-sync-sub.test.ts +144 -0
  63. package/test/unit/repo-factory.test.ts +111 -0
  64. package/test/unit/subduction-config.test.ts +69 -0
  65. package/dist/cli/commands.d.ts +0 -71
  66. package/dist/cli/commands.d.ts.map +0 -1
  67. package/dist/cli/commands.js +0 -794
  68. package/dist/cli/commands.js.map +0 -1
  69. package/dist/cli/index.d.ts +0 -2
  70. package/dist/cli/index.d.ts.map +0 -1
  71. package/dist/cli/index.js +0 -19
  72. package/dist/cli/index.js.map +0 -1
  73. package/dist/config/index.d.ts +0 -71
  74. package/dist/config/index.d.ts.map +0 -1
  75. package/dist/config/index.js +0 -314
  76. package/dist/config/index.js.map +0 -1
  77. package/dist/utils/content-similarity.d.ts +0 -53
  78. package/dist/utils/content-similarity.d.ts.map +0 -1
  79. package/dist/utils/content-similarity.js +0 -155
  80. package/dist/utils/content-similarity.js.map +0 -1
  81. package/dist/utils/node-polyfills.d.ts +0 -9
  82. package/dist/utils/node-polyfills.d.ts.map +0 -1
  83. package/dist/utils/node-polyfills.js +0 -9
  84. package/dist/utils/node-polyfills.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from "./commands";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC"}
package/dist/cli/index.js DELETED
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- // CLI commands
18
- __exportStar(require("./commands"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,eAAe;AACf,6CAA2B"}
@@ -1,71 +0,0 @@
1
- import { GlobalConfig, DirectoryConfig } from "../types";
2
- /**
3
- * Configuration manager for pushwork
4
- */
5
- export declare class ConfigManager {
6
- private workingDir?;
7
- private static readonly GLOBAL_CONFIG_DIR;
8
- private static readonly CONFIG_FILENAME;
9
- private static readonly LOCAL_CONFIG_DIR;
10
- constructor(workingDir?: string | undefined);
11
- /**
12
- * Get global configuration path
13
- */
14
- private getGlobalConfigPath;
15
- /**
16
- * Get local configuration path
17
- */
18
- private getLocalConfigPath;
19
- /**
20
- * Load global configuration
21
- */
22
- loadGlobal(): Promise<GlobalConfig | null>;
23
- /**
24
- * Save global configuration
25
- */
26
- saveGlobal(config: GlobalConfig): Promise<void>;
27
- /**
28
- * Load local/directory configuration
29
- */
30
- load(): Promise<DirectoryConfig | null>;
31
- /**
32
- * Save local/directory configuration
33
- */
34
- save(config: DirectoryConfig): Promise<void>;
35
- /**
36
- * Get merged configuration (global + local)
37
- */
38
- getMerged(): Promise<DirectoryConfig>;
39
- /**
40
- * Merge two configuration objects
41
- */
42
- private mergeConfigs;
43
- /**
44
- * Create default global configuration
45
- */
46
- createDefaultGlobal(): Promise<void>;
47
- /**
48
- * Check if global configuration exists
49
- */
50
- globalConfigExists(): Promise<boolean>;
51
- /**
52
- * Check if local configuration exists
53
- */
54
- localConfigExists(): Promise<boolean>;
55
- /**
56
- * Get configuration value by path (e.g., 'sync.auto_sync')
57
- */
58
- getValue(keyPath: string): Promise<any>;
59
- /**
60
- * Set configuration value by path
61
- */
62
- setValue(keyPath: string, value: any): Promise<void>;
63
- /**
64
- * Validate configuration
65
- */
66
- validate(config: DirectoryConfig): {
67
- valid: boolean;
68
- errors: string[];
69
- };
70
- }
71
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGzD;;GAEG;AACH,qBAAa,aAAa;IAKZ,OAAO,CAAC,UAAU,CAAC;IAJ/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAe;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAe;gBAEnC,UAAU,CAAC,EAAE,MAAM,YAAA;IAEvC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAehD;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAmB7C;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlD;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAqC3C;;OAEG;IACH,OAAO,CAAC,YAAY;IAmDpB;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B1C;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAK3C;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAiB7C;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB1D;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;CAgCxE"}
@@ -1,314 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.ConfigManager = void 0;
37
- const fs = __importStar(require("fs/promises"));
38
- const path = __importStar(require("path"));
39
- const os = __importStar(require("os"));
40
- const utils_1 = require("../utils");
41
- /**
42
- * Configuration manager for pushwork
43
- */
44
- class ConfigManager {
45
- constructor(workingDir) {
46
- this.workingDir = workingDir;
47
- }
48
- /**
49
- * Get global configuration path
50
- */
51
- getGlobalConfigPath() {
52
- return path.join(os.homedir(), ConfigManager.GLOBAL_CONFIG_DIR, ConfigManager.CONFIG_FILENAME);
53
- }
54
- /**
55
- * Get local configuration path
56
- */
57
- getLocalConfigPath() {
58
- if (!this.workingDir) {
59
- throw new Error("Working directory not set for local config");
60
- }
61
- return path.join(this.workingDir, ConfigManager.LOCAL_CONFIG_DIR, ConfigManager.CONFIG_FILENAME);
62
- }
63
- /**
64
- * Load global configuration
65
- */
66
- async loadGlobal() {
67
- try {
68
- const configPath = this.getGlobalConfigPath();
69
- if (!(await (0, utils_1.pathExists)(configPath))) {
70
- return null;
71
- }
72
- const content = await fs.readFile(configPath, "utf8");
73
- return JSON.parse(content);
74
- }
75
- catch (error) {
76
- console.warn(`Failed to load global config: ${error}`);
77
- return null;
78
- }
79
- }
80
- /**
81
- * Save global configuration
82
- */
83
- async saveGlobal(config) {
84
- try {
85
- const configPath = this.getGlobalConfigPath();
86
- await (0, utils_1.ensureDirectoryExists)(path.dirname(configPath));
87
- const content = JSON.stringify(config, null, 2);
88
- await fs.writeFile(configPath, content, "utf8");
89
- }
90
- catch (error) {
91
- throw new Error(`Failed to save global config: ${error}`);
92
- }
93
- }
94
- /**
95
- * Load local/directory configuration
96
- */
97
- async load() {
98
- if (!this.workingDir) {
99
- return null;
100
- }
101
- try {
102
- const configPath = this.getLocalConfigPath();
103
- if (!(await (0, utils_1.pathExists)(configPath))) {
104
- return null;
105
- }
106
- const content = await fs.readFile(configPath, "utf8");
107
- return JSON.parse(content);
108
- }
109
- catch (error) {
110
- console.warn(`Failed to load local config: ${error}`);
111
- return null;
112
- }
113
- }
114
- /**
115
- * Save local/directory configuration
116
- */
117
- async save(config) {
118
- if (!this.workingDir) {
119
- throw new Error("Working directory not set for local config");
120
- }
121
- try {
122
- const configPath = this.getLocalConfigPath();
123
- await (0, utils_1.ensureDirectoryExists)(path.dirname(configPath));
124
- const content = JSON.stringify(config, null, 2);
125
- await fs.writeFile(configPath, content, "utf8");
126
- }
127
- catch (error) {
128
- throw new Error(`Failed to save local config: ${error}`);
129
- }
130
- }
131
- /**
132
- * Get merged configuration (global + local)
133
- */
134
- async getMerged() {
135
- const globalConfig = await this.loadGlobal();
136
- const localConfig = await this.load();
137
- // Create default configuration
138
- const defaultConfig = {
139
- sync_enabled: true,
140
- sync_server_storage_id: "3760df37-a4c6-4f66-9ecd-732039a9385d",
141
- defaults: {
142
- exclude_patterns: [".git", "node_modules", "*.tmp", ".pushwork"],
143
- large_file_threshold: "100MB",
144
- },
145
- diff: {
146
- show_binary: false,
147
- },
148
- sync: {
149
- move_detection_threshold: 0.8,
150
- prompt_threshold: 0.5,
151
- auto_sync: false,
152
- parallel_operations: 4,
153
- },
154
- };
155
- // Merge configurations: default < global < local
156
- let merged = { ...defaultConfig };
157
- if (globalConfig) {
158
- merged = this.mergeConfigs(merged, globalConfig);
159
- }
160
- if (localConfig) {
161
- merged = this.mergeConfigs(merged, localConfig);
162
- }
163
- return merged;
164
- }
165
- /**
166
- * Merge two configuration objects
167
- */
168
- mergeConfigs(base, override) {
169
- const merged = { ...base };
170
- if ("sync_server" in override && override.sync_server !== undefined) {
171
- merged.sync_server = override.sync_server;
172
- }
173
- if ("sync_server_storage_id" in override &&
174
- override.sync_server_storage_id !== undefined) {
175
- merged.sync_server_storage_id = override.sync_server_storage_id;
176
- }
177
- if ("sync_enabled" in override && override.sync_enabled !== undefined) {
178
- merged.sync_enabled = override.sync_enabled;
179
- }
180
- // Handle GlobalConfig structure
181
- if ("exclude_patterns" in override && override.exclude_patterns) {
182
- merged.defaults.exclude_patterns = override.exclude_patterns;
183
- }
184
- if ("large_file_threshold" in override && override.large_file_threshold) {
185
- merged.defaults.large_file_threshold = override.large_file_threshold;
186
- }
187
- // Handle DirectoryConfig structure
188
- if ("defaults" in override && override.defaults) {
189
- merged.defaults = { ...merged.defaults, ...override.defaults };
190
- }
191
- if ("diff" in override && override.diff) {
192
- // Merge diff settings, ensuring show_binary has a default
193
- merged.diff = {
194
- ...merged.diff,
195
- ...override.diff,
196
- show_binary: override.diff.show_binary ?? merged.diff.show_binary,
197
- };
198
- }
199
- if ("sync" in override && override.sync) {
200
- merged.sync = { ...merged.sync, ...override.sync };
201
- }
202
- return merged;
203
- }
204
- /**
205
- * Create default global configuration
206
- */
207
- async createDefaultGlobal() {
208
- const defaultGlobal = {
209
- exclude_patterns: [
210
- ".git",
211
- "node_modules",
212
- "*.tmp",
213
- ".DS_Store",
214
- ".pushwork",
215
- ],
216
- large_file_threshold: "100MB",
217
- sync_server: "wss://sync3.automerge.org",
218
- sync_server_storage_id: "3760df37-a4c6-4f66-9ecd-732039a9385d",
219
- diff: {
220
- show_binary: false,
221
- },
222
- sync: {
223
- move_detection_threshold: 0.8,
224
- prompt_threshold: 0.5,
225
- auto_sync: false,
226
- parallel_operations: 4,
227
- },
228
- };
229
- await this.saveGlobal(defaultGlobal);
230
- }
231
- /**
232
- * Check if global configuration exists
233
- */
234
- async globalConfigExists() {
235
- return await (0, utils_1.pathExists)(this.getGlobalConfigPath());
236
- }
237
- /**
238
- * Check if local configuration exists
239
- */
240
- async localConfigExists() {
241
- if (!this.workingDir)
242
- return false;
243
- return await (0, utils_1.pathExists)(this.getLocalConfigPath());
244
- }
245
- /**
246
- * Get configuration value by path (e.g., 'sync.auto_sync')
247
- */
248
- async getValue(keyPath) {
249
- const config = await this.getMerged();
250
- const keys = keyPath.split(".");
251
- let value = config;
252
- for (const key of keys) {
253
- if (value && typeof value === "object" && key in value) {
254
- value = value[key];
255
- }
256
- else {
257
- return undefined;
258
- }
259
- }
260
- return value;
261
- }
262
- /**
263
- * Set configuration value by path
264
- */
265
- async setValue(keyPath, value) {
266
- const config = (await this.load()) || {};
267
- const keys = keyPath.split(".");
268
- let current = config;
269
- // Navigate to the parent of the target key
270
- for (let i = 0; i < keys.length - 1; i++) {
271
- const key = keys[i];
272
- if (!(key in current) || typeof current[key] !== "object") {
273
- current[key] = {};
274
- }
275
- current = current[key];
276
- }
277
- // Set the value
278
- const finalKey = keys[keys.length - 1];
279
- current[finalKey] = value;
280
- await this.save(config);
281
- }
282
- /**
283
- * Validate configuration
284
- */
285
- validate(config) {
286
- const errors = [];
287
- if (config.sync?.move_detection_threshold !== undefined) {
288
- if (config.sync.move_detection_threshold < 0 ||
289
- config.sync.move_detection_threshold > 1) {
290
- errors.push("move_detection_threshold must be between 0 and 1");
291
- }
292
- }
293
- if (config.sync?.prompt_threshold !== undefined) {
294
- if (config.sync.prompt_threshold < 0 ||
295
- config.sync.prompt_threshold > 1) {
296
- errors.push("prompt_threshold must be between 0 and 1");
297
- }
298
- }
299
- if (config.sync?.parallel_operations !== undefined) {
300
- if (config.sync.parallel_operations < 1) {
301
- errors.push("parallel_operations must be at least 1");
302
- }
303
- }
304
- return {
305
- valid: errors.length === 0,
306
- errors,
307
- };
308
- }
309
- }
310
- exports.ConfigManager = ConfigManager;
311
- ConfigManager.GLOBAL_CONFIG_DIR = ".pushwork";
312
- ConfigManager.CONFIG_FILENAME = "config.json";
313
- ConfigManager.LOCAL_CONFIG_DIR = ".pushwork";
314
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- /**
2
- * Content similarity calculation for move detection
3
- */
4
- export declare class ContentSimilarity {
5
- private static readonly CHUNK_SIZE;
6
- private static readonly AUTO_THRESHOLD;
7
- private static readonly PROMPT_THRESHOLD;
8
- /**
9
- * Calculate similarity between two content pieces
10
- */
11
- static calculateSimilarity(content1: string | Uint8Array, content2: string | Uint8Array): Promise<number>;
12
- /**
13
- * Check if two content pieces are identical
14
- */
15
- private static areIdentical;
16
- /**
17
- * Calculate similarity for small files using full content
18
- */
19
- private static calculateFullSimilarity;
20
- /**
21
- * Calculate similarity for large files using sampling
22
- */
23
- private static calculateSampledSimilarity;
24
- /**
25
- * Get representative samples from content
26
- */
27
- private static getSamples;
28
- /**
29
- * Calculate Levenshtein similarity (0-1 scale)
30
- */
31
- private static levenshteinSimilarity;
32
- /**
33
- * Calculate Levenshtein distance
34
- */
35
- private static levenshteinDistance;
36
- /**
37
- * Convert buffer to string for comparison
38
- */
39
- private static bufferToString;
40
- /**
41
- * Determine confidence level based on similarity score
42
- */
43
- static getConfidenceLevel(similarity: number): "auto" | "prompt" | "low";
44
- /**
45
- * Should auto-apply move based on similarity
46
- */
47
- static shouldAutoApply(similarity: number): boolean;
48
- /**
49
- * Should prompt user for move confirmation
50
- */
51
- static shouldPromptUser(similarity: number): boolean;
52
- }
53
- //# sourceMappingURL=content-similarity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"content-similarity.d.ts","sourceRoot":"","sources":["../../src/utils/content-similarity.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAQ;IAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAO;IAE/C;;OAEG;WACU,mBAAmB,CAC9B,QAAQ,EAAE,MAAM,GAAG,UAAU,EAC7B,QAAQ,EAAE,MAAM,GAAG,UAAU,GAC5B,OAAO,CAAC,MAAM,CAAC;IA0BlB;;OAEG;mBACkB,YAAY;IASjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAYtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAkBzC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAwBzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAUpC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAsBlC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAO7B;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK;IAUxE;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAInD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CAKrD"}