@praxisui/list 9.0.0-beta.7 → 9.0.0-beta.8
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/package.json
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/list",
|
|
3
|
-
"version": "9.0.0-beta.
|
|
3
|
+
"version": "9.0.0-beta.8",
|
|
4
4
|
"description": "List components and helpers for Praxis UI.",
|
|
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
|
-
"@praxisui/dynamic-fields": "^9.0.0-beta.
|
|
9
|
+
"@praxisui/dynamic-fields": "^9.0.0-beta.8",
|
|
10
10
|
"rxjs": ">=7 <9",
|
|
11
11
|
"@angular/forms": "^21.0.0",
|
|
12
12
|
"@angular/router": "^21.0.0",
|
|
13
|
-
"@praxisui/ai": "^9.0.0-beta.
|
|
14
|
-
"@praxisui/core": "^9.0.0-beta.
|
|
15
|
-
"@praxisui/rich-content": "^9.0.0-beta.
|
|
16
|
-
"@praxisui/settings-panel": "^9.0.0-beta.
|
|
13
|
+
"@praxisui/ai": "^9.0.0-beta.8",
|
|
14
|
+
"@praxisui/core": "^9.0.0-beta.8",
|
|
15
|
+
"@praxisui/rich-content": "^9.0.0-beta.8",
|
|
16
|
+
"@praxisui/settings-panel": "^9.0.0-beta.8"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"tslib": "^2.3.0",
|
|
@@ -316,6 +316,7 @@ A integracao com host ocorre por `SettingsValueProvider`:
|
|
|
316
316
|
| `export.enabled/formats/general.*` | Active | Editor guiado de formatos, escopo, cabecalhos, limite, nome de arquivo, formatacao e campos incluidos. |
|
|
317
317
|
| `interaction.expandable/expandTrigger/expandMode/expandPlacement` | Active | Editor guiado de comportamento expansivel da linha. |
|
|
318
318
|
| `expansion.sections/rendering` | Active | Editor guiado para secoes inline e shell visual da expansao. |
|
|
319
|
+
| `rules.itemStyles/slotOverrides` | Active | Editor guiado basico para Json Logic, classe, estilo, template de slot, ocultacao e primeiro `effects[]` canonico. |
|
|
319
320
|
| `skin.type` | Active | Presets + selecao manual. |
|
|
320
321
|
| `skin.gradient/radius/shadow/border/backdropBlur/class/inlineStyle` | Active | Edicao direta + presets. |
|
|
321
322
|
| `selection.mode` | Active | `none/single/multiple`. |
|
|
@@ -347,10 +348,10 @@ A integracao com host ocorre por `SettingsValueProvider`:
|
|
|
347
348
|
| Area | Adherence | Current editor coverage | Recommended next step |
|
|
348
349
|
| --- | --- | --- | --- |
|
|
349
350
|
| `events.exportAction` | ja-suportado-so-ux | Campo visual no tab de eventos. | Manter coberto por spec focal de round-trip. |
|
|
350
|
-
| `layout.rowLayout` | ja-suportado-so-ux | Editor guiado cobre ativacao, preset corporativo, tipo, colunas, largura, alinhamento, gap e
|
|
351
|
-
| `export` | ja-suportado-so-ux | Editor guiado cobre habilitacao, formatos, escopo, cabecalhos, limite, nome de arquivo, formatacao e
|
|
351
|
+
| `layout.rowLayout` | ja-suportado-so-ux | Editor guiado cobre ativacao, preset corporativo, tipo, colunas, largura, alinhamento, gap, CSS avancado e warnings inline para slots sem materializacao. | Evoluir depois com preview visual por slot. |
|
|
352
|
+
| `export` | ja-suportado-so-ux | Editor guiado cobre habilitacao, formatos, escopo, cabecalhos, limite, nome de arquivo, formatacao, campos incluidos e warning para campo inexistente quando o schema esta carregado. | Evoluir depois com preview do payload de exportacao. |
|
|
352
353
|
| `interaction`/`expansion` | suportado-parcialmente | Editor guiado cobre interacao expansivel, secoes inline e rendering; `dataSource` remoto e `schemaContract` continuam JSON-only. | Evoluir fonte remota/schemaContract apenas com validacao de seguranca e prova runtime. |
|
|
353
|
-
| `rules.itemStyles`/`rules.slotOverrides` | suportado-
|
|
354
|
+
| `rules.itemStyles`/`rules.slotOverrides` | ja-suportado-so-ux | Editor guiado cobre condicao Json Logic, estilo de item, override de slot, template basico, ocultacao e primeira materializacao canonica `effects[0]`. | Evoluir depois com builder visual de Json Logic, preview por item e suporte multi-effect se o runtime passar a consumir mais de um efeito. |
|
|
354
355
|
| `dataSource.data` | ja-suportado-mal-nomeado-ou-mal-materializado | Round-trip por JSON, sem editor visual de dataset local. | Manter JSON-only para datasets grandes; considerar import/preview separado se houver demanda operacional. |
|
|
355
356
|
|
|
356
357
|
### Validacao Estrutural
|
|
@@ -444,9 +445,9 @@ ref.saved$.subscribe((payload) => {
|
|
|
444
445
|
### Known limitations and pending investigation
|
|
445
446
|
|
|
446
447
|
1. Nao existe editor dedicado para `dataSource.data` (dataset local grande).
|
|
447
|
-
2. `rules` possui
|
|
448
|
-
3. `layout.rowLayout` possui editor guiado
|
|
449
|
-
4. `export` possui editor guiado
|
|
448
|
+
2. `rules` possui editor guiado basico com `effects[0]`, mas ainda nao tem builder visual de Json Logic, preview de impacto por item ou authoring multi-effect. O runtime atualmente materializa o primeiro efeito valido.
|
|
449
|
+
3. `layout.rowLayout` possui editor guiado com warnings inline para slots sem materializacao, mas ainda nao tem preview visual por slot.
|
|
450
|
+
4. `export` possui editor guiado com warning de `includeFields` desconhecido quando o schema esta carregado, mas ainda nao tem preview do payload final.
|
|
450
451
|
5. `expansion.dataSource` remoto e `expansion.schemaContract` permanecem JSON-only ate existir validacao visual e prova runtime especifica no componente.
|
|
451
452
|
6. O editor preserva em JSON/config campos declared-only que podem nao ter efeito no runtime final, mas nao deve promove-los como controles visuais ativos.
|
|
452
453
|
7. `isDirty$` usa comparacao por snapshot JSON; mudancas de ordenacao de chaves/objetos podem gerar ruido em cenarios extremos.
|
package/types/praxisui-list.d.ts
CHANGED
|
@@ -1328,6 +1328,7 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
|
|
|
1328
1328
|
readonly rowLayoutAlignOptions: RowLayoutAlign[];
|
|
1329
1329
|
readonly rowLayoutColumnAlignOptions: Array<NonNullable<RowLayoutColumn['align']>>;
|
|
1330
1330
|
readonly rowLayoutJustifyOptions: Array<NonNullable<RowLayoutColumn['justify']>>;
|
|
1331
|
+
readonly rowLayoutStructuralSlots: Set<ListRowLayoutSlot>;
|
|
1331
1332
|
readonly exportFormatOptions: PraxisExportFormat[];
|
|
1332
1333
|
readonly exportScopeOptions: PraxisExportScope[];
|
|
1333
1334
|
readonly expandTriggerOptions: Array<NonNullable<NonNullable<PraxisListConfig['interaction']>['expandTrigger']>>;
|
|
@@ -1336,6 +1337,8 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
|
|
|
1336
1337
|
readonly expansionSectionTypeOptions: ListExpansionSectionType[];
|
|
1337
1338
|
readonly expansionShellOptions: Array<NonNullable<ListExpansionRendering['shell']>>;
|
|
1338
1339
|
readonly expansionColumnOptions: Array<NonNullable<ListExpansionRendering['columns']>>;
|
|
1340
|
+
readonly ruleSlotOptions: ListSlotOverrideRule['slot'][];
|
|
1341
|
+
readonly ruleTemplateTypeOptions: TemplateType[];
|
|
1339
1342
|
mappingMetaFields: string[];
|
|
1340
1343
|
mappingMetaSeparator: string;
|
|
1341
1344
|
mappingMetaWrapSecondInParens: boolean;
|
|
@@ -1505,6 +1508,8 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
|
|
|
1505
1508
|
removeRowLayoutColumn(index: number): void;
|
|
1506
1509
|
moveRowLayoutColumn(index: number, direction: -1 | 1): void;
|
|
1507
1510
|
onRowLayoutChanged(): void;
|
|
1511
|
+
rowLayoutColumnWarning(column: RowLayoutColumn): string;
|
|
1512
|
+
private rowLayoutSlotHasMaterialization;
|
|
1508
1513
|
private ensureRowLayoutDraft;
|
|
1509
1514
|
private defaultRowLayout;
|
|
1510
1515
|
private nextRowLayoutSlot;
|
|
@@ -1532,6 +1537,8 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
|
|
|
1532
1537
|
onExportApplyFormattingChange(value: boolean): void;
|
|
1533
1538
|
onExportMaxRowsChange(value: any): void;
|
|
1534
1539
|
getExportIncludeFieldsText(): string;
|
|
1540
|
+
getExportIncludeFieldsWarning(): string;
|
|
1541
|
+
getExportUnknownIncludeFields(): string[];
|
|
1535
1542
|
onExportIncludeFieldsTextChange(value: string): void;
|
|
1536
1543
|
private ensureExportDraft;
|
|
1537
1544
|
expansionEnabled(): boolean;
|
|
@@ -1553,6 +1560,37 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
|
|
|
1553
1560
|
getExpansionSectionShowIfText(section: ListExpansionSectionDef): string;
|
|
1554
1561
|
private ensureExpansionDraft;
|
|
1555
1562
|
private defaultExpansionSection;
|
|
1563
|
+
addItemStyleRule(): void;
|
|
1564
|
+
removeItemStyleRule(index: number): void;
|
|
1565
|
+
addSlotOverrideRule(): void;
|
|
1566
|
+
removeSlotOverrideRule(index: number): void;
|
|
1567
|
+
onRulesChanged(): void;
|
|
1568
|
+
getRuleConditionText(rule: {
|
|
1569
|
+
condition?: JsonLogicExpression | null;
|
|
1570
|
+
}): string;
|
|
1571
|
+
onRuleConditionChanged(rule: {
|
|
1572
|
+
condition?: JsonLogicExpression | null;
|
|
1573
|
+
}, raw: string): void;
|
|
1574
|
+
getItemStyleEffect(rule: ListItemStyleRule): ListItemStyleEffect | undefined;
|
|
1575
|
+
ensureItemStyleEffect(rule: ListItemStyleRule): void;
|
|
1576
|
+
clearItemStyleEffects(rule: ListItemStyleRule): void;
|
|
1577
|
+
getSlotOverrideEffect(rule: ListSlotOverrideRule): ListSlotOverrideEffect | undefined;
|
|
1578
|
+
ensureSlotOverrideEffect(rule: ListSlotOverrideRule): void;
|
|
1579
|
+
clearSlotOverrideEffects(rule: ListSlotOverrideRule): void;
|
|
1580
|
+
getSlotOverrideTemplateExpr(rule: {
|
|
1581
|
+
template?: TemplateDef;
|
|
1582
|
+
}): string;
|
|
1583
|
+
onSlotOverrideTemplateExprChanged(rule: {
|
|
1584
|
+
template?: TemplateDef;
|
|
1585
|
+
}, expr: string): void;
|
|
1586
|
+
getSlotOverrideTemplateType(rule: {
|
|
1587
|
+
template?: TemplateDef;
|
|
1588
|
+
}): TemplateType;
|
|
1589
|
+
onSlotOverrideTemplateTypeChanged(rule: {
|
|
1590
|
+
template?: TemplateDef;
|
|
1591
|
+
}, type: TemplateType): void;
|
|
1592
|
+
private defaultItemStyleRule;
|
|
1593
|
+
private defaultSlotOverrideRule;
|
|
1556
1594
|
onSkeletonChanged(value: any): void;
|
|
1557
1595
|
addUiSortRow(): void;
|
|
1558
1596
|
removeUiSortRow(i: number): void;
|