@kywi-software/sdk 0.1.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/LICENSE +661 -0
- package/README.md +172 -0
- package/dist/__tests__/auth-client.test.d.ts +2 -0
- package/dist/__tests__/auth-client.test.d.ts.map +1 -0
- package/dist/__tests__/auth-client.test.js +97 -0
- package/dist/__tests__/auth-client.test.js.map +1 -0
- package/dist/__tests__/content-client.test.d.ts +2 -0
- package/dist/__tests__/content-client.test.d.ts.map +1 -0
- package/dist/__tests__/content-client.test.js +178 -0
- package/dist/__tests__/content-client.test.js.map +1 -0
- package/dist/__tests__/create-sdk.test.d.ts +2 -0
- package/dist/__tests__/create-sdk.test.d.ts.map +1 -0
- package/dist/__tests__/create-sdk.test.js +86 -0
- package/dist/__tests__/create-sdk.test.js.map +1 -0
- package/dist/__tests__/feed-client.test.d.ts +2 -0
- package/dist/__tests__/feed-client.test.d.ts.map +1 -0
- package/dist/__tests__/feed-client.test.js +81 -0
- package/dist/__tests__/feed-client.test.js.map +1 -0
- package/dist/__tests__/hooks.test.d.ts +2 -0
- package/dist/__tests__/hooks.test.d.ts.map +1 -0
- package/dist/__tests__/hooks.test.js +123 -0
- package/dist/__tests__/hooks.test.js.map +1 -0
- package/dist/__tests__/http-client.test.d.ts +2 -0
- package/dist/__tests__/http-client.test.d.ts.map +1 -0
- package/dist/__tests__/http-client.test.js +164 -0
- package/dist/__tests__/http-client.test.js.map +1 -0
- package/dist/__tests__/i18n-client.test.d.ts +2 -0
- package/dist/__tests__/i18n-client.test.d.ts.map +1 -0
- package/dist/__tests__/i18n-client.test.js +73 -0
- package/dist/__tests__/i18n-client.test.js.map +1 -0
- package/dist/__tests__/media-client.test.d.ts +2 -0
- package/dist/__tests__/media-client.test.d.ts.map +1 -0
- package/dist/__tests__/media-client.test.js +115 -0
- package/dist/__tests__/media-client.test.js.map +1 -0
- package/dist/__tests__/nav-client.test.d.ts +2 -0
- package/dist/__tests__/nav-client.test.d.ts.map +1 -0
- package/dist/__tests__/nav-client.test.js +81 -0
- package/dist/__tests__/nav-client.test.js.map +1 -0
- package/dist/__tests__/sdk-scope-additions.test.d.ts +2 -0
- package/dist/__tests__/sdk-scope-additions.test.d.ts.map +1 -0
- package/dist/__tests__/sdk-scope-additions.test.js +420 -0
- package/dist/__tests__/sdk-scope-additions.test.js.map +1 -0
- package/dist/__tests__/site-client.test.d.ts +2 -0
- package/dist/__tests__/site-client.test.d.ts.map +1 -0
- package/dist/__tests__/site-client.test.js +52 -0
- package/dist/__tests__/site-client.test.js.map +1 -0
- package/dist/__tests__/user-client.test.d.ts +2 -0
- package/dist/__tests__/user-client.test.d.ts.map +1 -0
- package/dist/__tests__/user-client.test.js +51 -0
- package/dist/__tests__/user-client.test.js.map +1 -0
- package/dist/auth-client.d.ts +10 -0
- package/dist/auth-client.d.ts.map +1 -0
- package/dist/auth-client.js +34 -0
- package/dist/auth-client.js.map +1 -0
- package/dist/category-client.d.ts +4 -0
- package/dist/category-client.d.ts.map +1 -0
- package/dist/category-client.js +36 -0
- package/dist/category-client.js.map +1 -0
- package/dist/content-client.d.ts +4 -0
- package/dist/content-client.d.ts.map +1 -0
- package/dist/content-client.js +89 -0
- package/dist/content-client.js.map +1 -0
- package/dist/create-sdk.d.ts +3 -0
- package/dist/create-sdk.d.ts.map +1 -0
- package/dist/create-sdk.js +43 -0
- package/dist/create-sdk.js.map +1 -0
- package/dist/feed-client.d.ts +4 -0
- package/dist/feed-client.d.ts.map +1 -0
- package/dist/feed-client.js +64 -0
- package/dist/feed-client.js.map +1 -0
- package/dist/form-client.d.ts +4 -0
- package/dist/form-client.d.ts.map +1 -0
- package/dist/form-client.js +17 -0
- package/dist/form-client.js.map +1 -0
- package/dist/hooks/context.d.ts +8 -0
- package/dist/hooks/context.d.ts.map +1 -0
- package/dist/hooks/context.js +15 -0
- package/dist/hooks/context.js.map +1 -0
- package/dist/hooks/index.d.ts +8 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +7 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-content.d.ts +13 -0
- package/dist/hooks/use-content.d.ts.map +1 -0
- package/dist/hooks/use-content.js +16 -0
- package/dist/hooks/use-content.js.map +1 -0
- package/dist/hooks/use-feed.d.ts +5 -0
- package/dist/hooks/use-feed.d.ts.map +1 -0
- package/dist/hooks/use-feed.js +13 -0
- package/dist/hooks/use-feed.js.map +1 -0
- package/dist/hooks/use-nav.d.ts +5 -0
- package/dist/hooks/use-nav.d.ts.map +1 -0
- package/dist/hooks/use-nav.js +12 -0
- package/dist/hooks/use-nav.js.map +1 -0
- package/dist/hooks/use-sdk-query.d.ts +8 -0
- package/dist/hooks/use-sdk-query.d.ts.map +1 -0
- package/dist/hooks/use-sdk-query.js +32 -0
- package/dist/hooks/use-sdk-query.js.map +1 -0
- package/dist/hooks-client.d.ts +4 -0
- package/dist/hooks-client.d.ts.map +1 -0
- package/dist/hooks-client.js +20 -0
- package/dist/hooks-client.js.map +1 -0
- package/dist/http-client.d.ts +14 -0
- package/dist/http-client.d.ts.map +1 -0
- package/dist/http-client.js +78 -0
- package/dist/http-client.js.map +1 -0
- package/dist/i18n-client.d.ts +3 -0
- package/dist/i18n-client.d.ts.map +1 -0
- package/dist/i18n-client.js +26 -0
- package/dist/i18n-client.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/layout-client.d.ts +4 -0
- package/dist/layout-client.d.ts.map +1 -0
- package/dist/layout-client.js +17 -0
- package/dist/layout-client.js.map +1 -0
- package/dist/media-client.d.ts +4 -0
- package/dist/media-client.d.ts.map +1 -0
- package/dist/media-client.js +36 -0
- package/dist/media-client.js.map +1 -0
- package/dist/nav-client.d.ts +4 -0
- package/dist/nav-client.d.ts.map +1 -0
- package/dist/nav-client.js +36 -0
- package/dist/nav-client.js.map +1 -0
- package/dist/search-client.d.ts +4 -0
- package/dist/search-client.d.ts.map +1 -0
- package/dist/search-client.js +17 -0
- package/dist/search-client.js.map +1 -0
- package/dist/site-client.d.ts +4 -0
- package/dist/site-client.d.ts.map +1 -0
- package/dist/site-client.js +25 -0
- package/dist/site-client.js.map +1 -0
- package/dist/tree-client.d.ts +4 -0
- package/dist/tree-client.d.ts.map +1 -0
- package/dist/tree-client.js +22 -0
- package/dist/tree-client.js.map +1 -0
- package/dist/types.d.ts +367 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +13 -0
- package/dist/types.js.map +1 -0
- package/dist/user-client.d.ts +4 -0
- package/dist/user-client.d.ts.map +1 -0
- package/dist/user-client.js +49 -0
- package/dist/user-client.js.map +1 -0
- package/dist/version-client.d.ts +4 -0
- package/dist/version-client.d.ts.map +1 -0
- package/dist/version-client.js +16 -0
- package/dist/version-client.js.map +1 -0
- package/dist/workflow-client.d.ts +4 -0
- package/dist/workflow-client.d.ts.map +1 -0
- package/dist/workflow-client.js +17 -0
- package/dist/workflow-client.js.map +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1,52 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-client.test.js","sourceRoot":"","sources":["../../src/__tests__/site-client.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;AACzB,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;AAEjC,SAAS,EAAE,CAAC,IAAa,EAAE,MAAM,GAAG,GAAG;IACrC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;QACxC,MAAM;QACN,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAChD,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,EACtE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACjE,CAAA;AACH,CAAC;AAED,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,IAAI,MAA2C,CAAA;IAE/C,UAAU,CAAC,GAAG,EAAE;QACd,SAAS,CAAC,SAAS,EAAE,CAAA;QACrB,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAA;QACvE,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;IAEF,yEAAyE;IAEzE,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QACtD,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;QAEjD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAA;QAEvC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;QACvD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;QAE1D,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAE/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAA;QAEvC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,yEAAyE;IAEzE,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,KAAK,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC1E,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QAEhD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QAElC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-client.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/user-client.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,51 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-client.test.js","sourceRoot":"","sources":["../../src/__tests__/user-client.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { KywiHttpClient } from './http-client.js';
|
|
2
|
+
import type { KywiSdkAuthScope } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* The Kywi API wraps every success body in a `{ data: … }` envelope (`jsonOk`).
|
|
5
|
+
* Every other SDK client unwraps `res.data`; the auth client must do the same so
|
|
6
|
+
* callers receive the documented `AuthResult`/message shape rather than the raw
|
|
7
|
+
* envelope (`{ data: { accessToken } }`).
|
|
8
|
+
*/
|
|
9
|
+
export declare function createAuthClient(http: KywiHttpClient): KywiSdkAuthScope;
|
|
10
|
+
//# sourceMappingURL=auth-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-client.d.ts","sourceRoot":"","sources":["../src/auth-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAA+B,MAAM,YAAY,CAAA;AAE/E;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CA0BvE"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Kywi API wraps every success body in a `{ data: … }` envelope (`jsonOk`).
|
|
3
|
+
* Every other SDK client unwraps `res.data`; the auth client must do the same so
|
|
4
|
+
* callers receive the documented `AuthResult`/message shape rather than the raw
|
|
5
|
+
* envelope (`{ data: { accessToken } }`).
|
|
6
|
+
*/
|
|
7
|
+
export function createAuthClient(http) {
|
|
8
|
+
return {
|
|
9
|
+
async login(email, password) {
|
|
10
|
+
const res = await http.post('/auth/login', { email, password });
|
|
11
|
+
return res.data;
|
|
12
|
+
},
|
|
13
|
+
async register(data) {
|
|
14
|
+
const res = await http.post('/auth/register', data);
|
|
15
|
+
return res.data;
|
|
16
|
+
},
|
|
17
|
+
async refresh(refreshToken) {
|
|
18
|
+
const res = await http.post('/auth/refresh', { refreshToken });
|
|
19
|
+
return res.data;
|
|
20
|
+
},
|
|
21
|
+
async forgotPassword(email) {
|
|
22
|
+
const res = await http.post('/auth/forgot-password', { email });
|
|
23
|
+
return res.data;
|
|
24
|
+
},
|
|
25
|
+
async resetPassword(token, email, newPassword) {
|
|
26
|
+
const res = await http.post('/auth/reset-password', { token, email, newPassword });
|
|
27
|
+
return res.data;
|
|
28
|
+
},
|
|
29
|
+
async logout() {
|
|
30
|
+
await http.post('/auth/logout', {});
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=auth-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-client.js","sourceRoot":"","sources":["../src/auth-client.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAoB;IACnD,OAAO;QACL,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ;YACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAA8B,aAAa,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC5F,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,IAAI;YACjB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAA8B,gBAAgB,EAAE,IAAI,CAAC,CAAA;YAChF,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,YAAY;YACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAA2C,eAAe,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;YACxG,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,cAAc,CAAC,KAAK;YACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAuC,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;YACrG,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW;YAC3C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAuC,sBAAsB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAA;YACxH,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,MAAM;YACV,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;QACrC,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-client.d.ts","sourceRoot":"","sources":["../src/category-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAA+C,MAAM,YAAY,CAAA;AAEnG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,GAAG,oBAAoB,CAoC/E"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export function createCategoryClient(http) {
|
|
2
|
+
return {
|
|
3
|
+
async list(opts) {
|
|
4
|
+
const params = {};
|
|
5
|
+
if (opts?.siteId)
|
|
6
|
+
params.siteId = opts.siteId;
|
|
7
|
+
if (opts?.parentId)
|
|
8
|
+
params.parentId = opts.parentId;
|
|
9
|
+
const res = await http.get('/categories', params);
|
|
10
|
+
return res.data;
|
|
11
|
+
},
|
|
12
|
+
async getById(id) {
|
|
13
|
+
const res = await http.get(`/categories/${id}`);
|
|
14
|
+
return res.data;
|
|
15
|
+
},
|
|
16
|
+
async create(data) {
|
|
17
|
+
const res = await http.post('/categories', data);
|
|
18
|
+
return res.data;
|
|
19
|
+
},
|
|
20
|
+
async update(id, data) {
|
|
21
|
+
const res = await http.put(`/categories/${id}`, data);
|
|
22
|
+
return res.data;
|
|
23
|
+
},
|
|
24
|
+
async delete(id) {
|
|
25
|
+
await http.delete(`/categories/${id}`);
|
|
26
|
+
},
|
|
27
|
+
async tree(siteId) {
|
|
28
|
+
const params = {};
|
|
29
|
+
if (siteId)
|
|
30
|
+
params.siteId = siteId;
|
|
31
|
+
const res = await http.get('/categories/tree', params);
|
|
32
|
+
return res.data;
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=category-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-client.js","sourceRoot":"","sources":["../src/category-client.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CAAC,IAAoB;IACvD,OAAO;QACL,KAAK,CAAC,IAAI,CAAC,IAAI;YACb,MAAM,MAAM,GAA2B,EAAE,CAAA;YACzC,IAAI,IAAI,EAAE,MAAM;gBAAE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC7C,IAAI,IAAI,EAAE,QAAQ;gBAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YACnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAA8B,aAAa,EAAE,MAAM,CAAC,CAAA;YAC9E,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,EAAE;YACd,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAA4B,eAAe,EAAE,EAAE,CAAC,CAAA;YAC1E,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,IAAI;YACf,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAA4B,aAAa,EAAE,IAAI,CAAC,CAAA;YAC3E,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI;YACnB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAA4B,eAAe,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;YAChF,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAE;YACb,MAAM,IAAI,CAAC,MAAM,CAAU,eAAe,EAAE,EAAE,CAAC,CAAA;QACjD,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,MAAM;YACf,MAAM,MAAM,GAA2B,EAAE,CAAA;YACzC,IAAI,MAAM;gBAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;YAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAsC,kBAAkB,EAAE,MAAM,CAAC,CAAA;YAC3F,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-client.d.ts","sourceRoot":"","sources":["../src/content-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAMV,mBAAmB,EACpB,MAAM,YAAY,CAAA;AASnB,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,GACpB,mBAAmB,CA+FrB"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
function isError(res) {
|
|
2
|
+
return typeof res === 'object' && res !== null && 'error' in res;
|
|
3
|
+
}
|
|
4
|
+
export function createContentClient(http, defaultSiteId) {
|
|
5
|
+
return {
|
|
6
|
+
async getBySlug(slug, siteId) {
|
|
7
|
+
const sid = siteId ?? defaultSiteId;
|
|
8
|
+
const params = {};
|
|
9
|
+
if (sid)
|
|
10
|
+
params.siteId = sid;
|
|
11
|
+
const res = await http.get(`/content/slug/${slug}`, params);
|
|
12
|
+
if (isError(res))
|
|
13
|
+
return null;
|
|
14
|
+
return res.data;
|
|
15
|
+
},
|
|
16
|
+
async getById(id) {
|
|
17
|
+
const res = await http.get(`/content/by-id/${id}`);
|
|
18
|
+
if (isError(res))
|
|
19
|
+
return null;
|
|
20
|
+
return res.data;
|
|
21
|
+
},
|
|
22
|
+
async getChildren(parentId) {
|
|
23
|
+
const res = await http.get(`/content/by-id/${parentId}/children`);
|
|
24
|
+
if (isError(res))
|
|
25
|
+
return [];
|
|
26
|
+
return res.data;
|
|
27
|
+
},
|
|
28
|
+
async list(contentTypeName, siteId, opts) {
|
|
29
|
+
const sid = siteId ?? defaultSiteId;
|
|
30
|
+
const params = {};
|
|
31
|
+
if (sid)
|
|
32
|
+
params.siteId = sid;
|
|
33
|
+
if (opts?.page !== undefined)
|
|
34
|
+
params.page = String(opts.page);
|
|
35
|
+
if (opts?.limit !== undefined)
|
|
36
|
+
params.limit = String(opts.limit);
|
|
37
|
+
if (opts?.sort)
|
|
38
|
+
params.sort = opts.sort;
|
|
39
|
+
if (opts?.dir)
|
|
40
|
+
params.dir = opts.dir;
|
|
41
|
+
if (opts?.status)
|
|
42
|
+
params.status = opts.status;
|
|
43
|
+
if (opts?.search)
|
|
44
|
+
params.search = opts.search;
|
|
45
|
+
if (opts?.parentId)
|
|
46
|
+
params.parentId = opts.parentId;
|
|
47
|
+
const res = await http.get(`/content/${contentTypeName}`, params);
|
|
48
|
+
if (isError(res))
|
|
49
|
+
return { rows: [], total: 0 };
|
|
50
|
+
return { rows: res.data, total: res.meta.total };
|
|
51
|
+
},
|
|
52
|
+
async create(contentTypeName, data, siteId) {
|
|
53
|
+
const sid = siteId ?? defaultSiteId;
|
|
54
|
+
// The server resolves siteId from the query string (or request domain) and
|
|
55
|
+
// its create schema is `.strict()`, so an in-body `siteId` is rejected with
|
|
56
|
+
// a 400. Pass it as a query param instead — consistent with list()/getBySlug().
|
|
57
|
+
const path = sid
|
|
58
|
+
? `/content/${contentTypeName}?siteId=${encodeURIComponent(sid)}`
|
|
59
|
+
: `/content/${contentTypeName}`;
|
|
60
|
+
const res = await http.post(path, { ...data });
|
|
61
|
+
return res.data;
|
|
62
|
+
},
|
|
63
|
+
async update(contentTypeName, id, data) {
|
|
64
|
+
const res = await http.put(`/content/${contentTypeName}/${id}`, data);
|
|
65
|
+
if (isError(res))
|
|
66
|
+
return null;
|
|
67
|
+
return res.data;
|
|
68
|
+
},
|
|
69
|
+
async delete(id) {
|
|
70
|
+
const res = await http.delete(`/content/by-id/${id}`);
|
|
71
|
+
if (isError(res))
|
|
72
|
+
return false;
|
|
73
|
+
return res.data.deleted;
|
|
74
|
+
},
|
|
75
|
+
async publish(id) {
|
|
76
|
+
const res = await http.post(`/content/by-id/${id}/publish`);
|
|
77
|
+
if (isError(res))
|
|
78
|
+
return null;
|
|
79
|
+
return res.data;
|
|
80
|
+
},
|
|
81
|
+
async unpublish(id) {
|
|
82
|
+
const res = await http.post(`/content/by-id/${id}/unpublish`);
|
|
83
|
+
if (isError(res))
|
|
84
|
+
return null;
|
|
85
|
+
return res.data;
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=content-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-client.js","sourceRoot":"","sources":["../src/content-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-sdk.d.ts","sourceRoot":"","sources":["../src/create-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAmB7D,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CA2BjE"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { KywiHttpClient } from './http-client.js';
|
|
2
|
+
import { createAuthClient } from './auth-client.js';
|
|
3
|
+
import { createContentClient } from './content-client.js';
|
|
4
|
+
import { createNavClient } from './nav-client.js';
|
|
5
|
+
import { createSiteClient } from './site-client.js';
|
|
6
|
+
import { createUserClient } from './user-client.js';
|
|
7
|
+
import { createFeedClient } from './feed-client.js';
|
|
8
|
+
import { createI18nClient } from './i18n-client.js';
|
|
9
|
+
import { createMediaClient } from './media-client.js';
|
|
10
|
+
import { createLayoutClient } from './layout-client.js';
|
|
11
|
+
import { createSearchClient } from './search-client.js';
|
|
12
|
+
import { createVersionClient } from './version-client.js';
|
|
13
|
+
import { createWorkflowClient } from './workflow-client.js';
|
|
14
|
+
import { createCategoryClient } from './category-client.js';
|
|
15
|
+
import { createFormClient } from './form-client.js';
|
|
16
|
+
import { createTreeClient } from './tree-client.js';
|
|
17
|
+
import { createHooksClient } from './hooks-client.js';
|
|
18
|
+
export function createKywiSdk(config) {
|
|
19
|
+
const http = new KywiHttpClient(config);
|
|
20
|
+
const defaultSiteId = config.defaultSiteId ?? '';
|
|
21
|
+
const scope = {
|
|
22
|
+
auth: createAuthClient(http),
|
|
23
|
+
content: createContentClient(http, defaultSiteId),
|
|
24
|
+
nav: createNavClient(http, defaultSiteId),
|
|
25
|
+
site: createSiteClient(http, defaultSiteId),
|
|
26
|
+
user: createUserClient(http),
|
|
27
|
+
feeds: createFeedClient(http, defaultSiteId),
|
|
28
|
+
media: createMediaClient(http),
|
|
29
|
+
layout: createLayoutClient(http),
|
|
30
|
+
search: createSearchClient(http),
|
|
31
|
+
versions: createVersionClient(http),
|
|
32
|
+
workflow: createWorkflowClient(http),
|
|
33
|
+
categories: createCategoryClient(http),
|
|
34
|
+
forms: createFormClient(http),
|
|
35
|
+
tree: createTreeClient(http),
|
|
36
|
+
hooks: createHooksClient(http),
|
|
37
|
+
};
|
|
38
|
+
if (config.bundles && config.locale) {
|
|
39
|
+
scope.i18n = createI18nClient(config.bundles, config.locale);
|
|
40
|
+
}
|
|
41
|
+
return scope;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=create-sdk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-sdk.js","sourceRoot":"","sources":["../src/create-sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,UAAU,aAAa,CAAC,MAAqB;IACjD,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;IACvC,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,EAAE,CAAA;IAEhD,MAAM,KAAK,GAAiB;QAC1B,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;QAC5B,OAAO,EAAE,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC;QACjD,GAAG,EAAE,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC;QACzC,IAAI,EAAE,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC;QAC3C,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;QAC5B,KAAK,EAAE,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC;QAC5C,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC;QAC9B,MAAM,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAChC,MAAM,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAChC,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC;QACnC,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC;QACpC,UAAU,EAAE,oBAAoB,CAAC,IAAI,CAAC;QACtC,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC;QAC7B,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;QAC5B,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC;KAC/B,CAAA;IAED,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feed-client.d.ts","sourceRoot":"","sources":["../src/feed-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAMV,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAYnB,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,GACpB,gBAAgB,CA6DlB"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
function toFeedResult(res) {
|
|
2
|
+
return {
|
|
3
|
+
items: res.data,
|
|
4
|
+
total: res.meta.total,
|
|
5
|
+
page: res.meta.page,
|
|
6
|
+
pageSize: res.meta.pageSize,
|
|
7
|
+
totalPages: res.meta.totalPages,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export function createFeedClient(http, defaultSiteId) {
|
|
11
|
+
return {
|
|
12
|
+
async query(feedQuery) {
|
|
13
|
+
const body = { ...feedQuery };
|
|
14
|
+
if (!body.siteId) {
|
|
15
|
+
body.siteId = defaultSiteId;
|
|
16
|
+
}
|
|
17
|
+
const res = await http.post('/feeds/query', body);
|
|
18
|
+
return toFeedResult(res);
|
|
19
|
+
},
|
|
20
|
+
async get(slug) {
|
|
21
|
+
const res = await http.get(`/feeds/${slug}`);
|
|
22
|
+
return toFeedResult(res);
|
|
23
|
+
},
|
|
24
|
+
async list(opts) {
|
|
25
|
+
const params = {};
|
|
26
|
+
const siteId = opts?.siteId ?? defaultSiteId;
|
|
27
|
+
if (siteId)
|
|
28
|
+
params.siteId = siteId;
|
|
29
|
+
const res = await http.get('/feeds', params);
|
|
30
|
+
return res;
|
|
31
|
+
},
|
|
32
|
+
async create(data) {
|
|
33
|
+
const body = {
|
|
34
|
+
name: data.name,
|
|
35
|
+
slug: data.slug,
|
|
36
|
+
siteId: data.siteId ?? defaultSiteId,
|
|
37
|
+
query: data.query,
|
|
38
|
+
...(data.cacheTtl !== undefined ? { cacheTtl: data.cacheTtl } : {}),
|
|
39
|
+
};
|
|
40
|
+
const res = await http.post('/feeds', body);
|
|
41
|
+
return res.data;
|
|
42
|
+
},
|
|
43
|
+
async update(slug, data) {
|
|
44
|
+
const params = {};
|
|
45
|
+
const siteId = data.siteId ?? defaultSiteId;
|
|
46
|
+
if (siteId)
|
|
47
|
+
params.siteId = siteId;
|
|
48
|
+
const { siteId: _siteId, ...updateBody } = data;
|
|
49
|
+
const url = params.siteId
|
|
50
|
+
? `/feeds/${slug}?siteId=${encodeURIComponent(params.siteId)}`
|
|
51
|
+
: `/feeds/${slug}`;
|
|
52
|
+
const res = await http.put(url, updateBody);
|
|
53
|
+
return res.data;
|
|
54
|
+
},
|
|
55
|
+
async delete(slug, opts) {
|
|
56
|
+
const siteId = opts?.siteId ?? defaultSiteId;
|
|
57
|
+
const url = siteId
|
|
58
|
+
? `/feeds/${slug}?siteId=${encodeURIComponent(siteId)}`
|
|
59
|
+
: `/feeds/${slug}`;
|
|
60
|
+
await http.delete(url);
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=feed-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feed-client.js","sourceRoot":"","sources":["../src/feed-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-client.d.ts","sourceRoot":"","sources":["../src/form-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAmC,MAAM,YAAY,CAAA;AAEnF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAiBvE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function createFormClient(http) {
|
|
2
|
+
return {
|
|
3
|
+
async submit(slug, data) {
|
|
4
|
+
const res = await http.post(`/forms/${slug}/submit`, data);
|
|
5
|
+
return res.data;
|
|
6
|
+
},
|
|
7
|
+
async listSubmissions(slug) {
|
|
8
|
+
const res = await http.get(`/forms/${slug}/submissions`);
|
|
9
|
+
return res.data;
|
|
10
|
+
},
|
|
11
|
+
async getCsrfToken(slug) {
|
|
12
|
+
const res = await http.get(`/forms/${slug}/csrf`);
|
|
13
|
+
return res.data;
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=form-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-client.js","sourceRoot":"","sources":["../src/form-client.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAAC,IAAoB;IACnD,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI;YACrB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkC,UAAU,IAAI,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3F,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,eAAe,CAAC,IAAI;YACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAoC,UAAU,IAAI,cAAc,CAAC,CAAA;YAC3F,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,IAAI;YACrB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAqC,UAAU,IAAI,OAAO,CAAC,CAAA;YACrF,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { KywiSdkScope } from '../types.js';
|
|
2
|
+
export interface KywiSdkProviderProps {
|
|
3
|
+
sdk: KywiSdkScope;
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
}
|
|
6
|
+
export declare function KywiSdkProvider({ sdk, children }: KywiSdkProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function useKywiSdk(): KywiSdkScope;
|
|
8
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/hooks/context.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAI/C,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,YAAY,CAAA;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B;AAED,wBAAgB,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,oBAAoB,2CAMtE;AAED,wBAAgB,UAAU,IAAI,YAAY,CAMzC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { createContext, useContext } from 'react';
|
|
4
|
+
const KywiSdkContext = createContext(null);
|
|
5
|
+
export function KywiSdkProvider({ sdk, children }) {
|
|
6
|
+
return (_jsx(KywiSdkContext, { value: sdk, children: children }));
|
|
7
|
+
}
|
|
8
|
+
export function useKywiSdk() {
|
|
9
|
+
const ctx = useContext(KywiSdkContext);
|
|
10
|
+
if (!ctx) {
|
|
11
|
+
throw new Error('useKywiSdk must be used within a KywiSdkProvider');
|
|
12
|
+
}
|
|
13
|
+
return ctx;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/hooks/context.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAGjD,MAAM,cAAc,GAAG,aAAa,CAAsB,IAAI,CAAC,CAAA;AAO/D,MAAM,UAAU,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAwB;IACrE,OAAO,CACL,KAAC,cAAc,IAAC,KAAK,EAAE,GAAG,YACvB,QAAQ,GACM,CAClB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACrE,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { KywiSdkProvider, useKywiSdk } from './context.js';
|
|
2
|
+
export type { KywiSdkProviderProps } from './context.js';
|
|
3
|
+
export { useSdkQuery } from './use-sdk-query.js';
|
|
4
|
+
export type { SdkQueryResult } from './use-sdk-query.js';
|
|
5
|
+
export { useKywiSdkContent, useKywiSdkContentById, useKywiSdkContentList } from './use-content.js';
|
|
6
|
+
export { useKywiSdkNav, useKywiSdkBreadcrumbs } from './use-nav.js';
|
|
7
|
+
export { useKywiSdkFeed, useKywiSdkFeedQuery } from './use-feed.js';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC1D,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAClG,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// @kywi-software/sdk hooks public API
|
|
2
|
+
export { KywiSdkProvider, useKywiSdk } from './context.js';
|
|
3
|
+
export { useSdkQuery } from './use-sdk-query.js';
|
|
4
|
+
export { useKywiSdkContent, useKywiSdkContentById, useKywiSdkContentList } from './use-content.js';
|
|
5
|
+
export { useKywiSdkNav, useKywiSdkBreadcrumbs } from './use-nav.js';
|
|
6
|
+
export { useKywiSdkFeed, useKywiSdkFeedQuery } from './use-feed.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE1D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEhD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAClG,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ContentItem, ContentListResult } from '../types.js';
|
|
2
|
+
import type { SdkQueryResult } from './use-sdk-query.js';
|
|
3
|
+
export declare function useKywiSdkContent(slug: string, siteId?: string): SdkQueryResult<ContentItem | null>;
|
|
4
|
+
export declare function useKywiSdkContentById(id: string): SdkQueryResult<ContentItem | null>;
|
|
5
|
+
export declare function useKywiSdkContentList(contentTypeName: string, opts?: {
|
|
6
|
+
siteId?: string;
|
|
7
|
+
page?: number;
|
|
8
|
+
limit?: number;
|
|
9
|
+
sort?: string;
|
|
10
|
+
dir?: 'asc' | 'desc';
|
|
11
|
+
status?: string;
|
|
12
|
+
}): SdkQueryResult<ContentListResult>;
|
|
13
|
+
//# sourceMappingURL=use-content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-content.d.ts","sourceRoot":"","sources":["../../src/hooks/use-content.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAExD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,CAGnG;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,CAGpF;AAED,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,MAAM,EACvB,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9G,cAAc,CAAC,iBAAiB,CAAC,CAMnC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useKywiSdk } from './context.js';
|
|
3
|
+
import { useSdkQuery } from './use-sdk-query.js';
|
|
4
|
+
export function useKywiSdkContent(slug, siteId) {
|
|
5
|
+
const sdk = useKywiSdk();
|
|
6
|
+
return useSdkQuery(() => sdk.content.getBySlug(slug, siteId), [slug, siteId]);
|
|
7
|
+
}
|
|
8
|
+
export function useKywiSdkContentById(id) {
|
|
9
|
+
const sdk = useKywiSdk();
|
|
10
|
+
return useSdkQuery(() => sdk.content.getById(id), [id]);
|
|
11
|
+
}
|
|
12
|
+
export function useKywiSdkContentList(contentTypeName, opts) {
|
|
13
|
+
const sdk = useKywiSdk();
|
|
14
|
+
return useSdkQuery(() => sdk.content.list(contentTypeName, opts?.siteId, opts), [contentTypeName, opts?.siteId, opts?.page, opts?.limit, opts?.sort, opts?.dir, opts?.status]);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=use-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-content.js","sourceRoot":"","sources":["../../src/hooks/use-content.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAIhD,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,MAAe;IAC7D,MAAM,GAAG,GAAG,UAAU,EAAE,CAAA;IACxB,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,EAAU;IAC9C,MAAM,GAAG,GAAG,UAAU,EAAE,CAAA;IACxB,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,eAAuB,EACvB,IAA+G;IAE/G,MAAM,GAAG,GAAG,UAAU,EAAE,CAAA;IACxB,OAAO,WAAW,CAChB,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAC3D,CAAC,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAC9F,CAAA;AACH,CAAC"}
|