@oktis-works/api 0.1.3 → 0.1.6
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/index.js +10 -23
- package/dist/index.js.map +1 -1
- package/dist/middleware/auth.d.ts +2 -2
- package/dist/middleware/auth.d.ts.map +1 -1
- package/dist/middleware/auth.js +7 -4
- package/dist/middleware/auth.js.map +1 -1
- package/dist/middleware/csrf.d.ts +10 -6
- package/dist/middleware/csrf.d.ts.map +1 -1
- package/dist/middleware/csrf.js +27 -8
- package/dist/middleware/csrf.js.map +1 -1
- package/dist/routes/audit-logs/index.d.ts +1 -1
- package/dist/routes/audit-logs/index.d.ts.map +1 -1
- package/dist/routes/auth/index.d.ts +1 -1
- package/dist/routes/auth/index.d.ts.map +1 -1
- package/dist/routes/auth/index.js +81 -15
- package/dist/routes/auth/index.js.map +1 -1
- package/dist/routes/auth/me.d.ts +1 -1
- package/dist/routes/auth/me.d.ts.map +1 -1
- package/dist/routes/categories/index.d.ts +1 -1
- package/dist/routes/categories/index.d.ts.map +1 -1
- package/dist/routes/content/index.d.ts +1 -1
- package/dist/routes/content/index.d.ts.map +1 -1
- package/dist/routes/content/index.js +4 -0
- package/dist/routes/content/index.js.map +1 -1
- package/dist/routes/content-types/index.d.ts +1 -1
- package/dist/routes/content-types/index.d.ts.map +1 -1
- package/dist/routes/deployments/index.d.ts +1 -1
- package/dist/routes/deployments/index.d.ts.map +1 -1
- package/dist/routes/docs/index.d.ts +1 -1
- package/dist/routes/docs/index.d.ts.map +1 -1
- package/dist/routes/events/index.d.ts +1 -1
- package/dist/routes/events/index.d.ts.map +1 -1
- package/dist/routes/field-groups/index.d.ts +1 -1
- package/dist/routes/field-groups/index.d.ts.map +1 -1
- package/dist/routes/field-types/index.d.ts +1 -1
- package/dist/routes/field-types/index.d.ts.map +1 -1
- package/dist/routes/health/index.d.ts +1 -1
- package/dist/routes/health/index.d.ts.map +1 -1
- package/dist/routes/hooks/index.d.ts +1 -1
- package/dist/routes/hooks/index.d.ts.map +1 -1
- package/dist/routes/media/index.d.ts +1 -1
- package/dist/routes/media/index.d.ts.map +1 -1
- package/dist/routes/media/index.js +120 -18
- package/dist/routes/media/index.js.map +1 -1
- package/dist/routes/menus/index.d.ts +1 -1
- package/dist/routes/menus/index.d.ts.map +1 -1
- package/dist/routes/metrics/index.d.ts +1 -1
- package/dist/routes/metrics/index.d.ts.map +1 -1
- package/dist/routes/pages/index.d.ts +1 -1
- package/dist/routes/pages/index.d.ts.map +1 -1
- package/dist/routes/plugins/index.d.ts +1 -1
- package/dist/routes/plugins/index.d.ts.map +1 -1
- package/dist/routes/posts/index.d.ts +1 -1
- package/dist/routes/posts/index.d.ts.map +1 -1
- package/dist/routes/roles/index.d.ts +1 -1
- package/dist/routes/roles/index.d.ts.map +1 -1
- package/dist/routes/settings/index.d.ts +1 -1
- package/dist/routes/settings/index.d.ts.map +1 -1
- package/dist/routes/shared/content-collection.d.ts.map +1 -1
- package/dist/routes/shared/content-collection.js +4 -0
- package/dist/routes/shared/content-collection.js.map +1 -1
- package/dist/routes/tags/index.d.ts +1 -1
- package/dist/routes/tags/index.d.ts.map +1 -1
- package/dist/routes/taxonomies/index.d.ts +1 -1
- package/dist/routes/taxonomies/index.d.ts.map +1 -1
- package/dist/routes/tenants/index.d.ts +1 -1
- package/dist/routes/tenants/index.d.ts.map +1 -1
- package/dist/routes/themes/index.d.ts +1 -1
- package/dist/routes/themes/index.d.ts.map +1 -1
- package/dist/routes/users/index.d.ts +1 -1
- package/dist/routes/users/index.d.ts.map +1 -1
- package/dist/routes/users/index.js +94 -4
- package/dist/routes/users/index.js.map +1 -1
- package/dist/routes/webhooks/index.d.ts +1 -1
- package/dist/routes/webhooks/index.d.ts.map +1 -1
- package/dist/routes/webhooks/index.js +1 -1
- package/dist/routes/webhooks/index.js.map +1 -1
- package/dist/storage.d.ts +17 -0
- package/dist/storage.d.ts.map +1 -0
- package/dist/storage.js +95 -0
- package/dist/storage.js.map +1 -0
- package/dist/utils/csrf.d.ts +6 -0
- package/dist/utils/csrf.d.ts.map +1 -0
- package/dist/utils/csrf.js +29 -0
- package/dist/utils/csrf.js.map +1 -0
- package/package.json +8 -8
- package/dist/middleware/csrf.test.d.ts +0 -2
- package/dist/middleware/csrf.test.d.ts.map +0 -1
- package/dist/middleware/csrf.test.js +0 -94
- package/dist/middleware/csrf.test.js.map +0 -1
- package/dist/middleware/rate-limit.test.d.ts +0 -2
- package/dist/middleware/rate-limit.test.d.ts.map +0 -1
- package/dist/middleware/rate-limit.test.js +0 -58
- package/dist/middleware/rate-limit.test.js.map +0 -1
- package/dist/middleware/trace.test.d.ts +0 -2
- package/dist/middleware/trace.test.d.ts.map +0 -1
- package/dist/middleware/trace.test.js +0 -27
- package/dist/middleware/trace.test.js.map +0 -1
- package/dist/routes/metrics/index.test.d.ts +0 -2
- package/dist/routes/metrics/index.test.d.ts.map +0 -1
- package/dist/routes/metrics/index.test.js +0 -64
- package/dist/routes/metrics/index.test.js.map +0 -1
- package/dist/routes/posts/revisions.test.d.ts +0 -2
- package/dist/routes/posts/revisions.test.d.ts.map +0 -1
- package/dist/routes/posts/revisions.test.js +0 -57
- package/dist/routes/posts/revisions.test.js.map +0 -1
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
// @oktis-works/api - Revisions endpoints na collection router (posts/pages/CPTs)
|
|
2
|
-
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
3
|
-
import postsRouter from './index.js';
|
|
4
|
-
vi.mock('../../middleware/auth.js', () => ({
|
|
5
|
-
authMiddleware: async (_c, next) => next(),
|
|
6
|
-
requirePermission: () => async (_c, next) => next(),
|
|
7
|
-
}));
|
|
8
|
-
vi.mock('@oktis-works/core', () => ({
|
|
9
|
-
contentService: {
|
|
10
|
-
list: vi.fn(),
|
|
11
|
-
create: vi.fn(),
|
|
12
|
-
getById: vi.fn(async () => ({ id: 'c-1', type: 'post' })),
|
|
13
|
-
update: vi.fn(),
|
|
14
|
-
delete: vi.fn(),
|
|
15
|
-
getRevisions: vi.fn(async () => [
|
|
16
|
-
{ id: 'rev-1', version: 2, title: 'v2' },
|
|
17
|
-
{ id: 'rev-2', version: 1, title: 'v1' },
|
|
18
|
-
]),
|
|
19
|
-
restoreRevision: vi.fn(async (_id, rev) => rev === 'rev-1' ? { id: 'c-1', version: 3, title: 'v2' } : null),
|
|
20
|
-
},
|
|
21
|
-
}));
|
|
22
|
-
import { contentService } from '@oktis-works/core';
|
|
23
|
-
beforeEach(() => vi.clearAllMocks());
|
|
24
|
-
describe('GET /posts/:id/revisions', () => {
|
|
25
|
-
it('lista revisões com count', async () => {
|
|
26
|
-
const res = await postsRouter.request('/c-1/revisions');
|
|
27
|
-
const body = (await res.json());
|
|
28
|
-
expect(res.status).toBe(200);
|
|
29
|
-
expect(body.count).toBe(2);
|
|
30
|
-
expect(contentService.getRevisions).toHaveBeenCalledWith('c-1');
|
|
31
|
-
});
|
|
32
|
-
it('404 para conteúdo de outro tipo', async () => {
|
|
33
|
-
vi.mocked(contentService.getById).mockResolvedValueOnce({ id: 'c-2', type: 'page' });
|
|
34
|
-
const res = await postsRouter.request('/c-2/revisions');
|
|
35
|
-
expect(res.status).toBe(404);
|
|
36
|
-
expect(contentService.getRevisions).not.toHaveBeenCalled();
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
describe('POST /posts/:id/revisions/:revisionId/restore', () => {
|
|
40
|
-
it('restaura e retorna o conteúdo atualizado', async () => {
|
|
41
|
-
const res = await postsRouter.request('/c-1/revisions/rev-1/restore', { method: 'POST' });
|
|
42
|
-
const body = (await res.json());
|
|
43
|
-
expect(res.status).toBe(200);
|
|
44
|
-
expect(body.version).toBe(3);
|
|
45
|
-
expect(contentService.restoreRevision).toHaveBeenCalledWith('c-1', 'rev-1');
|
|
46
|
-
});
|
|
47
|
-
it('404 quando a revisão não existe', async () => {
|
|
48
|
-
const res = await postsRouter.request('/c-1/revisions/nope/restore', { method: 'POST' });
|
|
49
|
-
expect(res.status).toBe(404);
|
|
50
|
-
});
|
|
51
|
-
it('400 em erro do serviço', async () => {
|
|
52
|
-
vi.mocked(contentService.restoreRevision).mockRejectedValueOnce(new Error('db down'));
|
|
53
|
-
const res = await postsRouter.request('/c-1/revisions/rev-1/restore', { method: 'POST' });
|
|
54
|
-
expect(res.status).toBe(400);
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
//# sourceMappingURL=revisions.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"revisions.test.js","sourceRoot":"","sources":["../../../src/routes/posts/revisions.test.ts"],"names":[],"mappings":"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"}
|