@futdevpro/dynamo-e2e 1.18.8 → 1.18.10

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 (203) hide show
  1. package/.dynamo/pipeline.cicd.config.json +3 -3
  2. package/CHANGELOG.md +23 -0
  3. package/README.md +1 -1
  4. package/build/_modules/generators/_collections/cli-runner.util.d.ts.map +1 -1
  5. package/build/_modules/generators/_collections/cli-runner.util.js +5 -11
  6. package/build/_modules/generators/_collections/cli-runner.util.js.map +1 -1
  7. package/build/_modules/generators/bootstrap.spec.js +4 -3
  8. package/build/_modules/generators/bootstrap.spec.js.map +1 -1
  9. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.d.ts +22 -0
  10. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.d.ts.map +1 -0
  11. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.js +69 -0
  12. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.js.map +1 -0
  13. package/build/_modules/presets/_collections/global-setup.factory.d.ts +14 -0
  14. package/build/_modules/presets/_collections/global-setup.factory.d.ts.map +1 -0
  15. package/build/_modules/presets/_collections/global-setup.factory.js +113 -0
  16. package/build/_modules/presets/_collections/global-setup.factory.js.map +1 -0
  17. package/build/_modules/presets/_collections/playwright-config.factory.d.ts +19 -0
  18. package/build/_modules/presets/_collections/playwright-config.factory.d.ts.map +1 -0
  19. package/build/_modules/presets/_collections/playwright-config.factory.js +130 -0
  20. package/build/_modules/presets/_collections/playwright-config.factory.js.map +1 -0
  21. package/build/_modules/presets/_collections/viewport-preset-resolver.util.d.ts +8 -0
  22. package/build/_modules/presets/_collections/viewport-preset-resolver.util.d.ts.map +1 -0
  23. package/build/_modules/presets/_collections/viewport-preset-resolver.util.js +25 -0
  24. package/build/_modules/presets/_collections/viewport-preset-resolver.util.js.map +1 -0
  25. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.d.ts +28 -0
  26. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.d.ts.map +1 -0
  27. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.js +3 -0
  28. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.js.map +1 -0
  29. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.d.ts +52 -0
  30. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.d.ts.map +1 -0
  31. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.js +3 -0
  32. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.js.map +1 -0
  33. package/build/_modules/presets/_models/interfaces/project-split-options.interface.d.ts +27 -0
  34. package/build/_modules/presets/_models/interfaces/project-split-options.interface.d.ts.map +1 -0
  35. package/build/_modules/presets/_models/interfaces/project-split-options.interface.js +3 -0
  36. package/build/_modules/presets/_models/interfaces/project-split-options.interface.js.map +1 -0
  37. package/build/_modules/presets/index.d.ts +7 -0
  38. package/build/_modules/presets/index.d.ts.map +1 -1
  39. package/build/_modules/presets/index.js +12 -1
  40. package/build/_modules/presets/index.js.map +1 -1
  41. package/build/_modules/presets/presets.spec.d.ts +2 -0
  42. package/build/_modules/presets/presets.spec.d.ts.map +1 -0
  43. package/build/_modules/presets/presets.spec.js +286 -0
  44. package/build/_modules/presets/presets.spec.js.map +1 -0
  45. package/build/_modules/vqa/generators/ai-agent-readme.template.d.ts +2 -1
  46. package/build/_modules/vqa/generators/ai-agent-readme.template.d.ts.map +1 -1
  47. package/build/_modules/vqa/generators/ai-agent-readme.template.js +22 -3
  48. package/build/_modules/vqa/generators/ai-agent-readme.template.js.map +1 -1
  49. package/coverage/contracts/_collections/index.html +1 -1
  50. package/coverage/contracts/_collections/index.ts.html +1 -1
  51. package/coverage/contracts/_collections/utils/index.html +9 -9
  52. package/coverage/contracts/_collections/utils/test-id.util.ts.html +15 -30
  53. package/coverage/contracts/_enums/cwv-metric-type.enum.ts.html +1 -1
  54. package/coverage/contracts/_enums/field-test-case-type.enum.ts.html +4 -34
  55. package/coverage/contracts/_enums/index.html +5 -5
  56. package/coverage/contracts/_enums/index.ts.html +1 -1
  57. package/coverage/contracts/_enums/standard-viewport.enum.ts.html +1 -1
  58. package/coverage/contracts/_enums/test-expectation-type.enum.ts.html +1 -1
  59. package/coverage/contracts/_enums/test-run-mode-type.enum.ts.html +1 -1
  60. package/coverage/contracts/index.html +1 -1
  61. package/coverage/contracts/index.ts.html +1 -1
  62. package/coverage/cwv/_collections/cwv-aggregator.util.ts.html +1 -1
  63. package/coverage/cwv/_collections/cwv-comparison.util.ts.html +4 -4
  64. package/coverage/cwv/_collections/cwv-diagnose.util.ts.html +1 -1
  65. package/coverage/cwv/_collections/cwv-emission.util.ts.html +1 -1
  66. package/coverage/cwv/_collections/cwv-summarize.util.ts.html +1 -1
  67. package/coverage/cwv/_collections/index.html +7 -7
  68. package/coverage/cwv/_collections/inp-interaction-script.const.ts.html +1 -1
  69. package/coverage/cwv/_collections/web-vitals-page-script.const.ts.html +1 -1
  70. package/coverage/cwv/cwv-suite.generator.ts.html +3 -3
  71. package/coverage/cwv/index.html +5 -5
  72. package/coverage/generators/_collections/cli-runner.util.ts.html +1 -1
  73. package/coverage/generators/_collections/config-validator.util.ts.html +1 -1
  74. package/coverage/generators/_collections/field-emission.util.ts.html +103 -235
  75. package/coverage/generators/_collections/form-level-emission.util.ts.html +33 -39
  76. package/coverage/generators/_collections/index.html +31 -31
  77. package/coverage/generators/_collections/json-schema.util.ts.html +1 -1
  78. package/coverage/generators/_collections/preset-configs.const.ts.html +1 -1
  79. package/coverage/generators/_collections/spec-emission.util.ts.html +35 -35
  80. package/coverage/generators/_collections/test-case-filter.util.ts.html +66 -258
  81. package/coverage/generators/_collections/viewport-emission.util.ts.html +1 -1
  82. package/coverage/generators/form-suite.generator.ts.html +79 -97
  83. package/coverage/generators/index.html +18 -18
  84. package/coverage/generators/viewport-suite.generator.ts.html +3 -3
  85. package/coverage/index.html +50 -95
  86. package/coverage/lcov-report/contracts/_collections/index.html +1 -1
  87. package/coverage/lcov-report/contracts/_collections/index.ts.html +1 -1
  88. package/coverage/lcov-report/contracts/_collections/utils/index.html +9 -9
  89. package/coverage/lcov-report/contracts/_collections/utils/test-id.util.ts.html +15 -30
  90. package/coverage/lcov-report/contracts/_enums/cwv-metric-type.enum.ts.html +1 -1
  91. package/coverage/lcov-report/contracts/_enums/field-test-case-type.enum.ts.html +4 -34
  92. package/coverage/lcov-report/contracts/_enums/index.html +5 -5
  93. package/coverage/lcov-report/contracts/_enums/index.ts.html +1 -1
  94. package/coverage/lcov-report/contracts/_enums/standard-viewport.enum.ts.html +1 -1
  95. package/coverage/lcov-report/contracts/_enums/test-expectation-type.enum.ts.html +1 -1
  96. package/coverage/lcov-report/contracts/_enums/test-run-mode-type.enum.ts.html +1 -1
  97. package/coverage/lcov-report/contracts/index.html +1 -1
  98. package/coverage/lcov-report/contracts/index.ts.html +1 -1
  99. package/coverage/lcov-report/cwv/_collections/cwv-aggregator.util.ts.html +1 -1
  100. package/coverage/lcov-report/cwv/_collections/cwv-comparison.util.ts.html +4 -4
  101. package/coverage/lcov-report/cwv/_collections/cwv-diagnose.util.ts.html +1 -1
  102. package/coverage/lcov-report/cwv/_collections/cwv-emission.util.ts.html +1 -1
  103. package/coverage/lcov-report/cwv/_collections/cwv-summarize.util.ts.html +1 -1
  104. package/coverage/lcov-report/cwv/_collections/index.html +7 -7
  105. package/coverage/lcov-report/cwv/_collections/inp-interaction-script.const.ts.html +1 -1
  106. package/coverage/lcov-report/cwv/_collections/web-vitals-page-script.const.ts.html +1 -1
  107. package/coverage/lcov-report/cwv/cwv-suite.generator.ts.html +3 -3
  108. package/coverage/lcov-report/cwv/index.html +5 -5
  109. package/coverage/lcov-report/generators/_collections/cli-runner.util.ts.html +1 -1
  110. package/coverage/lcov-report/generators/_collections/config-validator.util.ts.html +1 -1
  111. package/coverage/lcov-report/generators/_collections/field-emission.util.ts.html +103 -235
  112. package/coverage/lcov-report/generators/_collections/form-level-emission.util.ts.html +33 -39
  113. package/coverage/lcov-report/generators/_collections/index.html +31 -31
  114. package/coverage/lcov-report/generators/_collections/json-schema.util.ts.html +1 -1
  115. package/coverage/lcov-report/generators/_collections/preset-configs.const.ts.html +1 -1
  116. package/coverage/lcov-report/generators/_collections/spec-emission.util.ts.html +35 -35
  117. package/coverage/lcov-report/generators/_collections/test-case-filter.util.ts.html +66 -258
  118. package/coverage/lcov-report/generators/_collections/viewport-emission.util.ts.html +1 -1
  119. package/coverage/lcov-report/generators/form-suite.generator.ts.html +79 -97
  120. package/coverage/lcov-report/generators/index.html +18 -18
  121. package/coverage/lcov-report/generators/viewport-suite.generator.ts.html +3 -3
  122. package/coverage/lcov-report/index.html +50 -95
  123. package/coverage/lcov-report/runtime/_collections/assertion-helpers.util.ts.html +7 -16
  124. package/coverage/lcov-report/runtime/_collections/index.html +17 -17
  125. package/coverage/lcov-report/runtime/_collections/unique-generator.util.ts.html +3 -3
  126. package/coverage/lcov-report/runtime/_collections/wait-helpers.util.ts.html +5 -5
  127. package/coverage/lcov-report/runtime/_services/dialog-page-object.ts.html +2 -2
  128. package/coverage/lcov-report/runtime/_services/field-page-object.ts.html +2 -2
  129. package/coverage/lcov-report/runtime/_services/form-page-object.ts.html +2 -2
  130. package/coverage/lcov-report/runtime/_services/index.html +9 -9
  131. package/coverage/lcov-report/runtime/_services/loader-page-object.ts.html +2 -2
  132. package/coverage/lcov-report/runtime/_services/logger.service.ts.html +5 -5
  133. package/coverage/lcov-report/runtime/_services/login-flow-helper.base.ts.html +2 -2
  134. package/coverage/lcov-report/runtime/_services/nav-page-object.ts.html +2 -2
  135. package/coverage/lcov-report/runtime/_services/toast-page-object.ts.html +1 -1
  136. package/coverage/lcov-report/runtime/_services/wave-2b-page-objects.ts.html +6 -6
  137. package/coverage/lcov-report/runtime/index.html +1 -1
  138. package/coverage/lcov-report/runtime/index.ts.html +1 -1
  139. package/coverage/lcov.info +804 -3165
  140. package/coverage/runtime/_collections/assertion-helpers.util.ts.html +7 -16
  141. package/coverage/runtime/_collections/index.html +17 -17
  142. package/coverage/runtime/_collections/unique-generator.util.ts.html +3 -3
  143. package/coverage/runtime/_collections/wait-helpers.util.ts.html +5 -5
  144. package/coverage/runtime/_services/dialog-page-object.ts.html +2 -2
  145. package/coverage/runtime/_services/field-page-object.ts.html +2 -2
  146. package/coverage/runtime/_services/form-page-object.ts.html +2 -2
  147. package/coverage/runtime/_services/index.html +9 -9
  148. package/coverage/runtime/_services/loader-page-object.ts.html +2 -2
  149. package/coverage/runtime/_services/logger.service.ts.html +5 -5
  150. package/coverage/runtime/_services/login-flow-helper.base.ts.html +2 -2
  151. package/coverage/runtime/_services/nav-page-object.ts.html +2 -2
  152. package/coverage/runtime/_services/toast-page-object.ts.html +1 -1
  153. package/coverage/runtime/_services/wave-2b-page-objects.ts.html +6 -6
  154. package/coverage/runtime/index.html +1 -1
  155. package/coverage/runtime/index.ts.html +1 -1
  156. package/coverage/tmp/coverage-228636-1781075225757-0.json +1 -0
  157. package/coverage/tmp/coverage-228704-1781075227108-0.json +1 -0
  158. package/dogfood/generated/date-range-field-new.spec.ts +54 -0
  159. package/dogfood/generated/password-field-new.spec.ts +97 -0
  160. package/dogfood/generated/radio-select-field-new.spec.ts +69 -0
  161. package/dogfood/generated/slider-field-new.spec.ts +47 -0
  162. package/dogfood/generated/text-field-new.spec.ts +0 -0
  163. package/logs/cicd-job.json +3 -0
  164. package/logs/cicd-report.json +3 -0
  165. package/logs/cicd-status.json +3 -0
  166. package/package.json +4 -1
  167. package/.dynamo/logs/cicd-pipeline/status.json +0 -74
  168. package/coverage/lcov-report/vqa/_collections/utils/deterministic-finding.util.ts.html +0 -481
  169. package/coverage/lcov-report/vqa/_collections/utils/finding-id.util.ts.html +0 -214
  170. package/coverage/lcov-report/vqa/_collections/utils/finding-validator.util.ts.html +0 -463
  171. package/coverage/lcov-report/vqa/_collections/utils/index.html +0 -176
  172. package/coverage/lcov-report/vqa/_collections/utils/manifest-validator.util.ts.html +0 -652
  173. package/coverage/lcov-report/vqa/_collections/utils/risk-score.util.ts.html +0 -424
  174. package/coverage/lcov-report/vqa/_enums/dom-evidence-detector.enum.ts.html +0 -214
  175. package/coverage/lcov-report/vqa/_enums/finding-severity.enum.ts.html +0 -133
  176. package/coverage/lcov-report/vqa/_enums/finding-status.enum.ts.html +0 -151
  177. package/coverage/lcov-report/vqa/_enums/index.html +0 -161
  178. package/coverage/lcov-report/vqa/_enums/visual-state-type.enum.ts.html +0 -235
  179. package/coverage/lcov-report/vqa/generators/ai-agent-readme.template.ts.html +0 -643
  180. package/coverage/lcov-report/vqa/generators/bundle-summary.template.ts.html +0 -316
  181. package/coverage/lcov-report/vqa/generators/capture-spec.generator.ts.html +0 -835
  182. package/coverage/lcov-report/vqa/generators/comparison-bundle.generator.ts.html +0 -898
  183. package/coverage/lcov-report/vqa/generators/index.html +0 -176
  184. package/coverage/lcov-report/vqa/generators/review-bundle.generator.ts.html +0 -559
  185. package/coverage/tmp/coverage-13181-1784118006591-0.json +0 -1
  186. package/coverage/tmp/coverage-13186-1784118005044-0.json +0 -1
  187. package/coverage/vqa/_collections/utils/deterministic-finding.util.ts.html +0 -481
  188. package/coverage/vqa/_collections/utils/finding-id.util.ts.html +0 -214
  189. package/coverage/vqa/_collections/utils/finding-validator.util.ts.html +0 -463
  190. package/coverage/vqa/_collections/utils/index.html +0 -176
  191. package/coverage/vqa/_collections/utils/manifest-validator.util.ts.html +0 -652
  192. package/coverage/vqa/_collections/utils/risk-score.util.ts.html +0 -424
  193. package/coverage/vqa/_enums/dom-evidence-detector.enum.ts.html +0 -214
  194. package/coverage/vqa/_enums/finding-severity.enum.ts.html +0 -133
  195. package/coverage/vqa/_enums/finding-status.enum.ts.html +0 -151
  196. package/coverage/vqa/_enums/index.html +0 -161
  197. package/coverage/vqa/_enums/visual-state-type.enum.ts.html +0 -235
  198. package/coverage/vqa/generators/ai-agent-readme.template.ts.html +0 -643
  199. package/coverage/vqa/generators/bundle-summary.template.ts.html +0 -316
  200. package/coverage/vqa/generators/capture-spec.generator.ts.html +0 -835
  201. package/coverage/vqa/generators/comparison-bundle.generator.ts.html +0 -898
  202. package/coverage/vqa/generators/index.html +0 -176
  203. package/coverage/vqa/generators/review-bundle.generator.ts.html +0 -559
