@kywi-software/sdk 0.14.0 → 0.15.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.
Files changed (51) hide show
  1. package/dist/types.d.ts +26 -5
  2. package/dist/types.d.ts.map +1 -1
  3. package/package.json +2 -2
  4. package/dist/__tests__/auth-client.test.d.ts +0 -2
  5. package/dist/__tests__/auth-client.test.d.ts.map +0 -1
  6. package/dist/__tests__/auth-client.test.js +0 -97
  7. package/dist/__tests__/auth-client.test.js.map +0 -1
  8. package/dist/__tests__/content-client.test.d.ts +0 -2
  9. package/dist/__tests__/content-client.test.d.ts.map +0 -1
  10. package/dist/__tests__/content-client.test.js +0 -178
  11. package/dist/__tests__/content-client.test.js.map +0 -1
  12. package/dist/__tests__/create-sdk.test.d.ts +0 -2
  13. package/dist/__tests__/create-sdk.test.d.ts.map +0 -1
  14. package/dist/__tests__/create-sdk.test.js +0 -86
  15. package/dist/__tests__/create-sdk.test.js.map +0 -1
  16. package/dist/__tests__/feed-client.test.d.ts +0 -2
  17. package/dist/__tests__/feed-client.test.d.ts.map +0 -1
  18. package/dist/__tests__/feed-client.test.js +0 -81
  19. package/dist/__tests__/feed-client.test.js.map +0 -1
  20. package/dist/__tests__/hooks.test.d.ts +0 -2
  21. package/dist/__tests__/hooks.test.d.ts.map +0 -1
  22. package/dist/__tests__/hooks.test.js +0 -123
  23. package/dist/__tests__/hooks.test.js.map +0 -1
  24. package/dist/__tests__/http-client.test.d.ts +0 -2
  25. package/dist/__tests__/http-client.test.d.ts.map +0 -1
  26. package/dist/__tests__/http-client.test.js +0 -164
  27. package/dist/__tests__/http-client.test.js.map +0 -1
  28. package/dist/__tests__/i18n-client.test.d.ts +0 -2
  29. package/dist/__tests__/i18n-client.test.d.ts.map +0 -1
  30. package/dist/__tests__/i18n-client.test.js +0 -73
  31. package/dist/__tests__/i18n-client.test.js.map +0 -1
  32. package/dist/__tests__/media-client.test.d.ts +0 -2
  33. package/dist/__tests__/media-client.test.d.ts.map +0 -1
  34. package/dist/__tests__/media-client.test.js +0 -115
  35. package/dist/__tests__/media-client.test.js.map +0 -1
  36. package/dist/__tests__/nav-client.test.d.ts +0 -2
  37. package/dist/__tests__/nav-client.test.d.ts.map +0 -1
  38. package/dist/__tests__/nav-client.test.js +0 -81
  39. package/dist/__tests__/nav-client.test.js.map +0 -1
  40. package/dist/__tests__/sdk-scope-additions.test.d.ts +0 -2
  41. package/dist/__tests__/sdk-scope-additions.test.d.ts.map +0 -1
  42. package/dist/__tests__/sdk-scope-additions.test.js +0 -420
  43. package/dist/__tests__/sdk-scope-additions.test.js.map +0 -1
  44. package/dist/__tests__/site-client.test.d.ts +0 -2
  45. package/dist/__tests__/site-client.test.d.ts.map +0 -1
  46. package/dist/__tests__/site-client.test.js +0 -52
  47. package/dist/__tests__/site-client.test.js.map +0 -1
  48. package/dist/__tests__/user-client.test.d.ts +0 -2
  49. package/dist/__tests__/user-client.test.d.ts.map +0 -1
  50. package/dist/__tests__/user-client.test.js +0 -51
  51. package/dist/__tests__/user-client.test.js.map +0 -1
