@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
@@ -134,7 +134,7 @@
134
134
  },
135
135
  {
136
136
  "label": "pipeline-report",
137
- "command": "fdp pipeline-report --report ./logs/cicd-pipeline/cicd-report.json --overseer-url $OVERSEER_URL --overseer-secret $OVERSEER_SECRET_KEY --branch $GITHUB_REF_NAME",
137
+ "command": "fdp pipeline-report --report ./logs/cicd-pipeline/cicd-report.json --overseer-secret $OVERSEER_SECRET_KEY --branch $GITHUB_REF_NAME",
138
138
  "fatal": false,
139
139
  "always": true,
140
140
  "discord": {
@@ -143,13 +143,13 @@
143
143
  },
144
144
  "condition": {
145
145
  "envSet": [
146
- "OVERSEER_URL"
146
+ "OVERSEER_SECRET_KEY"
147
147
  ]
148
148
  }
149
149
  },
150
150
  {
151
151
  "label": "discord-result",
152
- "command": "fdp pipeline-notify --report ./logs/cicd-pipeline/cicd-report.json --config ./.dynamo/pipeline.cicd.config.json --app-name Dynamo-E2E --app-emoji 🧪 --webhook-id $DISCORD_WEBHOOK_ID --webhook-token $DISCORD_WEBHOOK_TOKEN --overseer-url $OVERSEER_DASHBOARD_URL",
152
+ "command": "fdp pipeline-notify --report ./logs/cicd-pipeline/cicd-report.json --config ./.dynamo/pipeline.cicd.config.json --app-name Dynamo-E2E --app-emoji 🧪 --webhook-id $DISCORD_WEBHOOK_ID --webhook-token $DISCORD_WEBHOOK_TOKEN",
153
153
  "fatal": false,
154
154
  "retryOnFail": 2,
155
155
  "retryDelaySec": 5,
package/CHANGELOG.md CHANGED
@@ -3,6 +3,29 @@
3
3
  Minden release a `dynamo-e2e-foundation` HYPERPLAN MP-N ütemezést követi.
4
4
  Verzióformátum: `MM.mm.p` (két-számjegyes major-minor, Dynamo-konvenció).
5
5
 
6
+ ## [01.18.9] — 2026-07-21 — Playwright-config preset (fleet e2e-config konszolidáció #2)
7
+
8
+ ### Added
9
+
10
+ - **`DyE2E_getPlaywrightConfig(opts)`** — a flotta `playwright.config.ts`-einek közös magja
11
+ (organizer / overseer / master-prompter mintákból): dotenv-load (`envDir`),
12
+ `E2E_BASE_URL`-override, `ignoreHTTPSErrors` + `workers` env-deriváció (login-race védelem),
13
+ html+json+list reporter, failure-only screenshot/trace/video, `forbidOnly` + `retriesInCi`
14
+ CI-ben, viewport-preset → projects mapping.
15
+ - **`DyE2E_getGlobalSetup(opts)`** — közös global-setup mag: dotenv + `requiredEnvVars`-warn +
16
+ baseURL-reachability (AbortController + fetch, fail-fast) + opcionális `login(page)` hook →
17
+ storageState-mentés (C513 login-once minta; empty-stub fallback).
18
+ - **Viewport-preset konstansok** — `DYE2E_VIEWPORTS_VISUAL8` (Tailwind-breakpoint matrix),
19
+ `DYE2E_VIEWPORTS_NAMED4` (desktop-1920/wide-2560/tablet-1024/mobile-414),
20
+ `DYE2E_VIEWPORTS_SINGLE` + `DyE2E_resolveViewportPreset()` — a méretek SSOT-ja a
21
+ `STANDARD_VIEWPORT_CATALOG` (nincs érték-duplikáció).
22
+ - `dotenv` runtime-dependency (^16.4.5 — flotta-standard).
23
+
24
+ ### Changed
25
+
26
+ - **`dye2e bootstrap`** `playwright.config.ts` template: hardcoded config helyett a
27
+ `DyE2E_getPlaywrightConfig`-ot fogyasztó vékony wrapper (SSOT a bedrock-ban).
28
+
6
29
  ## [01.18.x — Wave-7] — 2026-06-11 — Organizer-ideák bedrock-integráció
7
30
 
8
31
  ### Added (Wave-7 — VQA bővítés organizer plans alapján)
package/README.md CHANGED
@@ -69,5 +69,5 @@ const specSource = DyE2E_FormSuite_Generator.emit({
69
69
  - `@futdevpro/dynamo-e2e/contracts` — POJO types
70
70
  - `@futdevpro/dynamo-e2e/generators` — Node-only emission engine
71
71
  - `@futdevpro/dynamo-e2e/runtime` — Playwright fixtures + page-objects (Wave-4)
72
- - `@futdevpro/dynamo-e2e/presets` — pre-built suites
72
+ - `@futdevpro/dynamo-e2e/presets` — pre-built suites + `DyE2E_getPlaywrightConfig` / `DyE2E_getGlobalSetup` playwright-config factory (fleet e2e-config SSOT)
73
73
  - `@futdevpro/dynamo-e2e/cwv` — Core Web Vitals (Wave-3)
@@ -1 +1 @@
1
- {"version":3,"file":"cli-runner.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,qBAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;IAsBpF,MAAM,CAAC,QAAQ,IAAI,MAAM;IA4DzB;;;OAGG;IACH,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAgE/C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;QAAE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAC,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;KAAE,GAAG;QAC9H,YAAY,EAAE,OAAO,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,mBAAmB,EAAE,OAAO,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;IA2CD,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM;IAuB9D;;;OAGG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,EAChF,UAAU,EAAE,MAAM,GACjB,MAAM;CAaV"}
1
+ {"version":3,"file":"cli-runner.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,qBAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;IAsBpF,MAAM,CAAC,QAAQ,IAAI,MAAM;IA4DzB;;;OAGG;IACH,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA0D/C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;QAAE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAC,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;KAAE,GAAG;QAC9H,YAAY,EAAE,OAAO,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,mBAAmB,EAAE,OAAO,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;IA2CD,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM;IAuB9D;;;OAGG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,EAChF,UAAU,EAAE,MAAM,GACjB,MAAM;CAaV"}
@@ -98,25 +98,19 @@ Flags (validate-config):
98
98
  */
99
99
  static bootstrapFiles() {
100
100
  return {
101
- 'playwright.config.ts': `import { defineConfig, devices } from '@playwright/test';
101
+ 'playwright.config.ts': `import { DyE2E_getPlaywrightConfig } from '@futdevpro/dynamo-e2e/presets';
102
102
 
103
103
  // E2E env convention (memory feedback_e2e_ldp_local_cicd_test_target):
104
104
  // - LDP (\`dc ldp\`) cél: LOCAL env (set E2E_BASE_URL=http://localhost:<port>)
105
105
  // - CICD (\`dc cdp\`) cél: TEST server (default — biztonságos fallback)
106
106
  // - SOHA NE localhost-ra default-old hogy CICD-runner ne PROD-ot célozzon
107
+ // A közös config-mag (baseURL/TLS/workers/reporter/viewport-presetek) SSOT-ja a bedrock factory.
107
108
  const DEFAULT_TEST_BASE_URL: string = 'https://test.your-app.example.com';
108
109
 
109
- export default defineConfig({
110
+ export default DyE2E_getPlaywrightConfig({
111
+ defaultBaseUrl: DEFAULT_TEST_BASE_URL,
110
112
  testDir: './e2e/tests',
111
- fullyParallel: true,
112
- retries: 0,
113
- reporter: [['html'], ['list']],
114
- use: {
115
- baseURL: process.env.E2E_BASE_URL || DEFAULT_TEST_BASE_URL,
116
- ignoreHTTPSErrors: process.env.E2E_IGNORE_HTTPS_ERRORS === '1' || (process.env.E2E_BASE_URL || DEFAULT_TEST_BASE_URL).startsWith('https://'),
117
- trace: 'retain-on-failure',
118
- },
119
- projects: [{ name: 'chromium', use: { ...devices['Desktop Chrome'] } }],
113
+ envDir: __dirname,
120
114
  });
121
115
  `,
122
116
  'e2e/generate.ts': `import { DyE2E_FormSuite_Generator } from '@futdevpro/dynamo-e2e/generators';
@@ -1 +1 @@
1
- {"version":3,"file":"cli-runner.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-runner.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"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"}
@@ -9,13 +9,14 @@ describe('| dynamo-e2e | CLI bootstrap', () => {
9
9
  expect(files['e2e/generate.ts']).toBeDefined();
10
10
  expect(files['e2e/README.md']).toBeDefined();
11
11
  });
12
- it('| playwright.config.ts — defineConfig + testDir + baseURL', () => {
12
+ it('| playwright.config.ts — DyE2E_getPlaywrightConfig factory-wrapper (SSOT a presets-ben)', () => {
13
13
  const files = cli_runner_util_1.DyE2E_CliRunner_Util.bootstrapFiles();
14
14
  const cfg = files['playwright.config.ts'];
15
- expect(cfg).toContain('defineConfig');
15
+ expect(cfg).toContain('DyE2E_getPlaywrightConfig');
16
+ expect(cfg).toContain(`@futdevpro/dynamo-e2e/presets`);
16
17
  expect(cfg).toContain('./e2e/tests');
17
18
  expect(cfg).toContain('E2E_BASE_URL');
18
- expect(cfg).toContain('chromium');
19
+ expect(cfg).toContain('envDir: __dirname');
19
20
  });
20
21
  it('| playwright.config.ts — TEST szerver default, NEM localhost (E2E env convention)', () => {
21
22
  const files = cli_runner_util_1.DyE2E_CliRunner_Util.bootstrapFiles();
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.spec.js","sourceRoot":"","sources":["../../../src/_modules/generators/bootstrap.spec.ts"],"names":[],"mappings":";;AAAA,oEAAsE;AAEtE,QAAQ,CAAC,8BAA8B,EAAE,GAAS,EAAE;IAElD,EAAE,CAAC,qCAAqC,EAAE,GAAS,EAAE;QACnD,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAS,EAAE;QACzE,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,GAAG,GAAW,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mFAAmF,EAAE,GAAS,EAAE;QACjG,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,GAAG,GAAW,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QACnD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAS,EAAE;QAC3E,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,GAAG,GAAW,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,kCAAkC,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QACnD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QACzD,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QACzD,MAAM,IAAI,GAAW,sCAAoB,CAAC,QAAQ,EAAE,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AAEL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"bootstrap.spec.js","sourceRoot":"","sources":["../../../src/_modules/generators/bootstrap.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { DyE2E_Viewport_Interface } from '../../../contracts/_models/interfaces/viewport.interface';
2
+ /**
3
+ * `'visual-8'` preset — 8 viewport-os Tailwind-breakpoint visual-regression matrix
4
+ * (xs/sm/md/lg/xl + a gt- és lt- szintek lefedése; organizer BL-20260602-004 minta).
5
+ * Ahol a méret egyezik a standard katalógussal (tablet-sm = tabletPortrait), onnan
6
+ * hivatkozzuk; a többi breakpoint-méret a Tailwind-matrix sajátja.
7
+ */
8
+ export declare const DYE2E_VIEWPORTS_VISUAL8: DyE2E_Viewport_Interface[];
9
+ /**
10
+ * `'named-4'` preset — 4 nevesített viewport (overseer-minta: desktop / wide / tablet / mobile).
11
+ * A desktop-1920 / tablet-1024 / mobile-414 méretei a standard katalógusból jönnek;
12
+ * a wide-2560 a preset sajátja (a katalógusban nincs 2560-as szint).
13
+ * Megjegyzés: mobile-414 SZÁNDÉKOSAN touch-flag nélkül — Chromium UA + viewport
14
+ * (a device-emulátor WebKit-et húzna, ami a CI-bootstrap-on nincs telepítve).
15
+ */
16
+ export declare const DYE2E_VIEWPORTS_NAMED4: DyE2E_Viewport_Interface[];
17
+ /**
18
+ * `'single'` preset — 1 standard desktop viewport (master-prompter-minta:
19
+ * egyetlen funkcionális projekt, viewport-fan-out nélkül).
20
+ */
21
+ export declare const DYE2E_VIEWPORTS_SINGLE: DyE2E_Viewport_Interface[];
22
+ //# sourceMappingURL=playwright-viewport-presets.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright-viewport-presets.const.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/presets/_collections/constants/playwright-viewport-presets.const.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AASpG;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAE,wBAAwB,EAc7D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,wBAAwB,EAqB5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,wBAAwB,EAE5D,CAAC"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DYE2E_VIEWPORTS_SINGLE = exports.DYE2E_VIEWPORTS_NAMED4 = exports.DYE2E_VIEWPORTS_VISUAL8 = void 0;
4
+ const standard_viewports_const_1 = require("../../../contracts/_collections/constants/standard-viewports.const");
5
+ const standard_viewport_enum_1 = require("../../../contracts/_enums/standard-viewport.enum");
6
+ // Katalógus-referenciák — a width/height értékek SSOT-ja a STANDARD_VIEWPORT_CATALOG,
7
+ // itt NEM duplikáljuk a számokat, csak hivatkozunk rájuk.
8
+ const TABLET_P = standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.tabletPortrait];
9
+ const TABLET_L = standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.tabletLandscape];
10
+ const MOBILE_L = standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.mobileL];
11
+ const DESKTOP_WIDE = standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.desktopWide];
12
+ /**
13
+ * `'visual-8'` preset — 8 viewport-os Tailwind-breakpoint visual-regression matrix
14
+ * (xs/sm/md/lg/xl + a gt- és lt- szintek lefedése; organizer BL-20260602-004 minta).
15
+ * Ahol a méret egyezik a standard katalógussal (tablet-sm = tabletPortrait), onnan
16
+ * hivatkozzuk; a többi breakpoint-méret a Tailwind-matrix sajátja.
17
+ */
18
+ exports.DYE2E_VIEWPORTS_VISUAL8 = [
19
+ { key: 'visual-mobile-xs', label: 'Visual Mobile XS (360×640)', width: 360, height: 640 },
20
+ { key: 'visual-mobile-sm', label: 'Visual Mobile SM (480×800)', width: 480, height: 800 },
21
+ {
22
+ key: 'visual-tablet-sm',
23
+ label: `Visual Tablet SM (${TABLET_P.width}×${TABLET_P.height})`,
24
+ width: TABLET_P.width,
25
+ height: TABLET_P.height,
26
+ },
27
+ { key: 'visual-tablet-md', label: 'Visual Tablet MD (1024×1366)', width: 1024, height: 1366 },
28
+ { key: 'visual-desktop-md', label: 'Visual Desktop MD (1280×800)', width: 1280, height: 800 },
29
+ { key: 'visual-desktop-lg', label: 'Visual Desktop LG (1600×1000)', width: 1600, height: 1000 },
30
+ { key: 'visual-desktop-xl', label: 'Visual Desktop XL (1920×1200)', width: 1920, height: 1200 },
31
+ { key: 'visual-desktop-2xl', label: 'Visual Desktop 2XL (2560×1440)', width: 2560, height: 1440 },
32
+ ];
33
+ /**
34
+ * `'named-4'` preset — 4 nevesített viewport (overseer-minta: desktop / wide / tablet / mobile).
35
+ * A desktop-1920 / tablet-1024 / mobile-414 méretei a standard katalógusból jönnek;
36
+ * a wide-2560 a preset sajátja (a katalógusban nincs 2560-as szint).
37
+ * Megjegyzés: mobile-414 SZÁNDÉKOSAN touch-flag nélkül — Chromium UA + viewport
38
+ * (a device-emulátor WebKit-et húzna, ami a CI-bootstrap-on nincs telepítve).
39
+ */
40
+ exports.DYE2E_VIEWPORTS_NAMED4 = [
41
+ {
42
+ key: 'desktop-1920',
43
+ label: `Desktop (${DESKTOP_WIDE.width}×${DESKTOP_WIDE.height})`,
44
+ width: DESKTOP_WIDE.width,
45
+ height: DESKTOP_WIDE.height,
46
+ },
47
+ { key: 'wide-2560', label: 'Wide (2560×1440)', width: 2560, height: 1440 },
48
+ {
49
+ key: 'tablet-1024',
50
+ label: `Tablet (${TABLET_L.width}×${TABLET_L.height})`,
51
+ width: TABLET_L.width,
52
+ height: TABLET_L.height,
53
+ },
54
+ {
55
+ key: 'mobile-414',
56
+ label: `Mobile (${MOBILE_L.width}×${MOBILE_L.height})`,
57
+ width: MOBILE_L.width,
58
+ height: MOBILE_L.height,
59
+ isMobile: false,
60
+ },
61
+ ];
62
+ /**
63
+ * `'single'` preset — 1 standard desktop viewport (master-prompter-minta:
64
+ * egyetlen funkcionális projekt, viewport-fan-out nélkül).
65
+ */
66
+ exports.DYE2E_VIEWPORTS_SINGLE = [
67
+ standard_viewports_const_1.STANDARD_VIEWPORT_CATALOG[standard_viewport_enum_1.DyE2E_StandardViewport_Type.desktop],
68
+ ];
69
+ //# sourceMappingURL=playwright-viewport-presets.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright-viewport-presets.const.js","sourceRoot":"","sources":["../../../../../src/_modules/presets/_collections/constants/playwright-viewport-presets.const.ts"],"names":[],"mappings":";;;AAAA,iHAA+G;AAC/G,6FAA+F;AAG/F,sFAAsF;AACtF,0DAA0D;AAC1D,MAAM,QAAQ,GAA6B,oDAAyB,CAAC,oDAA2B,CAAC,cAAc,CAAC,CAAC;AACjH,MAAM,QAAQ,GAA6B,oDAAyB,CAAC,oDAA2B,CAAC,eAAe,CAAC,CAAC;AAClH,MAAM,QAAQ,GAA6B,oDAAyB,CAAC,oDAA2B,CAAC,OAAO,CAAC,CAAC;AAC1G,MAAM,YAAY,GAA6B,oDAAyB,CAAC,oDAA2B,CAAC,WAAW,CAAC,CAAC;AAElH;;;;;GAKG;AACU,QAAA,uBAAuB,GAA+B;IACjE,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACzF,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACzF;QACE,GAAG,EAAE,kBAAkB;QACvB,KAAK,EAAE,qBAAqB,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG;QAChE,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB;IACD,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC7F,EAAE,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE;IAC7F,EAAE,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC/F,EAAE,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC/F,EAAE,GAAG,EAAE,oBAAoB,EAAE,KAAK,EAAE,gCAAgC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CAClG,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,sBAAsB,GAA+B;IAChE;QACE,GAAG,EAAE,cAAc;QACnB,KAAK,EAAE,YAAY,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,MAAM,GAAG;QAC/D,KAAK,EAAE,YAAY,CAAC,KAAK;QACzB,MAAM,EAAE,YAAY,CAAC,MAAM;KAC5B;IACD,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC1E;QACE,GAAG,EAAE,aAAa;QAClB,KAAK,EAAE,WAAW,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG;QACtD,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB;IACD;QACE,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,WAAW,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG;QACtD,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF;;;GAGG;AACU,QAAA,sBAAsB,GAA+B;IAChE,oDAAyB,CAAC,oDAA2B,CAAC,OAAO,CAAC;CAC/D,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { FullConfig } from '@playwright/test';
2
+ import { DyE2E_GlobalSetup_Options } from '../_models/interfaces/global-setup-options.interface';
3
+ /**
4
+ * `DyE2E_getGlobalSetup` — a flotta e2e-global-setup.ts-einek közös magja:
5
+ * dotenv-load + kötelező-env warn + baseURL-reachability + opcionális login-once hook.
6
+ * A consumer global-setup fájlja így 3-soros wrapper:
7
+ *
8
+ * ```ts
9
+ * import { DyE2E_getGlobalSetup } from '@futdevpro/dynamo-e2e/presets';
10
+ * export default DyE2E_getGlobalSetup({ defaultBaseUrl: 'https://test.my-app.hu', envDir: __dirname });
11
+ * ```
12
+ */
13
+ export declare function DyE2E_getGlobalSetup(opts: DyE2E_GlobalSetup_Options): (config: FullConfig) => Promise<void>;
14
+ //# sourceMappingURL=global-setup.factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-setup.factory.d.ts","sourceRoot":"","sources":["../../../../src/_modules/presets/_collections/global-setup.factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA2B,UAAU,EAAQ,MAAM,kBAAkB,CAAC;AAKlF,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AA0DjG;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAyB3G"}
@@ -0,0 +1,113 @@
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
+ exports.DyE2E_getGlobalSetup = DyE2E_getGlobalSetup;
27
+ const test_1 = require("@playwright/test");
28
+ const dotenv = __importStar(require("dotenv"));
29
+ const fs = __importStar(require("fs"));
30
+ const path = __importStar(require("path"));
31
+ /** Üres Playwright storageState — nincs cookie / origin (= unauthenticated fallback). */
32
+ const EMPTY_AUTH_STATE = { cookies: [], origins: [] };
33
+ /**
34
+ * baseURL elérhetőség-ellenőrzés AbortController + fetch timeout-tal.
35
+ * Ha a target nem él, egyértelmű hibával állunk le (ne 60 spec bukjon obscure timeout-tal).
36
+ */
37
+ async function checkBaseUrlReachable(baseUrl, timeoutMs) {
38
+ const controller = new AbortController();
39
+ const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
40
+ try {
41
+ // Bármilyen HTTP-válasz (akár 4xx/5xx) = a szerver él; csak a network-error számít bukásnak
42
+ await fetch(baseUrl, { method: 'GET', signal: controller.signal });
43
+ clearTimeout(timeoutId);
44
+ return;
45
+ }
46
+ catch {
47
+ clearTimeout(timeoutId);
48
+ }
49
+ throw new Error(`[E2E] E2E_BASE_URL (${baseUrl}) nem elérhető. ` +
50
+ 'Indítsd el a target környezetet (vagy állítsd az E2E_BASE_URL-t), majd futtasd újra az E2E teszteket.');
51
+ }
52
+ /**
53
+ * Login-once + storageState mentés (C513 minta): a consumer login-hook-ja viszi végig a
54
+ * flow-t; siker esetén real state, bukás esetén empty stub kerül a storageStatePath-ra
55
+ * (a config `use.storageState`-je fájlt vár, ezért MINDIG írunk valamit).
56
+ */
57
+ async function runLoginHook(opts, baseUrl) {
58
+ const browser = await test_1.chromium.launch();
59
+ const context = await browser.newContext({ ignoreHTTPSErrors: true, baseURL: baseUrl });
60
+ const page = await context.newPage();
61
+ try {
62
+ // A login-flow maga a consumer felelőssége (FDP-specifikus helper = fdp-e2e-helpers réteg)
63
+ await opts.login(page);
64
+ if (opts.storageStatePath) {
65
+ await context.storageState({ path: opts.storageStatePath });
66
+ console.info(`[E2E] Global setup: auth-state mentve → ${opts.storageStatePath}`);
67
+ }
68
+ }
69
+ catch (err) {
70
+ const errMsg = err instanceof Error ? err.message : String(err);
71
+ console.warn(`[E2E] Global setup: login-hook sikertelen — ${errMsg}. ` +
72
+ 'Empty stub mentve; a specek per-test login flow-ra eshetnek vissza.');
73
+ if (opts.storageStatePath) {
74
+ fs.writeFileSync(opts.storageStatePath, JSON.stringify(EMPTY_AUTH_STATE));
75
+ }
76
+ }
77
+ finally {
78
+ await browser.close();
79
+ }
80
+ }
81
+ /**
82
+ * `DyE2E_getGlobalSetup` — a flotta e2e-global-setup.ts-einek közös magja:
83
+ * dotenv-load + kötelező-env warn + baseURL-reachability + opcionális login-once hook.
84
+ * A consumer global-setup fájlja így 3-soros wrapper:
85
+ *
86
+ * ```ts
87
+ * import { DyE2E_getGlobalSetup } from '@futdevpro/dynamo-e2e/presets';
88
+ * export default DyE2E_getGlobalSetup({ defaultBaseUrl: 'https://test.my-app.hu', envDir: __dirname });
89
+ * ```
90
+ */
91
+ function DyE2E_getGlobalSetup(opts) {
92
+ return async (_config) => {
93
+ // dotenv-load a hívó e2e-mappájából (a config-oldali load-dal idempotens)
94
+ dotenv.config({ path: path.join(opts.envDir || process.cwd(), '.env') });
95
+ // Kötelező env-változók — hiány esetén CSAK warn (a spec-ek fallback-elhetnek)
96
+ const missing = (opts.requiredEnvVars || []).filter((name) => !process.env[name]);
97
+ if (missing.length) {
98
+ console.warn(`[E2E] Global setup: hiányzó env: ${missing.join(', ')}. Töltsd ki a .env-et (.env.example minta).`);
99
+ }
100
+ // baseURL-reachability — fail-fast ha a target nem él
101
+ const baseUrl = process.env.E2E_BASE_URL || opts.defaultBaseUrl;
102
+ await checkBaseUrlReachable(baseUrl, opts.reachabilityTimeoutMs ?? 5_000);
103
+ if (opts.login) {
104
+ // Login-once + storageState (C513 minta)
105
+ await runLoginHook(opts, baseUrl);
106
+ }
107
+ else if (opts.storageStatePath) {
108
+ // Nincs login-hook, de a config storageState-fájlt vár → empty stub hogy létezzen
109
+ fs.writeFileSync(opts.storageStatePath, JSON.stringify(EMPTY_AUTH_STATE));
110
+ }
111
+ };
112
+ }
113
+ //# sourceMappingURL=global-setup.factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-setup.factory.js","sourceRoot":"","sources":["../../../../src/_modules/presets/_collections/global-setup.factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { PlaywrightTestConfig } from '@playwright/test';
2
+ import { DyE2E_PlaywrightConfig_Options } from '../_models/interfaces/playwright-config-options.interface';
3
+ /**
4
+ * `DyE2E_getPlaywrightConfig` — a flotta playwright.config.ts-einek közös magja
5
+ * (organizer / overseer / master-prompter mintákból desztillálva). A consumer-projekt
6
+ * configja így 3-soros wrapper lesz (SSOT a bedrock-ban):
7
+ *
8
+ * ```ts
9
+ * import { DyE2E_getPlaywrightConfig } from '@futdevpro/dynamo-e2e/presets';
10
+ * export default DyE2E_getPlaywrightConfig({ defaultBaseUrl: 'https://test.my-app.hu', envDir: __dirname });
11
+ * ```
12
+ *
13
+ * Env-konvenciók (flotta-standard):
14
+ * - `E2E_BASE_URL` — target-override (LDP → local, CICD → test-szerver default)
15
+ * - `E2E_IGNORE_HTTPS_ERRORS=1` / `NODE_TLS_REJECT_UNAUTHORIZED=0` — self-signed TLS elfogadás
16
+ * - `E2E_WORKERS=N` — worker-szám override (https test-env ellen default 1 — login-race védelem)
17
+ */
18
+ export declare function DyE2E_getPlaywrightConfig(opts: DyE2E_PlaywrightConfig_Options): PlaywrightTestConfig;
19
+ //# sourceMappingURL=playwright-config.factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright-config.factory.d.ts","sourceRoot":"","sources":["../../../../src/_modules/presets/_collections/playwright-config.factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAK7D,OAAO,EAAE,8BAA8B,EAAE,MAAM,2DAA2D,CAAC;AAG3G;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,8BAA8B,GAAG,oBAAoB,CAgGpG"}
@@ -0,0 +1,130 @@
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
+ exports.DyE2E_getPlaywrightConfig = DyE2E_getPlaywrightConfig;
27
+ const test_1 = require("@playwright/test");
28
+ const dotenv = __importStar(require("dotenv"));
29
+ const path = __importStar(require("path"));
30
+ const viewport_preset_resolver_util_1 = require("./viewport-preset-resolver.util");
31
+ /**
32
+ * `DyE2E_getPlaywrightConfig` — a flotta playwright.config.ts-einek közös magja
33
+ * (organizer / overseer / master-prompter mintákból desztillálva). A consumer-projekt
34
+ * configja így 3-soros wrapper lesz (SSOT a bedrock-ban):
35
+ *
36
+ * ```ts
37
+ * import { DyE2E_getPlaywrightConfig } from '@futdevpro/dynamo-e2e/presets';
38
+ * export default DyE2E_getPlaywrightConfig({ defaultBaseUrl: 'https://test.my-app.hu', envDir: __dirname });
39
+ * ```
40
+ *
41
+ * Env-konvenciók (flotta-standard):
42
+ * - `E2E_BASE_URL` — target-override (LDP → local, CICD → test-szerver default)
43
+ * - `E2E_IGNORE_HTTPS_ERRORS=1` / `NODE_TLS_REJECT_UNAUTHORIZED=0` — self-signed TLS elfogadás
44
+ * - `E2E_WORKERS=N` — worker-szám override (https test-env ellen default 1 — login-race védelem)
45
+ */
46
+ function DyE2E_getPlaywrightConfig(opts) {
47
+ // dotenv-load a hívó e2e-mappájából — CI-ben a secrets env-ből jönnek, lokálban .env
48
+ dotenv.config({ path: path.join(opts.envDir || process.cwd(), '.env') });
49
+ // baseURL: env-override → opts default (a default MINDIG a deployolt TEST szerver, SOHA nem localhost)
50
+ const baseURL = process.env.E2E_BASE_URL || opts.defaultBaseUrl;
51
+ const isHttps = baseURL.startsWith('https://');
52
+ // Self-signed TLS elfogadása ha a target https (test-env) vagy explicit env kéri
53
+ const ignoreHTTPSErrors = process.env.E2E_IGNORE_HTTPS_ERRORS === '1' ||
54
+ process.env.NODE_TLS_REJECT_UNAUTHORIZED === '0' ||
55
+ isHttps;
56
+ // Workers: env-override → opts fix érték → deriváció. Deployolt (https) test-env ellen 1 worker —
57
+ // a párhuzamos login-ok backend race-t okoznak (FDPNTS-UDS-RC1 "User already exists" minta).
58
+ const workers = process.env.E2E_WORKERS
59
+ ? Number(process.env.E2E_WORKERS)
60
+ : (opts.workers ?? (isHttps ? 1 : undefined));
61
+ // Viewport-preset feloldás → Playwright projects (minden viewport = 1 chromium projekt)
62
+ const viewports = (0, viewport_preset_resolver_util_1.DyE2E_resolveViewportPreset)(opts.viewports);
63
+ const viewportProjects = viewports.map((vp) => ({
64
+ name: vp.key,
65
+ use: {
66
+ ...test_1.devices['Desktop Chrome'],
67
+ viewport: { width: vp.width, height: vp.height },
68
+ // Az opcionális device-mezőket csak akkor írjuk felül, ha a viewport-def megadja
69
+ ...(vp.deviceScaleFactor !== undefined ? { deviceScaleFactor: vp.deviceScaleFactor } : {}),
70
+ ...(vp.isMobile !== undefined ? { isMobile: vp.isMobile } : {}),
71
+ ...(vp.hasTouch !== undefined ? { hasTouch: vp.hasTouch } : {}),
72
+ },
73
+ }));
74
+ // Projekt-lista: projectSplit-módban funkcionális projekt + visual viewport-projektek
75
+ // (organizer-minta: chromium testIgnore ['**/visual/**'] + visual-* projektek testMatch-csel);
76
+ // split nélkül a sima viewport-fan-out marad (backward-compat).
77
+ let projects = viewportProjects;
78
+ if (opts.projectSplit) {
79
+ // Funkcionális projekt — Desktop Chrome device, viewport-override nélkül, visual-mappa kizárva
80
+ const functionalProject = {
81
+ name: opts.projectSplit.functional?.name || 'chromium',
82
+ use: { ...test_1.devices['Desktop Chrome'] },
83
+ testIgnore: opts.projectSplit.functional?.testIgnore ?? ['**/visual/**'],
84
+ };
85
+ // Visual-projektek — a viewport-fan-out projektjei testMatch-csel a visual-spec-ekre szűkítve
86
+ const visualTestMatch = opts.projectSplit.visualTestMatch ?? /visual\/.*\.spec\.ts/;
87
+ projects = [
88
+ functionalProject,
89
+ ...viewportProjects.map((project) => ({
90
+ ...project,
91
+ testMatch: visualTestMatch,
92
+ })),
93
+ ];
94
+ }
95
+ // A közös config-mag — a flotta-configok metszete + opcionális override-ok
96
+ return (0, test_1.defineConfig)({
97
+ testDir: opts.testDir || './tests',
98
+ // Top-level testIgnore csak ha a consumer kérte (pl. modul-tesztek kizárása a suite-ból)
99
+ ...(opts.testIgnore !== undefined ? { testIgnore: opts.testIgnore } : {}),
100
+ // globalSetup csak ha a consumer adott path-t (require.resolve-olt abszolút path)
101
+ ...(opts.globalSetupPath ? { globalSetup: opts.globalSetupPath } : {}),
102
+ timeout: opts.timeout ?? 60_000,
103
+ expect: {
104
+ timeout: opts.expectTimeout ?? 10_000,
105
+ },
106
+ fullyParallel: opts.fullyParallel ?? false,
107
+ // CI-ben tilos a .only (véletlen szűkített suite = fals zöld)
108
+ forbidOnly: !!process.env.CI,
109
+ // Retry CSAK CI-ben (load-flake tolerancia); lokálban a flake jel, nem zaj
110
+ retries: process.env.CI ? (opts.retriesInCi ?? 0) : 0,
111
+ workers: workers,
112
+ reporter: [
113
+ ['html'],
114
+ ['json', { outputFile: 'test-results/results.json' }],
115
+ ['list'],
116
+ ],
117
+ use: {
118
+ baseURL: baseURL,
119
+ ignoreHTTPSErrors: ignoreHTTPSErrors,
120
+ screenshot: 'only-on-failure',
121
+ trace: 'retain-on-failure',
122
+ video: 'retain-on-failure',
123
+ // Consumer-specifikus use-mezők (pl. storageState) a mag TETEJÉRE merge-ölve
124
+ ...(opts.extraUse || {}),
125
+ },
126
+ outputDir: 'test-results',
127
+ projects: projects,
128
+ });
129
+ }
130
+ //# sourceMappingURL=playwright-config.factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright-config.factory.js","sourceRoot":"","sources":["../../../../src/_modules/presets/_collections/playwright-config.factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { DyE2E_Viewport_Interface } from '../../contracts/_models/interfaces/viewport.interface';
2
+ import { DyE2E_ViewportsOption_Type } from '../_models/interfaces/playwright-config-options.interface';
3
+ /**
4
+ * Viewport-opció feloldása konkrét viewport-tömbre.
5
+ * Custom tömb → passthrough; preset-név → a megfelelő konstans; hiányzó opció → `'single'`.
6
+ */
7
+ export declare function DyE2E_resolveViewportPreset(viewports?: DyE2E_ViewportsOption_Type): DyE2E_Viewport_Interface[];
8
+ //# sourceMappingURL=viewport-preset-resolver.util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport-preset-resolver.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/presets/_collections/viewport-preset-resolver.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,2DAA2D,CAAC;AAOvG;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,CAAC,EAAE,0BAA0B,GAAG,wBAAwB,EAAE,CAe9G"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyE2E_resolveViewportPreset = DyE2E_resolveViewportPreset;
4
+ const playwright_viewport_presets_const_1 = require("./constants/playwright-viewport-presets.const");
5
+ /**
6
+ * Viewport-opció feloldása konkrét viewport-tömbre.
7
+ * Custom tömb → passthrough; preset-név → a megfelelő konstans; hiányzó opció → `'single'`.
8
+ */
9
+ function DyE2E_resolveViewportPreset(viewports) {
10
+ // Custom katalógus — a consumer sajátja, változtatás nélkül adjuk tovább
11
+ if (Array.isArray(viewports)) {
12
+ return viewports;
13
+ }
14
+ // Named preset feloldás — default a 'single' (legkisebb, biztonságos mátrix)
15
+ switch (viewports) {
16
+ case 'visual-8':
17
+ return playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_VISUAL8;
18
+ case 'named-4':
19
+ return playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_NAMED4;
20
+ case 'single':
21
+ default:
22
+ return playwright_viewport_presets_const_1.DYE2E_VIEWPORTS_SINGLE;
23
+ }
24
+ }
25
+ //# sourceMappingURL=viewport-preset-resolver.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport-preset-resolver.util.js","sourceRoot":"","sources":["../../../../src/_modules/presets/_collections/viewport-preset-resolver.util.ts"],"names":[],"mappings":";;AAYA,kEAeC;AAzBD,qGAIuD;AAEvD;;;GAGG;AACH,SAAgB,2BAA2B,CAAC,SAAsC;IAChF,yEAAyE;IACzE,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,6EAA6E;IAC7E,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,UAAU;YACb,OAAO,2DAAuB,CAAC;QACjC,KAAK,SAAS;YACZ,OAAO,0DAAsB,CAAC;QAChC,KAAK,QAAQ,CAAC;QACd;YACE,OAAO,0DAAsB,CAAC;IAClC,CAAC;AACH,CAAC"}