@vijaypjavvadi/bdd2pw 3.7.1 → 3.8.1

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,73 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  _Nothing yet._
11
11
 
12
+ ## [3.8.0] — 2026-05-24
13
+
14
+ ### Added — four more opt-in domain rule packs
15
+
16
+ bdd2pw now ships seven regulated-industry dialect packs total
17
+ (banking, healthcare, insurance from v3.4.0 + the four new ones).
18
+ Each pack is opt-in via the `domains` config and adds ~20 patterns
19
+ to the matcher.
20
+
21
+ `DomainName` is now the union of all seven; `ScaffoldOptions.domains`
22
+ accepts any combination.
23
+
24
+ #### Retail / e-commerce (`src/transformers/domains/retail.ts`)
25
+
26
+ 20 rules: cart operations (`add to cart`, item count, empty check,
27
+ remove), pricing (`the price is "$X"`, subtotal / total / tax with
28
+ quoted-currency support), checkout (`I complete the checkout`), SKU,
29
+ inventory status (in stock / out of stock / low stock / backordered /
30
+ sold out), shipping address, estimated delivery, promo codes,
31
+ discounts, product name, ratings, review counts, wishlist, order
32
+ status, order number, size/color/variant selection.
33
+
34
+ #### Gov / civic (`src/transformers/domains/gov.ts`)
35
+
36
+ 20 rules: form submission, form ID, eligibility status, case number
37
+ and case status, benefit amounts (monthly / annual), document type,
38
+ file upload, FOIA request status, FOIA response (redacted / released /
39
+ denied), residency status, agency assignment, program enrollment
40
+ (SNAP, Medicaid, etc.), intake date, application status,
41
+ WCAG conformance (A / AA / AAA), appeal status, deadlines, appointment
42
+ scheduling, audit log entries.
43
+
44
+ #### Education (`src/transformers/domains/education.ts`)
45
+
46
+ 20 rules: letter grades (with optional subject context), GPA,
47
+ attendance rate and per-student status (present/absent/tardy/excused),
48
+ course enrollment, assignment status (submitted/graded/late/missing),
49
+ due dates, FERPA-protected records, transcripts (credit counts),
50
+ instructor/teacher/professor, term/semester/quarter, student ID,
51
+ class size, assignment submission, quiz/test/exam scores, course
52
+ availability, school/district, parent/guardian contact, grade
53
+ entry, classification (Freshman/Sophomore/Junior/Senior/Graduate).
54
+
55
+ #### Telecom (`src/transformers/domains/telecom.ts`)
56
+
57
+ 20 rules: subscriber status (active/suspended/cancelled/churned),
58
+ plan tier, monthly price/bill, MSISDN/phone number, port-in status,
59
+ data usage (GB/MB/TB), data allowance, voice usage, SMS count,
60
+ billing amount, service status, signal strength, device IMEI,
61
+ SIM ICCID, call duration, SIM/device/line activation,
62
+ service suspend/cancel/reactivate/resume, roaming on/off, account
63
+ number, line addition.
64
+
65
+ ### Fixtures + tests
66
+
67
+ - `tests/fixtures/v3.8.0/{retail,gov,education,telecom}/input.feature`
68
+ — one fixture per domain, 15-18 representative steps each.
69
+ - `tests/unit/v380Fixtures.test.ts` — three assertions per domain
70
+ (activated, not activated, all-four-together cross-cutting).
71
+
72
+ ### Backward compatibility
73
+
74
+ Default empty `domains` keeps the registry byte-stable. Anyone
75
+ upgrading from 3.7.1 sees no behavior change unless they opt in.
76
+ The existing 3.4.0 packs (banking/healthcare/insurance) are
77
+ unchanged.
78
+
12
79
  ## [3.7.1] — 2026-05-24
13
80
 
14
81
  ### Fixed — TestForge regression report (2026-05-22)