@@ -0,0 +1,28 @@
1
+ import type { Page } from '@playwright/test';
2
+ /**
3
+ * A `DyE2E_getGlobalSetup` factory opciói — a flotta e2e-global-setup.ts-eiből
4
+ * desztillált közös mag (dotenv + env-check + reachability + opcionális login-once).
5
+ */
6
+ export interface DyE2E_GlobalSetup_Options {
7
+ /** Default E2E target ha nincs `E2E_BASE_URL` env-override (a config-gal azonos érték legyen). */
8
+ defaultBaseUrl: string;
9
+ /** A hívó e2e-mappája (jellemzően `__dirname`) — innen töltődik a `.env` dotenv-vel. Default: `process.cwd()`. */
10
+ envDir?: string;
11
+ /** Kötelező env-változó nevek — hiány esetén warn (NEM fatális; a spec-ek fallback-elhetnek). */
12
+ requiredEnvVars?: string[];
13
+ /** baseURL-reachability-check timeout ms-ben (AbortController + fetch). Default: `5_000`. */
14
+ reachabilityTimeoutMs?: number;
15
+ /**
16
+ * Opcionális login-once hook (C513 storageState-reuse minta): a factory nyit egy
17
+ * chromium page-et és ezt hívja; a hook felelős a login-flow végigviteléért.
18
+ * FDP-specifikus login-helper ide NEM tartozik — az a `fdp-e2e-helpers` rétege.
19
+ */
20
+ login?: (page: Page) => Promise<void>;
21
+ /**
22
+ * storageState mentési path (pl. `.auth-state.json`). Ha a login-hook sikeres → real state;
23
+ * ha nincs login-hook vagy a login bukik → empty stub (a config `use.storageState`-je
24
+ * fájlt vár, ezért MINDIG léteznie kell).
25
+ */
26
+ storageStatePath?: string;
27
+ }
28
+ //# sourceMappingURL=global-setup-options.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-setup-options.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/presets/_models/interfaces/global-setup-options.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,kGAAkG;IAClG,cAAc,EAAE,MAAM,CAAC;IACvB,kHAAkH;IAClH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iGAAiG;IACjG,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,6FAA6F;IAC7F,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;OAIG;IACH,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=global-setup-options.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-setup-options.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/presets/_models/interfaces/global-setup-options.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,52 @@
1
+ import type { PlaywrightTestConfig } from '@playwright/test';
2
+ import { DyE2E_Viewport_Interface } from '../../../contracts/_models/interfaces/viewport.interface';
3
+ import { DyE2E_ProjectSplit_Options, DyE2E_TestFilePattern_Type } from './project-split-options.interface';
4
+ /**
5
+ * Viewport-opció a `DyE2E_getPlaywrightConfig`-hoz: named preset VAGY custom viewport-tömb.
6
+ * - `'visual-8'` — 8 viewport-os Tailwind-breakpoint visual-matrix (organizer-minta)
7
+ * - `'named-4'` — 4 nevesített viewport (desktop-1920 / wide-2560 / tablet-1024 / mobile-414, overseer-minta)
8
+ * - `'single'` — 1 standard desktop viewport (master-prompter-minta)
9
+ * - custom tömb — a consumer saját `DyE2E_Viewport_Interface[]` katalógusa
10
+ */
11
+ export type DyE2E_ViewportsOption_Type = 'visual-8' | 'named-4' | 'single' | DyE2E_Viewport_Interface[];
12
+ /**
13
+ * A `DyE2E_getPlaywrightConfig` factory opciói — a flotta playwright.config.ts-eiből
14
+ * desztillált közös mag paraméterezése (organizer / overseer / master-prompter minták).
15
+ */
16
+ export interface DyE2E_PlaywrightConfig_Options {
17
+ /**
18
+ * Default E2E target ha nincs `E2E_BASE_URL` env-override.
19
+ * KONVENCIÓ: MINDIG a deployolt TEST szerver — SOHA nem localhost (a CICD-runner ne
20
+ * célozzon PROD-ot; memory: feedback_e2e_ldp_local_cicd_test_target).
21
+ */
22
+ defaultBaseUrl: string;
23
+ /** A hívó e2e-mappája (jellemzően `__dirname`) — innen töltődik a `.env` dotenv-vel. Default: `process.cwd()`. */
24
+ envDir?: string;
25
+ /** Playwright testDir. Default: `'./tests'`. */
26
+ testDir?: string;
27
+ /** globalSetup fájl abszolút path-ja — a consumer `require.resolve('./e2e-global-setup.ts')`-t ad át. */
28
+ globalSetupPath?: string;
29
+ /** Viewport-preset név vagy custom viewport-tömb. Default: `'single'`. */
30
+ viewports?: DyE2E_ViewportsOption_Type;
31
+ /** Playwright fullyParallel. Default: `false` (flotta-minta: deployolt env ellen szekvenciális). */
32
+ fullyParallel?: boolean;
33
+ /** Fix worker-szám — felülírja az isHttps-derivációt; az `E2E_WORKERS` env ezt is felülírja. */
34
+ workers?: number;
35
+ /** Retry-szám CI-ben (`process.env.CI` alatt). Default: `0`; lokálban MINDIG 0 (a flake ott jel, nem zaj). */
36
+ retriesInCi?: number;
37
+ /** Per-test timeout ms-ben. Default: `60_000`. */
38
+ timeout?: number;
39
+ /** expect() timeout ms-ben. Default: `10_000`. */
40
+ expectTimeout?: number;
41
+ /** Extra `use`-mezők (pl. `storageState`) — a common-mag `use` blokkjára merge-ölődnek. */
42
+ extraUse?: PlaywrightTestConfig['use'];
43
+ /** Top-level (suite-szintű) testIgnore — pl. `['tests/modules/**']` (organizer modul-teszt kizárás). */
44
+ testIgnore?: DyE2E_TestFilePattern_Type;
45
+ /**
46
+ * Projekt-split mód (organizer-minta): 1 funkcionális projekt (visual-mappa kizárva) +
47
+ * a `viewports` viewport-jai visual-regression projektként (`testMatch`-csel szűkítve).
48
+ * Ha nincs megadva, a projects a sima viewport-fan-out marad.
49
+ */
50
+ projectSplit?: DyE2E_ProjectSplit_Options;
51
+ }
52
+ //# sourceMappingURL=playwright-config-options.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright-config-options.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/presets/_models/interfaces/playwright-config-options.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AACpG,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE3G;;;;;;GAMG;AACH,MAAM,MAAM,0BAA0B,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,wBAAwB,EAAE,CAAC;AAExG;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,kHAAkH;IAClH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yGAAyG;IACzG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,0BAA0B,CAAC;IACvC,oGAAoG;IACpG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gGAAgG;IAChG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8GAA8G;IAC9G,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACvC,wGAAwG;IACxG,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC;;;;OAIG;IACH,YAAY,CAAC,EAAE,0BAA0B,CAAC;CAC3C"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=playwright-config-options.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright-config-options.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/presets/_models/interfaces/playwright-config-options.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ /** Playwright testMatch / testIgnore mező-alak (a Project-szintű filter-mezők típusa). */
2
+ export type DyE2E_TestFilePattern_Type = string | RegExp | (string | RegExp)[];
3
+ /**
4
+ * A funkcionális projekt paraméterei a `projectSplit` módban.
5
+ * A funkcionális projekt a viewport-agnosztikus spec-eket futtatja (Desktop Chrome device,
6
+ * viewport-fan-out nélkül), a visual-mappát pedig kizárja (`testIgnore`).
7
+ */
8
+ export interface DyE2E_ProjectSplitFunctional_Options {
9
+ /** A funkcionális projekt neve. Default: `'chromium'` (organizer-minta). */
10
+ name?: string;
11
+ /** A funkcionális projektből kizárt spec-ek. Default: `['**\/visual/**']`. */
12
+ testIgnore?: DyE2E_TestFilePattern_Type;
13
+ }
14
+ /**
15
+ * Projekt-split opció a `DyE2E_getPlaywrightConfig`-hoz (organizer-minta, BL-20260602-004):
16
+ * a `projects` lista NEM sima viewport-fan-out, hanem
17
+ * - 1 funkcionális projekt (Desktop Chrome, visual-mappa kizárva `testIgnore`-ral), PLUSZ
18
+ * - a `viewports` opció viewport-jai visual-regression projektként (`testMatch`-csel szűkítve
19
+ * a visual-spec-ekre — csak azok futnak minden viewport-on).
20
+ */
21
+ export interface DyE2E_ProjectSplit_Options {
22
+ /** A funkcionális projekt paraméterei. Default: `{ name: 'chromium', testIgnore: ['**\/visual/**'] }`. */
23
+ functional?: DyE2E_ProjectSplitFunctional_Options;
24
+ /** A visual-projektek testMatch-e. Default: `/visual\/.*\.spec\.ts/`. */
25
+ visualTestMatch?: DyE2E_TestFilePattern_Type;
26
+ }
27
+ //# sourceMappingURL=project-split-options.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-split-options.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/presets/_models/interfaces/project-split-options.interface.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;AAE/E;;;;GAIG;AACH,MAAM,WAAW,oCAAoC;IACnD,4EAA4E;IAC5E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,UAAU,CAAC,EAAE,0BAA0B,CAAC;CACzC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,0BAA0B;IACzC,0GAA0G;IAC1G,UAAU,CAAC,EAAE,oCAAoC,CAAC;IAClD,yEAAyE;IACzE,eAAe,CAAC,EAAE,0BAA0B,CAAC;CAC9C"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=project-split-options.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-split-options.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/presets/_models/interfaces/project-split-options.interface.ts"],"names":[],"mappings":""}
@@ -9,6 +9,13 @@
9
9
  */
