@przeslijmi/real-fake-data-playwright 1.3.0 → 1.7.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/README.md CHANGED
@@ -1,17 +1,18 @@
1
1
  # @przeslijmi/real-fake-data-playwright
2
2
 
3
- Playwright fixtures for [Real Fake Data](https://github.com/przeslijmi/rfd) — **163 generators** of realistic, synthetic test data, one typed method per record:
3
+ Playwright fixtures for [Real Fake Data](https://github.com/przeslijmi/rfd) — **217 generators** of realistic, synthetic test data, one typed method per record:
4
4
 
5
- - **Person and company names across 27 EU countries** — `dePersonName`, `itCompanyName`, `frPersonName`, … in the local script and inflection, plus multi-country `personName`/`companyName` that draw from any mix of countries.
5
+ - **Person & company names and email addresses across 27 EU countries** — `dePersonName`, `itCompanyName`, `plEmail`, … in the local script and inflection (names romanised to ASCII for emails, with free, regional, and company-derived domains), plus multi-country `personName`/`companyName`/`email` that draw from any mix of countries.
6
6
  - **National identifiers and VAT / company numbers for every EU member state** — French `frNir`/`frSiren`, Italian `itCodiceFiscale`, Spanish `esDni`/`esNie`, Danish `dkCpr`, Swedish `sePersonnummer`, Dutch `nlBsn`, German `deSteuerId`/`deUstIdnr`, and 60+ more — each with correct checksums and the same `invalid`/`edge` triggers.
7
+ - **One-call whole people and companies for every EU country** — `dkPerson`, `frPerson`, … return a consistent name + national number; `dkCompany`, `deCompany`, `nlCompany`, … return a consistent trading name, legal form, and the country's register / tax / VAT numbers, all from one seed.
7
8
  - **The full Polish national set** — valid PESELs (correct checksums), NIPs, REGONs, IBANs, KRS and land-register numbers, ID cards, passports, driving licences, addresses drawn from real cities and streets, and vehicle plates.
8
- - **Locale-agnostic** — emails and lorem ipsum.
9
+ - **Locale-agnostic** — lorem ipsum and `customRegex` (a random string matching any regex you supply; Pro plan and above).
9
10
 
10
11
  Output _looks_ real but is fake — safe for staging, demos, and seed data.
11
12
 
12
- - **Seeded and reproducible by default.** Each test derives a stable seed from its title, so a failing test replays the exact same data on the next runno flakiness, trivial repro.
13
+ - **Random by default.** It's a random-data generator: every call returns fresh data on each run. Pin a `seed` only when you want a fixed, reproducible dataset e.g. to replay exactly what a failing run used.
14
+ - **Three ways in, no lock-in.** A zero-config `fakeData` singleton (import and go), a `createFakeData` builder for full control (custom URL, auth headers, seed), or the Playwright `fakeData` fixture — pick per test, mix freely.
13
15
  - **Typed end to end.** Two methods per generator (one record, or a batch), fully typed inputs and results.
14
- - **Zero ceremony.** A `fakeData` fixture; no manual client wiring.
15
16
 
16
17
  ## Install
17
18
 
@@ -24,14 +25,17 @@ Requires `@playwright/test` (peer dependency) and Node 18+ (for global `fetch`).
24
25
 
25
26
  ## Quick start
26
27
 
27
- Point the fixture at a Real Fake Data API instance, then pull data inside any test:
28
+ There are three ways to pull data in pick whichever fits, they all return the same typed records. None is privileged; the fixture is not required.
28
29
 
29
- ```ts
30
- import { test, expect } from '@przeslijmi/real-fake-data-playwright';
30
+ ### 1. Singleton — import and go
31
31
 
32
- test.use({ realFakeData: { baseUrl: 'https://realfakedata-api.onrender.com' } });
32
+ Zero config. The `fakeData` singleton is pre-wired to the public hosted API and returns fresh random data on every run. Best when you just want data in one (or many) tests without touching your Playwright config.
33
33
 
34
- test('registers a new customer', async ({ page, fakeData }) => {
34
+ ```ts
35
+ import { test, expect } from '@playwright/test';
36
+ import { fakeData } from '@przeslijmi/real-fake-data-playwright';
37
+
38
+ test('registers a new customer', async ({ page }) => {
35
39
  const person = await fakeData.plPerson({ sex: 'f' });
36
40
 
37
41
  await page.goto('/signup');
@@ -44,7 +48,47 @@ test('registers a new customer', async ({ page, fakeData }) => {
44
48
  });
45
49
  ```
46
50
 
47
- `test` and `expect` are the standard Playwright exports, extended with the `fakeData` fixture use them exactly as you would `@playwright/test`.
51
+ The singleton targets the public endpoint only and sends no auth headers. Need a custom URL, headers, or a pinned seed? Use one of the next two.
52
+
53
+ ### 2. `createFakeData` — full control
54
+
55
+ Build your own instance over any base URL, with auth headers and an optional seed. Best when you self-host the API, need authentication, or want to pin a fixed dataset.
56
+
57
+ ```ts
58
+ import { test, expect } from '@playwright/test';
59
+ import { createFakeData, CloudFakeDataProvider } from '@przeslijmi/real-fake-data-playwright';
60
+
61
+ const fakeData = createFakeData(
62
+ new CloudFakeDataProvider({
63
+ baseUrl: 'https://api.real-fake-data.com',
64
+ headers: { 'x-api-key': process.env.RFD_API_KEY ?? '' },
65
+ }),
66
+ { seed: 42 }, // optional — omit for random
67
+ );
68
+
69
+ test('uses pinned data', async ({ page }) => {
70
+ const person = await fakeData.plPerson({ sex: 'f' });
71
+ // …
72
+ });
73
+ ```
74
+
75
+ ### 3. Fixture — Playwright-native
76
+
77
+ Configure once with `test.use(...)` and the `fakeData` fixture is injected into every test in scope. Best when you want the data wired into Playwright's lifecycle and configured per file / project.
78
+
79
+ ```ts
80
+ import { test, expect } from '@przeslijmi/real-fake-data-playwright';
81
+
82
+ test.use({ realFakeData: { baseUrl: 'https://api.real-fake-data.com' } });
83
+
84
+ test('registers a new customer', async ({ page, fakeData }) => {
85
+ const person = await fakeData.plPerson({ sex: 'f' });
86
+ // …
87
+ await expect(page.getByText(person.surname)).toBeVisible();
88
+ });
89
+ ```
90
+
91
+ Here `test` and `expect` are the standard Playwright exports, extended with the `fakeData` fixture — use them exactly as you would `@playwright/test`. `baseUrl` is optional: omit it to use the public hosted API, set it for a self-hosted instance. Like the other two, it's random by default; add `seed` to pin it (see [Configuration](#configuration)).
48
92
 
49
93
  ## Configuration
50
94
 
@@ -52,42 +96,48 @@ Set options with `test.use({ realFakeData: { … } })`, at any scope (file, `des
52
96
 
53
97
  | Option | Type | Description |
54
98
  | --------- | ------------------------ | ------------------------------------------------------------------------------------------------------- |
55
- | `baseUrl` | `string` (required) | Base URL of the Real Fake Data API, e.g. `https://realfakedata-api.onrender.com`. |
56
- | `seed` | `number` | Base seed for the test. Omit to derive a stable seed from the test title (reproducible-by-default). |
99
+ | `baseUrl` | `string` | Base URL of the Real Fake Data API. Omit to use the public hosted API (`https://api.real-fake-data.com`); set it for a self-hosted or staging instance. |
100
+ | `seed` | `number` | Base seed for the test. Omit (the default) for fresh random data on every run; set it to pin the test to a fixed, reproducible dataset. |
57
101
  | `headers` | `Record<string, string>` | Extra headers sent with every request (e.g. an API key once your plan requires one). |
58
102
 
59
- ### Determinism
103
+ ### Random by default, reproducible on demand
60
104
 
61
- With a base seed in play, the **Nth call within a test uses `seed + N`**so calls are reproducible across runs yet distinct from one another. Because the default seed comes from the test title, every test is already deterministic without configuring anything; set `seed` explicitly only when you want to pin a test to a known fixed dataset.
105
+ By default no seed is set, so every call draws fresh random data on each runthis is a random-data generator, and that's the point. When a test fails on a particular record, log the data (or have your CI capture it) and pin a `seed` to replay the exact same dataset:
62
106
 
63
107
  ```ts
64
108
  test.use({ realFakeData: { baseUrl, seed: 42 } }); // pin this file to a fixed dataset
65
109
  ```
66
110
 
111
+ With a base seed in play, the **Nth call within a test uses `seed + N`** — so the calls stay distinct from one another, yet the whole sequence reproduces identically on the next run. So three back-to-back `plPerson()` calls still return three *different* people; re-running with the same seed returns those same three. The same holds for the singleton and `createFakeData` instances. Pass `seed` on any individual call to override just that one draw.
112
+
67
113
  ## Generators
68
114
 
69
- Each generator exposes a **singular** method returning one record and a **plural** taking `count` as its first argument and returning an array of that many. Method names are locale-prefixed (`plPesel`, `dePersonName`, …) so generators for different countries never collide; locale-agnostic generators (`email`, `lorem`) and the multi-country aggregates (`personName`, `companyName`) carry no prefix.
115
+ Each generator exposes a **singular** method returning one record and a **plural** taking `count` as its first argument and returning an array of that many. Method names are locale-prefixed (`plPesel`, `dePersonName`, `plEmail`, …) so generators for different countries never collide; the locale-agnostic `lorem` and the multi-country aggregates (`personName`, `companyName`, `email`) carry no prefix.
70
116
 
71
- Every method accepts optional constraints. Pass `seed` on any call to override that call's automatic seed.
117
+ Every method accepts optional constraints. Pass `seed` on any call to pin just that draw (overriding the instance's seed sequence when one is set).
72
118
 
73
119
  #### Names across 27 EU countries
74
120
 
75
- Every country listed below exposes `<cc>PersonName`/`<cc>PersonNames` and `<cc>CompanyName`/`<cc>CompanyNames`, where `<cc>` is its ISO 3166 code: `at`, `be`, `bg`, `cy`, `cz`, `de`, `dk`, `ee`, `es`, `fi`, `fr`, `gr`, `hr`, `hu`, `ie`, `it`, `lt`, `lu`, `lv`, `mt`, `nl`, `pl`, `pt`, `ro`, `se`, `si`, `sk`.
121
+ Every country listed below exposes `<cc>PersonName`/`<cc>PersonNames`, `<cc>CompanyName`/`<cc>CompanyNames`, `<cc>Company`/`<cc>Companies`, and `<cc>Email`/`<cc>Emails`, where `<cc>` is its ISO 3166 code: `at`, `be`, `bg`, `cy`, `cz`, `de`, `dk`, `ee`, `es`, `fi`, `fr`, `gr`, `hr`, `hu`, `ie`, `it`, `lt`, `lu`, `lv`, `mt`, `nl`, `pl`, `pt`, `ro`, `se`, `si`, `sk`.
76
122
 
77
123
  | Singular | Plural | Returns (singular) | Options |
78
124
  | ----------------------- | ------------------------------- | ------------------------------------------- | -------------------------------------- |
79
125
  | `<cc>PersonName(opts?)` | `<cc>PersonNames(count, opts?)` | `{ name, surname, initials, sex }` | `sex`, `edge`, `caseStrict` |
80
126
  | `<cc>CompanyName(opts?)`| `<cc>CompanyNames(count, opts?)`| `{ value, legalForm, strategy }` | `strategy`, `legalForm`, `edge` |
127
+ | `<cc>Company(opts?)` | `<cc>Companies(count, opts?)` | `{ name, legalForm, …national ids }` | `strategy`, `legalForm`, `invalid`, `edge` |
128
+ | `<cc>Email(opts?)` | `<cc>Emails(count, opts?)` | `{ value, localPart, domain, pattern, domainCategory, company, plusTag }` | `domain`, `domainCategory`, `pattern`, `plusTag`, `exotic`, `edge` |
81
129
  | `personName(opts?)` | `personNames(count, opts?)` | `{ name, surname, initials, sex, country }` | `sex`, `edge`, `caseStrict`, `countries` |
82
130
  | `companyName(opts?)` | `companyNames(count, opts?)` | `{ value, legalForm, strategy, country }` | `strategy`, `edge`, `countries` |
131
+ | `email(opts?)` | `emails(count, opts?)` | `{ value, localPart, domain, pattern, domainCategory, company, plusTag, country }` | `domain`, `domainCategory`, `pattern`, `plusTag`, `exotic`, `edge`, `countries` |
83
132
 
84
133
  ```ts
85
134
  const ceo = await fakeData.dePersonName({ sex: 'f' }); // German given name + surname
86
135
  const vendor = await fakeData.itCompanyName({ edge: true }); // edge-case Italian company name
87
136
  const eu = await fakeData.personName({ countries: ['pl', 'sk', 'it'] }); // drawn from one of the three
137
+ const inbox = await fakeData.plEmail({ domainCategory: 'corporate' }); // anna.kowalska@kowalski-bud.pl
88
138
  ```
89
139
 
90
- `countries` (on the prefix-less `personName`/`companyName` only) is an array of ISO codes; each record is generated by one country picked from the list. Omit it to draw from all 27. The per-country `legalForm` values differ by country (e.g. `GmbH`, `S.r.l.`, `S.A.`), so they are typed as `string`; pass `'any'` for a weighted-random one or `'none'` to omit it.
140
+ `countries` (on the prefix-less `personName`/`companyName`/`email` only) is an array of ISO codes; each record is generated by one country picked from the list. Omit it to draw from all 27. The per-country `legalForm` values differ by country (e.g. `GmbH`, `S.r.l.`, `S.A.`), so they are typed as `string`; pass `'any'` for a weighted-random one or `'none'` to omit it. For email, `domainCategory: 'corporate'` builds the address on a company-derived domain and reports the brand in `company`; non-Latin names (Cyrillic, Greek) are romanised to ASCII.
91
141
 
92
142
  #### Polish national generators
93
143
 
@@ -340,12 +390,12 @@ Every EU member state exposes its core national-person identifier and its busine
340
390
 
341
391
  | Singular | Plural | Returns (singular) | Common options |
342
392
  | ------------------------------ | -------------------------------------- | ---------------------------------------------------------- | --------------------------------------------------------------------- |
343
- | `email(opts?)` | `emails(count, opts?)` | `{ value, localPart, domain, pattern, plusTag }` | `domain`, `domainCategory`, `pattern`, `plusTag`, `exotic` |
344
393
  | `lorem(opts?)` | `lorems(count, opts?)` | `{ value, words, chars, bytes, paragraphs, startedWithLorem }` | `bytes`, `chars`, `words`, `paragraphs`, `startWithLorem` |
394
+ | `customRegex(opts)` | `customRegexes(count, opts)` | `{ value, pattern }` | `pattern` (required), `maxRepetition` — Pro plan and above |
345
395
 
346
396
  ### Generating many records at once
347
397
 
348
- Every plural takes `count` as its first argument and returns an array. The bound (10 by default, raised by paid tiers) is enforced by the API — an out-of-range `count` throws a `RealFakeDataError` (HTTP 400), never a silent clamp. A plural is a single request seeded once, so it consumes one slot of the per-test seed sequence just like a singular call.
398
+ Every plural takes `count` as its first argument and returns an array. The bound (10 by default, raised by paid tiers) is enforced by the API — an out-of-range `count` throws a `RealFakeDataError` (HTTP 400), never a silent clamp. A plural is a single request, so — when a seed is in play — it consumes one slot of the seed sequence just like a singular call.
349
399
 
350
400
  ```ts
351
401
  const team = await fakeData.plPeople(5, { sex: 'f' }); // PolishPersonData[] of length 5
@@ -392,7 +442,7 @@ The fixture is a thin wrapper over a provider and a facade you can use directly
392
442
  ```ts
393
443
  import { CloudFakeDataProvider, createFakeData } from '@przeslijmi/real-fake-data-playwright';
394
444
 
395
- const provider = new CloudFakeDataProvider({ baseUrl: 'https://realfakedata-api.onrender.com' });
445
+ const provider = new CloudFakeDataProvider({ baseUrl: 'https://api.real-fake-data.com' });
396
446
  const fakeData = createFakeData(provider, { seed: 42 });
397
447
 
398
448
  const company = await fakeData.plCompanyName({ legalForm: 'S.A.' });
@@ -1,5 +1,5 @@
1
1
  import type { FakeDataProvider } from './fake-data-provider.js';
2
- import type { AddressOptions, AnyCompanyNameData, AnyCompanyNameOptions, AnyPersonNameData, AnyPersonNameOptions, AtFirmenbuchnummerData, AtFirmenbuchnummerOptions, AtSteuernummerData, AtSteuernummerOptions, AtSvnrData, AtSvnrOptions, AtUidData, AtUidOptions, BeOndernemingsnummerData, BeOndernemingsnummerOptions, BeRijksregisternummerData, BeRijksregisternummerOptions, BgEgnData, BgEgnOptions, BgEikData, BgEikOptions, CompanyNameOptions, CompanyOptions, CountryCode, CyTicData, CyTicOptions, CzIcoData, CzIcoOptions, CzRodneCisloData, CzRodneCisloOptions, DeHandelsregisternummerData, DeHandelsregisternummerOptions, DePersonalausweisData, DePersonalausweisOptions, DeSteuerIdData, DeSteuerIdOptions, DeUstIdnrData, DeUstIdnrOptions, DeWirtschaftsIdnrData, DeWirtschaftsIdnrOptions, DkCprData, DkCprOptions, DkPersonData, DkPersonOptions, DkCvrData, DkCvrOptions, DrivingLicenseOptions, EeIsikukoodData, EeIsikukoodOptions, EeKmkrData, EeKmkrOptions, EeRegistrikoodData, EeRegistrikoodOptions, EmailData, EmailOptions, EsCifData, EsCifOptions, EsDniData, EsDniOptions, EsNieData, EsNieOptions, FiHenkilotunnusData, FiHenkilotunnusOptions, FiYTunnusData, FiYTunnusOptions, FrNirData, FrNirOptions, FrSirenData, FrSirenOptions, GrAfmData, GrAfmOptions, GrAmkaData, GrAmkaOptions, HrJmbgData, HrJmbgOptions, HrOibData, HrOibOptions, HuAdoazonositoJelData, HuAdoazonositoJelOptions, HuAdoszamData, HuAdoszamOptions, HuCegjegyzekszamData, HuCegjegyzekszamOptions, HuSzemelyiAzonositoData, HuSzemelyiAzonositoOptions, HuTajData, HuTajOptions, IbanOptions, IdCardOptions, IeCroData, IeCroOptions, IePpsnData, IePpsnOptions, IeVatData, IeVatOptions, ItCodiceFiscaleData, ItCodiceFiscaleOptions, ItPartitaIvaData, ItPartitaIvaOptions, KrsOptions, LandRegisterOptions, LocaleCompanyNameData, LocaleCompanyNameOptions, LoremData, LoremOptions, LtAsmensKodasData, LtAsmensKodasOptions, LtImonesKodasData, LtImonesKodasOptions, LtPvmData, LtPvmOptions, LuMatriculeData, LuMatriculeOptions, LuTvaData, LuTvaOptions, LvPersonasKodsData, LvPersonasKodsOptions, LvRegistracijasNumursData, LvRegistracijasNumursOptions, MtIdCardData, MtIdCardOptions, MtVatData, MtVatOptions, NipOptions, NlBsnData, NlBsnOptions, NlPersonData, NlPersonOptions, NlBtwIdData, NlBtwIdOptions, NlKvkData, NlKvkOptions, NlRsinData, NlRsinOptions, PassportOptions, PersonNameData, PersonNameOptions, PersonOptions, PeselOptions, PolishAddressData, PolishCompanyData, PolishCompanyNameData, PolishDrivingLicenseData, PolishIbanData, PolishIdCardData, PolishKrsData, PolishLandRegisterData, PolishNipData, PolishPassportData, PolishPersonData, BePersonData, BePersonOptions, BgPersonData, BgPersonOptions, CzPersonData, CzPersonOptions, EePersonData, EePersonOptions, FiPersonData, FiPersonOptions, GrPersonData, GrPersonOptions, HrPersonData, HrPersonOptions, HuPersonData, HuPersonOptions, LtPersonData, LtPersonOptions, RoPersonData, RoPersonOptions, SePersonData, SePersonOptions, SiPersonData, SiPersonOptions, SkPersonData, SkPersonOptions, AtPersonData, AtPersonOptions, LuPersonData, LuPersonOptions, FrPersonData, FrPersonOptions, ItPersonData, ItPersonOptions, CyPersonData, CyPersonOptions, DePersonData, DePersonOptions, EsPersonData, EsPersonOptions, IePersonData, IePersonOptions, MtPersonData, MtPersonOptions, PtPersonData, PtPersonOptions, LvPersonData, LvPersonOptions, PolishPeselData, PolishRegonData, PolishVehicleRegistrationData, PtCartaoCidadaoData, PtCartaoCidadaoOptions, PtNifData, PtNifOptions, RegonOptions, RoCnpData, RoCnpOptions, RoCuiData, RoCuiOptions, SeOrganisationsnummerData, SeOrganisationsnummerOptions, SePersonnummerData, SePersonnummerOptions, SiDavcnaStevilkaData, SiDavcnaStevilkaOptions, SiEmsoData, SiEmsoOptions, SkIcDphData, SkIcDphOptions, SkIcoData, SkIcoOptions, SkRodneCisloData, SkRodneCisloOptions, VehicleRegistrationOptions } from './types.js';
2
+ import type { AddressOptions, AnyCompanyNameData, AnyCompanyNameOptions, AnyPersonNameData, AnyPersonNameOptions, AtFirmenbuchnummerData, AtFirmenbuchnummerOptions, AtSteuernummerData, AtSteuernummerOptions, AtSvnrData, AtSvnrOptions, AtUidData, AtUidOptions, BeOndernemingsnummerData, BeOndernemingsnummerOptions, BeRijksregisternummerData, BeRijksregisternummerOptions, BgEgnData, BgEgnOptions, BgEikData, BgEikOptions, CompanyNameOptions, CompanyOptions, LocaleCompanyOptions, AtCompanyData, BeCompanyData, BgCompanyData, CyCompanyData, CzCompanyData, DeCompanyData, DkCompanyData, EeCompanyData, EsCompanyData, FiCompanyData, FrCompanyData, GrCompanyData, HrCompanyData, HuCompanyData, IeCompanyData, ItCompanyData, LtCompanyData, LuCompanyData, LvCompanyData, MtCompanyData, NlCompanyData, PtCompanyData, RoCompanyData, SeCompanyData, SiCompanyData, SkCompanyData, CountryCode, CustomRegexData, CustomRegexOptions, CyTicData, CyTicOptions, CzIcoData, CzIcoOptions, CzRodneCisloData, CzRodneCisloOptions, DeHandelsregisternummerData, DeHandelsregisternummerOptions, DePersonalausweisData, DePersonalausweisOptions, DeSteuerIdData, DeSteuerIdOptions, DeUstIdnrData, DeUstIdnrOptions, DeWirtschaftsIdnrData, DeWirtschaftsIdnrOptions, DkCprData, DkCprOptions, DkPersonData, DkPersonOptions, DkCvrData, DkCvrOptions, DrivingLicenseOptions, EeIsikukoodData, EeIsikukoodOptions, EeKmkrData, EeKmkrOptions, EeRegistrikoodData, EeRegistrikoodOptions, AnyEmailData, AnyEmailOptions, EmailData, EmailOptions, EsCifData, EsCifOptions, EsDniData, EsDniOptions, EsNieData, EsNieOptions, FiHenkilotunnusData, FiHenkilotunnusOptions, FiYTunnusData, FiYTunnusOptions, FrNirData, FrNirOptions, FrSirenData, FrSirenOptions, GrAfmData, GrAfmOptions, GrAmkaData, GrAmkaOptions, HrJmbgData, HrJmbgOptions, HrOibData, HrOibOptions, HuAdoazonositoJelData, HuAdoazonositoJelOptions, HuAdoszamData, HuAdoszamOptions, HuCegjegyzekszamData, HuCegjegyzekszamOptions, HuSzemelyiAzonositoData, HuSzemelyiAzonositoOptions, HuTajData, HuTajOptions, IbanOptions, IdCardOptions, IeCroData, IeCroOptions, IePpsnData, IePpsnOptions, IeVatData, IeVatOptions, ItCodiceFiscaleData, ItCodiceFiscaleOptions, ItPartitaIvaData, ItPartitaIvaOptions, KrsOptions, LandRegisterOptions, LocaleCompanyNameData, LocaleCompanyNameOptions, LoremData, LoremOptions, LtAsmensKodasData, LtAsmensKodasOptions, LtImonesKodasData, LtImonesKodasOptions, LtPvmData, LtPvmOptions, LuMatriculeData, LuMatriculeOptions, LuTvaData, LuTvaOptions, LvPersonasKodsData, LvPersonasKodsOptions, LvRegistracijasNumursData, LvRegistracijasNumursOptions, MtIdCardData, MtIdCardOptions, MtVatData, MtVatOptions, NipOptions, NlBsnData, NlBsnOptions, NlPersonData, NlPersonOptions, NlBtwIdData, NlBtwIdOptions, NlKvkData, NlKvkOptions, NlRsinData, NlRsinOptions, PassportOptions, PersonNameData, PersonNameOptions, PersonOptions, PeselOptions, PolishAddressData, PolishCompanyData, PolishCompanyNameData, PolishDrivingLicenseData, PolishIbanData, PolishIdCardData, PolishKrsData, PolishLandRegisterData, PolishNipData, PolishPassportData, PolishPersonData, BePersonData, BePersonOptions, BgPersonData, BgPersonOptions, CzPersonData, CzPersonOptions, EePersonData, EePersonOptions, FiPersonData, FiPersonOptions, GrPersonData, GrPersonOptions, HrPersonData, HrPersonOptions, HuPersonData, HuPersonOptions, LtPersonData, LtPersonOptions, RoPersonData, RoPersonOptions, SePersonData, SePersonOptions, SiPersonData, SiPersonOptions, SkPersonData, SkPersonOptions, AtPersonData, AtPersonOptions, LuPersonData, LuPersonOptions, FrPersonData, FrPersonOptions, ItPersonData, ItPersonOptions, CyPersonData, CyPersonOptions, DePersonData, DePersonOptions, EsPersonData, EsPersonOptions, IePersonData, IePersonOptions, MtPersonData, MtPersonOptions, PtPersonData, PtPersonOptions, LvPersonData, LvPersonOptions, PolishPeselData, PolishRegonData, PolishVehicleRegistrationData, PtCartaoCidadaoData, PtCartaoCidadaoOptions, PtNifData, PtNifOptions, RegonOptions, RoCnpData, RoCnpOptions, RoCuiData, RoCuiOptions, SeOrganisationsnummerData, SeOrganisationsnummerOptions, SePersonnummerData, SePersonnummerOptions, SiDavcnaStevilkaData, SiDavcnaStevilkaOptions, SiEmsoData, SiEmsoOptions, SkIcDphData, SkIcDphOptions, SkIcoData, SkIcoOptions, SkRodneCisloData, SkRodneCisloOptions, VehicleRegistrationOptions } from './types.js';
3
3
  /**
4
4
  * Singular + plural method pair every country's `person-name` generator
5
5
  * contributes: `dePersonName`/`dePersonNames`, `plPersonName`/`plPersonNames`,
@@ -19,6 +19,16 @@ type LocaleCompanyNameMethods = {
19
19
  } & {
20
20
  [Country in Exclude<CountryCode, 'pl'> as `${Country}CompanyNames`]: (count: number, options?: LocaleCompanyNameOptions) => Promise<LocaleCompanyNameData[]>;
21
21
  };
22
+ /**
23
+ * `email` method pair for every country (`deEmail`, `plEmail`, …). Every
24
+ * country shares the same wire shape — only the name pools and regional /
25
+ * corporate domains differ — so unlike `company-name`, Poland is not special.
26
+ */
27
+ type EmailMethods = {
28
+ [Country in CountryCode as `${Country}Email`]: (options?: EmailOptions) => Promise<EmailData>;
29
+ } & {
30
+ [Country in CountryCode as `${Country}Emails`]: (count: number, options?: EmailOptions) => Promise<EmailData[]>;
31
+ };
22
32
  /**
23
33
  * The typed surface tests use. Each generator exposes a singular method
24
34
  * returning one record and a plural returning an array of `count` records.
@@ -35,7 +45,7 @@ type LocaleCompanyNameMethods = {
35
45
  * countries adds a `<cc>PersonName` and `<cc>CompanyName` pair (see
36
46
  * {@link PersonNameMethods} and {@link LocaleCompanyNameMethods}).
37
47
  */
38
- export type FakeData = PersonNameMethods & LocaleCompanyNameMethods & {
48
+ export type FakeData = PersonNameMethods & LocaleCompanyNameMethods & EmailMethods & {
39
49
  plPesel(options?: PeselOptions): Promise<PolishPeselData>;
40
50
  plPesels(count: number, options?: PeselOptions): Promise<PolishPeselData[]>;
41
51
  plPerson(options?: PersonOptions): Promise<PolishPersonData>;
@@ -98,6 +108,58 @@ export type FakeData = PersonNameMethods & LocaleCompanyNameMethods & {
98
108
  plRegons(count: number, options?: RegonOptions): Promise<PolishRegonData[]>;
99
109
  plCompany(options?: CompanyOptions): Promise<PolishCompanyData>;
100
110
  plCompanies(count: number, options?: CompanyOptions): Promise<PolishCompanyData[]>;
111
+ atCompany(options?: LocaleCompanyOptions): Promise<AtCompanyData>;
112
+ atCompanies(count: number, options?: LocaleCompanyOptions): Promise<AtCompanyData[]>;
113
+ beCompany(options?: LocaleCompanyOptions): Promise<BeCompanyData>;
114
+ beCompanies(count: number, options?: LocaleCompanyOptions): Promise<BeCompanyData[]>;
115
+ bgCompany(options?: LocaleCompanyOptions): Promise<BgCompanyData>;
116
+ bgCompanies(count: number, options?: LocaleCompanyOptions): Promise<BgCompanyData[]>;
117
+ cyCompany(options?: LocaleCompanyOptions): Promise<CyCompanyData>;
118
+ cyCompanies(count: number, options?: LocaleCompanyOptions): Promise<CyCompanyData[]>;
119
+ czCompany(options?: LocaleCompanyOptions): Promise<CzCompanyData>;
120
+ czCompanies(count: number, options?: LocaleCompanyOptions): Promise<CzCompanyData[]>;
121
+ deCompany(options?: LocaleCompanyOptions): Promise<DeCompanyData>;
122
+ deCompanies(count: number, options?: LocaleCompanyOptions): Promise<DeCompanyData[]>;
123
+ dkCompany(options?: LocaleCompanyOptions): Promise<DkCompanyData>;
124
+ dkCompanies(count: number, options?: LocaleCompanyOptions): Promise<DkCompanyData[]>;
125
+ eeCompany(options?: LocaleCompanyOptions): Promise<EeCompanyData>;
126
+ eeCompanies(count: number, options?: LocaleCompanyOptions): Promise<EeCompanyData[]>;
127
+ esCompany(options?: LocaleCompanyOptions): Promise<EsCompanyData>;
128
+ esCompanies(count: number, options?: LocaleCompanyOptions): Promise<EsCompanyData[]>;
129
+ fiCompany(options?: LocaleCompanyOptions): Promise<FiCompanyData>;
130
+ fiCompanies(count: number, options?: LocaleCompanyOptions): Promise<FiCompanyData[]>;
131
+ frCompany(options?: LocaleCompanyOptions): Promise<FrCompanyData>;
132
+ frCompanies(count: number, options?: LocaleCompanyOptions): Promise<FrCompanyData[]>;
133
+ grCompany(options?: LocaleCompanyOptions): Promise<GrCompanyData>;
134
+ grCompanies(count: number, options?: LocaleCompanyOptions): Promise<GrCompanyData[]>;
135
+ hrCompany(options?: LocaleCompanyOptions): Promise<HrCompanyData>;
136
+ hrCompanies(count: number, options?: LocaleCompanyOptions): Promise<HrCompanyData[]>;
137
+ huCompany(options?: LocaleCompanyOptions): Promise<HuCompanyData>;
138
+ huCompanies(count: number, options?: LocaleCompanyOptions): Promise<HuCompanyData[]>;
139
+ ieCompany(options?: LocaleCompanyOptions): Promise<IeCompanyData>;
140
+ ieCompanies(count: number, options?: LocaleCompanyOptions): Promise<IeCompanyData[]>;
141
+ itCompany(options?: LocaleCompanyOptions): Promise<ItCompanyData>;
142
+ itCompanies(count: number, options?: LocaleCompanyOptions): Promise<ItCompanyData[]>;
143
+ ltCompany(options?: LocaleCompanyOptions): Promise<LtCompanyData>;
144
+ ltCompanies(count: number, options?: LocaleCompanyOptions): Promise<LtCompanyData[]>;
145
+ luCompany(options?: LocaleCompanyOptions): Promise<LuCompanyData>;
146
+ luCompanies(count: number, options?: LocaleCompanyOptions): Promise<LuCompanyData[]>;
147
+ lvCompany(options?: LocaleCompanyOptions): Promise<LvCompanyData>;
148
+ lvCompanies(count: number, options?: LocaleCompanyOptions): Promise<LvCompanyData[]>;
149
+ mtCompany(options?: LocaleCompanyOptions): Promise<MtCompanyData>;
150
+ mtCompanies(count: number, options?: LocaleCompanyOptions): Promise<MtCompanyData[]>;
151
+ nlCompany(options?: LocaleCompanyOptions): Promise<NlCompanyData>;
152
+ nlCompanies(count: number, options?: LocaleCompanyOptions): Promise<NlCompanyData[]>;
153
+ ptCompany(options?: LocaleCompanyOptions): Promise<PtCompanyData>;
154
+ ptCompanies(count: number, options?: LocaleCompanyOptions): Promise<PtCompanyData[]>;
155
+ roCompany(options?: LocaleCompanyOptions): Promise<RoCompanyData>;
156
+ roCompanies(count: number, options?: LocaleCompanyOptions): Promise<RoCompanyData[]>;
157
+ seCompany(options?: LocaleCompanyOptions): Promise<SeCompanyData>;
158
+ seCompanies(count: number, options?: LocaleCompanyOptions): Promise<SeCompanyData[]>;
159
+ siCompany(options?: LocaleCompanyOptions): Promise<SiCompanyData>;
160
+ siCompanies(count: number, options?: LocaleCompanyOptions): Promise<SiCompanyData[]>;
161
+ skCompany(options?: LocaleCompanyOptions): Promise<SkCompanyData>;
162
+ skCompanies(count: number, options?: LocaleCompanyOptions): Promise<SkCompanyData[]>;
101
163
  plCompanyName(options?: CompanyNameOptions): Promise<PolishCompanyNameData>;
102
164
  plCompanyNames(count: number, options?: CompanyNameOptions): Promise<PolishCompanyNameData[]>;
103
165
  plVehicleRegistration(options?: VehicleRegistrationOptions): Promise<PolishVehicleRegistrationData>;
@@ -118,10 +180,13 @@ export type FakeData = PersonNameMethods & LocaleCompanyNameMethods & {
118
180
  /** Multi-country company name: each record is drawn from one of `countries` (default: all 27). */
119
181
  companyName(options?: AnyCompanyNameOptions): Promise<AnyCompanyNameData>;
120
182
  companyNames(count: number, options?: AnyCompanyNameOptions): Promise<AnyCompanyNameData[]>;
121
- email(options?: EmailOptions): Promise<EmailData>;
122
- emails(count: number, options?: EmailOptions): Promise<EmailData[]>;
183
+ email(options?: AnyEmailOptions): Promise<AnyEmailData>;
184
+ emails(count: number, options?: AnyEmailOptions): Promise<AnyEmailData[]>;
123
185
  lorem(options?: LoremOptions): Promise<LoremData>;
124
186
  lorems(count: number, options?: LoremOptions): Promise<LoremData[]>;
187
+ /** Random string matching a supplied regex `pattern`. Requires the Pro plan or above. */
188
+ customRegex(options: CustomRegexOptions): Promise<CustomRegexData>;
189
+ customRegexes(count: number, options: CustomRegexOptions): Promise<CustomRegexData[]>;
125
190
  frSiren(options?: FrSirenOptions): Promise<FrSirenData>;
126
191
  frSirens(count: number, options?: FrSirenOptions): Promise<FrSirenData[]>;
127
192
  frNir(options?: FrNirOptions): Promise<FrNirData>;
@@ -1 +1 @@
1
- {"version":3,"file":"fake-data.d.ts","sourceRoot":"","sources":["../src/fake-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fake-data.d.ts","sourceRoot":"","sources":["../src/fake-data.ts"],"names":[],"mappings":"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"}
package/dist/fake-data.js CHANGED
@@ -62,6 +62,10 @@ export const createFakeData = (provider, options = {}) => {
62
62
  [`${countryCode}CompanyName`]: async (companyNameOptions = {}) => await run(`${countryCode}/company-name`, companyNameOptions),
63
63
  [`${countryCode}CompanyNames`]: async (count, companyNameOptions = {}) => await runMany(`${countryCode}/company-name`, count, companyNameOptions),
64
64
  });
65
+ const emailPair = (countryCode) => ({
66
+ [`${countryCode}Email`]: async (emailOptions = {}) => await run(`${countryCode}/email`, emailOptions),
67
+ [`${countryCode}Emails`]: async (count, emailOptions = {}) => await runMany(`${countryCode}/email`, count, emailOptions),
68
+ });
65
69
  return {
66
70
  plPesel: async (peselOptions = {}) => await run('pl/pesel', peselOptions),
67
71
  plPesels: async (count, peselOptions = {}) => await runMany('pl/pesel', count, peselOptions),
@@ -125,6 +129,58 @@ export const createFakeData = (provider, options = {}) => {
125
129
  plRegons: async (count, regonOptions = {}) => await runMany('pl/regon', count, regonOptions),
126
130
  plCompany: async (companyOptions = {}) => await run('pl/company', companyOptions),
127
131
  plCompanies: async (count, companyOptions = {}) => await runMany('pl/company', count, companyOptions),
132
+ atCompany: async (companyOptions = {}) => await run('at/company', companyOptions),
133
+ atCompanies: async (count, companyOptions = {}) => await runMany('at/company', count, companyOptions),
134
+ beCompany: async (companyOptions = {}) => await run('be/company', companyOptions),
135
+ beCompanies: async (count, companyOptions = {}) => await runMany('be/company', count, companyOptions),
136
+ bgCompany: async (companyOptions = {}) => await run('bg/company', companyOptions),
137
+ bgCompanies: async (count, companyOptions = {}) => await runMany('bg/company', count, companyOptions),
138
+ cyCompany: async (companyOptions = {}) => await run('cy/company', companyOptions),
139
+ cyCompanies: async (count, companyOptions = {}) => await runMany('cy/company', count, companyOptions),
140
+ czCompany: async (companyOptions = {}) => await run('cz/company', companyOptions),
141
+ czCompanies: async (count, companyOptions = {}) => await runMany('cz/company', count, companyOptions),
142
+ deCompany: async (companyOptions = {}) => await run('de/company', companyOptions),
143
+ deCompanies: async (count, companyOptions = {}) => await runMany('de/company', count, companyOptions),
144
+ dkCompany: async (companyOptions = {}) => await run('dk/company', companyOptions),
145
+ dkCompanies: async (count, companyOptions = {}) => await runMany('dk/company', count, companyOptions),
146
+ eeCompany: async (companyOptions = {}) => await run('ee/company', companyOptions),
147
+ eeCompanies: async (count, companyOptions = {}) => await runMany('ee/company', count, companyOptions),
148
+ esCompany: async (companyOptions = {}) => await run('es/company', companyOptions),
149
+ esCompanies: async (count, companyOptions = {}) => await runMany('es/company', count, companyOptions),
150
+ fiCompany: async (companyOptions = {}) => await run('fi/company', companyOptions),
151
+ fiCompanies: async (count, companyOptions = {}) => await runMany('fi/company', count, companyOptions),
152
+ frCompany: async (companyOptions = {}) => await run('fr/company', companyOptions),
153
+ frCompanies: async (count, companyOptions = {}) => await runMany('fr/company', count, companyOptions),
154
+ grCompany: async (companyOptions = {}) => await run('gr/company', companyOptions),
155
+ grCompanies: async (count, companyOptions = {}) => await runMany('gr/company', count, companyOptions),
156
+ hrCompany: async (companyOptions = {}) => await run('hr/company', companyOptions),
157
+ hrCompanies: async (count, companyOptions = {}) => await runMany('hr/company', count, companyOptions),
158
+ huCompany: async (companyOptions = {}) => await run('hu/company', companyOptions),
159
+ huCompanies: async (count, companyOptions = {}) => await runMany('hu/company', count, companyOptions),
160
+ ieCompany: async (companyOptions = {}) => await run('ie/company', companyOptions),
161
+ ieCompanies: async (count, companyOptions = {}) => await runMany('ie/company', count, companyOptions),
162
+ itCompany: async (companyOptions = {}) => await run('it/company', companyOptions),
163
+ itCompanies: async (count, companyOptions = {}) => await runMany('it/company', count, companyOptions),
164
+ ltCompany: async (companyOptions = {}) => await run('lt/company', companyOptions),
165
+ ltCompanies: async (count, companyOptions = {}) => await runMany('lt/company', count, companyOptions),
166
+ luCompany: async (companyOptions = {}) => await run('lu/company', companyOptions),
167
+ luCompanies: async (count, companyOptions = {}) => await runMany('lu/company', count, companyOptions),
168
+ lvCompany: async (companyOptions = {}) => await run('lv/company', companyOptions),
169
+ lvCompanies: async (count, companyOptions = {}) => await runMany('lv/company', count, companyOptions),
170
+ mtCompany: async (companyOptions = {}) => await run('mt/company', companyOptions),
171
+ mtCompanies: async (count, companyOptions = {}) => await runMany('mt/company', count, companyOptions),
172
+ nlCompany: async (companyOptions = {}) => await run('nl/company', companyOptions),
173
+ nlCompanies: async (count, companyOptions = {}) => await runMany('nl/company', count, companyOptions),
174
+ ptCompany: async (companyOptions = {}) => await run('pt/company', companyOptions),
175
+ ptCompanies: async (count, companyOptions = {}) => await runMany('pt/company', count, companyOptions),
176
+ roCompany: async (companyOptions = {}) => await run('ro/company', companyOptions),
177
+ roCompanies: async (count, companyOptions = {}) => await runMany('ro/company', count, companyOptions),
178
+ seCompany: async (companyOptions = {}) => await run('se/company', companyOptions),
179
+ seCompanies: async (count, companyOptions = {}) => await runMany('se/company', count, companyOptions),
180
+ siCompany: async (companyOptions = {}) => await run('si/company', companyOptions),
181
+ siCompanies: async (count, companyOptions = {}) => await runMany('si/company', count, companyOptions),
182
+ skCompany: async (companyOptions = {}) => await run('sk/company', companyOptions),
183
+ skCompanies: async (count, companyOptions = {}) => await runMany('sk/company', count, companyOptions),
128
184
  plCompanyName: async (companyNameOptions = {}) => await run('pl/company-name', companyNameOptions),
129
185
  plCompanyNames: async (count, companyNameOptions = {}) => await runMany('pl/company-name', count, companyNameOptions),
130
186
  plVehicleRegistration: async (vehicleOptions = {}) => await run('pl/vehicle-registration', vehicleOptions),
@@ -147,6 +203,8 @@ export const createFakeData = (provider, options = {}) => {
147
203
  emails: async (count, emailOptions = {}) => await runMany('email', count, emailOptions),
148
204
  lorem: async (loremOptions = {}) => await run('lorem', loremOptions),
149
205
  lorems: async (count, loremOptions = {}) => await runMany('lorem', count, loremOptions),
206
+ customRegex: async (customRegexOptions) => await run('custom-regex', customRegexOptions),
207
+ customRegexes: async (count, customRegexOptions) => await runMany('custom-regex', count, customRegexOptions),
150
208
  ...personNamePair('at'),
151
209
  ...personNamePair('be'),
152
210
  ...personNamePair('bg'),
@@ -200,6 +258,33 @@ export const createFakeData = (provider, options = {}) => {
200
258
  ...companyNamePair('se'),
201
259
  ...companyNamePair('si'),
202
260
  ...companyNamePair('sk'),
261
+ ...emailPair('at'),
262
+ ...emailPair('be'),
263
+ ...emailPair('bg'),
264
+ ...emailPair('cy'),
265
+ ...emailPair('cz'),
266
+ ...emailPair('de'),
267
+ ...emailPair('dk'),
268
+ ...emailPair('ee'),
269
+ ...emailPair('es'),
270
+ ...emailPair('fi'),
271
+ ...emailPair('fr'),
272
+ ...emailPair('gr'),
273
+ ...emailPair('hr'),
274
+ ...emailPair('hu'),
275
+ ...emailPair('ie'),
276
+ ...emailPair('it'),
277
+ ...emailPair('lt'),
278
+ ...emailPair('lu'),
279
+ ...emailPair('lv'),
280
+ ...emailPair('mt'),
281
+ ...emailPair('nl'),
282
+ ...emailPair('pl'),
283
+ ...emailPair('pt'),
284
+ ...emailPair('ro'),
285
+ ...emailPair('se'),
286
+ ...emailPair('si'),
287
+ ...emailPair('sk'),
203
288
  frSiren: async (frSirenOptions = {}) => await run('fr/siren', frSirenOptions),
204
289
  frSirens: async (count, frSirenOptions = {}) => await runMany('fr/siren', count, frSirenOptions),
205
290
  frNir: async (frNirOptions = {}) => await run('fr/nir', frNirOptions),