@@ -0,0 +1,15 @@
1
+ /**
2
+ * v3.8.0 — Education domain rule pack (K-12, higher-ed, LMS).
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["education"]`. Covers
5
+ * gradebook, attendance, enrollment, LMS assignments, FERPA,
6
+ * transcripts, instructor assignment, term/semester, student IDs,
7
+ * class size.
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 EDUCATION_RULES: Rule[];
15
+ export {};
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+ /**
3
+ * v3.8.0 — Education domain rule pack (K-12, higher-ed, LMS).
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["education"]`. Covers
6
+ * gradebook, attendance, enrollment, LMS assignments, FERPA,
7
+ * transcripts, instructor assignment, term/semester, student IDs,
8
+ * class size.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.EDUCATION_RULES = void 0;
12
+ const SUBJ = "(?:I|user|User|the user|the User|the student|the teacher|the instructor)";
13
+ exports.EDUCATION_RULES = [
14
+ // EDU:01 — `the student's grade is "B+"` / `the grade in "Algebra" is "A"`
15
+ {
16
+ pattern: /^(?:the )?(?:student'?s? )?grade(?: in ["']([^"']+)["'])? is ["']?([A-F][+-]?)["']?$/i,
17
+ build: (m, step) => {
18
+ const subject = m[1];
19
+ const letter = m[2].toUpperCase();
20
+ if (subject) {
21
+ return {
22
+ step,
23
+ customBody: [
24
+ `const _row = page.locator("[data-testid='grade-row']").filter({ hasText: ${JSON.stringify(subject)} }).first();`,
25
+ `await expect(_row).toContainText(${JSON.stringify(letter)});`,
26
+ ].join("\n"),
27
+ };
28
+ }
29
+ return {
30
+ step,
31
+ customBody: `await expect(page.locator("[data-testid='grade'], [data-testid='current-grade']").first()).toContainText(${JSON.stringify(letter)});`,
32
+ };
33
+ },
34
+ },
35
+ // EDU:02 — `the GPA is "3.8"`
36
+ {
37
+ pattern: /^(?:the )?GPA is ["']?(\d\.\d{1,2})["']?$/i,
38
+ build: (m, step) => ({
39
+ step,
40
+ customBody: [
41
+ `const _gpa = await page.locator("[data-testid='gpa']").first().innerText();`,
42
+ `expect(Number(_gpa.replace(/[^\\d.]/g, ""))).toBe(${m[1]});`,
43
+ ].join("\n"),
44
+ }),
45
+ },
46
+ // EDU:03 — `the attendance rate is "95%"` / `the attendance is "N%"`
47
+ {
48
+ pattern: /^(?:the )?attendance(?: rate)? is ["']?(\d+(?:\.\d+)?%?)["']?$/i,
49
+ build: (m, step) => ({
50
+ step,
51
+ customBody: `await expect(page.locator("[data-testid='attendance-rate']").first()).toContainText(${JSON.stringify(m[1])});`,
52
+ }),
53
+ },
54
+ // EDU:04 — `the student is "present"` / `"absent"` / `"tardy"` / `"excused"`
55
+ {
56
+ pattern: /^(?:the )?student is ["']?(present|absent|tardy|excused|late)["']?$/i,
57
+ build: (m, step) => ({
58
+ step,
59
+ customBody: `await expect(page.locator("[data-testid='attendance-status']").first()).toContainText(${JSON.stringify(m[1])});`,
60
+ }),
61
+ },
62
+ // EDU:05 — `I enroll in course "Algebra II"` / `I enrol in "X"`
63
+ {
64
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?enroll?(?:s)? in (?:course |class )?["']([^"']+)["']$`, "i"),
65
+ build: (m, step) => ({
66
+ step,
67
+ customBody: [
68
+ `const _courseRow = page.locator("[data-testid='course-row']").filter({ hasText: ${JSON.stringify(m[1])} }).first();`,
69
+ `await _courseRow.getByRole("button", { name: /enrol+/i }).click();`,
70
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
71
+ ].join("\n"),
72
+ }),
73
+ },
74
+ // EDU:06 — `the assignment is "submitted"` / `"graded"` / `"late"` / `"missing"`
75
+ {
76
+ pattern: /^(?:the )?assignment is ["']?(submitted|graded|late|missing|in progress|pending)["']?$/i,
77
+ build: (m, step) => ({
78
+ step,
79
+ customBody: `await expect(page.locator("[data-testid='assignment-status']").first()).toContainText(${JSON.stringify(m[1])});`,
80
+ }),
81
+ },
82
+ // EDU:07 — `the assignment due date is "2026-06-15"`
83
+ {
84
+ pattern: /^(?:the )?(?:assignment )?due date is ["']?(\d{4}-\d{2}-\d{2}|\d{1,2}\/\d{1,2}\/\d{2,4})["']?$/i,
85
+ build: (m, step) => ({
86
+ step,
87
+ customBody: `await expect(page.locator("[data-testid='due-date']").first()).toContainText(${JSON.stringify(m[1])});`,
88
+ }),
89
+ },
90
+ // EDU:08 — `the record is FERPA-protected` / `the data is FERPA-compliant`
91
+ {
92
+ pattern: /^(?:the )?(?:record|data|file) is (not )?FERPA[- ](?:protected|compliant)$/i,
93
+ build: (m, step) => {
94
+ const matcher = m[1] ? "not.toBeVisible" : "toBeVisible";
95
+ return {
96
+ step,
97
+ customBody: `await expect(page.locator("[data-testid='ferpa-indicator'], [aria-label='FERPA protected']").first()).${matcher}();`,
98
+ };
99
+ },
100
+ },
101
+ // EDU:09 — `the transcript shows N credits` / `the student has N credits`
102
+ {
103
+ pattern: /^(?:the )?(?:transcript shows|student has) (\d+(?:\.\d+)?) credits?$/i,
104
+ build: (m, step) => ({
105
+ step,
106
+ customBody: [
107
+ `const _credits = await page.locator("[data-testid='credits-earned']").first().innerText();`,
108
+ `expect(Number(_credits.replace(/[^\\d.]/g, ""))).toBe(${m[1]});`,
109
+ ].join("\n"),
110
+ }),
111
+ },
112
+ // EDU:10 — `the instructor is "Ms. Smith"` / `the teacher is "..."`
113
+ {
114
+ pattern: /^(?:the )?(?:instructor|teacher|professor) is ["']([^"']+)["']$/i,
115
+ build: (m, step) => ({
116
+ step,
117
+ customBody: `await expect(page.locator("[data-testid='instructor-name'], [data-testid='teacher-name']").first()).toContainText(${JSON.stringify(m[1])});`,
118
+ }),
119
+ },
120
+ // EDU:11 — `the term is "Fall 2026"` / `the semester is "Spring 2027"`
121
+ {
122
+ pattern: /^(?:the )?(?:term|semester|quarter) is ["']([^"']+)["']$/i,
123
+ build: (m, step) => ({
124
+ step,
125
+ customBody: `await expect(page.locator("[data-testid='term'], [data-testid='semester']").first()).toContainText(${JSON.stringify(m[1])});`,
126
+ }),
127
+ },
128
+ // EDU:12 — `the student ID is "ST-12345"`
129
+ {
130
+ pattern: /^(?:the )?student ID is ["']?([A-Z0-9-]+)["']?$/i,
131
+ build: (m, step) => ({
132
+ step,
133
+ customBody: `await expect(page.locator("[data-testid='student-id']").first()).toContainText(${JSON.stringify(m[1])});`,
134
+ }),
135
+ },
136
+ // EDU:13 — `the class size is N` / `the class has N students`
137
+ {
138
+ pattern: /^(?:the )?class (?:size is|has) (\d+)(?: students?)?$/i,
139
+ build: (m, step) => ({
140
+ step,
141
+ customBody: [
142
+ `const _classCount = await page.locator("[data-testid='enrolled-student']").count();`,
143
+ `expect(_classCount).toBe(${m[1]});`,
144
+ ].join("\n"),
145
+ }),
146
+ },
147
+ // EDU:14 — `I submit the assignment` / `I submit assignment "X"`
148
+ {
149
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?submit(?:s)? (?:the )?assignment(?: ["']([^"']+)["'])?$`, "i"),
150
+ build: (m, step) => {
151
+ const name = m[1];
152
+ if (name) {
153
+ return {
154
+ step,
155
+ customBody: [
156
+ `const _row = page.locator("[data-testid='assignment-row']").filter({ hasText: ${JSON.stringify(name)} }).first();`,
157
+ `await _row.getByRole("button", { name: /submit/i }).click();`,
158
+ ].join("\n"),
159
+ };
160
+ }
161
+ return {
162
+ step,
163
+ customBody: `await page.getByRole("button", { name: /submit.*assignment/i }).first().click();`,
164
+ };
165
+ },
166
+ },
167
+ // EDU:15 — `the quiz score is "85%"` / `"85/100"`
168
+ {
169
+ pattern: /^(?:the )?(?:quiz|test|exam) score is ["']?(\d+(?:\.\d+)?(?:%|\/\d+)?)["']?$/i,
170
+ build: (m, step) => ({
171
+ step,
172
+ customBody: `await expect(page.locator("[data-testid='quiz-score'], [data-testid='test-score']").first()).toContainText(${JSON.stringify(m[1])});`,
173
+ }),
174
+ },
175
+ // EDU:16 — `the course is "available"` / `"full"` / `"waitlisted"`
176
+ {
177
+ pattern: /^(?:the )?course is ["']?(available|full|closed|waitlisted|enroll(?:ed|ing))["']?$/i,
178
+ build: (m, step) => ({
179
+ step,
180
+ customBody: `await expect(page.locator("[data-testid='course-status']").first()).toContainText(${JSON.stringify(m[1])});`,
181
+ }),
182
+ },
183
+ // EDU:17 — `the school is "Lincoln High"` / `the district is "..."`
184
+ {
185
+ pattern: /^(?:the )?(school|district|campus) is ["']([^"']+)["']$/i,
186
+ build: (m, step) => {
187
+ const kind = m[1].toLowerCase();
188
+ return {
189
+ step,
190
+ customBody: `await expect(page.locator(\`[data-testid='${kind}-name']\`).first()).toContainText(${JSON.stringify(m[2])});`,
191
+ };
192
+ },
193
+ },
194
+ // EDU:18 — `the parent is "John Doe"` / `the guardian is "..."`
195
+ {
196
+ pattern: /^(?:the )?(?:parent|guardian|emergency contact) is ["']([^"']+)["']$/i,
197
+ build: (m, step) => ({
198
+ step,
199
+ customBody: `await expect(page.locator("[data-testid='guardian-name']").first()).toContainText(${JSON.stringify(m[1])});`,
200
+ }),
201
+ },
202
+ // EDU:19 — `I add a grade of "A" for "Quiz 1"`
203
+ {
204
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?(?:add|enter|record) (?:a )?grade of ["']?([A-F][+-]?)["']? for ["']([^"']+)["']$`, "i"),
205
+ build: (m, step) => ({
206
+ step,
207
+ customBody: [
208
+ `const _gradeCell = page.locator("[data-testid='grade-cell']").filter({ hasText: ${JSON.stringify(m[2])} }).first();`,
209
+ `await _gradeCell.fill(${JSON.stringify(m[1].toUpperCase())});`,
210
+ `await page.getByRole("button", { name: /save/i }).click();`,
211
+ ].join("\n"),
212
+ }),
213
+ },
214
+ // EDU:20 — `the student's classification is "Freshman"` / `"Senior"` / `"Graduate"`
215
+ {
216
+ pattern: /^(?:the )?(?:student'?s? )?(?:classification|standing|grade level) is ["']([^"']+)["']$/i,
217
+ build: (m, step) => ({
218
+ step,
219
+ customBody: `await expect(page.locator("[data-testid='classification'], [data-testid='standing']").first()).toContainText(${JSON.stringify(m[1])});`,
220
+ }),
221
+ },
222
+ ];
223
+ //# sourceMappingURL=education.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"education.js","sourceRoot":"","sources":["../../../src/transformers/domains/education.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * v3.8.0 — Government / civic services domain rule pack.
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["gov"]`. Covers common
5
+ * citizen-facing dialects: forms, eligibility, case management,
6
+ * benefit amounts, identity verification, FOIA, residency,
7
+ * agency assignment, intake, accessibility.
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 GOV_RULES: Rule[];
15
+ export {};
@@ -0,0 +1,196 @@
1
+ "use strict";
2
+ /**
3
+ * v3.8.0 — Government / civic services domain rule pack.
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["gov"]`. Covers common
6
+ * citizen-facing dialects: forms, eligibility, case management,
7
+ * benefit amounts, identity verification, FOIA, residency,
8
+ * agency assignment, intake, accessibility.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.GOV_RULES = void 0;
12
+ const SUBJ = "(?:I|user|User|the user|the User|the applicant|the citizen|the caseworker)";
13
+ const MONEY = `\\$?["']?\\$?([\\d,]+(?:\\.\\d{1,2})?)["']?`;
14
+ exports.GOV_RULES = [
15
+ // GOV:01 — `I submit form "DS-11"` / `I submit the "Application X" form`
16
+ {
17
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?submit(?:s)? (?:the )?(?:form ["']([^"']+)["']|["']([^"']+)["'] form)$`, "i"),
18
+ build: (m, step) => {
19
+ const formName = m[1] ?? m[2];
20
+ return {
21
+ step,
22
+ customBody: [
23
+ `// Submit the named form; use the form's accessible name as the click target.`,
24
+ `await page.getByRole("button", { name: new RegExp(\`submit.*${formName.replace(/[\\W]/g, ".?")}\`, "i") }).first().click();`,
25
+ ].join("\n"),
26
+ };
27
+ },
28
+ },
29
+ // GOV:02 — `the form ID is "..."`
30
+ {
31
+ pattern: /^(?:the )?form(?: ID| number)? is ["']?([A-Z0-9-]+)["']?$/i,
32
+ build: (m, step) => ({
33
+ step,
34
+ customBody: `await expect(page.locator("[data-testid='form-id'], [aria-label='Form ID']").first()).toContainText(${JSON.stringify(m[1])});`,
35
+ }),
36
+ },
37
+ // GOV:03 — `the applicant is "eligible"` / `"ineligible"` / `"pending review"`
38
+ {
39
+ pattern: /^(?:the )?(?:applicant|claimant|household) is ["']([^"']+)["']$/i,
40
+ build: (m, step) => ({
41
+ step,
42
+ customBody: `await expect(page.locator("[data-testid='eligibility-status']").first()).toContainText(${JSON.stringify(m[1])});`,
43
+ }),
44
+ },
45
+ // GOV:04 — `the case number is "..."` / `the case ID is "..."`
46
+ {
47
+ pattern: /^(?:the )?case(?: number| ID)? is ["']?([A-Z0-9-]+)["']?$/i,
48
+ build: (m, step) => ({
49
+ step,
50
+ customBody: `await expect(page.locator("[data-testid='case-number'], [data-testid='case-id']").first()).toContainText(${JSON.stringify(m[1])});`,
51
+ }),
52
+ },
53
+ // GOV:05 — `the case status is "open"` / `"closed"` / `"under review"`
54
+ {
55
+ pattern: /^(?:the )?case status is ["']([^"']+)["']$/i,
56
+ build: (m, step) => ({
57
+ step,
58
+ customBody: `await expect(page.locator("[data-testid='case-status']").first()).toContainText(${JSON.stringify(m[1])});`,
59
+ }),
60
+ },
61
+ // GOV:06 — `the benefit amount is "$X"` / `the monthly benefit is "$X"`
62
+ {
63
+ pattern: new RegExp(`^(?:the )?(?:monthly |annual )?benefit(?: amount)? is ${MONEY}$`, "i"),
64
+ build: (m, step) => ({
65
+ step,
66
+ customBody: `await expect(page.locator("[data-testid='benefit-amount']").first()).toContainText(${JSON.stringify(m[1])});`,
67
+ }),
68
+ },
69
+ // GOV:07 — `the document type is "passport"` / `"driver's license"` / `"birth certificate"`
70
+ {
71
+ pattern: /^(?:the )?(?:document|ID) type is ["']([^"']+)["']$/i,
72
+ build: (m, step) => ({
73
+ step,
74
+ customBody: `await expect(page.locator("[data-testid='document-type'], [data-testid='id-type']").first()).toContainText(${JSON.stringify(m[1])});`,
75
+ }),
76
+ },
77
+ // GOV:08 — `I upload "passport.pdf"` (file upload)
78
+ {
79
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?upload(?:s)? ["']([^"']+)["']$`, "i"),
80
+ build: (m, step) => ({
81
+ step,
82
+ customBody: [
83
+ `await page.setInputFiles(`,
84
+ ` "[data-testid='file-input'], input[type='file']",`,
85
+ ` ${JSON.stringify(m[1])},`,
86
+ `);`,
87
+ ].join("\n"),
88
+ }),
89
+ },
90
+ // GOV:09 — `the FOIA request status is "..."`
91
+ {
92
+ pattern: /^(?:the )?FOIA(?: request)? status is ["']([^"']+)["']$/i,
93
+ build: (m, step) => ({
94
+ step,
95
+ customBody: `await expect(page.locator("[data-testid='foia-status']").first()).toContainText(${JSON.stringify(m[1])});`,
96
+ }),
97
+ },
98
+ // GOV:10 — `the response is "redacted"` / `"released"` / `"denied"`
99
+ {
100
+ pattern: /^(?:the )?(?:FOIA )?response is ["']([^"']+)["']$/i,
101
+ build: (m, step) => ({
102
+ step,
103
+ customBody: `await expect(page.locator("[data-testid='foia-response']").first()).toContainText(${JSON.stringify(m[1])});`,
104
+ }),
105
+ },
106
+ // GOV:11 — `the residency status is "permanent resident"` / `"citizen"` / `"visa holder"`
107
+ {
108
+ pattern: /^(?:the )?residency status is ["']([^"']+)["']$/i,
109
+ build: (m, step) => ({
110
+ step,
111
+ customBody: `await expect(page.locator("[data-testid='residency-status']").first()).toContainText(${JSON.stringify(m[1])});`,
112
+ }),
113
+ },
114
+ // GOV:12 — `the agency is "..."` / `the assigned agency is "..."`
115
+ {
116
+ pattern: /^(?:the )?(?:assigned )?agency is ["']([^"']+)["']$/i,
117
+ build: (m, step) => ({
118
+ step,
119
+ customBody: `await expect(page.locator("[data-testid='agency-name']").first()).toContainText(${JSON.stringify(m[1])});`,
120
+ }),
121
+ },
122
+ // GOV:13 — `the program is "SNAP"` / `"Medicaid"` / `"unemployment"`
123
+ {
124
+ pattern: /^(?:the )?(?:benefit )?program is ["']([^"']+)["']$/i,
125
+ build: (m, step) => ({
126
+ step,
127
+ customBody: `await expect(page.locator("[data-testid='program-name']").first()).toContainText(${JSON.stringify(m[1])});`,
128
+ }),
129
+ },
130
+ // GOV:14 — `the intake date is "2026-01-15"`
131
+ {
132
+ pattern: /^(?:the )?(?:intake|filing|application) date is ["']?(\d{4}-\d{2}-\d{2}|\d{1,2}\/\d{1,2}\/\d{2,4})["']?$/i,
133
+ build: (m, step) => ({
134
+ step,
135
+ customBody: `await expect(page.locator("[data-testid='intake-date']").first()).toContainText(${JSON.stringify(m[1])});`,
136
+ }),
137
+ },
138
+ // GOV:15 — `the application is "approved"` / `"denied"` / `"pending"` / `"appealed"`
139
+ {
140
+ pattern: /^(?:the )?application is ["']([^"']+)["']$/i,
141
+ build: (m, step) => ({
142
+ step,
143
+ customBody: `await expect(page.locator("[data-testid='application-status']").first()).toContainText(${JSON.stringify(m[1])});`,
144
+ }),
145
+ },
146
+ // GOV:16 — `the page meets WCAG "AA"` / `"AAA"`
147
+ {
148
+ pattern: /^(?:the )?(?:page|form|site) meets WCAG ["']?(A|AA|AAA)["']?(?:\s+compliance)?$/i,
149
+ build: (m, step) => ({
150
+ step,
151
+ customBody: [
152
+ `// Accessibility marker — checks the conformance level reported`,
153
+ `// by the audit panel or aria-live attestation. Real WCAG audits`,
154
+ `// happen offline; this just confirms the UI advertises the claim.`,
155
+ `await expect(page.locator("[data-testid='wcag-conformance'], [aria-label='WCAG conformance']").first()).toContainText(${JSON.stringify(m[1])});`,
156
+ ].join("\n"),
157
+ }),
158
+ },
159
+ // GOV:17 — `the appeal is "filed"` / `"denied"` / `"granted"`
160
+ {
161
+ pattern: /^(?:the )?appeal is ["']([^"']+)["']$/i,
162
+ build: (m, step) => ({
163
+ step,
164
+ customBody: `await expect(page.locator("[data-testid='appeal-status']").first()).toContainText(${JSON.stringify(m[1])});`,
165
+ }),
166
+ },
167
+ // GOV:18 — `the deadline is "2026-09-30"`
168
+ {
169
+ pattern: /^(?:the )?deadline is ["']?(\d{4}-\d{2}-\d{2}|\d{1,2}\/\d{1,2}\/\d{2,4})["']?$/i,
170
+ build: (m, step) => ({
171
+ step,
172
+ customBody: `await expect(page.locator("[data-testid='deadline']").first()).toContainText(${JSON.stringify(m[1])});`,
173
+ }),
174
+ },
175
+ // GOV:19 — `I schedule an appointment for "2026-06-10"`
176
+ {
177
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?schedule(?:s)? (?:an? )?appointment (?:for|on) ["']?(\\d{4}-\\d{2}-\\d{2})["']?$`, "i"),
178
+ build: (m, step) => ({
179
+ step,
180
+ customBody: [
181
+ `await page.getByRole("button", { name: /schedule.*appointment/i }).click();`,
182
+ `await page.getByLabel(/appointment date/i).fill(${JSON.stringify(m[1])});`,
183
+ `await page.getByRole("button", { name: /confirm|submit/i }).click();`,
184
+ ].join("\n"),
185
+ }),
186
+ },
187
+ // GOV:20 — `the audit log records a "view-case" event`
188
+ {
189
+ pattern: /^(?:the )?audit log records (?:a |an )?["']([^"']+)["'] event(?: for the case)?$/i,
190
+ build: (m, step) => ({
191
+ step,
192
+ customBody: `await expect(page.locator("[data-testid='audit-log']")).toContainText(${JSON.stringify(m[1])});`,
193
+ }),
194
+ },
195
+ ];
196
+ //# sourceMappingURL=gov.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gov.js","sourceRoot":"","sources":["../../../src/transformers/domains/gov.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAcH,MAAM,IAAI,GACR,4EAA4E,CAAC;AAC/E,MAAM,KAAK,GAAG,6CAA6C,CAAC;AAE/C,QAAA,SAAS,GAAW;IAC/B,yEAAyE;IACzE;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,OAAO,IAAI,8EAA8E,EACzF,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YACjB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO;gBACL,IAAI;gBACJ,UAAU,EAAE;oBACV,+EAA+E;oBAC/E,+DAA+D,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,8BAA8B;iBAC9H,CAAC,IAAI,CAAC,IAAI,CAAC;aACb,CAAC;QACJ,CAAC;KACF;IAED,kCAAkC;IAClC;QACE,OAAO,EAAE,4DAA4D;QACrE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,uGAAuG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC5I,CAAC;KACH;IAED,+EAA+E;IAC/E;QACE,OAAO,EACL,kEAAkE;QACpE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,0FAA0F,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC/H,CAAC;KACH;IAED,+DAA+D;IAC/D;QACE,OAAO,EAAE,4DAA4D;QACrE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,4GAA4G,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACjJ,CAAC;KACH;IAED,uEAAuE;IACvE;QACE,OAAO,EAAE,6CAA6C;QACtD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,mFAAmF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACxH,CAAC;KACH;IAED,wEAAwE;IACxE;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,yDAAyD,KAAK,GAAG,EACjE,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,sFAAsF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC3H,CAAC;KACH;IAED,4FAA4F;IAC5F;QACE,OAAO,EACL,sDAAsD;QACxD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,8GAA8G,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACnJ,CAAC;KACH;IAED,mDAAmD;IACnD;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,OAAO,IAAI,sCAAsC,EACjD,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE;gBACV,2BAA2B;gBAC3B,qDAAqD;gBACrD,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;gBAC5B,IAAI;aACL,CAAC,IAAI,CAAC,IAAI,CAAC;SACb,CAAC;KACH;IAED,8CAA8C;IAC9C;QACE,OAAO,EAAE,0DAA0D;QACnE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,mFAAmF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACxH,CAAC;KACH;IAED,oEAAoE;IACpE;QACE,OAAO,EACL,oDAAoD;QACtD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,qFAAqF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC1H,CAAC;KACH;IAED,0FAA0F;IAC1F;QACE,OAAO,EAAE,kDAAkD;QAC3D,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,wFAAwF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC7H,CAAC;KACH;IAED,kEAAkE;IAClE;QACE,OAAO,EACL,sDAAsD;QACxD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,mFAAmF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACxH,CAAC;KACH;IAED,qEAAqE;IACrE;QACE,OAAO,EACL,sDAAsD;QACxD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,oFAAoF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACzH,CAAC;KACH;IAED,6CAA6C;IAC7C;QACE,OAAO,EACL,2GAA2G;QAC7G,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,mFAAmF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACxH,CAAC;KACH;IAED,qFAAqF;IACrF;QACE,OAAO,EACL,6CAA6C;QAC/C,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,0FAA0F,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC/H,CAAC;KACH;IAED,gDAAgD;IAChD;QACE,OAAO,EACL,kFAAkF;QACpF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE;gBACV,iEAAiE;gBACjE,kEAAkE;gBAClE,oEAAoE;gBACpE,yHAAyH,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;aAClJ,CAAC,IAAI,CAAC,IAAI,CAAC;SACb,CAAC;KACH;IAED,8DAA8D;IAC9D;QACE,OAAO,EAAE,wCAAwC;QACjD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,qFAAqF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC1H,CAAC;KACH;IAED,0CAA0C;IAC1C;QACE,OAAO,EACL,iFAAiF;QACnF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,gFAAgF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACrH,CAAC;KACH;IAED,wDAAwD;IACxD;QACE,OAAO,EAAE,IAAI,MAAM,CACjB,OAAO,IAAI,wFAAwF,EACnG,GAAG,CACJ;QACD,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE;gBACV,6EAA6E;gBAC7E,mDAAmD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC3E,sEAAsE;aACvE,CAAC,IAAI,CAAC,IAAI,CAAC;SACb,CAAC;KACH;IAED,uDAAuD;IACvD;QACE,OAAO,EACL,mFAAmF;QACrF,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI;YACJ,UAAU,EAAE,yEAAyE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC9G,CAAC;KACH;CACF,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * v3.8.0 — Retail / e-commerce domain rule pack.
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["retail"]`. Covers the
5
+ * common shopping-flow dialects: cart, pricing, checkout, SKUs,
6
+ * inventory, shipping, promo codes, products, reviews, wishlist,
7
+ * order status.
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 RETAIL_RULES: Rule[];
15
+ export {};
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ /**
3
+ * v3.8.0 — Retail / e-commerce domain rule pack.
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["retail"]`. Covers the
6
+ * common shopping-flow dialects: cart, pricing, checkout, SKUs,
7
+ * inventory, shipping, promo codes, products, reviews, wishlist,
8
+ * order status.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.RETAIL_RULES = void 0;
12
+ const SUBJ = "(?:I|user|User|the user|the User|the customer|the shopper)";
13
+ const MONEY = `\\$?["']?\\$?([\\d,]+(?:\\.\\d{1,2})?)["']?`;
14
+ exports.RETAIL_RULES = [
15
+ // RETAIL:01 — `I add "Widget" to the cart`
16
+ {
17
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?add(?:s)? ["']([^"']+)["'] to (?:the |my )?cart$`, "i"),
18
+ build: (m, step) => ({
19
+ step,
20
+ customBody: [
21
+ `await page.getByRole("button", { name: /add.*to.*cart/i }).filter({ has: page.locator(\`text=\${${JSON.stringify(m[1])}}\`) }).first().click();`,
22
+ `// Some sites require a click on the product card first; the .filter chains it through the product context.`,
23
+ ].join("\n"),
24
+ }),
25
+ },
26
+ // RETAIL:02 — `the cart has N items`
27
+ {
28
+ pattern: /^(?:the )?cart has (\d+) items?$/i,
29
+ build: (m, step) => ({
30
+ step,
31
+ customBody: [
32
+ `const _itemCount = await page.locator("[data-testid='cart-item'], .cart-item").count();`,
33
+ `expect(_itemCount).toBe(${m[1]});`,
34
+ ].join("\n"),
35
+ }),
36
+ },
37
+ // RETAIL:03 — `the cart is empty`
38
+ {
39
+ pattern: /^(?:the )?cart is (not )?empty$/i,
40
+ build: (m, step) => {
41
+ const matcher = m[1] ? "toBeGreaterThan" : "toBe";
42
+ const expected = m[1] ? "0" : "0";
43
+ return {
44
+ step,
45
+ customBody: [
46
+ `const _cartCount = await page.locator("[data-testid='cart-item'], .cart-item").count();`,
47
+ `expect(_cartCount).${matcher}(${expected});`,
48
+ ].join("\n"),
49
+ };
50
+ },
51
+ },
52
+ // RETAIL:04 — `the price is "$19.99"`
53
+ {
54
+ pattern: new RegExp(`^(?:the )?price is ${MONEY}$`, "i"),
55
+ build: (m, step) => ({
56
+ step,
57
+ customBody: `await expect(page.locator("[data-testid='price'], .price, [itemprop='price']").first()).toContainText(${JSON.stringify(m[1])});`,
58
+ }),
59
+ },
60
+ // RETAIL:05 — `the subtotal is "$X"` / `the total is "$X"` / `the tax is "$X"`
61
+ {
62
+ pattern: new RegExp(`^(?:the )?(subtotal|total|tax|order total|grand total) is ${MONEY}$`, "i"),
63
+ build: (m, step) => {
64
+ const kind = m[1].toLowerCase().replace(/\s+/g, "-");
65
+ return {
66
+ step,
67
+ customBody: `await expect(page.locator(\`[data-testid='\${${JSON.stringify(kind)}}'], [data-testid='${kind}']\`).first()).toContainText(${JSON.stringify(m[2])});`,
68
+ };
69
+ },
70
+ },
71
+ // RETAIL:06 — `I complete the checkout`
72
+ {
73
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?(?:complete(?:s)?|place(?:s)?|submit(?:s)?) (?:the )?(?:checkout|order)$`, "i"),
74
+ build: (_m, step) => ({
75
+ step,
76
+ customBody: [
77
+ `await page.getByRole("button", { name: /(?:place|complete|submit).*order|checkout/i }).first().click();`,
78
+ ].join("\n"),
79
+ }),
80
+ },
81
+ // RETAIL:07 — `the SKU is "ABC-12345"`
82
+ {
83
+ pattern: /^(?:the )?SKU is ["']?([A-Z0-9-]+)["']?$/i,
84
+ build: (m, step) => ({
85
+ step,
86
+ customBody: `await expect(page.locator("[data-testid='sku'], [data-sku]").first()).toContainText(${JSON.stringify(m[1])});`,
87
+ }),
88
+ },
89
+ // RETAIL:08 — `the item is "in stock"` / `"out of stock"` / `"low stock"`
90
+ {
91
+ pattern: /^(?:the )?(?:item|product) is ["']?(in stock|out of stock|low stock|backordered|sold out)["']?$/i,
92
+ build: (m, step) => ({
93
+ step,
94
+ customBody: `await expect(page.locator("[data-testid='stock-status'], .stock-status").first()).toContainText(${JSON.stringify(m[1])});`,
95
+ }),
96
+ },
97
+ // RETAIL:09 — `the shipping address is "..."`
98
+ {
99
+ pattern: /^(?:the )?shipping address is ["']([^"']+)["']$/i,
100
+ build: (m, step) => ({
101
+ step,
102
+ customBody: `await expect(page.locator("[data-testid='shipping-address']").first()).toContainText(${JSON.stringify(m[1])});`,
103
+ }),
104
+ },
105
+ // RETAIL:10 — `the estimated delivery is "2026-06-01"` / "2-3 business days"
106
+ {
107
+ pattern: /^(?:the )?(?:estimated )?delivery(?: date)? is ["']([^"']+)["']$/i,
108
+ build: (m, step) => ({
109
+ step,
110
+ customBody: `await expect(page.locator("[data-testid='estimated-delivery'], .delivery-date").first()).toContainText(${JSON.stringify(m[1])});`,
111
+ }),
112
+ },
113
+ // RETAIL:11 — `I apply promo code "SAVE10"`
114
+ {
115
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?(?:apply(?:ies)?|enter(?:s)?) (?:promo|discount|coupon) code ["']([^"']+)["']$`, "i"),
116
+ build: (m, step) => ({
117
+ step,
118
+ customBody: [
119
+ `await page.getByLabel(/promo|discount|coupon/i).fill(${JSON.stringify(m[1])});`,
120
+ `await page.getByRole("button", { name: /apply/i }).click();`,
121
+ ].join("\n"),
122
+ }),
123
+ },
124
+ // RETAIL:12 — `the discount is "$10"` / "10%"
125
+ {
126
+ pattern: /^(?:the )?discount is ["']?\$?([\d.]+%?)["']?$/i,
127
+ build: (m, step) => ({
128
+ step,
129
+ customBody: `await expect(page.locator("[data-testid='discount']").first()).toContainText(${JSON.stringify(m[1])});`,
130
+ }),
131
+ },
132
+ // RETAIL:13 — `the product name is "X"` / `the product's name is "X"` / `the product is "X"`
133
+ {
134
+ pattern: /^(?:the )?product(?:(?:'s)?\s+name)? is ["']([^"']+)["']$/i,
135
+ build: (m, step) => ({
136
+ step,
137
+ customBody: `await expect(page.locator("[data-testid='product-name'], h1[itemprop='name']").first()).toContainText(${JSON.stringify(m[1])});`,
138
+ }),
139
+ },
140
+ // RETAIL:14 — `the rating is N stars`
141
+ {
142
+ pattern: /^(?:the )?rating is (\d(?:\.\d)?)(?:\s*stars?)?$/i,
143
+ build: (m, step) => ({
144
+ step,
145
+ customBody: [
146
+ `const _rating = await page.locator("[data-testid='rating'], [itemprop='ratingValue']").first().innerText();`,
147
+ `expect(Number(_rating.replace(/[^\\d.]/g, ""))).toBe(${m[1]});`,
148
+ ].join("\n"),
149
+ }),
150
+ },
151
+ // RETAIL:15 — `there are N reviews`
152
+ {
153
+ pattern: /^there (?:are|is) (\d+) reviews?$/i,
154
+ build: (m, step) => ({
155
+ step,
156
+ customBody: [
157
+ `const _reviewCount = await page.locator("[data-testid='review'], .review-item").count();`,
158
+ `expect(_reviewCount).toBe(${m[1]});`,
159
+ ].join("\n"),
160
+ }),
161
+ },
162
+ // RETAIL:16 — `I save "X" to my wishlist`
163
+ {
164
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?(?:save(?:s)?|add(?:s)?) ["']([^"']+)["'] to (?:my |the )?wishlist$`, "i"),
165
+ build: (m, step) => ({
166
+ step,
167
+ customBody: [
168
+ `// Find the product card by name, then click its wishlist toggle.`,
169
+ `const _card = page.locator("[data-testid='product-card']").filter({ hasText: ${JSON.stringify(m[1])} }).first();`,
170
+ `await _card.getByRole("button", { name: /wishlist|favorite|save/i }).click();`,
171
+ ].join("\n"),
172
+ }),
173
+ },
174
+ // RETAIL:17 — `the order status is "shipped"` / `"delivered"` / `"pending"` / `"cancelled"`
175
+ {
176
+ pattern: /^(?:the )?order status is ["']([^"']+)["']$/i,
177
+ build: (m, step) => ({
178
+ step,
179
+ customBody: `await expect(page.locator("[data-testid='order-status']").first()).toContainText(${JSON.stringify(m[1])});`,
180
+ }),
181
+ },
182
+ // RETAIL:18 — `the order number is "..."`
183
+ {
184
+ pattern: /^(?:the )?order(?: number| ID) is ["']?([A-Z0-9-]+)["']?$/i,
185
+ build: (m, step) => ({
186
+ step,
187
+ customBody: `await expect(page.locator("[data-testid='order-number']").first()).toContainText(${JSON.stringify(m[1])});`,
188
+ }),
189
+ },
190
+ // RETAIL:19 — `I select "Medium" size` / `I select "Red" color`
191
+ {
192
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?select(?:s)? ["']([^"']+)["'] (size|color|colour|variant)$`, "i"),
193
+ build: (m, step) => {
194
+ const attr = m[2].toLowerCase();
195
+ return {
196
+ step,
197
+ customBody: `await page.getByRole("button", { name: new RegExp(${JSON.stringify(m[1])}, "i") }).filter({ has: page.locator(\`[data-${attr}]\`) }).first().click();`,
198
+ };
199
+ },
200
+ },
201
+ // RETAIL:20 — `I remove "X" from the cart`
202
+ {
203
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?remove(?:s)? ["']([^"']+)["'] from (?:the |my )?cart$`, "i"),
204
+ build: (m, step) => ({
205
+ step,
206
+ customBody: [
207
+ `const _row = page.locator("[data-testid='cart-item']").filter({ hasText: ${JSON.stringify(m[1])} }).first();`,
208
+ `await _row.getByRole("button", { name: /remove|delete/i }).click();`,
209
+ ].join("\n"),
210
+ }),
211
+ },
212
+ ];
213
+ //# sourceMappingURL=retail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retail.js","sourceRoot":"","sources":["../../../src/transformers/domains/retail.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * v3.8.0 — Telecom / mobile-carrier domain rule pack.
3
+ *
4
+ * Opt-in via `ScaffoldOptions.domains: ["telecom"]`. Covers
5
+ * subscriber accounts, plan tiers, MSISDN, port-in, data/voice/SMS
6
+ * usage, billing, service status, signal strength, device IMEI,
7
+ * call/SMS counts.
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 TELECOM_RULES: Rule[];
15
+ export {};
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ /**
3
+ * v3.8.0 — Telecom / mobile-carrier domain rule pack.
4
+ *
5
+ * Opt-in via `ScaffoldOptions.domains: ["telecom"]`. Covers
6
+ * subscriber accounts, plan tiers, MSISDN, port-in, data/voice/SMS
7
+ * usage, billing, service status, signal strength, device IMEI,
8
+ * call/SMS counts.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.TELECOM_RULES = void 0;
12
+ const SUBJ = "(?:I|user|User|the user|the User|the subscriber|the customer|the agent)";
13
+ const MONEY = `\\$?["']?\\$?([\\d,]+(?:\\.\\d{1,2})?)["']?`;
14
+ exports.TELECOM_RULES = [
15
+ // TEL:01 — `the subscriber is "active"` / `"suspended"` / `"cancelled"` / `"churned"`
16
+ {
17
+ pattern: /^(?:the )?subscriber is ["']?(active|suspended|cancell?ed|churned|pending|disconnected)["']?$/i,
18
+ build: (m, step) => ({
19
+ step,
20
+ customBody: `await expect(page.locator("[data-testid='subscriber-status']").first()).toContainText(${JSON.stringify(m[1])});`,
21
+ }),
22
+ },
23
+ // TEL:02 — `the plan tier is "Premium"` / `"Basic"` / `"Pro"`
24
+ {
25
+ pattern: /^(?:the )?plan(?: tier)? is ["']([^"']+)["']$/i,
26
+ build: (m, step) => ({
27
+ step,
28
+ customBody: `await expect(page.locator("[data-testid='plan-tier']").first()).toContainText(${JSON.stringify(m[1])});`,
29
+ }),
30
+ },
31
+ // TEL:03 — `the monthly price is "$50"` / `the monthly bill is "$N"`
32
+ {
33
+ pattern: new RegExp(`^(?:the )?(?:monthly )?(?:price|bill|rate) is ${MONEY}$`, "i"),
34
+ build: (m, step) => ({
35
+ step,
36
+ customBody: `await expect(page.locator("[data-testid='monthly-price'], [data-testid='monthly-bill']").first()).toContainText(${JSON.stringify(m[1])});`,
37
+ }),
38
+ },
39
+ // TEL:04 — `the MSISDN is "..."` / `the phone number is "..."`
40
+ {
41
+ pattern: /^(?:the )?(?:MSISDN|phone number|mobile number) is ["']?(\+?[\d -]{7,20})["']?$/i,
42
+ build: (m, step) => ({
43
+ step,
44
+ customBody: `await expect(page.locator("[data-testid='msisdn'], [data-testid='phone-number']").first()).toContainText(${JSON.stringify(m[1])});`,
45
+ }),
46
+ },
47
+ // TEL:05 — `the port-in is "in progress"` / `"complete"` / `"failed"`
48
+ {
49
+ pattern: /^(?:the )?(?:port-in|port out|number port) (?:status )?is ["']([^"']+)["']$/i,
50
+ build: (m, step) => ({
51
+ step,
52
+ customBody: `await expect(page.locator("[data-testid='port-status']").first()).toContainText(${JSON.stringify(m[1])});`,
53
+ }),
54
+ },
55
+ // TEL:06 — `the data usage is "5 GB"` / `"500 MB"`
56
+ {
57
+ pattern: /^(?:the )?data usage is ["']?(\d+(?:\.\d+)?\s*(?:GB|MB|TB))["']?$/i,
58
+ build: (m, step) => ({
59
+ step,
60
+ customBody: `await expect(page.locator("[data-testid='data-usage']").first()).toContainText(${JSON.stringify(m[1])});`,
61
+ }),
62
+ },
63
+ // TEL:07 — `the data allowance is "10 GB"`
64
+ {
65
+ pattern: /^(?:the )?data (?:allowance|cap|limit) is ["']?(\d+(?:\.\d+)?\s*(?:GB|MB|TB)|unlimited)["']?$/i,
66
+ build: (m, step) => ({
67
+ step,
68
+ customBody: `await expect(page.locator("[data-testid='data-allowance']").first()).toContainText(${JSON.stringify(m[1])});`,
69
+ }),
70
+ },
71
+ // TEL:08 — `the voice usage is "120 min"` / `"2 hours"`
72
+ {
73
+ pattern: /^(?:the )?voice usage is ["']?(\d+(?:\.\d+)?\s*(?:min|hours?|m|h))["']?$/i,
74
+ build: (m, step) => ({
75
+ step,
76
+ customBody: `await expect(page.locator("[data-testid='voice-usage']").first()).toContainText(${JSON.stringify(m[1])});`,
77
+ }),
78
+ },
79
+ // TEL:09 — `the SMS count is N` / `the messages count is N`
80
+ {
81
+ pattern: /^(?:the )?(?:SMS|message|text) count is (\d+)$/i,
82
+ build: (m, step) => ({
83
+ step,
84
+ customBody: [
85
+ `const _smsCount = await page.locator("[data-testid='sms-count']").first().innerText();`,
86
+ `expect(Number(_smsCount.replace(/\\D/g, ""))).toBe(${m[1]});`,
87
+ ].join("\n"),
88
+ }),
89
+ },
90
+ // TEL:10 — `the bill is "$75.50"` / `the outstanding balance is "$X"`
91
+ {
92
+ pattern: new RegExp(`^(?:the )?(?:bill|outstanding balance|amount due) is ${MONEY}$`, "i"),
93
+ build: (m, step) => ({
94
+ step,
95
+ customBody: `await expect(page.locator("[data-testid='bill-amount'], [data-testid='balance-due']").first()).toContainText(${JSON.stringify(m[1])});`,
96
+ }),
97
+ },
98
+ // TEL:11 — `the service is "active"` / `"suspended"`
99
+ {
100
+ pattern: /^(?:the )?service is ["']?(active|suspended|disconnected|pending|barred)["']?$/i,
101
+ build: (m, step) => ({
102
+ step,
103
+ customBody: `await expect(page.locator("[data-testid='service-status']").first()).toContainText(${JSON.stringify(m[1])});`,
104
+ }),
105
+ },
106
+ // TEL:12 — `the signal is "strong"` / `"weak"` / `"no signal"`
107
+ {
108
+ pattern: /^(?:the )?signal(?: strength)? is ["']?(strong|weak|moderate|poor|no signal|full bars)["']?$/i,
109
+ build: (m, step) => ({
110
+ step,
111
+ customBody: `await expect(page.locator("[data-testid='signal-strength']").first()).toContainText(${JSON.stringify(m[1])});`,
112
+ }),
113
+ },
114
+ // TEL:13 — `the device IMEI is "..."`
115
+ {
116
+ pattern: /^(?:the )?device IMEI is ["']?(\d{15})["']?$/i,
117
+ build: (m, step) => ({
118
+ step,
119
+ customBody: `await expect(page.locator("[data-testid='imei'], [data-testid='device-imei']").first()).toContainText(${JSON.stringify(m[1])});`,
120
+ }),
121
+ },
122
+ // TEL:14 — `the SIM ICCID is "..."`
123
+ {
124
+ pattern: /^(?:the )?(?:SIM )?ICCID is ["']?(\d{18,20})["']?$/i,
125
+ build: (m, step) => ({
126
+ step,
127
+ customBody: `await expect(page.locator("[data-testid='iccid']").first()).toContainText(${JSON.stringify(m[1])});`,
128
+ }),
129
+ },
130
+ // TEL:15 — `the call duration is N minutes`
131
+ {
132
+ pattern: /^(?:the )?call duration is (\d+(?:\.\d+)?)(?: minutes?| min| m)?$/i,
133
+ build: (m, step) => ({
134
+ step,
135
+ customBody: [
136
+ `const _duration = await page.locator("[data-testid='call-duration']").first().innerText();`,
137
+ `expect(Number(_duration.replace(/[^\\d.]/g, ""))).toBe(${m[1]});`,
138
+ ].join("\n"),
139
+ }),
140
+ },
141
+ // TEL:16 — `I activate the SIM` / `I activate device`
142
+ {
143
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?activate(?:s)? (?:the )?(SIM|device|line)$`, "i"),
144
+ build: (_m, step) => ({
145
+ step,
146
+ customBody: [
147
+ `await page.getByRole("button", { name: /activate/i }).first().click();`,
148
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
149
+ ].join("\n"),
150
+ }),
151
+ },
152
+ // TEL:17 — `I suspend the service` / `I cancel the service`
153
+ {
154
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?(suspend|cancel|reactivate|resume)(?:s)? (?:the )?(?:service|account|line)$`, "i"),
155
+ build: (m, step) => {
156
+ const action = m[1].toLowerCase();
157
+ return {
158
+ step,
159
+ customBody: [
160
+ `await page.getByRole("button", { name: new RegExp(${JSON.stringify(action)}, "i") }).first().click();`,
161
+ `await page.getByRole("button", { name: /confirm/i }).click();`,
162
+ ].join("\n"),
163
+ };
164
+ },
165
+ },
166
+ // TEL:18 — `the roaming is "enabled"` / `"disabled"`
167
+ {
168
+ pattern: /^(?:the )?(?:international )?roaming is ["']?(enabled|disabled|active|inactive|on|off)["']?$/i,
169
+ build: (m, step) => ({
170
+ step,
171
+ customBody: `await expect(page.locator("[data-testid='roaming-status']").first()).toContainText(${JSON.stringify(m[1])});`,
172
+ }),
173
+ },
174
+ // TEL:19 — `the account number is "..."`
175
+ {
176
+ pattern: /^(?:the )?account(?: number)? is ["']?([A-Z0-9-]+)["']?$/i,
177
+ build: (m, step) => ({
178
+ step,
179
+ customBody: `await expect(page.locator("[data-testid='account-number']").first()).toContainText(${JSON.stringify(m[1])});`,
180
+ }),
181
+ },
182
+ // TEL:20 — `I add line "555-1234" to the plan`
183
+ {
184
+ pattern: new RegExp(`^(?:${SUBJ}\\s+)?add(?:s)? line ["']([^"']+)["'] to (?:the |my )?plan$`, "i"),
185
+ build: (m, step) => ({
186
+ step,
187
+ customBody: [
188
+ `await page.getByRole("button", { name: /add line/i }).click();`,
189
+ `await page.getByLabel(/phone|MSISDN|number/i).fill(${JSON.stringify(m[1])});`,
190
+ `await page.getByRole("button", { name: /confirm|save/i }).click();`,
191
+ ].join("\n"),
192
+ }),
193
+ },
194
+ ];
195
+ //# sourceMappingURL=telecom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telecom.js","sourceRoot":"","sources":["../../../src/transformers/domains/telecom.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ import type { PageObjectIR, ScenarioIR, StepBinding, StepIR } from "../types";
25
25
  * Domains are additive: passing ["banking", "healthcare"] activates
26
26
  * both. Passing nothing keeps the registry byte-stable with v3.3.0.
27
27
  */
