flow-frame-core 0.1.0 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/README.md +32 -0
  2. package/TOOLS.md +1080 -0
  3. package/dist/browerRoutes.d.ts.map +1 -1
  4. package/dist/browerRoutes.js.map +1 -1
  5. package/dist/browser-utils/utils.d.ts.map +1 -1
  6. package/dist/browser-utils/utils.js +1 -0
  7. package/dist/browser-utils/utils.js.map +1 -1
  8. package/dist/controllers/browserController.d.ts +28 -0
  9. package/dist/controllers/browserController.d.ts.map +1 -0
  10. package/dist/controllers/browserController.js +45 -0
  11. package/dist/controllers/browserController.js.map +1 -0
  12. package/dist/controllers/extensionController.d.ts +39 -0
  13. package/dist/controllers/extensionController.d.ts.map +1 -0
  14. package/dist/controllers/extensionController.js +29 -0
  15. package/dist/controllers/extensionController.js.map +1 -0
  16. package/dist/controllers/promptController.d.ts +22 -0
  17. package/dist/controllers/promptController.d.ts.map +1 -0
  18. package/dist/controllers/promptController.js +59 -0
  19. package/dist/controllers/promptController.js.map +1 -0
  20. package/dist/controllers/promptLibraryController.d.ts +16 -0
  21. package/dist/controllers/promptLibraryController.d.ts.map +1 -0
  22. package/dist/controllers/promptLibraryController.js +60 -0
  23. package/dist/controllers/promptLibraryController.js.map +1 -0
  24. package/dist/controllers/standardController.d.ts +38 -0
  25. package/dist/controllers/standardController.d.ts.map +1 -0
  26. package/dist/controllers/standardController.js +79 -0
  27. package/dist/controllers/standardController.js.map +1 -0
  28. package/dist/controllers/workflowController.d.ts +19 -0
  29. package/dist/controllers/workflowController.d.ts.map +1 -0
  30. package/dist/controllers/workflowController.js +94 -0
  31. package/dist/controllers/workflowController.js.map +1 -0
  32. package/dist/filter-gmail-poller/filter-gmail-poller.d.ts.map +1 -1
  33. package/dist/filter-gmail-poller/filter-gmail-poller.js +1 -0
  34. package/dist/filter-gmail-poller/filter-gmail-poller.js.map +1 -1
  35. package/dist/index.d.ts +8 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +46 -0
  38. package/dist/index.js.map +1 -1
  39. package/dist/operations/blender-ops.d.ts.map +1 -1
  40. package/dist/operations/blender-ops.js +0 -1
  41. package/dist/operations/blender-ops.js.map +1 -1
  42. package/dist/operations.d.ts +1 -1
  43. package/dist/operations.d.ts.map +1 -1
  44. package/dist/operations.js +1 -0
  45. package/dist/operations.js.map +1 -1
  46. package/dist/process.d.ts.map +1 -1
  47. package/dist/process.js +1 -0
  48. package/dist/process.js.map +1 -1
  49. package/dist/server.js +32 -1
  50. package/dist/services/audioService.js.map +1 -1
  51. package/dist/services/autoPromptOptimizer.d.ts.map +1 -1
  52. package/dist/services/autoPromptOptimizer.js +1 -0
  53. package/dist/services/autoPromptOptimizer.js.map +1 -1
  54. package/dist/services/chainExecutor.d.ts +2 -1
  55. package/dist/services/chainExecutor.d.ts.map +1 -1
  56. package/dist/services/chainExecutor.js +105 -129
  57. package/dist/services/chainExecutor.js.map +1 -1
  58. package/dist/services/configuration/executor.d.ts.map +1 -1
  59. package/dist/services/configuration/executor.js +1 -0
  60. package/dist/services/configuration/executor.js.map +1 -1
  61. package/dist/services/error.d.ts.map +1 -1
  62. package/dist/services/error.js +1 -0
  63. package/dist/services/error.js.map +1 -1
  64. package/dist/services/executor.d.ts.map +1 -1
  65. package/dist/services/executor.js +110 -51
  66. package/dist/services/executor.js.map +1 -1
  67. package/dist/services/extractPdf.d.ts.map +1 -1
  68. package/dist/services/extractPdf.js +1 -0
  69. package/dist/services/extractPdf.js.map +1 -1
  70. package/dist/services/polyfill_canvas.js +1 -0
  71. package/dist/services/polyfill_canvas.js.map +1 -1
  72. package/dist/services/runPrompt.d.ts +1 -1
  73. package/dist/services/runPrompt.d.ts.map +1 -1
  74. package/dist/services/runPrompt.js +1 -1
  75. package/dist/services/runPrompt.js.map +1 -1
  76. package/dist/services/self-learning/injest.d.ts.map +1 -1
  77. package/dist/services/self-learning/injest.js +1 -0
  78. package/dist/services/self-learning/injest.js.map +1 -1
  79. package/dist/services/self-learning/matcher.d.ts +1 -1
  80. package/dist/services/self-learning/recognize.d.ts.map +1 -1
  81. package/dist/services/self-learning/recognize.js +1 -0
  82. package/dist/services/self-learning/recognize.js.map +1 -1
  83. package/dist/services/stepByStepAiPlanner.d.ts.map +1 -1
  84. package/dist/services/stepByStepAiPlanner.js +1 -0
  85. package/dist/services/stepByStepAiPlanner.js.map +1 -1
  86. package/dist/services/uiMapPathFinder.d.ts.map +1 -1
  87. package/dist/services/uiMapPathFinder.js +1 -0
  88. package/dist/services/uiMapPathFinder.js.map +1 -1
  89. package/dist/services/uiMapService.d.ts.map +1 -1
  90. package/dist/services/uiMapService.js +1 -0
  91. package/dist/services/uiMapService.js.map +1 -1
  92. package/dist/services/uiPlanner.d.ts.map +1 -1
  93. package/dist/services/uiPlanner.js.map +1 -1
  94. package/dist/services/variableGenerator.d.ts +1 -1
  95. package/dist/services/variableGenerator.d.ts.map +1 -1
  96. package/dist/services/variableGenerator.js.map +1 -1
  97. package/dist/standardRoutes.d.ts.map +1 -1
  98. package/dist/standardRoutes.js +92 -108
  99. package/dist/standardRoutes.js.map +1 -1
  100. package/dist/storage.d.ts +6 -0
  101. package/dist/storage.d.ts.map +1 -1
  102. package/dist/storage.js +104 -23
  103. package/dist/storage.js.map +1 -1
  104. package/dist/storage.zachary.json +22 -0
  105. package/dist/suno_download.js +1 -1
  106. package/dist/suno_download.js.map +1 -1
  107. package/dist/utils.d.ts +8 -12
  108. package/dist/utils.d.ts.map +1 -1
  109. package/dist/utils.js +30 -1
  110. package/dist/utils.js.map +1 -1
  111. package/dist/workflowRoutes.d.ts.map +1 -1
  112. package/dist/workflowRoutes.js +28 -60
  113. package/dist/workflowRoutes.js.map +1 -1
  114. package/package.json +3 -2
  115. package/dist/augment-parallel.d.ts +0 -6
  116. package/dist/augment-parallel.d.ts.map +0 -1
  117. package/dist/augment-parallel.js +0 -128
  118. package/dist/augment-parallel.js.map +0 -1
  119. package/dist/augment-worker.d.ts +0 -2
  120. package/dist/augment-worker.d.ts.map +0 -1
  121. package/dist/augment-worker.js +0 -100
  122. package/dist/augment-worker.js.map +0 -1
  123. package/dist/capture_training_data_endpoints.d.ts +0 -158
  124. package/dist/capture_training_data_endpoints.d.ts.map +0 -1
  125. package/dist/capture_training_data_endpoints.js +0 -1812
  126. package/dist/capture_training_data_endpoints.js.map +0 -1
  127. package/dist/download.d.ts +0 -11
  128. package/dist/download.d.ts.map +0 -1
  129. package/dist/download.js +0 -31
  130. package/dist/download.js.map +0 -1
  131. package/dist/extension/background.d.ts +0 -2
  132. package/dist/extension/background.d.ts.map +0 -1
  133. package/dist/extension/background.js +0 -268
  134. package/dist/extension/background.js.map +0 -1
  135. package/dist/filter-gmail-poller/demo.d.ts +0 -2
  136. package/dist/filter-gmail-poller/demo.d.ts.map +0 -1
  137. package/dist/filter-gmail-poller/demo.js +0 -79
  138. package/dist/filter-gmail-poller/demo.js.map +0 -1
  139. package/dist/filter-gmail-poller/example-existing-app.d.ts +0 -2
  140. package/dist/filter-gmail-poller/example-existing-app.d.ts.map +0 -1
  141. package/dist/filter-gmail-poller/example-existing-app.js +0 -72
  142. package/dist/filter-gmail-poller/example-existing-app.js.map +0 -1
  143. package/dist/filter-gmail-poller/index.d.ts +0 -3
  144. package/dist/filter-gmail-poller/index.d.ts.map +0 -1
  145. package/dist/filter-gmail-poller/index.js +0 -18
  146. package/dist/filter-gmail-poller/index.js.map +0 -1
  147. package/dist/filter-gmail-poller/manual-test.d.ts +0 -2
  148. package/dist/filter-gmail-poller/manual-test.d.ts.map +0 -1
  149. package/dist/filter-gmail-poller/manual-test.js +0 -70
  150. package/dist/filter-gmail-poller/manual-test.js.map +0 -1
  151. package/dist/filter-gmail-poller/test.js +0 -69
  152. package/dist/gmail-poller/example.d.ts +0 -5
  153. package/dist/gmail-poller/example.d.ts.map +0 -1
  154. package/dist/gmail-poller/example.js +0 -83
  155. package/dist/gmail-poller/example.js.map +0 -1
  156. package/dist/gmail-poller/gmail-poller.d.ts +0 -82
  157. package/dist/gmail-poller/gmail-poller.d.ts.map +0 -1
  158. package/dist/gmail-poller/gmail-poller.js +0 -455
  159. package/dist/gmail-poller/gmail-poller.js.map +0 -1
  160. package/dist/gmail-poller/manual-test.d.ts +0 -2
  161. package/dist/gmail-poller/manual-test.d.ts.map +0 -1
  162. package/dist/gmail-poller/manual-test.js +0 -37
  163. package/dist/gmail-poller/manual-test.js.map +0 -1
  164. package/dist/gmail-poller/microsoft-email-example.d.ts +0 -8
  165. package/dist/gmail-poller/microsoft-email-example.d.ts.map +0 -1
  166. package/dist/gmail-poller/microsoft-email-example.js +0 -58
  167. package/dist/gmail-poller/microsoft-email-example.js.map +0 -1
  168. package/dist/gmail-poller/microsoft-email-poller.d.ts +0 -73
  169. package/dist/gmail-poller/microsoft-email-poller.d.ts.map +0 -1
  170. package/dist/gmail-poller/microsoft-email-poller.js +0 -346
  171. package/dist/gmail-poller/microsoft-email-poller.js.map +0 -1
  172. package/dist/gmail-poller/setup-auth.d.ts +0 -3
  173. package/dist/gmail-poller/setup-auth.d.ts.map +0 -1
  174. package/dist/gmail-poller/setup-auth.js +0 -36
  175. package/dist/gmail-poller/setup-auth.js.map +0 -1
  176. package/dist/gmail-poller/test.js +0 -36
  177. package/dist/inference/augment_levels.d.ts +0 -2
  178. package/dist/inference/augment_levels.d.ts.map +0 -1
  179. package/dist/inference/augment_levels.js.map +0 -1
  180. package/dist/inference/capture-overlay.d.ts +0 -13
  181. package/dist/inference/capture-overlay.d.ts.map +0 -1
  182. package/dist/inference/capture-overlay.js +0 -355
  183. package/dist/inference/capture-overlay.js.map +0 -1
  184. package/dist/playparser.d.ts +0 -2
  185. package/dist/playparser.d.ts.map +0 -1
  186. package/dist/playparser.js +0 -281
  187. package/dist/playparser.js.map +0 -1
  188. package/dist/services/agenticUiPlanner.d.ts +0 -27
  189. package/dist/services/agenticUiPlanner.d.ts.map +0 -1
  190. package/dist/services/agenticUiPlanner.js +0 -161
  191. package/dist/services/agenticUiPlanner.js.map +0 -1
  192. package/dist/services/autoPromptOptimizer.manual-test.d.ts +0 -2
  193. package/dist/services/autoPromptOptimizer.manual-test.d.ts.map +0 -1
  194. package/dist/services/autoPromptOptimizer.manual-test.js +0 -27
  195. package/dist/services/autoPromptOptimizer.manual-test.js.map +0 -1
  196. package/dist/services/generateJsTransformFromPrompt.d.ts +0 -11
  197. package/dist/services/generateJsTransformFromPrompt.d.ts.map +0 -1
  198. package/dist/services/generateJsTransformFromPrompt.js +0 -328
  199. package/dist/services/generateJsTransformFromPrompt.js.map +0 -1
  200. package/dist/services/promptRoutes.d.ts +0 -7
  201. package/dist/services/promptRoutes.d.ts.map +0 -1
  202. package/dist/services/promptRoutes.js.map +0 -1
  203. package/dist/services/schemaInference.d.ts +0 -2
  204. package/dist/services/schemaInference.d.ts.map +0 -1
  205. package/dist/services/schemaInference.js +0 -17
  206. package/dist/services/schemaInference.js.map +0 -1
  207. package/dist/services/self-learning/autolearn.d.ts +0 -23
  208. package/dist/services/self-learning/autolearn.d.ts.map +0 -1
  209. package/dist/services/self-learning/autolearn.js +0 -308
  210. package/dist/services/self-learning/autolearn.js.map +0 -1
  211. package/dist/services/self-learning/learn.d.ts +0 -2
  212. package/dist/services/self-learning/learn.d.ts.map +0 -1
  213. package/dist/services/self-learning/learn.js +0 -145
  214. package/dist/services/self-learning/learn.js.map +0 -1
  215. package/dist/services/self-learning/schemaStrictify.d.ts +0 -2
  216. package/dist/services/self-learning/schemaStrictify.d.ts.map +0 -1
  217. package/dist/services/self-learning/schemaStrictify.js +0 -34
  218. package/dist/services/self-learning/schemaStrictify.js.map +0 -1
  219. package/dist/services/self-learning/transition_graph.d.ts +0 -6
  220. package/dist/services/self-learning/transition_graph.d.ts.map +0 -1
  221. package/dist/services/self-learning/transition_graph.js +0 -83
  222. package/dist/services/self-learning/transition_graph.js.map +0 -1
  223. package/dist/services/test-genjs.js +0 -39
  224. package/dist/services/test-genjs.manual-test.d.ts +0 -2
  225. package/dist/services/test-genjs.manual-test.d.ts.map +0 -1
  226. package/dist/services/test-genjs.manual-test.js +0 -40
  227. package/dist/services/test-genjs.manual-test.js.map +0 -1
  228. package/dist/test-web-element-requests.d.ts +0 -6
  229. package/dist/test-web-element-requests.d.ts.map +0 -1
  230. package/dist/test-web-element-requests.js +0 -114
  231. package/dist/test-web-element-requests.js.map +0 -1
  232. package/dist/test_pdf_render.d.ts +0 -2
  233. package/dist/test_pdf_render.d.ts.map +0 -1
  234. package/dist/test_pdf_render.js +0 -50
  235. package/dist/test_pdf_render.js.map +0 -1
  236. package/dist/web-element-requests.d.ts +0 -102
  237. package/dist/web-element-requests.d.ts.map +0 -1
  238. package/dist/web-element-requests.js +0 -278
  239. package/dist/web-element-requests.js.map +0 -1
