@vijaypjavvadi/bdd2pw 3.3.0 → 3.4.0

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.
package/CHANGELOG.md CHANGED
@@ -9,6 +9,95 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  _Nothing yet._
11
11
 
12
+ ## [3.4.0] — 2026-05-22
13
+
14
+ ### Added — three opt-in domain rule packs
15
+
16
+ bdd2pw's deterministic rule registry now ships with three new
17
+ regulated-industry dialect packs. Each pack is opt-in via the new
18
+ `domains` config and adds ~20 patterns to the matcher. When
19
+ activated, the pack's rules run BEFORE the generic UI/URL rules so
20
+ domain-specific prose intercepts the ambiguous catch-alls first.
21
+
22
+ #### `ScaffoldOptions.domains?: ("banking" | "healthcare" | "insurance")[]`
23
+
24
+ Pass any combination — they're additive. Default empty array
25
+ keeps the registry byte-stable with v3.3.0 for callers who don't
26
+ opt in.
27
+
28
+ await scaffold({
29
+ feature: "features/login.feature",
30
+ domains: ["banking", "healthcare"],
31
+ // …
32
+ });
33
+
34
+ #### Banking (`src/transformers/domains/banking.ts`)
35
+
36
+ 20 rules covering: account balance (`the account balance is
37
+ "$1,234.56"`), comparators (`at least`, `at most`, `less than`,
38
+ `greater than`, `exactly`), transfers (`I transfer "$X" from "Y" to
39
+ "Z"`), transaction fees, statement transaction counts, daily
40
+ withdrawal/deposit/transfer limits, account opening/closing,
41
+ transaction dates, payment status, Reg E dispute filing windows,
42
+ Reg D savings withdrawal counts, KYC and AML statuses, account
43
+ number tails, routing numbers, deposits / withdrawals, available
44
+ credit, wire transfer status.
45
+
46
+ #### Healthcare (`src/transformers/domains/healthcare.ts`)
47
+
48
+ 20 rules covering: patient name and MRN, appointment scheduling,
49
+ ICD-10 diagnosis codes, medications (prescribed / ordered /
50
+ administered), HIPAA consent forms, HL7 v2 message types
51
+ (`ADT^A01`), FHIR resource refs (`Patient/123`), encryption
52
+ status, vital signs (blood pressure, heart rate), allergies,
53
+ provider NPI and DEA, lab results, admit/discharge actions, audit
54
+ log entries.
55
+
56
+ #### Insurance (`src/transformers/domains/insurance.ts`)
57
+
58
+ 20 rules covering: policy numbers, premium amounts, claim status,
59
+ deductibles (with comparators), policy effective and renewal
60
+ dates, claim filing windows, loss reserves, line of business,
61
+ NAIC codes, adjuster assignment, claim filing, coverage limits,
62
+ policy status (active / lapsed / cancelled), policyholder name,
63
+ cancel / renew actions, subrogation status, premium payment
64
+ indicator, claim payout.
65
+
66
+ ### How the rules emit code
67
+
68
+ Every domain rule emits `customBody` (not pomCall/assertion) so
69
+ the spec doesn't depend on the user having a POM field for every
70
+ domain concept. Bodies reference standard locator hints
71
+ (`[data-testid='...']`, `[aria-label='...']`, `getByLabel(/...)`)
72
+ that match most well-built apps. Field shape uncertainty is
73
+ acknowledged with multiple selectors in the same `locator(...)`
74
+ call (e.g. `"[data-testid='kyc-complete'], [aria-label='KYC verified']"`).
75
+
76
+ ### Fixtures + tests
77
+
78
+ - `tests/fixtures/v3.4.0/{banking,healthcare,insurance}/input.feature`
79
+ — one fixture per domain, ~15-18 representative steps each.
80
+ - `tests/unit/v340Fixtures.test.ts` — three assertions per domain:
81
+ 1. Activated → every fixture step matches a rule.
82
+ 2. Not activated → most fixture steps fall through (proves
83
+ opt-in is real).
84
+ 3. Cross-cutting: all three activated together → all three
85
+ fixtures match cleanly.
86
+
87
+ ### New module organization
88
+
89
+ `src/transformers/domains/` is the new home for domain rule packs.
90
+ Future v3.x releases can drop in additional packs (retail, gov,
91
+ education, etc.) without touching `stepMatcher.ts`.
92
+
93
+ ### Cross-cutting
94
+
95
+ `stepMatcher` now exports `setActiveDomains(domains)` and a
96
+ `DomainName` type for callers that need to drive the matcher
97
+ directly (e.g. test harnesses). The active set is reset to empty
98
+ when `scaffold()` is called without `domains`, so leftover state
99
+ from a previous run can't pollute the next.
100
+
12
101
  ## [3.3.0] — 2026-05-22
13
102
 
14
103
  ### Changed — TestForge step-hook signature extension (follow-up to v3.1.0 Issue 4)
