@praxisui/tabs 9.0.0-beta.9 → 9.0.0-beta.90
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 +3 -1
- package/ai/component-registry.json +2503 -0
- package/fesm2022/praxisui-tabs.mjs +173 -165
- package/package.json +10 -6
- package/src/lib/praxis-tabs-config-editor.json-api.md +6 -2
- package/types/praxisui-tabs.d.ts +6 -0
package/package.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/tabs",
|
|
3
|
-
"version": "9.0.0-beta.
|
|
3
|
+
"version": "9.0.0-beta.90",
|
|
4
4
|
"description": "Configurable tabs (group and nav) for Praxis UI with metadata-driven content and runtime editor.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0",
|
|
7
7
|
"@angular/core": "^21.0.0",
|
|
8
8
|
"@angular/material": "^21.0.0",
|
|
9
9
|
"@angular/cdk": "^21.0.0",
|
|
10
|
-
"@praxisui/core": "^9.0.0-beta.
|
|
11
|
-
"@praxisui/dynamic-fields": "^9.0.0-beta.
|
|
12
|
-
"@praxisui/settings-panel": "^9.0.0-beta.
|
|
10
|
+
"@praxisui/core": "^9.0.0-beta.90",
|
|
11
|
+
"@praxisui/dynamic-fields": "^9.0.0-beta.90",
|
|
12
|
+
"@praxisui/settings-panel": "^9.0.0-beta.90",
|
|
13
13
|
"@angular/forms": "^21.0.0",
|
|
14
14
|
"@angular/router": "^21.0.0",
|
|
15
|
-
"@praxisui/ai": "^9.0.0-beta.
|
|
15
|
+
"@praxisui/ai": "^9.0.0-beta.90",
|
|
16
16
|
"rxjs": "~7.8.0"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"keywords": [
|
|
28
28
|
"angular",
|
|
29
29
|
"praxisui",
|
|
30
|
+
"praxis",
|
|
30
31
|
"tabs",
|
|
31
32
|
"navigation",
|
|
32
33
|
"material",
|
|
@@ -42,7 +43,10 @@
|
|
|
42
43
|
".": {
|
|
43
44
|
"types": "./types/praxisui-tabs.d.ts",
|
|
44
45
|
"default": "./fesm2022/praxisui-tabs.mjs"
|
|
46
|
+
},
|
|
47
|
+
"./ai/component-registry.json": {
|
|
48
|
+
"default": "./ai/component-registry.json"
|
|
45
49
|
}
|
|
46
50
|
},
|
|
47
51
|
"type": "module"
|
|
48
|
-
}
|
|
52
|
+
}
|
|
@@ -22,8 +22,8 @@ source_of_truth:
|
|
|
22
22
|
- "projects/praxis-tabs/src/lib/praxis-tabs.ts"
|
|
23
23
|
- "projects/praxis-tabs/src/lib/quick-setup/tabs-quick-setup.component.ts"
|
|
24
24
|
- "projects/praxis-tabs/src/lib/ai/tabs-ai-capabilities.ts"
|
|
25
|
-
source_of_truth_last_verified: "2026-
|
|
26
|
-
last_updated: "2026-
|
|
25
|
+
source_of_truth_last_verified: "2026-06-24"
|
|
26
|
+
last_updated: "2026-06-24"
|
|
27
27
|
toc: true
|
|
28
28
|
sidebar: true
|
|
29
29
|
tags:
|
|
@@ -90,9 +90,11 @@ Este documento e a referencia canonica da API JSON de praxis-tabs-config-editor.
|
|
|
90
90
|
| `accessibility.highContrast/reduceMotion` | not-specified | not-specified | n/a | Active | Preservado da documentação anterior. |
|
|
91
91
|
| `accessibility.ariaLabels/keyboardNavigation` | not-specified | not-specified | n/a | Declared-only | Preservado no contrato JSON, sem superficie ativa na UI. |
|
|
92
92
|
| `group.*` | not-specified | not-specified | n/a | Partial | Preservado da documentação anterior. |
|
|
93
|
+
| `group.renderBody` | boolean | no | true | Active | Quando `false`, o group mode renderiza apenas o header de abas; o conteudo ativo fica sob controle externo do host. |
|
|
93
94
|
| `tabs[]` | not-specified | not-specified | n/a | Active | Preservado da documentação anterior. |
|
|
94
95
|
| `tabs[].content` | not-specified | not-specified | n/a | Partial | Preservado da documentação anterior. |
|
|
95
96
|
| `nav.*` | not-specified | not-specified | n/a | Active | Preservado da documentação anterior. |
|
|
97
|
+
| `nav.renderBody` | boolean | no | true | Active | Quando `false`, o nav mode renderiza apenas o header de links; o conteudo ativo fica sob controle externo do host. |
|
|
96
98
|
| `nav.links[]` | not-specified | not-specified | n/a | Active | Preservado da documentação anterior. |
|
|
97
99
|
|
|
98
100
|
### Supported legacy paths
|
|
@@ -493,11 +495,13 @@ Risco conhecido:
|
|
|
493
495
|
| `group.disablePagination` | Active | guia Grupo |
|
|
494
496
|
| `group.disableRipple` | Active | guia Grupo |
|
|
495
497
|
| `group.preserveContent` | Active | guia Grupo |
|
|
498
|
+
| `group.renderBody` | Active | guia Grupo |
|
|
496
499
|
| `group.stretchTabs` | Active | guia Grupo |
|
|
497
500
|
| `nav.selectedIndex` | Active | guia Navegacao |
|
|
498
501
|
| `nav.animationDuration` | Active | guia Navegacao |
|
|
499
502
|
| `nav.ariaLabel` | Active | guia Navegacao |
|
|
500
503
|
| `nav.ariaLabelledby` | Active | guia Navegacao |
|
|
504
|
+
| `nav.renderBody` | Active | guia Navegacao |
|
|
501
505
|
| `nav.color` | Active | guia Navegacao |
|
|
502
506
|
| `nav.backgroundColor` | Active | guia Navegacao |
|
|
503
507
|
| `nav.fitInkBarToContent` | Active | guia Navegacao |
|
package/types/praxisui-tabs.d.ts
CHANGED
|
@@ -98,6 +98,8 @@ interface TabGroupMetadata {
|
|
|
98
98
|
fitInkBarToContent?: boolean;
|
|
99
99
|
headerPosition?: 'above' | 'below';
|
|
100
100
|
preserveContent?: boolean;
|
|
101
|
+
/** Quando false, renderiza apenas o header de abas; o conteudo fica sob controle externo do host. */
|
|
102
|
+
renderBody?: boolean;
|
|
101
103
|
selectedIndex?: number;
|
|
102
104
|
stretchTabs?: boolean;
|
|
103
105
|
backgroundColor?: 'primary' | 'accent' | 'warn' | undefined;
|
|
@@ -127,6 +129,8 @@ interface TabNavMetadata {
|
|
|
127
129
|
disablePagination?: boolean;
|
|
128
130
|
disableRipple?: boolean;
|
|
129
131
|
fitInkBarToContent?: boolean;
|
|
132
|
+
/** Quando false, renderiza apenas o header de nav; o conteudo fica sob controle externo do host. */
|
|
133
|
+
renderBody?: boolean;
|
|
130
134
|
selectedIndex?: number;
|
|
131
135
|
stretchTabs?: boolean;
|
|
132
136
|
links: TabLinkMetadata[];
|
|
@@ -276,6 +280,8 @@ declare class PraxisTabs implements OnInit, OnChanges, OnDestroy {
|
|
|
276
280
|
applyConfigFromAdapter(next: TabsMetadata): void;
|
|
277
281
|
private isLazy;
|
|
278
282
|
protected groupContentReady(index: number): boolean;
|
|
283
|
+
protected shouldRenderGroupBody(): boolean;
|
|
284
|
+
protected shouldRenderNavBody(): boolean;
|
|
279
285
|
protected navContentReady(index: number): boolean;
|
|
280
286
|
protected isEmptyGlobal(): boolean;
|
|
281
287
|
protected trackVisibleNavLink(index: number, entry: {
|