@przeslijmi/real-fake-data-playwright 1.5.0 → 1.8.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/dist/fixture.d.ts CHANGED
@@ -1,12 +1,17 @@
1
1
  import type { FakeData } from './fake-data.js';
2
2
  /** Test-level configuration, set with `test.use({ realFakeData: { … } })`. */
3
3
  export interface RealFakeDataConfig {
4
- /** Base URL of the Real Fake Data API, e.g. `https://api.real-fake-data.com`. */
5
- baseUrl: string;
6
4
  /**
7
- * Base seed for the test. When omitted, a stable seed is derived from the
8
- * test title, so each test is reproducible-by-default yet distinct from its
9
- * neighbours. Set it explicitly to pin a test to known data.
5
+ * Base URL of the Real Fake Data API. Omit to target the public hosted API
6
+ * (`https://api.real-fake-data.com`); set it to point at a self-hosted or
7
+ * staging instance.
8
+ */
9
+ baseUrl?: string;
10
+ /**
11
+ * Base seed for the test. When omitted, each call returns fresh random data
12
+ * on every run — the default, because this is a random-data generator. Set
13
+ * it explicitly to pin the test to a fixed, reproducible dataset (e.g. to
14
+ * replay the data a failing run used).
10
15
  */
11
16
  seed?: number;
12
17
  /** Extra headers (e.g. authentication) sent with every request. */
@@ -17,9 +22,10 @@ export interface RealFakeDataFixtures {
17
22
  fakeData: FakeData;
18
23
  }
19
24
  /**
20
- * A Playwright `test` extended with a `fakeData` fixture. Configure the API
21
- * location once with `test.use({ realFakeData: { baseUrl: '…' } })`, then pull
22
- * synthetic data inside any test via the `fakeData` fixture.
25
+ * A Playwright `test` extended with a `fakeData` fixture. Works against the
26
+ * public hosted API out of the box; override the endpoint (or add auth) once
27
+ * with `test.use({ realFakeData: { baseUrl: '…' } })`, then pull synthetic
28
+ * data inside any test via the `fakeData` fixture.
23
29
  */
24
30
  export declare const test: import("@playwright/test").TestType<import("@playwright/test").PlaywrightTestArgs & import("@playwright/test").PlaywrightTestOptions & RealFakeDataFixtures, import("@playwright/test").PlaywrightWorkerArgs & import("@playwright/test").PlaywrightWorkerOptions>;
25
31
  export { expect } from '@playwright/test';
@@ -1 +1 @@
1
- {"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI/C,8EAA8E;AAC9E,MAAM,WAAW,kBAAkB;IACjC,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,kBAAkB,CAAC;IACjC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,IAAI,oQAUf,CAAC;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,8EAA8E;AAC9E,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,kBAAkB,CAAC;IACjC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,oQAaf,CAAC;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/fixture.js CHANGED
@@ -1,21 +1,22 @@
1
1
  import { test as base } from '@playwright/test';
2
2
  import { createFakeData } from './fake-data.js';
3
- import { hashString } from './hash.js';
4
3
  import { CloudFakeDataProvider } from './providers/cloud-provider.js';
5
4
  /**
6
- * A Playwright `test` extended with a `fakeData` fixture. Configure the API
7
- * location once with `test.use({ realFakeData: { baseUrl: '…' } })`, then pull
8
- * synthetic data inside any test via the `fakeData` fixture.
5
+ * A Playwright `test` extended with a `fakeData` fixture. Works against the
6
+ * public hosted API out of the box; override the endpoint (or add auth) once
7
+ * with `test.use({ realFakeData: { baseUrl: '…' } })`, then pull synthetic
8
+ * data inside any test via the `fakeData` fixture.
9
9
  */
10
10
  export const test = base.extend({
11
- realFakeData: [{ baseUrl: '' }, { option: true }],
12
- fakeData: async ({ realFakeData }, use, testInfo) => {
11
+ realFakeData: [{}, { option: true }],
12
+ fakeData: async ({ realFakeData }, use) => {
13
13
  const provider = new CloudFakeDataProvider({
14
- baseUrl: realFakeData.baseUrl,
14
+ ...(realFakeData.baseUrl === undefined ? {} : { baseUrl: realFakeData.baseUrl }),
15
15
  ...(realFakeData.headers === undefined ? {} : { headers: realFakeData.headers }),
16
16
  });
17
- const seed = realFakeData.seed ?? hashString(testInfo.titlePath.join(' '));
18
- await use(createFakeData(provider, { seed }));
17
+ // No configured seed leave it unset so each call draws fresh random data
18
+ // on every run. A pinned `seed` makes the test replay an exact dataset.
19
+ await use(createFakeData(provider, realFakeData.seed === undefined ? {} : { seed: realFakeData.seed }));
19
20
  },
20
21
  });
21
22
  export { expect } from '@playwright/test';
@@ -1 +1 @@
1
- {"version":3,"file":"fixture.js","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAqBtE;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAuB;IACpD,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACjD,QAAQ,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;QAClD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;YACzC,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,GAAG,CAAC,YAAY,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC;SACjF,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7E,MAAM,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"fixture.js","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AA0BtE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAuB;IACpD,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpC,QAAQ,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,EAAE;QACxC,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;YACzC,GAAG,CAAC,YAAY,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC;YAChF,GAAG,CAAC,YAAY,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC;SACjF,CAAC,CAAC;QACH,2EAA2E;QAC3E,wEAAwE;QACxE,MAAM,GAAG,CACP,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAC7F,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ export { test, expect } from './fixture.js';
2
2
  export type { RealFakeDataConfig, RealFakeDataFixtures } from './fixture.js';
3
3
  export { createFakeData } from './fake-data.js';
4
4
  export type { CreateFakeDataOptions, FakeData } from './fake-data.js';
5
+ export { fakeData } from './singleton.js';
5
6
  export { CloudFakeDataProvider } from './providers/cloud-provider.js';
6
7
  export type { CloudFakeDataProviderOptions, FetchLike } from './providers/cloud-provider.js';
7
8
  export type { FakeDataProvider, GeneratorMeta, GeneratorResponse, QueryValue, } from './fake-data-provider.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,YAAY,EAAE,4BAA4B,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE7F,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,UAAU,GACX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,mBAAmB,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,YAAY,EAAE,4BAA4B,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE7F,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,UAAU,GACX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,mBAAmB,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export { test, expect } from './fixture.js';
2
2
  export { createFakeData } from './fake-data.js';
3
+ export { fakeData } from './singleton.js';
3
4
  export { CloudFakeDataProvider } from './providers/cloud-provider.js';
4
5
  export { RealFakeDataError } from './errors.js';
5
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAUtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAUtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,9 +1,15 @@
1
1
  import type { FakeDataProvider, GeneratorResponse, QueryValue } from '../fake-data-provider.js';
2
2
  /** The subset of the global `fetch` signature this provider relies on. */
3
3
  export type FetchLike = (input: string | URL, init?: RequestInit) => Promise<Response>;
4
+ /** Base URL of the public, hosted Real Fake Data API — the default endpoint. */
5
+ export declare const PUBLIC_API_BASE_URL = "https://api.real-fake-data.com";
4
6
  export interface CloudFakeDataProviderOptions {
5
- /** Base URL of the Real Fake Data API, e.g. `https://api.real-fake-data.com`. */
6
- readonly baseUrl: string;
7
+ /**
8
+ * Base URL of the Real Fake Data API. Omit (or leave empty) to target the
9
+ * public hosted API at {@link PUBLIC_API_BASE_URL}; set it to point at a
10
+ * self-hosted or staging instance.
11
+ */
12
+ readonly baseUrl?: string;
7
13
  /** Extra headers (e.g. authentication) sent with every request. */
8
14
  readonly headers?: Readonly<Record<string, string>>;
9
15
  /** Custom fetch implementation; defaults to the global `fetch`. */
@@ -17,7 +23,7 @@ export interface CloudFakeDataProviderOptions {
17
23
  */
18
24
  export declare class CloudFakeDataProvider implements FakeDataProvider {
19
25
  #private;
20
- constructor(options: CloudFakeDataProviderOptions);
26
+ constructor(options?: CloudFakeDataProviderOptions);
21
27
  generate<Data>(path: string, query: Readonly<Record<string, QueryValue>>): Promise<GeneratorResponse<Data>>;
22
28
  }
23
29
  //# sourceMappingURL=cloud-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-provider.d.ts","sourceRoot":"","sources":["../../src/providers/cloud-provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEhG,0EAA0E;AAC1E,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvF,MAAM,WAAW,4BAA4B;IAC3C,iFAAiF;IACjF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,mEAAmE;IACnE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;CAC5B;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,gBAAgB;;gBAKzC,OAAO,EAAE,4BAA4B;IAM3C,QAAQ,CAAC,IAAI,EACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,GAC1C,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;CAiCpC"}
1
+ {"version":3,"file":"cloud-provider.d.ts","sourceRoot":"","sources":["../../src/providers/cloud-provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEhG,0EAA0E;AAC1E,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvF,gFAAgF;AAChF,eAAO,MAAM,mBAAmB,mCAAmC,CAAC;AAEpE,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,mEAAmE;IACnE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;CAC5B;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,gBAAgB;;gBAKzC,OAAO,GAAE,4BAAiC;IAOhD,QAAQ,CAAC,IAAI,EACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,GAC1C,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;CAyBpC"}
@@ -1,4 +1,6 @@
1
1
  import { RealFakeDataError } from '../errors.js';
2
+ /** Base URL of the public, hosted Real Fake Data API — the default endpoint. */
3
+ export const PUBLIC_API_BASE_URL = 'https://api.real-fake-data.com';
2
4
  /**
3
5
  * A {@link FakeDataProvider} that calls the hosted Real Fake Data API over
4
6
  * HTTP. It maps `(path, query)` to `GET {baseUrl}/v1/{path}?{query}` and
@@ -9,16 +11,13 @@ export class CloudFakeDataProvider {
9
11
  #baseUrl;
10
12
  #headers;
11
13
  #fetch;
12
- constructor(options) {
13
- this.#baseUrl = options.baseUrl.replace(/\/+$/u, '');
14
+ constructor(options = {}) {
15
+ const baseUrl = options.baseUrl === undefined || options.baseUrl === '' ? PUBLIC_API_BASE_URL : options.baseUrl;
16
+ this.#baseUrl = baseUrl.replace(/\/+$/u, '');
14
17
  this.#headers = { ...options.headers };
15
18
  this.#fetch = options.fetch ?? globalThis.fetch;
16
19
  }
17
20
  async generate(path, query) {
18
- if (this.#baseUrl === '') {
19
- throw new RealFakeDataError('Real Fake Data baseUrl is not configured. Set it via ' +
20
- 'test.use({ realFakeData: { baseUrl: "https://…" } }).', 0);
21
- }
22
21
  const url = new URL(`${this.#baseUrl}/v1/${path}`);
23
22
  for (const [key, value] of Object.entries(query)) {
24
23
  if (value !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-provider.js","sourceRoot":"","sources":["../../src/providers/cloud-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-provider.js","sourceRoot":"","sources":["../../src/providers/cloud-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { FakeData } from './fake-data.js';
2
+ /**
3
+ * A ready-to-use {@link FakeData} bound to the public hosted API — no client
4
+ * wiring, no fixture, no seed. Every call returns fresh random data on each
5
+ * run. Import it and go:
6
+ *
7
+ * ```ts
8
+ * import { fakeData } from '@przeslijmi/real-fake-data-playwright';
9
+ *
10
+ * const person = await fakeData.plPerson({ sex: 'f' });
11
+ * ```
12
+ *
13
+ * This is the zero-config tier and deliberately the least configurable: it
14
+ * targets the default public endpoint and carries no authentication headers.
15
+ * When you need a custom base URL, auth headers, or a pinned seed, reach for
16
+ * {@link createFakeData} (build your own instance) or the {@link test} fixture
17
+ * (Playwright integration) instead.
18
+ */
19
+ export declare const fakeData: FakeData;
20
+ //# sourceMappingURL=singleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"singleton.d.ts","sourceRoot":"","sources":["../src/singleton.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAsD,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { createFakeData } from './fake-data.js';
2
+ import { CloudFakeDataProvider } from './providers/cloud-provider.js';
3
+ /**
4
+ * A ready-to-use {@link FakeData} bound to the public hosted API — no client
5
+ * wiring, no fixture, no seed. Every call returns fresh random data on each
6
+ * run. Import it and go:
7
+ *
8
+ * ```ts
9
+ * import { fakeData } from '@przeslijmi/real-fake-data-playwright';
10
+ *
11
+ * const person = await fakeData.plPerson({ sex: 'f' });
12
+ * ```
13
+ *
14
+ * This is the zero-config tier and deliberately the least configurable: it
15
+ * targets the default public endpoint and carries no authentication headers.
16
+ * When you need a custom base URL, auth headers, or a pinned seed, reach for
17
+ * {@link createFakeData} (build your own instance) or the {@link test} fixture
18
+ * (Playwright integration) instead.
19
+ */
20
+ export const fakeData = createFakeData(new CloudFakeDataProvider());
21
+ //# sourceMappingURL=singleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"singleton.js","sourceRoot":"","sources":["../src/singleton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAa,cAAc,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC"}