@praxisui/table 9.0.0-beta.47 → 9.0.0-beta.49
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 +1 -1
- package/ai/component-registry.json +22 -6
- package/fesm2022/{praxisui-table-praxisui-table-DBm9XDi4.mjs → praxisui-table-praxisui-table-D5UThmhh.mjs} +305 -41
- package/fesm2022/{praxisui-table-table-ai.adapter-0cYAJ5hm.mjs → praxisui-table-table-ai.adapter-DE5WpZ-t.mjs} +1 -1
- package/fesm2022/praxisui-table.mjs +1 -1
- package/package.json +10 -10
- package/types/praxisui-table.d.ts +18 -0
|
@@ -96,10 +96,18 @@ const PRAXIS_TABLE_RUNTIME_I18N_CONFIG = {
|
|
|
96
96
|
'table.chrome.disconnect': 'Desconectar',
|
|
97
97
|
'table.chrome.disconnectTooltip': 'Desconectar da fonte de dados',
|
|
98
98
|
'table.chrome.exportData': 'Exportar dados',
|
|
99
|
-
'table.chrome.exportVisibleExcel': 'Excel
|
|
100
|
-
'table.
|
|
101
|
-
'table.
|
|
102
|
-
'table.
|
|
99
|
+
'table.chrome.exportVisibleExcel': 'Excel da página atual',
|
|
100
|
+
'table.chrome.exportVisibleExcel.description': 'Baixa somente as linhas carregadas e as colunas visíveis da página atual.',
|
|
101
|
+
'table.chrome.exportFormat.csv.provider': 'CSV via provider',
|
|
102
|
+
'table.chrome.exportFormat.excel.provider': 'Excel via provider',
|
|
103
|
+
'table.chrome.exportFormat.json.provider': 'JSON via provider',
|
|
104
|
+
'table.chrome.exportFormat.pdf.provider': 'PDF via provider',
|
|
105
|
+
'table.chrome.exportFormat.print.provider': 'Impressão via provider',
|
|
106
|
+
'table.chrome.exportFormat.provider.description': 'Usa o provider de exportação configurado conforme o escopo canônico da coleção.',
|
|
107
|
+
'table.chrome.exportFormat.excel.provider.description': 'Usa o provider de exportação configurado para gerar o Excel conforme o escopo canônico da coleção.',
|
|
108
|
+
'table.export.completed': 'Exportação concluída.',
|
|
109
|
+
'table.export.deferred': 'Exportação enviada para processamento.',
|
|
110
|
+
'table.export.error': 'Não foi possível exportar os dados.',
|
|
103
111
|
'table.chrome.moreActions': 'Mais ações',
|
|
104
112
|
'table.chrome.rowActions.more': 'Mais ações',
|
|
105
113
|
'table.chrome.rowActions.loading': 'Carregando ações contextuais',
|
|
@@ -110,6 +118,10 @@ const PRAXIS_TABLE_RUNTIME_I18N_CONFIG = {
|
|
|
110
118
|
'table.chrome.collectionActions.create': 'Novo',
|
|
111
119
|
'table.chrome.collectionActions.createTooltip': 'Criar novo registro',
|
|
112
120
|
'table.chrome.collectionActions.createUnavailable': 'Criação indisponível no contexto atual',
|
|
121
|
+
'table.chrome.actions.disabled.noSelection': 'Selecione ao menos um registro para executar esta ação.',
|
|
122
|
+
'table.chrome.actions.disabled.minSelection': 'Selecione ao menos {min} registros para executar esta ação.',
|
|
123
|
+
'table.chrome.actions.disabled.maxSelection': 'A seleção atual excede o limite permitido para esta ação.',
|
|
124
|
+
'table.chrome.actions.disabled.generic': 'Ação indisponível no contexto atual.',
|
|
113
125
|
'table.assistant.context.selectedRecords.label': 'Registros selecionados',
|
|
114
126
|
'table.assistant.context.selectedRecords.value': '{count} registro(s) selecionado(s){ids}',
|
|
115
127
|
'table.assistant.context.selectedRecords.value.singular': '{count} registro selecionado{ids}',
|
|
@@ -215,7 +227,15 @@ const PRAXIS_TABLE_RUNTIME_I18N_CONFIG = {
|
|
|
215
227
|
'table.chrome.disconnect': 'Disconnect',
|
|
216
228
|
'table.chrome.disconnectTooltip': 'Disconnect from the data source',
|
|
217
229
|
'table.chrome.exportData': 'Export data',
|
|
218
|
-
'table.chrome.exportVisibleExcel': '
|
|
230
|
+
'table.chrome.exportVisibleExcel': 'Current page Excel',
|
|
231
|
+
'table.chrome.exportVisibleExcel.description': 'Downloads only the loaded rows and visible columns from the current page.',
|
|
232
|
+
'table.chrome.exportFormat.csv.provider': 'CSV via provider',
|
|
233
|
+
'table.chrome.exportFormat.excel.provider': 'Excel via provider',
|
|
234
|
+
'table.chrome.exportFormat.json.provider': 'JSON via provider',
|
|
235
|
+
'table.chrome.exportFormat.pdf.provider': 'PDF via provider',
|
|
236
|
+
'table.chrome.exportFormat.print.provider': 'Print via provider',
|
|
237
|
+
'table.chrome.exportFormat.provider.description': 'Uses the configured export provider according to the canonical collection scope.',
|
|
238
|
+
'table.chrome.exportFormat.excel.provider.description': 'Uses the configured export provider to generate Excel according to the canonical collection scope.',
|
|
219
239
|
'table.export.completed': 'Export completed.',
|
|
220
240
|
'table.export.deferred': 'Export submitted for processing.',
|
|
221
241
|
'table.export.error': 'Could not export the data.',
|
|
@@ -229,6 +249,10 @@ const PRAXIS_TABLE_RUNTIME_I18N_CONFIG = {
|
|
|
229
249
|
'table.chrome.collectionActions.create': 'New',
|
|
230
250
|
'table.chrome.collectionActions.createTooltip': 'Create a new record',
|
|
231
251
|
'table.chrome.collectionActions.createUnavailable': 'Create is unavailable in the current context',
|
|
252
|
+
'table.chrome.actions.disabled.noSelection': 'Select at least one record to run this action.',
|
|
253
|
+
'table.chrome.actions.disabled.minSelection': 'Select at least {min} records to run this action.',
|
|
254
|
+
'table.chrome.actions.disabled.maxSelection': 'The current selection exceeds the allowed limit for this action.',
|
|
255
|
+
'table.chrome.actions.disabled.generic': 'Action unavailable in the current context.',
|
|
232
256
|
'table.assistant.context.selectedRecords.label': 'Selected records',
|
|
233
257
|
'table.assistant.context.selectedRecords.value': '{count} selected record(s){ids}',
|
|
234
258
|
'table.assistant.context.selectedRecords.value.singular': '{count} selected record{ids}',
|
|
@@ -573,6 +597,7 @@ class PraxisTableToolbar {
|
|
|
573
597
|
warnedInvalidToolbarActionTypes = new Set();
|
|
574
598
|
warnedMenuWithoutChildren = new Set();
|
|
575
599
|
warnedVisibleWhenFallback = new Set();
|
|
600
|
+
warnedDisabledWhenFallback = new Set();
|
|
576
601
|
warnedInvalidShortcuts = new Set();
|
|
577
602
|
warnedInvalidShortcutScopes = new Set();
|
|
578
603
|
warnedShortcutConflicts = new Set();
|
|
@@ -628,7 +653,40 @@ class PraxisTableToolbar {
|
|
|
628
653
|
return this.tx('table.chrome.exportData', 'Exportar dados');
|
|
629
654
|
}
|
|
630
655
|
getVisibleExcelExportLabel() {
|
|
631
|
-
return this.tx('table.chrome.exportVisibleExcel', 'Excel
|
|
656
|
+
return this.tx('table.chrome.exportVisibleExcel', 'Excel da página atual');
|
|
657
|
+
}
|
|
658
|
+
getVisibleExcelExportDescription() {
|
|
659
|
+
return this.tx('table.chrome.exportVisibleExcel.description', 'Baixa somente as linhas carregadas e as colunas visíveis da página atual.');
|
|
660
|
+
}
|
|
661
|
+
getVisibleExcelExportAriaLabel() {
|
|
662
|
+
return `${this.getVisibleExcelExportLabel()}. ${this.getVisibleExcelExportDescription()}`;
|
|
663
|
+
}
|
|
664
|
+
getExportFormatLabel(format) {
|
|
665
|
+
const normalized = this.normalizeExportFormat(format);
|
|
666
|
+
switch (normalized) {
|
|
667
|
+
case 'excel':
|
|
668
|
+
return this.tx('table.chrome.exportFormat.excel.provider', 'Excel via provider');
|
|
669
|
+
case 'csv':
|
|
670
|
+
return this.tx('table.chrome.exportFormat.csv.provider', 'CSV via provider');
|
|
671
|
+
case 'json':
|
|
672
|
+
return this.tx('table.chrome.exportFormat.json.provider', 'JSON via provider');
|
|
673
|
+
case 'pdf':
|
|
674
|
+
return this.tx('table.chrome.exportFormat.pdf.provider', 'PDF via provider');
|
|
675
|
+
case 'print':
|
|
676
|
+
return this.tx('table.chrome.exportFormat.print.provider', 'Impressão via provider');
|
|
677
|
+
default:
|
|
678
|
+
return String(format || '').trim().toUpperCase();
|
|
679
|
+
}
|
|
680
|
+
}
|
|
681
|
+
getExportFormatTooltip(format) {
|
|
682
|
+
const normalized = this.normalizeExportFormat(format);
|
|
683
|
+
if (normalized === 'excel') {
|
|
684
|
+
return this.tx('table.chrome.exportFormat.excel.provider.description', 'Usa o provider de exportação configurado para gerar o Excel conforme o escopo canônico da coleção.');
|
|
685
|
+
}
|
|
686
|
+
return this.tx('table.chrome.exportFormat.provider.description', 'Usa o provider de exportação configurado conforme o escopo canônico da coleção.');
|
|
687
|
+
}
|
|
688
|
+
getExportFormatAriaLabel(format) {
|
|
689
|
+
return `${this.getExportFormatLabel(format)}. ${this.getExportFormatTooltip(format)}`;
|
|
632
690
|
}
|
|
633
691
|
getMoreActionsLabel() {
|
|
634
692
|
return this.tx('table.chrome.moreActions', 'Mais ações');
|
|
@@ -646,7 +704,15 @@ class PraxisTableToolbar {
|
|
|
646
704
|
this.exportAction.emit({ format: 'excel', scope: 'currentPage', localOnly: true });
|
|
647
705
|
}
|
|
648
706
|
isExcelExportFormat(format) {
|
|
649
|
-
|
|
707
|
+
const normalized = this.normalizeExportFormat(format);
|
|
708
|
+
return normalized === 'excel' || normalized === 'xlsx';
|
|
709
|
+
}
|
|
710
|
+
isVisibleExcelExportEnabled(format) {
|
|
711
|
+
return this.isExcelExportFormat(format)
|
|
712
|
+
&& this.config?.export?.excel?.visibleCurrentPage !== false;
|
|
713
|
+
}
|
|
714
|
+
normalizeExportFormat(format) {
|
|
715
|
+
return String(format || '').trim().toLowerCase();
|
|
650
716
|
}
|
|
651
717
|
getColumnsVisibilityLabel() {
|
|
652
718
|
return this.tx('table.chrome.columnsVisibility', 'Colunas');
|
|
@@ -693,10 +759,15 @@ class PraxisTableToolbar {
|
|
|
693
759
|
toggleColumnVisibility(field, visible) {
|
|
694
760
|
this.columnVisibilityToggle.emit({ field, visible });
|
|
695
761
|
}
|
|
696
|
-
tx(key, fallback) {
|
|
762
|
+
tx(key, fallback, params) {
|
|
697
763
|
if (!this.i18n)
|
|
698
|
-
return fallback;
|
|
699
|
-
return translateTableRuntimeText(this.i18n, key, fallback,
|
|
764
|
+
return this.interpolateText(fallback, params);
|
|
765
|
+
return translateTableRuntimeText(this.i18n, key, fallback, params, this.config?.localization?.locale);
|
|
766
|
+
}
|
|
767
|
+
interpolateText(template, params) {
|
|
768
|
+
if (!params)
|
|
769
|
+
return template;
|
|
770
|
+
return Object.entries(params).reduce((current, [key, value]) => current.replace(new RegExp(`\\{${key}\\}`, 'g'), String(value ?? '')), template);
|
|
700
771
|
}
|
|
701
772
|
ngOnDestroy() {
|
|
702
773
|
}
|
|
@@ -912,13 +983,36 @@ class PraxisTableToolbar {
|
|
|
912
983
|
}
|
|
913
984
|
getActionAriaLabel(action) {
|
|
914
985
|
const label = String(action?.label || '').trim();
|
|
986
|
+
if (label && this.isActionDisabled(action)) {
|
|
987
|
+
return `${label}. ${this.resolveDisabledActionReason(action)}`;
|
|
988
|
+
}
|
|
915
989
|
if (label)
|
|
916
990
|
return label;
|
|
917
991
|
const actionId = getActionId(action);
|
|
918
992
|
return actionId || 'Acao';
|
|
919
993
|
}
|
|
920
994
|
isActionDisabled(action) {
|
|
921
|
-
|
|
995
|
+
if (!action)
|
|
996
|
+
return true;
|
|
997
|
+
if (action.disabled === true)
|
|
998
|
+
return true;
|
|
999
|
+
if (this.isBulkToolbarAction(action)) {
|
|
1000
|
+
const selectedCount = this.getSelectedCount();
|
|
1001
|
+
const minSelections = this.getBulkActionMinSelections(action);
|
|
1002
|
+
if (selectedCount < minSelections)
|
|
1003
|
+
return true;
|
|
1004
|
+
const maxSelections = this.getBulkActionMaxSelections(action);
|
|
1005
|
+
if (maxSelections !== null && selectedCount > maxSelections)
|
|
1006
|
+
return true;
|
|
1007
|
+
}
|
|
1008
|
+
return this.evaluateDisabledWhen(action);
|
|
1009
|
+
}
|
|
1010
|
+
getActionTooltip(action) {
|
|
1011
|
+
const configured = String(action?.tooltip || '').trim();
|
|
1012
|
+
if (this.isActionDisabled(action)) {
|
|
1013
|
+
return configured || this.resolveDisabledActionReason(action);
|
|
1014
|
+
}
|
|
1015
|
+
return configured || null;
|
|
922
1016
|
}
|
|
923
1017
|
onDocumentKeydown(event) {
|
|
924
1018
|
if (this.wasShortcutAlreadyHandled(event))
|
|
@@ -967,6 +1061,10 @@ class PraxisTableToolbar {
|
|
|
967
1061
|
return [];
|
|
968
1062
|
return this.config?.actions?.bulk?.actions || [];
|
|
969
1063
|
}
|
|
1064
|
+
isBulkToolbarAction(action) {
|
|
1065
|
+
const actionId = getActionId(action);
|
|
1066
|
+
return this.getBulkToolbarActions().some((candidate) => candidate === action || getActionId(candidate) === actionId);
|
|
1067
|
+
}
|
|
970
1068
|
getVisibleToolbarActions() {
|
|
971
1069
|
const actions = this.config?.toolbar?.actions || [];
|
|
972
1070
|
const sorted = this.sortActions(actions);
|
|
@@ -1025,6 +1123,34 @@ class PraxisTableToolbar {
|
|
|
1025
1123
|
}
|
|
1026
1124
|
return this.resolveVisibleWhenFallback(action, String(expression ?? ''), 'invalid-non-json-logic-expression');
|
|
1027
1125
|
}
|
|
1126
|
+
evaluateDisabledWhen(action) {
|
|
1127
|
+
const disabledWhen = action?.disabledWhen;
|
|
1128
|
+
if (disabledWhen === null
|
|
1129
|
+
|| disabledWhen === undefined
|
|
1130
|
+
|| (typeof disabledWhen === 'string' && !disabledWhen.trim())) {
|
|
1131
|
+
return false;
|
|
1132
|
+
}
|
|
1133
|
+
if (this.isJsonLogicExpression(disabledWhen)) {
|
|
1134
|
+
try {
|
|
1135
|
+
return this.jsonLogic.matches({
|
|
1136
|
+
condition: disabledWhen,
|
|
1137
|
+
data: this.buildEvaluationContext(),
|
|
1138
|
+
});
|
|
1139
|
+
}
|
|
1140
|
+
catch (error) {
|
|
1141
|
+
return this.resolveDisabledWhenFallback(action, JSON.stringify(disabledWhen), 'json-logic-eval-error', { error });
|
|
1142
|
+
}
|
|
1143
|
+
}
|
|
1144
|
+
return this.resolveDisabledWhenFallback(action, String(disabledWhen ?? ''), 'invalid-non-json-logic-expression');
|
|
1145
|
+
}
|
|
1146
|
+
resolveDisabledWhenFallback(action, expression, reason, extra) {
|
|
1147
|
+
this.warnDisabledWhenFallback(action, expression, reason, {
|
|
1148
|
+
policy: 'fail-closed',
|
|
1149
|
+
runtimeEnvironment: this.resolveRuntimeEnvironment(),
|
|
1150
|
+
...(extra ? { details: extra } : {}),
|
|
1151
|
+
});
|
|
1152
|
+
return true;
|
|
1153
|
+
}
|
|
1028
1154
|
isJsonLogicExpression(value) {
|
|
1029
1155
|
return !!value && typeof value === 'object' && !Array.isArray(value);
|
|
1030
1156
|
}
|
|
@@ -1074,6 +1200,42 @@ class PraxisTableToolbar {
|
|
|
1074
1200
|
}
|
|
1075
1201
|
return ctx;
|
|
1076
1202
|
}
|
|
1203
|
+
getSelectedCount() {
|
|
1204
|
+
const selectedCount = Number(this.buildEvaluationContext()['selectedCount']);
|
|
1205
|
+
return Number.isFinite(selectedCount) && selectedCount > 0
|
|
1206
|
+
? Math.floor(selectedCount)
|
|
1207
|
+
: 0;
|
|
1208
|
+
}
|
|
1209
|
+
getBulkActionMinSelections(action) {
|
|
1210
|
+
const value = Number(action?.minSelections);
|
|
1211
|
+
if (Number.isFinite(value)) {
|
|
1212
|
+
return Math.max(0, Math.floor(value));
|
|
1213
|
+
}
|
|
1214
|
+
return 1;
|
|
1215
|
+
}
|
|
1216
|
+
getBulkActionMaxSelections(action) {
|
|
1217
|
+
const value = Number(action?.maxSelections);
|
|
1218
|
+
if (!Number.isFinite(value))
|
|
1219
|
+
return null;
|
|
1220
|
+
return Math.max(0, Math.floor(value));
|
|
1221
|
+
}
|
|
1222
|
+
resolveDisabledActionReason(action) {
|
|
1223
|
+
if (this.isBulkToolbarAction(action)) {
|
|
1224
|
+
const selectedCount = this.getSelectedCount();
|
|
1225
|
+
const minSelections = this.getBulkActionMinSelections(action);
|
|
1226
|
+
if (selectedCount < minSelections) {
|
|
1227
|
+
if (minSelections > 1) {
|
|
1228
|
+
return this.tx('table.chrome.actions.disabled.minSelection', 'Selecione ao menos {min} registros para executar esta ação.', { min: minSelections });
|
|
1229
|
+
}
|
|
1230
|
+
return this.tx('table.chrome.actions.disabled.noSelection', 'Selecione ao menos um registro para executar esta ação.');
|
|
1231
|
+
}
|
|
1232
|
+
const maxSelections = this.getBulkActionMaxSelections(action);
|
|
1233
|
+
if (maxSelections !== null && selectedCount > maxSelections) {
|
|
1234
|
+
return this.tx('table.chrome.actions.disabled.maxSelection', 'A seleção atual excede o limite permitido para esta ação.');
|
|
1235
|
+
}
|
|
1236
|
+
}
|
|
1237
|
+
return this.tx('table.chrome.actions.disabled.generic', 'Ação indisponível no contexto atual.');
|
|
1238
|
+
}
|
|
1077
1239
|
warnVisibleWhenFallback(action, expression, reason, extra) {
|
|
1078
1240
|
const actionId = getActionId(action) || action?.label || 'unknown';
|
|
1079
1241
|
const key = `${actionId}:${expression}:${reason}`;
|
|
@@ -1088,6 +1250,19 @@ class PraxisTableToolbar {
|
|
|
1088
1250
|
...(extra ? { extra } : {}),
|
|
1089
1251
|
});
|
|
1090
1252
|
}
|
|
1253
|
+
warnDisabledWhenFallback(action, expression, reason, extra) {
|
|
1254
|
+
const actionId = getActionId(action) || action?.label || 'unknown';
|
|
1255
|
+
const key = `${actionId}:${expression}:${reason}`;
|
|
1256
|
+
if (this.warnedDisabledWhenFallback.has(key))
|
|
1257
|
+
return;
|
|
1258
|
+
this.warnedDisabledWhenFallback.add(key);
|
|
1259
|
+
this.warnLog('[PraxisTableToolbar] disabledWhen evaluation failed; fail-closed policy applied.', {
|
|
1260
|
+
actionId,
|
|
1261
|
+
expression,
|
|
1262
|
+
reason,
|
|
1263
|
+
...(extra ? { extra } : {}),
|
|
1264
|
+
});
|
|
1265
|
+
}
|
|
1091
1266
|
collectShortcutBindings() {
|
|
1092
1267
|
const map = new Map();
|
|
1093
1268
|
const actions = [
|
|
@@ -1429,8 +1604,8 @@ class PraxisTableToolbar {
|
|
|
1429
1604
|
[color]="getActionColor(action)"
|
|
1430
1605
|
[disabled]="isActionDisabled(action)"
|
|
1431
1606
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1432
|
-
[attr.aria-label]="
|
|
1433
|
-
[matTooltip]="action
|
|
1607
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1608
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
1434
1609
|
matTooltipPosition="below"
|
|
1435
1610
|
>
|
|
1436
1611
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -1442,8 +1617,8 @@ class PraxisTableToolbar {
|
|
|
1442
1617
|
[color]="getActionColor(action)"
|
|
1443
1618
|
[disabled]="isActionDisabled(action)"
|
|
1444
1619
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1445
|
-
[attr.aria-label]="
|
|
1446
|
-
[matTooltip]="action
|
|
1620
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1621
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
1447
1622
|
matTooltipPosition="below"
|
|
1448
1623
|
>
|
|
1449
1624
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -1454,6 +1629,7 @@ class PraxisTableToolbar {
|
|
|
1454
1629
|
mat-button
|
|
1455
1630
|
[color]="getActionColor(action)"
|
|
1456
1631
|
[disabled]="isActionDisabled(action)"
|
|
1632
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1457
1633
|
[matMenuTriggerFor]="startActionMenu"
|
|
1458
1634
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1459
1635
|
>
|
|
@@ -1465,6 +1641,7 @@ class PraxisTableToolbar {
|
|
|
1465
1641
|
<button
|
|
1466
1642
|
mat-menu-item
|
|
1467
1643
|
[disabled]="isActionDisabled(child)"
|
|
1644
|
+
[matTooltip]="getActionTooltip(child)"
|
|
1468
1645
|
(click)="emitToolbarAction($event, getActionId(child), child)"
|
|
1469
1646
|
>
|
|
1470
1647
|
@if (child.icon) { <mat-icon [praxisIcon]="child.icon"></mat-icon> }
|
|
@@ -1478,6 +1655,7 @@ class PraxisTableToolbar {
|
|
|
1478
1655
|
mat-button
|
|
1479
1656
|
[color]="getActionColor(action)"
|
|
1480
1657
|
[disabled]="isActionDisabled(action)"
|
|
1658
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1481
1659
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1482
1660
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1483
1661
|
>
|
|
@@ -1490,6 +1668,7 @@ class PraxisTableToolbar {
|
|
|
1490
1668
|
mat-stroked-button
|
|
1491
1669
|
[color]="getActionColor(action)"
|
|
1492
1670
|
[disabled]="isActionDisabled(action)"
|
|
1671
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1493
1672
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1494
1673
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1495
1674
|
>
|
|
@@ -1502,6 +1681,7 @@ class PraxisTableToolbar {
|
|
|
1502
1681
|
mat-raised-button
|
|
1503
1682
|
[color]="getActionColor(action)"
|
|
1504
1683
|
[disabled]="isActionDisabled(action)"
|
|
1684
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1505
1685
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1506
1686
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1507
1687
|
>
|
|
@@ -1514,6 +1694,7 @@ class PraxisTableToolbar {
|
|
|
1514
1694
|
mat-button
|
|
1515
1695
|
[color]="getActionColor(action)"
|
|
1516
1696
|
[disabled]="isActionDisabled(action)"
|
|
1697
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1517
1698
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1518
1699
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1519
1700
|
>
|
|
@@ -1526,6 +1707,7 @@ class PraxisTableToolbar {
|
|
|
1526
1707
|
mat-button
|
|
1527
1708
|
[color]="getActionColor(action)"
|
|
1528
1709
|
[disabled]="isActionDisabled(action)"
|
|
1710
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1529
1711
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1530
1712
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1531
1713
|
>
|
|
@@ -1538,6 +1720,7 @@ class PraxisTableToolbar {
|
|
|
1538
1720
|
mat-flat-button
|
|
1539
1721
|
[color]="getActionColor(action)"
|
|
1540
1722
|
[disabled]="isActionDisabled(action)"
|
|
1723
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1541
1724
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1542
1725
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1543
1726
|
>
|
|
@@ -1555,8 +1738,8 @@ class PraxisTableToolbar {
|
|
|
1555
1738
|
[color]="getActionColor(action)"
|
|
1556
1739
|
[disabled]="isActionDisabled(action)"
|
|
1557
1740
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1558
|
-
[attr.aria-label]="
|
|
1559
|
-
[matTooltip]="action
|
|
1741
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1742
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
1560
1743
|
matTooltipPosition="below"
|
|
1561
1744
|
>
|
|
1562
1745
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -1568,8 +1751,8 @@ class PraxisTableToolbar {
|
|
|
1568
1751
|
[color]="getActionColor(action)"
|
|
1569
1752
|
[disabled]="isActionDisabled(action)"
|
|
1570
1753
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1571
|
-
[attr.aria-label]="
|
|
1572
|
-
[matTooltip]="action
|
|
1754
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1755
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
1573
1756
|
matTooltipPosition="below"
|
|
1574
1757
|
>
|
|
1575
1758
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -1580,6 +1763,7 @@ class PraxisTableToolbar {
|
|
|
1580
1763
|
mat-button
|
|
1581
1764
|
[color]="getActionColor(action)"
|
|
1582
1765
|
[disabled]="isActionDisabled(action)"
|
|
1766
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1583
1767
|
[matMenuTriggerFor]="endActionMenu"
|
|
1584
1768
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1585
1769
|
>
|
|
@@ -1591,6 +1775,7 @@ class PraxisTableToolbar {
|
|
|
1591
1775
|
<button
|
|
1592
1776
|
mat-menu-item
|
|
1593
1777
|
[disabled]="isActionDisabled(child)"
|
|
1778
|
+
[matTooltip]="getActionTooltip(child)"
|
|
1594
1779
|
(click)="emitToolbarAction($event, getActionId(child), child)"
|
|
1595
1780
|
>
|
|
1596
1781
|
@if (child.icon) { <mat-icon [praxisIcon]="child.icon"></mat-icon> }
|
|
@@ -1604,6 +1789,7 @@ class PraxisTableToolbar {
|
|
|
1604
1789
|
mat-button
|
|
1605
1790
|
[color]="getActionColor(action)"
|
|
1606
1791
|
[disabled]="isActionDisabled(action)"
|
|
1792
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1607
1793
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1608
1794
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1609
1795
|
>
|
|
@@ -1616,6 +1802,7 @@ class PraxisTableToolbar {
|
|
|
1616
1802
|
mat-stroked-button
|
|
1617
1803
|
[color]="getActionColor(action)"
|
|
1618
1804
|
[disabled]="isActionDisabled(action)"
|
|
1805
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1619
1806
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1620
1807
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1621
1808
|
>
|
|
@@ -1628,6 +1815,7 @@ class PraxisTableToolbar {
|
|
|
1628
1815
|
mat-raised-button
|
|
1629
1816
|
[color]="getActionColor(action)"
|
|
1630
1817
|
[disabled]="isActionDisabled(action)"
|
|
1818
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1631
1819
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1632
1820
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1633
1821
|
>
|
|
@@ -1640,6 +1828,7 @@ class PraxisTableToolbar {
|
|
|
1640
1828
|
mat-button
|
|
1641
1829
|
[color]="getActionColor(action)"
|
|
1642
1830
|
[disabled]="isActionDisabled(action)"
|
|
1831
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1643
1832
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1644
1833
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1645
1834
|
>
|
|
@@ -1652,6 +1841,7 @@ class PraxisTableToolbar {
|
|
|
1652
1841
|
mat-button
|
|
1653
1842
|
[color]="getActionColor(action)"
|
|
1654
1843
|
[disabled]="isActionDisabled(action)"
|
|
1844
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1655
1845
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1656
1846
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1657
1847
|
>
|
|
@@ -1664,6 +1854,7 @@ class PraxisTableToolbar {
|
|
|
1664
1854
|
mat-flat-button
|
|
1665
1855
|
[color]="getActionColor(action)"
|
|
1666
1856
|
[disabled]="isActionDisabled(action)"
|
|
1857
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1667
1858
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1668
1859
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1669
1860
|
>
|
|
@@ -1680,6 +1871,7 @@ class PraxisTableToolbar {
|
|
|
1680
1871
|
mat-button
|
|
1681
1872
|
[color]="getActionColor(action)"
|
|
1682
1873
|
[disabled]="isActionDisabled(action)"
|
|
1874
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1683
1875
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1684
1876
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
1685
1877
|
>
|
|
@@ -1706,16 +1898,22 @@ class PraxisTableToolbar {
|
|
|
1706
1898
|
@for (format of config?.export?.formats; track format) {
|
|
1707
1899
|
<button
|
|
1708
1900
|
mat-menu-item
|
|
1901
|
+
class="praxis-table-export-menu-item"
|
|
1709
1902
|
[disabled]="exportBusy"
|
|
1903
|
+
[matTooltip]="getExportFormatTooltip(format)"
|
|
1904
|
+
[attr.aria-label]="getExportFormatAriaLabel(format)"
|
|
1710
1905
|
(click)="emitExportAction($event, format)"
|
|
1711
1906
|
>
|
|
1712
1907
|
<mat-icon [praxisIcon]="getExportIcon(format)"></mat-icon>
|
|
1713
|
-
{{ format
|
|
1908
|
+
{{ getExportFormatLabel(format) }}
|
|
1714
1909
|
</button>
|
|
1715
|
-
@if (
|
|
1910
|
+
@if (isVisibleExcelExportEnabled(format)) {
|
|
1716
1911
|
<button
|
|
1717
1912
|
mat-menu-item
|
|
1913
|
+
class="praxis-table-export-menu-item"
|
|
1718
1914
|
[disabled]="exportBusy"
|
|
1915
|
+
[matTooltip]="getVisibleExcelExportDescription()"
|
|
1916
|
+
[attr.aria-label]="getVisibleExcelExportAriaLabel()"
|
|
1719
1917
|
(click)="emitVisibleExcelExportAction($event)"
|
|
1720
1918
|
>
|
|
1721
1919
|
<mat-icon [praxisIcon]="'table_view'"></mat-icon>
|
|
@@ -1792,6 +1990,7 @@ class PraxisTableToolbar {
|
|
|
1792
1990
|
<button
|
|
1793
1991
|
mat-menu-item
|
|
1794
1992
|
[disabled]="isActionDisabled(action)"
|
|
1993
|
+
[matTooltip]="getActionTooltip(action)"
|
|
1795
1994
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1796
1995
|
>
|
|
1797
1996
|
@if (action.icon) { <mat-icon [praxisIcon]="action.icon"></mat-icon> }
|
|
@@ -1814,16 +2013,22 @@ class PraxisTableToolbar {
|
|
|
1814
2013
|
@for (format of config?.export?.formats; track format) {
|
|
1815
2014
|
<button
|
|
1816
2015
|
mat-menu-item
|
|
2016
|
+
class="praxis-table-export-menu-item"
|
|
1817
2017
|
[disabled]="exportBusy"
|
|
2018
|
+
[matTooltip]="getExportFormatTooltip(format)"
|
|
2019
|
+
[attr.aria-label]="getExportFormatAriaLabel(format)"
|
|
1818
2020
|
(click)="emitExportAction($event, format)"
|
|
1819
2021
|
>
|
|
1820
2022
|
<mat-icon>{{ getExportIcon(format) }}</mat-icon>
|
|
1821
|
-
{{ format
|
|
2023
|
+
{{ getExportFormatLabel(format) }}
|
|
1822
2024
|
</button>
|
|
1823
|
-
@if (
|
|
2025
|
+
@if (isVisibleExcelExportEnabled(format)) {
|
|
1824
2026
|
<button
|
|
1825
2027
|
mat-menu-item
|
|
2028
|
+
class="praxis-table-export-menu-item"
|
|
1826
2029
|
[disabled]="exportBusy"
|
|
2030
|
+
[matTooltip]="getVisibleExcelExportDescription()"
|
|
2031
|
+
[attr.aria-label]="getVisibleExcelExportAriaLabel()"
|
|
1827
2032
|
(click)="emitVisibleExcelExportAction($event)"
|
|
1828
2033
|
>
|
|
1829
2034
|
<mat-icon [praxisIcon]="'table_view'"></mat-icon>
|
|
@@ -1877,7 +2082,7 @@ class PraxisTableToolbar {
|
|
|
1877
2082
|
}
|
|
1878
2083
|
</div>
|
|
1879
2084
|
</mat-toolbar>
|
|
1880
|
-
`, isInline: true, styles: [":host{display:block}.praxis-toolbar{--p-table-toolbar-bg-default: linear-gradient( 180deg, color-mix(in srgb, var(--md-sys-color-surface, #fff) 96%, transparent), color-mix(in srgb, var(--md-sys-color-surface-container-low, #f6f8fc) 100%, transparent) );--p-table-toolbar-fg-default: var(--md-sys-color-on-surface, currentColor);--p-table-toolbar-border-color-default: color-mix(in srgb, var(--md-sys-color-outline-variant, #d7dbe5) 78%, transparent);--p-table-toolbar-divider-color-default: color-mix(in srgb, var(--md-sys-color-outline) 42%, transparent);--p-table-toolbar-action-hover-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 10%, transparent);--p-table-toolbar-action-active-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 16%, transparent);--p-table-toolbar-action-focus-ring-default: color-mix(in srgb, var(--md-sys-color-primary) 52%, transparent);--p-table-toolbar-ai-accent-color-default: var(--md-sys-color-primary, #0b72d9);--p-table-toolbar-status-fg-default: var(--md-sys-color-on-surface-variant, currentColor);background:var(--p-table-toolbar-bg, var(--p-table-toolbar-bg-default));color:var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default));box-shadow:var(--p-table-toolbar-shadow, none);padding:var(--p-table-toolbar-padding-block, var(--pfx-toolbar-pad-y, 6px)) var(--p-table-toolbar-padding-inline, var(--pfx-toolbar-pad-x, 12px));min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));display:flex;flex-direction:row;align-items:center;gap:var(--p-table-toolbar-gap, 6px);flex-wrap:wrap;border:var(--p-table-toolbar-border-width, 1px) solid var(--p-table-toolbar-border-color, var(--p-table-toolbar-border-color-default));border-radius:var(--p-table-toolbar-radius, 10px)}.praxis-toolbar.p-table-toolbar--flat{--p-table-toolbar-border-width: 0;--p-table-toolbar-shadow: none}.praxis-toolbar.p-table-toolbar--elevated{--p-table-toolbar-shadow: 0 12px 28px color-mix(in srgb, var(--md-sys-color-shadow, #000) 12%, transparent)}.praxis-toolbar.p-table-toolbar--integrated{--p-table-toolbar-bg: transparent;--p-table-toolbar-border-width: 0;--p-table-toolbar-radius: 0}.praxis-toolbar.p-table-toolbar--compact{--p-table-toolbar-min-height: 36px;--p-table-toolbar-padding-block: 4px;--p-table-toolbar-padding-inline: 10px;--p-table-toolbar-gap: 4px;--p-table-toolbar-actions-gap: 4px;--p-table-toolbar-action-size: 32px;--p-table-toolbar-action-radius: 7px}.praxis-toolbar.p-table-toolbar--comfortable{--p-table-toolbar-min-height: 44px;--p-table-toolbar-action-size: 36px}.praxis-toolbar.p-table-toolbar--spacious{--p-table-toolbar-min-height: 52px;--p-table-toolbar-padding-block: 8px;--p-table-toolbar-padding-inline: 16px;--p-table-toolbar-gap: 8px;--p-table-toolbar-actions-gap: 8px;--p-table-toolbar-action-size: 40px}.praxis-toolbar.p-table-toolbar--square{--p-table-toolbar-radius: 0;--p-table-toolbar-action-radius: 4px}.praxis-toolbar.p-table-toolbar--pill{--p-table-toolbar-radius: 999px;--p-table-toolbar-action-radius: 999px}:host(.praxis-toolbar-stack-top) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}:host(.praxis-toolbar-footer) .praxis-toolbar{border-top-left-radius:0;border-top-right-radius:0}:host(.praxis-toolbar-footer.footer-flat) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}.praxis-toolbar.mat-toolbar-single-row,.praxis-toolbar .mat-toolbar-row{height:auto}.praxis-toolbar.mat-toolbar-multiple-rows{min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px))}.toolbar-main{display:flex;align-items:center;justify-content:flex-start;min-width:0;column-gap:var(--p-table-toolbar-gap, 6px);row-gap:var(--p-table-toolbar-identity-filter-gap, 8px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:1 1 360px;flex-wrap:wrap;container-type:inline-size}.toolbar-identity{display:flex;align-items:center;gap:var(--p-table-toolbar-identity-gap, 8px);min-width:0;max-width:100%;min-height:var(--p-table-toolbar-identity-min-height, 30px);flex:1 1 100%;margin-block-end:var(--p-table-toolbar-identity-margin-bottom, 2px);padding-inline:2px;color:var(--p-table-toolbar-title-fg, var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default)))}.toolbar-identity--center{text-align:center;justify-content:center}.toolbar-identity--end{text-align:end;justify-content:flex-end}.toolbar-identity--center .toolbar-identity__copy{align-items:center}.toolbar-identity--end .toolbar-identity__copy{align-items:flex-end}.toolbar-identity__icon{width:var(--p-table-toolbar-identity-icon-size, 28px);height:var(--p-table-toolbar-identity-icon-size, 28px);border-radius:var(--p-table-toolbar-identity-icon-radius, 8px);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor));background:color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 8%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 18%,transparent)}.toolbar-identity__icon .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.toolbar-identity__copy{display:flex;flex-direction:column;min-width:0;max-width:100%;gap:1px}.toolbar-identity__title,.toolbar-identity__subtitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-identity__title{font-size:var(--p-table-toolbar-title-font-size, 14px);font-weight:var(--p-table-toolbar-title-font-weight, 700);line-height:1.2;letter-spacing:0;color:var(--p-table-toolbar-title-fg, currentColor)}.toolbar-identity__subtitle{font-size:var(--p-table-toolbar-subtitle-font-size, 11.5px);line-height:1.25;color:var(--p-table-toolbar-subtitle-fg, var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default)))}.toolbar-main>*{min-width:0}@container (max-width: 720px){.toolbar-identity{flex-basis:100%;max-width:100%}}@container (max-width: 420px){.toolbar-identity{min-width:0;flex-basis:auto}.toolbar-identity__subtitle{display:none}}.toolbar-actions{display:flex;align-items:center;align-self:flex-end;justify-content:flex-end;gap:var(--p-table-toolbar-gap, 6px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:0 0 auto;margin-left:auto}.actions-group{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.action-btn{height:var(--p-table-toolbar-action-size, 36px);min-width:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);font-size:12px;line-height:1.2;color:var(--p-table-toolbar-action-fg, inherit);background:var(--p-table-toolbar-action-bg, transparent)}.action-btn:hover:not(:disabled),.overflow-trigger:hover:not(:disabled),.end-actions ::ng-deep .mat-mdc-icon-button:hover:not(:disabled){background:var(--p-table-toolbar-action-hover-bg, var(--p-table-toolbar-action-hover-bg-default))}.action-btn:focus-visible,.overflow-trigger:focus-visible,.end-actions ::ng-deep .mat-mdc-icon-button:focus-visible{outline:2px solid var(--p-table-toolbar-action-focus-ring, var(--p-table-toolbar-action-focus-ring-default));outline-offset:2px}.action-btn--utility{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}.praxis-table-toolbar-action--columns.action-btn{width:var(--p-table-toolbar-action-size, 36px);padding:0}.praxis-table-toolbar-action--columns mat-icon{margin:0}.toolbar-icon-btn{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);color:var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 9%,transparent);border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.toolbar-icon-btn:hover:not(:disabled){color:var(--md-sys-color-on-primary-container);background:color-mix(in srgb,var(--md-sys-color-primary) 16%,transparent);border-color:color-mix(in srgb,var(--md-sys-color-primary) 36%,transparent)}.action-btn--fab{width:42px;height:42px;box-shadow:none}.pfx-tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.pfx-tonal:hover{background:var(--md-sys-color-secondary-container)}.mobile-actions{display:none;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.overflow-trigger{height:var(--p-table-toolbar-action-size, 36px)}.action-btn .mat-icon,.action-btn--fab .mat-icon,.overflow-trigger .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.praxis-table-toolbar-action--columns .mat-icon{font-size:24px;width:24px;height:24px;line-height:24px}.praxis-table-column-menu-item.mat-mdc-menu-item{min-height:40px}.praxis-table-column-menu-content{align-items:center;display:flex;gap:10px;min-height:40px;width:100%}.praxis-table-column-menu-check.mat-icon{color:var(--md-sys-color-primary, currentColor);flex:0 0 20px;font-size:20px;height:20px;line-height:20px;margin-inline-end:0;width:20px}.action-btn.mat-mdc-button-base,.action-btn--fab.mat-mdc-button-base,.overflow-trigger.mat-mdc-button-base,.toolbar-icon-btn.mat-mdc-button-base{--mdc-text-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-filled-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-protected-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-outlined-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.action-btn.mat-mdc-unelevated-button:not(:disabled),.action-btn.mat-mdc-outlined-button:not(:disabled),.action-btn.pfx-tonal:not(:disabled){border-color:color-mix(in srgb,var(--md-sys-color-outline-variant, #d7dbe5) 82%,transparent)}.action-btn.mat-mdc-unelevated-button:not(:disabled){box-shadow:none}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled){--mdc-filled-button-container-color: var(--md-sys-color-primary);--mdc-filled-button-label-text-color: var(--md-sys-color-on-primary);--mat-filled-button-state-layer-color: var(--md-sys-color-on-primary);background:var(--md-sys-color-primary)!important;border-color:transparent;color:var(--md-sys-color-on-primary)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled):hover{background:color-mix(in srgb,var(--md-sys-color-primary) 88%,var(--md-sys-color-on-primary) 12%)!important}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mat-icon{color:var(--md-sys-color-on-primary)!important}.action-btn.mat-mdc-button-base:not(.mat-mdc-icon-button){padding-inline:10px}.end-actions{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px);margin-left:4px;padding-left:10px;border-left:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions:empty{display:none;gap:0;margin-left:0;padding-left:0;border-left:0}.end-actions ::ng-deep .mat-mdc-icon-button{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);display:inline-grid;place-items:center;padding:0;line-height:0;--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px);--mat-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.end-actions ::ng-deep .mat-mdc-icon-button .mat-icon{display:block;flex:0 0 auto;font-size:24px;width:24px;height:24px;line-height:24px;margin:0}.praxis-toolbar.p-table-toolbar--divider-between-groups .actions-group,.praxis-toolbar.p-table-toolbar--divider-start .toolbar-main{padding-right:10px;border-right:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions ::ng-deep .praxis-table-toolbar-action--ai,.end-actions ::ng-deep .praxis-table-ai-trigger{color:var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default));background:color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 10%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 24%,transparent)}.end-actions ::ng-deep [data-role=table-settings]{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}@media(min-width:1024px){.toolbar-actions{justify-content:flex-end}}@media(max-width:1023px){.actions-group{display:none}.mobile-actions{display:flex}.toolbar-actions{justify-content:flex-end}.toolbar-identity{min-width:0;max-width:100%;flex:1 1 100%}}\n"], dependencies: [{ kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFabButton, selector: "button[mat-fab], a[mat-fab], button[matFab], a[matFab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: PraxisIconDirective, selector: "mat-icon[praxisIcon]", inputs: ["praxisIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] });
|
|
2085
|
+
`, isInline: true, styles: [":host{display:block}.praxis-toolbar{--p-table-toolbar-bg-default: linear-gradient( 180deg, color-mix(in srgb, var(--md-sys-color-surface, #fff) 96%, transparent), color-mix(in srgb, var(--md-sys-color-surface-container-low, #f6f8fc) 100%, transparent) );--p-table-toolbar-fg-default: var(--md-sys-color-on-surface, currentColor);--p-table-toolbar-border-color-default: color-mix(in srgb, var(--md-sys-color-outline-variant, #d7dbe5) 78%, transparent);--p-table-toolbar-divider-color-default: color-mix(in srgb, var(--md-sys-color-outline) 42%, transparent);--p-table-toolbar-action-hover-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 10%, transparent);--p-table-toolbar-action-active-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 16%, transparent);--p-table-toolbar-action-focus-ring-default: color-mix(in srgb, var(--md-sys-color-primary) 52%, transparent);--p-table-toolbar-ai-accent-color-default: var(--md-sys-color-primary, #0b72d9);--p-table-toolbar-status-fg-default: var(--md-sys-color-on-surface-variant, currentColor);background:var(--p-table-toolbar-bg, var(--p-table-toolbar-bg-default));color:var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default));box-shadow:var(--p-table-toolbar-shadow, none);padding:var(--p-table-toolbar-padding-block, var(--pfx-toolbar-pad-y, 6px)) var(--p-table-toolbar-padding-inline, var(--pfx-toolbar-pad-x, 12px));min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));display:flex;flex-direction:row;align-items:center;gap:var(--p-table-toolbar-gap, 6px);flex-wrap:wrap;border:var(--p-table-toolbar-border-width, 1px) solid var(--p-table-toolbar-border-color, var(--p-table-toolbar-border-color-default));border-radius:var(--p-table-toolbar-radius, 10px)}.praxis-toolbar.p-table-toolbar--flat{--p-table-toolbar-border-width: 0;--p-table-toolbar-shadow: none}.praxis-toolbar.p-table-toolbar--elevated{--p-table-toolbar-shadow: 0 12px 28px color-mix(in srgb, var(--md-sys-color-shadow, #000) 12%, transparent)}.praxis-toolbar.p-table-toolbar--integrated{--p-table-toolbar-bg: transparent;--p-table-toolbar-border-width: 0;--p-table-toolbar-radius: 0}.praxis-toolbar.p-table-toolbar--compact{--p-table-toolbar-min-height: 36px;--p-table-toolbar-padding-block: 4px;--p-table-toolbar-padding-inline: 10px;--p-table-toolbar-gap: 4px;--p-table-toolbar-actions-gap: 4px;--p-table-toolbar-action-size: 32px;--p-table-toolbar-action-radius: 7px}.praxis-toolbar.p-table-toolbar--comfortable{--p-table-toolbar-min-height: 44px;--p-table-toolbar-action-size: 36px}.praxis-toolbar.p-table-toolbar--spacious{--p-table-toolbar-min-height: 52px;--p-table-toolbar-padding-block: 8px;--p-table-toolbar-padding-inline: 16px;--p-table-toolbar-gap: 8px;--p-table-toolbar-actions-gap: 8px;--p-table-toolbar-action-size: 40px}.praxis-toolbar.p-table-toolbar--square{--p-table-toolbar-radius: 0;--p-table-toolbar-action-radius: 4px}.praxis-toolbar.p-table-toolbar--pill{--p-table-toolbar-radius: 999px;--p-table-toolbar-action-radius: 999px}:host(.praxis-toolbar-stack-top) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}:host(.praxis-toolbar-footer) .praxis-toolbar{border-top-left-radius:0;border-top-right-radius:0}:host(.praxis-toolbar-footer.footer-flat) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}.praxis-toolbar.mat-toolbar-single-row,.praxis-toolbar .mat-toolbar-row{height:auto}.praxis-toolbar.mat-toolbar-multiple-rows{min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px))}.toolbar-main{display:flex;align-items:center;justify-content:flex-start;min-width:0;column-gap:var(--p-table-toolbar-gap, 6px);row-gap:var(--p-table-toolbar-identity-filter-gap, 8px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:1 1 360px;flex-wrap:wrap;container-type:inline-size}.toolbar-identity{display:flex;align-items:center;gap:var(--p-table-toolbar-identity-gap, 8px);min-width:0;max-width:100%;min-height:var(--p-table-toolbar-identity-min-height, 30px);flex:1 1 100%;margin-block-end:var(--p-table-toolbar-identity-margin-bottom, 2px);padding-inline:2px;color:var(--p-table-toolbar-title-fg, var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default)))}.toolbar-identity--center{text-align:center;justify-content:center}.toolbar-identity--end{text-align:end;justify-content:flex-end}.toolbar-identity--center .toolbar-identity__copy{align-items:center}.toolbar-identity--end .toolbar-identity__copy{align-items:flex-end}.toolbar-identity__icon{width:var(--p-table-toolbar-identity-icon-size, 28px);height:var(--p-table-toolbar-identity-icon-size, 28px);border-radius:var(--p-table-toolbar-identity-icon-radius, 8px);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor));background:color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 8%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 18%,transparent)}.toolbar-identity__icon .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.toolbar-identity__copy{display:flex;flex-direction:column;min-width:0;max-width:100%;gap:1px}.toolbar-identity__title,.toolbar-identity__subtitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-identity__title{font-size:var(--p-table-toolbar-title-font-size, 14px);font-weight:var(--p-table-toolbar-title-font-weight, 700);line-height:1.2;letter-spacing:0;color:var(--p-table-toolbar-title-fg, currentColor)}.toolbar-identity__subtitle{font-size:var(--p-table-toolbar-subtitle-font-size, 11.5px);line-height:1.25;color:var(--p-table-toolbar-subtitle-fg, var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default)))}.toolbar-main>*{min-width:0}@container (max-width: 720px){.toolbar-identity{flex-basis:100%;max-width:100%}}@container (max-width: 420px){.toolbar-identity{min-width:0;flex-basis:auto}.toolbar-identity__subtitle{display:none}}.toolbar-actions{display:flex;align-items:center;align-self:flex-end;justify-content:flex-end;gap:var(--p-table-toolbar-gap, 6px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:0 0 auto;margin-left:auto}.actions-group{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.action-btn{height:var(--p-table-toolbar-action-size, 36px);min-width:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);font-size:12px;line-height:1.2;color:var(--p-table-toolbar-action-fg, inherit);background:var(--p-table-toolbar-action-bg, transparent)}.action-btn:hover:not(:disabled),.overflow-trigger:hover:not(:disabled),.end-actions ::ng-deep .mat-mdc-icon-button:hover:not(:disabled){background:var(--p-table-toolbar-action-hover-bg, var(--p-table-toolbar-action-hover-bg-default))}.action-btn:focus-visible,.overflow-trigger:focus-visible,.end-actions ::ng-deep .mat-mdc-icon-button:focus-visible{outline:2px solid var(--p-table-toolbar-action-focus-ring, var(--p-table-toolbar-action-focus-ring-default));outline-offset:2px}.action-btn--utility{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}.praxis-table-toolbar-action--columns.action-btn{width:var(--p-table-toolbar-action-size, 36px);padding:0}.praxis-table-toolbar-action--columns mat-icon{margin:0}.toolbar-icon-btn{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);color:var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 9%,transparent);border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.toolbar-icon-btn:hover:not(:disabled){color:var(--md-sys-color-on-primary-container);background:color-mix(in srgb,var(--md-sys-color-primary) 16%,transparent);border-color:color-mix(in srgb,var(--md-sys-color-primary) 36%,transparent)}.action-btn--fab{width:42px;height:42px;box-shadow:none}.pfx-tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.pfx-tonal:hover{background:var(--md-sys-color-secondary-container)}.mobile-actions{display:none;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.overflow-trigger{height:var(--p-table-toolbar-action-size, 36px)}.action-btn .mat-icon,.action-btn--fab .mat-icon,.overflow-trigger .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.praxis-table-toolbar-action--columns .mat-icon{font-size:24px;width:24px;height:24px;line-height:24px}.praxis-table-column-menu-item.mat-mdc-menu-item{min-height:40px}.praxis-table-export-menu-item.mat-mdc-menu-item{min-width:280px;white-space:nowrap}.praxis-table-column-menu-content{align-items:center;display:flex;gap:10px;min-height:40px;width:100%}.praxis-table-column-menu-check.mat-icon{color:var(--md-sys-color-primary, currentColor);flex:0 0 20px;font-size:20px;height:20px;line-height:20px;margin-inline-end:0;width:20px}.action-btn.mat-mdc-button-base,.action-btn--fab.mat-mdc-button-base,.overflow-trigger.mat-mdc-button-base,.toolbar-icon-btn.mat-mdc-button-base{--mdc-text-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-filled-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-protected-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-outlined-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.action-btn.mat-mdc-unelevated-button:not(:disabled),.action-btn.mat-mdc-outlined-button:not(:disabled),.action-btn.pfx-tonal:not(:disabled){border-color:color-mix(in srgb,var(--md-sys-color-outline-variant, #d7dbe5) 82%,transparent)}.action-btn.mat-mdc-unelevated-button:not(:disabled){box-shadow:none}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled){--mdc-filled-button-container-color: var(--md-sys-color-primary);--mdc-filled-button-label-text-color: var(--md-sys-color-on-primary);--mat-filled-button-state-layer-color: var(--md-sys-color-on-primary);background:var(--md-sys-color-primary)!important;border-color:transparent;color:var(--md-sys-color-on-primary)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled):hover{background:color-mix(in srgb,var(--md-sys-color-primary) 88%,var(--md-sys-color-on-primary) 12%)!important}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mat-icon{color:var(--md-sys-color-on-primary)!important}.action-btn.mat-mdc-button-base:not(.mat-mdc-icon-button){padding-inline:10px}.end-actions{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px);margin-left:4px;padding-left:10px;border-left:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions:empty{display:none;gap:0;margin-left:0;padding-left:0;border-left:0}.end-actions ::ng-deep .mat-mdc-icon-button{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);display:inline-grid;place-items:center;padding:0;line-height:0;--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px);--mat-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.end-actions ::ng-deep .mat-mdc-icon-button .mat-icon{display:block;flex:0 0 auto;font-size:24px;width:24px;height:24px;line-height:24px;margin:0}.praxis-toolbar.p-table-toolbar--divider-between-groups .actions-group,.praxis-toolbar.p-table-toolbar--divider-start .toolbar-main{padding-right:10px;border-right:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions ::ng-deep .praxis-table-toolbar-action--ai,.end-actions ::ng-deep .praxis-table-ai-trigger{color:var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default));background:color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 10%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 24%,transparent)}.end-actions ::ng-deep [data-role=table-settings]{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}@media(min-width:1024px){.toolbar-actions{justify-content:flex-end}}@media(max-width:1023px){.actions-group{display:none}.mobile-actions{display:flex}.toolbar-actions{justify-content:flex-end}.toolbar-identity{min-width:0;max-width:100%;flex:1 1 100%}}\n"], dependencies: [{ kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFabButton, selector: "button[mat-fab], a[mat-fab], button[matFab], a[matFab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: PraxisIconDirective, selector: "mat-icon[praxisIcon]", inputs: ["praxisIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] });
|
|
1881
2086
|
}
|
|
1882
2087
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PraxisTableToolbar, decorators: [{
|
|
1883
2088
|
type: Component,
|
|
@@ -1983,8 +2188,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
1983
2188
|
[color]="getActionColor(action)"
|
|
1984
2189
|
[disabled]="isActionDisabled(action)"
|
|
1985
2190
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1986
|
-
[attr.aria-label]="
|
|
1987
|
-
[matTooltip]="action
|
|
2191
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2192
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
1988
2193
|
matTooltipPosition="below"
|
|
1989
2194
|
>
|
|
1990
2195
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -1996,8 +2201,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
1996
2201
|
[color]="getActionColor(action)"
|
|
1997
2202
|
[disabled]="isActionDisabled(action)"
|
|
1998
2203
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
1999
|
-
[attr.aria-label]="
|
|
2000
|
-
[matTooltip]="action
|
|
2204
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2205
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
2001
2206
|
matTooltipPosition="below"
|
|
2002
2207
|
>
|
|
2003
2208
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -2008,6 +2213,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2008
2213
|
mat-button
|
|
2009
2214
|
[color]="getActionColor(action)"
|
|
2010
2215
|
[disabled]="isActionDisabled(action)"
|
|
2216
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2011
2217
|
[matMenuTriggerFor]="startActionMenu"
|
|
2012
2218
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2013
2219
|
>
|
|
@@ -2019,6 +2225,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2019
2225
|
<button
|
|
2020
2226
|
mat-menu-item
|
|
2021
2227
|
[disabled]="isActionDisabled(child)"
|
|
2228
|
+
[matTooltip]="getActionTooltip(child)"
|
|
2022
2229
|
(click)="emitToolbarAction($event, getActionId(child), child)"
|
|
2023
2230
|
>
|
|
2024
2231
|
@if (child.icon) { <mat-icon [praxisIcon]="child.icon"></mat-icon> }
|
|
@@ -2032,6 +2239,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2032
2239
|
mat-button
|
|
2033
2240
|
[color]="getActionColor(action)"
|
|
2034
2241
|
[disabled]="isActionDisabled(action)"
|
|
2242
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2035
2243
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2036
2244
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2037
2245
|
>
|
|
@@ -2044,6 +2252,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2044
2252
|
mat-stroked-button
|
|
2045
2253
|
[color]="getActionColor(action)"
|
|
2046
2254
|
[disabled]="isActionDisabled(action)"
|
|
2255
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2047
2256
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2048
2257
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2049
2258
|
>
|
|
@@ -2056,6 +2265,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2056
2265
|
mat-raised-button
|
|
2057
2266
|
[color]="getActionColor(action)"
|
|
2058
2267
|
[disabled]="isActionDisabled(action)"
|
|
2268
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2059
2269
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2060
2270
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2061
2271
|
>
|
|
@@ -2068,6 +2278,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2068
2278
|
mat-button
|
|
2069
2279
|
[color]="getActionColor(action)"
|
|
2070
2280
|
[disabled]="isActionDisabled(action)"
|
|
2281
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2071
2282
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2072
2283
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2073
2284
|
>
|
|
@@ -2080,6 +2291,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2080
2291
|
mat-button
|
|
2081
2292
|
[color]="getActionColor(action)"
|
|
2082
2293
|
[disabled]="isActionDisabled(action)"
|
|
2294
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2083
2295
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2084
2296
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2085
2297
|
>
|
|
@@ -2092,6 +2304,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2092
2304
|
mat-flat-button
|
|
2093
2305
|
[color]="getActionColor(action)"
|
|
2094
2306
|
[disabled]="isActionDisabled(action)"
|
|
2307
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2095
2308
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2096
2309
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2097
2310
|
>
|
|
@@ -2109,8 +2322,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2109
2322
|
[color]="getActionColor(action)"
|
|
2110
2323
|
[disabled]="isActionDisabled(action)"
|
|
2111
2324
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2112
|
-
[attr.aria-label]="
|
|
2113
|
-
[matTooltip]="action
|
|
2325
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2326
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
2114
2327
|
matTooltipPosition="below"
|
|
2115
2328
|
>
|
|
2116
2329
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -2122,8 +2335,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2122
2335
|
[color]="getActionColor(action)"
|
|
2123
2336
|
[disabled]="isActionDisabled(action)"
|
|
2124
2337
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2125
|
-
[attr.aria-label]="
|
|
2126
|
-
[matTooltip]="action
|
|
2338
|
+
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2339
|
+
[matTooltip]="getActionTooltip(action) || action.label || getActionId(action)"
|
|
2127
2340
|
matTooltipPosition="below"
|
|
2128
2341
|
>
|
|
2129
2342
|
<mat-icon [praxisIcon]="action.icon || 'bolt'"></mat-icon>
|
|
@@ -2134,6 +2347,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2134
2347
|
mat-button
|
|
2135
2348
|
[color]="getActionColor(action)"
|
|
2136
2349
|
[disabled]="isActionDisabled(action)"
|
|
2350
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2137
2351
|
[matMenuTriggerFor]="endActionMenu"
|
|
2138
2352
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2139
2353
|
>
|
|
@@ -2145,6 +2359,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2145
2359
|
<button
|
|
2146
2360
|
mat-menu-item
|
|
2147
2361
|
[disabled]="isActionDisabled(child)"
|
|
2362
|
+
[matTooltip]="getActionTooltip(child)"
|
|
2148
2363
|
(click)="emitToolbarAction($event, getActionId(child), child)"
|
|
2149
2364
|
>
|
|
2150
2365
|
@if (child.icon) { <mat-icon [praxisIcon]="child.icon"></mat-icon> }
|
|
@@ -2158,6 +2373,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2158
2373
|
mat-button
|
|
2159
2374
|
[color]="getActionColor(action)"
|
|
2160
2375
|
[disabled]="isActionDisabled(action)"
|
|
2376
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2161
2377
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2162
2378
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2163
2379
|
>
|
|
@@ -2170,6 +2386,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2170
2386
|
mat-stroked-button
|
|
2171
2387
|
[color]="getActionColor(action)"
|
|
2172
2388
|
[disabled]="isActionDisabled(action)"
|
|
2389
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2173
2390
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2174
2391
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2175
2392
|
>
|
|
@@ -2182,6 +2399,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2182
2399
|
mat-raised-button
|
|
2183
2400
|
[color]="getActionColor(action)"
|
|
2184
2401
|
[disabled]="isActionDisabled(action)"
|
|
2402
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2185
2403
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2186
2404
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2187
2405
|
>
|
|
@@ -2194,6 +2412,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2194
2412
|
mat-button
|
|
2195
2413
|
[color]="getActionColor(action)"
|
|
2196
2414
|
[disabled]="isActionDisabled(action)"
|
|
2415
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2197
2416
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2198
2417
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2199
2418
|
>
|
|
@@ -2206,6 +2425,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2206
2425
|
mat-button
|
|
2207
2426
|
[color]="getActionColor(action)"
|
|
2208
2427
|
[disabled]="isActionDisabled(action)"
|
|
2428
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2209
2429
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2210
2430
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2211
2431
|
>
|
|
@@ -2218,6 +2438,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2218
2438
|
mat-flat-button
|
|
2219
2439
|
[color]="getActionColor(action)"
|
|
2220
2440
|
[disabled]="isActionDisabled(action)"
|
|
2441
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2221
2442
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2222
2443
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2223
2444
|
>
|
|
@@ -2234,6 +2455,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2234
2455
|
mat-button
|
|
2235
2456
|
[color]="getActionColor(action)"
|
|
2236
2457
|
[disabled]="isActionDisabled(action)"
|
|
2458
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2237
2459
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2238
2460
|
[attr.aria-label]="getActionAriaLabel(action)"
|
|
2239
2461
|
>
|
|
@@ -2260,16 +2482,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2260
2482
|
@for (format of config?.export?.formats; track format) {
|
|
2261
2483
|
<button
|
|
2262
2484
|
mat-menu-item
|
|
2485
|
+
class="praxis-table-export-menu-item"
|
|
2263
2486
|
[disabled]="exportBusy"
|
|
2487
|
+
[matTooltip]="getExportFormatTooltip(format)"
|
|
2488
|
+
[attr.aria-label]="getExportFormatAriaLabel(format)"
|
|
2264
2489
|
(click)="emitExportAction($event, format)"
|
|
2265
2490
|
>
|
|
2266
2491
|
<mat-icon [praxisIcon]="getExportIcon(format)"></mat-icon>
|
|
2267
|
-
{{ format
|
|
2492
|
+
{{ getExportFormatLabel(format) }}
|
|
2268
2493
|
</button>
|
|
2269
|
-
@if (
|
|
2494
|
+
@if (isVisibleExcelExportEnabled(format)) {
|
|
2270
2495
|
<button
|
|
2271
2496
|
mat-menu-item
|
|
2497
|
+
class="praxis-table-export-menu-item"
|
|
2272
2498
|
[disabled]="exportBusy"
|
|
2499
|
+
[matTooltip]="getVisibleExcelExportDescription()"
|
|
2500
|
+
[attr.aria-label]="getVisibleExcelExportAriaLabel()"
|
|
2273
2501
|
(click)="emitVisibleExcelExportAction($event)"
|
|
2274
2502
|
>
|
|
2275
2503
|
<mat-icon [praxisIcon]="'table_view'"></mat-icon>
|
|
@@ -2346,6 +2574,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2346
2574
|
<button
|
|
2347
2575
|
mat-menu-item
|
|
2348
2576
|
[disabled]="isActionDisabled(action)"
|
|
2577
|
+
[matTooltip]="getActionTooltip(action)"
|
|
2349
2578
|
(click)="emitToolbarAction($event, getActionId(action), action)"
|
|
2350
2579
|
>
|
|
2351
2580
|
@if (action.icon) { <mat-icon [praxisIcon]="action.icon"></mat-icon> }
|
|
@@ -2368,16 +2597,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2368
2597
|
@for (format of config?.export?.formats; track format) {
|
|
2369
2598
|
<button
|
|
2370
2599
|
mat-menu-item
|
|
2600
|
+
class="praxis-table-export-menu-item"
|
|
2371
2601
|
[disabled]="exportBusy"
|
|
2602
|
+
[matTooltip]="getExportFormatTooltip(format)"
|
|
2603
|
+
[attr.aria-label]="getExportFormatAriaLabel(format)"
|
|
2372
2604
|
(click)="emitExportAction($event, format)"
|
|
2373
2605
|
>
|
|
2374
2606
|
<mat-icon>{{ getExportIcon(format) }}</mat-icon>
|
|
2375
|
-
{{ format
|
|
2607
|
+
{{ getExportFormatLabel(format) }}
|
|
2376
2608
|
</button>
|
|
2377
|
-
@if (
|
|
2609
|
+
@if (isVisibleExcelExportEnabled(format)) {
|
|
2378
2610
|
<button
|
|
2379
2611
|
mat-menu-item
|
|
2612
|
+
class="praxis-table-export-menu-item"
|
|
2380
2613
|
[disabled]="exportBusy"
|
|
2614
|
+
[matTooltip]="getVisibleExcelExportDescription()"
|
|
2615
|
+
[attr.aria-label]="getVisibleExcelExportAriaLabel()"
|
|
2381
2616
|
(click)="emitVisibleExcelExportAction($event)"
|
|
2382
2617
|
>
|
|
2383
2618
|
<mat-icon [praxisIcon]="'table_view'"></mat-icon>
|
|
@@ -2434,7 +2669,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
2434
2669
|
`, host: {
|
|
2435
2670
|
'[class.praxis-toolbar-footer]': "placement === 'footer'",
|
|
2436
2671
|
'(document:keydown)': 'onDocumentKeydown($event)',
|
|
2437
|
-
}, styles: [":host{display:block}.praxis-toolbar{--p-table-toolbar-bg-default: linear-gradient( 180deg, color-mix(in srgb, var(--md-sys-color-surface, #fff) 96%, transparent), color-mix(in srgb, var(--md-sys-color-surface-container-low, #f6f8fc) 100%, transparent) );--p-table-toolbar-fg-default: var(--md-sys-color-on-surface, currentColor);--p-table-toolbar-border-color-default: color-mix(in srgb, var(--md-sys-color-outline-variant, #d7dbe5) 78%, transparent);--p-table-toolbar-divider-color-default: color-mix(in srgb, var(--md-sys-color-outline) 42%, transparent);--p-table-toolbar-action-hover-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 10%, transparent);--p-table-toolbar-action-active-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 16%, transparent);--p-table-toolbar-action-focus-ring-default: color-mix(in srgb, var(--md-sys-color-primary) 52%, transparent);--p-table-toolbar-ai-accent-color-default: var(--md-sys-color-primary, #0b72d9);--p-table-toolbar-status-fg-default: var(--md-sys-color-on-surface-variant, currentColor);background:var(--p-table-toolbar-bg, var(--p-table-toolbar-bg-default));color:var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default));box-shadow:var(--p-table-toolbar-shadow, none);padding:var(--p-table-toolbar-padding-block, var(--pfx-toolbar-pad-y, 6px)) var(--p-table-toolbar-padding-inline, var(--pfx-toolbar-pad-x, 12px));min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));display:flex;flex-direction:row;align-items:center;gap:var(--p-table-toolbar-gap, 6px);flex-wrap:wrap;border:var(--p-table-toolbar-border-width, 1px) solid var(--p-table-toolbar-border-color, var(--p-table-toolbar-border-color-default));border-radius:var(--p-table-toolbar-radius, 10px)}.praxis-toolbar.p-table-toolbar--flat{--p-table-toolbar-border-width: 0;--p-table-toolbar-shadow: none}.praxis-toolbar.p-table-toolbar--elevated{--p-table-toolbar-shadow: 0 12px 28px color-mix(in srgb, var(--md-sys-color-shadow, #000) 12%, transparent)}.praxis-toolbar.p-table-toolbar--integrated{--p-table-toolbar-bg: transparent;--p-table-toolbar-border-width: 0;--p-table-toolbar-radius: 0}.praxis-toolbar.p-table-toolbar--compact{--p-table-toolbar-min-height: 36px;--p-table-toolbar-padding-block: 4px;--p-table-toolbar-padding-inline: 10px;--p-table-toolbar-gap: 4px;--p-table-toolbar-actions-gap: 4px;--p-table-toolbar-action-size: 32px;--p-table-toolbar-action-radius: 7px}.praxis-toolbar.p-table-toolbar--comfortable{--p-table-toolbar-min-height: 44px;--p-table-toolbar-action-size: 36px}.praxis-toolbar.p-table-toolbar--spacious{--p-table-toolbar-min-height: 52px;--p-table-toolbar-padding-block: 8px;--p-table-toolbar-padding-inline: 16px;--p-table-toolbar-gap: 8px;--p-table-toolbar-actions-gap: 8px;--p-table-toolbar-action-size: 40px}.praxis-toolbar.p-table-toolbar--square{--p-table-toolbar-radius: 0;--p-table-toolbar-action-radius: 4px}.praxis-toolbar.p-table-toolbar--pill{--p-table-toolbar-radius: 999px;--p-table-toolbar-action-radius: 999px}:host(.praxis-toolbar-stack-top) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}:host(.praxis-toolbar-footer) .praxis-toolbar{border-top-left-radius:0;border-top-right-radius:0}:host(.praxis-toolbar-footer.footer-flat) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}.praxis-toolbar.mat-toolbar-single-row,.praxis-toolbar .mat-toolbar-row{height:auto}.praxis-toolbar.mat-toolbar-multiple-rows{min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px))}.toolbar-main{display:flex;align-items:center;justify-content:flex-start;min-width:0;column-gap:var(--p-table-toolbar-gap, 6px);row-gap:var(--p-table-toolbar-identity-filter-gap, 8px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:1 1 360px;flex-wrap:wrap;container-type:inline-size}.toolbar-identity{display:flex;align-items:center;gap:var(--p-table-toolbar-identity-gap, 8px);min-width:0;max-width:100%;min-height:var(--p-table-toolbar-identity-min-height, 30px);flex:1 1 100%;margin-block-end:var(--p-table-toolbar-identity-margin-bottom, 2px);padding-inline:2px;color:var(--p-table-toolbar-title-fg, var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default)))}.toolbar-identity--center{text-align:center;justify-content:center}.toolbar-identity--end{text-align:end;justify-content:flex-end}.toolbar-identity--center .toolbar-identity__copy{align-items:center}.toolbar-identity--end .toolbar-identity__copy{align-items:flex-end}.toolbar-identity__icon{width:var(--p-table-toolbar-identity-icon-size, 28px);height:var(--p-table-toolbar-identity-icon-size, 28px);border-radius:var(--p-table-toolbar-identity-icon-radius, 8px);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor));background:color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 8%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 18%,transparent)}.toolbar-identity__icon .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.toolbar-identity__copy{display:flex;flex-direction:column;min-width:0;max-width:100%;gap:1px}.toolbar-identity__title,.toolbar-identity__subtitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-identity__title{font-size:var(--p-table-toolbar-title-font-size, 14px);font-weight:var(--p-table-toolbar-title-font-weight, 700);line-height:1.2;letter-spacing:0;color:var(--p-table-toolbar-title-fg, currentColor)}.toolbar-identity__subtitle{font-size:var(--p-table-toolbar-subtitle-font-size, 11.5px);line-height:1.25;color:var(--p-table-toolbar-subtitle-fg, var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default)))}.toolbar-main>*{min-width:0}@container (max-width: 720px){.toolbar-identity{flex-basis:100%;max-width:100%}}@container (max-width: 420px){.toolbar-identity{min-width:0;flex-basis:auto}.toolbar-identity__subtitle{display:none}}.toolbar-actions{display:flex;align-items:center;align-self:flex-end;justify-content:flex-end;gap:var(--p-table-toolbar-gap, 6px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:0 0 auto;margin-left:auto}.actions-group{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.action-btn{height:var(--p-table-toolbar-action-size, 36px);min-width:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);font-size:12px;line-height:1.2;color:var(--p-table-toolbar-action-fg, inherit);background:var(--p-table-toolbar-action-bg, transparent)}.action-btn:hover:not(:disabled),.overflow-trigger:hover:not(:disabled),.end-actions ::ng-deep .mat-mdc-icon-button:hover:not(:disabled){background:var(--p-table-toolbar-action-hover-bg, var(--p-table-toolbar-action-hover-bg-default))}.action-btn:focus-visible,.overflow-trigger:focus-visible,.end-actions ::ng-deep .mat-mdc-icon-button:focus-visible{outline:2px solid var(--p-table-toolbar-action-focus-ring, var(--p-table-toolbar-action-focus-ring-default));outline-offset:2px}.action-btn--utility{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}.praxis-table-toolbar-action--columns.action-btn{width:var(--p-table-toolbar-action-size, 36px);padding:0}.praxis-table-toolbar-action--columns mat-icon{margin:0}.toolbar-icon-btn{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);color:var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 9%,transparent);border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.toolbar-icon-btn:hover:not(:disabled){color:var(--md-sys-color-on-primary-container);background:color-mix(in srgb,var(--md-sys-color-primary) 16%,transparent);border-color:color-mix(in srgb,var(--md-sys-color-primary) 36%,transparent)}.action-btn--fab{width:42px;height:42px;box-shadow:none}.pfx-tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.pfx-tonal:hover{background:var(--md-sys-color-secondary-container)}.mobile-actions{display:none;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.overflow-trigger{height:var(--p-table-toolbar-action-size, 36px)}.action-btn .mat-icon,.action-btn--fab .mat-icon,.overflow-trigger .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.praxis-table-toolbar-action--columns .mat-icon{font-size:24px;width:24px;height:24px;line-height:24px}.praxis-table-column-menu-item.mat-mdc-menu-item{min-height:40px}.praxis-table-column-menu-content{align-items:center;display:flex;gap:10px;min-height:40px;width:100%}.praxis-table-column-menu-check.mat-icon{color:var(--md-sys-color-primary, currentColor);flex:0 0 20px;font-size:20px;height:20px;line-height:20px;margin-inline-end:0;width:20px}.action-btn.mat-mdc-button-base,.action-btn--fab.mat-mdc-button-base,.overflow-trigger.mat-mdc-button-base,.toolbar-icon-btn.mat-mdc-button-base{--mdc-text-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-filled-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-protected-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-outlined-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.action-btn.mat-mdc-unelevated-button:not(:disabled),.action-btn.mat-mdc-outlined-button:not(:disabled),.action-btn.pfx-tonal:not(:disabled){border-color:color-mix(in srgb,var(--md-sys-color-outline-variant, #d7dbe5) 82%,transparent)}.action-btn.mat-mdc-unelevated-button:not(:disabled){box-shadow:none}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled){--mdc-filled-button-container-color: var(--md-sys-color-primary);--mdc-filled-button-label-text-color: var(--md-sys-color-on-primary);--mat-filled-button-state-layer-color: var(--md-sys-color-on-primary);background:var(--md-sys-color-primary)!important;border-color:transparent;color:var(--md-sys-color-on-primary)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled):hover{background:color-mix(in srgb,var(--md-sys-color-primary) 88%,var(--md-sys-color-on-primary) 12%)!important}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mat-icon{color:var(--md-sys-color-on-primary)!important}.action-btn.mat-mdc-button-base:not(.mat-mdc-icon-button){padding-inline:10px}.end-actions{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px);margin-left:4px;padding-left:10px;border-left:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions:empty{display:none;gap:0;margin-left:0;padding-left:0;border-left:0}.end-actions ::ng-deep .mat-mdc-icon-button{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);display:inline-grid;place-items:center;padding:0;line-height:0;--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px);--mat-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.end-actions ::ng-deep .mat-mdc-icon-button .mat-icon{display:block;flex:0 0 auto;font-size:24px;width:24px;height:24px;line-height:24px;margin:0}.praxis-toolbar.p-table-toolbar--divider-between-groups .actions-group,.praxis-toolbar.p-table-toolbar--divider-start .toolbar-main{padding-right:10px;border-right:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions ::ng-deep .praxis-table-toolbar-action--ai,.end-actions ::ng-deep .praxis-table-ai-trigger{color:var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default));background:color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 10%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 24%,transparent)}.end-actions ::ng-deep [data-role=table-settings]{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}@media(min-width:1024px){.toolbar-actions{justify-content:flex-end}}@media(max-width:1023px){.actions-group{display:none}.mobile-actions{display:flex}.toolbar-actions{justify-content:flex-end}.toolbar-identity{min-width:0;max-width:100%;flex:1 1 100%}}\n"] }]
|
|
2672
|
+
}, styles: [":host{display:block}.praxis-toolbar{--p-table-toolbar-bg-default: linear-gradient( 180deg, color-mix(in srgb, var(--md-sys-color-surface, #fff) 96%, transparent), color-mix(in srgb, var(--md-sys-color-surface-container-low, #f6f8fc) 100%, transparent) );--p-table-toolbar-fg-default: var(--md-sys-color-on-surface, currentColor);--p-table-toolbar-border-color-default: color-mix(in srgb, var(--md-sys-color-outline-variant, #d7dbe5) 78%, transparent);--p-table-toolbar-divider-color-default: color-mix(in srgb, var(--md-sys-color-outline) 42%, transparent);--p-table-toolbar-action-hover-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 10%, transparent);--p-table-toolbar-action-active-bg-default: color-mix(in srgb, var(--md-sys-color-primary) 16%, transparent);--p-table-toolbar-action-focus-ring-default: color-mix(in srgb, var(--md-sys-color-primary) 52%, transparent);--p-table-toolbar-ai-accent-color-default: var(--md-sys-color-primary, #0b72d9);--p-table-toolbar-status-fg-default: var(--md-sys-color-on-surface-variant, currentColor);background:var(--p-table-toolbar-bg, var(--p-table-toolbar-bg-default));color:var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default));box-shadow:var(--p-table-toolbar-shadow, none);padding:var(--p-table-toolbar-padding-block, var(--pfx-toolbar-pad-y, 6px)) var(--p-table-toolbar-padding-inline, var(--pfx-toolbar-pad-x, 12px));min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));display:flex;flex-direction:row;align-items:center;gap:var(--p-table-toolbar-gap, 6px);flex-wrap:wrap;border:var(--p-table-toolbar-border-width, 1px) solid var(--p-table-toolbar-border-color, var(--p-table-toolbar-border-color-default));border-radius:var(--p-table-toolbar-radius, 10px)}.praxis-toolbar.p-table-toolbar--flat{--p-table-toolbar-border-width: 0;--p-table-toolbar-shadow: none}.praxis-toolbar.p-table-toolbar--elevated{--p-table-toolbar-shadow: 0 12px 28px color-mix(in srgb, var(--md-sys-color-shadow, #000) 12%, transparent)}.praxis-toolbar.p-table-toolbar--integrated{--p-table-toolbar-bg: transparent;--p-table-toolbar-border-width: 0;--p-table-toolbar-radius: 0}.praxis-toolbar.p-table-toolbar--compact{--p-table-toolbar-min-height: 36px;--p-table-toolbar-padding-block: 4px;--p-table-toolbar-padding-inline: 10px;--p-table-toolbar-gap: 4px;--p-table-toolbar-actions-gap: 4px;--p-table-toolbar-action-size: 32px;--p-table-toolbar-action-radius: 7px}.praxis-toolbar.p-table-toolbar--comfortable{--p-table-toolbar-min-height: 44px;--p-table-toolbar-action-size: 36px}.praxis-toolbar.p-table-toolbar--spacious{--p-table-toolbar-min-height: 52px;--p-table-toolbar-padding-block: 8px;--p-table-toolbar-padding-inline: 16px;--p-table-toolbar-gap: 8px;--p-table-toolbar-actions-gap: 8px;--p-table-toolbar-action-size: 40px}.praxis-toolbar.p-table-toolbar--square{--p-table-toolbar-radius: 0;--p-table-toolbar-action-radius: 4px}.praxis-toolbar.p-table-toolbar--pill{--p-table-toolbar-radius: 999px;--p-table-toolbar-action-radius: 999px}:host(.praxis-toolbar-stack-top) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}:host(.praxis-toolbar-footer) .praxis-toolbar{border-top-left-radius:0;border-top-right-radius:0}:host(.praxis-toolbar-footer.footer-flat) .praxis-toolbar{border-bottom-left-radius:0;border-bottom-right-radius:0}.praxis-toolbar.mat-toolbar-single-row,.praxis-toolbar .mat-toolbar-row{height:auto}.praxis-toolbar.mat-toolbar-multiple-rows{min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px))}.toolbar-main{display:flex;align-items:center;justify-content:flex-start;min-width:0;column-gap:var(--p-table-toolbar-gap, 6px);row-gap:var(--p-table-toolbar-identity-filter-gap, 8px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:1 1 360px;flex-wrap:wrap;container-type:inline-size}.toolbar-identity{display:flex;align-items:center;gap:var(--p-table-toolbar-identity-gap, 8px);min-width:0;max-width:100%;min-height:var(--p-table-toolbar-identity-min-height, 30px);flex:1 1 100%;margin-block-end:var(--p-table-toolbar-identity-margin-bottom, 2px);padding-inline:2px;color:var(--p-table-toolbar-title-fg, var(--p-table-toolbar-fg, var(--p-table-toolbar-fg-default)))}.toolbar-identity--center{text-align:center;justify-content:center}.toolbar-identity--end{text-align:end;justify-content:flex-end}.toolbar-identity--center .toolbar-identity__copy{align-items:center}.toolbar-identity--end .toolbar-identity__copy{align-items:flex-end}.toolbar-identity__icon{width:var(--p-table-toolbar-identity-icon-size, 28px);height:var(--p-table-toolbar-identity-icon-size, 28px);border-radius:var(--p-table-toolbar-identity-icon-radius, 8px);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor));background:color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 8%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-icon-fg, var(--md-sys-color-primary, currentColor)) 18%,transparent)}.toolbar-identity__icon .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.toolbar-identity__copy{display:flex;flex-direction:column;min-width:0;max-width:100%;gap:1px}.toolbar-identity__title,.toolbar-identity__subtitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-identity__title{font-size:var(--p-table-toolbar-title-font-size, 14px);font-weight:var(--p-table-toolbar-title-font-weight, 700);line-height:1.2;letter-spacing:0;color:var(--p-table-toolbar-title-fg, currentColor)}.toolbar-identity__subtitle{font-size:var(--p-table-toolbar-subtitle-font-size, 11.5px);line-height:1.25;color:var(--p-table-toolbar-subtitle-fg, var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default)))}.toolbar-main>*{min-width:0}@container (max-width: 720px){.toolbar-identity{flex-basis:100%;max-width:100%}}@container (max-width: 420px){.toolbar-identity{min-width:0;flex-basis:auto}.toolbar-identity__subtitle{display:none}}.toolbar-actions{display:flex;align-items:center;align-self:flex-end;justify-content:flex-end;gap:var(--p-table-toolbar-gap, 6px);min-height:var(--p-table-toolbar-min-height, var(--pfx-filter-h, 44px));flex:0 0 auto;margin-left:auto}.actions-group{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.action-btn{height:var(--p-table-toolbar-action-size, 36px);min-width:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);font-size:12px;line-height:1.2;color:var(--p-table-toolbar-action-fg, inherit);background:var(--p-table-toolbar-action-bg, transparent)}.action-btn:hover:not(:disabled),.overflow-trigger:hover:not(:disabled),.end-actions ::ng-deep .mat-mdc-icon-button:hover:not(:disabled){background:var(--p-table-toolbar-action-hover-bg, var(--p-table-toolbar-action-hover-bg-default))}.action-btn:focus-visible,.overflow-trigger:focus-visible,.end-actions ::ng-deep .mat-mdc-icon-button:focus-visible{outline:2px solid var(--p-table-toolbar-action-focus-ring, var(--p-table-toolbar-action-focus-ring-default));outline-offset:2px}.action-btn--utility{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}.praxis-table-toolbar-action--columns.action-btn{width:var(--p-table-toolbar-action-size, 36px);padding:0}.praxis-table-toolbar-action--columns mat-icon{margin:0}.toolbar-icon-btn{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);border-radius:var(--p-table-toolbar-action-radius, 8px);color:var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 9%,transparent);border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.toolbar-icon-btn:hover:not(:disabled){color:var(--md-sys-color-on-primary-container);background:color-mix(in srgb,var(--md-sys-color-primary) 16%,transparent);border-color:color-mix(in srgb,var(--md-sys-color-primary) 36%,transparent)}.action-btn--fab{width:42px;height:42px;box-shadow:none}.pfx-tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.pfx-tonal:hover{background:var(--md-sys-color-secondary-container)}.mobile-actions{display:none;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px)}.overflow-trigger{height:var(--p-table-toolbar-action-size, 36px)}.action-btn .mat-icon,.action-btn--fab .mat-icon,.overflow-trigger .mat-icon{font-size:18px;width:18px;height:18px;line-height:18px}.praxis-table-toolbar-action--columns .mat-icon{font-size:24px;width:24px;height:24px;line-height:24px}.praxis-table-column-menu-item.mat-mdc-menu-item{min-height:40px}.praxis-table-export-menu-item.mat-mdc-menu-item{min-width:280px;white-space:nowrap}.praxis-table-column-menu-content{align-items:center;display:flex;gap:10px;min-height:40px;width:100%}.praxis-table-column-menu-check.mat-icon{color:var(--md-sys-color-primary, currentColor);flex:0 0 20px;font-size:20px;height:20px;line-height:20px;margin-inline-end:0;width:20px}.action-btn.mat-mdc-button-base,.action-btn--fab.mat-mdc-button-base,.overflow-trigger.mat-mdc-button-base,.toolbar-icon-btn.mat-mdc-button-base{--mdc-text-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-filled-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-protected-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-outlined-button-container-height: var(--p-table-toolbar-action-size, 36px);--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.action-btn.mat-mdc-unelevated-button:not(:disabled),.action-btn.mat-mdc-outlined-button:not(:disabled),.action-btn.pfx-tonal:not(:disabled){border-color:color-mix(in srgb,var(--md-sys-color-outline-variant, #d7dbe5) 82%,transparent)}.action-btn.mat-mdc-unelevated-button:not(:disabled){box-shadow:none}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled){--mdc-filled-button-container-color: var(--md-sys-color-primary);--mdc-filled-button-label-text-color: var(--md-sys-color-on-primary);--mat-filled-button-state-layer-color: var(--md-sys-color-on-primary);background:var(--md-sys-color-primary)!important;border-color:transparent;color:var(--md-sys-color-on-primary)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--md-sys-color-primary) 22%,transparent)}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled):hover{background:color-mix(in srgb,var(--md-sys-color-primary) 88%,var(--md-sys-color-on-primary) 12%)!important}.action-btn.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mat-icon{color:var(--md-sys-color-on-primary)!important}.action-btn.mat-mdc-button-base:not(.mat-mdc-icon-button){padding-inline:10px}.end-actions{display:flex;align-items:center;gap:var(--p-table-toolbar-actions-gap, 6px);margin-left:4px;padding-left:10px;border-left:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions:empty{display:none;gap:0;margin-left:0;padding-left:0;border-left:0}.end-actions ::ng-deep .mat-mdc-icon-button{width:var(--p-table-toolbar-action-size, 36px);height:var(--p-table-toolbar-action-size, 36px);display:inline-grid;place-items:center;padding:0;line-height:0;--mdc-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px);--mat-icon-button-state-layer-size: var(--p-table-toolbar-action-size, 36px)}.end-actions ::ng-deep .mat-mdc-icon-button .mat-icon{display:block;flex:0 0 auto;font-size:24px;width:24px;height:24px;line-height:24px;margin:0}.praxis-toolbar.p-table-toolbar--divider-between-groups .actions-group,.praxis-toolbar.p-table-toolbar--divider-start .toolbar-main{padding-right:10px;border-right:1px solid var(--p-table-toolbar-divider-color, var(--p-table-toolbar-divider-color-default))}.end-actions ::ng-deep .praxis-table-toolbar-action--ai,.end-actions ::ng-deep .praxis-table-ai-trigger{color:var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default));background:color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 10%,transparent);border:1px solid color-mix(in srgb,var(--p-table-toolbar-ai-accent-color, var(--p-table-toolbar-ai-accent-color-default)) 24%,transparent)}.end-actions ::ng-deep [data-role=table-settings]{color:var(--p-table-toolbar-status-fg, var(--p-table-toolbar-status-fg-default))}@media(min-width:1024px){.toolbar-actions{justify-content:flex-end}}@media(max-width:1023px){.actions-group{display:none}.mobile-actions{display:flex}.toolbar-actions{justify-content:flex-end}.toolbar-identity{min-width:0;max-width:100%;flex:1 1 100%}}\n"] }]
|
|
2438
2673
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.LoggerService, decorators: [{
|
|
2439
2674
|
type: Optional
|
|
2440
2675
|
}] }, { type: i1.PraxisI18nService, decorators: [{
|
|
@@ -8403,6 +8638,7 @@ const PRAXIS_TABLE_EDITOR_I18N_CONFIG = {
|
|
|
8403
8638
|
'toolbar.export.fileName': 'Nome padrão do arquivo',
|
|
8404
8639
|
'toolbar.export.fileName.placeholder': 'dados-export',
|
|
8405
8640
|
'toolbar.export.includeHeaders': 'Incluir cabeçalhos',
|
|
8641
|
+
'toolbar.export.visibleCurrentPage': 'Exibir Excel da página atual',
|
|
8406
8642
|
'toolbar.export.scope': 'Escopo da exportação',
|
|
8407
8643
|
'toolbar.export.scope.auto': 'Seleção ou visão atual',
|
|
8408
8644
|
'toolbar.export.scope.selected': 'Linhas selecionadas',
|
|
@@ -9507,6 +9743,7 @@ const PRAXIS_TABLE_EDITOR_I18N_CONFIG = {
|
|
|
9507
9743
|
'toolbar.export.fileName': 'Default file name',
|
|
9508
9744
|
'toolbar.export.fileName.placeholder': 'data-export',
|
|
9509
9745
|
'toolbar.export.includeHeaders': 'Include headers',
|
|
9746
|
+
'toolbar.export.visibleCurrentPage': 'Show current-page Excel',
|
|
9510
9747
|
'toolbar.export.scope': 'Export scope',
|
|
9511
9748
|
'toolbar.export.scope.auto': 'Selection or current view',
|
|
9512
9749
|
'toolbar.export.scope.selected': 'Selected rows',
|
|
@@ -19649,6 +19886,7 @@ class ToolbarActionsEditorComponent {
|
|
|
19649
19886
|
exportFormats: [['excel', 'csv']],
|
|
19650
19887
|
exportFileName: [this.tx('toolbar.export.fileName.placeholder', 'data-export')],
|
|
19651
19888
|
exportIncludeHeaders: [true],
|
|
19889
|
+
exportVisibleCurrentPage: [true],
|
|
19652
19890
|
exportScope: ['auto'],
|
|
19653
19891
|
exportMaxRows: [10000],
|
|
19654
19892
|
});
|
|
@@ -19699,6 +19937,7 @@ class ToolbarActionsEditorComponent {
|
|
|
19699
19937
|
exportFileName: v2Config.export.general?.defaultFileName ||
|
|
19700
19938
|
this.tx('toolbar.export.fileName.placeholder', 'data-export'),
|
|
19701
19939
|
exportIncludeHeaders: v2Config.export.general?.includeHeaders !== false,
|
|
19940
|
+
exportVisibleCurrentPage: v2Config.export.excel?.visibleCurrentPage !== false,
|
|
19702
19941
|
exportScope: v2Config.export.general?.scope || 'auto',
|
|
19703
19942
|
exportMaxRows: v2Config.export.general?.maxRows || 10000,
|
|
19704
19943
|
});
|
|
@@ -19924,6 +20163,15 @@ class ToolbarActionsEditorComponent {
|
|
|
19924
20163
|
v2Config.export = {
|
|
19925
20164
|
enabled: values.exportEnabled,
|
|
19926
20165
|
formats: values.exportFormats,
|
|
20166
|
+
excel: {
|
|
20167
|
+
...(v2Config.export?.excel || {
|
|
20168
|
+
sheetName: 'Export',
|
|
20169
|
+
includeFormulas: false,
|
|
20170
|
+
freezeHeaders: true,
|
|
20171
|
+
autoFitColumns: true,
|
|
20172
|
+
}),
|
|
20173
|
+
visibleCurrentPage: values.exportVisibleCurrentPage !== false,
|
|
20174
|
+
},
|
|
19927
20175
|
general: {
|
|
19928
20176
|
includeHeaders: values.exportIncludeHeaders,
|
|
19929
20177
|
scope: values.exportScope || 'auto',
|
|
@@ -22435,6 +22683,12 @@ class ToolbarActionsEditorComponent {
|
|
|
22435
22683
|
>
|
|
22436
22684
|
{{ tx('toolbar.export.includeHeaders', 'Include headers') }}
|
|
22437
22685
|
</mat-slide-toggle>
|
|
22686
|
+
<mat-slide-toggle
|
|
22687
|
+
formControlName="exportVisibleCurrentPage"
|
|
22688
|
+
class="toggle-field"
|
|
22689
|
+
>
|
|
22690
|
+
{{ tx('toolbar.export.visibleCurrentPage', 'Show current-page Excel') }}
|
|
22691
|
+
</mat-slide-toggle>
|
|
22438
22692
|
<mat-form-field appearance="outline">
|
|
22439
22693
|
<mat-label>{{ tx('toolbar.export.scope', 'Export scope') }}</mat-label>
|
|
22440
22694
|
<mat-select formControlName="exportScope">
|
|
@@ -24091,6 +24345,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
24091
24345
|
>
|
|
24092
24346
|
{{ tx('toolbar.export.includeHeaders', 'Include headers') }}
|
|
24093
24347
|
</mat-slide-toggle>
|
|
24348
|
+
<mat-slide-toggle
|
|
24349
|
+
formControlName="exportVisibleCurrentPage"
|
|
24350
|
+
class="toggle-field"
|
|
24351
|
+
>
|
|
24352
|
+
{{ tx('toolbar.export.visibleCurrentPage', 'Show current-page Excel') }}
|
|
24353
|
+
</mat-slide-toggle>
|
|
24094
24354
|
<mat-form-field appearance="outline">
|
|
24095
24355
|
<mat-label>{{ tx('toolbar.export.scope', 'Export scope') }}</mat-label>
|
|
24096
24356
|
<mat-select formControlName="exportScope">
|
|
@@ -41592,7 +41852,7 @@ class PraxisTable {
|
|
|
41592
41852
|
if (this.aiAdapter || this.aiAdapterLoadStarted)
|
|
41593
41853
|
return;
|
|
41594
41854
|
this.aiAdapterLoadStarted = true;
|
|
41595
|
-
import('./praxisui-table-table-ai.adapter-
|
|
41855
|
+
import('./praxisui-table-table-ai.adapter-DE5WpZ-t.mjs')
|
|
41596
41856
|
.then(({ TableAiAdapter }) => {
|
|
41597
41857
|
if (!this.isAiAssistantEnabled()) {
|
|
41598
41858
|
this.aiAssistantOpenAfterAdapterLoad = false;
|
|
@@ -47721,11 +47981,11 @@ class PraxisTable {
|
|
|
47721
47981
|
}
|
|
47722
47982
|
showExportFeedback(result) {
|
|
47723
47983
|
if (result.status === 'deferred') {
|
|
47724
|
-
this.exportStatusMessage = translateTableRuntimeText(this.i18n, 'table.export.deferred', '
|
|
47984
|
+
this.exportStatusMessage = translateTableRuntimeText(this.i18n, 'table.export.deferred', 'Exportação enviada para processamento.');
|
|
47725
47985
|
this.snackBar.open(this.exportStatusMessage, undefined, { duration: 3000 });
|
|
47726
47986
|
return;
|
|
47727
47987
|
}
|
|
47728
|
-
this.exportStatusMessage = translateTableRuntimeText(this.i18n, 'table.export.completed', '
|
|
47988
|
+
this.exportStatusMessage = translateTableRuntimeText(this.i18n, 'table.export.completed', 'Exportação concluída.');
|
|
47729
47989
|
this.snackBar.open(this.exportStatusMessage, undefined, { duration: 2500 });
|
|
47730
47990
|
}
|
|
47731
47991
|
onAdvancedFilterSubmit(criteria) {
|
|
@@ -57261,7 +57521,10 @@ const tableExportSchema = {
|
|
|
57261
57521
|
},
|
|
57262
57522
|
excel: {
|
|
57263
57523
|
type: 'object',
|
|
57264
|
-
properties: {
|
|
57524
|
+
properties: {
|
|
57525
|
+
autoFitColumns: { type: 'boolean' },
|
|
57526
|
+
visibleCurrentPage: { type: 'boolean' }
|
|
57527
|
+
}
|
|
57265
57528
|
},
|
|
57266
57529
|
pdf: {
|
|
57267
57530
|
type: 'object',
|
|
@@ -62383,6 +62646,7 @@ const TABLE_AI_CAPABILITIES = {
|
|
|
62383
62646
|
{ path: 'export.general.includeHeaders', category: 'export', valueKind: 'boolean', description: 'Inclui cabeçalhos no arquivo exportado.', intentExamples: ['incluir cabeçalho no excel'] },
|
|
62384
62647
|
{ path: 'export.general.scope', category: 'export', valueKind: 'enum', allowedValues: ENUMS.exportScope, description: 'Define o escopo dos dados exportados: auto, selected, filtered, currentPage ou all.', dependsOn: 'export.enabled', intentExamples: ['exportar apenas selecionados', 'exportar filtrados', 'exportar pagina atual'], example: '"auto"' },
|
|
62385
62648
|
{ path: 'export.general.maxRows', category: 'export', valueKind: 'number', description: 'Limite de linhas para exportação.', dependsOn: 'export.enabled', critical: true, example: '5000', safetyNotes: 'Previne exportações pesadas ou vazamento de massa de dados.', intentExamples: ['limite de exportação 5000'] },
|
|
62649
|
+
{ path: 'export.excel.visibleCurrentPage', category: 'export', valueKind: 'boolean', description: 'Exibe a ação local "Excel da página atual", separada do Excel via provider.', dependsOn: 'export.enabled + export.formats contains excel', critical: true, intentExamples: ['esconder excel da pagina atual', 'permitir apenas excel via provider'], safetyNotes: 'Use false quando a política corporativa exigir que exportações passem pelo provider governado.' },
|
|
62386
62650
|
{ path: 'export.excel.autoFitColumns', category: 'export', valueKind: 'boolean', description: 'Auto-ajusta largura de colunas na planilha.', dependsOn: 'export.enabled', intentExamples: ['ajustar colunas no excel'] },
|
|
62387
62651
|
{ path: 'export.pdf.orientation', category: 'export', valueKind: 'enum', allowedValues: ENUMS.pdfOrientation, description: 'Orientação do PDF.', dependsOn: 'export.enabled', intentExamples: ['pdf paisagem', 'pdf retrato'] },
|
|
62388
62652
|
{ path: 'export.pdf.pageSize', category: 'export', valueKind: 'enum', allowedValues: ENUMS.pdfPageSize, description: 'Tamanho da página no PDF.', dependsOn: 'export.enabled' },
|