@praxisui/list 8.0.0-beta.2 → 8.0.0-beta.21

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/index.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import * as rxjs from 'rxjs';
2
2
  import { BehaviorSubject, Observable } from 'rxjs';
3
3
  import * as i0 from '@angular/core';
4
- import { OnInit, OnChanges, OnDestroy, EventEmitter, SimpleChanges, ChangeDetectorRef, DoCheck, Provider } from '@angular/core';
4
+ import { OnInit, OnChanges, OnDestroy, EventEmitter, SimpleChanges, ChangeDetectorRef, DoCheck, AfterViewInit, Provider } from '@angular/core';
5
5
  import { MatSelectionListChange } from '@angular/material/list';
6
+ import { MatPaginatorSelectConfig, PageEvent } from '@angular/material/paginator';
6
7
  import { FormGroup, FormControl } from '@angular/forms';
7
8
  import * as _praxisui_core from '@praxisui/core';
8
- import { JsonLogicExpression, LocalizationConfig, AiCapability, RichBlockNode, GlobalActionCatalogEntry, SurfaceOpenPayload, RichPresenterNode, RichComposeNode, ComponentDocMeta, AiCapabilityCategory, AiValueKind, AiCapabilityCatalog } from '@praxisui/core';
9
- import { BaseAiAdapter, PatchResult } from '@praxisui/ai';
9
+ import { PraxisExportFormat, PraxisExportScope, PraxisRuntimeConditionalEffectRule, JsonLogicExpression, GlobalActionRef, LocalizationConfig, AiCapability, RichBlockNode, GlobalActionCatalogEntry, SurfaceOpenPayload, SettingsValueProvider as SettingsValueProvider$1, RichPresenterNode, RichComposeNode, ComponentDocMeta, AiCapabilityCategory, AiValueKind, AiCapabilityCatalog, ComponentAuthoringManifest } from '@praxisui/core';
10
+ import { BaseAiAdapter, PatchResult, PraxisAssistantTurnViewState, PraxisAssistantShellLayout, PraxisAssistantShellLabels, PraxisAssistantSessionSnapshot, PraxisAssistantShellQuickReply, PraxisAssistantShellMessage } from '@praxisui/ai';
10
11
  import { SettingsValueProvider } from '@praxisui/settings-panel';
11
12
 
12
13
  type TemplateType = 'text' | 'icon' | 'image' | 'chip' | 'rating' | 'currency' | 'date' | 'html' | 'slot' | 'metric' | 'compose' | 'component';
@@ -117,6 +118,31 @@ interface ListExpansionSectionDef {
117
118
  }
118
119
  type ListTemplatingSlot = 'leading' | 'primary' | 'secondary' | 'meta' | 'trailing' | 'identity' | 'balance' | 'limit' | 'risk' | 'alerts' | 'owner';
119
120
  type ListRowLayoutSlot = ListTemplatingSlot | 'actions' | 'expand';
