@masterteam/components 0.0.142 → 0.0.144

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.
Files changed (32) hide show
  1. package/assets/common.css +1 -1
  2. package/fesm2022/masterteam-components-business-fields.mjs +1 -1
  3. package/fesm2022/masterteam-components-business-fields.mjs.map +1 -1
  4. package/fesm2022/masterteam-components-client-page-menu.mjs +2 -2
  5. package/fesm2022/masterteam-components-client-page-menu.mjs.map +1 -1
  6. package/fesm2022/masterteam-components-client-page.mjs +4 -8
  7. package/fesm2022/masterteam-components-client-page.mjs.map +1 -1
  8. package/fesm2022/masterteam-components-drawer.mjs +2 -2
  9. package/fesm2022/masterteam-components-drawer.mjs.map +1 -1
  10. package/fesm2022/masterteam-components-entities.mjs +269 -63
  11. package/fesm2022/masterteam-components-entities.mjs.map +1 -1
  12. package/fesm2022/masterteam-components-formula.mjs +2 -2
  13. package/fesm2022/masterteam-components-formula.mjs.map +1 -1
  14. package/fesm2022/masterteam-components-paginator.mjs +2 -2
  15. package/fesm2022/masterteam-components-paginator.mjs.map +1 -1
  16. package/fesm2022/masterteam-components-sidebar.mjs +2 -2
  17. package/fesm2022/masterteam-components-sidebar.mjs.map +1 -1
  18. package/fesm2022/masterteam-components-slider-field.mjs +2 -2
  19. package/fesm2022/masterteam-components-slider-field.mjs.map +1 -1
  20. package/fesm2022/masterteam-components-statistic-card.mjs +2 -2
  21. package/fesm2022/masterteam-components-statistic-card.mjs.map +1 -1
  22. package/fesm2022/masterteam-components-table.mjs +60 -14
  23. package/fesm2022/masterteam-components-table.mjs.map +1 -1
  24. package/fesm2022/masterteam-components-topbar.mjs +2 -2
  25. package/fesm2022/masterteam-components-topbar.mjs.map +1 -1
  26. package/fesm2022/masterteam-components.mjs +138 -78
  27. package/fesm2022/masterteam-components.mjs.map +1 -1
  28. package/package.json +1 -1
  29. package/types/masterteam-components-client-page.d.ts +0 -2
  30. package/types/masterteam-components-entities.d.ts +81 -14
  31. package/types/masterteam-components-table.d.ts +6 -2
  32. package/types/masterteam-components.d.ts +22 -3
