@praxisui/tabs 1.0.0-beta.30 → 1.0.0-beta.40
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 +12 -3
- package/fesm2022/praxisui-tabs.mjs +1225 -497
- package/fesm2022/praxisui-tabs.mjs.map +1 -1
- package/index.d.ts +64 -7
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ Componente de abas (grupo e nav) configurável por metadados, com suporte a widg
|
|
|
14
14
|
- Dois modos de renderização: `group` (mat-tab-group) e `nav` (mat-tab-nav-bar).
|
|
15
15
|
- Suporte a conteúdo dinâmico por campo (`DynamicFieldLoader`) e por widget (`DynamicWidgetLoader`).
|
|
16
16
|
- Integração com Settings Panel para edição/configuração em tempo de execução.
|
|
17
|
-
- Persistência
|
|
17
|
+
- Persistência de configuração por `tabsId` usando `AsyncConfigStorage` (chave derivada via component_id).
|
|
18
18
|
- Lazy load opcional do conteúdo para melhor desempenho.
|
|
19
19
|
- Eventos reemitidos com contexto (para conexões entre widgets/páginas).
|
|
20
20
|
|
|
@@ -25,7 +25,8 @@ Selector
|
|
|
25
25
|
|
|
26
26
|
Inputs
|
|
27
27
|
- `config: TabsMetadata | null` Metadados completos para aparência, comportamento e conteúdo.
|
|
28
|
-
- `tabsId
|
|
28
|
+
- `tabsId: string` Identificador estável para persistir/restaurar a configuração.
|
|
29
|
+
- `componentInstanceId?: string` Opcional para desambiguar múltiplas instâncias com o mesmo `tabsId` na mesma rota.
|
|
29
30
|
- `form?: FormGroup` FormGroup opcional para campos dinâmicos declarados em `content`.
|
|
30
31
|
- `context?: any` Contexto propagado a widgets internos (via `DynamicWidgetLoader`).
|
|
31
32
|
- `editModeEnabled?: boolean` Exibe botão de edição quando verdadeiro (abre o editor).
|
|
@@ -37,7 +38,8 @@ Outputs
|
|
|
37
38
|
- `widgetEvent: { tabId?, tabIndex?, linkId?, linkIndex?, sourceId, output?, payload? }` Reemissão de eventos dos widgets internos com contexto da aba/link.
|
|
38
39
|
|
|
39
40
|
Persistência
|
|
40
|
-
- Quando `tabsId` é fornecido, a configuração é salva/recuperada
|
|
41
|
+
- Quando `tabsId` é fornecido, a configuração é salva/recuperada em `AsyncConfigStorage` na chave `tabs:<component_id>`.
|
|
42
|
+
- O `component_id` é derivado via `ComponentKeyService` (inclui rota, tipo de componente, `tabsId` e `componentInstanceId` quando informado).
|
|
41
43
|
|
|
42
44
|
## Estrutura de Metadados (resumo)
|
|
43
45
|
|
|
@@ -132,3 +134,10 @@ const tabsCfg: TabsMetadata = {
|
|
|
132
134
|
- Para persistência por usuário/escopo, forneça `tabsId` estável e deixe o componente gerir `ConfigStorage`.
|
|
133
135
|
- Tokens de estilo aceitam CSS vars ou cores (`#RRGGBB`/`rgb(...)`).
|
|
134
136
|
- Em M2, `color` e `backgroundColor` seguem as opções do Angular Material; em M3, prefira tokens.
|
|
137
|
+
- A classe de tema é decisão do host (`.dark-theme` ou `.theme-dark`/`.theme-light`); mantenha tokens e componentes no mesmo escopo.
|
|
138
|
+
|
|
139
|
+
### Tokens M3 obrigatórios (host)
|
|
140
|
+
|
|
141
|
+
- Superfícies: `--md-sys-color-surface`, `--md-sys-color-surface-container`, `--md-sys-color-surface-variant`
|
|
142
|
+
- Texto/contorno: `--md-sys-color-on-surface`, `--md-sys-color-on-surface-variant`, `--md-sys-color-outline`, `--md-sys-color-outline-variant`
|
|
143
|
+
- Semânticos: `--md-sys-color-primary`, `--md-sys-color-secondary`, `--md-sys-color-tertiary`, `--md-sys-color-error`
|