121
+ interface ListItemStyleEffect {
122
+ kind?: 'item-style';
123
+ class?: string;
124
+ style?: string;
125
+ border?: string;
126
+ background?: string;
127
+ }
128
+ interface ListSlotOverrideEffect {
129
+ kind?: 'slot-override';
130
+ template?: TemplateDef;
131
+ class?: string;
132
+ style?: string;
133
+ hide?: boolean;
134
+ }
135
+ interface ListItemStyleRule extends Omit<PraxisRuntimeConditionalEffectRule<ListItemStyleEffect>, 'condition' | 'effects'>, ListItemStyleEffect {
136
+ id: string;
137
+ condition?: JsonLogicExpression | null;
138
+ effects?: ListItemStyleEffect[];
139
+ }
140
+ interface ListSlotOverrideRule extends Omit<PraxisRuntimeConditionalEffectRule<ListSlotOverrideEffect>, 'condition' | 'effects'>, ListSlotOverrideEffect {
141
+ id: string;
142
+ slot: ListTemplatingSlot;
143
+ condition?: JsonLogicExpression | null;
144
+ effects?: ListSlotOverrideEffect[];
145
+ }
120
146
  interface PraxisListConfig {
121
147
  id?: string;
122
148
  dataSource?: {
@@ -176,6 +202,7 @@ interface PraxisListConfig {
176
202
  compareBy?: string;
177
203
  return?: 'value' | 'item' | 'id';
178
204
  };
205
+ export?: PraxisListExportConfig;
179
206
  interaction?: {
180
207
  expandable?: boolean;
181
208
  expandTrigger?: 'row' | 'icon' | 'row+icon';
@@ -210,23 +237,8 @@ interface PraxisListConfig {
210
237
  };
211
238
  };
212
239
  rules?: {
213
- itemStyles?: Array<{
214
- id: string;
215
- condition?: JsonLogicExpression | null;
216
- class?: string;
217
- style?: string;
218
- border?: string;
219
- background?: string;
220
- }>;
221
- slotOverrides?: Array<{
222
- id: string;
223
- slot: ListTemplatingSlot;
224
- condition?: JsonLogicExpression | null;
225
- template?: TemplateDef;
226
- class?: string;
227
- style?: string;
228
- hide?: boolean;
229
- }>;
240
+ itemStyles?: ListItemStyleRule[];
241
+ slotOverrides?: ListSlotOverrideRule[];
230
242
  };
231
243
  expansion?: {
232
244
  sections?: ListExpansionSectionDef[];
@@ -277,8 +289,7 @@ interface PraxisListConfig {
277
289
  buttonVariant?: 'stroked' | 'raised' | 'flat';
278
290
  showIf?: JsonLogicExpression | null;
279
291
  emitPayload?: 'item' | 'id' | 'value';
280
- command?: string;
281
- globalPayload?: any;
292
+ globalAction?: GlobalActionRef;
282
293
  emitLocal?: boolean;
283
294
  showLoading?: boolean;
284
295
  placement?: 'actions' | 'trailing';
@@ -310,9 +321,22 @@ interface PraxisListConfig {
310
321
  itemClick?: string;
311
322
  actionClick?: string;
312
323
  selectionChange?: string;
324
+ exportAction?: string;
313
325
  loaded?: string;
314
326
  };
315
327
  }
328
+ interface PraxisListExportConfig {
329
+ enabled?: boolean;
330
+ formats?: PraxisExportFormat[];
331
+ general?: {
332
+ scope?: PraxisExportScope;
333
+ includeHeaders?: boolean;
334
+ maxRows?: number;
335
+ defaultFileName?: string;
336
+ includeFields?: string[] | 'all';
337
+ applyFormatting?: boolean;
338
+ };
339
+ }
316
340
  interface ListItemEvent {
317
341
  item: any;
318
342
  index: number;
@@ -365,8 +389,15 @@ declare class ListDataService<T = any> {
365
389
  nextPage(): void;
366
390
  prevPage(): void;
367
391
  setPageSize(size: number): void;
392
+ setPage(pageNumber: number, pageSize: number): void;
368
393
  setSort(sort: string[]): void;
369
394
  setQuery(q: Record<string, any>): void;
395
+ getPageStateSnapshot(): {
396
+ pageNumber: number;
397
+ pageSize: number;
398
+ sort?: string[];
399
+ };
400
+ getQuerySnapshot(): Record<string, any>;
370
401
  groupedStream(): Observable<ListSection<T>[]>;
371
402
  private buildConfigSignature;
372
403
  private buildLocalDataSignature;
@@ -381,10 +412,15 @@ declare class ListDataService<T = any> {
381
412
  declare class ListAiAdapter extends BaseAiAdapter<PraxisListConfig> {
382
413
  private list;
383
414
  componentName: string;
415
+ componentId: string;
416
+ componentType: string;
384
417
  constructor(list: PraxisList);
385
418
  getCurrentConfig(): PraxisListConfig;
386
419
  getCapabilities(): AiCapability[];
387
420
  getRuntimeState(): Record<string, any>;
421
+ getDataProfile(): Record<string, any>;
422
+ getSchemaFields(): Record<string, any>[];
423
+ getAuthoringContext(): Record<string, any>;
388
424
  createSnapshot(): PraxisListConfig;
389
425
  restoreSnapshot(snapshot: PraxisListConfig): Promise<void>;
390
426
  applyPatch(patch: Partial<PraxisListConfig>, _intent?: string): Promise<PatchResult>;
@@ -417,6 +453,7 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
417
453
  itemClick: EventEmitter<ListItemEvent>;
418
454
  actionClick: EventEmitter<ListActionEvent>;
419
455
  selectionChange: EventEmitter<ListSelectionEvent>;
456
+ exportAction: EventEmitter<any>;
420
457
  items$: rxjs.Observable<any[]>;
421
458
  sections$: rxjs.Observable<ListSection<any>[]>;
422
459
  loading$: rxjs.Observable<boolean>;
@@ -435,6 +472,13 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
435
472
  inlineCss: string;
436
473
  readonly cspNonce: string | null;
437
474
  aiAdapter: ListAiAdapter;
475
+ aiAssistantOpen: boolean;
476
+ aiAssistantPrompt: string;
477
+ aiAssistantViewState: PraxisAssistantTurnViewState | null;
478
+ aiAssistantLayout: PraxisAssistantShellLayout;
479
+ readonly aiAssistantLabels: Partial<PraxisAssistantShellLabels>;
480
+ private aiAssistantController;
481
+ private aiAssistantStateSubscription;
438
482
  private readonly storage;
439
483
  private readonly skin;
440
484
  private inferredForPath;
@@ -448,6 +492,14 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
448
492
  private readonly logger;
449
493
  private readonly jsonLogic;
450
494
  private readonly i18n;
495
+ private readonly collectionExport;
496
+ private readonly paginatorIntl;
497
+ private readonly snackBar;
498
+ private readonly aiApi;
499
+ private readonly assistantSessions;
500
+ private readonly aiTurnOrchestrator;
501
+ private readonly aiAssistantSessionEffect;
502
+ readonly paginatorSelectConfig: MatPaginatorSelectConfig;
451
503
  private readonly logContext;
452
504
  private readonly route;
453
505
  private readonly globalActions;
@@ -464,6 +516,8 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
464
516
  private readonly destroy$;
465
517
  actionLoadingState: Record<string, boolean>;
466
518
  private expandedItemKeys;
519
+ exportBusy: boolean;
520
+ exportStatusMessage: string;
467
521
  private readonly listRuleContextOptions;
468
522
  ngOnInit(): void;
469
523
  ngOnChanges(changes: SimpleChanges): void;
@@ -495,6 +549,9 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
495
549
  itemRuleStyle(item: any): string | undefined;
496
550
  rowLayoutItemStyle(item: any): string | undefined;
497
551
  rowLayoutItemClass(item: any): string | undefined;
552
+ private resolveItemStyleEffect;
553
+ private resolveSlotOverrideEffect;
554
+ private firstConditionalEffect;
498
555
  hasRowLayoutGrid(): boolean;
499
556
  rowLayoutColumns(): ListRowLayoutColumnViewModel[];
500
557
  rowLayoutTrackColumn(index: number, column: ListRowLayoutColumnViewModel): string;
@@ -561,8 +618,7 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
561
618
  buttonVariant?: "stroked" | "raised" | "flat";
562
619
  showIf?: JsonLogicExpression | null;
563
620
  emitPayload?: "item" | "id" | "value";
564
- command?: string;
565
- globalPayload?: any;
621
+ globalAction?: GlobalActionRef;
566
622
  emitLocal?: boolean;
567
623
  showLoading?: boolean;
568
624
  placement?: "actions" | "trailing";
@@ -582,16 +638,65 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
582
638
  expansionRegionAriaLabel(item: any): string;
583
639
  emptyStateLabel(): string;
584
640
  onActionClick(ev: MouseEvent, actionId: string, item: any, index: number): Promise<void>;
585
- private isGlobalCommand;
586
641
  private resolveActionPayload;
587
642
  private resolveTemplate;
643
+ private isDeferredTemplateExpressionKey;
588
644
  private resolveStringTemplate;
589
645
  private lookup;
590
646
  onSelectionChange(_change: MatSelectionListChange): void;
647
+ listExportFormats(): PraxisExportFormat[];
648
+ exportIcon(format: PraxisExportFormat): string;
649
+ onExportAction(format: PraxisExportFormat): Promise<void>;
650
+ private buildListExportRequest;
651
+ private resolveEffectiveExportScope;
652
+ private buildListExportSelection;
653
+ private resolveListExportLoadedItems;
654
+ private buildListExportFields;
655
+ private collectListExportFieldKeys;
656
+ private normalizeListSelectionValue;
657
+ private resolveListSelectionKey;
658
+ private hasListExportQuery;
659
+ private getListQuerySnapshot;
660
+ private getListPageStateSnapshot;
661
+ private resolveListExportTotal;
662
+ private parseListExportSort;
663
+ private downloadExportResult;
664
+ private triggerExportDownload;
665
+ private showExportFeedback;
666
+ private resolveExportFileName;
667
+ private getExportFileExtension;
668
+ private getExportMimeType;
669
+ private cloneForExportEvent;
591
670
  openConfigEditor(): void;
671
+ openAiAssistant(): void;
672
+ openAiAssistantFromSession(session: PraxisAssistantSessionSnapshot): void;
673
+ closeAiAssistant(): void;
674
+ onAiAssistantPromptChange(prompt: string): void;
675
+ onAiAssistantSubmit(prompt: string): void;
676
+ onAiAssistantApply(): void;
677
+ onAiAssistantRetry(): void;
678
+ onAiAssistantCancel(): void;
679
+ onAiAssistantQuickReply(reply: PraxisAssistantShellQuickReply): void;
680
+ onAiAssistantEditMessage(message: PraxisAssistantShellMessage): void;
681
+ onAiAssistantResendMessage(message: PraxisAssistantShellMessage): void;
682
+ onAiAssistantLayoutChange(layout: PraxisAssistantShellLayout): void;
683
+ private initializeAiAssistantController;
684
+ private buildAiAssistantContextItems;
685
+ private buildAiAssistantContextSnapshot;
686
+ private syncAiAssistantSession;
687
+ private hasAiAssistantSessionState;
688
+ private resolveAiAssistantSessionId;
689
+ private resolveAiAssistantOwnerId;
690
+ private resolveAiAssistantRouteKey;
691
+ private resolveAiAssistantSummary;
692
+ private resolveAiAssistantBadge;
693
+ private resolveAiAssistantIcon;
592
694
  nextPage(): void;
593
695
  prevPage(): void;
594
696
  setPageSize(ps: number): void;
697
+ onPageChange(event: PageEvent): void;
698
+ listPageSizeOptions(): number[];
699
+ remoteTotalLabel(total: number | null | undefined): string;
595
700
  onSortChange(val: string): void;
596
701
  onSearchInput(val: string): void;
597
702
  sortOptionValue(op: any): string;
@@ -604,6 +709,9 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
604
709
  pageNumber: number;
605
710
  pageSize: number;
606
711
  }, total: number): number;
712
+ private syncPaginatorIntl;
713
+ private formatPaginatorRangeLabel;
714
+ private isEnglishLocaleValue;
607
715
  applyConfigFromAdapter(newCfg: PraxisListConfig): void;
608
716
  private applyAuthoringPayload;
609
717
  private buildListEditorRuntimeContext;
@@ -669,19 +777,19 @@ declare class PraxisList implements OnInit, OnChanges, OnDestroy {
669
777
  private mergePlainObjects;
670
778
  private buildActionLoadingKey;
671
779
  private ensureActionItemObjectId;
672
- private warnGlobalCommandUnavailableOnce;
673
780
  private buildLogOptions;
674
781
  private toggleExpanded;
675
782
  private syncExpansionState;
676
783
  private itemExpansionKey;
677
- private t;
784
+ t(key: string, fallback: string): string;
785
+ private tWithLocale;
678
786
  private ensureExpansionItemObjectId;
679
787
  private sanitizeDomId;
680
788
  private evaluateExpansionExpr;
681
789
  private normalizeExpansionItems;
682
790
  private normalizeKeyValueItems;
683
791
  static ɵfac: i0.ɵɵFactoryDeclaration<PraxisList, never>;
684
- static ɵcmp: i0.ɵɵComponentDeclaration<PraxisList, "praxis-list", never, { "config": { "alias": "config"; "required": false; }; "listId": { "alias": "listId"; "required": true; }; "componentInstanceId": { "alias": "componentInstanceId"; "required": false; }; "form": { "alias": "form"; "required": false; }; "enableCustomization": { "alias": "enableCustomization"; "required": false; }; }, { "itemClick": "itemClick"; "actionClick": "actionClick"; "selectionChange": "selectionChange"; }, never, never, true, never>;
792
+ static ɵcmp: i0.ɵɵComponentDeclaration<PraxisList, "praxis-list", never, { "config": { "alias": "config"; "required": false; }; "listId": { "alias": "listId"; "required": true; }; "componentInstanceId": { "alias": "componentInstanceId"; "required": false; }; "form": { "alias": "form"; "required": false; }; "enableCustomization": { "alias": "enableCustomization"; "required": false; }; }, { "itemClick": "itemClick"; "actionClick": "actionClick"; "selectionChange": "selectionChange"; "exportAction": "exportAction"; }, never, never, true, never>;
685
793
  static ngAcceptInputType_enableCustomization: unknown;
686
794
  }
687
795
 
@@ -1294,18 +1402,24 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
1294
1402
  ensureConfirmation(action: any): void;
1295
1403
  setConfirmationField(action: any, field: 'title' | 'message', value: string): void;
1296
1404
  applyConfirmationPreset(action: any, type?: 'danger' | 'warning' | 'info' | ''): void;
1297
- isGlobalPayloadInvalid(payload: any): boolean;
1298
- applyGlobalPayloadExample(action: any): void;
1299
- globalPayloadExampleHint(action: any): string;
1300
- globalPayloadSchemaTooltip(action: any): string;
1405
+ applyGlobalActionPayloadExample(action: any): void;
1406
+ globalActionPayloadExampleHint(action: any): string;
1407
+ globalActionPayloadSchemaTooltip(action: any): string;
1408
+ onActionGlobalActionIdChange(action: any, actionId: string): void;
1409
+ getGlobalActionPayloadText(action: {
1410
+ globalAction?: GlobalActionRef;
1411
+ }): string;
1412
+ onGlobalActionPayloadTextChange(action: any, value: string): void;
1413
+ isGlobalActionPayloadInvalid(action: {
1414
+ globalAction?: GlobalActionRef;
1415
+ }): boolean;
1301
1416
  isSurfaceOpenCommand(action: {
1302
- command?: string;
1417
+ globalAction?: GlobalActionRef;
1303
1418
  }): boolean;
1304
- getSurfaceOpenGlobalPayload(action: {
1305
- command?: string;
1306
- globalPayload?: string;
1419
+ getSurfaceOpenGlobalActionPayload(action: {
1420
+ globalAction?: GlobalActionRef;
1307
1421
  }): SurfaceOpenPayload;
1308
- onSurfaceOpenGlobalPayloadChange(action: any, payload: SurfaceOpenPayload): void;
1422
+ onSurfaceOpenGlobalActionPayloadChange(action: any, payload: SurfaceOpenPayload): void;
1309
1423
  onGlobalActionSelected(id?: string): void;
1310
1424
  private addGlobalActionFromCatalog;
1311
1425
  metaTypeConfig(type?: string): {
@@ -1365,6 +1479,11 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
1365
1479
  private getGlobalActionEntryLabel;
1366
1480
  private getGlobalActionEntryDescription;
1367
1481
  private getGlobalActionSchema;
1482
+ getGlobalActionId(action: {
1483
+ globalAction?: GlobalActionRef;
1484
+ }): string;
1485
+ private parseGlobalActionPayloadText;
1486
+ private looksLikeJsonPayload;
1368
1487
  private normalizeSurfaceOpenPayload;
1369
1488
  verify(): void;
1370
1489
  inferFromFields(): void;
@@ -1382,6 +1501,35 @@ declare class PraxisListConfigEditor implements SettingsValueProvider, DoCheck {
1382
1501
  static ɵcmp: i0.ɵɵComponentDeclaration<PraxisListConfigEditor, "praxis-list-config-editor", never, { "config": { "alias": "config"; "required": false; }; "listId": { "alias": "listId"; "required": false; }; }, {}, never, never, true, never>;
1383
1502
  }
1384
1503
 
1504
+ interface PraxisListWidgetEditorInputs {
1505
+ config?: PraxisListConfig | null;
1506
+ listId?: string;
1507
+ [key: string]: unknown;
1508
+ }
1509
+ interface PraxisListWidgetEditorValue {
1510
+ inputs: PraxisListWidgetEditorInputs;
1511
+ }
1512
+ declare class PraxisListWidgetConfigEditor implements SettingsValueProvider$1, AfterViewInit, OnDestroy {
1513
+ inputs: PraxisListWidgetEditorInputs | null;
1514
+ widgetKey?: string;
1515
+ listEditor?: PraxisListConfigEditor;
1516
+ readonly isDirty$: BehaviorSubject<boolean>;
1517
+ readonly isValid$: BehaviorSubject<boolean>;
1518
+ readonly isBusy$: BehaviorSubject<boolean>;
1519
+ private readonly subscription;
1520
+ get config(): PraxisListConfig;
1521
+ get listId(): string | undefined;
1522
+ ngAfterViewInit(): void;
1523
+ ngOnDestroy(): void;
1524
+ getSettingsValue(): PraxisListWidgetEditorValue;
1525
+ onSave(): PraxisListWidgetEditorValue;
1526
+ reset(): void;
1527
+ private initializeChildEditor;
1528
+ private buildValue;
1529
+ static ɵfac: i0.ɵɵFactoryDeclaration<PraxisListWidgetConfigEditor, never>;
1530
+ static ɵcmp: i0.ɵɵComponentDeclaration<PraxisListWidgetConfigEditor, "praxis-list-widget-config-editor", never, { "inputs": { "alias": "inputs"; "required": false; }; "widgetKey": { "alias": "widgetKey"; "required": false; }; }, {}, never, never, true, never>;
1531
+ }
1532
+
1385
1533
  declare function createListAuthoringDocument(source: {
1386
1534
  config?: unknown;
1387
1535
  }): ListAuthoringDocument;
@@ -1458,10 +1606,14 @@ declare function providePraxisListMetadata(): Provider;
1458
1606
  declare module '@praxisui/core' {
1459
1607
  interface AiCapabilityCategoryMap {
1460
1608
  meta: true;
1609
+ export: true;
1461
1610
  skin: true;
1462
1611
  selection: true;
1463
1612
  templating: true;
1464
1613
  actions: true;
1614
+ interaction: true;
1615
+ expansion: true;
1616
+ rules: true;
1465
1617
  ui: true;
1466
1618
  i18n: true;
1467
1619
  a11y: true;
@@ -1477,6 +1629,8 @@ interface CapabilityCatalog extends AiCapabilityCatalog {
1477
1629
  }
1478
1630
  declare const LIST_AI_CAPABILITIES: CapabilityCatalog;
1479
1631
 
1632
+ declare const PRAXIS_LIST_AUTHORING_MANIFEST: ComponentAuthoringManifest;
1633
+
1480
1634
  type DemoScenario = 'operations' | 'executive-expansion' | 'catalog' | 'empty';
1481
1635
  type DemoVariant = 'list' | 'cards' | 'tiles';
1482
1636
  type DemoDensity = 'default' | 'comfortable' | 'compact';
@@ -1643,6 +1797,7 @@ declare class PraxisListDocPageComponent {
1643
1797
  inlineStyle?: string;
1644
1798
  } | undefined;
1645
1799
  id?: string;
1800
+ export?: PraxisListExportConfig;
1646
1801
  interaction?: {
1647
1802
  expandable?: boolean;
1648
1803
  expandTrigger?: "row" | "icon" | "row+icon";
@@ -1677,23 +1832,8 @@ declare class PraxisListDocPageComponent {
1677
1832
  };
1678
1833
  };
1679
1834
  rules?: {
1680
- itemStyles?: Array<{
1681
- id: string;
1682
- condition?: _praxisui_core.JsonLogicExpression | null;
1683
- class?: string;
1684
- style?: string;
1685
- border?: string;
1686
- background?: string;
1687
- }>;
1688
- slotOverrides?: Array<{
1689
- id: string;
1690
- slot: ListTemplatingSlot;
1691
- condition?: _praxisui_core.JsonLogicExpression | null;
1692
- template?: TemplateDef;
1693
- class?: string;
1694
- style?: string;
1695
- hide?: boolean;
1696
- }>;
1835
+ itemStyles?: ListItemStyleRule[];
1836
+ slotOverrides?: ListSlotOverrideRule[];
1697
1837
  };
1698
1838
  expansion?: {
1699
1839
  sections?: ListExpansionSectionDef[];
@@ -1744,8 +1884,7 @@ declare class PraxisListDocPageComponent {
1744
1884
  buttonVariant?: "stroked" | "raised" | "flat";
1745
1885
  showIf?: _praxisui_core.JsonLogicExpression | null;
1746
1886
  emitPayload?: "item" | "id" | "value";
1747
- command?: string;
1748
- globalPayload?: any;
1887
+ globalAction?: _praxisui_core.GlobalActionRef;
1749
1888
  emitLocal?: boolean;
1750
1889
  showLoading?: boolean;
1751
1890
  placement?: "actions" | "trailing";
@@ -1777,6 +1916,7 @@ declare class PraxisListDocPageComponent {
1777
1916
  itemClick?: string;
1778
1917
  actionClick?: string;
1779
1918
  selectionChange?: string;
1919
+ exportAction?: string;
1780
1920
  loaded?: string;
1781
1921
  };
1782
1922
  };
@@ -1813,6 +1953,13 @@ declare const PRAXIS_LIST_EN_US: {
1813
1953
  readonly collapseDetails: "Collapse details";
1814
1954
  readonly itemDetails: "Item details";
1815
1955
  readonly emptyState: "No items available";
1956
+ readonly 'pagination.itemsPerPage': "Items per page:";
1957
+ readonly 'pagination.nextPage': "Next page";
1958
+ readonly 'pagination.previousPage': "Previous page";
1959
+ readonly 'pagination.firstPage': "First page";
1960
+ readonly 'pagination.lastPage': "Last page";
1961
+ readonly 'pagination.total': "Total";
1962
+ readonly 'export.button': "Export";
1816
1963
  readonly Data: "Data";
1817
1964
  readonly Actions: "Actions";
1818
1965
  readonly Layout: "Layout";
@@ -1838,7 +1985,7 @@ declare const PRAXIS_LIST_EN_US: {
1838
1985
  readonly 'Global action (Praxis)': "Global action (Praxis)";
1839
1986
  readonly '-- Select --': "-- Select --";
1840
1987
  readonly 'No global action registered.': "No global action registered.";
1841
- readonly 'Select to add with a global `command`.': "Select to add with a global `command`.";
1988
+ readonly 'Select to add with a structured global action.': "Select to add with a structured global action.";
1842
1989
  readonly 'Action type': "Action type";
1843
1990
  readonly Icon: "Icon";
1844
1991
  readonly Button: "Button";
@@ -1872,7 +2019,7 @@ declare const PRAXIS_LIST_EN_US: {
1872
2019
  readonly 'Emit local event too': "Emit local event too";
1873
2020
  readonly JSON: "JSON";
1874
2021
  readonly ID: "ID";
1875
- readonly 'Command (global)': "Command (global)";
2022
+ readonly 'Global action': "Global action";
1876
2023
  readonly Catalog: "Catalog";
1877
2024
  readonly Danger: "Danger";
1878
2025
  readonly Warning: "Warning";
@@ -2041,6 +2188,13 @@ declare const PRAXIS_LIST_PT_BR: {
2041
2188
  readonly collapseDetails: "Recolher detalhes";
2042
2189
  readonly itemDetails: "Detalhes do item";
2043
2190
  readonly emptyState: "Nenhum item disponível";
2191
+ readonly 'pagination.itemsPerPage': "Itens por página:";
2192
+ readonly 'pagination.nextPage': "Próxima página";
2193
+ readonly 'pagination.previousPage': "Página anterior";
2194
+ readonly 'pagination.firstPage': "Primeira página";
2195
+ readonly 'pagination.lastPage': "Última página";
2196
+ readonly 'pagination.total': "Total";
2197
+ readonly 'export.button': "Exportar";
2044
2198
  readonly Data: "Dados";
2045
2199
  readonly Actions: "Ações";
2046
2200
  readonly Layout: "Layout";
@@ -2066,7 +2220,7 @@ declare const PRAXIS_LIST_PT_BR: {
2066
2220
  readonly 'Global action (Praxis)': "Ação global (Praxis)";
2067
2221
  readonly '-- Select --': "-- Selecionar --";
2068
2222
  readonly 'No global action registered.': "Nenhuma ação global registrada.";
2069
- readonly 'Select to add with a global `command`.': "Selecione para adicionar com `command` global.";
2223
+ readonly 'Select to add with a structured global action.': "Selecione para adicionar com uma ação global estruturada.";
2070
2224
  readonly 'Action type': "Tipo de ação";
2071
2225
  readonly Icon: "Ícone";
2072
2226
  readonly Button: "Botão";
@@ -2100,7 +2254,7 @@ declare const PRAXIS_LIST_PT_BR: {
2100
2254
  readonly 'Emit local event too': "Emitir evento local também";
2101
2255
  readonly JSON: "JSON";
2102
2256
  readonly ID: "ID";
2103
- readonly 'Command (global)': "Comando (global)";
2257
+ readonly 'Global action': "Ação global";
2104
2258
  readonly Catalog: "Catálogo";
2105
2259
  readonly Danger: "Perigo";
2106
2260
  readonly Warning: "Aviso";
@@ -2260,5 +2414,5 @@ declare const PRAXIS_LIST_PT_BR: {
2260
2414
  readonly 'CSS class example (add this to your global styles):': "Exemplo de classe CSS (adicione isto aos seus estilos globais):";
2261
2415
  };
2262
2416
 
2263
- export { ExecutiveAlertsComponent, ExecutiveBadgeComponent, ExecutiveOwnerComponent, LIST_AI_CAPABILITIES, ListDataService, ListSkinService, PRAXIS_LIST_COMPONENT_METADATA, PRAXIS_LIST_EN_US, PRAXIS_LIST_I18N_NAMESPACE, PRAXIS_LIST_PT_BR, PraxisList, PraxisListConfigEditor, PraxisListDocPageComponent, PraxisListJsonConfigEditorComponent, adaptSelection, buildListApplyPlan, createListAuthoringDocument, evalExpr, evaluateTemplate, inferListAuthoringDocument, inferTemplatingFromSchema, isListTemplateSupportedByRichContentP0, mapListTemplateToRichContentP0, normalizeListActionPayloads, normalizeListAuthoringDocument, normalizeListConfig, parseLegacyOrListDocument, projectListAuthoringDocument, providePraxisListI18n, providePraxisListMetadata, serializeListAuthoringDocument, toCanonicalListConfig, validateListAuthoringDocument };
2264
- export type { Capability, CapabilityCatalog, CapabilityCategory, EditorDiagnostic, EditorDocument, ExecutiveAlert, JsonEditorEvent, JsonValidationResult, ListActionEvent, ListApplyPlan, ListAuthoringDocument, ListExpansionSectionDef, ListExpansionSectionType, ListFeatureDef, ListItemEvent, ListProjectionContext, ListRichContentP0Node, ListRowLayoutSlot, ListRuntimeContext, ListSchemaInferencePlan, ListSection, ListSelectionEvent, ListTemplatingSlot, ListValidationContext, PraxisListConfig, PraxisListI18nConfig, TemplateDef, TemplateEvaluatorOptions, TemplateFeatureDef, TemplateType, TemplatingFeatureDef, ValueKind };
2417
+ export { ExecutiveAlertsComponent, ExecutiveBadgeComponent, ExecutiveOwnerComponent, LIST_AI_CAPABILITIES, ListDataService, ListSkinService, PRAXIS_LIST_AUTHORING_MANIFEST, PRAXIS_LIST_COMPONENT_METADATA, PRAXIS_LIST_EN_US, PRAXIS_LIST_I18N_NAMESPACE, PRAXIS_LIST_PT_BR, PraxisList, PraxisListConfigEditor, PraxisListDocPageComponent, PraxisListJsonConfigEditorComponent, PraxisListWidgetConfigEditor, adaptSelection, buildListApplyPlan, createListAuthoringDocument, evalExpr, evaluateTemplate, inferListAuthoringDocument, inferTemplatingFromSchema, isListTemplateSupportedByRichContentP0, mapListTemplateToRichContentP0, normalizeListActionPayloads, normalizeListAuthoringDocument, normalizeListConfig, parseLegacyOrListDocument, projectListAuthoringDocument, providePraxisListI18n, providePraxisListMetadata, serializeListAuthoringDocument, toCanonicalListConfig, validateListAuthoringDocument };
2418
+ export type { Capability, CapabilityCatalog, CapabilityCategory, EditorDiagnostic, EditorDocument, ExecutiveAlert, JsonEditorEvent, JsonValidationResult, ListActionEvent, ListApplyPlan, ListAuthoringDocument, ListExpansionSectionDef, ListExpansionSectionType, ListFeatureDef, ListItemEvent, ListItemStyleEffect, ListItemStyleRule, ListProjectionContext, ListRichContentP0Node, ListRowLayoutSlot, ListRuntimeContext, ListSchemaInferencePlan, ListSection, ListSelectionEvent, ListSlotOverrideEffect, ListSlotOverrideRule, ListTemplatingSlot, ListValidationContext, PraxisListConfig, PraxisListExportConfig, PraxisListI18nConfig, PraxisListWidgetEditorInputs, PraxisListWidgetEditorValue, TemplateDef, TemplateEvaluatorOptions, TemplateFeatureDef, TemplateType, TemplatingFeatureDef, ValueKind };
package/package.json CHANGED
@@ -1,13 +1,19 @@
1
1
  {
2
2
  "name": "@praxisui/list",
3
- "version": "8.0.0-beta.2",
3
+ "version": "8.0.0-beta.21",
4
4
  "description": "List components and helpers for Praxis UI.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">=16 <21",
7
7
  "@angular/core": ">=16 <21",
8
8
  "@angular/material": ">=16 <21",
9
- "@praxisui/dynamic-fields": "^8.0.0-beta.2",
10
- "rxjs": ">=7 <9"
9
+ "@praxisui/dynamic-fields": "^8.0.0-beta.21",
10
+ "rxjs": ">=7 <9",
11
+ "@angular/forms": ">=16 <21",
12
+ "@angular/router": ">=16 <21",
13
+ "@praxisui/ai": "^8.0.0-beta.21",
14
+ "@praxisui/core": "^8.0.0-beta.21",
15
+ "@praxisui/rich-content": "^8.0.0-beta.21",
16
+ "@praxisui/settings-panel": "^8.0.0-beta.21"
11
17
  },
12
18
  "dependencies": {
13
19
  "tslib": "^2.3.0",