@raketa-cloud/admin 1.8.10 → 1.8.12
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/application.css +109 -0
- package/package.json +4 -2
- package/src/HonoAdapter.js +41 -18
- package/src/Logger.js +7 -8
- package/src/RaketaContext.js +1 -0
- package/src/cipher.js +2 -2
- package/src/cloud/ContentTasks.js +31 -0
- package/src/cloud/RaketaClient.js +1 -1
- package/src/cloud/Redirects.js +2 -2
- package/src/cloud/ResourceChanges.js +1 -1
- package/src/cloud/ResourceRevisions.js +2 -2
- package/src/cloud/Resources.js +28 -12
- package/src/cloud/Tags.js +4 -4
- package/src/cloud/documents/common.js +16 -0
- package/src/cloud/documents/contentTasksDocuments.js +59 -0
- package/src/cloud/documents/resourcesDocuments.js +12 -0
- package/src/filters.js +3 -3
- package/src/handlers/TagsHandler.js +2 -2
- package/src/handlers/_shared/getResourceUpdateDestination.js +1 -1
- package/src/handlers/categories/index.js +3 -3
- package/src/handlers/content_tasks/ContentTasksHandler.js +32 -0
- package/src/handlers/resource_revisions/LocksHandler.js +4 -1
- package/src/handlers/resources/ClonesHandler.js +1 -3
- package/src/handlers/resources/ExportsHandler.js +1 -5
- package/src/handlers/resources/ResourcesHandler.js +1 -1
- package/src/handlers/resources/TranslationsHandler.js +28 -19
- package/src/handlers/resources/URLsHandler.js +3 -1
- package/src/helpers/AuthHelper.js +1 -1
- package/src/helpers/FormBuilder.js +14 -14
- package/src/helpers/Pagination.js +5 -5
- package/src/helpers/historyUtils.js +3 -3
- package/src/helpers/utils.js +6 -1
- package/src/index.js +1 -0
- package/src/routeMember.js +9 -4
- package/src/routeNestedCollection.js +14 -29
- package/src/routeNestedMember.js +17 -6
- package/src/routeStandard.js +5 -1
- package/src/setupAuthentication.js +1 -1
- package/src/setupCloud.js +5 -0
- package/src/tests/Adapter.test.js +2 -2
- package/src/tests/HonoAdapter.coverage.test.js +44 -22
- package/src/tests/HonoAdapter.filter.test.js +28 -18
- package/src/tests/HonoAdapter.test.js +3 -3
- package/src/tests/RaketaClient.test.js +427 -413
- package/src/tests/RaketaContext.test.js +1 -1
- package/src/tests/buildResourcePath.test.js +1 -1
- package/src/tests/cipher.test.js +16 -16
- package/src/tests/filters.test.js +24 -24
- package/src/tests/handlers/RedirectsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/TagsHandler.test/create.test.js +2 -2
- package/src/tests/handlers/TagsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/TagsHandler.test/update.test.js +2 -2
- package/src/tests/handlers/categories/create.test.js +2 -2
- package/src/tests/handlers/categories/destroy.test.js +1 -1
- package/src/tests/handlers/content_tasks/ContentTasksHandler.test/index.test.js +161 -0
- package/src/tests/handlers/resource_revisions/CancelSchedulesHandler.test/create.test.js +2 -2
- package/src/tests/handlers/resource_revisions/CodeHandler.test/update.test.js +1 -1
- package/src/tests/handlers/resource_revisions/GeneralHandler.test/update.test.js +1 -1
- package/src/tests/handlers/resource_revisions/LocksHandler.test/create.test.js +5 -5
- package/src/tests/handlers/resource_revisions/LocksHandler.test/create_form.test.js +6 -2
- package/src/tests/handlers/resource_revisions/MetaHandler.test/update.test.js +1 -1
- package/src/tests/handlers/resource_revisions/PublishesHandler.test/create.test.js +5 -5
- package/src/tests/handlers/resource_revisions/ResourceRevisionsHandler.test/create.test.js +2 -2
- package/src/tests/handlers/resource_revisions/ResourceRevisionsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/resource_revisions/RevertsHandler.test/create.test.js +18 -3
- package/src/tests/handlers/resource_revisions/TagHandler.test/update.test.js +1 -1
- package/src/tests/handlers/resource_revisions/UnlocksHandler.test/create.test.js +2 -2
- package/src/tests/handlers/resource_revisions/VisualHandler.test/update.test.js +1 -1
- package/src/tests/handlers/resource_revisions/WidgetHandler.test/update.test.js +2 -2
- package/src/tests/handlers/resources/ChangeHandler.test/show.test.js +7 -2
- package/src/tests/handlers/resources/ClonesHandler.test/create.test.js +1 -3
- package/src/tests/handlers/resources/ExportsHandler.test/index.test.js +8 -8
- package/src/tests/handlers/resources/HistoryHandler.test/index.test.js +1 -1
- package/src/tests/handlers/resources/ResourcesAPIHandler.test/index.test.js +1 -5
- package/src/tests/handlers/resources/ResourcesHandler.test/create.test.js +2 -2
- package/src/tests/handlers/resources/ResourcesHandler.test/show.test.js +1 -1
- package/src/tests/handlers/resources/TranslationsHandler.test/create.test.js +24 -14
- package/src/tests/handlers/resources/TranslationsHandler.test/create_form.test.js +1 -1
- package/src/tests/handlers/resources/TranslationsHandler.test/index.test.js +3 -3
- package/src/tests/handlers/resources/URLsHandler.test/create.test.js +4 -6
- package/src/tests/helpers/AuthHelper.test.js +11 -12
- package/src/tests/helpers/CSVExportHelper.test.js +3 -3
- package/src/tests/helpers/FormBuilder.test.js +21 -21
- package/src/tests/helpers/HTMLBuilder.test.js +4 -4
- package/src/tests/helpers/Inflector.test.js +1 -1
- package/src/tests/helpers/Pagination.test.js +1 -1
- package/src/tests/helpers/utils.test.js +46 -0
- package/src/tests/routeCategoriesModule.test.js +10 -5
- package/src/tests/routeCollection.test.js +1 -1
- package/src/tests/routeMember.test.js +2 -2
- package/src/tests/routeNestedCollection.test.js +3 -3
- package/src/tests/routeNestedMember.test.js +3 -3
- package/src/tests/routeResourceModule.test.js +15 -16
- package/src/tests/routeSettings.test.js +3 -3
- package/src/tests/routeStandard.test.js +27 -9
- package/src/tests/setupAuthentication.test.js +9 -6
- package/src/tests/support/factory.js +33 -0
- package/src/tests/utils.test.js +19 -19
- package/src/views/content_tasks/index.ejs +191 -0
- package/src/views/layouts/application.ejs +2 -1
- package/src/views/resources/_shared/_toolbar.ejs +33 -2
- package/src/views/resources/_shared/_translations_strip.ejs +71 -0
- package/src/views/resources/index.ejs +5 -0
- package/src/views/resources/show.ejs +1 -29
- package/src/views/resources/translations/create_form.ejs +13 -0
package/src/routeStandard.js
CHANGED
|
@@ -5,6 +5,7 @@ import TagsHandler from "./handlers/TagsHandler";
|
|
|
5
5
|
import routeCollection from "./routeCollection";
|
|
6
6
|
import routeResourceModule from "./routeResourceModule";
|
|
7
7
|
import routeSettings from "./routeSettings";
|
|
8
|
+
import ContentTasksHandler from "./handlers/content_tasks/ContentTasksHandler";
|
|
8
9
|
|
|
9
10
|
function routeStandard(adapter) {
|
|
10
11
|
adapter.routeCollection(
|
|
@@ -25,10 +26,13 @@ function routeStandard(adapter) {
|
|
|
25
26
|
|
|
26
27
|
routeCollection(adapter, "redirects", RedirectsHandler);
|
|
27
28
|
routeCollection(adapter, "tags", TagsHandler);
|
|
29
|
+
routeCollection(adapter, "content_tasks", ContentTasksHandler);
|
|
28
30
|
routeCollection(adapter, "api/tags", TagsAPIHandler);
|
|
29
31
|
routeSettings(adapter);
|
|
30
32
|
routeResourceModule(adapter, "page", "pages", { dateFields: [] });
|
|
31
|
-
routeResourceModule(adapter, "article", "articles", {
|
|
33
|
+
routeResourceModule(adapter, "article", "articles", {
|
|
34
|
+
dateFields: ["publish_at"],
|
|
35
|
+
});
|
|
32
36
|
routeResourceModule(adapter, "event", "events", {
|
|
33
37
|
dateFields: ["publish_at", "starts_at", "ends_at"],
|
|
34
38
|
});
|
package/src/setupCloud.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import Categories from "./cloud/Categories";
|
|
2
|
+
import ContentTasks from "./cloud/ContentTasks";
|
|
2
3
|
import Redirects from "./cloud/Redirects";
|
|
3
4
|
import ResourceChanges from "./cloud/ResourceChanges";
|
|
4
5
|
import ResourceRevisions from "./cloud/ResourceRevisions";
|
|
@@ -25,6 +26,10 @@ function setupCloud(ctx, getConfig) {
|
|
|
25
26
|
ctx.authentication.token,
|
|
26
27
|
);
|
|
27
28
|
ctx.client.categories = new Categories(getConfig, ctx.authentication.token);
|
|
29
|
+
ctx.client.contentTasks = new ContentTasks(
|
|
30
|
+
getConfig,
|
|
31
|
+
ctx.authentication.token,
|
|
32
|
+
);
|
|
28
33
|
}
|
|
29
34
|
|
|
30
35
|
export default setupCloud;
|
|
@@ -15,7 +15,7 @@ describe("HonoAdapter parseFormBody", () => {
|
|
|
15
15
|
"order[items][2][name]": "A t-shirt",
|
|
16
16
|
"order[items][2][price]": 20,
|
|
17
17
|
"order[items][2][qty]": 1,
|
|
18
|
-
})
|
|
18
|
+
}),
|
|
19
19
|
).toEqual({
|
|
20
20
|
order: {
|
|
21
21
|
email: "john@example.com",
|
|
@@ -36,4 +36,4 @@ describe("HonoAdapter parseFormBody", () => {
|
|
|
36
36
|
},
|
|
37
37
|
});
|
|
38
38
|
});
|
|
39
|
-
});
|
|
39
|
+
});
|
|
@@ -60,7 +60,7 @@ describe("HonoAdapter constructor", () => {
|
|
|
60
60
|
expect(router.get).toHaveBeenCalledWith("/", expect.any(Function));
|
|
61
61
|
|
|
62
62
|
const redirectHandler = router.get.mock.calls.find(
|
|
63
|
-
([path]) => path === "/"
|
|
63
|
+
([path]) => path === "/",
|
|
64
64
|
)[1];
|
|
65
65
|
const c = { redirect: jest.fn().mockReturnValue("redirected") };
|
|
66
66
|
expect(redirectHandler(c)).toBe("redirected");
|
|
@@ -139,7 +139,7 @@ describe("HonoAdapter.renderPartial", () => {
|
|
|
139
139
|
expect(ejs.render).toHaveBeenCalledWith(
|
|
140
140
|
"<%= foo %>",
|
|
141
141
|
expect.objectContaining({ foo: "bar", extra: 1 }),
|
|
142
|
-
expect.objectContaining({ filename: expect.any(String) })
|
|
142
|
+
expect.objectContaining({ filename: expect.any(String) }),
|
|
143
143
|
);
|
|
144
144
|
});
|
|
145
145
|
|
|
@@ -228,7 +228,7 @@ describe("HonoAdapter.renderLayout", () => {
|
|
|
228
228
|
expect(result).toBe("<html>ok</html>");
|
|
229
229
|
expect(ejs.renderFile).toHaveBeenCalledWith(
|
|
230
230
|
expect.stringContaining("/views/layouts/application.ejs"),
|
|
231
|
-
{ foo: "bar", body: "<p>body</p>" }
|
|
231
|
+
{ foo: "bar", body: "<p>body</p>" },
|
|
232
232
|
);
|
|
233
233
|
});
|
|
234
234
|
});
|
|
@@ -291,7 +291,13 @@ describe("HonoAdapter.createContext", () => {
|
|
|
291
291
|
const adapter = new HonoAdapter(makeRouter(), makeConfig());
|
|
292
292
|
const routerCtx = makeRouterCtx();
|
|
293
293
|
|
|
294
|
-
const ctx = await adapter.createContext(
|
|
294
|
+
const ctx = await adapter.createContext(
|
|
295
|
+
routerCtx,
|
|
296
|
+
() => {},
|
|
297
|
+
"GET",
|
|
298
|
+
"pages",
|
|
299
|
+
"index",
|
|
300
|
+
);
|
|
295
301
|
|
|
296
302
|
expect(ctx).toBeInstanceOf(RaketaContext);
|
|
297
303
|
expect(ctx.body).toEqual({ foo: "bar" });
|
|
@@ -307,7 +313,13 @@ describe("HonoAdapter.createContext", () => {
|
|
|
307
313
|
},
|
|
308
314
|
});
|
|
309
315
|
|
|
310
|
-
const ctx = await adapter.createContext(
|
|
316
|
+
const ctx = await adapter.createContext(
|
|
317
|
+
routerCtx,
|
|
318
|
+
() => {},
|
|
319
|
+
"GET",
|
|
320
|
+
"pages",
|
|
321
|
+
"index",
|
|
322
|
+
);
|
|
311
323
|
|
|
312
324
|
expect(ctx.body).toBe("plain text");
|
|
313
325
|
});
|
|
@@ -317,14 +329,18 @@ describe("HonoAdapter.createContext", () => {
|
|
|
317
329
|
const formBody = { "user[name]": "Jane" };
|
|
318
330
|
const routerCtx = makeRouterCtx({
|
|
319
331
|
req: {
|
|
320
|
-
header: jest
|
|
321
|
-
.fn()
|
|
322
|
-
.mockReturnValue("application/x-www-form-urlencoded"),
|
|
332
|
+
header: jest.fn().mockReturnValue("application/x-www-form-urlencoded"),
|
|
323
333
|
parseBody: jest.fn().mockResolvedValue(formBody),
|
|
324
334
|
},
|
|
325
335
|
});
|
|
326
336
|
|
|
327
|
-
const ctx = await adapter.createContext(
|
|
337
|
+
const ctx = await adapter.createContext(
|
|
338
|
+
routerCtx,
|
|
339
|
+
() => {},
|
|
340
|
+
"POST",
|
|
341
|
+
"pages",
|
|
342
|
+
"create",
|
|
343
|
+
);
|
|
328
344
|
|
|
329
345
|
expect(ctx.resourceParams).toEqual({ user: { name: "Jane" } });
|
|
330
346
|
});
|
|
@@ -338,7 +354,13 @@ describe("HonoAdapter.createContext", () => {
|
|
|
338
354
|
},
|
|
339
355
|
});
|
|
340
356
|
|
|
341
|
-
const ctx = await adapter.createContext(
|
|
357
|
+
const ctx = await adapter.createContext(
|
|
358
|
+
routerCtx,
|
|
359
|
+
() => {},
|
|
360
|
+
"POST",
|
|
361
|
+
"pages",
|
|
362
|
+
"create",
|
|
363
|
+
);
|
|
342
364
|
|
|
343
365
|
expect(ctx.body).toEqual({ raw: "data" });
|
|
344
366
|
});
|
|
@@ -386,7 +408,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
386
408
|
|
|
387
409
|
await adapter.createAction(
|
|
388
410
|
["GET", "/pages", "pages", "resources", "index", handler],
|
|
389
|
-
{}
|
|
411
|
+
{},
|
|
390
412
|
);
|
|
391
413
|
|
|
392
414
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -407,7 +429,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
407
429
|
|
|
408
430
|
await adapter.createAction(
|
|
409
431
|
["POST", "/pages", "pages", "pages", "create_form", handler],
|
|
410
|
-
{}
|
|
432
|
+
{},
|
|
411
433
|
);
|
|
412
434
|
|
|
413
435
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -425,7 +447,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
425
447
|
|
|
426
448
|
await adapter.createAction(
|
|
427
449
|
["GET", "/api/pages", "pages", "pages", "index", handler],
|
|
428
|
-
{}
|
|
450
|
+
{},
|
|
429
451
|
);
|
|
430
452
|
|
|
431
453
|
const registered = getRegisteredHandler(adapter, "/en/api/pages");
|
|
@@ -443,7 +465,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
443
465
|
|
|
444
466
|
await adapter.createAction(
|
|
445
467
|
["GET", "/exports", "pages", "pages", "index", handler],
|
|
446
|
-
{}
|
|
468
|
+
{},
|
|
447
469
|
);
|
|
448
470
|
|
|
449
471
|
const registered = getRegisteredHandler(adapter, "/en/exports");
|
|
@@ -463,7 +485,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
463
485
|
|
|
464
486
|
await adapter.createAction(
|
|
465
487
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
466
|
-
{}
|
|
488
|
+
{},
|
|
467
489
|
);
|
|
468
490
|
|
|
469
491
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -482,7 +504,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
482
504
|
|
|
483
505
|
await adapter.createAction(
|
|
484
506
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
485
|
-
{}
|
|
507
|
+
{},
|
|
486
508
|
);
|
|
487
509
|
|
|
488
510
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -502,7 +524,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
502
524
|
|
|
503
525
|
await adapter.createAction(
|
|
504
526
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
505
|
-
{}
|
|
527
|
+
{},
|
|
506
528
|
);
|
|
507
529
|
|
|
508
530
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -522,7 +544,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
522
544
|
|
|
523
545
|
await adapter.createAction(
|
|
524
546
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
525
|
-
{}
|
|
547
|
+
{},
|
|
526
548
|
);
|
|
527
549
|
|
|
528
550
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -542,7 +564,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
542
564
|
|
|
543
565
|
await adapter.createAction(
|
|
544
566
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
545
|
-
{}
|
|
567
|
+
{},
|
|
546
568
|
);
|
|
547
569
|
|
|
548
570
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -561,7 +583,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
561
583
|
|
|
562
584
|
await adapter.createAction(
|
|
563
585
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
564
|
-
{}
|
|
586
|
+
{},
|
|
565
587
|
);
|
|
566
588
|
|
|
567
589
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -580,7 +602,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
580
602
|
|
|
581
603
|
await adapter.createAction(
|
|
582
604
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
583
|
-
{}
|
|
605
|
+
{},
|
|
584
606
|
);
|
|
585
607
|
|
|
586
608
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -598,7 +620,7 @@ describe("HonoAdapter.createAction", () => {
|
|
|
598
620
|
|
|
599
621
|
await adapter.createAction(
|
|
600
622
|
["GET", "/pages", "pages", "pages", "index", handler],
|
|
601
|
-
{}
|
|
623
|
+
{},
|
|
602
624
|
);
|
|
603
625
|
|
|
604
626
|
const registered = getRegisteredHandler(adapter, "/en/pages");
|
|
@@ -4,37 +4,47 @@ jest.mock("../setupAuthentication", () => jest.fn());
|
|
|
4
4
|
|
|
5
5
|
describe("HonoAdapter Global Filters", () => {
|
|
6
6
|
let adapter;
|
|
7
|
-
|
|
7
|
+
|
|
8
8
|
beforeEach(() => {
|
|
9
|
-
adapter = new HonoAdapter(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
9
|
+
adapter = new HonoAdapter(
|
|
10
|
+
{
|
|
11
|
+
get: jest.fn(),
|
|
12
|
+
post: jest.fn(),
|
|
13
|
+
put: jest.fn(),
|
|
14
|
+
delete: jest.fn(),
|
|
15
|
+
router: { routes: [] },
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
i18n: {
|
|
19
|
+
locales: { en: "English" },
|
|
20
|
+
defaultLocale: "en",
|
|
21
|
+
timezones: {},
|
|
22
|
+
},
|
|
23
|
+
remoteConfig: {},
|
|
24
|
+
layout: {},
|
|
25
|
+
},
|
|
26
|
+
);
|
|
17
27
|
});
|
|
18
|
-
|
|
28
|
+
|
|
19
29
|
test("setBeforeFilter adds filters to the globalBeforeFilters array", () => {
|
|
20
30
|
expect(adapter.globalBeforeFilters).toEqual([]);
|
|
21
|
-
|
|
31
|
+
|
|
22
32
|
const pattern = /\/settings\/content/;
|
|
23
33
|
const filter = () => ({ assigns: { foo: "bar" } });
|
|
24
|
-
|
|
34
|
+
|
|
25
35
|
adapter.setBeforeFilter(pattern, filter);
|
|
26
|
-
|
|
36
|
+
|
|
27
37
|
expect(adapter.globalBeforeFilters).toEqual([{ pattern, filter }]);
|
|
28
38
|
});
|
|
29
|
-
|
|
39
|
+
|
|
30
40
|
test("setAfterFilter adds filters to the globalAfterFilters array", () => {
|
|
31
41
|
expect(adapter.globalAfterFilters).toEqual([]);
|
|
32
|
-
|
|
42
|
+
|
|
33
43
|
const pattern = /\/settings\/content/;
|
|
34
44
|
const filter = () => ({ assigns: { foo: "bar" } });
|
|
35
|
-
|
|
45
|
+
|
|
36
46
|
adapter.setAfterFilter(pattern, filter);
|
|
37
|
-
|
|
47
|
+
|
|
38
48
|
expect(adapter.globalAfterFilters).toEqual([{ pattern, filter }]);
|
|
39
49
|
});
|
|
40
|
-
});
|
|
50
|
+
});
|
|
@@ -58,7 +58,7 @@ describe("HonoAdapter", () => {
|
|
|
58
58
|
"order[items][2][name]": "A t-shirt",
|
|
59
59
|
"order[items][2][price]": 20,
|
|
60
60
|
"order[items][2][qty]": 1,
|
|
61
|
-
})
|
|
61
|
+
}),
|
|
62
62
|
).toEqual({
|
|
63
63
|
order: {
|
|
64
64
|
email: "john@example.com",
|
|
@@ -122,7 +122,7 @@ describe("HonoAdapter", () => {
|
|
|
122
122
|
expect(
|
|
123
123
|
adapter.parseFormBody({
|
|
124
124
|
"tags[]": ["javascript", "react", "node"],
|
|
125
|
-
})
|
|
125
|
+
}),
|
|
126
126
|
).toEqual({
|
|
127
127
|
tags: ["javascript", "react", "node"],
|
|
128
128
|
});
|
|
@@ -157,7 +157,7 @@ describe("HonoAdapter", () => {
|
|
|
157
157
|
},
|
|
158
158
|
},
|
|
159
159
|
},
|
|
160
|
-
"<h1>Hi</h1>"
|
|
160
|
+
"<h1>Hi</h1>",
|
|
161
161
|
);
|
|
162
162
|
|
|
163
163
|
expect(typeof result).toBe("string");
|