package/dist/index.js CHANGED
@@ -91,6 +91,16 @@ class NotImplementedError extends Error {
91
91
  async function scaffold(opts) {
92
92
  const reviewItems = [];
93
93
  logger_1.logger.info({ feature: opts.feature, page: opts.page, repo: opts.repo }, "scaffold start");
94
+ // v3.4.0 — activate any requested domain rule packs. Set once per
95
+ // scaffold() call; cleared by passing an empty/undefined list. The
96
+ // matcher reads activeDomainRules on every matchStep call.
97
+ (0, stepMatcher_1.setActiveDomains)(opts.domains);
98
+ if (opts.domains && opts.domains.length > 0) {
99
+ reviewItems.push({
100
+ severity: "info",
101
+ message: `Domain rule packs active: ${opts.domains.join(", ")}.`,
102
+ });
103
+ }
94
104
  // 1) Parse Gherkin — or JSON scenarios (v3.2.0, TestForge Issue 8).
95
105
  // The converter produces a FeatureIR with identical shape so the
96
106
  // downstream pipeline is uniform.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * v3.4.0 — Banking domain rule pack.
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["banking"]`. When activated,
5
+ * these rules slot into the matcher registry BEFORE the URL-slug
6
+ * guardrails so banking-specific prose ("the account balance is
7
+ * $1,234.56") intercepts before drifting into the generic catch-all.
8
+ *
9
+ * Each rule emits `customBody` rather than a pomCall/assertion so the
10
+ * downstream emitter doesn't need to invent a POM field. The body
11
+ * lines reference standard test helpers (`page.evaluate`,
12
+ * `expect(text).toMatch`) that work against any banking app.
13
+ *
14
+ * Coverage:
15
+ * - Account balance (toContainText with currency-formatted value)
16
+ * - Transfers between accounts
17
+ * - Transaction fees
18
+ * - Statement transaction counts
19
+ * - Daily withdrawal / deposit limits
20
+ * - Regulation E (dispute filing windows)
21
+ * - Regulation D (savings withdrawal counts)
22
+ * - KYC / AML statuses
23
+ * - Transaction dates
24
+ * - Account opening / closing
25
+ *
26
+ * Patterns intentionally accept either `$1,234.56` or `"$1,234.56"`
27
+ * (LLM-emitted .feature files sometimes quote the currency). Numeric
28
+ * captures preserve commas — they're surfaced to the test as-is so
29
+ * the assertion matches what the page actually renders.
30
+ */
31
+ import type { PageObjectIR, StepBinding, StepIR } from "../../types";
32
+ interface Rule {
33
+ pattern: RegExp;
34
+ build(m: RegExpMatchArray, step: StepIR, pom: PageObjectIR, pageVar: string): StepBinding | null;
35
+ }
36
+ export declare const BANKING_RULES: Rule[];
37
+ export {};
@@ -0,0 +1,279 @@
1
+ "use strict";
2
+ /**
3
+ * v3.4.0 — Banking domain rule pack.
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["banking"]`. When activated,
6
+ * these rules slot into the matcher registry BEFORE the URL-slug
7
+ * guardrails so banking-specific prose ("the account balance is
8
+ * $1,234.56") intercepts before drifting into the generic catch-all.
9
+ *
10
+ * Each rule emits `customBody` rather than a pomCall/assertion so the
11
+ * downstream emitter doesn't need to invent a POM field. The body
12
+ * lines reference standard test helpers (`page.evaluate`,
13
+ * `expect(text).toMatch`) that work against any banking app.
14
+ *
15
+ * Coverage:
16
+ * - Account balance (toContainText with currency-formatted value)
17
+ * - Transfers between accounts
18
+ * - Transaction fees
19
+ * - Statement transaction counts
20
+ * - Daily withdrawal / deposit limits
21
+ * - Regulation E (dispute filing windows)
22
+ * - Regulation D (savings withdrawal counts)
23
+ * - KYC / AML statuses
24
+ * - Transaction dates
25
+ * - Account opening / closing
26
+ *
27
+ * Patterns intentionally accept either `$1,234.56` or `"$1,234.56"`
28
+ * (LLM-emitted .feature files sometimes quote the currency). Numeric
29
+ * captures preserve commas — they're surfaced to the test as-is so
30
+ * the assertion matches what the page actually renders.
31
+ */
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.BANKING_RULES = void 0;
34
+ /** Subject prefix matches the stepMatcher convention. */
35
+ const SUBJ = "(?:I|user|User|the user|the User)";
36
+ /** Quoted-or-bare currency capture, e.g. `$1,234.56`, `"$500"`. */
37
+ const MONEY = `\\$?["']?\\$?([\\d,]+(?:\\.\\d{1,2})?)["']?`;
38
+ /** ISO date capture or quoted free-form date. */
39
+ const DATE = `["']?(\\d{4}-\\d{2}-\\d{2}|\\d{1,2}\\/\\d{1,2}\\/\\d{2,4})["']?`;
40
+ exports.BANKING_RULES = [
41
+ // BANK:01 — `the account balance is "$1,234.56"`
42
+ {
43
+ pattern: new RegExp(`^(?:the )?account balance is ${MONEY}$`, "i"),
44
+ build: (m, step) => ({
45
+ step,
46
+ customBody: [
47
+ `const _bankingBalance = await page.locator("[data-testid='account-balance'], .account-balance, [aria-label*='balance' i]").first().innerText();`,
48
+ `expect(_bankingBalance.replace(/[^\\d.,]/g, "")).toContain(${JSON.stringify(m[1])});`,
49
+ ].join("\n"),
50
+ }),
51
+ },
52
+ // BANK:02 — `the account balance is at least "$X"` / `at most "$X"` / `greater than "$X"`
53
+ {
54
+ pattern: new RegExp(`^(?:the )?account balance is (at least|at most|greater than|less than|exactly) ${MONEY}$`, "i"),
55
+ build: (m, step) => {
56
+ const op = m[1].toLowerCase();
57
+ const matcher = {
58
+ "at least": "toBeGreaterThanOrEqual",
59
+ "at most": "toBeLessThanOrEqual",
60
+ "greater than": "toBeGreaterThan",
61
+ "less than": "toBeLessThan",
62
+ exactly: "toBe",
63
+ }[op];
64
+ const num = m[2].replace(/,/g, "");
65
+ return {
66
+ step,
67
+ customBody: [
68
+ `const _bal = await page.locator("[data-testid='account-balance'], .account-balance").first().innerText();`,
69
+ `const _balNum = Number(_bal.replace(/[^\\d.-]/g, ""));`,
70
+ `expect(_balNum).${matcher}(${num});`,
71
+ ].join("\n"),
72
+ };
73
+ },
74
+ },
75
+ // BANK:03 — `I transfer "$500" from "checking" to "savings"`
76
+ {
77
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?transfer(?:s)? ${MONEY} from ["']([^"']+)["'] to ["']([^"']+)["']$`, "i"),
78
+ build: (m, step) => ({
79
+ step,
80
+ customBody: [
81
+ `await page.getByLabel(/from account/i).selectOption({ label: ${JSON.stringify(m[2])} });`,
82
+ `await page.getByLabel(/to account/i).selectOption({ label: ${JSON.stringify(m[3])} });`,
83
+ `await page.getByLabel(/amount/i).fill(${JSON.stringify(m[1])});`,
84
+ `await page.getByRole("button", { name: /transfer|submit/i }).click();`,
85
+ ].join("\n"),
86
+ }),
87
+ },
88
+ // BANK:04 — `the transaction fee is less than "$5"`
89
+ {
90
+ pattern: new RegExp(`^(?:the )?transaction fee is (at most|less than|exactly|at least|greater than) ${MONEY}$`, "i"),
91
+ build: (m, step) => {
92
+ const op = m[1].toLowerCase();
93
+ const matcher = {
94
+ "at most": "toBeLessThanOrEqual",
95
+ "less than": "toBeLessThan",
96
+ exactly: "toBe",
97
+ "at least": "toBeGreaterThanOrEqual",
98
+ "greater than": "toBeGreaterThan",
99
+ }[op];
100
+ const num = m[2].replace(/,/g, "");
101
+ return {
102
+ step,
103
+ customBody: [
104
+ `const _fee = await page.locator("[data-testid='transaction-fee'], .fee").first().innerText();`,
105
+ `const _feeNum = Number(_fee.replace(/[^\\d.-]/g, ""));`,
106
+ `expect(_feeNum).${matcher}(${num});`,
107
+ ].join("\n"),
108
+ };
109
+ },
110
+ },
111
+ // BANK:05 — `the statement shows (N) transactions`
112
+ {
113
+ pattern: /^(?:the )?statement shows (\d+) transactions?$/i,
114
+ build: (m, step) => ({
115
+ step,
116
+ customBody: [
117
+ `const _txnCount = await page.locator("[data-testid='transaction-row'], tr.transaction").count();`,
118
+ `expect(_txnCount).toBe(${m[1]});`,
119
+ ].join("\n"),
120
+ }),
121
+ },
122
+ // BANK:06 — `the daily withdrawal limit is "$500"`
123
+ {
124
+ pattern: new RegExp(`^(?:the )?daily (withdrawal|deposit|transfer) limit is ${MONEY}$`, "i"),
125
+ build: (m, step) => ({
126
+ step,
127
+ customBody: [
128
+ `const _limit = await page.locator(\`[data-testid='daily-${m[1].toLowerCase()}-limit']\`).innerText();`,
129
+ `expect(_limit).toContain(${JSON.stringify(m[2])});`,
130
+ ].join("\n"),
131
+ }),
132
+ },
133
+ // BANK:07 — `I open a "checking" account`
134
+ {
135
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?open(?:s)? a(?:n)? ["']?([\\w ]+?)["']? account$`, "i"),
136
+ build: (m, step) => ({
137
+ step,
138
+ customBody: [
139
+ `await page.getByRole("button", { name: /open.*account/i }).click();`,
140
+ `await page.getByLabel(/account type/i).selectOption({ label: ${JSON.stringify(m[1])} });`,
141
+ `await page.getByRole("button", { name: /create|open|submit/i }).click();`,
142
+ ].join("\n"),
143
+ }),
144
+ },
145
+ // BANK:08 — `I close the "savings" account`
146
+ {
147
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?close(?:s)? the ["']?([\\w ]+?)["']? account$`, "i"),
148
+ build: (m, step) => ({
149
+ step,
150
+ customBody: [
151
+ `await page.getByRole("link", { name: ${JSON.stringify(m[1])} }).click();`,
152
+ `await page.getByRole("button", { name: /close account/i }).click();`,
153
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
154
+ ].join("\n"),
155
+ }),
156
+ },
157
+ // BANK:09 — `the transaction date is "2026-05-22"`
158
+ {
159
+ pattern: new RegExp(`^(?:the )?transaction date is ${DATE}$`, "i"),
160
+ build: (m, step) => ({
161
+ step,
162
+ customBody: [
163
+ `const _txnDate = await page.locator("[data-testid='transaction-date']").first().innerText();`,
164
+ `expect(_txnDate).toContain(${JSON.stringify(m[1])});`,
165
+ ].join("\n"),
166
+ }),
167
+ },
168
+ // BANK:10 — `the payment status is "pending"`
169
+ {
170
+ pattern: /^(?:the )?(?:payment|transaction|transfer) status is ["']([^"']+)["']$/i,
171
+ build: (m, step) => ({
172
+ step,
173
+ customBody: `await expect(page.locator("[data-testid='payment-status'], .payment-status").first()).toContainText(${JSON.stringify(m[1])});`,
174
+ }),
175
+ },
176
+ // BANK:11 — Reg E: `the dispute is filed within 60 days of the statement`
177
+ {
178
+ pattern: /^(?:the )?dispute is filed within (\d+) days(?: of the statement)?$/i,
179
+ build: (m, step) => ({
180
+ step,
181
+ customBody: [
182
+ `// Reg E dispute window check (${m[1]} days). The DOM should expose`,
183
+ `// a data-attribute or text indicating the filing window status.`,
184
+ `await expect(page.locator("[data-testid='dispute-status']").first()).toContainText(/within (?:window|${m[1]}.*days)/i);`,
185
+ ].join("\n"),
186
+ }),
187
+ },
188
+ // BANK:12 — Reg D: `the savings withdrawal count is (N)`
189
+ {
190
+ pattern: /^(?:the )?savings withdrawal count is (\d+)$/i,
191
+ build: (m, step) => ({
192
+ step,
193
+ customBody: [
194
+ `const _withdrawCount = await page.locator("[data-testid='reg-d-count']").innerText();`,
195
+ `expect(Number(_withdrawCount.replace(/\\D/g, ""))).toBe(${m[1]});`,
196
+ ].join("\n"),
197
+ }),
198
+ },
199
+ // BANK:13 — `the customer has completed KYC verification`
200
+ // and `the customer has not completed KYC verification`
201
+ {
202
+ pattern: /^(?:the )?customer has (not )?completed KYC(?: verification)?$/i,
203
+ build: (m, step) => {
204
+ const matcher = m[1] ? "not.toBeVisible" : "toBeVisible";
205
+ return {
206
+ step,
207
+ customBody: `await expect(page.locator("[data-testid='kyc-complete'], [aria-label='KYC verified']").first()).${matcher}();`,
208
+ };
209
+ },
210
+ },
211
+ // BANK:14 — `the transaction is flagged for AML review`
212
+ {
213
+ pattern: /^(?:the )?transaction is (not )?flagged for AML(?: review)?$/i,
214
+ build: (m, step) => {
215
+ const matcher = m[1] ? "not.toBeVisible" : "toBeVisible";
216
+ return {
217
+ step,
218
+ customBody: `await expect(page.locator("[data-testid='aml-flag']").first()).${matcher}();`,
219
+ };
220
+ },
221
+ },
222
+ // BANK:15 — `the account number ends in "1234"`
223
+ {
224
+ pattern: /^(?:the )?account number ends (?:in|with) ["'](\d{4})["']$/i,
225
+ build: (m, step) => ({
226
+ step,
227
+ customBody: `await expect(page.locator("[data-testid='account-number'], .acct-number").first()).toContainText(/${m[1]}$/);`,
228
+ }),
229
+ },
230
+ // BANK:16 — `the routing number is "021000021"`
231
+ {
232
+ pattern: /^(?:the )?routing number is ["']?(\d{9})["']?$/i,
233
+ build: (m, step) => ({
234
+ step,
235
+ customBody: `await expect(page.locator("[data-testid='routing-number'], .routing").first()).toContainText(${JSON.stringify(m[1])});`,
236
+ }),
237
+ },
238
+ // BANK:17 — `I deposit "$X" into "savings"`
239
+ {
240
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?deposit(?:s)? ${MONEY} (?:in)?to ["']([^"']+)["']$`, "i"),
241
+ build: (m, step) => ({
242
+ step,
243
+ customBody: [
244
+ `await page.getByLabel(/destination account/i).selectOption({ label: ${JSON.stringify(m[2])} });`,
245
+ `await page.getByLabel(/deposit amount/i).fill(${JSON.stringify(m[1])});`,
246
+ `await page.getByRole("button", { name: /deposit|submit/i }).click();`,
247
+ ].join("\n"),
248
+ }),
249
+ },
250
+ // BANK:18 — `I withdraw "$X" from "checking"`
251
+ {
252
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?withdraw(?:s)? ${MONEY} from ["']([^"']+)["']$`, "i"),
253
+ build: (m, step) => ({
254
+ step,
255
+ customBody: [
256
+ `await page.getByLabel(/source account/i).selectOption({ label: ${JSON.stringify(m[2])} });`,
257
+ `await page.getByLabel(/withdraw(?:al)? amount/i).fill(${JSON.stringify(m[1])});`,
258
+ `await page.getByRole("button", { name: /withdraw|submit/i }).click();`,
259
+ ].join("\n"),
260
+ }),
261
+ },
262
+ // BANK:19 — `the available credit is "$X"`
263
+ {
264
+ pattern: new RegExp(`^(?:the )?available credit is ${MONEY}$`, "i"),
265
+ build: (m, step) => ({
266
+ step,
267
+ customBody: `await expect(page.locator("[data-testid='available-credit']").first()).toContainText(${JSON.stringify(m[1])});`,
268
+ }),
269
+ },
270
+ // BANK:20 — `the wire transfer is "completed"` / "pending" / "rejected"
271
+ {
272
+ pattern: /^(?:the )?wire(?: transfer)? is ["']([^"']+)["']$/i,
273
+ build: (m, step) => ({
274
+ step,
275
+ customBody: `await expect(page.locator("[data-testid='wire-status']").first()).toContainText(${JSON.stringify(m[1])});`,
276
+ }),
277
+ },
278
+ ];
279
+ //# sourceMappingURL=banking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banking.js","sourceRoot":"","sources":["../../../src/transformers/domains/banking.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * v3.4.0 — Healthcare domain rule pack.
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["healthcare"]`. Covers common
5
+ * EHR / clinical / regulatory dialects: patient records, appointments,
6
+ * ICD-10 diagnosis codes, medications, HIPAA consent forms, HL7
7
+ * message types, FHIR resource references, vital signs, allergies,
8
+ * provider NPIs.
9
+ *
10
+ * Patterns are intentionally specific (require recognisable formats
11
+ * like `ICD-10:E11.9` or `120/80 mmHg`) so they don't false-positive
12
+ * UI-shaped steps.
13
+ */
14
+ import type { PageObjectIR, StepBinding, StepIR } from "../../types";
15
+ interface Rule {
16
+ pattern: RegExp;
17
+ build(m: RegExpMatchArray, step: StepIR, pom: PageObjectIR, pageVar: string): StepBinding | null;
18
+ }
19
+ export declare const HEALTHCARE_RULES: Rule[];
20
+ export {};
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ /**
3
+ * v3.4.0 — Healthcare domain rule pack.
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["healthcare"]`. Covers common
6
+ * EHR / clinical / regulatory dialects: patient records, appointments,
7
+ * ICD-10 diagnosis codes, medications, HIPAA consent forms, HL7
8
+ * message types, FHIR resource references, vital signs, allergies,
9
+ * provider NPIs.
10
+ *
11
+ * Patterns are intentionally specific (require recognisable formats
12
+ * like `ICD-10:E11.9` or `120/80 mmHg`) so they don't false-positive
13
+ * UI-shaped steps.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.HEALTHCARE_RULES = void 0;
17
+ const SUBJ = "(?:I|user|User|the user|the User|the provider)";
18
+ exports.HEALTHCARE_RULES = [
19
+ // HEALTH:01 — `the patient's name is "John Doe"`
20
+ {
21
+ pattern: /^(?:the )?patient'?s? name is ["']([^"']+)["']$/i,
22
+ build: (m, step) => ({
23
+ step,
24
+ customBody: `await expect(page.locator("[data-testid='patient-name'], [aria-label='Patient name']").first()).toContainText(${JSON.stringify(m[1])});`,
25
+ }),
26
+ },
27
+ // HEALTH:02 — `the patient ID is "MRN12345"`
28
+ {
29
+ pattern: /^(?:the )?patient(?: ID| MRN|'?s? medical record number) is ["']([^"']+)["']$/i,
30
+ build: (m, step) => ({
31
+ step,
32
+ customBody: `await expect(page.locator("[data-testid='patient-mrn'], [data-testid='patient-id']").first()).toContainText(${JSON.stringify(m[1])});`,
33
+ }),
34
+ },
35
+ // HEALTH:03 — `the appointment is scheduled for "2026-06-01"`
36
+ {
37
+ pattern: /^(?:the )?appointment is scheduled (?:for|on) ["']?(\d{4}-\d{2}-\d{2}|\d{1,2}\/\d{1,2}\/\d{2,4})["']?$/i,
38
+ build: (m, step) => ({
39
+ step,
40
+ customBody: `await expect(page.locator("[data-testid='appointment-date'], .appt-date").first()).toContainText(${JSON.stringify(m[1])});`,
41
+ }),
42
+ },
43
+ // HEALTH:04 — `I schedule an appointment for "2026-06-01"`
44
+ {
45
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?schedule(?:s)? (?:an? )?appointment (?:for|on) ["']?(\\d{4}-\\d{2}-\\d{2})["']?$`, "i"),
46
+ build: (m, step) => ({
47
+ step,
48
+ customBody: [
49
+ `await page.getByRole("button", { name: /schedule.*appointment/i }).click();`,
50
+ `await page.getByLabel(/appointment date/i).fill(${JSON.stringify(m[1])});`,
51
+ `await page.getByRole("button", { name: /confirm|submit/i }).click();`,
52
+ ].join("\n"),
53
+ }),
54
+ },
55
+ // HEALTH:05 — `the diagnosis code is "ICD-10:E11.9"`
56
+ {
57
+ pattern: /^(?:the )?diagnosis(?: code)? is ["']?(ICD-10[: ]?[A-Z]\d{2}(?:\.\d{1,3})?)["']?$/i,
58
+ build: (m, step) => ({
59
+ step,
60
+ customBody: `await expect(page.locator("[data-testid='diagnosis-code'], .icd-10").first()).toContainText(${JSON.stringify(m[1])});`,
61
+ }),
62
+ },
63
+ // HEALTH:06 — `the medication "Metformin" is prescribed`
64
+ {
65
+ pattern: /^(?:the )?medication ["']([^"']+)["'] is (?:prescribed|ordered|administered)$/i,
66
+ build: (m, step) => ({
67
+ step,
68
+ customBody: `await expect(page.locator("[data-testid='medication-list'], .medications").first()).toContainText(${JSON.stringify(m[1])});`,
69
+ }),
70
+ },
71
+ // HEALTH:07 — `I prescribe "Metformin 500mg" for the patient`
72
+ {
73
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?prescribe(?:s)? ["']([^"']+)["'](?: for (?:the )?patient)?$`, "i"),
74
+ build: (m, step) => ({
75
+ step,
76
+ customBody: [
77
+ `await page.getByRole("button", { name: /add (?:medication|prescription)/i }).click();`,
78
+ `await page.getByLabel(/medication name/i).fill(${JSON.stringify(m[1])});`,
79
+ `await page.getByRole("button", { name: /prescribe|save/i }).click();`,
80
+ ].join("\n"),
81
+ }),
82
+ },
83
+ // HEALTH:08 — `the patient has signed consent form "HIPAA-1"`
84
+ {
85
+ pattern: /^(?:the )?patient has (not )?signed (?:consent )?form ["']([^"']+)["']$/i,
86
+ build: (m, step) => {
87
+ const matcher = m[1] ? "not.toBeVisible" : "toBeVisible";
88
+ return {
89
+ step,
90
+ customBody: `await expect(page.locator(\`[data-testid='consent-${m[2].replace(/[^\\w-]/g, "")}'], [data-form='${m[2]}'][data-signed='true']\`).first()).${matcher}();`,
91
+ };
92
+ },
93
+ },
94
+ // HEALTH:09 — `the HL7 message type is "ADT^A01"`
95
+ {
96
+ pattern: /^(?:the )?HL7 message type is ["']?([A-Z]{3}\^[A-Z]\d{2})["']?$/i,
97
+ build: (m, step) => ({
98
+ step,
99
+ customBody: `await expect(page.locator("[data-testid='hl7-msh-9']").first()).toContainText(${JSON.stringify(m[1])});`,
100
+ }),
101
+ },
102
+ // HEALTH:10 — `the FHIR resource is "Patient/123"`
103
+ {
104
+ pattern: /^(?:the )?FHIR resource is ["']?([A-Z][a-zA-Z]+\/[\w-]+)["']?$/i,
105
+ build: (m, step) => ({
106
+ step,
107
+ customBody: [
108
+ `// FHIR resource ref — exposed by the EHR's data attribute.`,
109
+ `await expect(page.locator(\`[data-fhir-ref='${m[1]}']\`)).toBeVisible();`,
110
+ ].join("\n"),
111
+ }),
112
+ },
113
+ // HEALTH:11 — `the patient's data is encrypted`
114
+ {
115
+ pattern: /^(?:the )?patient'?s? (?:data|record|chart) is (not )?encrypted$/i,
116
+ build: (m, step) => {
117
+ const matcher = m[1] ? "not.toBeVisible" : "toBeVisible";
118
+ return {
119
+ step,
120
+ customBody: `await expect(page.locator("[data-testid='encryption-status'], [aria-label='HIPAA-compliant']").first()).${matcher}();`,
121
+ };
122
+ },
123
+ },
124
+ // HEALTH:12 — `the blood pressure reading is "120/80"`
125
+ {
126
+ pattern: /^(?:the )?blood pressure(?: reading)? is ["']?(\d{2,3}\/\d{2,3})["']?(?: mmHg)?$/i,
127
+ build: (m, step) => ({
128
+ step,
129
+ customBody: `await expect(page.locator("[data-testid='vital-bp'], [aria-label*='blood pressure' i]").first()).toContainText(${JSON.stringify(m[1])});`,
130
+ }),
131
+ },
132
+ // HEALTH:13 — `the heart rate is (N) bpm`
133
+ {
134
+ pattern: /^(?:the )?heart rate is (\d{2,3})(?:\s*bpm)?$/i,
135
+ build: (m, step) => ({
136
+ step,
137
+ customBody: [
138
+ `const _hr = await page.locator("[data-testid='vital-hr']").first().innerText();`,
139
+ `expect(Number(_hr.replace(/\\D/g, ""))).toBe(${m[1]});`,
140
+ ].join("\n"),
141
+ }),
142
+ },
143
+ // HEALTH:14 — `the patient is allergic to "penicillin"`
144
+ {
145
+ pattern: /^(?:the )?patient is (not )?allergic to ["']([^"']+)["']$/i,
146
+ build: (m, step) => {
147
+ const matcher = m[1] ? "not.toContainText" : "toContainText";
148
+ return {
149
+ step,
150
+ customBody: `await expect(page.locator("[data-testid='allergy-list'], .allergies").first()).${matcher}(${JSON.stringify(m[2])});`,
151
+ };
152
+ },
153
+ },
154
+ // HEALTH:15 — `the provider NPI is "1234567890"`
155
+ {
156
+ pattern: /^(?:the )?provider NPI is ["']?(\d{10})["']?$/i,
157
+ build: (m, step) => ({
158
+ step,
159
+ customBody: `await expect(page.locator("[data-testid='provider-npi'], .npi").first()).toContainText(${JSON.stringify(m[1])});`,
160
+ }),
161
+ },
162
+ // HEALTH:16 — `the provider DEA number is "AB1234567"`
163
+ {
164
+ pattern: /^(?:the )?provider DEA(?: number)? is ["']?([A-Z]{2}\d{7})["']?$/i,
165
+ build: (m, step) => ({
166
+ step,
167
+ customBody: `await expect(page.locator("[data-testid='provider-dea']").first()).toContainText(${JSON.stringify(m[1])});`,
168
+ }),
169
+ },
170
+ // HEALTH:17 — `the lab result for "HbA1c" is "5.8"`
171
+ {
172
+ pattern: /^(?:the )?lab result for ["']([^"']+)["'] is ["']?([\d.]+)["']?(?: ([\w/%]+))?$/i,
173
+ build: (m, step) => ({
174
+ step,
175
+ customBody: [
176
+ `const _labRow = page.locator("[data-testid='lab-row']").filter({ hasText: ${JSON.stringify(m[1])} }).first();`,
177
+ `await expect(_labRow).toContainText(${JSON.stringify(m[2])});`,
178
+ ].join("\n"),
179
+ }),
180
+ },
181
+ // HEALTH:18 — `I admit the patient to "ICU"`
182
+ {
183
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?admit(?:s)? (?:the )?patient to ["']([^"']+)["']$`, "i"),
184
+ build: (m, step) => ({
185
+ step,
186
+ customBody: [
187
+ `await page.getByRole("button", { name: /admit/i }).click();`,
188
+ `await page.getByLabel(/unit|ward|location/i).selectOption({ label: ${JSON.stringify(m[1])} });`,
189
+ `await page.getByRole("button", { name: /confirm|admit/i }).click();`,
190
+ ].join("\n"),
191
+ }),
192
+ },
193
+ // HEALTH:19 — `I discharge the patient`
194
+ {
195
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?discharge(?:s)? (?:the )?patient$`, "i"),
196
+ build: (_m, step) => ({
197
+ step,
198
+ customBody: [
199
+ `await page.getByRole("button", { name: /discharge/i }).click();`,
200
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
201
+ ].join("\n"),
202
+ }),
203
+ },
204
+ // HEALTH:20 — `the audit log contains a "view chart" entry for the patient`
205
+ {
206
+ pattern: /^(?:the )?audit log contains (?:a |an )?["']([^"']+)["'] entry(?: for the patient)?$/i,
207
+ build: (m, step) => ({
208
+ step,
209
+ customBody: [
210
+ `await page.getByRole("link", { name: /audit log/i }).click();`,
211
+ `await expect(page.locator("[data-testid='audit-row']")).toContainText(${JSON.stringify(m[1])});`,
212
+ ].join("\n"),
213
+ }),
214
+ },
215
+ ];
216
+ //# sourceMappingURL=healthcare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"healthcare.js","sourceRoot":"","sources":["../../../src/transformers/domains/healthcare.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * v3.4.0 — Insurance domain rule pack.
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["insurance"]`. Covers common
5
+ * P&C / life / health insurance dialects: policies, premiums, claims,
6
+ * coverage limits, effective dates, claim filing windows, loss
7
+ * reserves, line of business, NAIC codes, adjuster assignment.
8
+ */
9
+ import type { PageObjectIR, StepBinding, StepIR } from "../../types";
10
+ interface Rule {
11
+ pattern: RegExp;
12
+ build(m: RegExpMatchArray, step: StepIR, pom: PageObjectIR, pageVar: string): StepBinding | null;
13
+ }
14
+ export declare const INSURANCE_RULES: Rule[];
15
+ export {};
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+ /**
3
+ * v3.4.0 — Insurance domain rule pack.
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["insurance"]`. Covers common
6
+ * P&C / life / health insurance dialects: policies, premiums, claims,
7
+ * coverage limits, effective dates, claim filing windows, loss
8
+ * reserves, line of business, NAIC codes, adjuster assignment.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.INSURANCE_RULES = void 0;
12
+ const SUBJ = "(?:I|user|User|the user|the User|the adjuster|the agent)";
13
+ const MONEY = `\\$?["']?\\$?([\\d,]+(?:\\.\\d{1,2})?)["']?`;
14
+ exports.INSURANCE_RULES = [
15
+ // INS:01 — `the policy number is "POL-12345"`
16
+ {
17
+ pattern: /^(?:the )?policy number is ["']?([A-Z]{2,5}-?\d{4,12})["']?$/i,
18
+ build: (m, step) => ({
19
+ step,
20
+ customBody: `await expect(page.locator("[data-testid='policy-number']").first()).toContainText(${JSON.stringify(m[1])});`,
21
+ }),
22
+ },
23
+ // INS:02 — `the premium amount is "$150"`
24
+ {
25
+ pattern: new RegExp(`^(?:the )?premium(?: amount)? is ${MONEY}$`, "i"),
26
+ build: (m, step) => ({
27
+ step,
28
+ customBody: `await expect(page.locator("[data-testid='premium-amount']").first()).toContainText(${JSON.stringify(m[1])});`,
29
+ }),
30
+ },
31
+ // INS:03 — `the claim status is "approved"`
32
+ {
33
+ pattern: /^(?:the )?claim status is ["']([^"']+)["']$/i,
34
+ build: (m, step) => ({
35
+ step,
36
+ customBody: `await expect(page.locator("[data-testid='claim-status']").first()).toContainText(${JSON.stringify(m[1])});`,
37
+ }),
38
+ },
39
+ // INS:04 — `the deductible is "$500"` / `the deductible is at least $X`
40
+ {
41
+ pattern: new RegExp(`^(?:the )?deductible is (?:(at least|at most|less than|greater than|exactly) )?${MONEY}$`, "i"),
42
+ build: (m, step) => {
43
+ const op = (m[1] ?? "").toLowerCase();
44
+ const num = m[2].replace(/,/g, "");
45
+ if (!op) {
46
+ return {
47
+ step,
48
+ customBody: `await expect(page.locator("[data-testid='deductible']").first()).toContainText(${JSON.stringify(m[2])});`,
49
+ };
50
+ }
51
+ const matcher = {
52
+ "at least": "toBeGreaterThanOrEqual",
53
+ "at most": "toBeLessThanOrEqual",
54
+ "less than": "toBeLessThan",
55
+ "greater than": "toBeGreaterThan",
56
+ exactly: "toBe",
57
+ }[op];
58
+ return {
59
+ step,
60
+ customBody: [
61
+ `const _ded = await page.locator("[data-testid='deductible']").first().innerText();`,
62
+ `const _dedNum = Number(_ded.replace(/[^\\d.-]/g, ""));`,
63
+ `expect(_dedNum).${matcher}(${num});`,
64
+ ].join("\n"),
65
+ };
66
+ },
67
+ },
68
+ // INS:05 — `the policy effective date is "2026-01-01"`
69
+ {
70
+ pattern: /^(?:the )?policy(?: effective)? date is ["']?(\d{4}-\d{2}-\d{2}|\d{1,2}\/\d{1,2}\/\d{2,4})["']?$/i,
71
+ build: (m, step) => ({
72
+ step,
73
+ customBody: `await expect(page.locator("[data-testid='policy-effective-date']").first()).toContainText(${JSON.stringify(m[1])});`,
74
+ }),
75
+ },
76
+ // INS:06 — `the claim is filed within (N) days of the loss`
77
+ {
78
+ pattern: /^(?:the )?claim is filed within (\d+) days(?: of the loss)?$/i,
79
+ build: (m, step) => ({
80
+ step,
81
+ customBody: [
82
+ `// Claim-filing window check (${m[1]} days). Asserts the UI reports`,
83
+ `// the dispute / claim is inside the policy's filing window.`,
84
+ `await expect(page.locator("[data-testid='filing-window-status']").first()).toContainText(/within (?:window|${m[1]}.*days)/i);`,
85
+ ].join("\n"),
86
+ }),
87
+ },
88
+ // INS:07 — `the loss reserve is "$10,000"`
89
+ {
90
+ pattern: new RegExp(`^(?:the )?loss reserve is ${MONEY}$`, "i"),
91
+ build: (m, step) => ({
92
+ step,
93
+ customBody: `await expect(page.locator("[data-testid='loss-reserve']").first()).toContainText(${JSON.stringify(m[1])});`,
94
+ }),
95
+ },
96
+ // INS:08 — `the line of business is "auto"`
97
+ {
98
+ pattern: /^(?:the )?line of business is ["']([^"']+)["']$/i,
99
+ build: (m, step) => ({
100
+ step,
101
+ customBody: `await expect(page.locator("[data-testid='line-of-business'], [data-lob]").first()).toContainText(${JSON.stringify(m[1])});`,
102
+ }),
103
+ },
104
+ // INS:09 — `the NAIC code is "12345"`
105
+ {
106
+ pattern: /^(?:the )?NAIC(?: code)? is ["']?(\d{5})["']?$/i,
107
+ build: (m, step) => ({
108
+ step,
109
+ customBody: `await expect(page.locator("[data-testid='naic-code']").first()).toContainText(${JSON.stringify(m[1])});`,
110
+ }),
111
+ },
112
+ // INS:10 — `the claim is assigned to "Smith"`
113
+ {
114
+ pattern: /^(?:the )?(?:claim|case|file) is assigned to ["']([^"']+)["']$/i,
115
+ build: (m, step) => ({
116
+ step,
117
+ customBody: `await expect(page.locator("[data-testid='assigned-adjuster']").first()).toContainText(${JSON.stringify(m[1])});`,
118
+ }),
119
+ },
120
+ // INS:11 — `I file a claim for "$X"`
121
+ {
122
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?file(?:s)? (?:a )?claim for ${MONEY}$`, "i"),
123
+ build: (m, step) => ({
124
+ step,
125
+ customBody: [
126
+ `await page.getByRole("button", { name: /file (?:a )?claim/i }).click();`,
127
+ `await page.getByLabel(/claim amount/i).fill(${JSON.stringify(m[1])});`,
128
+ `await page.getByRole("button", { name: /submit/i }).click();`,
129
+ ].join("\n"),
130
+ }),
131
+ },
132
+ // INS:12 — `the coverage limit is "$100,000"`
133
+ {
134
+ pattern: new RegExp(`^(?:the )?coverage limit is ${MONEY}$`, "i"),
135
+ build: (m, step) => ({
136
+ step,
137
+ customBody: `await expect(page.locator("[data-testid='coverage-limit']").first()).toContainText(${JSON.stringify(m[1])});`,
138
+ }),
139
+ },
140
+ // INS:13 — `the policy is "active"` / `"lapsed"` / `"cancelled"`
141
+ {
142
+ pattern: /^(?:the )?policy is ["']([^"']+)["']$/i,
143
+ build: (m, step) => ({
144
+ step,
145
+ customBody: `await expect(page.locator("[data-testid='policy-status']").first()).toContainText(${JSON.stringify(m[1])});`,
146
+ }),
147
+ },
148
+ // INS:14 — `the policyholder is "John Doe"`
149
+ {
150
+ pattern: /^(?:the )?policyholder(?:'?s name)? is ["']([^"']+)["']$/i,
151
+ build: (m, step) => ({
152
+ step,
153
+ customBody: `await expect(page.locator("[data-testid='policyholder-name']").first()).toContainText(${JSON.stringify(m[1])});`,
154
+ }),
155
+ },
156
+ // INS:15 — `I cancel the policy`
157
+ {
158
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?cancel(?:s)? (?:the )?policy$`, "i"),
159
+ build: (_m, step) => ({
160
+ step,
161
+ customBody: [
162
+ `await page.getByRole("button", { name: /cancel policy/i }).click();`,
163
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
164
+ ].join("\n"),
165
+ }),
166
+ },
167
+ // INS:16 — `I renew the policy`
168
+ {
169
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?renew(?:s)? (?:the )?policy$`, "i"),
170
+ build: (_m, step) => ({
171
+ step,
172
+ customBody: [
173
+ `await page.getByRole("button", { name: /renew/i }).click();`,
174
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
175
+ ].join("\n"),
176
+ }),
177
+ },
178
+ // INS:17 — `the subrogation case is "opened"` / `"closed"`
179
+ {
180
+ pattern: /^(?:the )?subrogation(?: case)? is ["']([^"']+)["']$/i,
181
+ build: (m, step) => ({
182
+ step,
183
+ customBody: `await expect(page.locator("[data-testid='subrogation-status']").first()).toContainText(${JSON.stringify(m[1])});`,
184
+ }),
185
+ },
186
+ // INS:18 — `the premium has been paid`
187
+ {
188
+ pattern: /^(?:the )?premium has (not )?been paid$/i,
189
+ build: (m, step) => {
190
+ const matcher = m[1] ? "not.toBeVisible" : "toBeVisible";
191
+ return {
192
+ step,
193
+ customBody: `await expect(page.locator("[data-testid='premium-paid-indicator'], [aria-label='Premium paid']").first()).${matcher}();`,
194
+ };
195
+ },
196
+ },
197
+ // INS:19 — `the claim payout is "$X"`
198
+ {
199
+ pattern: new RegExp(`^(?:the )?(?:claim )?payout(?: amount)? is ${MONEY}$`, "i"),
200
+ build: (m, step) => ({
201
+ step,
202
+ customBody: `await expect(page.locator("[data-testid='claim-payout']").first()).toContainText(${JSON.stringify(m[1])});`,
203
+ }),
204
+ },
205
+ // INS:20 — `the policy renewal date is "2027-01-01"`
206
+ {
207
+ pattern: /^(?:the )?policy renewal date is ["']?(\d{4}-\d{2}-\d{2}|\d{1,2}\/\d{1,2}\/\d{2,4})["']?$/i,
208
+ build: (m, step) => ({
209
+ step,
210
+ customBody: `await expect(page.locator("[data-testid='renewal-date']").first()).toContainText(${JSON.stringify(m[1])});`,
211
+ }),
212
+ },
213
+ ];
214
+ //# sourceMappingURL=insurance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insurance.js","sourceRoot":"","sources":["../../../src/transformers/domains/insurance.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,18 @@
15
15
  * through to a `// TODO` warning. See docs/ARCHITECTURE.md §2 (LLM branch).
16
16
  */
17
17
  import type { PageObjectIR, ScenarioIR, StepBinding, StepIR } from "../types";
18
+ /**
19
+ * v3.4.0 — opt-in domain rule packs. ScaffoldOptions.domains is read
20
+ * once at the top of scaffold() and forwarded here via
21
+ * setActiveDomains(). Domain rules are spliced into the registry
22
+ * after the API + visibility rules but BEFORE the UI/URL-slug rules,
23
+ * so domain-specific patterns intercept ambiguous prose first.
24
+ *
25
+ * Domains are additive: passing ["banking", "healthcare"] activates
26
+ * both. Passing nothing keeps the registry byte-stable with v3.3.0.
27
+ */
28
+ export type DomainName = "banking" | "healthcare" | "insurance";
29
+ export declare function setActiveDomains(domains: readonly DomainName[] | undefined): void;
18
30
  export interface MatchStepsInput {
19
31
  scenarios: ScenarioIR[];
20
32
  pom: PageObjectIR;
@@ -16,6 +16,7 @@
16
16
  * through to a `// TODO` warning. See docs/ARCHITECTURE.md §2 (LLM branch).
17
17
  */
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.setActiveDomains = setActiveDomains;
19
20
  exports.matchSteps = matchSteps;
20
21
  exports.matchStep = matchStep;
21
22
  const naming_1 = require("../utils/naming");
@@ -23,6 +24,32 @@ const stepNormalizer_1 = require("./stepNormalizer");
23
24
  const stepNormalizer_2 = require("./stepNormalizer");
24
25
  const apiRules_1 = require("./apiRules");
25
26
  const visibilityRules_1 = require("./visibilityRules");
27
+ const banking_1 = require("./domains/banking");
28
+ const healthcare_1 = require("./domains/healthcare");
29
+ const insurance_1 = require("./domains/insurance");
30
+ const DOMAIN_RULES = {
31
+ banking: banking_1.BANKING_RULES,
32
+ healthcare: healthcare_1.HEALTHCARE_RULES,
33
+ insurance: insurance_1.INSURANCE_RULES,
34
+ };
35
+ let activeDomainRules = [];
36
+ function setActiveDomains(domains) {
37
+ if (!domains || domains.length === 0) {
38
+ activeDomainRules = [];
39
+ return;
40
+ }
41
+ const seen = new Set();
42
+ const out = [];
43
+ for (const d of domains) {
44
+ if (seen.has(d))
45
+ continue;
46
+ seen.add(d);
47
+ const pack = DOMAIN_RULES[d];
48
+ if (pack)
49
+ out.push(...pack);
50
+ }
51
+ activeDomainRules = out;
52
+ }
26
53
  /**
27
54
  * Match every step in every scenario to a POM call / assertion / TODO.
28
55
  * Background steps are also threaded through if the orchestrator passes
@@ -52,7 +79,13 @@ function matchStep(step, pom, pageVar) {
52
79
  const normalisedStep = normalisedText === step.text
53
80
  ? step
54
81
  : { ...step, text: normalisedText };
55
- for (const rule of RULES) {
82
+ // v3.4.0 — domain rule packs run after API + visibility but BEFORE
83
+ // the UI/URL-slug rules. Built as [domain, then registry] so the
84
+ // domain patterns intercept ambiguous prose first when active.
85
+ const effectiveRules = activeDomainRules.length > 0
86
+ ? [...activeDomainRules, ...RULES]
87
+ : RULES;
88
+ for (const rule of effectiveRules) {
56
89
  const m = normalisedStep.text.match(rule.pattern);
57
90
  if (m) {
58
91
  const result = rule.build(m, normalisedStep, pom, pageVar);
@@ -1 +1 @@
1
- {"version":3,"file":"stepMatcher.js","sourceRoot":"","sources":["../../src/transformers/stepMatcher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;AA4BH,gCAMC;AAMD,8BA6BC;AA7DD,4CAA4C;AAC5C,qDAAkD;AAClD,qDAAqD;AACrD,yCAAuC;AACvC,uDAAqD;AAWrD;;;;GAIG;AACI,KAAK,UAAU,UAAU,CAAC,KAAsB;IACrD,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CACvB,IAAY,EACZ,GAAiB,EACjB,OAAe;IAEf,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,mEAAmE;IACnE,qEAAqE;IACrE,mDAAmD;IACnD,MAAM,cAAc,GAAG,IAAA,kCAAiB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,cAAc,GAAW,cAAc,KAAK,IAAI,CAAC,IAAI;QACzD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;IAEtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,EAAE,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAC3D,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,OAAO;QACL,IAAI;QACJ,OAAO,EAAE,qBAAqB,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,GAAG;KAC3D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,IAAI,GAAG,mCAAmC,CAAC;AAYjD,MAAM,KAAK,GAAW;IACpB,sEAAsE;IACtE,uEAAuE;IACvE,yEAAyE;IACzE,sEAAsE;IACtE,6EAA6E;IAC7E,GAAG,oBAAS;IAEZ,kEAAkE;IAClE,qEAAqE;IACrE,+DAA+D;IAC/D,sEAAsE;IACtE,oEAAoE;IACpE,kEAAkE;IAClE,kDAAkD;IAClD,GAAG,kCAAgB;IAEnB,iEAAiE;IACjE;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,iJAAiJ,EAAE,GAAG,CAAC;QACtL,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,kEAAkE;YAClE,sBAAsB;YACtB,2DAA2D;YAC3D,mGAAmG;YACnG,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAC7D,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO;oBACL,IAAI;oBACJ,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;iBACrD,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,IAAI;gBACJ,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE;aAC3E,CAAC;QACJ,CAAC;KACF;IAED,qFAAqF;IACrF,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,wEAAwE;IACxE,iDAAiD;IACjD,EAAE;IACF,yEAAyE;IACzE,wEAAwE;IACxE;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,wHAAwH,EAAE,GAAG,CAAC;QAC7J,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KAC1F;IAED,2DAA2D;IAC3D,uEAAuE;IACvE,oEAAoE;IACpE,yEAAyE;IACzE,yEAAyE;IACzE,iCAAiC;IACjC;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,IAAI,IAAI,4GAA4G,EACpH,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAChC,qEAAqE;YACrE,oEAAoE;YACpE,gDAAgD;YAChD,MAAM,MAAM,GAAG,oCAAoC,CAAC;YACpD,MAAM,KAAK,GAAuC,EAAE,CAAC;YACrD,IAAI,EAA0B,CAAC;YAC/B,0DAA0D;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAC5B,IAAI,MAAM,CAAC,IAAI,IAAI,0CAA0C,EAAE,GAAG,CAAC,EACnE,EAAE,CACH,CAAC;YACF,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBACzC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YAElC,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC;gBACrC,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,CAAC,EAAE,CAAC;oBACP,4DAA4D;oBAC5D,qDAAqD;oBACrD,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChF,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,CAAC;KACF;IAED,mFAAmF;IACnF,+EAA+E;IAC/E,wEAAwE;IACxE,8DAA8D;IAC9D,wDAAwD;IACxD,sEAAsE;IACtE,oEAAoE;IACpE,+EAA+E;IAC/E;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,+EAA+E,EAAE,GAAG,CAAC;QACpH,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,0EAA0E;YAC1E,2DAA2D;YAC3D,OAAO,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;KACF;IAED,6DAA6D;IAC7D,uEAAuE;IACvE,oEAAoE;IACpE,qEAAqE;IACrE,iCAAiC;IACjC;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,iHAAiH,EAAE,GAAG,CAAC;QACtJ,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iDAAiD;YAC5E,MAAM,QAAQ,GAAG,YAAY;gBAC3B,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACvB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,EAAE,QAAQ,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACjF,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACzC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;YAC7E,CAAC;YACD,OAAO;gBACL,IAAI;gBACJ,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;aACzE,CAAC;QACJ,CAAC;KACF;IAED,6DAA6D;IAC7D;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,iFAAiF,EAAE,GAAG,CAAC;QACnH,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACnB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;YAC3D,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,OAAO;gBACL,IAAI;gBACJ,OAAO,EAAE;oBACP,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,eAAe;oBACzC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;iBAC9B;aACF,CAAC;QACJ,CAAC;KACF;IAED,8BAA8B;IAC9B;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,gEAAgE,EAAE,GAAG,CAAC;QAClG,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC3D,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,OAAO;gBACL,IAAI;gBACJ,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;aAC3E,CAAC;QACJ,CAAC;KACF;IAED,kDAAkD;IAClD;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,yDAAyD,EAAE,GAAG,CAAC;QAC3F,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;YACzD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;aAC5D,CAAC;QACJ,CAAC;KACF;IAED,iDAAiD;IACjD;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,+CAA+C,EAAE,GAAG,CAAC;QACjF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;YACzD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE;aAC3D,CAAC;QACJ,CAAC;KACF;IAED,wEAAwE;IACxE,2EAA2E;IAC3E,+EAA+E;IAC/E,uEAAuE;IACvE,0EAA0E;IAC1E,6EAA6E;IAC7E;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,+DAA+D,EAAE,GAAG,CAAC;QACjG,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GACT,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;gBAC7D,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC7D,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACnC;aACF,CAAC;QACJ,CAAC;KACF;IAED,yDAAyD;IACzD,uDAAuD;IACvD,sEAAsE;IACtE,uEAAuE;IACvE,uEAAuE;IACvE,8EAA8E;IAC9E;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,IAAI,IAAI,kHAAkH,EAC1H,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5E,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC7D,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACnC;aACF,CAAC;QACJ,CAAC;KACF;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,wDAAwD;IACxD;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,qDAAqD,EAAE,GAAG,CAAC;QACvF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5E,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC7D,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE,YAAY;oBACrB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACnC;aACF,CAAC;QACJ,CAAC;KACF;IAED,6FAA6F;IAC7F,mFAAmF;IACnF,8CAA8C;IAC9C;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,gEAAgE,EAAE,GAAG,CAAC;QAClG,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,qEAAqE;YACrE,qDAAqD;YACrD,sDAAsD;YACtD,4EAA4E;YAC5E,yEAAyE;YACzE,qEAAqE;YACrE,4BAA4B;YAC5B,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,mDAAmD;YACnD,IAAI,IAAA,+BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACL,IAAI;oBACJ,OAAO,EACL,oBAAoB,MAAM,2FAA2F;iBACxH,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,GAAG,OAAO,OAAO;oBAC1B,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,GAAG;iBACzF;aACF,CAAC;QACJ,CAAC;KACF;IAED,6EAA6E;IAC7E,wDAAwD;IACxD,+DAA+D;IAC/D,0EAA0E;IAC1E,iFAAiF;IACjF,6DAA6D;IAC7D,8EAA8E;IAC9E,gFAAgF;IAChF,yEAAyE;IACzE,sFAAsF;IACtF,gEAAgE;IAChE,kEAAkE;IAClE,6EAA6E;IAC7E;QACE,OAAO,EAAE,yHAAyH;QAClI,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,qEAAqE;YACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;YAChE,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,GAAG,OAAO,OAAO;oBAC1B,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG;iBACnD;aACF,CAAC;QACJ,CAAC;KACF;IAED,kFAAkF;IAClF,6EAA6E;IAC7E,2EAA2E;IAC3E,4CAA4C;IAC5C;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,iEAAiE,EAAE,GAAG,CAAC;QACnG,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,yEAAyE;YACzE,6DAA6D;YAC7D,gEAAgE;YAChE,sDAAsD;YACtD,8EAA8E;YAC9E,wEAAwE;YACxE,qEAAqE;YACrE,kEAAkE;YAClE,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,mDAAmD;YACnD,IAAI,IAAA,+BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACL,IAAI;oBACJ,OAAO,EACL,oBAAoB,MAAM,2FAA2F;iBACxH,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,MAAM;iBAChB,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;iBACtC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC7B,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,GAAG,OAAO,OAAO;oBAC1B,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;iBAChD;aACF,CAAC;QACJ,CAAC;KACF;IAED,yEAAyE;IACzE;QACE,OAAO,EAAE,qEAAqE;QAC9E,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;YAC9E,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,iBAAiB,IAAI,CAAC,SAAS,CAAC,UAAU,SAAS,IAAI,CAAC,GAAG,CAAC;YAC1E,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE,iBAAiB;oBAC1B,QAAQ,EAAE,WAAW,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;iBAChD;aACF,CAAC;QACJ,CAAC;KACF;IAED,uEAAuE;IACvE;QACE,OAAO,EAAE,2FAA2F;QACpG,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,oDAAoD;YACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC5E,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;YAChE,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,GAAG,OAAO,OAAO;oBAC1B,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;iBAC9E;aACF,CAAC;QACJ,CAAC;KACF;IAED,2EAA2E;IAC3E,yEAAyE;IACzE,sEAAsE;IACtE,2EAA2E;IAE3E,yEAAyE;IACzE,oEAAoE;IACpE,sEAAsE;IACtE,gEAAgE;IAChE;QACE,OAAO,EACL,0FAA0F;QAC5F,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3B,8DAA8D;YAC9D,4BAA4B;YAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAC7D,OAAO;gBACL,IAAI;gBACJ,OAAO,EAAE,OAAO;oBACd,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;oBAC7C,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE;aACtE,CAAC;QACJ,CAAC;KACF;IAED,gFAAgF;IAChF,uEAAuE;IACvE,yEAAyE;IACzE,wBAAwB;IACxB;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,IAAI,IAAI,iGAAiG,EACzG,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,gCAAgC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;SAClE,CAAC;KACH;IAED,0FAA0F;IAC1F,2DAA2D;IAC3D,4EAA4E;IAC5E,0EAA0E;IAC1E,sCAAsC;IACtC;QACE,OAAO,EACL,2GAA2G;QAC7G,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC;oBACpD,OAAO,EAAE,aAAa;iBACvB;aACF,CAAC;QACJ,CAAC;KACF;IAED,0EAA0E;IAC1E,yEAAyE;IACzE,2EAA2E;IAC3E,+BAA+B;IAC/B,iEAAiE;IACjE,qEAAqE;IACrE,+EAA+E;IAC/E,wEAAwE;IACxE,uEAAuE;IACvE,kDAAkD;IAClD;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,IAAI,IAAI,iGAAiG,EACzG,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAC7D,OAAO;gBACL,IAAI;gBACJ,OAAO,EAAE,OAAO;oBACd,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;oBAC7C,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;aAChD,CAAC;QACJ,CAAC;KACF;IAED,oEAAoE;IACpE,yEAAyE;IACzE,iEAAiE;IACjE;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,IAAI,IAAI,4GAA4G,EACpH,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,+EAA+E;YAC/E,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,kEAAkE;YAClE,+DAA+D;YAC/D,mEAAmE;YACnE,+DAA+D;YAC/D,IAAI,IAAA,+BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACL,IAAI;oBACJ,OAAO,EACL,oBAAoB,MAAM,2FAA2F;iBACxH,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,MAAM;iBAChB,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;iBACtC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC7B,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,GAAG,OAAO,OAAO;oBAC1B,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;iBAChD;aACF,CAAC;QACJ,CAAC;KACF;IAED,sGAAsG;IACtG,yEAAyE;IACzE,2EAA2E;IAC3E,uEAAuE;IACvE,6CAA6C;IAC7C,EAAE;IACF,uEAAuE;IACvE;QACE,OAAO,EACL,+IAA+I;QACjJ,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,KAAK,CAAC;YACV,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,KAAK;oBACH,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;wBAClE,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;wBACjD,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,KAAK;oBACH,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;wBAC7D,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAChD,CAAC;YACD,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAChD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACnC;aACF,CAAC;QACJ,CAAC;KACF;IAED,2EAA2E;IAC3E,uCAAuC;IACvC,EAAE;IACF,iEAAiE;IACjE,wEAAwE;IACxE,uEAAuE;IACvE,qEAAqE;IACrE,qEAAqE;IACrE,EAAE;IACF,uEAAuE;IACvE,wEAAwE;IACxE,oEAAoE;IACpE,2EAA2E;IAE3E,iFAAiF;IACjF,0EAA0E;IAC1E,uEAAuE;IACvE,kEAAkE;IAClE;QACE,OAAO,EACL,4GAA4G;QAC9G,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,OAAO,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC;KACF;IAED,gEAAgE;IAChE,yEAAyE;IACzE,sEAAsE;IACtE,4CAA4C;IAC5C;QACE,OAAO,EACL,sFAAsF;QACxF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,gCAAgC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;SAClE,CAAC;KACH;IAED,yEAAyE;IACzE,sEAAsE;IACtE,yDAAyD;IACzD;QACE,OAAO,EACL,uFAAuF;QACzF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;SAC7C,CAAC;KACH;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,sEAAsE;IACtE,2EAA2E;IAC3E,qCAAqC;IACrC;QACE,OAAO,EACL,gFAAgF;QAClF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,8EAA8E;YAC9E,0EAA0E;YAC1E,oBAAoB;YACpB,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;YAClD,mDAAmD;YACnD,IAAI,IAAA,+BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACL,IAAI;oBACJ,OAAO,EACL,oBAAoB,MAAM,2FAA2F;iBACxH,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,MAAM;iBAChB,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;iBACtC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC7B,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,GAAG,OAAO,OAAO;oBAC1B,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;iBAChD;aACF,CAAC;QACJ,CAAC;KACF;IAED,gEAAgE;IAChE,gFAAgF;IAChF,sCAAsC;IACtC,4BAA4B;IAC5B,wEAAwE;IACxE,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE;QACE,OAAO,EACL,wGAAwG;QAC1G,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,0EAA0E;YAC1E,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YAClD,KAAK,CAAC,CAAC;YACP,MAAM,KAAK,GACT,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;gBAC7D,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,GAAG,OAAO,kCAAkC,CAAC;YACjD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;aAC5D,CAAC;QACJ,CAAC;KACF;IAED,oEAAoE;IACpE,yEAAyE;IACzE,yEAAyE;IACzE,4DAA4D;IAC5D;QACE,OAAO,EACL,mIAAmI;QACrI,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,KAAK,CAAC;YACV,IAAI,4CAA4C,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnE,KAAK;oBACH,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;wBAC7D,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAChD,CAAC;iBAAM,IACL,oDAAoD,CAAC,IAAI,CAAC,WAAW,CAAC,EACtE,CAAC;gBACD,KAAK;oBACH,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;wBAClE,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;wBACjD,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YACtD,CAAC;YACD,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAChD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACnC;aACF,CAAC;QACJ,CAAC;KACF;IAED,uFAAuF;IACvF,sEAAsE;IACtE,wEAAwE;IACxE,0EAA0E;IAC1E,yEAAyE;IACzE,8BAA8B;IAC9B,EAAE;IACF,0BAA0B;IAC1B,iEAAiE;IACjE,4CAA4C;IAC5C,4DAA4D;IAC5D;QACE,OAAO,EACL,kKAAkK;QACpK,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE;gBAC9C,UAAU,CAAC,IAAI,CAAC;gBAChB,QAAQ;gBACR,MAAM;aACP,CAAC,CAAC;YACH,oEAAoE;YACpE,kEAAkE;YAClE,uDAAuD;YACvD,gDAAgD;YAChD,MAAM,WAAW,GAAG,KAAK;gBACvB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACxC,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;aAC5D,CAAC;QACJ,CAAC;KACF;IAED,oEAAoE;IACpE,mDAAmD;IACnD,yEAAyE;IACzE,kCAAkC;IAClC,+DAA+D;IAC/D,iEAAiE;IACjE,uEAAuE;IACvE;QACE,OAAO,EACL,iIAAiI;QACnI,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,uDAAuD,CACxD,CAAC;YACF,IAAI,WAAmB,CAAC;YACxB,wEAAwE;YACxE,mEAAmE;YACnE,uEAAuE;YACvE,iEAAiE;YACjE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,iEAAiE;YACjE,kEAAkE;YAClE,+DAA+D;YAC/D,+CAA+C;YAC/C,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACvB,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;gBACnD,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE;oBAC9C,UAAU,CAAC,IAAI,CAAC;oBAChB,QAAQ;oBACR,MAAM;iBACP,CAAC,CAAC;gBACH,WAAW,GAAG,KAAK;oBACjB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;oBACjC,CAAC,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,MAAM,KAAK,GACT,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;oBAClE,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;oBACjD,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;gBACpD,WAAW,GAAG,KAAK;oBACjB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;oBACjC,CAAC,CAAC,wBAAwB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC9C,CAAC;iBAAM,IAAI,2DAA2D,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrF,MAAM,KAAK,GACT,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;oBAC7D,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC9C,WAAW,GAAG,KAAK;oBACjB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;oBACjC,CAAC,CAAC,GAAG,OAAO,kCAAkC,CAAC;YACnD,CAAC;iBAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3C,MAAM,KAAK,GACT,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;oBAC7D,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC9C,WAAW,GAAG,KAAK;oBACjB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;oBACjC,CAAC,CAAC,GAAG,OAAO,kCAAkC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpD,WAAW,GAAG,KAAK;oBACjB,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;oBACjC,CAAC,CAAC,wBAAwB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO;gBACL,IAAI;gBACJ,SAAS,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE;aAChE,CAAC;QACJ,CAAC;KACF;CACF,CAAC;AAEF;;;GAGG;AACH,SAAS,gBAAgB,CACvB,IAAY,EACZ,GAAiB,EACjB,OAAe,EACf,SAAiB,EACjB,KAAa;IAEb,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE;QAC1E,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC9B,CAAC,CAAC;IACH,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACzC,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;SAC/E,CAAC;IACJ,CAAC;IACD,OAAO;QACL,IAAI;QACJ,OAAO,EAAE;YACP,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,OAAO;YACjC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAC9B;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,SAAS,CAChB,GAAiB,EACjB,IAAY,EACZ,iBAA2B,EAC3B,OAA6B,EAAE;IAE/B,MAAM,IAAI,GAAG,IAAA,kBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEjC,iBAAiB;IACjB,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC;IACpE,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAEhB,kCAAkC;IAClC,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;IAClB,CAAC;IAED,2DAA2D;IAC3D,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5C,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CACnF,CAAC;QACF,uDAAuD;QACvD,CAAC,GAAG,aAAa,CAAC,IAAI,CACpB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAC9F,CAAC;QACF,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAChB,mEAAmE;QACnE,+DAA+D;QAC/D,sEAAsE;QACtE,oEAAoE;QACpE,0DAA0D;QAC1D,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,uEAAuE;IACvE,6DAA6D;IAC7D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAChB,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CACxB,GAAiB,EACjB,WAAmB,EACnB,OAAyC;IAEzC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;IACjE,IAAI,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC/D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI;SACR,OAAO,CACN,8EAA8E,EAC9E,EAAE,CACH;SACA,IAAI,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,sBAAsB,CAC7B,IAAY,EACZ,GAAiB,EACjB,oBAA8B,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC;IAElE,0EAA0E;IAC1E,uEAAuE;IACvE,wEAAwE;IACxE,iCAAiC;IACjC,OAAO,SAAS,CAAC,GAAG,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,aAAa,CAAC,CAAS;IAC9B,OAAO,CAAC;SACL,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;SACnC,OAAO,CAAC,sBAAsB,EAAE,GAAG,CAAC;SACpC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;SACnC,IAAI,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,mBAAmB,CAAC,CAAS;IACpC,OAAO,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,CAAS;IAChC,OAAO,aAAa,CAClB,mBAAmB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CACvD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAChD,MAAM,OAAO,GAAG,OAAO;SACpB,KAAK,CAAC,EAAE,CAAC;SACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;SACpD,IAAI,CAAC,MAAM,CAAC,CAAC;IAChB,2EAA2E;IAC3E,wEAAwE;IACxE,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC;AACnE,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,OAAe,EAAE,IAAY;IACzD,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACrC,mEAAmE;IACnE,oEAAoE;IACpE,oEAAoE;IACpE,yCAAyC;IACzC,OAAO,GAAG,OAAO,gFAAgF,IAAI,aAAa,CAAC;AACrH,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,OAAe,EAAE,IAAY;IAC7D,OAAO,GAAG,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"stepMatcher.js","sourceRoot":"","sources":["../../src/transformers/stepMatcher.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -243,6 +243,17 @@ export interface ScaffoldOptions {
243
243
  * Useful for iterative locator refinement workflows.
244
244
  */
245
245
  merge?: boolean;
246
+ /**
247
+ * v3.4.0 — opt-in domain rule packs. When provided, additional
248
+ * regex rules covering domain-specific dialects are spliced into
249
+ * the matcher BEFORE the generic UI/URL rules. Domains are additive
250
+ * — `["banking", "healthcare"]` activates both. Each pack adds
251
+ * ~20 patterns. See `src/transformers/domains/*.ts`.
252
+ *
253
+ * Default empty array — byte-stable behavior for callers that don't
254
+ * opt in.
255
+ */
256
+ domains?: readonly ("banking" | "healthcare" | "insurance")[];
246
257
  }
247
258
  export interface ScaffoldResult {
248
259
  filesWritten: string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vijaypjavvadi/bdd2pw",
3
- "version": "3.3.0",
3
+ "version": "3.4.0",
4
4
  "description": "Scaffold runnable Playwright TypeScript tests from Gherkin .feature files. Detects existing Page Objects, scans live pages via Microsoft Playwright MCP, emits POMs + specs, ready for execution. CLI + HTTP service. Optional governed LLM fallback (Anthropic / OpenAI / Gemini).",
5
5
  "bin": {
6
6
  "bdd2pw": "dist/cli.js"