flow-frame-core 0.1.0 → 0.1.6

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 (237) hide show
  1. package/dist/browerRoutes.d.ts.map +1 -1
  2. package/dist/browerRoutes.js.map +1 -1
  3. package/dist/browser-utils/utils.d.ts.map +1 -1
  4. package/dist/browser-utils/utils.js +1 -0
  5. package/dist/browser-utils/utils.js.map +1 -1
  6. package/dist/controllers/browserController.d.ts +28 -0
  7. package/dist/controllers/browserController.d.ts.map +1 -0
  8. package/dist/controllers/browserController.js +45 -0
  9. package/dist/controllers/browserController.js.map +1 -0
  10. package/dist/controllers/extensionController.d.ts +39 -0
  11. package/dist/controllers/extensionController.d.ts.map +1 -0
  12. package/dist/controllers/extensionController.js +29 -0
  13. package/dist/controllers/extensionController.js.map +1 -0
  14. package/dist/controllers/promptController.d.ts +22 -0
  15. package/dist/controllers/promptController.d.ts.map +1 -0
  16. package/dist/controllers/promptController.js +59 -0
  17. package/dist/controllers/promptController.js.map +1 -0
  18. package/dist/controllers/promptLibraryController.d.ts +16 -0
  19. package/dist/controllers/promptLibraryController.d.ts.map +1 -0
  20. package/dist/controllers/promptLibraryController.js +60 -0
  21. package/dist/controllers/promptLibraryController.js.map +1 -0
  22. package/dist/controllers/standardController.d.ts +38 -0
  23. package/dist/controllers/standardController.d.ts.map +1 -0
  24. package/dist/controllers/standardController.js +79 -0
  25. package/dist/controllers/standardController.js.map +1 -0
  26. package/dist/controllers/workflowController.d.ts +19 -0
  27. package/dist/controllers/workflowController.d.ts.map +1 -0
  28. package/dist/controllers/workflowController.js +94 -0
  29. package/dist/controllers/workflowController.js.map +1 -0
  30. package/dist/filter-gmail-poller/filter-gmail-poller.d.ts.map +1 -1
  31. package/dist/filter-gmail-poller/filter-gmail-poller.js +1 -0
  32. package/dist/filter-gmail-poller/filter-gmail-poller.js.map +1 -1
  33. package/dist/index.d.ts +8 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +46 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/operations/blender-ops.d.ts.map +1 -1
  38. package/dist/operations/blender-ops.js +0 -1
  39. package/dist/operations/blender-ops.js.map +1 -1
  40. package/dist/operations.d.ts +1 -1
  41. package/dist/operations.d.ts.map +1 -1
  42. package/dist/operations.js +1 -0
  43. package/dist/operations.js.map +1 -1
  44. package/dist/process.d.ts.map +1 -1
  45. package/dist/process.js +1 -0
  46. package/dist/process.js.map +1 -1
  47. package/dist/server.js +32 -1
  48. package/dist/services/audioService.js.map +1 -1
  49. package/dist/services/autoPromptOptimizer.d.ts.map +1 -1
  50. package/dist/services/autoPromptOptimizer.js +1 -0
  51. package/dist/services/autoPromptOptimizer.js.map +1 -1
  52. package/dist/services/chainExecutor.d.ts +2 -1
  53. package/dist/services/chainExecutor.d.ts.map +1 -1
  54. package/dist/services/chainExecutor.js +105 -129
  55. package/dist/services/chainExecutor.js.map +1 -1
  56. package/dist/services/configuration/executor.d.ts.map +1 -1
  57. package/dist/services/configuration/executor.js +1 -0
  58. package/dist/services/configuration/executor.js.map +1 -1
  59. package/dist/services/error.d.ts.map +1 -1
  60. package/dist/services/error.js +1 -0
  61. package/dist/services/error.js.map +1 -1
  62. package/dist/services/executor.d.ts.map +1 -1
  63. package/dist/services/executor.js +110 -51
  64. package/dist/services/executor.js.map +1 -1
  65. package/dist/services/extractPdf.d.ts.map +1 -1
  66. package/dist/services/extractPdf.js +1 -0
  67. package/dist/services/extractPdf.js.map +1 -1
  68. package/dist/services/polyfill_canvas.js +1 -0
  69. package/dist/services/polyfill_canvas.js.map +1 -1
  70. package/dist/services/runPrompt.d.ts +1 -1
  71. package/dist/services/runPrompt.d.ts.map +1 -1
  72. package/dist/services/runPrompt.js +1 -1
  73. package/dist/services/runPrompt.js.map +1 -1
  74. package/dist/services/self-learning/injest.d.ts.map +1 -1
  75. package/dist/services/self-learning/injest.js +1 -0
  76. package/dist/services/self-learning/injest.js.map +1 -1
  77. package/dist/services/self-learning/matcher.d.ts +1 -1
  78. package/dist/services/self-learning/recognize.d.ts.map +1 -1
  79. package/dist/services/self-learning/recognize.js +1 -0
  80. package/dist/services/self-learning/recognize.js.map +1 -1
  81. package/dist/services/stepByStepAiPlanner.d.ts.map +1 -1
  82. package/dist/services/stepByStepAiPlanner.js +1 -0
  83. package/dist/services/stepByStepAiPlanner.js.map +1 -1
  84. package/dist/services/uiMapPathFinder.d.ts.map +1 -1
  85. package/dist/services/uiMapPathFinder.js +1 -0
  86. package/dist/services/uiMapPathFinder.js.map +1 -1
  87. package/dist/services/uiMapService.d.ts.map +1 -1
  88. package/dist/services/uiMapService.js +1 -0
  89. package/dist/services/uiMapService.js.map +1 -1
  90. package/dist/services/uiPlanner.d.ts.map +1 -1
  91. package/dist/services/uiPlanner.js.map +1 -1
  92. package/dist/services/variableGenerator.d.ts +1 -1
  93. package/dist/services/variableGenerator.d.ts.map +1 -1
  94. package/dist/services/variableGenerator.js.map +1 -1
  95. package/dist/standardRoutes.d.ts.map +1 -1
  96. package/dist/standardRoutes.js +92 -108
  97. package/dist/standardRoutes.js.map +1 -1
  98. package/dist/storage.d.ts +6 -0
  99. package/dist/storage.d.ts.map +1 -1
  100. package/dist/storage.js +104 -23
  101. package/dist/storage.js.map +1 -1
  102. package/dist/storage.zachary.json +22 -0
  103. package/dist/suno_download.js +1 -1
  104. package/dist/suno_download.js.map +1 -1
  105. package/dist/utils.d.ts +8 -12
  106. package/dist/utils.d.ts.map +1 -1
  107. package/dist/utils.js +30 -1
  108. package/dist/utils.js.map +1 -1
  109. package/dist/workflowRoutes.d.ts.map +1 -1
  110. package/dist/workflowRoutes.js +28 -60
  111. package/dist/workflowRoutes.js.map +1 -1
  112. package/package.json +2 -2
  113. package/dist/augment-parallel.d.ts +0 -6
  114. package/dist/augment-parallel.d.ts.map +0 -1
  115. package/dist/augment-parallel.js +0 -128
  116. package/dist/augment-parallel.js.map +0 -1
  117. package/dist/augment-worker.d.ts +0 -2
  118. package/dist/augment-worker.d.ts.map +0 -1
  119. package/dist/augment-worker.js +0 -100
  120. package/dist/augment-worker.js.map +0 -1
  121. package/dist/capture_training_data_endpoints.d.ts +0 -158
  122. package/dist/capture_training_data_endpoints.d.ts.map +0 -1
  123. package/dist/capture_training_data_endpoints.js +0 -1812
  124. package/dist/capture_training_data_endpoints.js.map +0 -1
  125. package/dist/download.d.ts +0 -11
  126. package/dist/download.d.ts.map +0 -1
  127. package/dist/download.js +0 -31
  128. package/dist/download.js.map +0 -1
  129. package/dist/extension/background.d.ts +0 -2
  130. package/dist/extension/background.d.ts.map +0 -1
  131. package/dist/extension/background.js +0 -268
  132. package/dist/extension/background.js.map +0 -1
  133. package/dist/filter-gmail-poller/demo.d.ts +0 -2
  134. package/dist/filter-gmail-poller/demo.d.ts.map +0 -1
  135. package/dist/filter-gmail-poller/demo.js +0 -79
  136. package/dist/filter-gmail-poller/demo.js.map +0 -1
  137. package/dist/filter-gmail-poller/example-existing-app.d.ts +0 -2
  138. package/dist/filter-gmail-poller/example-existing-app.d.ts.map +0 -1
  139. package/dist/filter-gmail-poller/example-existing-app.js +0 -72
  140. package/dist/filter-gmail-poller/example-existing-app.js.map +0 -1
  141. package/dist/filter-gmail-poller/index.d.ts +0 -3
  142. package/dist/filter-gmail-poller/index.d.ts.map +0 -1
  143. package/dist/filter-gmail-poller/index.js +0 -18
  144. package/dist/filter-gmail-poller/index.js.map +0 -1
  145. package/dist/filter-gmail-poller/manual-test.d.ts +0 -2
  146. package/dist/filter-gmail-poller/manual-test.d.ts.map +0 -1
  147. package/dist/filter-gmail-poller/manual-test.js +0 -70
  148. package/dist/filter-gmail-poller/manual-test.js.map +0 -1
  149. package/dist/filter-gmail-poller/test.js +0 -69
  150. package/dist/gmail-poller/example.d.ts +0 -5
  151. package/dist/gmail-poller/example.d.ts.map +0 -1
  152. package/dist/gmail-poller/example.js +0 -83
  153. package/dist/gmail-poller/example.js.map +0 -1
  154. package/dist/gmail-poller/gmail-poller.d.ts +0 -82
  155. package/dist/gmail-poller/gmail-poller.d.ts.map +0 -1
  156. package/dist/gmail-poller/gmail-poller.js +0 -455
  157. package/dist/gmail-poller/gmail-poller.js.map +0 -1
  158. package/dist/gmail-poller/manual-test.d.ts +0 -2
  159. package/dist/gmail-poller/manual-test.d.ts.map +0 -1
  160. package/dist/gmail-poller/manual-test.js +0 -37
  161. package/dist/gmail-poller/manual-test.js.map +0 -1
  162. package/dist/gmail-poller/microsoft-email-example.d.ts +0 -8
  163. package/dist/gmail-poller/microsoft-email-example.d.ts.map +0 -1
  164. package/dist/gmail-poller/microsoft-email-example.js +0 -58
  165. package/dist/gmail-poller/microsoft-email-example.js.map +0 -1
  166. package/dist/gmail-poller/microsoft-email-poller.d.ts +0 -73
  167. package/dist/gmail-poller/microsoft-email-poller.d.ts.map +0 -1
  168. package/dist/gmail-poller/microsoft-email-poller.js +0 -346
  169. package/dist/gmail-poller/microsoft-email-poller.js.map +0 -1
  170. package/dist/gmail-poller/setup-auth.d.ts +0 -3
  171. package/dist/gmail-poller/setup-auth.d.ts.map +0 -1
  172. package/dist/gmail-poller/setup-auth.js +0 -36
  173. package/dist/gmail-poller/setup-auth.js.map +0 -1
  174. package/dist/gmail-poller/test.js +0 -36
  175. package/dist/inference/augment_levels.d.ts +0 -2
  176. package/dist/inference/augment_levels.d.ts.map +0 -1
  177. package/dist/inference/augment_levels.js.map +0 -1
  178. package/dist/inference/capture-overlay.d.ts +0 -13
  179. package/dist/inference/capture-overlay.d.ts.map +0 -1
  180. package/dist/inference/capture-overlay.js +0 -355
  181. package/dist/inference/capture-overlay.js.map +0 -1
  182. package/dist/playparser.d.ts +0 -2
  183. package/dist/playparser.d.ts.map +0 -1
  184. package/dist/playparser.js +0 -281
  185. package/dist/playparser.js.map +0 -1
  186. package/dist/services/agenticUiPlanner.d.ts +0 -27
  187. package/dist/services/agenticUiPlanner.d.ts.map +0 -1
  188. package/dist/services/agenticUiPlanner.js +0 -161
  189. package/dist/services/agenticUiPlanner.js.map +0 -1
  190. package/dist/services/autoPromptOptimizer.manual-test.d.ts +0 -2
  191. package/dist/services/autoPromptOptimizer.manual-test.d.ts.map +0 -1
  192. package/dist/services/autoPromptOptimizer.manual-test.js +0 -27
  193. package/dist/services/autoPromptOptimizer.manual-test.js.map +0 -1
  194. package/dist/services/generateJsTransformFromPrompt.d.ts +0 -11
  195. package/dist/services/generateJsTransformFromPrompt.d.ts.map +0 -1
  196. package/dist/services/generateJsTransformFromPrompt.js +0 -328
  197. package/dist/services/generateJsTransformFromPrompt.js.map +0 -1
  198. package/dist/services/promptRoutes.d.ts +0 -7
  199. package/dist/services/promptRoutes.d.ts.map +0 -1
  200. package/dist/services/promptRoutes.js.map +0 -1
  201. package/dist/services/schemaInference.d.ts +0 -2
  202. package/dist/services/schemaInference.d.ts.map +0 -1
  203. package/dist/services/schemaInference.js +0 -17
  204. package/dist/services/schemaInference.js.map +0 -1
  205. package/dist/services/self-learning/autolearn.d.ts +0 -23
  206. package/dist/services/self-learning/autolearn.d.ts.map +0 -1
  207. package/dist/services/self-learning/autolearn.js +0 -308
  208. package/dist/services/self-learning/autolearn.js.map +0 -1
  209. package/dist/services/self-learning/learn.d.ts +0 -2
  210. package/dist/services/self-learning/learn.d.ts.map +0 -1
  211. package/dist/services/self-learning/learn.js +0 -145
  212. package/dist/services/self-learning/learn.js.map +0 -1
  213. package/dist/services/self-learning/schemaStrictify.d.ts +0 -2
  214. package/dist/services/self-learning/schemaStrictify.d.ts.map +0 -1
  215. package/dist/services/self-learning/schemaStrictify.js +0 -34
  216. package/dist/services/self-learning/schemaStrictify.js.map +0 -1
  217. package/dist/services/self-learning/transition_graph.d.ts +0 -6
  218. package/dist/services/self-learning/transition_graph.d.ts.map +0 -1
  219. package/dist/services/self-learning/transition_graph.js +0 -83
  220. package/dist/services/self-learning/transition_graph.js.map +0 -1
  221. package/dist/services/test-genjs.js +0 -39
  222. package/dist/services/test-genjs.manual-test.d.ts +0 -2
  223. package/dist/services/test-genjs.manual-test.d.ts.map +0 -1
  224. package/dist/services/test-genjs.manual-test.js +0 -40
  225. package/dist/services/test-genjs.manual-test.js.map +0 -1
  226. package/dist/test-web-element-requests.d.ts +0 -6
  227. package/dist/test-web-element-requests.d.ts.map +0 -1
  228. package/dist/test-web-element-requests.js +0 -114
  229. package/dist/test-web-element-requests.js.map +0 -1
  230. package/dist/test_pdf_render.d.ts +0 -2
  231. package/dist/test_pdf_render.d.ts.map +0 -1
  232. package/dist/test_pdf_render.js +0 -50
  233. package/dist/test_pdf_render.js.map +0 -1
  234. package/dist/web-element-requests.d.ts +0 -102
  235. package/dist/web-element-requests.d.ts.map +0 -1
  236. package/dist/web-element-requests.js +0 -278
  237. package/dist/web-element-requests.js.map +0 -1