10
10
  export { DyE2E_FormSuite_Generator } from '../generators/form-suite.generator';
11
11
  export type { DyE2E_FormSuiteGenerate_Options } from '../generators/_models/form-suite-generate-options.interface';
12
+ export { DyE2E_getPlaywrightConfig } from './_collections/playwright-config.factory';
13
+ export { DyE2E_getGlobalSetup } from './_collections/global-setup.factory';
14
+ export { DyE2E_resolveViewportPreset } from './_collections/viewport-preset-resolver.util';
15
+ export { DYE2E_VIEWPORTS_VISUAL8, DYE2E_VIEWPORTS_NAMED4, DYE2E_VIEWPORTS_SINGLE, } from './_collections/constants/playwright-viewport-presets.const';
16
+ export type { DyE2E_PlaywrightConfig_Options, DyE2E_ViewportsOption_Type, } from './_models/interfaces/playwright-config-options.interface';
17
+ export type { DyE2E_ProjectSplit_Options, DyE2E_ProjectSplitFunctional_Options, DyE2E_TestFilePattern_Type, } from './_models/interfaces/project-split-options.interface';
18
+ export type { DyE2E_GlobalSetup_Options } from './_models/interfaces/global-setup-options.interface';
12
19
  /** Wave-2/3 marker — itt lesz a viewport + CWV preset-runner. */
