@futdevpro/dynamo-e2e 1.18.7 → 1.18.9

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 (211) 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/contracts/_collections/utils/test-id.util.d.ts +2 -0
  5. package/build/_modules/contracts/_collections/utils/test-id.util.d.ts.map +1 -1
  6. package/build/_modules/contracts/_collections/utils/test-id.util.js +4 -0
  7. package/build/_modules/contracts/_collections/utils/test-id.util.js.map +1 -1
  8. package/build/_modules/generators/_collections/cli-runner.util.d.ts.map +1 -1
  9. package/build/_modules/generators/_collections/cli-runner.util.js +5 -11
  10. package/build/_modules/generators/_collections/cli-runner.util.js.map +1 -1
  11. package/build/_modules/generators/_collections/field-emission.util.d.ts +5 -0
  12. package/build/_modules/generators/_collections/field-emission.util.d.ts.map +1 -1
  13. package/build/_modules/generators/_collections/field-emission.util.js +27 -6
  14. package/build/_modules/generators/_collections/field-emission.util.js.map +1 -1
  15. package/build/_modules/generators/_models/form-settings-shape.interface.d.ts +15 -0
  16. package/build/_modules/generators/_models/form-settings-shape.interface.d.ts.map +1 -1
  17. package/build/_modules/generators/bootstrap.spec.js +4 -3
  18. package/build/_modules/generators/bootstrap.spec.js.map +1 -1
  19. package/build/_modules/generators/field-emission-edge.spec.js +49 -0
  20. package/build/_modules/generators/field-emission-edge.spec.js.map +1 -1
  21. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.d.ts +22 -0
  22. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.d.ts.map +1 -0
  23. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.js +69 -0
  24. package/build/_modules/presets/_collections/constants/playwright-viewport-presets.const.js.map +1 -0
  25. package/build/_modules/presets/_collections/global-setup.factory.d.ts +14 -0
  26. package/build/_modules/presets/_collections/global-setup.factory.d.ts.map +1 -0
  27. package/build/_modules/presets/_collections/global-setup.factory.js +113 -0
  28. package/build/_modules/presets/_collections/global-setup.factory.js.map +1 -0
  29. package/build/_modules/presets/_collections/playwright-config.factory.d.ts +19 -0
  30. package/build/_modules/presets/_collections/playwright-config.factory.d.ts.map +1 -0
  31. package/build/_modules/presets/_collections/playwright-config.factory.js +107 -0
  32. package/build/_modules/presets/_collections/playwright-config.factory.js.map +1 -0
  33. package/build/_modules/presets/_collections/viewport-preset-resolver.util.d.ts +8 -0
  34. package/build/_modules/presets/_collections/viewport-preset-resolver.util.d.ts.map +1 -0
  35. package/build/_modules/presets/_collections/viewport-preset-resolver.util.js +25 -0
  36. package/build/_modules/presets/_collections/viewport-preset-resolver.util.js.map +1 -0
  37. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.d.ts +28 -0
  38. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.d.ts.map +1 -0
  39. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.js +3 -0
  40. package/build/_modules/presets/_models/interfaces/global-setup-options.interface.js.map +1 -0
  41. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.d.ts +43 -0
  42. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.d.ts.map +1 -0
  43. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.js +3 -0
  44. package/build/_modules/presets/_models/interfaces/playwright-config-options.interface.js.map +1 -0
  45. package/build/_modules/presets/index.d.ts +6 -0
  46. package/build/_modules/presets/index.d.ts.map +1 -1
  47. package/build/_modules/presets/index.js +12 -1
  48. package/build/_modules/presets/index.js.map +1 -1
  49. package/build/_modules/presets/presets.spec.d.ts +2 -0
  50. package/build/_modules/presets/presets.spec.d.ts.map +1 -0
  51. package/build/_modules/presets/presets.spec.js +230 -0
  52. package/build/_modules/presets/presets.spec.js.map +1 -0
  53. package/build/_modules/vqa/generators/ai-agent-readme.template.d.ts +2 -1
  54. package/build/_modules/vqa/generators/ai-agent-readme.template.d.ts.map +1 -1
  55. package/build/_modules/vqa/generators/ai-agent-readme.template.js +22 -3
  56. package/build/_modules/vqa/generators/ai-agent-readme.template.js.map +1 -1
  57. package/coverage/contracts/_collections/index.html +1 -1
  58. package/coverage/contracts/_collections/index.ts.html +1 -1
  59. package/coverage/contracts/_collections/utils/index.html +1 -1
  60. package/coverage/contracts/_collections/utils/test-id.util.ts.html +10 -10
  61. package/coverage/contracts/_enums/cwv-metric-type.enum.ts.html +1 -1
  62. package/coverage/contracts/_enums/field-test-case-type.enum.ts.html +4 -34
  63. package/coverage/contracts/_enums/index.html +5 -5
  64. package/coverage/contracts/_enums/index.ts.html +1 -1
  65. package/coverage/contracts/_enums/standard-viewport.enum.ts.html +1 -1
  66. package/coverage/contracts/_enums/test-expectation-type.enum.ts.html +1 -1
  67. package/coverage/contracts/_enums/test-run-mode-type.enum.ts.html +1 -1
  68. package/coverage/contracts/index.html +1 -1
  69. package/coverage/contracts/index.ts.html +1 -1
  70. package/coverage/cwv/_collections/cwv-aggregator.util.ts.html +1 -1
  71. package/coverage/cwv/_collections/cwv-comparison.util.ts.html +4 -4
  72. package/coverage/cwv/_collections/cwv-diagnose.util.ts.html +1 -1
  73. package/coverage/cwv/_collections/cwv-emission.util.ts.html +1 -1
  74. package/coverage/cwv/_collections/cwv-summarize.util.ts.html +1 -1
  75. package/coverage/cwv/_collections/index.html +7 -7
  76. package/coverage/cwv/_collections/inp-interaction-script.const.ts.html +1 -1
  77. package/coverage/cwv/_collections/web-vitals-page-script.const.ts.html +1 -1
  78. package/coverage/cwv/cwv-suite.generator.ts.html +3 -3
  79. package/coverage/cwv/index.html +5 -5
  80. package/coverage/generators/_collections/cli-runner.util.ts.html +1 -1
  81. package/coverage/generators/_collections/config-validator.util.ts.html +1 -1
  82. package/coverage/generators/_collections/field-emission.util.ts.html +87 -126
  83. package/coverage/generators/_collections/form-level-emission.util.ts.html +33 -39
  84. package/coverage/generators/_collections/index.html +29 -29
  85. package/coverage/generators/_collections/json-schema.util.ts.html +1 -1
  86. package/coverage/generators/_collections/preset-configs.const.ts.html +1 -1
  87. package/coverage/generators/_collections/spec-emission.util.ts.html +35 -35
  88. package/coverage/generators/_collections/test-case-filter.util.ts.html +66 -258
  89. package/coverage/generators/_collections/viewport-emission.util.ts.html +1 -1
  90. package/coverage/generators/form-suite.generator.ts.html +79 -97
  91. package/coverage/generators/index.html +18 -18
  92. package/coverage/generators/viewport-suite.generator.ts.html +3 -3
  93. package/coverage/index.html +45 -90
  94. package/coverage/lcov-report/contracts/_collections/index.html +1 -1
  95. package/coverage/lcov-report/contracts/_collections/index.ts.html +1 -1
  96. package/coverage/lcov-report/contracts/_collections/utils/index.html +1 -1
  97. package/coverage/lcov-report/contracts/_collections/utils/test-id.util.ts.html +10 -10
  98. package/coverage/lcov-report/contracts/_enums/cwv-metric-type.enum.ts.html +1 -1
  99. package/coverage/lcov-report/contracts/_enums/field-test-case-type.enum.ts.html +4 -34
  100. package/coverage/lcov-report/contracts/_enums/index.html +5 -5
  101. package/coverage/lcov-report/contracts/_enums/index.ts.html +1 -1
  102. package/coverage/lcov-report/contracts/_enums/standard-viewport.enum.ts.html +1 -1
  103. package/coverage/lcov-report/contracts/_enums/test-expectation-type.enum.ts.html +1 -1
  104. package/coverage/lcov-report/contracts/_enums/test-run-mode-type.enum.ts.html +1 -1
  105. package/coverage/lcov-report/contracts/index.html +1 -1
  106. package/coverage/lcov-report/contracts/index.ts.html +1 -1
  107. package/coverage/lcov-report/cwv/_collections/cwv-aggregator.util.ts.html +1 -1
  108. package/coverage/lcov-report/cwv/_collections/cwv-comparison.util.ts.html +4 -4
  109. package/coverage/lcov-report/cwv/_collections/cwv-diagnose.util.ts.html +1 -1
  110. package/coverage/lcov-report/cwv/_collections/cwv-emission.util.ts.html +1 -1
  111. package/coverage/lcov-report/cwv/_collections/cwv-summarize.util.ts.html +1 -1
  112. package/coverage/lcov-report/cwv/_collections/index.html +7 -7
  113. package/coverage/lcov-report/cwv/_collections/inp-interaction-script.const.ts.html +1 -1
  114. package/coverage/lcov-report/cwv/_collections/web-vitals-page-script.const.ts.html +1 -1
  115. package/coverage/lcov-report/cwv/cwv-suite.generator.ts.html +3 -3
  116. package/coverage/lcov-report/cwv/index.html +5 -5
  117. package/coverage/lcov-report/generators/_collections/cli-runner.util.ts.html +1 -1
  118. package/coverage/lcov-report/generators/_collections/config-validator.util.ts.html +1 -1
  119. package/coverage/lcov-report/generators/_collections/field-emission.util.ts.html +87 -126
  120. package/coverage/lcov-report/generators/_collections/form-level-emission.util.ts.html +33 -39
  121. package/coverage/lcov-report/generators/_collections/index.html +29 -29
  122. package/coverage/lcov-report/generators/_collections/json-schema.util.ts.html +1 -1
  123. package/coverage/lcov-report/generators/_collections/preset-configs.const.ts.html +1 -1
  124. package/coverage/lcov-report/generators/_collections/spec-emission.util.ts.html +35 -35
  125. package/coverage/lcov-report/generators/_collections/test-case-filter.util.ts.html +66 -258
  126. package/coverage/lcov-report/generators/_collections/viewport-emission.util.ts.html +1 -1
  127. package/coverage/lcov-report/generators/form-suite.generator.ts.html +79 -97
  128. package/coverage/lcov-report/generators/index.html +18 -18
  129. package/coverage/lcov-report/generators/viewport-suite.generator.ts.html +3 -3
  130. package/coverage/lcov-report/index.html +45 -90
  131. package/coverage/lcov-report/runtime/_collections/assertion-helpers.util.ts.html +7 -16
  132. package/coverage/lcov-report/runtime/_collections/index.html +17 -17
  133. package/coverage/lcov-report/runtime/_collections/unique-generator.util.ts.html +3 -3
  134. package/coverage/lcov-report/runtime/_collections/wait-helpers.util.ts.html +5 -5
  135. package/coverage/lcov-report/runtime/_services/dialog-page-object.ts.html +2 -2
  136. package/coverage/lcov-report/runtime/_services/field-page-object.ts.html +2 -2
  137. package/coverage/lcov-report/runtime/_services/form-page-object.ts.html +2 -2
  138. package/coverage/lcov-report/runtime/_services/index.html +9 -9
  139. package/coverage/lcov-report/runtime/_services/loader-page-object.ts.html +2 -2
  140. package/coverage/lcov-report/runtime/_services/logger.service.ts.html +5 -5
  141. package/coverage/lcov-report/runtime/_services/login-flow-helper.base.ts.html +2 -2
  142. package/coverage/lcov-report/runtime/_services/nav-page-object.ts.html +2 -2
  143. package/coverage/lcov-report/runtime/_services/toast-page-object.ts.html +1 -1
  144. package/coverage/lcov-report/runtime/_services/wave-2b-page-objects.ts.html +6 -6
  145. package/coverage/lcov-report/runtime/index.html +1 -1
  146. package/coverage/lcov-report/runtime/index.ts.html +1 -1
  147. package/coverage/lcov.info +737 -3049
  148. package/coverage/runtime/_collections/assertion-helpers.util.ts.html +7 -16
  149. package/coverage/runtime/_collections/index.html +17 -17
  150. package/coverage/runtime/_collections/unique-generator.util.ts.html +3 -3
  151. package/coverage/runtime/_collections/wait-helpers.util.ts.html +5 -5
  152. package/coverage/runtime/_services/dialog-page-object.ts.html +2 -2
  153. package/coverage/runtime/_services/field-page-object.ts.html +2 -2
  154. package/coverage/runtime/_services/form-page-object.ts.html +2 -2
  155. package/coverage/runtime/_services/index.html +9 -9
  156. package/coverage/runtime/_services/loader-page-object.ts.html +2 -2
  157. package/coverage/runtime/_services/logger.service.ts.html +5 -5
  158. package/coverage/runtime/_services/login-flow-helper.base.ts.html +2 -2
  159. package/coverage/runtime/_services/nav-page-object.ts.html +2 -2
  160. package/coverage/runtime/_services/toast-page-object.ts.html +1 -1
  161. package/coverage/runtime/_services/wave-2b-page-objects.ts.html +6 -6
  162. package/coverage/runtime/index.html +1 -1
  163. package/coverage/runtime/index.ts.html +1 -1
  164. package/coverage/tmp/coverage-228636-1781075225757-0.json +1 -0
  165. package/coverage/tmp/coverage-228704-1781075227108-0.json +1 -0
  166. package/dogfood/generated/date-range-field-new.spec.ts +54 -0
  167. package/dogfood/generated/password-field-new.spec.ts +97 -0
  168. package/dogfood/generated/radio-select-field-new.spec.ts +69 -0
  169. package/dogfood/generated/slider-field-new.spec.ts +47 -0
  170. package/dogfood/generated/text-field-new.spec.ts +0 -0
  171. package/logs/cicd-job.json +3 -0
  172. package/logs/cicd-report.json +3 -0
  173. package/logs/cicd-status.json +3 -0
  174. package/package.json +4 -1
  175. package/.dynamo/logs/cicd-pipeline/status.json +0 -74
  176. package/coverage/lcov-report/vqa/_collections/utils/deterministic-finding.util.ts.html +0 -481
  177. package/coverage/lcov-report/vqa/_collections/utils/finding-id.util.ts.html +0 -214
  178. package/coverage/lcov-report/vqa/_collections/utils/finding-validator.util.ts.html +0 -463
  179. package/coverage/lcov-report/vqa/_collections/utils/index.html +0 -176
  180. package/coverage/lcov-report/vqa/_collections/utils/manifest-validator.util.ts.html +0 -652
  181. package/coverage/lcov-report/vqa/_collections/utils/risk-score.util.ts.html +0 -424
  182. package/coverage/lcov-report/vqa/_enums/dom-evidence-detector.enum.ts.html +0 -214
  183. package/coverage/lcov-report/vqa/_enums/finding-severity.enum.ts.html +0 -133
  184. package/coverage/lcov-report/vqa/_enums/finding-status.enum.ts.html +0 -151
  185. package/coverage/lcov-report/vqa/_enums/index.html +0 -161
  186. package/coverage/lcov-report/vqa/_enums/visual-state-type.enum.ts.html +0 -235
  187. package/coverage/lcov-report/vqa/generators/ai-agent-readme.template.ts.html +0 -643
  188. package/coverage/lcov-report/vqa/generators/bundle-summary.template.ts.html +0 -316
  189. package/coverage/lcov-report/vqa/generators/capture-spec.generator.ts.html +0 -835
  190. package/coverage/lcov-report/vqa/generators/comparison-bundle.generator.ts.html +0 -898
  191. package/coverage/lcov-report/vqa/generators/index.html +0 -176
  192. package/coverage/lcov-report/vqa/generators/review-bundle.generator.ts.html +0 -559
  193. package/coverage/tmp/coverage-19436-1783427587751-0.json +0 -1
  194. package/coverage/tmp/coverage-19441-1783427586112-0.json +0 -1
  195. package/coverage/vqa/_collections/utils/deterministic-finding.util.ts.html +0 -481
  196. package/coverage/vqa/_collections/utils/finding-id.util.ts.html +0 -214
  197. package/coverage/vqa/_collections/utils/finding-validator.util.ts.html +0 -463
  198. package/coverage/vqa/_collections/utils/index.html +0 -176
  199. package/coverage/vqa/_collections/utils/manifest-validator.util.ts.html +0 -652
  200. package/coverage/vqa/_collections/utils/risk-score.util.ts.html +0 -424
  201. package/coverage/vqa/_enums/dom-evidence-detector.enum.ts.html +0 -214
  202. package/coverage/vqa/_enums/finding-severity.enum.ts.html +0 -133
  203. package/coverage/vqa/_enums/finding-status.enum.ts.html +0 -151
  204. package/coverage/vqa/_enums/index.html +0 -161
  205. package/coverage/vqa/_enums/visual-state-type.enum.ts.html +0 -235
  206. package/coverage/vqa/generators/ai-agent-readme.template.ts.html +0 -643
  207. package/coverage/vqa/generators/bundle-summary.template.ts.html +0 -316
  208. package/coverage/vqa/generators/capture-spec.generator.ts.html +0 -835
  209. package/coverage/vqa/generators/comparison-bundle.generator.ts.html +0 -898
  210. package/coverage/vqa/generators/index.html +0 -176
  211. package/coverage/vqa/generators/review-bundle.generator.ts.html +0 -559