28
- export type DomainName = "banking" | "healthcare" | "insurance";
28
+ export type DomainName = "banking" | "healthcare" | "insurance" | "retail" | "gov" | "education" | "telecom";
29
29
  export declare function setActiveDomains(domains: readonly DomainName[] | undefined): void;
30
30
  export interface MatchStepsInput {
31
31
  scenarios: ScenarioIR[];
@@ -28,10 +28,18 @@ const visibilityRules_1 = require("./visibilityRules");
28
28
  const banking_1 = require("./domains/banking");
29
29
  const healthcare_1 = require("./domains/healthcare");
30
30
  const insurance_1 = require("./domains/insurance");
31
+ const retail_1 = require("./domains/retail");
32
+ const gov_1 = require("./domains/gov");
33
+ const education_1 = require("./domains/education");
34
+ const telecom_1 = require("./domains/telecom");
31
35
  const DOMAIN_RULES = {
32
36
  banking: banking_1.BANKING_RULES,
33
37
  healthcare: healthcare_1.HEALTHCARE_RULES,
34
38
  insurance: insurance_1.INSURANCE_RULES,
39
+ retail: retail_1.RETAIL_RULES,
40
+ gov: gov_1.GOV_RULES,
41
+ education: education_1.EDUCATION_RULES,
42
+ telecom: telecom_1.TELECOM_RULES,
35
43
  };
36
44
  let activeDomainRules = [];
37
45
  function setActiveDomains(domains) {
@@ -1 +1 @@
1
- {"version":3,"file":"stepMatcher.js","sourceRoot":"","sources":["../../src/transformers/stepMatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stepMatcher.js","sourceRoot":"","sources":["../../src/transformers/stepMatcher.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -270,7 +270,7 @@ export interface ScaffoldOptions {
270
270
  * Default empty array — byte-stable behavior for callers that don't
271
271
  * opt in.
272
272
  */
273
- domains?: readonly ("banking" | "healthcare" | "insurance")[];
273
+ domains?: readonly ("banking" | "healthcare" | "insurance" | "retail" | "gov" | "education" | "telecom")[];
274
274
  /**
275
275
  * v3.6.0 — opt-in rule-trace diagnostics. When true, every step
276
276
  * that ends up as a warning (no rule matched + LLM either declined
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vijaypjavvadi/bdd2pw",
3
- "version": "3.7.1",
3
+ "version": "3.8.1",
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"