@sun-asterisk/sungen 1.0.19 → 1.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/README.md +3 -3
  2. package/dist/cli/commands/add.d.ts +3 -0
  3. package/dist/cli/commands/add.d.ts.map +1 -0
  4. package/dist/cli/commands/add.js +27 -0
  5. package/dist/cli/commands/add.js.map +1 -0
  6. package/dist/cli/commands/cache-clear.d.ts +3 -0
  7. package/dist/cli/commands/cache-clear.d.ts.map +1 -0
  8. package/dist/cli/commands/cache-clear.js +24 -0
  9. package/dist/cli/commands/cache-clear.js.map +1 -0
  10. package/dist/cli/commands/full.d.ts +3 -0
  11. package/dist/cli/commands/full.d.ts.map +1 -0
  12. package/dist/cli/commands/full.js +37 -0
  13. package/dist/cli/commands/full.js.map +1 -0
  14. package/dist/cli/commands/generate.d.ts +3 -0
  15. package/dist/cli/commands/generate.d.ts.map +1 -0
  16. package/dist/cli/commands/generate.js +53 -0
  17. package/dist/cli/commands/generate.js.map +1 -0
  18. package/dist/cli/commands/init.d.ts +3 -0
  19. package/dist/cli/commands/init.d.ts.map +1 -0
  20. package/dist/cli/commands/init.js +20 -0
  21. package/dist/cli/commands/init.js.map +1 -0
  22. package/dist/cli/commands/live-scan.d.ts +3 -0
  23. package/dist/cli/commands/live-scan.d.ts.map +1 -0
  24. package/dist/cli/commands/{live-scan-command.js → live-scan.js} +22 -16
  25. package/dist/cli/commands/live-scan.js.map +1 -0
  26. package/dist/cli/commands/makeauth.d.ts +3 -0
  27. package/dist/cli/commands/makeauth.d.ts.map +1 -0
  28. package/dist/cli/commands/makeauth.js +76 -0
  29. package/dist/cli/commands/makeauth.js.map +1 -0
  30. package/dist/cli/commands/map.d.ts +3 -0
  31. package/dist/cli/commands/map.d.ts.map +1 -0
  32. package/dist/cli/commands/map.js +93 -0
  33. package/dist/cli/commands/map.js.map +1 -0
  34. package/dist/cli/commands/validate.d.ts +3 -0
  35. package/dist/cli/commands/validate.d.ts.map +1 -0
  36. package/dist/cli/commands/validate.js +43 -0
  37. package/dist/cli/commands/validate.js.map +1 -0
  38. package/dist/cli/index.js +29 -442
  39. package/dist/cli/index.js.map +1 -1
  40. package/dist/cli/types.d.ts +9 -0
  41. package/dist/cli/types.d.ts.map +1 -0
  42. package/dist/cli/types.js +7 -0
  43. package/dist/cli/types.js.map +1 -0
  44. package/dist/cli/utils.d.ts +6 -0
  45. package/dist/cli/utils.d.ts.map +1 -0
  46. package/dist/cli/utils.js +101 -0
  47. package/dist/cli/utils.js.map +1 -0
  48. package/dist/core/live-scanner/matrix-reader.d.ts.map +1 -1
  49. package/dist/core/live-scanner/matrix-reader.js +2 -40
  50. package/dist/core/live-scanner/matrix-reader.js.map +1 -1
  51. package/dist/core/live-scanner/scanner.d.ts.map +1 -1
  52. package/dist/core/live-scanner/scanner.js +22 -4
  53. package/dist/core/live-scanner/scanner.js.map +1 -1
  54. package/dist/core/live-scanner/step-replayer.d.ts +1 -1
  55. package/dist/core/live-scanner/step-replayer.d.ts.map +1 -1
  56. package/dist/core/live-scanner/step-replayer.js +107 -6
  57. package/dist/core/live-scanner/step-replayer.js.map +1 -1
  58. package/dist/core/live-scanner/types.d.ts +1 -0
  59. package/dist/core/live-scanner/types.d.ts.map +1 -1
  60. package/dist/core/validator/selector-validator.d.ts.map +1 -1
  61. package/dist/core/validator/selector-validator.js +2 -1
  62. package/dist/core/validator/selector-validator.js.map +1 -1
  63. package/dist/generators/scaffold-generator/index.d.ts +2 -1
  64. package/dist/generators/scaffold-generator/index.d.ts.map +1 -1
  65. package/dist/generators/scaffold-generator/index.js +21 -1
  66. package/dist/generators/scaffold-generator/index.js.map +1 -1
  67. package/dist/generators/test-generator/adapters/playwright/templates/steps/actions/click-select-action.hbs +2 -0
  68. package/dist/generators/test-generator/adapters/playwright/templates/steps/actions/wait-for-role-with-data.hbs +1 -0
  69. package/dist/generators/test-generator/adapters/playwright/templates/steps/actions/wait-for-role.hbs +1 -0
  70. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/checked-assertion.hbs +2 -1
  71. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/column-cell-assertion.hbs +3 -0
  72. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/contain-text-assertion.hbs +2 -1
  73. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/count-assertion.hbs +2 -1
  74. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-assertion.hbs +2 -1
  75. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-with-filter-assertion.hbs +2 -1
  76. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-with-role-variable-assertion.hbs +4 -3
  77. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-with-variable-assertion.hbs +2 -1
  78. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/empty-assertion.hbs +2 -1
  79. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/enabled-assertion.hbs +2 -1
  80. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/focused-assertion.hbs +2 -1
  81. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/have-text-assertion.hbs +2 -1
  82. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-dialog-heading-assertion.hbs +2 -0
  83. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-with-filter-assertion.hbs +2 -1
  84. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-with-role-variable-assertion.hbs +4 -3
  85. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-with-variable-assertion.hbs +2 -1
  86. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/is-hidden-assertion.hbs +1 -0
  87. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/list-item-count-assertion.hbs +2 -1
  88. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/not-checked-assertion.hbs +2 -1
  89. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/page-assertion.hbs +1 -0
  90. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-assertion.hbs +2 -1
  91. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-dialog-heading-assertion.hbs +2 -0
  92. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-locator-variable-assertion.hbs +2 -1
  93. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-role-variable-assertion.hbs +4 -3
  94. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-value-assertion.hbs +2 -1
  95. package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-variable-assertion.hbs +1 -0
  96. package/dist/generators/test-generator/adapters/playwright/templates/steps/navigation/navigation.hbs +1 -1
  97. package/dist/generators/test-generator/adapters/playwright/templates/steps/navigation/wait-for-element-with-text.hbs +1 -1
  98. package/dist/generators/test-generator/patterns/assertion-patterns.d.ts.map +1 -1
  99. package/dist/generators/test-generator/patterns/assertion-patterns.js +95 -58
  100. package/dist/generators/test-generator/patterns/assertion-patterns.js.map +1 -1
  101. package/dist/generators/test-generator/patterns/form-patterns.d.ts +0 -2
  102. package/dist/generators/test-generator/patterns/form-patterns.d.ts.map +1 -1
  103. package/dist/generators/test-generator/patterns/form-patterns.js +34 -47
  104. package/dist/generators/test-generator/patterns/form-patterns.js.map +1 -1
  105. package/dist/generators/test-generator/patterns/index.d.ts +3 -1
  106. package/dist/generators/test-generator/patterns/index.d.ts.map +1 -1
  107. package/dist/generators/test-generator/patterns/index.js +20 -3
  108. package/dist/generators/test-generator/patterns/index.js.map +1 -1
  109. package/dist/generators/test-generator/patterns/interaction-patterns.d.ts +0 -1
  110. package/dist/generators/test-generator/patterns/interaction-patterns.d.ts.map +1 -1
  111. package/dist/generators/test-generator/patterns/interaction-patterns.js +44 -85
  112. package/dist/generators/test-generator/patterns/interaction-patterns.js.map +1 -1
  113. package/dist/generators/test-generator/patterns/legacy-patterns.d.ts +7 -0
  114. package/dist/generators/test-generator/patterns/legacy-patterns.d.ts.map +1 -0
  115. package/dist/generators/test-generator/patterns/legacy-patterns.js +98 -0
  116. package/dist/generators/test-generator/patterns/legacy-patterns.js.map +1 -0
  117. package/dist/generators/test-generator/patterns/navigation-patterns.d.ts +0 -2
  118. package/dist/generators/test-generator/patterns/navigation-patterns.d.ts.map +1 -1
  119. package/dist/generators/test-generator/patterns/navigation-patterns.js +14 -42
  120. package/dist/generators/test-generator/patterns/navigation-patterns.js.map +1 -1
  121. package/dist/generators/test-generator/patterns/setup-patterns.d.ts +0 -1
  122. package/dist/generators/test-generator/patterns/setup-patterns.d.ts.map +1 -1
  123. package/dist/generators/test-generator/patterns/setup-patterns.js +23 -35
  124. package/dist/generators/test-generator/patterns/setup-patterns.js.map +1 -1
  125. package/dist/generators/test-generator/patterns/types.d.ts +18 -3
  126. package/dist/generators/test-generator/patterns/types.d.ts.map +1 -1
  127. package/dist/generators/test-generator/step-mapper.d.ts +0 -15
  128. package/dist/generators/test-generator/step-mapper.d.ts.map +1 -1
  129. package/dist/generators/test-generator/step-mapper.js +4 -106
  130. package/dist/generators/test-generator/step-mapper.js.map +1 -1
  131. package/dist/{executor/test-generator.d.ts → generators/test-generator/types.d.ts} +4 -25
  132. package/dist/generators/test-generator/types.d.ts.map +1 -0
  133. package/dist/generators/test-generator/types.js +106 -0
  134. package/dist/generators/test-generator/types.js.map +1 -0
  135. package/dist/generators/test-generator/utils/data-resolver.d.ts.map +1 -1
  136. package/dist/generators/test-generator/utils/data-resolver.js +8 -17
  137. package/dist/generators/test-generator/utils/data-resolver.js.map +1 -1
  138. package/dist/generators/test-generator/utils/selector-resolver.d.ts.map +1 -1
  139. package/dist/generators/test-generator/utils/selector-resolver.js +10 -18
  140. package/dist/generators/test-generator/utils/selector-resolver.js.map +1 -1
  141. package/dist/orchestrator/cache-manager.d.ts +1 -23
  142. package/dist/orchestrator/cache-manager.d.ts.map +1 -1
  143. package/dist/orchestrator/cache-manager.js +1 -87
  144. package/dist/orchestrator/cache-manager.js.map +1 -1
  145. package/dist/orchestrator/pipeline.d.ts +11 -28
  146. package/dist/orchestrator/pipeline.d.ts.map +1 -1
  147. package/dist/orchestrator/pipeline.js +52 -371
  148. package/dist/orchestrator/pipeline.js.map +1 -1
  149. package/dist/orchestrator/reporter.d.ts +1 -1
  150. package/dist/orchestrator/reporter.d.ts.map +1 -1
  151. package/dist/orchestrator/screen-manager.js +1 -1
  152. package/dist/orchestrator/screen-manager.js.map +1 -1
  153. package/dist/utils/feature-finder.d.ts +9 -0
  154. package/dist/utils/feature-finder.d.ts.map +1 -0
  155. package/dist/utils/feature-finder.js +67 -0
  156. package/dist/utils/feature-finder.js.map +1 -0
  157. package/dist/utils/screen-paths.d.ts +10 -0
  158. package/dist/utils/screen-paths.d.ts.map +1 -0
  159. package/dist/utils/screen-paths.js +73 -0
  160. package/dist/utils/screen-paths.js.map +1 -0
  161. package/dist/utils/selector-loader.d.ts +6 -0
  162. package/dist/utils/selector-loader.d.ts.map +1 -0
  163. package/dist/utils/selector-loader.js +20 -0
  164. package/dist/utils/selector-loader.js.map +1 -0
  165. package/dist/utils/selector-types.d.ts +7 -0
  166. package/dist/utils/selector-types.d.ts.map +1 -0
  167. package/dist/utils/selector-types.js +19 -0
  168. package/dist/utils/selector-types.js.map +1 -0
  169. package/dist/utils/test-data-loader.d.ts +6 -0
  170. package/dist/utils/test-data-loader.d.ts.map +1 -0
  171. package/dist/utils/test-data-loader.js +20 -0
  172. package/dist/utils/test-data-loader.js.map +1 -0
  173. package/dist/utils/yaml-io.d.ts +14 -0
  174. package/dist/utils/yaml-io.d.ts.map +1 -0
  175. package/dist/utils/yaml-io.js +72 -0
  176. package/dist/utils/yaml-io.js.map +1 -0
  177. package/package.json +1 -1
  178. package/src/cli/commands/add.ts +25 -0
  179. package/src/cli/commands/cache-clear.ts +22 -0
  180. package/src/cli/commands/full.ts +35 -0
  181. package/src/cli/commands/generate.ts +55 -0
  182. package/src/cli/commands/init.ts +17 -0
  183. package/src/cli/commands/{live-scan-command.ts → live-scan.ts} +21 -18
  184. package/src/cli/commands/makeauth.ts +77 -0
  185. package/src/cli/commands/map.ts +97 -0
  186. package/src/cli/commands/validate.ts +43 -0
  187. package/src/cli/index.ts +32 -473
  188. package/src/cli/types.ts +9 -0
  189. package/src/cli/utils.ts +106 -0
  190. package/src/core/live-scanner/matrix-reader.ts +2 -8
  191. package/src/core/live-scanner/scanner.ts +27 -4
  192. package/src/core/live-scanner/step-replayer.ts +92 -6
  193. package/src/core/live-scanner/types.ts +1 -0
  194. package/src/core/validator/selector-validator.ts +3 -2
  195. package/src/generators/scaffold-generator/index.ts +23 -2
  196. package/src/generators/test-generator/adapters/playwright/templates/steps/actions/click-select-action.hbs +2 -0
  197. package/src/generators/test-generator/adapters/playwright/templates/steps/actions/wait-for-role-with-data.hbs +1 -0
  198. package/src/generators/test-generator/adapters/playwright/templates/steps/actions/wait-for-role.hbs +1 -0
  199. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/checked-assertion.hbs +2 -1
  200. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/column-cell-assertion.hbs +3 -0
  201. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/contain-text-assertion.hbs +2 -1
  202. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/count-assertion.hbs +2 -1
  203. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-assertion.hbs +2 -1
  204. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-with-filter-assertion.hbs +2 -1
  205. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-with-role-variable-assertion.hbs +4 -3
  206. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/disabled-with-variable-assertion.hbs +2 -1
  207. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/empty-assertion.hbs +2 -1
  208. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/enabled-assertion.hbs +2 -1
  209. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/focused-assertion.hbs +2 -1
  210. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/have-text-assertion.hbs +2 -1
  211. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-dialog-heading-assertion.hbs +2 -0
  212. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-with-filter-assertion.hbs +2 -1
  213. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-with-role-variable-assertion.hbs +4 -3
  214. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/hidden-with-variable-assertion.hbs +2 -1
  215. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/is-hidden-assertion.hbs +1 -0
  216. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/list-item-count-assertion.hbs +2 -1
  217. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/not-checked-assertion.hbs +2 -1
  218. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/page-assertion.hbs +1 -0
  219. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-assertion.hbs +2 -1
  220. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-dialog-heading-assertion.hbs +2 -0
  221. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-locator-variable-assertion.hbs +2 -1
  222. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-role-variable-assertion.hbs +4 -3
  223. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-value-assertion.hbs +2 -1
  224. package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/visible-with-variable-assertion.hbs +1 -0
  225. package/src/generators/test-generator/adapters/playwright/templates/steps/navigation/navigation.hbs +1 -1
  226. package/src/generators/test-generator/adapters/playwright/templates/steps/navigation/wait-for-element-with-text.hbs +1 -1
  227. package/src/generators/test-generator/patterns/assertion-patterns.ts +102 -62
  228. package/src/generators/test-generator/patterns/form-patterns.ts +38 -60
  229. package/src/generators/test-generator/patterns/index.ts +22 -4
  230. package/src/generators/test-generator/patterns/interaction-patterns.ts +47 -107
  231. package/src/generators/test-generator/patterns/legacy-patterns.ts +104 -0
  232. package/src/generators/test-generator/patterns/navigation-patterns.ts +27 -69
  233. package/src/generators/test-generator/patterns/setup-patterns.ts +23 -41
  234. package/src/generators/test-generator/patterns/types.ts +26 -9
  235. package/src/generators/test-generator/step-mapper.ts +4 -124
  236. package/src/generators/test-generator/types.ts +131 -0
  237. package/src/generators/test-generator/utils/data-resolver.ts +8 -13
  238. package/src/generators/test-generator/utils/selector-resolver.ts +15 -17
  239. package/src/orchestrator/cache-manager.ts +1 -107
  240. package/src/orchestrator/pipeline.ts +58 -433
  241. package/src/orchestrator/reporter.ts +1 -1
  242. package/src/orchestrator/screen-manager.ts +1 -1
  243. package/src/utils/feature-finder.ts +33 -0
  244. package/src/utils/screen-paths.ts +37 -0
  245. package/src/utils/selector-loader.ts +23 -0
  246. package/src/utils/selector-types.ts +17 -0
  247. package/src/utils/test-data-loader.ts +23 -0
  248. package/src/utils/yaml-io.ts +33 -0
  249. package/dist/cli/commands/auto-tag-command.d.ts +0 -8
  250. package/dist/cli/commands/auto-tag-command.d.ts.map +0 -1
  251. package/dist/cli/commands/auto-tag-command.js +0 -104
  252. package/dist/cli/commands/auto-tag-command.js.map +0 -1
  253. package/dist/cli/commands/live-scan-command.d.ts +0 -9
  254. package/dist/cli/commands/live-scan-command.d.ts.map +0 -1
  255. package/dist/cli/commands/live-scan-command.js.map +0 -1
  256. package/dist/executor/playwright/playwright-generator.d.ts +0 -33
  257. package/dist/executor/playwright/playwright-generator.d.ts.map +0 -1
  258. package/dist/executor/playwright/playwright-generator.js +0 -136
  259. package/dist/executor/playwright/playwright-generator.js.map +0 -1
  260. package/dist/executor/test-generator.d.ts.map +0 -1
  261. package/dist/executor/test-generator.js +0 -30
  262. package/dist/executor/test-generator.js.map +0 -1
  263. package/dist/generators/cli.d.ts +0 -7
  264. package/dist/generators/cli.d.ts.map +0 -1
  265. package/dist/generators/cli.js +0 -570
  266. package/dist/generators/cli.js.map +0 -1
  267. package/dist/input/cli-adapter.d.ts +0 -75
  268. package/dist/input/cli-adapter.d.ts.map +0 -1
  269. package/dist/input/cli-adapter.js +0 -218
  270. package/dist/input/cli-adapter.js.map +0 -1
  271. package/dist/input/config-adapter.d.ts +0 -25
  272. package/dist/input/config-adapter.d.ts.map +0 -1
  273. package/dist/input/config-adapter.js +0 -70
  274. package/dist/input/config-adapter.js.map +0 -1
  275. package/dist/input/input-adapter.d.ts +0 -28
  276. package/dist/input/input-adapter.d.ts.map +0 -1
  277. package/dist/input/input-adapter.js +0 -17
  278. package/dist/input/input-adapter.js.map +0 -1
  279. package/dist/input/vscode-adapter.d.ts +0 -62
  280. package/dist/input/vscode-adapter.d.ts.map +0 -1
  281. package/dist/input/vscode-adapter.js +0 -64
  282. package/dist/input/vscode-adapter.js.map +0 -1
  283. package/dist/tools/auto-tagger.d.ts +0 -107
  284. package/dist/tools/auto-tagger.d.ts.map +0 -1
  285. package/dist/tools/auto-tagger.js +0 -502
  286. package/dist/tools/auto-tagger.js.map +0 -1
  287. package/src/cli/commands/auto-tag-command.ts +0 -80
  288. package/src/executor/playwright/playwright-generator.ts +0 -125
  289. package/src/executor/test-generator.ts +0 -90
  290. package/src/generators/cli.ts +0 -640
  291. package/src/input/cli-adapter.ts +0 -233
  292. package/src/input/config-adapter.ts +0 -71
  293. package/src/input/input-adapter.ts +0 -32
  294. package/src/input/vscode-adapter.ts +0 -90
  295. package/src/tools/auto-tagger.ts +0 -572