@@ -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,CAoEpG"}
@@ -0,0 +1,107 @@
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 projects = 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
+ // A közös config-mag — a flotta-configok metszete + opcionális override-ok
75
+ return (0, test_1.defineConfig)({
76
+ testDir: opts.testDir || './tests',
77
+ // globalSetup csak ha a consumer adott path-t (require.resolve-olt abszolút path)
78
+ ...(opts.globalSetupPath ? { globalSetup: opts.globalSetupPath } : {}),
79
+ timeout: opts.timeout ?? 60_000,
80
+ expect: {
81
+ timeout: opts.expectTimeout ?? 10_000,
82
+ },
83
+ fullyParallel: opts.fullyParallel ?? false,
84
+ // CI-ben tilos a .only (véletlen szűkített suite = fals zöld)
85
+ forbidOnly: !!process.env.CI,
86
+ // Retry CSAK CI-ben (load-flake tolerancia); lokálban a flake jel, nem zaj
87
+ retries: process.env.CI ? (opts.retriesInCi ?? 0) : 0,
88
+ workers: workers,
89
+ reporter: [
90
+ ['html'],
91
+ ['json', { outputFile: 'test-results/results.json' }],
92
+ ['list'],
93
+ ],
94
+ use: {
95
+ baseURL: baseURL,
96
+ ignoreHTTPSErrors: ignoreHTTPSErrors,
97
+ screenshot: 'only-on-failure',
98
+ trace: 'retain-on-failure',
99
+ video: 'retain-on-failure',
100
+ // Consumer-specifikus use-mezők (pl. storageState) a mag TETEJÉRE merge-ölve
101
+ ...(opts.extraUse || {}),
102
+ },
103
+ outputDir: 'test-results',
104
+ projects: projects,
105
+ });
106
+ }
107
+ //# 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"}
@@ -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,43 @@
1
+ import type { PlaywrightTestConfig } from '@playwright/test';
2
+ import { DyE2E_Viewport_Interface } from '../../../contracts/_models/interfaces/viewport.interface';
3
+ /**
4
+ * Viewport-opció a `DyE2E_getPlaywrightConfig`-hoz: named preset VAGY custom viewport-tömb.
5
+ * - `'visual-8'` — 8 viewport-os Tailwind-breakpoint visual-matrix (organizer-minta)
6
+ * - `'named-4'` — 4 nevesített viewport (desktop-1920 / wide-2560 / tablet-1024 / mobile-414, overseer-minta)
7
+ * - `'single'` — 1 standard desktop viewport (master-prompter-minta)
8
+ * - custom tömb — a consumer saját `DyE2E_Viewport_Interface[]` katalógusa
9
+ */
10
+ export type DyE2E_ViewportsOption_Type = 'visual-8' | 'named-4' | 'single' | DyE2E_Viewport_Interface[];
11
+ /**
12
+ * A `DyE2E_getPlaywrightConfig` factory opciói — a flotta playwright.config.ts-eiből
13
+ * desztillált közös mag paraméterezése (organizer / overseer / master-prompter minták).
14
+ */
15
+ export interface DyE2E_PlaywrightConfig_Options {
16
+ /**
17
+ * Default E2E target ha nincs `E2E_BASE_URL` env-override.
18
+ * KONVENCIÓ: MINDIG a deployolt TEST szerver — SOHA nem localhost (a CICD-runner ne
19
+ * célozzon PROD-ot; memory: feedback_e2e_ldp_local_cicd_test_target).
20
+ */
21
+ defaultBaseUrl: string;
22
+ /** A hívó e2e-mappája (jellemzően `__dirname`) — innen töltődik a `.env` dotenv-vel. Default: `process.cwd()`. */
23
+ envDir?: string;
24
+ /** Playwright testDir. Default: `'./tests'`. */
25
+ testDir?: string;
26
+ /** globalSetup fájl abszolút path-ja — a consumer `require.resolve('./e2e-global-setup.ts')`-t ad át. */
27
+ globalSetupPath?: string;
28
+ /** Viewport-preset név vagy custom viewport-tömb. Default: `'single'`. */
29
+ viewports?: DyE2E_ViewportsOption_Type;
30
+ /** Playwright fullyParallel. Default: `false` (flotta-minta: deployolt env ellen szekvenciális). */
31
+ fullyParallel?: boolean;
32
+ /** Fix worker-szám — felülírja az isHttps-derivációt; az `E2E_WORKERS` env ezt is felülírja. */
33
+ workers?: number;
34
+ /** Retry-szám CI-ben (`process.env.CI` alatt). Default: `0`; lokálban MINDIG 0 (a flake ott jel, nem zaj). */
35
+ retriesInCi?: number;
36
+ /** Per-test timeout ms-ben. Default: `60_000`. */
37
+ timeout?: number;
38
+ /** expect() timeout ms-ben. Default: `10_000`. */
39
+ expectTimeout?: number;
40
+ /** Extra `use`-mezők (pl. `storageState`) — a common-mag `use` blokkjára merge-ölődnek. */
41
+ extraUse?: PlaywrightTestConfig['use'];
42
+ }
43
+ //# 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;AAEpG;;;;;;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;CACxC"}
@@ -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":""}
@@ -9,6 +9,12 @@
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_GlobalSetup_Options } from './_models/interfaces/global-setup-options.interface';
12
18
  /** Wave-2/3 marker — itt lesz a viewport + CWV preset-runner. */
13
19
  export declare const DYE2E_PRESETS_NEXT_WAVES: string[];
14
20
  //# 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,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;AAQxB,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":""}