tot-ui-kit 1.0.0
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/README.md +72 -0
- package/dist/index.cjs +1222 -0
- package/dist/index.css +319 -0
- package/dist/index.d.cts +106 -0
- package/dist/index.d.ts +106 -0
- package/dist/index.js +1095 -0
- package/dist/singleMenuData-HQDGG4SS.js +78 -0
- package/package.json +65 -0
- package/src/global.css +81 -0
package/README.md
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# @data-platform/ui-shell
|
|
2
|
+
|
|
3
|
+
Общий пакет с `Layout`, `ScMainMenu`, `MainMenuFull` и вспомогательными компонентами (`UpperMenu`, `PageLabel`).
|
|
4
|
+
|
|
5
|
+
## Установка
|
|
6
|
+
|
|
7
|
+
Когда репозиторий используется как Yarn workspace:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
yarn workspace new-frontend add @data-platform/ui-shell
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Для внешних проектов пакет можно опубликовать в приватный npm-реестр и поставить через `yarn add @data-platform/ui-shell`.
|
|
14
|
+
|
|
15
|
+
## Быстрый старт
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
import { Layout } from "@data-platform/ui-shell";
|
|
19
|
+
import { apiData } from "@/api/ApiData";
|
|
20
|
+
|
|
21
|
+
export const App = () => (
|
|
22
|
+
<Layout
|
|
23
|
+
menuProps={{
|
|
24
|
+
baseUrl: apiData.server,
|
|
25
|
+
menuId: "VKIIw4zpK-wnEuFag4GXO",
|
|
26
|
+
activeAppId: "sc",
|
|
27
|
+
systemTitle: "Центр установок",
|
|
28
|
+
}}
|
|
29
|
+
>
|
|
30
|
+
{/* контент страниц */}
|
|
31
|
+
</Layout>
|
|
32
|
+
);
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Основные пропсы
|
|
36
|
+
|
|
37
|
+
- `Layout`
|
|
38
|
+
- `menuProps` — любые пропсы `ScMainMenu` кроме `theme`/`layout`. Достаточно передать `baseUrl` или `apps`.
|
|
39
|
+
- `initialMenuLayout`, `initialTheme` — стартовое состояние меню.
|
|
40
|
+
- `headerTitle`, `headerSubtitle`, `upperMenuSlot`, `pageLabelSlot`, `footerLeft`, `footerRight` — кастомизация шапки/футера.
|
|
41
|
+
- `ScMainMenu`
|
|
42
|
+
- `baseUrl` + `menuId` (по умолчанию `VKIIw4zpK-wnEuFag4GXO`) или `dataUrl` — откуда забрать данные о приложениях.
|
|
43
|
+
- `apps` — можно передать готовый список вместо загрузки.
|
|
44
|
+
- `iconResolver` — функция, которая строит `AppDescriptor` из ответа бэка.
|
|
45
|
+
- `onLayoutChange`, `onThemeChange` — события переключения состояния меню.
|
|
46
|
+
|
|
47
|
+
## Дальше
|
|
48
|
+
|
|
49
|
+
## Публикация
|
|
50
|
+
|
|
51
|
+
### Локальная проверка пакета
|
|
52
|
+
```bash
|
|
53
|
+
cd packages/main-menu
|
|
54
|
+
yarn build # (если решим собирать dist)
|
|
55
|
+
yarn pack # создаёт tgz
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Публикация в приватный npm/ghcr
|
|
59
|
+
```bash
|
|
60
|
+
cd packages/main-menu
|
|
61
|
+
yarn publish --tag next --access restricted
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
> Перед публикацией обнови `version` и пропиши `npmrc` с токеном к реестру.
|
|
65
|
+
|
|
66
|
+
## Чеклист тестирования
|
|
67
|
+
- `yarn workspace @data-platform/ui-shell run typecheck`
|
|
68
|
+
- `yarn workspace new-frontend run dev` — меню публичной версии подхватывается из пакета
|
|
69
|
+
- Проверить навигацию между пунктами, переключение темы/раскладки, кастомные слоты
|
|
70
|
+
- Проверить загрузку данных: `baseUrl` (mock-backend) и вариант с заранее переданным `apps`
|
|
71
|
+
|
|
72
|
+
# tot-ui-kit
|