@praxisui/expansion 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 +10 -6
- package/fesm2022/praxisui-expansion.mjs +1141 -101
- package/fesm2022/praxisui-expansion.mjs.map +1 -1
- package/index.d.ts +132 -9
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -48,9 +48,14 @@ const expansionConfig: ExpansionMetadata = {
|
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
```html
|
|
51
|
-
<praxis-expansion [config]="expansionConfig" [editModeEnabled]="true"></praxis-expansion>
|
|
51
|
+
<praxis-expansion expansionId="expansion-demo" [config]="expansionConfig" [editModeEnabled]="true"></praxis-expansion>
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
+
## Persistência
|
|
55
|
+
|
|
56
|
+
- Quando `expansionId` é fornecido, a configuração é salva/recuperada em `AsyncConfigStorage` na chave `expansion:<component_id>`.
|
|
57
|
+
- Use `componentInstanceId` quando houver múltiplas instâncias com o mesmo `expansionId` na mesma rota.
|
|
58
|
+
|
|
54
59
|
## Lazy loading de conteúdo (por painel)
|
|
55
60
|
|
|
56
61
|
O componente utiliza `<ng-template matExpansionPanelContent>`, logo o conteúdo interno de cada painel é criado apenas quando o painel é aberto. Não é necessário habilitar um flag: basta declarar `content` (campos) e/ou `widgets` (widgets dinâmicos) no painel.
|
|
@@ -100,7 +105,7 @@ const expansionConfig: ExpansionMetadata = {
|
|
|
100
105
|
```
|
|
101
106
|
|
|
102
107
|
```html
|
|
103
|
-
<praxis-expansion
|
|
108
|
+
<praxis-expansion expansionId="expansion-demo"
|
|
104
109
|
[config]="expansionConfig"
|
|
105
110
|
(widgetEvent)="onExpansionEvent($event)">
|
|
106
111
|
</praxis-expansion>
|
|
@@ -119,7 +124,7 @@ onExpansionEvent(ev: { panelId?: string; panelIndex?: number; sourceId: string;
|
|
|
119
124
|
Você pode passar `defaultOptions` direto no componente, que tem precedência sobre os valores providos globalmente via provider.
|
|
120
125
|
|
|
121
126
|
```html
|
|
122
|
-
<praxis-expansion
|
|
127
|
+
<praxis-expansion expansionId="expansion-demo"
|
|
123
128
|
[config]="expansionConfig"
|
|
124
129
|
[defaultOptions]="{ collapsedHeight: '48px', expandedHeight: '64px', hideToggle: false }">
|
|
125
130
|
</praxis-expansion>
|
|
@@ -130,7 +135,7 @@ Você pode passar `defaultOptions` direto no componente, que tem precedência so
|
|
|
130
135
|
O componente expõe métodos para controlar a expansão por índice (numérico) ou por id (string):
|
|
131
136
|
|
|
132
137
|
```html
|
|
133
|
-
<praxis-expansion #expRef [config]="expansionConfig"></praxis-expansion>
|
|
138
|
+
<praxis-expansion expansionId="expansion-demo" #expRef [config]="expansionConfig"></praxis-expansion>
|
|
134
139
|
|
|
135
140
|
<button (click)="expRef.open('general')">Abrir Geral</button>
|
|
136
141
|
<button (click)="expRef.close(1)">Fechar painel 2</button>
|
|
@@ -142,7 +147,7 @@ O componente expõe métodos para controlar a expansão por índice (numérico)
|
|
|
142
147
|
## Eventos suportados
|
|
143
148
|
|
|
144
149
|
```html
|
|
145
|
-
<praxis-expansion
|
|
150
|
+
<praxis-expansion expansionId="expansion-demo"
|
|
146
151
|
[config]="expansionConfig"
|
|
147
152
|
(opened)="onOpened($event)"
|
|
148
153
|
(afterExpand)="onAfterExpand($event)"
|
|
@@ -169,4 +174,3 @@ const expansionConfig: ExpansionMetadata = {
|
|
|
169
174
|
## Integração via Registry / Gridster
|
|
170
175
|
|
|
171
176
|
Ao registrar `providePraxisExpansionMetadata()`, o widget `praxis-expansion` fica disponível para o `DynamicWidgetLoader` e pode ser usado em páginas dinâmicas (incl. `praxis-dynamic-gridster-page`). Basta fornecer um `WidgetDefinition` com `id: 'praxis-expansion'` e `inputs.config` com o `ExpansionMetadata` desejado.
|
|
172
|
-
|