13
20
  export declare const DYE2E_PRESETS_NEXT_WAVES: string[];
14
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/presets/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,YAAY,EAAE,+BAA+B,EAAE,MAAM,6DAA6D,CAAC;AAEnH,iEAAiE;AACjE,eAAO,MAAM,wBAAwB,EAAE,MAAM,EAAqD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/presets/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,YAAY,EAAE,+BAA+B,EAAE,MAAM,6DAA6D,CAAC;AAGnH,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,4DAA4D,CAAC;AACpE,YAAY,EACV,8BAA8B,EAC9B,0BAA0B,GAC3B,MAAM,0DAA0D,CAAC;AAClE,YAAY,EACV,0BAA0B,EAC1B,oCAAoC,EACpC,0BAA0B,GAC3B,MAAM,sDAAsD,CAAC;AAC9D,YAAY,EAAE,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AAErG,iEAAiE;AACjE,eAAO,MAAM,wBAAwB,EAAE,MAAM,EAAqD,CAAC"}
@@ -9,9 +9,20 @@
9
9
  * Wave-1 MVP: vékony re-export a `generators`-ből.
10
10
  */
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DYE2E_PRESETS_NEXT_WAVES = exports.DyE2E_FormSuite_Generator = void 0;
12
+ exports.DYE2E_PRESETS_NEXT_WAVES = exports.DYE2E_VIEWPORTS_SINGLE = exports.DYE2E_VIEWPORTS_NAMED4 = exports.DYE2E_VIEWPORTS_VISUAL8 = exports.DyE2E_resolveViewportPreset = exports.DyE2E_getGlobalSetup = exports.DyE2E_getPlaywrightConfig = exports.DyE2E_FormSuite_Generator = void 0;
13
13
  var form_suite_generator_1 = require("../generators/form-suite.generator");
14
14
  Object.defineProperty(exports, "DyE2E_FormSuite_Generator", { enumerable: true, get: function () { return form_suite_generator_1.DyE2E_FormSuite_Generator; } });
15
+ // Playwright-config preset (flotta e2e-config konszolidáció) — factory + global-setup + viewport-presetek
16
+ var playwright_config_factory_1 = require("./_collections/playwright-config.factory");
17
+ Object.defineProperty(exports, "DyE2E_getPlaywrightConfig", { enumerable: true, get: function () { return playwright_config_factory_1.DyE2E_getPlaywrightConfig; } });
18
+ var global_setup_factory_1 = require("./_collections/global-setup.factory");
19
+ Object.defineProperty(exports, "DyE2E_getGlobalSetup", { enumerable: true, get: function () { return global_setup_factory_1.DyE2E_getGlobalSetup; } });
20
+ var viewport_preset_resolver_util_1 = require("./_collections/viewport-preset-resolver.util");
21
+ Object.defineProperty(exports, "DyE2E_resolveViewportPreset", { enumerable: true, get: function () { return viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset; } });
22
+ var playwright_viewport_presets_const_1 = require("./_collections/constants/playwright-viewport-presets.const");
23
+ Object.defineProperty(exports, "DYE2E_VIEWPORTS_VISUAL8", { enumerable: true, get: function () { return playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_VISUAL8; } });
24
+ Object.defineProperty(exports, "DYE2E_VIEWPORTS_NAMED4", { enumerable: true, get: function () { return playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4; } });
25
+ Object.defineProperty(exports, "DYE2E_VIEWPORTS_SINGLE", { enumerable: true, get: function () { return playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_SINGLE; } });
15
26
  /** Wave-2/3 marker — itt lesz a viewport + CWV preset-runner. */
16
27
  exports.DYE2E_PRESETS_NEXT_WAVES = ['viewport-audit (Wave-2)', 'cwv-diag (Wave-3)'];
