# domain/converters/home.converter.ts

> 19 lines of code and 4 definitions.

Tree: Site tree
Language: typescript
Layer: processing
Canonical: https://banes-lab.com/anatomy/tree#file-domain-converters-home-converter-ts
Source text: https://banes-lab.com/assets/sources/source.c1aa67e0f6a438b3542bbae986a83c7a7440b526c8fa89fb15a8eb51878cd4ff.generated.txt

## Definitions

- `PLATFORM_PAGES` (lexical_declaration, line 7)
- `PLATFORM_TAGS` (lexical_declaration, line 14)
- `tagsFor` (lexical_declaration, line 16, exported)
- `held` (lexical_declaration, line 17, exported)

## Source

```typescript
import { INFORMATION_PAGE, LICENSE_PAGE, PRIVACY_PAGE, TERMS_PAGE } from "#core/ids/page.ids";
import { INFORMATION_TITLE, LICENSE_TITLE, PRIVACY_TITLE, TERMS_TITLE } from "#configuration/strings/page.strings";
import type { HomeTag } from "#types/home.types";
import { PAGE_TABS } from "#assets/tab.generated";
import { pagePath } from "#assets/link.assets";

const PLATFORM_PAGES: readonly (readonly [string, string])[] = [
    [LICENSE_PAGE, LICENSE_TITLE],
    [INFORMATION_PAGE, INFORMATION_TITLE],
    [TERMS_PAGE, TERMS_TITLE],
    [PRIVACY_PAGE, PRIVACY_TITLE],
];

const PLATFORM_TAGS: readonly HomeTag[] = PLATFORM_PAGES.map(([page, label]) => ({ label, path: pagePath(page) }));

export const tagsFor = function tagsFor(page: string): readonly HomeTag[] {
    const held = PAGE_TABS.find((entry) => entry.page === page);
    if (held === undefined) {
        return PLATFORM_TAGS;
    }
    return held.tabs.map((tab) => ({ label: tab.label, path: tab.path }));
};
```