@@ -33,7 +33,19 @@ interface EntityUserConfig extends EntityBaseConfig {
33
33
  interface EntityPercentageConfig extends EntityBaseConfig {
34
34
  color?: string;
35
35
  }
36
- type EntityConfiguration = EntityBaseConfig | EntityUserConfig | EntityPercentageConfig;
36
+ interface LeafLevelSavedConfig {
37
+ /** Position order for this level entity in the preview grid */
38
+ order: number;
39
+ /** Column span (1-24), persisted from drag-resize */
40
+ size?: EntitySize;
41
+ /** Status keys the user has chosen to display */
42
+ selectedStatuses: string[];
43
+ }
44
+ interface EntityLeafDetailsConfig extends EntityBaseConfig {
45
+ /** Per-level display overrides for LeafDetails entities */
46
+ leafLevels?: Record<string, LeafLevelSavedConfig>;
47
+ }
48
+ type EntityConfiguration = EntityBaseConfig | EntityUserConfig | EntityPercentageConfig | EntityLeafDetailsConfig;
37
49
  interface EntityStatusValue {
38
50
  key: string;
39
51
  display: string;
@@ -62,12 +74,52 @@ interface LeafDetailsStatusSummary {
62
74
  /** Always 0 in preview/configuration context; populated from runtime fetch */
63
75
  count: number;
64
76
  }
77
+ interface LeafDetailsCatalogStatusValue {
78
+ key: string;
79
+ display: string;
80
+ description?: string | null;
81
+ color: string | null;
82
+ icon?: string | null;
83
+ order?: number;
84
+ }
85
+ interface LeafDetailsCatalogLevelValue {
86
+ levelId: number;
87
+ levelName: string;
88
+ levelIcon: string;
89
+ statuses: LeafDetailsCatalogStatusValue[];
90
+ }
65
91
  interface LeafDetailsEntityValue {
66
92
  levelId: number;
67
93
  levelName: string;
68
94
  levelIcon: string;
69
95
  statuses: LeafDetailsStatusSummary[];
70
96
  }
97
+ type LeafDetailsEntityCollectionValue = LeafDetailsEntityValue[];
98
+ type LeafDetailsCatalogConfiguration = LeafDetailsCatalogLevelValue[];
99
+ type EntityPropertyConfiguration = Record<string, unknown> | LeafDetailsCatalogConfiguration | null;
100
+ interface LeafDetailsRuntimeStatusDetails {
101
+ key: string;
102
+ display: string;
103
+ color: string | null;
104
+ description?: string | null;
105
+ icon?: string | null;
106
+ order?: number;
107
+ }
108
+ interface LeafDetailsRuntimeStatusCount {
109
+ details: LeafDetailsRuntimeStatusDetails;
110
+ count: number;
111
+ }
112
+ interface LeafDetailsRuntimeChildSchema {
113
+ levelId: number;
114
+ levelName: string;
115
+ levelIcon: string;
116
+ totalCount?: number;
117
+ statuses: LeafDetailsRuntimeStatusCount[];
118
+ }
119
+ interface LeafDetailsRuntimeValue {
120
+ totalCount?: number;
121
+ childSchemas: LeafDetailsRuntimeChildSchema[];
122
+ }
71
123
  interface EntityAttachmentItemValue {
72
124
  id?: string;
73
125
  name?: string;
@@ -85,7 +137,8 @@ interface EntityData {
85
137
  name?: string;
86
138
  rawValue?: string;
87
139
  order?: number;
88
- value: string | EntityStatusValue | EntityUserValue | EntityLookupValue | EntityAttachmentValue | LeafDetailsEntityValue;
140
+ propertyConfiguration?: EntityPropertyConfiguration;
141
+ value: string | EntityStatusValue | EntityUserValue | EntityLookupValue | EntityAttachmentValue | LeafDetailsEntityValue | LeafDetailsEntityCollectionValue | LeafDetailsRuntimeValue;
89
142
  viewType: EntityViewType;
90
143
  type?: string;
91
144
  configuration?: EntityConfiguration;
@@ -100,13 +153,15 @@ interface EntityResizeEvent {
100
153
  type EntityFieldGap = 'compact' | 'normal' | 'relaxed';
101
154
  declare class EntityField {
102
155
  readonly label: _angular_core.InputSignal<string>;
156
+ readonly labelIconName: _angular_core.InputSignal<string | null>;
103
157
  readonly configuration: _angular_core.InputSignal<EntityConfiguration | null | undefined>;
104
158
  readonly gap: _angular_core.InputSignal<EntityFieldGap>;
105
159
  readonly hideLabel: _angular_core.Signal<boolean>;
106
160
  readonly labelPosition: _angular_core.Signal<_masterteam_components_entities.EntityLabelPosition>;
161
+ readonly labelContainerClass: _angular_core.Signal<string>;
107
162
  readonly containerClass: _angular_core.Signal<string>;
108
163
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityField, never>;
109
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityField, "mt-entity-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "configuration": { "alias": "configuration"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
164
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityField, "mt-entity-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "labelIconName": { "alias": "labelIconName"; "required": false; "isSignal": true; }; "configuration": { "alias": "configuration"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
110
165
  }
111
166
 
112
167
  declare class EntityText {
@@ -126,11 +181,13 @@ declare class EntityDate {
126
181
  readonly data: _angular_core.InputSignal<EntityData | undefined>;
127
182
  /** Individual inputs (used when data is not provided) */
128
183
  readonly name: _angular_core.InputSignal<string | undefined>;
129
- readonly value: _angular_core.InputSignal<string | undefined>;
184
+ readonly value: _angular_core.InputSignal<unknown>;
185
+ readonly viewType: _angular_core.InputSignal<"Date" | "DateTime">;
130
186
  readonly displayName: _angular_core.Signal<string>;
131
- readonly displayValue: _angular_core.Signal<string>;
187
+ readonly resolvedViewType: _angular_core.Signal<"date" | "dateTime">;
188
+ readonly displayValue: _angular_core.Signal<unknown>;
132
189
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityDate, never>;
133
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityDate, "mt-entity-date", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
190
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityDate, "mt-entity-date", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "viewType": { "alias": "viewType"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
134
191
  }
135
192
 
136
193
  declare class EntityStatus {
@@ -296,13 +353,23 @@ declare class EntityLeafDetails {
296
353
  readonly leafValue: _angular_core.Signal<LeafDetailsEntityValue | null>;
297
354
  /** Label shown below the badges: "Level Name (total)" */
298
355
  readonly labelWithTotal: _angular_core.Signal<string>;
299
- /** Always force label to top position, merged with any saved config */
300
- readonly labelTopConfig: _angular_core.Signal<EntityBaseConfig>;
356
+ readonly labelIcon: _angular_core.Signal<string | null>;
357
+ /** Default LeafDetails labels to top, while still honoring saved configuration */
358
+ readonly fieldConfig: _angular_core.Signal<EntityBaseConfig>;
301
359
  statusColor(color: string | null): string;
302
360
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityLeafDetails, never>;
303
361
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityLeafDetails, "mt-entity-leaf-details", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
304
362
  }
305
363
 
364
+ declare const LEAF_DETAILS_KEY_SEPARATOR = "::leaflevel::";
365
+ declare function isLeafDetailsValue(value: unknown): value is LeafDetailsEntityValue;
366
+ declare function isLeafDetailsCollectionValue(value: unknown): value is LeafDetailsEntityCollectionValue;
367
+ declare function isLeafDetailsCatalogConfiguration(value: unknown): value is LeafDetailsCatalogConfiguration;
368
+ declare function isLeafDetailsRuntimeValue(value: unknown): value is LeafDetailsRuntimeValue;
369
+ declare function isLeafDetailsSyntheticKey(key?: string | null): boolean;
370
+ declare function expandLeafDetailsEntity(entity: EntityData): EntityData[];
371
+ declare function buildDisplayEntities(entities: EntityData[]): EntityData[];
372
+
306
373
  declare class EntityPreview {
307
374
  /** Single entity data to display */
308
375
  readonly data: _angular_core.InputSignal<EntityData>;
@@ -316,8 +383,8 @@ declare class EntitiesPreview {
316
383
  /** Array of entity data to display */
317
384
  readonly entities: _angular_core.InputSignal<EntityData[]>;
318
385
  readonly attachmentShape: _angular_core.InputSignal<"compact" | "default">;
319
- /** Entities sorted by order */
320
- readonly sortedEntities: _angular_core.Signal<EntityData[]>;
386
+ /** Entities expanded and sorted by order */
387
+ readonly displayEntities: _angular_core.Signal<EntityData[]>;
321
388
  /** Returns the grid-column span for a given entity size (1-24) */
322
389
  getColSpan(entity: EntityData): string;
323
390
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntitiesPreview, never>;
@@ -381,8 +448,8 @@ declare class EntitiesManage extends EntitiesResizeBase {
381
448
  readonly entitiesReordered: _angular_core.OutputEmitterRef<EntityData[]>;
382
449
  /** Emits when an entity cell is clicked (for opening edit drawer) */
383
450
  readonly entityClicked: _angular_core.OutputEmitterRef<EntityData>;
384
- /** Entities sorted by their order field */
385
- readonly sortedEntities: _angular_core.Signal<EntityData[]>;
451
+ /** Entities expanded and sorted by their configured order */
452
+ readonly displayEntities: _angular_core.Signal<EntityData[]>;
386
453
  /** Returns the grid-column span for a given entity size (1-24) */
387
454
  getColSpan(entity: EntityData): string;
388
455
  /** Handle drag-drop reorder */
@@ -392,5 +459,5 @@ declare class EntitiesManage extends EntitiesResizeBase {
392
459
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntitiesManage, "mt-entities-manage", never, { "entities": { "alias": "entities"; "required": true; "isSignal": true; }; }, { "entities": "entitiesChange"; "entitiesReordered": "entitiesReordered"; "entityClicked": "entityClicked"; }, never, never, true, never>;
393
460
  }
394
461
 
395
- export { EntitiesManage, EntitiesPreview, EntitiesResizeBase, EntityAttachment, EntityCheckbox, EntityCurrency, EntityDate, EntityField, EntityLeafDetails, EntityLongText, EntityLookup, EntityPercentage, EntityPreview, EntityStatus, EntityText, EntityUser };
396
- export type { EntityAttachmentItemValue, EntityAttachmentValue, EntityBaseConfig, EntityConfiguration, EntityData, EntityLabelPosition, EntityLookupValue, EntityPercentageConfig, EntityResizeEvent, EntitySize, EntityStatusValue, EntityUserConfig, EntityUserValue, EntityViewType, LeafDetailsEntityValue, LeafDetailsStatusSummary };
462
+ export { EntitiesManage, EntitiesPreview, EntitiesResizeBase, EntityAttachment, EntityCheckbox, EntityCurrency, EntityDate, EntityField, EntityLeafDetails, EntityLongText, EntityLookup, EntityPercentage, EntityPreview, EntityStatus, EntityText, EntityUser, LEAF_DETAILS_KEY_SEPARATOR, buildDisplayEntities, expandLeafDetailsEntity, isLeafDetailsCatalogConfiguration, isLeafDetailsCollectionValue, isLeafDetailsRuntimeValue, isLeafDetailsSyntheticKey, isLeafDetailsValue };
463
+ export type { EntityAttachmentItemValue, EntityAttachmentValue, EntityBaseConfig, EntityConfiguration, EntityData, EntityLabelPosition, EntityLeafDetailsConfig, EntityLookupValue, EntityPercentageConfig, EntityPropertyConfiguration, EntityResizeEvent, EntitySize, EntityStatusValue, EntityUserConfig, EntityUserValue, EntityViewType, LeafDetailsCatalogConfiguration, LeafDetailsCatalogLevelValue, LeafDetailsCatalogStatusValue, LeafDetailsEntityCollectionValue, LeafDetailsEntityValue, LeafDetailsRuntimeChildSchema, LeafDetailsRuntimeStatusCount, LeafDetailsRuntimeStatusDetails, LeafDetailsRuntimeValue, LeafDetailsStatusSummary, LeafLevelSavedConfig };
@@ -50,7 +50,7 @@ type TableFilters = Record<string, FilterValue | any>;
50
50
  /**
51
51
  * Column type definition
52
52
  */
53
- type ColumnType = 'text' | 'boolean' | 'date' | 'user' | 'status' | 'entity' | 'custom';
53
+ type ColumnType = 'text' | 'boolean' | 'date' | 'dateTime' | 'user' | 'status' | 'entity' | 'custom';
54
54
  /**
55
55
  * Event emitted when a cell value changes
56
56
  */
@@ -86,6 +86,7 @@ interface TableAction {
86
86
  }
87
87
 
88
88
  declare class Table {
89
+ private static readonly LOADING_COLUMN_COUNT;
89
90
  selectionChange: _angular_core.OutputEmitterRef<any[]>;
90
91
  cellChange: _angular_core.OutputEmitterRef<CellChangeEvent>;
91
92
  lazyLoad: _angular_core.OutputEmitterRef<any>;
@@ -118,6 +119,7 @@ declare class Table {
118
119
  exportFilename: _angular_core.InputSignal<string>;
119
120
  actionShape: _angular_core.InputSignal<TableActionShape>;
120
121
  tableLayout: _angular_core.InputSignal<"fixed" | "auto">;
122
+ noCard: _angular_core.InputSignalWithTransform<boolean, unknown>;
121
123
  tabs: _angular_core.InputSignal<any[] | undefined>;
122
124
  tabsOptionLabel: _angular_core.InputSignal<string | undefined>;
123
125
  tabsOptionValue: _angular_core.InputSignal<string | undefined>;
@@ -143,6 +145,7 @@ declare class Table {
143
145
  private readonly storageHydrated;
144
146
  protected activeFilterCount: _angular_core.Signal<number>;
145
147
  protected filteredData: _angular_core.Signal<any[]>;
148
+ protected renderedColumns: _angular_core.Signal<ColumnDef[]>;
146
149
  protected displayData: _angular_core.Signal<any[]>;
147
150
  protected totalRecords: _angular_core.Signal<number>;
148
151
  protected paginatedData: _angular_core.Signal<any[]>;
@@ -154,6 +157,7 @@ declare class Table {
154
157
  toggleRow(row: any): void;
155
158
  toggleAllRowsOnPage(): void;
156
159
  getProperty(obj: any, key: string): any;
160
+ protected getDateProperty(obj: any, key: string): string | number | Date | null;
157
161
  getEntityPreviewData(row: any, col: ColumnDef): EntityData | null;
158
162
  tabChanged(tab: any): void;
159
163
  onTablePage(event: TablePageEvent): void;
@@ -216,7 +220,7 @@ declare class Table {
216
220
  private normalizePersistedPageSize;
217
221
  private toNonNegativeInteger;
218
222
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Table, never>;
219
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table, "mt-table", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "rowActions": { "alias": "rowActions"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showGridlines": { "alias": "showGridlines"; "required": false; "isSignal": true; }; "stripedRows": { "alias": "stripedRows"; "required": false; "isSignal": true; }; "selectableRows": { "alias": "selectableRows"; "required": false; "isSignal": true; }; "clickableRows": { "alias": "clickableRows"; "required": false; "isSignal": true; }; "generalSearch": { "alias": "generalSearch"; "required": false; "isSignal": true; }; "lazyLocalSearch": { "alias": "lazyLocalSearch"; "required": false; "isSignal": true; }; "showFilters": { "alias": "showFilters"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "updating": { "alias": "updating"; "required": false; "isSignal": true; }; "lazy": { "alias": "lazy"; "required": false; "isSignal": true; }; "lazyLocalSort": { "alias": "lazyLocalSort"; "required": false; "isSignal": true; }; "lazyTotalRecords": { "alias": "lazyTotalRecords"; "required": false; "isSignal": true; }; "reorderableColumns": { "alias": "reorderableColumns"; "required": false; "isSignal": true; }; "reorderableRows": { "alias": "reorderableRows"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "storageKey": { "alias": "storageKey"; "required": false; "isSignal": true; }; "storageMode": { "alias": "storageMode"; "required": false; "isSignal": true; }; "exportable": { "alias": "exportable"; "required": false; "isSignal": true; }; "exportFilename": { "alias": "exportFilename"; "required": false; "isSignal": true; }; "actionShape": { "alias": "actionShape"; "required": false; "isSignal": true; }; "tableLayout": { "alias": "tableLayout"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "tabsOptionLabel": { "alias": "tabsOptionLabel"; "required": false; "isSignal": true; }; "tabsOptionValue": { "alias": "tabsOptionValue"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "paginatorPosition": { "alias": "paginatorPosition"; "required": false; "isSignal": true; }; "alwaysShowPaginator": { "alias": "alwaysShowPaginator"; "required": false; "isSignal": true; }; "rowsPerPageOptions": { "alias": "rowsPerPageOptions"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "first": { "alias": "first"; "required": false; "isSignal": true; }; "filterTerm": { "alias": "filterTerm"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "cellChange": "cellChange"; "lazyLoad": "lazyLoad"; "columnReorder": "columnReorder"; "rowReorder": "rowReorder"; "rowClick": "rowClick"; "filters": "filtersChange"; "activeTab": "activeTabChange"; "onTabChange": "onTabChange"; "pageSize": "pageSizeChange"; "currentPage": "currentPageChange"; "first": "firstChange"; "filterTerm": "filterTermChange"; }, ["captionStartContent", "captionEndContent", "emptyContent"], never, true, never>;
223
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table, "mt-table", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "rowActions": { "alias": "rowActions"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showGridlines": { "alias": "showGridlines"; "required": false; "isSignal": true; }; "stripedRows": { "alias": "stripedRows"; "required": false; "isSignal": true; }; "selectableRows": { "alias": "selectableRows"; "required": false; "isSignal": true; }; "clickableRows": { "alias": "clickableRows"; "required": false; "isSignal": true; }; "generalSearch": { "alias": "generalSearch"; "required": false; "isSignal": true; }; "lazyLocalSearch": { "alias": "lazyLocalSearch"; "required": false; "isSignal": true; }; "showFilters": { "alias": "showFilters"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "updating": { "alias": "updating"; "required": false; "isSignal": true; }; "lazy": { "alias": "lazy"; "required": false; "isSignal": true; }; "lazyLocalSort": { "alias": "lazyLocalSort"; "required": false; "isSignal": true; }; "lazyTotalRecords": { "alias": "lazyTotalRecords"; "required": false; "isSignal": true; }; "reorderableColumns": { "alias": "reorderableColumns"; "required": false; "isSignal": true; }; "reorderableRows": { "alias": "reorderableRows"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "storageKey": { "alias": "storageKey"; "required": false; "isSignal": true; }; "storageMode": { "alias": "storageMode"; "required": false; "isSignal": true; }; "exportable": { "alias": "exportable"; "required": false; "isSignal": true; }; "exportFilename": { "alias": "exportFilename"; "required": false; "isSignal": true; }; "actionShape": { "alias": "actionShape"; "required": false; "isSignal": true; }; "tableLayout": { "alias": "tableLayout"; "required": false; "isSignal": true; }; "noCard": { "alias": "noCard"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "tabsOptionLabel": { "alias": "tabsOptionLabel"; "required": false; "isSignal": true; }; "tabsOptionValue": { "alias": "tabsOptionValue"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "paginatorPosition": { "alias": "paginatorPosition"; "required": false; "isSignal": true; }; "alwaysShowPaginator": { "alias": "alwaysShowPaginator"; "required": false; "isSignal": true; }; "rowsPerPageOptions": { "alias": "rowsPerPageOptions"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "first": { "alias": "first"; "required": false; "isSignal": true; }; "filterTerm": { "alias": "filterTerm"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "cellChange": "cellChange"; "lazyLoad": "lazyLoad"; "columnReorder": "columnReorder"; "rowReorder": "rowReorder"; "rowClick": "rowClick"; "filters": "filtersChange"; "activeTab": "activeTabChange"; "onTabChange": "onTabChange"; "pageSize": "pageSizeChange"; "currentPage": "currentPageChange"; "first": "firstChange"; "filterTerm": "filterTermChange"; }, ["captionStartContent", "captionEndContent", "emptyContent"], never, true, never>;
220
224
  }
221
225
 
222
226
  declare class TableFilter implements ControlValueAccessor {
@@ -1,4 +1,5 @@
1
- import { EnvironmentProviders, Signal } from '@angular/core';
1
+ import * as i0 from '@angular/core';
2
+ import { EnvironmentProviders, InjectionToken, Signal, PipeTransform } from '@angular/core';
2
3
  import { MessageService, ConfirmationService } from 'primeng/api';
3
4
  import { HttpContext, HttpContextToken } from '@angular/common/http';
4
5
  import { ValidatorFn, AbstractControl } from '@angular/forms';
@@ -20,6 +21,15 @@ declare function provideMTMessages(): typeof MessageService;
20
21
 
21
22
  declare function provideMTConfirmation(): typeof ConfirmationService;
22
23
 
24
+ interface MTDateFormats {
25
+ date: string;
26
+ dateTime: string;
27
+ timezone?: string;
28
+ }
29
+ declare const DEFAULT_MT_DATE_FORMATS: MTDateFormats;
30
+ declare const MT_DATE_FORMATS: InjectionToken<MTDateFormats>;
31
+ declare function provideMTDateFormats(formats: Partial<MTDateFormats>): EnvironmentProviders;
32
+
23
33
  type FieldType = 'text' | 'textarea' | 'select' | 'date' | 'number' | 'slider' | 'multi-select' | 'pick-list' | 'checkbox' | 'icon-field' | 'color-picker' | 'spacer' | 'lookup-matrix' | string;
24
34
  type ValidatorType = 'required' | 'email' | 'minLength' | 'maxLength' | 'min' | 'max' | 'pattern' | 'custom';
25
35
  type FieldRelationAction = 'enable' | 'disable' | 'show' | 'hide';
@@ -828,5 +838,14 @@ declare const REQUEST_CONTEXT: HttpContextToken<RequestContextConfig>;
828
838
  declare function getLightColor(hexColor: string): string;
829
839
  declare function getContrastColor(bgColor: string): string;
830
840
 
831
- export { BaseFacade, BaseFieldConfig, CheckboxFieldConfig, ColorPickerFieldConfig, CrudStateBase, DateFieldConfig, EditorFieldConfig, IconFieldConfig, LookupMatrixFieldConfig, MultiSelectFieldConfig, NumberFieldConfig, PickListFieldConfig, REQUEST_CONTEXT, RadioButtonFieldConfig, RadioCardsFieldConfig, SchedulePredecessorFieldConfig, SchemaConnectionFieldConfig, SelectFieldConfig, SliderFieldConfig, SpacerFieldConfig, TextFieldConfig, TextareaFieldConfig, ToggleFieldConfig, UploadFileFieldConfig, UserSearchFieldConfig, ValidatorConfig, changeBackgroundColor, changePrimaryColor, changeTextColor, createCustomValidator, createEntityAdapter, endLoading, generateTailwindPalette, getContrastColor, getLightColor, handleApiRequest, isInvalid, provideMTComponents, provideMTConfirmation, provideMTMessages, setLoadingError, startLoading, wrapValidatorWithMessage };
832
- export type { ApiRequestConfig, BaseFieldConstructorConfig, CrudCreateConfig, CrudDeleteConfig, CrudLoadConfig, CrudUpdateConfig, DynamicFieldConfig, DynamicFormConfig, EntityAdapter, FieldRelationAction, FieldRelationConfig, FieldState, FieldType, FormulaConditionConfig, FormulaConditionMode, FormulaRuntimeMessage, FormulaRuntimeMessageCode, FormulaValidationRuleConfig, FormulaValidationSeverity, LayoutConfig, LoadingStateShape, LookupMatrixCellConfig, LookupOptionItemConfig, MTThemeOptions, PaletteShade, QueryResult, RequestContextConfig, Response, ResponsiveColSpan, SchedulePredecessorFieldRuntimeContext, SectionConfig, ValidatorType };
841
+ type MTDateFormatType = 'date' | 'dateTime';
842
+ declare class MTDateFormatPipe implements PipeTransform {
843
+ private readonly locale;
844
+ private readonly formats;
845
+ transform(value: unknown, type?: MTDateFormatType): string;
846
+ static ɵfac: i0.ɵɵFactoryDeclaration<MTDateFormatPipe, never>;
847
+ static ɵpipe: i0.ɵɵPipeDeclaration<MTDateFormatPipe, "mtDateFormat", true>;
848
+ }
849
+
850
+ export { BaseFacade, BaseFieldConfig, CheckboxFieldConfig, ColorPickerFieldConfig, CrudStateBase, DEFAULT_MT_DATE_FORMATS, DateFieldConfig, EditorFieldConfig, IconFieldConfig, LookupMatrixFieldConfig, MTDateFormatPipe, MT_DATE_FORMATS, MultiSelectFieldConfig, NumberFieldConfig, PickListFieldConfig, REQUEST_CONTEXT, RadioButtonFieldConfig, RadioCardsFieldConfig, SchedulePredecessorFieldConfig, SchemaConnectionFieldConfig, SelectFieldConfig, SliderFieldConfig, SpacerFieldConfig, TextFieldConfig, TextareaFieldConfig, ToggleFieldConfig, UploadFileFieldConfig, UserSearchFieldConfig, ValidatorConfig, changeBackgroundColor, changePrimaryColor, changeTextColor, createCustomValidator, createEntityAdapter, endLoading, generateTailwindPalette, getContrastColor, getLightColor, handleApiRequest, isInvalid, provideMTComponents, provideMTConfirmation, provideMTDateFormats, provideMTMessages, setLoadingError, startLoading, wrapValidatorWithMessage };
851
+ export type { ApiRequestConfig, BaseFieldConstructorConfig, CrudCreateConfig, CrudDeleteConfig, CrudLoadConfig, CrudUpdateConfig, DynamicFieldConfig, DynamicFormConfig, EntityAdapter, FieldRelationAction, FieldRelationConfig, FieldState, FieldType, FormulaConditionConfig, FormulaConditionMode, FormulaRuntimeMessage, FormulaRuntimeMessageCode, FormulaValidationRuleConfig, FormulaValidationSeverity, LayoutConfig, LoadingStateShape, LookupMatrixCellConfig, LookupOptionItemConfig, MTDateFormatType, MTDateFormats, MTThemeOptions, PaletteShade, QueryResult, RequestContextConfig, Response, ResponsiveColSpan, SchedulePredecessorFieldRuntimeContext, SectionConfig, ValidatorType };