mirror of
https://github.com/Ku6epXBOCTuK/easy-png-tools.git
synced 2026-09-14 21:46:35 +00:00
feat: add registry tools for new preview flow
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { CATEGORIES } from "../categories";
|
||||
import { CATEGORY_IDS } from "./categories";
|
||||
import { TOOLS, type ToolEntry } from "../registry-new";
|
||||
|
||||
export type PreviewGroup = {
|
||||
@@ -23,7 +23,7 @@ const GROUP_LABELS: Record<string, string> = {
|
||||
* Preview-каталог: полный реестр инструментов, сгруппированный по категориям.
|
||||
* Больше не урезаем до референс-набора — показываем все инструменты из TOOLS.
|
||||
*/
|
||||
export const PREVIEW_GROUPS: PreviewGroup[] = CATEGORIES.map((category) => ({
|
||||
export const PREVIEW_GROUPS: PreviewGroup[] = CATEGORY_IDS.map((category) => ({
|
||||
id: category,
|
||||
label: GROUP_LABELS[category] ?? category.toUpperCase(),
|
||||
tools: TOOLS.filter((tool) => tool.category === category),
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
/**
|
||||
* Категории инструментов для нового registry/preview.
|
||||
*
|
||||
* Единая точка правды: тип `CategoryId` и порядок отображения в каталоге
|
||||
* выводятся из одного `as const`-объекта, чтобы не рассинхронизироваться.
|
||||
* Этот файл — локальная копия подхода для нового UI; старый `../categories`
|
||||
* (массив + union вручную) не трогаем — он обслуживает старый UI в `(old)/`.
|
||||
*
|
||||
* Человекочитаемые названия живут в словарях i18n: секция categories,
|
||||
* ключ = CategoryId.
|
||||
*/
|
||||
export const CATEGORIES = {
|
||||
convert: "convert",
|
||||
alpha: "alpha",
|
||||
color: "color",
|
||||
geometry: "geometry",
|
||||
filters: "filters",
|
||||
text: "text",
|
||||
analyze: "analyze",
|
||||
generate: "generate",
|
||||
} as const;
|
||||
|
||||
export type CategoryId = (typeof CATEGORIES)[keyof typeof CATEGORIES];
|
||||
|
||||
/** Порядок категорий в каталоге (как задано в `CATEGORIES`). */
|
||||
export const CATEGORY_IDS = Object.keys(CATEGORIES) as CategoryId[];
|
||||
Reference in New Issue
Block a user