feat(admin): reorganize housekeeping and strengthen shared workflows
This commit is contained in:
1 parent
35f66d879f
commit
a070004e7b
35 files changed
+1667
-462
No files matched your search
@@ -0,0 +1,49 @@
|
||||
import { createTranslator } from "next-intl";
|
||||
import { expect, it } from "vitest";
|
||||
import { ADMIN_NAV_GROUPS } from "@/lib/admin-nav";
|
||||
import { visibleAdminNavigation } from "@/lib/admin-navigation";
|
||||
import en from "@/messages/en.json";
|
||||
import itMessages from "@/messages/it.json";
|
||||
|
||||
it.each([
|
||||
["en", en],
|
||||
["it", itMessages],
|
||||
] as const)(
|
||||
"renders housekeeping navigation and shared controls in %s",
|
||||
(locale, messages) => {
|
||||
const errors: unknown[] = [];
|
||||
const t = createTranslator({
|
||||
locale,
|
||||
messages: messages as unknown as Record<string, string>,
|
||||
onError: (error) => errors.push(error),
|
||||
});
|
||||
const translate = t as unknown as (
|
||||
key: string,
|
||||
values?: Record<string, string | number>,
|
||||
) => string;
|
||||
const keys = new Set([
|
||||
...ADMIN_NAV_GROUPS.flatMap((g) => [
|
||||
g.labelKey,
|
||||
...g.items.map((i) => i.labelKey),
|
||||
]),
|
||||
...visibleAdminNavigation({
|
||||
allowedPermissions: [],
|
||||
isSuperAdmin: true,
|
||||
navConfig: {},
|
||||
}).map((g) => g.labelKey),
|
||||
]);
|
||||
for (const key of keys) translate(`pages.admin.nav.${key}`);
|
||||
for (const area of ["actions", "table", "cmsErrors", "workQueue"] as const)
|
||||
for (const key of Object.keys(en.pages.admin[area]))
|
||||
translate(`pages.admin.${area}.${key}`, {
|
||||
count: 2,
|
||||
action: "Save",
|
||||
page: 2,
|
||||
last: 7,
|
||||
id: "1",
|
||||
name: "Name",
|
||||
groups: 1,
|
||||
});
|
||||
expect(errors).toEqual([]);
|
||||
},
|
||||
);
|
||||
Reference in new issue
Block a user