@@ -1,52 +0,0 @@
1
- import { describe, it, expect, vi, beforeEach } from 'vitest';
2
- import { KywiHttpClient } from '../http-client.js';
3
- import { createSiteClient } from '../site-client.js';
4
- const mockFetch = vi.fn();
5
- vi.stubGlobal('fetch', mockFetch);
6
- function ok(data, status = 200) {
7
- return new Response(JSON.stringify(data), {
8
- status,
9
- headers: { 'Content-Type': 'application/json' },
10
- });
11
- }
12
- function notFound() {
13
- return new Response(JSON.stringify({ error: { code: 'NOT_FOUND', message: 'Not found' } }), { status: 404, headers: { 'Content-Type': 'application/json' } });
14
- }
15
- describe('SiteClient', () => {
16
- let client;
17
- beforeEach(() => {
18
- mockFetch.mockReset();
19
- const http = new KywiHttpClient({ baseUrl: 'https://api.test/api/v1' });
20
- client = createSiteClient(http, 'default-site');
21
- });
22
- // ── getConfig ─────────────────────────────────────────────────────────
23
- it('getConfig sends correct URL with default siteId', async () => {
24
- const config = { id: 'default-site', name: 'My Site' };
25
- mockFetch.mockResolvedValue(ok({ data: config }));
26
- const result = await client.getConfig();
27
- const url = new URL(mockFetch.mock.calls[0][0]);
28
- expect(url.pathname).toBe('/api/v1/sites/default-site');
29
- expect(result).toEqual(config);
30
- });
31
- it('getConfig uses provided siteId', async () => {
32
- mockFetch.mockResolvedValue(ok({ data: { id: 'other' } }));
33
- await client.getConfig('other');
34
- const url = new URL(mockFetch.mock.calls[0][0]);
35
- expect(url.pathname).toBe('/api/v1/sites/other');
36
- });
37
- it('getConfig returns null on 404', async () => {
38
- mockFetch.mockResolvedValue(notFound());
39
- const result = await client.getConfig('missing');
40
- expect(result).toBeNull();
41
- });
42
- // ── list ──────────────────────────────────────────────────────────────
43
- it('list sends correct URL and returns array', async () => {
44
- const sites = [{ id: 's1', name: 'Site 1' }, { id: 's2', name: 'Site 2' }];
45
- mockFetch.mockResolvedValue(ok({ data: sites }));
46
- const result = await client.list();
47
- const url = new URL(mockFetch.mock.calls[0][0]);
48
- expect(url.pathname).toBe('/api/v1/sites');
49
- expect(result).toEqual(sites);
50
- });
51
- });
52
- //# sourceMappingURL=site-client.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"site-client.test.js","sourceRoot":"","sources":["../../src/__tests__/site-client.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=user-client.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-client.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/user-client.test.ts"],"names":[],"mappings":""}
@@ -1,51 +0,0 @@
1
- import { describe, it, expect, vi, beforeEach } from 'vitest';
2
- import { KywiHttpClient } from '../http-client.js';
3
- import { createUserClient } from '../user-client.js';
4
- const mockFetch = vi.fn();
5
- vi.stubGlobal('fetch', mockFetch);
6
- function ok(data, status = 200) {
7
- return new Response(JSON.stringify(data), {
8
- status,
9
- headers: { 'Content-Type': 'application/json' },
10
- });
11
- }
12
- function notFound() {
13
- return new Response(JSON.stringify({ error: { code: 'NOT_FOUND', message: 'Not found' } }), { status: 404, headers: { 'Content-Type': 'application/json' } });
14
- }
15
- describe('UserClient', () => {
16
- let client;
17
- beforeEach(() => {
18
- mockFetch.mockReset();
19
- const http = new KywiHttpClient({ baseUrl: 'https://api.test/api/v1' });
20
- client = createUserClient(http);
21
- });
22
- // ── getCurrent ────────────────────────────────────────────────────────
23
- it('getCurrent sends correct URL', async () => {
24
- const user = { id: 'u1', email: 'test@example.com' };
25
- mockFetch.mockResolvedValue(ok({ data: user }));
26
- const result = await client.getCurrent();
27
- const url = new URL(mockFetch.mock.calls[0][0]);
28
- expect(url.pathname).toBe('/api/v1/users/me');
29
- expect(result).toEqual(user);
30
- });
31
- it('getCurrent returns null on 404', async () => {
32
- mockFetch.mockResolvedValue(notFound());
33
- const result = await client.getCurrent();
34
- expect(result).toBeNull();
35
- });
36
- // ── getById ───────────────────────────────────────────────────────────
37
- it('getById sends correct URL', async () => {
38
- const user = { id: 'u2', email: 'other@example.com' };
39
- mockFetch.mockResolvedValue(ok({ data: user }));
40
- const result = await client.getById('u2');
41
- const url = new URL(mockFetch.mock.calls[0][0]);
42
- expect(url.pathname).toBe('/api/v1/users/u2');
43
- expect(result).toEqual(user);
44
- });
45
- it('getById returns null on 404', async () => {
46
- mockFetch.mockResolvedValue(notFound());
47
- const result = await client.getById('missing');
48
- expect(result).toBeNull();
49
- });
50
- });
51
- //# sourceMappingURL=user-client.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-client.test.js","sourceRoot":"","sources":["../../src/__tests__/user-client.test.ts"],"names":[],"mappings":"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"}