17
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/presets/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,2EAA+E;AAAtE,iIAAA,yBAAyB,OAAA;AAGlC,iEAAiE;AACpD,QAAA,wBAAwB,GAAa,CAAC,yBAAyB,EAAE,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/presets/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,2EAA+E;AAAtE,iIAAA,yBAAyB,OAAA;AAGlC,0GAA0G;AAC1G,sFAAqF;AAA5E,sIAAA,yBAAyB,OAAA;AAClC,4EAA2E;AAAlE,4HAAA,oBAAoB,OAAA;AAC7B,8FAA2F;AAAlF,4IAAA,2BAA2B,OAAA;AACpC,gHAIoE;AAHlE,4IAAA,uBAAuB,OAAA;AACvB,2IAAA,sBAAsB,OAAA;AACtB,2IAAA,sBAAsB,OAAA;AAaxB,iEAAiE;AACpD,QAAA,wBAAwB,GAAa,CAAC,yBAAyB,EAAE,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=presets.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.spec.d.ts","sourceRoot":"","sources":["../../../src/_modules/presets/presets.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,286 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const fs = __importStar(require("fs"));
27
+ const os = __importStar(require("os"));
28
+ const path = __importStar(require("path"));
29
+ const standard_viewports_const_1 = require("../contracts/_collections/constants/standard-viewports.const");
30
+ const standard_viewport_enum_1 = require("../contracts/_enums/standard-viewport.enum");
31
+ const playwright_viewport_presets_const_1 = require("./_collections/constants/playwright-viewport-presets.const");
32
+ const global_setup_factory_1 = require("./_collections/global-setup.factory");
33
+ const playwright_config_factory_1 = require("./_collections/playwright-config.factory");
34
+ const viewport_preset_resolver_util_1 = require("./_collections/viewport-preset-resolver.util");
35
+ /** Env-kulcsok, amiket a factory olvas — spec-enként izoláljuk (stub + restore). */
36
+ const ENV_KEYS = [
37
+ 'E2E_BASE_URL',
38
+ 'E2E_IGNORE_HTTPS_ERRORS',
39
+ 'NODE_TLS_REJECT_UNAUTHORIZED',
40
+ 'E2E_WORKERS',
41
+ 'CI',
42
+ ];
43
+ describe('| dynamo-e2e | presets — playwright-config factory', () => {
44
+ let savedEnv;
45
+ beforeEach(() => {
46
+ // Env-izoláció: mentés + törlés hogy a gép/CI env ne szivárogjon a spec-ekbe
47
+ savedEnv = {};
48
+ ENV_KEYS.forEach((key) => {
49
+ savedEnv[key] = process.env[key];
50
+ delete process.env[key];
51
+ });
52
+ });
53
+ afterEach(() => {
54
+ // Env-restore — más spec-ek ne örököljék a stub-okat
55
+ ENV_KEYS.forEach((key) => {
56
+ if (savedEnv[key] === undefined) {
57
+ delete process.env[key];
58
+ }
59
+ else {
60
+ process.env[key] = savedEnv[key];
61
+ }
62
+ });
63
+ });
64
+ // ── Viewport-preset konstansok ────────────────────────────────────────────
65
+ it('| VISUAL8 — 8 viewport, tablet-sm a standard katalógusból hivatkozva', () => {
66
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_VISUAL8.length).toBe(8);
67
+ const tabletSm = playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_VISUAL8.find((vp) => vp.key === 'visual-tablet-sm');
68
+ const catalogTabletP = standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.tabletPortrait];
69
+ expect(tabletSm?.width).toBe(catalogTabletP.width);
70
+ expect(tabletSm?.height).toBe(catalogTabletP.height);
71
+ });
72
+ it('| NAMED4 — 4 viewport, méretek a standard katalógusból (nincs érték-duplikáció)', () => {
73
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4.length).toBe(4);
74
+ const keys = playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4.map((vp) => vp.key);
75
+ expect(keys).toEqual(['desktop-1920', 'wide-2560', 'tablet-1024', 'mobile-414']);
76
+ // desktop-1920 = katalógus desktopWide, mobile-414 = katalógus mobileL
77
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4[0].width)
78
+ .toBe(standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.desktopWide].width);
79
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4[3].width)
80
+ .toBe(standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.mobileL].width);
81
+ // mobile-414 SZÁNDÉKOSAN nem mobile-emulált (Chromium-only CI-bootstrap)
82
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4[3].isMobile).toBe(false);
83
+ });
84
+ it('| SINGLE — 1 viewport = a standard desktop katalógus-entry', () => {
85
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_SINGLE.length).toBe(1);
86
+ expect(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_SINGLE[0]).toBe(standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.desktop]);
87
+ });
88
+ // ── Resolver ──────────────────────────────────────────────────────────────
89
+ it('| resolveViewportPreset — named presetek + custom passthrough + default single', () => {
90
+ expect((0, viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset)('visual-8')).toBe(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_VISUAL8);
91
+ expect((0, viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset)('named-4')).toBe(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4);
92
+ expect((0, viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset)('single')).toBe(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_SINGLE);
93
+ expect((0, viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset)(undefined)).toBe(playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_SINGLE);
94
+ const custom = [{ key: 'x', label: 'X', width: 100, height: 200 }];
95
+ expect((0, viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset)(custom)).toBe(custom);
96
+ });
97
+ // ── Config-factory: defaults + env-derivációk ─────────────────────────────
98
+ it('| getPlaywrightConfig — defaults: testDir/timeout/reporter/use-mag', () => {
99
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200' });
100
+ expect(cfg.testDir).toBe('./tests');
101
+ expect(cfg.timeout).toBe(60_000);
102
+ expect(cfg.expect?.timeout).toBe(10_000);
103
+ expect(cfg.fullyParallel).toBe(false);
104
+ expect(cfg.retries).toBe(0);
105
+ expect(cfg.reporter?.length).toBe(3);
106
+ expect(cfg.use?.baseURL).toBe('http://localhost:4200');
107
+ expect(cfg.use?.screenshot).toBe('only-on-failure');
108
+ expect(cfg.use?.trace).toBe('retain-on-failure');
109
+ expect(cfg.use?.video).toBe('retain-on-failure');
110
+ // http target + nincs env → nincs TLS-ignore, workers derivált (undefined = Playwright-default)
111
+ expect(cfg.use?.ignoreHTTPSErrors).toBe(false);
112
+ expect(cfg.workers).toBeUndefined();
113
+ // Default viewport-preset = single → 1 projekt
114
+ expect(cfg.projects?.length).toBe(1);
115
+ expect(cfg.projects?.[0].name).toBe('desktop');
116
+ });
117
+ it('| getPlaywrightConfig — E2E_BASE_URL env-override nyer a defaultBaseUrl felett', () => {
118
+ process.env.E2E_BASE_URL = 'https://test.example.hu';
119
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200' });
120
+ expect(cfg.use?.baseURL).toBe('https://test.example.hu');
121
+ // https derivációk: TLS-ignore + 1 worker
122
+ expect(cfg.use?.ignoreHTTPSErrors).toBe(true);
123
+ expect(cfg.workers).toBe(1);
124
+ });
125
+ it('| getPlaywrightConfig — TLS-ignore env-flagek http target mellett is', () => {
126
+ process.env.E2E_IGNORE_HTTPS_ERRORS = '1';
127
+ const cfg1 = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200' });
128
+ expect(cfg1.use?.ignoreHTTPSErrors).toBe(true);
129
+ delete process.env.E2E_IGNORE_HTTPS_ERRORS;
130
+ process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
131
+ const cfg2 = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200' });
132
+ expect(cfg2.use?.ignoreHTTPSErrors).toBe(true);
133
+ });
134
+ it('| getPlaywrightConfig — workers precedencia: E2E_WORKERS env > opts > deriváció', () => {
135
+ process.env.E2E_WORKERS = '3';
136
+ const cfgEnv = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'https://test.example.hu', workers: 5 });
137
+ expect(cfgEnv.workers).toBe(3);
138
+ delete process.env.E2E_WORKERS;
139
+ const cfgOpts = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'https://test.example.hu', workers: 5 });
140
+ expect(cfgOpts.workers).toBe(5);
141
+ });
142
+ it('| getPlaywrightConfig — retriesInCi CSAK CI alatt érvényesül', () => {
143
+ const cfgLocal = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200', retriesInCi: 2 });
144
+ expect(cfgLocal.retries).toBe(0);
145
+ expect(cfgLocal.forbidOnly).toBe(false);
146
+ process.env.CI = 'true';
147
+ const cfgCi = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200', retriesInCi: 2 });
148
+ expect(cfgCi.retries).toBe(2);
149
+ expect(cfgCi.forbidOnly).toBe(true);
150
+ });
151
+ it('| getPlaywrightConfig — opció-merge: testDir/globalSetup/timeouts/extraUse', () => {
152
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({
153
+ defaultBaseUrl: 'http://localhost:4200',
154
+ testDir: './e2e/tests',
155
+ globalSetupPath: '/abs/path/e2e-global-setup.ts',
156
+ fullyParallel: true,
157
+ timeout: 30_000,
158
+ expectTimeout: 5_000,
159
+ extraUse: { storageState: '/abs/.auth-state.json' },
160
+ });
161
+ expect(cfg.testDir).toBe('./e2e/tests');
162
+ expect(cfg.globalSetup).toBe('/abs/path/e2e-global-setup.ts');
163
+ expect(cfg.fullyParallel).toBe(true);
164
+ expect(cfg.timeout).toBe(30_000);
165
+ expect(cfg.expect?.timeout).toBe(5_000);
166
+ expect(cfg.use?.storageState).toBe('/abs/.auth-state.json');
167
+ // Az extraUse merge NEM törli a mag-mezőket
168
+ expect(cfg.use?.screenshot).toBe('only-on-failure');
169
+ });
170
+ it('| getPlaywrightConfig — viewport-presetek projektekké mappelve', () => {
171
+ const cfg8 = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200', viewports: 'visual-8' });
172
+ expect(cfg8.projects?.length).toBe(8);
173
+ expect(cfg8.projects?.[0].name).toBe('visual-mobile-xs');
174
+ expect(cfg8.projects?.[0].use?.viewport).toEqual({ width: 360, height: 640 });
175
+ const cfg4 = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200', viewports: 'named-4' });
176
+ expect(cfg4.projects?.length).toBe(4);
177
+ expect(cfg4.projects?.[1].name).toBe('wide-2560');
178
+ });
179
+ // ── Config-factory: testIgnore + projectSplit (e2e-preset v2, organizer-pilot leletek) ──
180
+ it('| getPlaywrightConfig — top-level testIgnore csak explicit opcióra kerül a configba', () => {
181
+ // Default: nincs testIgnore kulcs a configban (Playwright-default érvényesül)
182
+ const cfgDefault = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200' });
183
+ expect(cfgDefault.testIgnore).toBeUndefined();
184
+ // Explicit opció → átjut top-level testIgnore-ként (organizer: modul-tesztek kizárása)
185
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({
186
+ defaultBaseUrl: 'http://localhost:4200',
187
+ testIgnore: ['tests/modules/**'],
188
+ });
189
+ expect(cfg.testIgnore).toEqual(['tests/modules/**']);
190
+ });
191
+ it('| getPlaywrightConfig — projectSplit defaults: chromium funkcionális + visual viewport-projektek', () => {
192
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({
193
+ defaultBaseUrl: 'http://localhost:4200',
194
+ viewports: 'visual-8',
195
+ projectSplit: {},
196
+ });
197
+ // 1 funkcionális + 8 visual projekt
198
+ expect(cfg.projects?.length).toBe(9);
199
+ // Funkcionális projekt: default név + visual-mappa kizárás + NINCS viewport-override
200
+ const functional = cfg.projects?.[0];
201
+ expect(functional?.name).toBe('chromium');
202
+ expect(functional?.testIgnore).toEqual(['**/visual/**']);
203
+ expect(functional?.use?.viewport).toEqual({ width: 1280, height: 720 });
204
+ expect(functional?.testMatch).toBeUndefined();
205
+ // Visual projektek: viewport-fan-out + default testMatch a visual-spec-ekre
206
+ const firstVisual = cfg.projects?.[1];
207
+ expect(firstVisual?.name).toBe('visual-mobile-xs');
208
+ expect(firstVisual?.use?.viewport).toEqual({ width: 360, height: 640 });
209
+ expect(firstVisual?.testMatch).toEqual(/visual\/.*\.spec\.ts/);
210
+ expect(firstVisual?.testIgnore).toBeUndefined();
211
+ expect(cfg.projects?.[8].name).toBe('visual-desktop-2xl');
212
+ });
213
+ it('| getPlaywrightConfig — projectSplit custom: functional név/testIgnore + visualTestMatch override', () => {
214
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({
215
+ defaultBaseUrl: 'http://localhost:4200',
216
+ viewports: 'named-4',
217
+ projectSplit: {
218
+ functional: { name: 'functional', testIgnore: ['**/vr/**'] },
219
+ visualTestMatch: /vr\/.*\.spec\.ts/,
220
+ },
221
+ });
222
+ expect(cfg.projects?.length).toBe(5);
223
+ expect(cfg.projects?.[0].name).toBe('functional');
224
+ expect(cfg.projects?.[0].testIgnore).toEqual(['**/vr/**']);
225
+ expect(cfg.projects?.[1].testMatch).toEqual(/vr\/.*\.spec\.ts/);
226
+ expect(cfg.projects?.[4].testMatch).toEqual(/vr\/.*\.spec\.ts/);
227
+ });
228
+ it('| getPlaywrightConfig — projectSplit NÉLKÜL a projects a sima viewport-fan-out (backward-compat)', () => {
229
+ const cfg = (0, playwright_config_factory_1.DyE2E_getPlaywrightConfig)({ defaultBaseUrl: 'http://localhost:4200', viewports: 'visual-8' });
230
+ expect(cfg.projects?.length).toBe(8);
231
+ // Split nélkül nincs testMatch/testIgnore a projekteken (a v1 viselkedés változatlan)
232
+ expect(cfg.projects?.[0].testMatch).toBeUndefined();
233
+ expect(cfg.projects?.[0].testIgnore).toBeUndefined();
234
+ });
235
+ // ── Global-setup factory ──────────────────────────────────────────────────
236
+ it('| getGlobalSetup — elérhető target → resolves + hiányzó env warn', async () => {
237
+ const originalFetch = globalThis.fetch;
238
+ globalThis.fetch = (() => Promise.resolve({ ok: true }));
239
+ const warnSpy = spyOn(console, 'warn');
240
+ try {
241
+ const setup = (0, global_setup_factory_1.DyE2E_getGlobalSetup)({
242
+ defaultBaseUrl: 'http://localhost:9999',
243
+ requiredEnvVars: ['DYE2E_SPEC_SURELY_MISSING_ENV'],
244
+ });
245
+ await setup({});
246
+ // Hiányzó required env → warn (nem fatális)
247
+ expect(warnSpy).toHaveBeenCalled();
248
+ expect(String(warnSpy.calls.mostRecent().args[0])).toContain('DYE2E_SPEC_SURELY_MISSING_ENV');
249
+ }
250
+ finally {
251
+ globalThis.fetch = originalFetch;
252
+ }
253
+ });
254
+ it('| getGlobalSetup — nem elérhető target → egyértelmű hibával reject-el', async () => {
255
+ const originalFetch = globalThis.fetch;
256
+ globalThis.fetch = (() => Promise.reject(new Error('ECONNREFUSED')));
257
+ try {
258
+ const setup = (0, global_setup_factory_1.DyE2E_getGlobalSetup)({ defaultBaseUrl: 'http://localhost:9999' });
259
+ await expectAsync(setup({})).toBeRejectedWithError(/nem elérhető/);
260
+ }
261
+ finally {
262
+ globalThis.fetch = originalFetch;
263
+ }
264
+ });
265
+ it('| getGlobalSetup — storageStatePath login-hook nélkül → empty stub fájl', async () => {
266
+ const originalFetch = globalThis.fetch;
267
+ globalThis.fetch = (() => Promise.resolve({ ok: true }));
268
+ const statePath = path.join(os.tmpdir(), `dye2e-spec-auth-state-${Date.now()}.json`);
269
+ try {
270
+ const setup = (0, global_setup_factory_1.DyE2E_getGlobalSetup)({ defaultBaseUrl: 'http://localhost:9999', storageStatePath: statePath });
271
+ await setup({});
272
+ // A config use.storageState fájlt vár → empty stub-nak léteznie kell
273
+ expect(fs.existsSync(statePath)).toBe(true);
274
+ const state = JSON.parse(fs.readFileSync(statePath, 'utf8'));
275
+ expect(state.cookies).toEqual([]);
276
+ expect(state.origins).toEqual([]);
277
+ }
278
+ finally {
279
+ globalThis.fetch = originalFetch;
280
+ if (fs.existsSync(statePath)) {
281
+ fs.unlinkSync(statePath);
282
+ }
283
+ }
284
+ });
285
+ });
286
+ //# sourceMappingURL=presets.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.spec.js","sourceRoot":"","sources":["../../../src/_modules/presets/presets.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAE7B,2GAAyG;AACzG,uFAAyF;AAEzF,kHAIoE;AACpE,8EAA2E;AAC3E,wFAAqF;AACrF,gGAA2F;AAE3F,oFAAoF;AACpF,MAAM,QAAQ,GAAa;IACzB,cAAc;IACd,yBAAyB;IACzB,8BAA8B;IAC9B,aAAa;IACb,IAAI;CACL,CAAC;AAEF,QAAQ,CAAC,oDAAoD,EAAE,GAAS,EAAE;IAExE,IAAI,QAA4C,CAAC;IAEjD,UAAU,CAAC,GAAS,EAAE;QACpB,6EAA6E;QAC7E,QAAQ,GAAG,EAAE,CAAC;QACd,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAW,EAAQ,EAAE;YACrC,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAS,EAAE;QACnB,qDAAqD;QACrD,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAW,EAAQ,EAAE;YACrC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAE7E,EAAE,CAAC,sEAAsE,EAAE,GAAS,EAAE;QACpF,MAAM,CAAC,2DAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,QAAQ,GACZ,2DAAuB,CAAC,IAAI,CAAC,CAAC,EAA4B,EAAW,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;QACzG,MAAM,cAAc,GAClB,oDAAyB,CAAC,oDAA2B,CAAC,cAAc,CAAC,CAAC;QACxE,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,GAAS,EAAE;QAC/F,MAAM,CAAC,0DAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAa,0DAAsB,CAAC,GAAG,CAAC,CAAC,EAA4B,EAAU,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACpG,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;QACjF,uEAAuE;QACvE,MAAM,CAAC,0DAAsB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;aACpC,IAAI,CAAC,oDAAyB,CAAC,oDAA2B,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;QAClF,MAAM,CAAC,0DAAsB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;aACpC,IAAI,CAAC,oDAAyB,CAAC,oDAA2B,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9E,yEAAyE;QACzE,MAAM,CAAC,0DAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAS,EAAE;QAC1E,MAAM,CAAC,0DAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,0DAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,oDAAyB,CAAC,oDAA2B,CAAC,OAAO,CAAC,CAAC,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAE7E,EAAE,CAAC,gFAAgF,EAAE,GAAS,EAAE;QAC9F,MAAM,CAAC,IAAA,2DAA2B,EAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,2DAAuB,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAA,2DAA2B,EAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,0DAAsB,CAAC,CAAC;QAC5E,MAAM,CAAC,IAAA,2DAA2B,EAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,0DAAsB,CAAC,CAAC;QAC3E,MAAM,CAAC,IAAA,2DAA2B,EAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,0DAAsB,CAAC,CAAC;QAC5E,MAAM,MAAM,GAA+B,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/F,MAAM,CAAC,IAAA,2DAA2B,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAE7E,EAAE,CAAC,oEAAoE,EAAE,GAAS,EAAE;QAClF,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACnF,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACjD,gGAAgG;QAChG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAC;QACpC,+CAA+C;QAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gFAAgF,EAAE,GAAS,EAAE;QAC9F,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,yBAAyB,CAAC;QACrD,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACnF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACzD,0CAA0C;QAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAS,EAAE;QACpF,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,GAAG,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACpF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/C,OAAO,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,GAAG,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACpF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,GAAS,EAAE;QAC/F,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACpG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE/B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACrG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAS,EAAE;QAC5E,MAAM,QAAQ,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;QACxG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAExC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC;QACxB,MAAM,KAAK,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;QACrG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,GAAS,EAAE;QAC1F,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC;YACpC,cAAc,EAAE,uBAAuB;YACvC,OAAO,EAAE,aAAa;YACtB,eAAe,EAAE,+BAA+B;YAChD,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,MAAM;YACf,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,EAAE,YAAY,EAAE,uBAAuB,EAAE;SACpD,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC9D,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC5D,4CAA4C;QAC5C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAS,EAAE;QAC9E,MAAM,IAAI,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAC3G,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAE9E,MAAM,IAAI,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1G,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,2FAA2F;IAE3F,EAAE,CAAC,qFAAqF,EAAE,GAAS,EAAE;QACnG,8EAA8E;QAC9E,MAAM,UAAU,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC,CAAC;QAC1F,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;QAE9C,uFAAuF;QACvF,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC;YACpC,cAAc,EAAE,uBAAuB;YACvC,UAAU,EAAE,CAAC,kBAAkB,CAAC;SACjC,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,GAAS,EAAE;QAChH,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC;YACpC,cAAc,EAAE,uBAAuB;YACvC,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,EAAE;SACjB,CAAC,CAAC;QACH,oCAAoC;QACpC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAErC,qFAAqF;QACrF,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACxE,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC;QAE9C,4EAA4E;QAC5E,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACnD,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACxE,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAC/D,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mGAAmG,EAAE,GAAS,EAAE;QACjH,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC;YACpC,cAAc,EAAE,uBAAuB;YACvC,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE;gBACZ,UAAU,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,UAAU,CAAC,EAAE;gBAC5D,eAAe,EAAE,kBAAkB;aACpC;SACF,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAChE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,GAAS,EAAE;QAChH,MAAM,GAAG,GAAG,IAAA,qDAAyB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAC1G,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,sFAAsF;QACtF,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAE7E,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAmB,EAAE;QAC/F,MAAM,aAAa,GAAiB,UAAU,CAAC,KAAK,CAAC;QACrD,UAAU,CAAC,KAAK,GAAG,CAAC,GAAsB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAc,CAAC,CAAiB,CAAC;QACxG,MAAM,OAAO,GAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAA,2CAAoB,EAAC;gBACjC,cAAc,EAAE,uBAAuB;gBACvC,eAAe,EAAE,CAAC,+BAA+B,CAAC;aACnD,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,EAAW,CAAC,CAAC;YACzB,4CAA4C;YAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;QAChG,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,GAAG,aAAa,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAmB,EAAE;QACpG,MAAM,aAAa,GAAiB,UAAU,CAAC,KAAK,CAAC;QACrD,UAAU,CAAC,KAAK,GAAG,CAAC,GAAsB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAiB,CAAC;QACxG,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAA,2CAAoB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAChF,MAAM,WAAW,CAAC,KAAK,CAAC,EAAW,CAAC,CAAC,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC9E,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,GAAG,aAAa,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAmB,EAAE;QACtG,MAAM,aAAa,GAAiB,UAAU,CAAC,KAAK,CAAC;QACrD,UAAU,CAAC,KAAK,GAAG,CAAC,GAAsB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAc,CAAC,CAAiB,CAAC;QACxG,MAAM,SAAS,GAAW,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,yBAAyB,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC7F,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAA,2CAAoB,EAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7G,MAAM,KAAK,CAAC,EAAW,CAAC,CAAC;YACzB,qEAAqE;YACrE,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,KAAK,GAA+C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;YACzG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,GAAG,aAAa,CAAC;YACjC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AAEL,CAAC,CAAC,CAAC"}
@@ -2,7 +2,8 @@ import { DyE2E_VQA_FeatureManifest_Interface } from '../_models/interfaces/featu
2
2
  /**
3
3
  * `DyE2E_VQA_AIAgentReadme_Template` — generálja a `review-bundles/<id>/<run>/README.md`-t,
4
4
  * ami az AI-agent (Claude Code vagy más LLM) számára a review-instrukció + a finding-/
5
- * backlog-entry-schema. **Spec §10 14 audit-kérdés + §11 13 feedback-típus + §12 finding +
5
+ * backlog-entry-schema. **Spec §10 14 audit-kérdés + §10b UX kritikus-felhasználó réteg (3 kiegészítő
6
+ * kérdés + evidence + „készen áll emberi ellenőrzésre" keretezés) + §11 13 feedback-típus + §12 finding +
6
7
  * §13 report-szempontok beágyazva.**
7
8
  *
8
9
  * **scope-LOCK**: a bedrock-tooling-tól ez az utolsó artifact — az AI agent EXTERNAL,
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent-readme.template.d.ts","sourceRoot":"","sources":["../../../../src/_modules/vqa/generators/ai-agent-readme.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,kDAAkD,CAAC;AAIvG;;;;;;;;GAQG;AACH,qBAAa,gCAAgC;IAE3C,MAAM,CAAC,MAAM,CACX,QAAQ,EAAE,mCAAmC,EAC7C,KAAK,EAAE,MAAM,EACb,WAAW,EAAE;QACX,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;KACxB,GACA,MAAM;CAiKV"}
1
+ {"version":3,"file":"ai-agent-readme.template.d.ts","sourceRoot":"","sources":["../../../../src/_modules/vqa/generators/ai-agent-readme.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,kDAAkD,CAAC;AAIvG;;;;;;;;;GASG;AACH,qBAAa,gCAAgC;IAE3C,MAAM,CAAC,MAAM,CACX,QAAQ,EAAE,mCAAmC,EAC7C,KAAK,EAAE,MAAM,EACb,WAAW,EAAE;QACX,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;KACxB,GACA,MAAM;CAmLV"}
@@ -6,7 +6,8 @@ const finding_status_enum_1 = require("../_enums/finding-status.enum");
6
6
  /**
7
7
  * `DyE2E_VQA_AIAgentReadme_Template` — generálja a `review-bundles/<id>/<run>/README.md`-t,
8
8
  * ami az AI-agent (Claude Code vagy más LLM) számára a review-instrukció + a finding-/
9
- * backlog-entry-schema. **Spec §10 14 audit-kérdés + §11 13 feedback-típus + §12 finding +
9
+ * backlog-entry-schema. **Spec §10 14 audit-kérdés + §10b UX kritikus-felhasználó réteg (3 kiegészítő
10
+ * kérdés + evidence + „készen áll emberi ellenőrzésre" keretezés) + §11 13 feedback-típus + §12 finding +
10
11
  * §13 report-szempontok beágyazva.**
11
12
  *
12
13
  * **scope-LOCK**: a bedrock-tooling-tól ez az utolsó artifact — az AI agent EXTERNAL,
@@ -34,7 +35,8 @@ class DyE2E_VQA_AIAgentReadme_Template {
34
35
  - \`dom-snapshots/<stateId>/<viewport>.json\` — DOM-metrikák
35
36
  - \`evidence/<stateId>/<viewport>.json\` — 16 DOM-detektor strukturált bizonyíték
36
37
  - \`a11y/<stateId>/<viewport>.json\` — axe-core a11y scan
37
- 4. **QA-rubric szerint** értékeld a 14 audit-kérdést (lásd lent).
38
+ 4. **QA-rubric szerint** értékeld az audit-kérdéseket (14 alap + 3 UX-kiegészítő; lásd lent) — és
39
+ alkalmazd a kötelező **UX kritikus-felhasználó réteget** (mindset + evidence + kimenet-keretezés).
38
40
  5. **Finding-eket írj** a \`findings.md\`-be a megadott schema szerint (lásd lent).
39
41
  6. **Ne dönts pixelpontosan** — emberi QA-szemlélettel ítélj.
40
42
 
@@ -53,7 +55,7 @@ A \`comparison/\` mappa tartalmazza a before/after diff-eket. Olvasd a \`compari
53
55
 
54
56
  ---
55
57
 
56
- ## QA rubric — 14 audit-kérdés (spec §10)
58
+ ## QA rubric — 14 alap + 3 UX-kiegészítő audit-kérdés (spec §10 + §10b)
57
59
 
58
60
  Minden (állapot × viewport) párra add választ:
59
61
 
@@ -71,6 +73,23 @@ Minden (állapot × viewport) párra add választ:
71
73
  12. **A modal vagy popup kezelhető-e kis képernyőn?** (lásd \`modal-viewport-fit\` evidence)
72
74
  13. **A feedback elég konkrét-e?**
73
75
  14. **A sikeres állapot tényleg sikeresnek érződik-e?** / **Az üres állapot ad-e következő lépést?**
76
+ 15. **Működik-e a billentyűzetes navigáció, a fókusz-sorrend és az alapvető accessibility?** (lásd \`a11y/<stateId>/<viewport>.json\` axe-core + \`focus-loss\` evidence)
77
+ 16. **Végigvihető-e a teljes elsődleges user flow elejétől a végéig** — nem csak az egyes állapotok külön? (holisztikus flow-nézet)
78
+ 17. **Vizuálisan egyértelmű-e a kattinthatóság** (kurzor/affordancia) és elég nagy-e a touch-target? (lásd \`ambiguous-interactive\`, \`small-touch-target\` evidence)
79
+
80
+ ---
81
+
82
+ ## UX kritikus-felhasználó szabályok (KÖTELEZŐ réteg)
83
+
84
+ > SSOT: \`documentations/guidelines/ai-agent/ux-qa-critical-user-testing.md\` (+ VQA-spec §10b).
85
+
86
+ - **Nézőpont:** NE fejlesztőként, hanem **hibakereső, kritikus felhasználóként** ítélj — aktívan keresd a
87
+ hibát. A funkcionális/E2E zöld NEM garantálja a használható UX-et.
88
+ - **Evidence-követelmény:** minden ellenőrzési ponthoz **screenshot + elvárt + tényleges + pass/fail**.
89
+ Amit nem tudsz bizonyítani, az **nem ellenőrzött**.
90
+ - **Kimenet-keretezés — „kész" TILOS:** SOHA ne jelentsd a felületet „kész"-nek. A helyes átadási állapot:
91
+ **„Készen áll emberi ellenőrzésre."** Az emberi ellenőrzés kötelező, végső release-kapu — a Visual QA
92
+ azt előkészíti, nem váltja ki.
74
93
 
75
94
  ---
76
95
 
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent-readme.template.js","sourceRoot":"","sources":["../../../../src/_modules/vqa/generators/ai-agent-readme.template.ts"],"names":[],"mappings":";;;AACA,2EAAiF;AACjF,uEAA6E;AAE7E;;;;;;;;GAQG;AACH,MAAa,gCAAgC;IAE3C,MAAM,CAAC,MAAM,CACX,QAA6C,EAC7C,KAAa,EACb,WAKC;QAED,OAAO,oCAAoC,QAAQ,CAAC,WAAW,SAAS,QAAQ,CAAC,SAAS;;kBAE5E,KAAK;;sBAED,WAAW,CAAC,UAAU,cAAc,WAAW,CAAC,aAAa;MAC7E,WAAW,CAAC,eAAe,4BAA4B,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;;;;;;;;;;;;;;;;;;;EAmB1G,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;;;;;;;;;;;CAW7B,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAoEA,sDAA8B,CAAC,OAAO;MACtC,sDAA8B,CAAC,IAAI;MACnC,sDAA8B,CAAC,MAAM;MACrC,sDAA8B,CAAC,GAAG;MAClC,sDAA8B,CAAC,aAAa;;;;;;;;;;;qCAWb,QAAQ,CAAC,SAAS;kBACrC,QAAQ,CAAC,SAAS;;;;;;;;;iBASnB,sDAA8B,CAAC,OAAO;eACxC,kDAA4B,CAAC,IAAI;;;;;uBAKzB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;CAwB3B,CAAC;IACA,CAAC;CACF;AA5KD,4EA4KC"}
1
+ {"version":3,"file":"ai-agent-readme.template.js","sourceRoot":"","sources":["../../../../src/_modules/vqa/generators/ai-agent-readme.template.ts"],"names":[],"mappings":";;;AACA,2EAAiF;AACjF,uEAA6E;AAE7E;;;;;;;;;GASG;AACH,MAAa,gCAAgC;IAE3C,MAAM,CAAC,MAAM,CACX,QAA6C,EAC7C,KAAa,EACb,WAKC;QAED,OAAO,oCAAoC,QAAQ,CAAC,WAAW,SAAS,QAAQ,CAAC,SAAS;;kBAE5E,KAAK;;sBAED,WAAW,CAAC,UAAU,cAAc,WAAW,CAAC,aAAa;MAC7E,WAAW,CAAC,eAAe,4BAA4B,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;EAoB1G,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;;;;;;;;;;;CAW7B,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAqFA,sDAA8B,CAAC,OAAO;MACtC,sDAA8B,CAAC,IAAI;MACnC,sDAA8B,CAAC,MAAM;MACrC,sDAA8B,CAAC,GAAG;MAClC,sDAA8B,CAAC,aAAa;;;;;;;;;;;qCAWb,QAAQ,CAAC,SAAS;kBACrC,QAAQ,CAAC,SAAS;;;;;;;;;iBASnB,sDAA8B,CAAC,OAAO;eACxC,kDAA4B,CAAC,IAAI;;;;;uBAKzB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;CAwB3B,CAAC;IACA,CAAC;CACF;AA9LD,4EA8LC"}
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2026-07-15T12:20:07.032Z
104
+ at 2026-06-10T07:07:07.536Z
105
105
  </div>
106
106
  <script src="../../prettify.js"></script>
107
107
  <script>