@@ -1,13 +1,11 @@
1
1
  /**
2
2
  * Cache Manager
3
- * Centralized cache operations for UI models and selectors
3
+ * Manages cache directory operations
4
4
  */
5
5
 
6
6
  import * as fs from 'fs';
7
7
  import * as path from 'path';
8
8
  import { RuntimeConfig } from '../config/config-schema';
9
- import { UIModel } from '../core/ui-scanner/scanner-interface';
10
- import { SelectorBase } from '../core/selector-base/base-generator';
11
9
 
12
10
  export class CacheManager {
13
11
  private config: RuntimeConfig;
@@ -17,104 +15,11 @@ export class CacheManager {
17
15
  this.config = config;
18
16
  this.cacheDir = path.resolve(config.paths.cacheDir);
19
17
 
20
- // Ensure cache directory exists
21
18
  if (!fs.existsSync(this.cacheDir)) {
22
19
  fs.mkdirSync(this.cacheDir, { recursive: true });
23
20
  }
24
21
  }
25
22
 
26
- /**
27
- * Get cached UI model
28
- */
29
- async getUIModel(screenName: string): Promise<UIModel | null> {
30
- if (!this.config.cache.enabled) {
31
- return null;
32
- }
33
-
34
- const cacheFile = path.join(this.cacheDir, 'ui-models', `${screenName}.json`);
35
-
36
- if (!fs.existsSync(cacheFile)) {
37
- return null;
38
- }
39
-
40
- try {
41
- const content = fs.readFileSync(cacheFile, 'utf-8');
42
- const cached = JSON.parse(content);
43
-
44
- // Validate cache is not expired
45
- if (!this.isCacheValid(cached.timestamp)) {
46
- return null;
47
- }
48
-
49
- return cached;
50
- } catch {
51
- return null;
52
- }
53
- }
54
-
55
- /**
56
- * Save UI model to cache
57
- */
58
- async saveUIModel(screenName: string, uiModel: UIModel): Promise<void> {
59
- if (!this.config.cache.enabled) {
60
- return;
61
- }
62
-
63
- const cacheDir = path.join(this.cacheDir, 'ui-models');
64
- if (!fs.existsSync(cacheDir)) {
65
- fs.mkdirSync(cacheDir, { recursive: true });
66
- }
67
-
68
- const cacheFile = path.join(cacheDir, `${screenName}.json`);
69
- fs.writeFileSync(cacheFile, JSON.stringify(uiModel, null, 2), 'utf-8');
70
- }
71
-
72
- /**
73
- * Get cached selectors
74
- */
75
- async getSelectors(screenName: string): Promise<SelectorBase | null> {
76
- if (!this.config.cache.enabled) {
77
- return null;
78
- }
79
-
80
- const cacheFile = path.join(this.cacheDir, 'selectors', `${screenName}.json`);
81
-
82
- if (!fs.existsSync(cacheFile)) {
83
- return null;
84
- }
85
-
86
- try {
87
- const content = fs.readFileSync(cacheFile, 'utf-8');
88
- const cached = JSON.parse(content);
89
-
90
- // Validate cache is not expired
91
- if (!this.isCacheValid(cached.metadata.timestamp)) {
92
- return null;
93
- }
94
-
95
- return cached;
96
- } catch {
97
- return null;
98
- }
99
- }
100
-
101
- /**
102
- * Save selectors to cache
103
- */
104
- async saveSelectors(screenName: string, selectors: SelectorBase): Promise<void> {
105
- if (!this.config.cache.enabled) {
106
- return;
107
- }
108
-
109
- const cacheDir = path.join(this.cacheDir, 'selectors');
110
- if (!fs.existsSync(cacheDir)) {
111
- fs.mkdirSync(cacheDir, { recursive: true });
112
- }
113
-
114
- const cacheFile = path.join(cacheDir, `${screenName}.json`);
115
- fs.writeFileSync(cacheFile, JSON.stringify(selectors, null, 2), 'utf-8');
116
- }
117
-
118
23
  /**
119
24
  * Clear all caches
120
25
  */
@@ -124,15 +29,4 @@ export class CacheManager {
124
29
  fs.mkdirSync(this.cacheDir, { recursive: true });
125
30
  }
126
31
  }
127
-
128
- /**
129
- * Check if cache is valid (not expired)
130
- */
131
- private isCacheValid(timestamp: number): boolean {
132
- const now = Date.now();
133
- const age = now - timestamp;
134
- const ttl = this.config.cache.ttl * 1000; // Convert to ms
135
-
136
- return age < ttl;
137
- }
138
32
  }