@@ -1,128 +0,0 @@
1
- // augment-parallel.mjs
2
- import os from 'node:os';
3
- import path from 'node:path';
4
- import fs from 'node:fs/promises';
5
- import { Worker } from 'node:worker_threads';
6
- import { round } from './inference/augment_levels.js';
7
- function createPool(workerFile, size) {
8
- const idle = [];
9
- const queue = [];
10
- const all = new Set();
11
- function attach(w) {
12
- w._current = null;
13
- w.on('message', (msg) => {
14
- const cur = w._current;
15
- w._current = null;
16
- cur?.resolve(msg);
17
- // next task?
18
- const next = queue.shift();
19
- if (next)
20
- run(w, next);
21
- else
22
- idle.push(w);
23
- });
24
- w.on('error', (err) => {
25
- const cur = w._current;
26
- w._current = null;
27
- cur?.reject(err);
28
- const next = queue.shift();
29
- if (next)
30
- run(w, next);
31
- else
32
- idle.push(w);
33
- });
34
- w.on('exit', (code) => { all.delete(w); /* optionally respawn if needed */ });
35
- }
36
- function run(w, job) { w._current = job; w.postMessage(job.payload); }
37
- for (let i = 0; i < size; i++) {
38
- const w = new Worker(workerFile);
39
- all.add(w);
40
- attach(w);
41
- idle.push(w);
42
- }
43
- return {
44
- exec(payload) {
45
- return new Promise((resolve, reject) => {
46
- const w = idle.pop();
47
- if (w)
48
- run(w, { payload, resolve, reject });
49
- else
50
- queue.push({ payload, resolve, reject });
51
- });
52
- },
53
- async destroy() {
54
- await Promise.all([...all].map(w => w.terminate()));
55
- }
56
- };
57
- }
58
- /**
59
- * Parallel version using worker threads.
60
- * Uses one task per image, up to os.cpus().length workers.
61
- */
62
- export async function augmentLevelParallel(levelPath, countPerImage, axis, rngSeed = Date.now(), onProgress) {
63
- const imgsTrainDir = path.join(levelPath, 'images', 'train');
64
- const lblsTrainDir = path.join(levelPath, 'labels', 'train');
65
- const imgsValDir = path.join(levelPath, 'images', 'val');
66
- const lblsValDir = path.join(levelPath, 'labels', 'val');
67
- // Ensure directories exist (workers will write into them)
68
- await Promise.all([
69
- fs.mkdir(imgsTrainDir, { recursive: true }),
70
- fs.mkdir(lblsTrainDir, { recursive: true }),
71
- fs.mkdir(imgsValDir, { recursive: true }),
72
- fs.mkdir(lblsValDir, { recursive: true }),
73
- ]);
74
- let allFiles;
75
- try {
76
- allFiles = await fs.readdir(imgsTrainDir);
77
- }
78
- catch {
79
- console.warn(`Could not read directory ${imgsTrainDir}`);
80
- return;
81
- }
82
- const imageFiles = allFiles.filter(n => /\.(png|jpg|jpeg)$/i.test(n)).sort();
83
- // Filter to only those having labels
84
- const hasLabel = await Promise.all(imageFiles.map(async (fname) => {
85
- const base = fname.replace(/\.(png|jpg|jpeg)$/i, '');
86
- try {
87
- await fs.access(path.join(lblsTrainDir, base + '.txt'));
88
- return true;
89
- }
90
- catch {
91
- return false;
92
- }
93
- }));
94
- const tasks = imageFiles.filter((_, i) => hasLabel[i]);
95
- const levelName = path.basename(levelPath);
96
- const poolSize = Math.max(1, Math.min(os.cpus().length, tasks.length));
97
- const pool = createPool(new URL('./augment-worker.js', import.meta.url), poolSize);
98
- let completed = 0;
99
- try {
100
- await Promise.all(tasks.map(async (fname, idx) => {
101
- const result = await pool.exec({
102
- levelPath, fname, axis, countPerImage, rngSeed: (rngSeed + idx) >>> 0,
103
- imgsTrainDir, lblsTrainDir, imgsValDir, lblsValDir
104
- });
105
- completed++;
106
- if (result.ok && !result.skipped) {
107
- console.log(`[${levelName}] Augmented '${fname}' × ${countPerImage}`);
108
- }
109
- if (onProgress) {
110
- await onProgress({
111
- type: 'image_processed',
112
- level: levelName,
113
- filename: fname,
114
- percentage: round((completed) / tasks.length * 100, 2),
115
- augmentationCount: countPerImage,
116
- message: `[${levelName}] Augmented '${fname}' × ${countPerImage}`
117
- });
118
- }
119
- if (!result.ok) {
120
- console.warn(`[${levelName}] Failed '${fname}': ${result.error}`);
121
- }
122
- }));
123
- }
124
- finally {
125
- await pool.destroy();
126
- }
127
- }
128
- //# sourceMappingURL=augment-parallel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"augment-parallel.js","sourceRoot":"","sources":["../src/augment-parallel.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=augment-worker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"augment-worker.d.ts","sourceRoot":"","sources":["../src/augment-worker.ts"],"names":[],"mappings":""}
@@ -1,100 +0,0 @@
1
- // augment-worker.mjs
2
- import path from 'node:path';
3
- import fs from 'node:fs/promises';
4
- // import { loadImage } from 'canvas';
5
- import { parentPort } from 'node:worker_threads';
6
- import sharp from 'sharp';
7
- // Re-export your existing helpers from a shared module:
8
- import { sliceAndSwap, loadBoxes, saveBoxes, complementWholeNumbers } from './inference/augment_levels.js';
9
- // Tiny deterministic RNG (no deps). Same across threads if seed passed.
10
- function createRng(seed = Date.now() >>> 0) {
11
- let s = seed >>> 0;
12
- const next = () => (s = (s * 1664525 + 1013904223) >>> 0) / 0x100000000;
13
- return {
14
- random: () => next(),
15
- choice(arr) { return arr[Math.floor(next() * arr.length)]; }
16
- };
17
- }
18
- parentPort.on('message', async (task) => {
19
- const { levelPath, fname, axis, countPerImage, rngSeed, imgsTrainDir, lblsTrainDir, imgsValDir, lblsValDir } = task;
20
- try {
21
- const base = path.parse(fname).name;
22
- const imgPath = path.join(imgsTrainDir, fname);
23
- const lblPath = path.join(lblsTrainDir, base + '.txt');
24
- // Confirm label exists
25
- await fs.access(lblPath).catch(() => { throw new Error('no_label'); });
26
- const imageBuffer = await fs.readFile(imgPath);
27
- // const img = await loadImage(imageBuffer);
28
- // const W = img.width, H = img.height;
29
- // const imageBuffer = await fs.readFile(imgPath);
30
- // EXIF-unaware (most cases): quick and simple
31
- const { width: W, height: H } = await sharp(imageBuffer).metadata();
32
- const origBoxes = await loadBoxes(lblPath, W, H);
33
- if (!origBoxes.length) {
34
- parentPort.postMessage({ ok: true, fname, skipped: true });
35
- return;
36
- }
37
- // Build safe cut positions
38
- const xRanges = origBoxes.map(([x1, , x2]) => [x1 / W, x2 / W]);
39
- const yRanges = origBoxes.map(([, y1, , y2]) => [y1 / H, y2 / H]);
40
- const safeX = complementWholeNumbers(xRanges, [1, W - 1]);
41
- const safeY = complementWholeNumbers(yRanges, [1, H - 1]);
42
- const rng = createRng(rngSeed);
43
- for (let i = 0; i < countPerImage; i++) {
44
- let augImg = imageBuffer;
45
- let boxes = [...origBoxes];
46
- // X swap
47
- if ((axis === 'x' || axis === 'both') && safeX.length > 0) {
48
- const x0 = rng.choice(safeX);
49
- augImg = await sliceAndSwap(augImg, x0, 'x');
50
- boxes = boxes.map(([x1, y1, x2, y2, cls]) => {
51
- let newX1 = x1, newX2 = x2;
52
- if (x2 <= x0) {
53
- newX1 = x1 + (W - x0);
54
- newX2 = x2 + (W - x0);
55
- }
56
- else if (x1 >= x0) {
57
- newX1 = x1 - x0;
58
- newX2 = x2 - x0;
59
- }
60
- return [newX1, y1, newX2, y2, cls];
61
- });
62
- }
63
- // Y swap
64
- if ((axis === 'y' || axis === 'both') && safeY.length > 0) {
65
- const y0 = rng.choice(safeY);
66
- augImg = await sliceAndSwap(augImg, y0, 'y');
67
- boxes = boxes.map(([x1, y1, x2, y2, cls]) => {
68
- let newY1 = y1, newY2 = y2;
69
- if (y2 <= y0) {
70
- newY1 = y1 + (H - y0);
71
- newY2 = y2 + (H - y0);
72
- }
73
- else if (y1 >= y0) {
74
- newY1 = y1 - y0;
75
- newY2 = y2 - y0;
76
- }
77
- return [x1, newY1, x2, newY2, cls];
78
- });
79
- }
80
- // ~10% val split
81
- const isVal = rng.random() <= 0.1;
82
- const outImgDir = isVal ? imgsValDir : imgsTrainDir;
83
- const outLblDir = isVal ? lblsValDir : lblsTrainDir;
84
- const suffix = `_aug${i.toString().padStart(3, '0')}`;
85
- await fs.writeFile(path.join(outImgDir, base + suffix + '.png'), augImg);
86
- await saveBoxes(path.join(outLblDir, base + suffix + '.txt'), boxes, W, H);
87
- }
88
- parentPort.postMessage({ ok: true, fname, skipped: false });
89
- }
90
- catch (err) {
91
- // no_label is a benign skip; anything else is an error
92
- if (err?.message === 'no_label') {
93
- parentPort.postMessage({ ok: true, fname, skipped: true });
94
- }
95
- else {
96
- parentPort.postMessage({ ok: false, fname, error: String(err?.message || err) });
97
- }
98
- }
99
- });
100
- //# sourceMappingURL=augment-worker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"augment-worker.js","sourceRoot":"","sources":["../src/augment-worker.ts"],"names":[],"mappings":"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"}
@@ -1,158 +0,0 @@
1
- /**
2
- * Recursively list all files under a root directory.
3
- * @param {string} rootDir - The starting directory.
4
- * @param {{ followSymlinks?: boolean }} [opts]
5
- * @returns {Promise<string[]>} Absolute file paths.
6
- */
7
- export declare function listFiles(rootDir: string, opts?: {
8
- followSymlinks?: boolean;
9
- }): Promise<string[]>;
10
- /**
11
- * Downloads multiple files from Firebase Storage
12
- * @param {Array} fileList - Array of {bucketPath, localPath, options} objects
13
- * @param {Function} onProgress - Progress callback function
14
- * @returns {Promise<Object>} Download results for all files
15
- */
16
- export declare function downloadMultipleFilesFromBucket(fileList: any, onProgress: any): Promise<{
17
- success: any[];
18
- failed: any[];
19
- totalFiles: any;
20
- totalProcessed: number;
21
- }>;
22
- /**
23
- * Downloads a file from Firebase Storage with retry logic and exponential backoff
24
- * @param {string} bucketPath - Path to the file in the bucket
25
- * @param {string} localFilePath - Local path where the file should be saved
26
- * @param {Object} options - Download and retry options
27
- * @param {number} options.maxAttempts - Maximum number of retry attempts (default: 3)
28
- * @param {number} options.initialDelay - Initial delay in milliseconds (default: 1000)
29
- * @param {number} options.maxDelay - Maximum delay in milliseconds (default: 30000)
30
- * @param {Function} options.onProgress - Progress callback function
31
- * @param {boolean} options.createDirs - Whether to create directories if they don't exist (default: true)
32
- * @param {boolean} options.overwrite - Whether to overwrite existing file (default: true)
33
- * @param {boolean} options.validateFile - Whether to validate the downloaded file (default: true)
34
- * @returns {Promise<Object>} Download result with file metadata
35
- */
36
- export declare function downloadFileFromBucketWithRetry(bucketPath: any, localFilePath: any, options?: {}): Promise<{
37
- success: boolean;
38
- bucketPath: any;
39
- localFilePath: any;
40
- size: number;
41
- sizeMB: string;
42
- contentType: any;
43
- timeCreated: any;
44
- updated: any;
45
- metadata: any;
46
- }>;
47
- /**
48
- * Uploads multiple files to Firebase Storage
49
- * @param {Array} fileList - Array of {localPath, bucketPath, options} objects
50
- * @param {Function} onProgress - Progress callback function
51
- * @returns {Promise<Object>} Upload results for all files
52
- */
53
- export declare function uploadMultipleFilesToBucket(fileList: any, onProgress: any): Promise<{
54
- success: any[];
55
- failed: any[];
56
- totalFiles: any;
57
- totalProcessed: number;
58
- }>;
59
- /**
60
- * Lists files in a Firebase Storage bucket directory
61
- * @param {string} prefix - Directory prefix to search (e.g., 'uploads/images/')
62
- * @param {Object} options - List options
63
- * @param {number} options.maxResults - Maximum number of files to return
64
- * @param {string} options.delimiter - Delimiter for directory-like listing
65
- * @param {string} options.pageToken - Token for pagination
66
- * @returns {Promise<Object>} List of files and metadata
67
- */
68
- export declare function listBucketFiles(prefix?: string, options?: {}): Promise<{
69
- files: any;
70
- totalFiles: any;
71
- prefix: string;
72
- nextPageToken: any;
73
- totalSize: any;
74
- totalSizeMB: string;
75
- }>;
76
- /**
77
- * Checks if a file exists in the Firebase Storage bucket
78
- * @param {string} bucketPath - Path to the file in the bucket
79
- * @returns {Promise<Object>} Existence check result with metadata
80
- */
81
- export declare function checkBucketFileExists(bucketPath: any): Promise<{
82
- exists: boolean;
83
- bucketPath: any;
84
- size: number;
85
- sizeMB: string;
86
- contentType: any;
87
- timeCreated: any;
88
- updated: any;
89
- md5Hash: any;
90
- etag: any;
91
- error?: undefined;
92
- } | {
93
- exists: boolean;
94
- bucketPath: any;
95
- size?: undefined;
96
- sizeMB?: undefined;
97
- contentType?: undefined;
98
- timeCreated?: undefined;
99
- updated?: undefined;
100
- md5Hash?: undefined;
101
- etag?: undefined;
102
- error?: undefined;
103
- } | {
104
- exists: boolean;
105
- bucketPath: any;
106
- error: any;
107
- size?: undefined;
108
- sizeMB?: undefined;
109
- contentType?: undefined;
110
- timeCreated?: undefined;
111
- updated?: undefined;
112
- md5Hash?: undefined;
113
- etag?: undefined;
114
- }>;
115
- /**
116
- * Deletes a file from Firebase Storage bucket
117
- * @param {string} bucketPath - Path to the file in the bucket
118
- * @returns {Promise<Object>} Deletion result
119
- */
120
- export declare function deleteBucketFile(bucketPath: any): Promise<{
121
- success: boolean;
122
- bucketPath: any;
123
- error: string;
124
- size?: undefined;
125
- sizeMB?: undefined;
126
- deletedAt?: undefined;
127
- } | {
128
- success: boolean;
129
- bucketPath: any;
130
- size: number;
131
- sizeMB: string;
132
- deletedAt: string;
133
- error?: undefined;
134
- }>;
135
- /**
136
- * Gets a signed URL for accessing a private file in Firebase Storage
137
- * @param {string} bucketPath - Path to the file in the bucket
138
- * @param {Object} options - URL options
139
- * @param {string} options.action - Action type ('read', 'write', 'delete', 'resumable')
140
- * @param {number} options.expires - Expiration time in milliseconds from now (default: 1 hour)
141
- * @param {string} options.contentType - Content type for write operations
142
- * @returns {Promise<Object>} Signed URL result
143
- */
144
- export declare function getBucketFileSignedUrl(bucketPath: any, options?: {}): Promise<{
145
- success: boolean;
146
- bucketPath: any;
147
- url: any;
148
- action: any;
149
- expires: string;
150
- expiresIn: any;
151
- }>;
152
- export declare function getJobZipPath(job: any, fileName: any): string;
153
- export declare function getJobZipFolderPath(job: any): string;
154
- export declare function getModelBucketPath(jobId: any, workflowData: any, stepId: any, ownerUid: any): string;
155
- export declare function getZipResourcesName(jobId: any, workflowData: any, stepId: any): string;
156
- export declare function getZipModelFileName(jobId: any, workflowData: any, stepId: any): string;
157
- export declare function modelFileZipDirName(jobId: any, stepId: any): string;
158
- //# sourceMappingURL=capture_training_data_endpoints.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capture_training_data_endpoints.d.ts","sourceRoot":"","sources":["../src/capture_training_data_endpoints.ts"],"names":[],"mappings":"AA0BA;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAsC3G;AA0/BD;;;;;GAKG;AACH,wBAAsB,+BAA+B,CAAC,QAAQ,KAAA,EAAE,UAAU,KAAA;;;;;GAuEzE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,+BAA+B,CAAC,UAAU,KAAA,EAAE,aAAa,KAAA,EAAE,OAAO,KAAK;;;;;;;;;;GAqF5F;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,QAAQ,KAAA,EAAE,UAAU,KAAA;;;;;GAwDrE;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,MAAM,SAAK,EAAE,OAAO,KAAK;;;;;;;GAwC9D;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCrD;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,KAAA;;;;;;;;;;;;;;GAsChD;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAAC,UAAU,KAAA,EAAE,OAAO,KAAK;;;;;;;GAgDpE;AAGD,wBAAgB,aAAa,CAAC,GAAG,KAAA,EAAE,QAAQ,KAAA,UAE1C;AACD,wBAAgB,mBAAmB,CAAC,GAAG,KAAA,UAEtC;AAED,wBAAgB,kBAAkB,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,EAAE,MAAM,KAAA,EAAE,QAAQ,KAAA,UAEvE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,EAAE,MAAM,KAAA,UAE9D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,EAAE,MAAM,KAAA,UAE9D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,UAEhD"}