@@ -1,83 +0,0 @@
1
- import { readEvents } from "./transition_log.js";
2
- function actionSig(a) {
3
- // Normalize actions so the graph doesn’t explode.
4
- // You can improve this later (elementId, label, etc.)
5
- if (!a)
6
- return "unknown";
7
- if (a.kind === "click")
8
- return `click@${round2(a.x)}_${round2(a.y)}`;
9
- if (a.kind === "type")
10
- return `type:${(a.text || "").slice(0, 16)}`;
11
- if (a.kind === "keys")
12
- return `keys:${(a.keys || []).join("+")}`;
13
- return a.kind || "unknown";
14
- }
15
- function round2(n) {
16
- return Math.round(Number(n) * 100) / 100;
17
- }
18
- export function buildTransitionGraph() {
19
- const events = readEvents();
20
- // Expect paired events like:
21
- // { type:"transition", before:{screenId,...}, action:{...}, after:{screenId,...}, ok:true/false }
22
- const edges = new Map(); // key = `${from}||${sig}||${to}`
23
- for (const e of events) {
24
- if (e.type !== "transition")
25
- continue;
26
- const from = e.before?.screenId || "unknown";
27
- const to = e.after?.screenId || "unknown";
28
- const sig = actionSig(e.action);
29
- const key = `${from}||${sig}||${to}`;
30
- const cur = edges.get(key) || { from, to, sig, count: 0, ok: 0, lastTs: "" };
31
- cur.count += 1;
32
- if (e.ok)
33
- cur.ok += 1;
34
- cur.lastTs = e.ts;
35
- edges.set(key, cur);
36
- }
37
- return {
38
- nodes: Array.from(new Set(Array.from(edges.values()).flatMap(e => [e.from, e.to]))),
39
- edges: Array.from(edges.values()).map(e => ({
40
- ...e,
41
- successRate: e.count ? e.ok / e.count : 0
42
- }))
43
- };
44
- }
45
- // Simple BFS path (you can upgrade to probability-weighted later)
46
- export function findPath(graph, start, goal) {
47
- if (start === goal)
48
- return [];
49
- const adj = new Map();
50
- for (const e of graph.edges) {
51
- if (!adj.has(e.from))
52
- adj.set(e.from, []);
53
- adj.get(e.from).push(e);
54
- }
55
- const q = [start];
56
- const prev = new Map(); // node -> { node, edge }
57
- prev.set(start, null);
58
- while (q.length) {
59
- const cur = q.shift();
60
- const outs = adj.get(cur) || [];
61
- for (const edge of outs) {
62
- const nxt = edge.to;
63
- if (prev.has(nxt))
64
- continue;
65
- prev.set(nxt, { node: cur, edge });
66
- if (nxt === goal) {
67
- // reconstruct
68
- const path = [];
69
- let t = goal;
70
- while (t !== start) {
71
- const p = prev.get(t);
72
- path.push(p.edge);
73
- t = p.node;
74
- }
75
- path.reverse();
76
- return path;
77
- }
78
- q.push(nxt);
79
- }
80
- }
81
- return null;
82
- }
83
- //# sourceMappingURL=transition_graph.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transition_graph.js","sourceRoot":"","sources":["../../../src/services/self-learning/transition_graph.ts"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- import { generateJsTransformFromPrompt } from "./generateJsTransformFromPrompt.js";
2
- const { code, transform, attempts } = await generateJsTransformFromPrompt({
3
- model: 'meta-llama/llama-4-maverick-17b-128e-instruct',
4
- prompt: "Given an array of {name,sizeKB}, return { top3: largest by sizeKB desc, totalKB }",
5
- inputSchema: {
6
- type: "array",
7
- items: {
8
- type: "object",
9
- additionalProperties: false,
10
- required: ["name", "sizeKB"],
11
- properties: { name: { type: "string" }, sizeKB: { type: "number" } }
12
- }
13
- },
14
- outputSchema: {
15
- type: "object", additionalProperties: false,
16
- required: ["top3", "totalKB"],
17
- properties: {
18
- top3: {
19
- type: "array", items: {
20
- type: "object", additionalProperties: false,
21
- required: ["name", "sizeKB"],
22
- properties: { name: { type: "string" }, sizeKB: { type: "number" } }
23
- }
24
- },
25
- totalKB: { type: "number" }
26
- }
27
- },
28
- examples: [
29
- {
30
- input: [{ name: "a", sizeKB: 2 }, { name: "b", sizeKB: 5 }, { name: "c", sizeKB: 1 }],
31
- output: { top3: [{ name: "b", sizeKB: 5 }, { name: "a", sizeKB: 2 }, { name: "c", sizeKB: 1 }], totalKB: 8 }
32
- }
33
- ],
34
- retries: 2,
35
- verbose: true
36
- });
37
- console.log(`Generated in ${attempts} attempt(s)`);
38
- console.log(code);
39
- console.log(await transform([{ name: "x", sizeKB: 4 }, { name: "y", sizeKB: 9 }, { name: "z", sizeKB: 1 }]));
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=test-genjs.manual-test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-genjs.manual-test.d.ts","sourceRoot":"","sources":["../../src/services/test-genjs.manual-test.ts"],"names":[],"mappings":""}
@@ -1,40 +0,0 @@
1
- import { generateJsTransformFromPrompt } from "./generateJsTransformFromPrompt.js";
2
- const { code, transform, attempts } = await generateJsTransformFromPrompt({
3
- model: 'meta-llama/llama-4-maverick-17b-128e-instruct',
4
- prompt: "Given an array of {name,sizeKB}, return { top3: largest by sizeKB desc, totalKB }",
5
- inputSchema: {
6
- type: "array",
7
- items: {
8
- type: "object",
9
- additionalProperties: false,
10
- required: ["name", "sizeKB"],
11
- properties: { name: { type: "string" }, sizeKB: { type: "number" } }
12
- }
13
- },
14
- outputSchema: {
15
- type: "object", additionalProperties: false,
16
- required: ["top3", "totalKB"],
17
- properties: {
18
- top3: {
19
- type: "array", items: {
20
- type: "object", additionalProperties: false,
21
- required: ["name", "sizeKB"],
22
- properties: { name: { type: "string" }, sizeKB: { type: "number" } }
23
- }
24
- },
25
- totalKB: { type: "number" }
26
- }
27
- },
28
- examples: [
29
- {
30
- input: [{ name: "a", sizeKB: 2 }, { name: "b", sizeKB: 5 }, { name: "c", sizeKB: 1 }],
31
- output: { top3: [{ name: "b", sizeKB: 5 }, { name: "a", sizeKB: 2 }, { name: "c", sizeKB: 1 }], totalKB: 8 }
32
- }
33
- ],
34
- retries: 2,
35
- verbose: true
36
- });
37
- console.log(`Generated in ${attempts} attempt(s)`);
38
- console.log(code);
39
- console.log(await transform([{ name: "x", sizeKB: 4 }, { name: "y", sizeKB: 9 }, { name: "z", sizeKB: 1 }]));
40
- //# sourceMappingURL=test-genjs.manual-test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-genjs.manual-test.js","sourceRoot":"","sources":["../../src/services/test-genjs.manual-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAEnF,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,6BAA6B,CAAC;IACtE,KAAK,EAAE,+CAA+C;IACtD,MAAM,EAAE,mFAAmF;IAC3F,WAAW,EAAE;QACT,IAAI,EAAE,OAAO;QACb,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;SACvE;KACJ;IACD,YAAY,EAAE;QACV,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;QAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;QAC7B,UAAU,EAAE;YACR,IAAI,EAAE;gBACF,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;oBAClB,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;oBAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;oBAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;iBACvE;aACJ;YACD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC9B;KACJ;IACD,QAAQ,EAAE;QACN;YACI,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YACrF,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;SAC/G;KACJ;IACD,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,QAAQ,aAAa,CAAC,CAAC;AACnD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAClB,OAAO,CAAC,GAAG,CAAC,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- declare function setupExampleRequests(): void;
2
- declare function checkStoredPositions(): void;
3
- declare function simulateAPIUsage(): Promise<void>;
4
- declare function demonstrateExportImport(): void;
5
- export { setupExampleRequests, checkStoredPositions, simulateAPIUsage, demonstrateExportImport };
6
- //# sourceMappingURL=test-web-element-requests.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-web-element-requests.d.ts","sourceRoot":"","sources":["../src/test-web-element-requests.ts"],"names":[],"mappings":"AAMA,iBAAS,oBAAoB,SA8D5B;AAGD,iBAAS,oBAAoB,SAkB5B;AAGD,iBAAe,gBAAgB,kBA4B9B;AAGD,iBAAS,uBAAuB,SAS/B;AAiCD,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EAC1B,CAAC"}
@@ -1,114 +0,0 @@
1
- // test-web-element-requests.js
2
- // Example usage of the Web Element Requests system
3
- import { webElementRequests } from './web-element-requests.js';
4
- // Example: Add element requests for different URLs
5
- function setupExampleRequests() {
6
- console.log('📝 Testing addElementRequest with selectors and text...\n');
7
- // Add requests for Midjourney interface elements
8
- const result1 = webElementRequests.addElementRequest('https://www.midjourney.com/app/', 'button[data-testid="generate-button"]', 'selector', (position, timestamp) => {
9
- console.log('Generate button position updated:', position);
10
- });
11
- console.log(` Generate button (selector): ${JSON.stringify(result1)}`);
12
- const result2 = webElementRequests.addElementRequest('https://www.midjourney.com/app/', 'Describe your image', 'text', (position, timestamp) => {
13
- console.log('Prompt input text position updated:', position);
14
- });
15
- console.log(` Prompt input (text): ${JSON.stringify(result2)}`);
16
- // Add requests for YouTube Studio elements
17
- const result3 = webElementRequests.addElementRequest('https://studio.youtube.com/', 'button[aria-label*="Upload"]', 'selector', (position, timestamp) => {
18
- console.log('YouTube upload button position updated:', position);
19
- });
20
- console.log(` YouTube upload button (selector): ${JSON.stringify(result3)}`);
21
- const result4 = webElementRequests.addElementRequest('https://studio.youtube.com/', 'Create', 'text', (position, timestamp) => {
22
- console.log('Create button text position updated:', position);
23
- });
24
- console.log(` Create button (text): ${JSON.stringify(result4)}`);
25
- // Try adding the same requests again to test duplicate handling
26
- console.log('\n🔄 Testing duplicate requests...');
27
- const result5 = webElementRequests.addElementRequest('https://www.midjourney.com/app/', 'button[data-testid="generate-button"]', 'selector');
28
- console.log(` Duplicate generate button: ${JSON.stringify(result5)}`);
29
- const result6 = webElementRequests.addElementRequest('https://www.midjourney.com/app/', 'Describe your image', 'text');
30
- console.log(` Duplicate prompt text: ${JSON.stringify(result6)}`);
31
- console.log('\n✅ Added example element requests');
32
- }
33
- // Example: Check stored positions
34
- function checkStoredPositions() {
35
- const urls = webElementRequests.getUrlsWithRequests();
36
- urls.forEach(url => {
37
- console.log(`\n📍 Positions for ${url}:`);
38
- const positions = webElementRequests.getAllPositionsForUrl(url);
39
- positions.forEach((data, selector) => {
40
- console.log(` ${selector}:`, {
41
- x: data.left,
42
- y: data.top,
43
- width: data.width,
44
- height: data.height,
45
- text: data.innerText?.substring(0, 50) + '...',
46
- age: Math.round((Date.now() - data.timestamp) / 1000) + 's ago'
47
- });
48
- });
49
- });
50
- }
51
- // Example: API usage simulation
52
- async function simulateAPIUsage() {
53
- const baseUrl = 'http://localhost:3000';
54
- try {
55
- // Add a request via API
56
- const addResponse = await fetch(`${baseUrl}/api/web-elements/request`, {
57
- method: 'POST',
58
- headers: { 'Content-Type': 'application/json' },
59
- body: JSON.stringify({
60
- url: 'https://example.com',
61
- selector: '.test-element'
62
- })
63
- });
64
- console.log('Add request response:', await addResponse.json());
65
- // Get requests for a URL
66
- const requestsResponse = await fetch(`${baseUrl}/api/web-elements/requests/${encodeURIComponent('https://example.com')}`);
67
- const requests = await requestsResponse.json();
68
- console.log('Requests for example.com:', requests);
69
- // Get stats
70
- const statsResponse = await fetch(`${baseUrl}/api/web-elements/stats`);
71
- const stats = await statsResponse.json();
72
- console.log('System stats:', stats);
73
- }
74
- catch (error) {
75
- console.error('API test error:', error);
76
- }
77
- }
78
- // Example: Export/Import functionality
79
- function demonstrateExportImport() {
80
- console.log('\n📤 Exporting data...');
81
- const exportData = webElementRequests.export();
82
- console.log('Exported data keys:', Object.keys(exportData));
83
- console.log('\n📥 Importing data...');
84
- webElementRequests.clearAllData();
85
- webElementRequests.import(exportData);
86
- console.log('Import complete, new stats:', webElementRequests.getStats());
87
- }
88
- // Run examples if this file is executed directly
89
- if (import.meta.url === `file://${process.argv[1]}`) {
90
- console.log('🧪 Running Web Element Requests examples...\n');
91
- setupExampleRequests();
92
- // Simulate some position data
93
- setTimeout(() => {
94
- console.log('\n📊 Simulating position storage...');
95
- webElementRequests.storePositions('https://www.midjourney.com/app/', {
96
- location: 'https://www.midjourney.com/app/',
97
- 'button[data-testid="generate-button"]': {
98
- top: 100,
99
- left: 200,
100
- width: 120,
101
- height: 40,
102
- innerText: 'Generate'
103
- }
104
- });
105
- checkStoredPositions();
106
- demonstrateExportImport();
107
- // Test API calls (requires server to be running)
108
- setTimeout(() => {
109
- simulateAPIUsage();
110
- }, 1000);
111
- }, 1000);
112
- }
113
- export { setupExampleRequests, checkStoredPositions, simulateAPIUsage, demonstrateExportImport };
114
- //# sourceMappingURL=test-web-element-requests.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-web-element-requests.js","sourceRoot":"","sources":["../src/test-web-element-requests.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=test_pdf_render.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test_pdf_render.d.ts","sourceRoot":"","sources":["../src/test_pdf_render.ts"],"names":[],"mappings":""}
@@ -1,50 +0,0 @@
1
- import fs from 'node:fs/promises';
2
- import path from 'node:path';
3
- import { extractPdf } from './services/extractPdf.js';
4
- const PDF_DIR = '/Users/andrewporter/Documents/ai/pdf/19abb94c3efeb426';
5
- const OUT_DIR = './test_output_render';
6
- async function run() {
7
- try {
8
- // Check if source dir exists
9
- try {
10
- await fs.access(PDF_DIR);
11
- }
12
- catch {
13
- console.error(`Source directory not found: ${PDF_DIR}`);
14
- return;
15
- }
16
- await fs.mkdir(OUT_DIR, { recursive: true });
17
- const files = await fs.readdir(PDF_DIR);
18
- const pdfs = files.filter(f => f.toLowerCase().endsWith('.pdf'));
19
- console.log(`Found ${pdfs.length} PDFs in ${PDF_DIR}`);
20
- for (const pdfFile of pdfs) {
21
- const pdfPath = path.join(PDF_DIR, pdfFile);
22
- const pdfOutDir = path.join(OUT_DIR, path.basename(pdfFile, '.pdf'));
23
- console.log(`Processing ${pdfFile}...`);
24
- console.time(`Processed ${pdfFile}`);
25
- try {
26
- const result = await extractPdf({
27
- pdfPath,
28
- outDir: pdfOutDir,
29
- extractText: true,
30
- extractImages: true,
31
- renderPages: true, // Enable page rendering
32
- pageRenderScale: 1.5 // Slightly lower scale for speed in test
33
- });
34
- console.timeEnd(`Processed ${pdfFile}`);
35
- console.log(` - Pages: ${result.numPages}`);
36
- console.log(` - Rendered Pages: ${result.renderedPages.length}`);
37
- console.log(` - Extracted Images: ${result.images.length}`);
38
- console.log(` - Output: ${pdfOutDir}`);
39
- }
40
- catch (e) {
41
- console.error(`Failed to process ${pdfFile}:`, e);
42
- }
43
- }
44
- }
45
- catch (err) {
46
- console.error('Error running test:', err);
47
- }
48
- }
49
- run();
50
- //# sourceMappingURL=test_pdf_render.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test_pdf_render.js","sourceRoot":"","sources":["../src/test_pdf_render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,MAAM,OAAO,GAAG,uDAAuD,CAAC;AACxE,MAAM,OAAO,GAAG,sBAAsB,CAAC;AAEvC,KAAK,UAAU,GAAG;IACd,IAAI,CAAC;QACD,6BAA6B;QAC7B,IAAI,CAAC;YACD,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,KAAK,CAAC,+BAA+B,OAAO,EAAE,CAAC,CAAC;YACxD,OAAO;QACX,CAAC;QAED,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAEjE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,MAAM,YAAY,OAAO,EAAE,CAAC,CAAC;QAEvD,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YAErE,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,KAAK,CAAC,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;YAErC,IAAI,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;oBAC5B,OAAO;oBACP,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,IAAI;oBACjB,aAAa,EAAE,IAAI;oBACnB,WAAW,EAAE,IAAI,EAAE,wBAAwB;oBAC3C,eAAe,EAAE,GAAG,CAAC,yCAAyC;iBACjE,CAAC,CAAC;gBAEH,OAAO,CAAC,OAAO,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC;YAC5C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,qBAAqB,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC;QACL,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;AACL,CAAC;AAED,GAAG,EAAE,CAAC"}
@@ -1,102 +0,0 @@
1
- declare class WebElementRequests {
2
- constructor(options?: {});
3
- /**
4
- * Add an element selector or text to be requested for a specific URL
5
- * @param {string} url - The URL where the element should be found
6
- * @param {string} query - CSS selector or text to search for
7
- * @param {string} type - 'selector' or 'text'
8
- * @param {Function} callback - Optional callback when position is received
9
- * @returns {Object} Status object with { new: boolean }
10
- */
11
- addElementRequest(url: any, query: any, type?: string, callback?: any): {
12
- new: boolean;
13
- };
14
- /**
15
- * Remove an element request
16
- * @param {string} url - The URL
17
- * @param {string} query - The selector or text to remove
18
- * @param {string} type - 'selector' or 'text'
19
- */
20
- removeElementRequest(url: any, query: any, type?: string): void;
21
- setUrlTargetedDomElements(url: any, domTargets: any): void;
22
- assignTargetedDomElements(url: any, domTargets: any): void;
23
- /**
24
- * Get all queries that need to be requested for a URL
25
- * @param {string} url - The URL
26
- * @returns {Array} Array of {query, type} objects to request
27
- */
28
- getSelectorsForUrl(url: any): unknown[];
29
- /**
30
- * Store position results for a URL
31
- * @param {string} url - The URL
32
- * @param {Object} positions - Position data from getPositions()
33
- */
34
- storePositions(url: any, positions: any): void;
35
- /**
36
- * Get stored position data for a specific element
37
- * @param {string} url - The URL
38
- * @param {string} selector - CSS selector
39
- * @returns {Object|null} Position data or null if not found
40
- */
41
- getElementPosition(url: any, query: any, type: any, callback?: any): any;
42
- /**
43
- * Get all stored positions for a URL
44
- * @param {string} url - The URL
45
- * @returns {Map} Map of selector -> position data
46
- */
47
- getAllPositionsForUrl(url: any): any;
48
- /**
49
- * Check if we have recent position data for an element
50
- * @param {string} url - The URL
51
- * @param {string} selector - CSS selector
52
- * @param {number} maxAge - Maximum age in milliseconds (default: 5 minutes)
53
- * @returns {boolean} True if we have recent data
54
- */
55
- hasRecentPosition(url: any, selector: any, maxAge?: number): boolean;
56
- /**
57
- * Get all URLs that have pending requests
58
- * @returns {Array} Array of URLs with pending requests
59
- */
60
- getUrlsWithRequests(): unknown[];
61
- /**
62
- * Clear all stored data for a URL
63
- * @param {string} url - The URL to clear
64
- */
65
- clearUrlData(url: any): void;
66
- /**
67
- * Clear all stored data
68
- */
69
- clearAllData(): void;
70
- /**
71
- * Get statistics about stored data
72
- * @returns {Object} Statistics object
73
- */
74
- getStats(): {
75
- urlsWithRequests: any;
76
- urlsWithResults: any;
77
- totalRequests: number;
78
- totalResults: number;
79
- };
80
- /**
81
- * Export data for debugging/serialization
82
- * @returns {Object} Exportable data
83
- */
84
- export(): {
85
- requests: {};
86
- results: {};
87
- stats: {
88
- urlsWithRequests: any;
89
- urlsWithResults: any;
90
- totalRequests: number;
91
- totalResults: number;
92
- };
93
- };
94
- /**
95
- * Import data from export
96
- * @param {Object} data - Data from export()
97
- */
98
- import(data: any): void;
99
- }
100
- declare const webElementRequests: WebElementRequests;
101
- export { WebElementRequests, webElementRequests };
102
- //# sourceMappingURL=web-element-requests.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"web-element-requests.d.ts","sourceRoot":"","sources":["../src/web-element-requests.ts"],"names":[],"mappings":"AAMA,cAAM,kBAAkB;gBACR,OAAO,KAAK;IAUxB;;;;;;;OAOG;IACH,iBAAiB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,SAAa,EAAE,QAAQ,MAAO;;;IAiChE;;;;;OAKG;IACH,oBAAoB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,SAAa;IAgBlD,yBAAyB,CAAC,GAAG,KAAA,EAAE,UAAU,KAAA;IAKzC,yBAAyB,CAAC,GAAG,KAAA,EAAE,UAAU,KAAA;IAIzC;;;;OAIG;IACH,kBAAkB,CAAC,GAAG,KAAA;IAOtB;;;;OAIG;IACH,cAAc,CAAC,GAAG,KAAA,EAAE,SAAS,KAAA;IA+B7B;;;;;OAKG;IACH,kBAAkB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA,EAAE,QAAQ,MAAO;IASpD;;;;OAIG;IACH,qBAAqB,CAAC,GAAG,KAAA;IAIzB;;;;;;OAMG;IACH,iBAAiB,CAAC,GAAG,KAAA,EAAE,QAAQ,KAAA,EAAE,MAAM,SAAgB;IAQvD;;;OAGG;IACH,mBAAmB;IAInB;;;OAGG;IACH,YAAY,CAAC,GAAG,KAAA;IAQhB;;OAEG;IACH,YAAY;IAQZ;;;OAGG;IACH,QAAQ;;;;;;IAmBR;;;OAGG;IACH,MAAM;;;;;;;;;;IAyBN;;;OAGG;IACH,MAAM,CAAC,IAAI,KAAA;CAiCd;AAGD,QAAA,MAAM,kBAAkB,oBAItB,CAAC;AAGH,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC"}