@papernote/ui 1.10.19 → 1.10.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Alert.d.ts +1 -1
- package/dist/components/Alert.d.ts.map +1 -1
- package/dist/components/Badge.d.ts +1 -1
- package/dist/components/Badge.d.ts.map +1 -1
- package/dist/components/PivotTable.d.ts +47 -0
- package/dist/components/PivotTable.d.ts.map +1 -0
- package/dist/components/StatusBadge.d.ts +1 -1
- package/dist/components/StatusBadge.d.ts.map +1 -1
- package/dist/components/Text.d.ts +2 -1
- package/dist/components/Text.d.ts.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/index.d.ts +53 -6
- package/dist/index.esm.js +271 -37
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +271 -36
- package/dist/index.js.map +1 -1
- package/dist/styles.css +15 -0
- package/package.json +1 -1
- package/src/components/Alert.stories.tsx +20 -7
- package/src/components/Alert.tsx +7 -1
- package/src/components/Badge.stories.tsx +18 -7
- package/src/components/Badge.tsx +3 -1
- package/src/components/PivotTable.stories.tsx +188 -0
- package/src/components/PivotTable.tsx +422 -0
- package/src/components/StatusBadge.tsx +7 -2
- package/src/components/Text.stories.tsx +30 -6
- package/src/components/Text.tsx +5 -3
- package/src/components/index.ts +4 -0
package/dist/index.esm.js
CHANGED
|
@@ -4885,6 +4885,7 @@ Stack.displayName = 'Stack';
|
|
|
4885
4885
|
* </Text>
|
|
4886
4886
|
*
|
|
4887
4887
|
* <Text color="warning">Warning message</Text>
|
|
4888
|
+
* <Text color="caution">Caution message (informational, not alarming)</Text>
|
|
4888
4889
|
*
|
|
4889
4890
|
* // With ref
|
|
4890
4891
|
* const textRef = useRef<HTMLParagraphElement>(null);
|
|
@@ -4939,6 +4940,7 @@ const Text = forwardRef(({ children, as: Component = 'p', size = 'base', smSize,
|
|
|
4939
4940
|
error: 'text-error-600',
|
|
4940
4941
|
success: 'text-success-600',
|
|
4941
4942
|
warning: 'text-warning-600',
|
|
4943
|
+
caution: 'text-warning-700',
|
|
4942
4944
|
};
|
|
4943
4945
|
const alignClasses = {
|
|
4944
4946
|
left: 'text-left',
|
|
@@ -5813,6 +5815,10 @@ function Alert({ variant = 'info', title, children, onClose, className = '', act
|
|
|
5813
5815
|
container: 'bg-warning-50 border-warning-200 text-warning-900',
|
|
5814
5816
|
icon: jsx(AlertTriangle, { className: "h-5 w-5 text-warning-600" }),
|
|
5815
5817
|
},
|
|
5818
|
+
caution: {
|
|
5819
|
+
container: 'bg-warning-100 border-warning-200 text-warning-800',
|
|
5820
|
+
icon: jsx(Info, { className: "h-5 w-5 text-warning-700" }),
|
|
5821
|
+
},
|
|
5816
5822
|
info: {
|
|
5817
5823
|
container: 'bg-primary-50 border-primary-200 text-primary-900',
|
|
5818
5824
|
icon: jsx(Info, { className: "h-5 w-5 text-primary-600" }),
|
|
@@ -5826,6 +5832,7 @@ function Alert({ variant = 'info', title, children, onClose, className = '', act
|
|
|
5826
5832
|
success: 'bg-success-600 text-white hover:bg-success-700',
|
|
5827
5833
|
error: 'bg-error-600 text-white hover:bg-error-700',
|
|
5828
5834
|
warning: 'bg-warning-600 text-white hover:bg-warning-700',
|
|
5835
|
+
caution: 'bg-warning-700 text-white hover:bg-warning-800',
|
|
5829
5836
|
info: 'bg-primary-600 text-white hover:bg-primary-700',
|
|
5830
5837
|
};
|
|
5831
5838
|
return `${base} ${variantClasses[variant]}`;
|
|
@@ -5835,6 +5842,7 @@ function Alert({ variant = 'info', title, children, onClose, className = '', act
|
|
|
5835
5842
|
success: 'bg-white border border-success-300 text-success-700 hover:bg-success-50',
|
|
5836
5843
|
error: 'bg-white border border-error-300 text-error-700 hover:bg-error-50',
|
|
5837
5844
|
warning: 'bg-white border border-warning-300 text-warning-700 hover:bg-warning-50',
|
|
5845
|
+
caution: 'bg-white border border-warning-300 text-warning-800 hover:bg-warning-50',
|
|
5838
5846
|
info: 'bg-white border border-primary-300 text-primary-700 hover:bg-primary-50',
|
|
5839
5847
|
};
|
|
5840
5848
|
return `${base} ${variantClasses[variant]}`;
|
|
@@ -9480,6 +9488,7 @@ function Badge({ children, variant = 'neutral', size = 'md', icon, onRemove, cla
|
|
|
9480
9488
|
success: 'bg-success-50 text-success-700 border-success-200',
|
|
9481
9489
|
warning: 'bg-warning-50 text-warning-700 border-warning-200',
|
|
9482
9490
|
error: 'bg-error-50 text-error-700 border-error-200',
|
|
9491
|
+
caution: 'bg-warning-100 text-warning-800 border-warning-200',
|
|
9483
9492
|
info: 'bg-primary-50 text-primary-700 border-primary-200',
|
|
9484
9493
|
neutral: 'bg-paper-100 text-ink-700 border-paper-300',
|
|
9485
9494
|
};
|
|
@@ -9487,6 +9496,7 @@ function Badge({ children, variant = 'neutral', size = 'md', icon, onRemove, cla
|
|
|
9487
9496
|
success: 'bg-success-500',
|
|
9488
9497
|
warning: 'bg-warning-500',
|
|
9489
9498
|
error: 'bg-error-500',
|
|
9499
|
+
caution: 'bg-warning-700',
|
|
9490
9500
|
info: 'bg-primary-500',
|
|
9491
9501
|
neutral: 'bg-ink-400',
|
|
9492
9502
|
};
|
|
@@ -15027,44 +15037,52 @@ function getAugmentedNamespace(n) {
|
|
|
15027
15037
|
* (A1, A1:C5, ...)
|
|
15028
15038
|
*/
|
|
15029
15039
|
|
|
15030
|
-
|
|
15040
|
+
var collection;
|
|
15041
|
+
var hasRequiredCollection;
|
|
15042
|
+
|
|
15043
|
+
function requireCollection () {
|
|
15044
|
+
if (hasRequiredCollection) return collection;
|
|
15045
|
+
hasRequiredCollection = 1;
|
|
15046
|
+
class Collection {
|
|
15031
15047
|
|
|
15032
|
-
|
|
15033
|
-
|
|
15034
|
-
|
|
15035
|
-
|
|
15036
|
-
|
|
15037
|
-
|
|
15038
|
-
|
|
15039
|
-
|
|
15040
|
-
|
|
15041
|
-
|
|
15042
|
-
|
|
15048
|
+
constructor(data, refs) {
|
|
15049
|
+
if (data == null && refs == null) {
|
|
15050
|
+
this._data = [];
|
|
15051
|
+
this._refs = [];
|
|
15052
|
+
} else {
|
|
15053
|
+
if (data.length !== refs.length)
|
|
15054
|
+
throw Error('Collection: data length should match references length.');
|
|
15055
|
+
this._data = data;
|
|
15056
|
+
this._refs = refs;
|
|
15057
|
+
}
|
|
15058
|
+
}
|
|
15043
15059
|
|
|
15044
|
-
|
|
15045
|
-
|
|
15046
|
-
|
|
15060
|
+
get data() {
|
|
15061
|
+
return this._data;
|
|
15062
|
+
}
|
|
15047
15063
|
|
|
15048
|
-
|
|
15049
|
-
|
|
15050
|
-
|
|
15064
|
+
get refs() {
|
|
15065
|
+
return this._refs;
|
|
15066
|
+
}
|
|
15051
15067
|
|
|
15052
|
-
|
|
15053
|
-
|
|
15054
|
-
|
|
15068
|
+
get length() {
|
|
15069
|
+
return this._data.length;
|
|
15070
|
+
}
|
|
15055
15071
|
|
|
15056
|
-
|
|
15057
|
-
|
|
15058
|
-
|
|
15059
|
-
|
|
15060
|
-
|
|
15061
|
-
|
|
15062
|
-
|
|
15063
|
-
|
|
15064
|
-
|
|
15065
|
-
}
|
|
15072
|
+
/**
|
|
15073
|
+
* Add data and references to this collection.
|
|
15074
|
+
* @param {{}} obj - data
|
|
15075
|
+
* @param {{}} ref - reference
|
|
15076
|
+
*/
|
|
15077
|
+
add(obj, ref) {
|
|
15078
|
+
this._data.push(obj);
|
|
15079
|
+
this._refs.push(ref);
|
|
15080
|
+
}
|
|
15081
|
+
}
|
|
15066
15082
|
|
|
15067
|
-
|
|
15083
|
+
collection = Collection;
|
|
15084
|
+
return collection;
|
|
15085
|
+
}
|
|
15068
15086
|
|
|
15069
15087
|
var helpers;
|
|
15070
15088
|
var hasRequiredHelpers;
|
|
@@ -15073,7 +15091,7 @@ function requireHelpers () {
|
|
|
15073
15091
|
if (hasRequiredHelpers) return helpers;
|
|
15074
15092
|
hasRequiredHelpers = 1;
|
|
15075
15093
|
const FormulaError = requireError();
|
|
15076
|
-
const Collection =
|
|
15094
|
+
const Collection = requireCollection();
|
|
15077
15095
|
|
|
15078
15096
|
const Types = {
|
|
15079
15097
|
NUMBER: 0,
|
|
@@ -24727,7 +24745,7 @@ var engineering = EngineeringFunctions;
|
|
|
24727
24745
|
|
|
24728
24746
|
const FormulaError$b = requireError();
|
|
24729
24747
|
const {FormulaHelpers: FormulaHelpers$8, Types: Types$6, WildCard, Address: Address$3} = requireHelpers();
|
|
24730
|
-
const Collection$2 =
|
|
24748
|
+
const Collection$2 = requireCollection();
|
|
24731
24749
|
const H$5 = FormulaHelpers$8;
|
|
24732
24750
|
|
|
24733
24751
|
const ReferenceFunctions$1 = {
|
|
@@ -36355,7 +36373,7 @@ var parsing = {
|
|
|
36355
36373
|
const FormulaError$4 = requireError();
|
|
36356
36374
|
const {Address: Address$1} = requireHelpers();
|
|
36357
36375
|
const {Prefix: Prefix$1, Postfix: Postfix$1, Infix: Infix$1, Operators: Operators$1} = operators;
|
|
36358
|
-
const Collection$1 =
|
|
36376
|
+
const Collection$1 = requireCollection();
|
|
36359
36377
|
const MAX_ROW$1 = 1048576, MAX_COLUMN$1 = 16384;
|
|
36360
36378
|
const {NotAllInputParsedException} = require$$4;
|
|
36361
36379
|
|
|
@@ -37117,7 +37135,7 @@ var hooks$1 = {
|
|
|
37117
37135
|
const FormulaError$2 = requireError();
|
|
37118
37136
|
const {FormulaHelpers: FormulaHelpers$1, Types, Address} = requireHelpers();
|
|
37119
37137
|
const {Prefix, Postfix, Infix, Operators} = operators;
|
|
37120
|
-
const Collection =
|
|
37138
|
+
const Collection = requireCollection();
|
|
37121
37139
|
const MAX_ROW = 1048576, MAX_COLUMN = 16384;
|
|
37122
37140
|
|
|
37123
37141
|
let Utils$1 = class Utils {
|
|
@@ -39514,6 +39532,217 @@ const DataGrid = forwardRef(({ data: initialData, columns, onChange, rowHeaders
|
|
|
39514
39532
|
});
|
|
39515
39533
|
DataGrid.displayName = 'DataGrid';
|
|
39516
39534
|
|
|
39535
|
+
/**
|
|
39536
|
+
* Default currency formatter
|
|
39537
|
+
*/
|
|
39538
|
+
const defaultFormatValue = (value) => {
|
|
39539
|
+
if (value === null || value === undefined)
|
|
39540
|
+
return '-';
|
|
39541
|
+
return new Intl.NumberFormat('en-US', {
|
|
39542
|
+
style: 'currency',
|
|
39543
|
+
currency: 'USD',
|
|
39544
|
+
minimumFractionDigits: 2,
|
|
39545
|
+
maximumFractionDigits: 2,
|
|
39546
|
+
}).format(value);
|
|
39547
|
+
};
|
|
39548
|
+
/**
|
|
39549
|
+
* Transform flat data into pivoted structure
|
|
39550
|
+
*/
|
|
39551
|
+
function pivotData(data, rowField, columnField, valueField, columnLabels, sortColumns, sortRows) {
|
|
39552
|
+
// Extract unique row and column values
|
|
39553
|
+
const rowSet = new Set();
|
|
39554
|
+
const columnSet = new Set();
|
|
39555
|
+
const valueMap = new Map();
|
|
39556
|
+
for (const row of data) {
|
|
39557
|
+
const rowValue = String(row[rowField] ?? '');
|
|
39558
|
+
const colValue = row[columnField];
|
|
39559
|
+
const val = row[valueField];
|
|
39560
|
+
if (rowValue)
|
|
39561
|
+
rowSet.add(rowValue);
|
|
39562
|
+
if (colValue !== undefined && colValue !== null)
|
|
39563
|
+
columnSet.add(colValue);
|
|
39564
|
+
// Create composite key for the cell
|
|
39565
|
+
const key = `${rowValue}|||${colValue}`;
|
|
39566
|
+
const numVal = typeof val === 'number' ? val : parseFloat(String(val)) || 0;
|
|
39567
|
+
valueMap.set(key, (valueMap.get(key) || 0) + numVal);
|
|
39568
|
+
}
|
|
39569
|
+
// Sort row labels
|
|
39570
|
+
let rowLabels = Array.from(rowSet);
|
|
39571
|
+
if (sortRows !== false) {
|
|
39572
|
+
rowLabels.sort((a, b) => a.localeCompare(b));
|
|
39573
|
+
}
|
|
39574
|
+
// Sort column keys
|
|
39575
|
+
let columnKeys = Array.from(columnSet);
|
|
39576
|
+
if (sortColumns === 'label') {
|
|
39577
|
+
columnKeys.sort((a, b) => {
|
|
39578
|
+
const labelA = columnLabels?.[a] ?? String(a);
|
|
39579
|
+
const labelB = columnLabels?.[b] ?? String(b);
|
|
39580
|
+
return labelA.localeCompare(labelB);
|
|
39581
|
+
});
|
|
39582
|
+
}
|
|
39583
|
+
else if (sortColumns !== 'none') {
|
|
39584
|
+
// Default: sort by value (numeric if possible)
|
|
39585
|
+
columnKeys.sort((a, b) => {
|
|
39586
|
+
const numA = typeof a === 'number' ? a : parseFloat(String(a));
|
|
39587
|
+
const numB = typeof b === 'number' ? b : parseFloat(String(b));
|
|
39588
|
+
if (!isNaN(numA) && !isNaN(numB))
|
|
39589
|
+
return numA - numB;
|
|
39590
|
+
return String(a).localeCompare(String(b));
|
|
39591
|
+
});
|
|
39592
|
+
}
|
|
39593
|
+
// Build column labels array
|
|
39594
|
+
const colLabels = columnKeys.map((k) => columnLabels?.[k] ?? String(k));
|
|
39595
|
+
// Build the matrix
|
|
39596
|
+
const matrix = [];
|
|
39597
|
+
const rowTotals = [];
|
|
39598
|
+
const rowAverages = [];
|
|
39599
|
+
const columnTotals = new Array(columnKeys.length).fill(0);
|
|
39600
|
+
let grandTotal = 0;
|
|
39601
|
+
for (const rowLabel of rowLabels) {
|
|
39602
|
+
const rowData = [];
|
|
39603
|
+
let rowSum = 0;
|
|
39604
|
+
let rowCount = 0;
|
|
39605
|
+
for (let colIdx = 0; colIdx < columnKeys.length; colIdx++) {
|
|
39606
|
+
const colKey = columnKeys[colIdx];
|
|
39607
|
+
const key = `${rowLabel}|||${colKey}`;
|
|
39608
|
+
const value = valueMap.get(key) ?? null;
|
|
39609
|
+
rowData.push(value);
|
|
39610
|
+
if (value !== null) {
|
|
39611
|
+
rowSum += value;
|
|
39612
|
+
rowCount++;
|
|
39613
|
+
columnTotals[colIdx] += value;
|
|
39614
|
+
grandTotal += value;
|
|
39615
|
+
}
|
|
39616
|
+
}
|
|
39617
|
+
matrix.push(rowData);
|
|
39618
|
+
rowTotals.push(rowSum);
|
|
39619
|
+
rowAverages.push(rowCount > 0 ? rowSum / rowCount : 0);
|
|
39620
|
+
}
|
|
39621
|
+
return {
|
|
39622
|
+
rowLabels,
|
|
39623
|
+
columnLabels: colLabels,
|
|
39624
|
+
columnKeys,
|
|
39625
|
+
matrix,
|
|
39626
|
+
rowTotals,
|
|
39627
|
+
rowAverages,
|
|
39628
|
+
columnTotals,
|
|
39629
|
+
grandTotal,
|
|
39630
|
+
};
|
|
39631
|
+
}
|
|
39632
|
+
/**
|
|
39633
|
+
* PivotTable Component
|
|
39634
|
+
*/
|
|
39635
|
+
function PivotTable({ data, rowField, columnField, valueField, columnLabels, rowLabel = '', formatValue = defaultFormatValue, showRowTotals = true, showRowAverages = false, showColumnTotals = true, className = '', sortColumns = 'value', sortRows = true, emptyValue = '-', }) {
|
|
39636
|
+
const pivoted = useMemo(() => pivotData(data, rowField, columnField, valueField, columnLabels, sortColumns, sortRows), [data, rowField, columnField, valueField, columnLabels, sortColumns, sortRows]);
|
|
39637
|
+
const formatCell = (value) => {
|
|
39638
|
+
if (value === null || value === undefined)
|
|
39639
|
+
return emptyValue;
|
|
39640
|
+
return formatValue(value);
|
|
39641
|
+
};
|
|
39642
|
+
// Calculate column totals row average
|
|
39643
|
+
const columnTotalsAverage = pivoted.columnTotals.length > 0
|
|
39644
|
+
? pivoted.columnTotals.reduce((a, b) => a + b, 0) / pivoted.columnTotals.length
|
|
39645
|
+
: 0;
|
|
39646
|
+
return (jsx("div", { className: `pivot-table-container ${className}`, style: { overflowX: 'auto' }, children: jsxs("table", { style: {
|
|
39647
|
+
width: '100%',
|
|
39648
|
+
borderCollapse: 'collapse',
|
|
39649
|
+
fontSize: '14px',
|
|
39650
|
+
fontFamily: 'inherit',
|
|
39651
|
+
}, children: [jsx("thead", { children: jsxs("tr", { style: { backgroundColor: '#f8fafc', borderBottom: '2px solid #e2e8f0' }, children: [jsx("th", { style: {
|
|
39652
|
+
padding: '12px 16px',
|
|
39653
|
+
textAlign: 'left',
|
|
39654
|
+
fontWeight: 600,
|
|
39655
|
+
color: '#334155',
|
|
39656
|
+
position: 'sticky',
|
|
39657
|
+
left: 0,
|
|
39658
|
+
backgroundColor: '#f8fafc',
|
|
39659
|
+
zIndex: 1,
|
|
39660
|
+
minWidth: '150px',
|
|
39661
|
+
}, children: rowLabel }), pivoted.columnLabels.map((label, idx) => (jsx("th", { style: {
|
|
39662
|
+
padding: '12px 16px',
|
|
39663
|
+
textAlign: 'right',
|
|
39664
|
+
fontWeight: 600,
|
|
39665
|
+
color: '#334155',
|
|
39666
|
+
minWidth: '100px',
|
|
39667
|
+
whiteSpace: 'nowrap',
|
|
39668
|
+
}, children: label }, idx))), showRowTotals && (jsx("th", { style: {
|
|
39669
|
+
padding: '12px 16px',
|
|
39670
|
+
textAlign: 'right',
|
|
39671
|
+
fontWeight: 700,
|
|
39672
|
+
color: '#1e40af',
|
|
39673
|
+
backgroundColor: '#eff6ff',
|
|
39674
|
+
minWidth: '100px',
|
|
39675
|
+
}, children: "Total" })), showRowAverages && (jsx("th", { style: {
|
|
39676
|
+
padding: '12px 16px',
|
|
39677
|
+
textAlign: 'right',
|
|
39678
|
+
fontWeight: 700,
|
|
39679
|
+
color: '#166534',
|
|
39680
|
+
backgroundColor: '#f0fdf4',
|
|
39681
|
+
minWidth: '100px',
|
|
39682
|
+
}, children: "Average" }))] }) }), jsxs("tbody", { children: [pivoted.rowLabels.map((rowLabel, rowIdx) => (jsxs("tr", { style: {
|
|
39683
|
+
borderBottom: '1px solid #e2e8f0',
|
|
39684
|
+
backgroundColor: rowIdx % 2 === 0 ? '#ffffff' : '#f8fafc',
|
|
39685
|
+
}, children: [jsx("td", { style: {
|
|
39686
|
+
padding: '10px 16px',
|
|
39687
|
+
fontWeight: 500,
|
|
39688
|
+
color: '#1e293b',
|
|
39689
|
+
position: 'sticky',
|
|
39690
|
+
left: 0,
|
|
39691
|
+
backgroundColor: rowIdx % 2 === 0 ? '#ffffff' : '#f8fafc',
|
|
39692
|
+
zIndex: 1,
|
|
39693
|
+
}, children: rowLabel }), pivoted.matrix[rowIdx].map((value, colIdx) => (jsx("td", { style: {
|
|
39694
|
+
padding: '10px 16px',
|
|
39695
|
+
textAlign: 'right',
|
|
39696
|
+
color: value === null ? '#94a3b8' : '#334155',
|
|
39697
|
+
fontVariantNumeric: 'tabular-nums',
|
|
39698
|
+
}, children: formatCell(value) }, colIdx))), showRowTotals && (jsx("td", { style: {
|
|
39699
|
+
padding: '10px 16px',
|
|
39700
|
+
textAlign: 'right',
|
|
39701
|
+
fontWeight: 600,
|
|
39702
|
+
color: '#1e40af',
|
|
39703
|
+
backgroundColor: '#eff6ff',
|
|
39704
|
+
fontVariantNumeric: 'tabular-nums',
|
|
39705
|
+
}, children: formatCell(pivoted.rowTotals[rowIdx]) })), showRowAverages && (jsx("td", { style: {
|
|
39706
|
+
padding: '10px 16px',
|
|
39707
|
+
textAlign: 'right',
|
|
39708
|
+
fontWeight: 600,
|
|
39709
|
+
color: '#166534',
|
|
39710
|
+
backgroundColor: '#f0fdf4',
|
|
39711
|
+
fontVariantNumeric: 'tabular-nums',
|
|
39712
|
+
}, children: formatCell(pivoted.rowAverages[rowIdx]) }))] }, rowIdx))), showColumnTotals && (jsxs("tr", { style: {
|
|
39713
|
+
borderTop: '2px solid #e2e8f0',
|
|
39714
|
+
backgroundColor: '#f1f5f9',
|
|
39715
|
+
fontWeight: 600,
|
|
39716
|
+
}, children: [jsx("td", { style: {
|
|
39717
|
+
padding: '12px 16px',
|
|
39718
|
+
fontWeight: 700,
|
|
39719
|
+
color: '#1e293b',
|
|
39720
|
+
position: 'sticky',
|
|
39721
|
+
left: 0,
|
|
39722
|
+
backgroundColor: '#f1f5f9',
|
|
39723
|
+
zIndex: 1,
|
|
39724
|
+
}, children: "Total" }), pivoted.columnTotals.map((total, idx) => (jsx("td", { style: {
|
|
39725
|
+
padding: '12px 16px',
|
|
39726
|
+
textAlign: 'right',
|
|
39727
|
+
color: '#1e293b',
|
|
39728
|
+
fontVariantNumeric: 'tabular-nums',
|
|
39729
|
+
}, children: formatCell(total) }, idx))), showRowTotals && (jsx("td", { style: {
|
|
39730
|
+
padding: '12px 16px',
|
|
39731
|
+
textAlign: 'right',
|
|
39732
|
+
fontWeight: 700,
|
|
39733
|
+
color: '#1e40af',
|
|
39734
|
+
backgroundColor: '#dbeafe',
|
|
39735
|
+
fontVariantNumeric: 'tabular-nums',
|
|
39736
|
+
}, children: formatCell(pivoted.grandTotal) })), showRowAverages && (jsx("td", { style: {
|
|
39737
|
+
padding: '12px 16px',
|
|
39738
|
+
textAlign: 'right',
|
|
39739
|
+
fontWeight: 700,
|
|
39740
|
+
color: '#166534',
|
|
39741
|
+
backgroundColor: '#dcfce7',
|
|
39742
|
+
fontVariantNumeric: 'tabular-nums',
|
|
39743
|
+
}, children: formatCell(columnTotalsAverage) }))] }))] })] }) }));
|
|
39744
|
+
}
|
|
39745
|
+
|
|
39517
39746
|
// Color mapping for action buttons
|
|
39518
39747
|
const colorClasses = {
|
|
39519
39748
|
primary: 'bg-accent-500 text-white',
|
|
@@ -59795,6 +60024,11 @@ const statusConfig = {
|
|
|
59795
60024
|
defaultLabel: 'Warning',
|
|
59796
60025
|
className: 'bg-warning-100 text-warning-800',
|
|
59797
60026
|
},
|
|
60027
|
+
caution: {
|
|
60028
|
+
icon: Info,
|
|
60029
|
+
defaultLabel: 'Caution',
|
|
60030
|
+
className: 'bg-warning-100 text-warning-700',
|
|
60031
|
+
},
|
|
59798
60032
|
overdue: {
|
|
59799
60033
|
icon: AlertCircle,
|
|
59800
60034
|
defaultLabel: 'Overdue',
|
|
@@ -61622,5 +61856,5 @@ function Responsive({ mobile, tablet, desktop, }) {
|
|
|
61622
61856
|
return jsx(Fragment, { children: mobile || tablet || desktop });
|
|
61623
61857
|
}
|
|
61624
61858
|
|
|
61625
|
-
export { Accordion, AchievementBadge, AchievementUnlock, ActionBar, ActionBarCenter, ActionBarLeft, ActionBarRight, ActionButton, ActivityFeed, AdminModal, Alert, AlertDialog, AppLayout, Autocomplete, Avatar, BREAKPOINTS, Badge, BottomNavigation, BottomNavigationSpacer, BottomSheet, BottomSheetActions, BottomSheetContent, BottomSheetHeader, Box, Breadcrumbs, Button, ButtonGroup, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CardView, Carousel, Celebration, Checkbox, CheckboxList, Chip, ChipGroup, CollaboratorAvatars, Collapsible, CollapsibleSection, ColorPicker, Combobox, ComingSoon, CommandPalette, CompactStat, ConfirmDialog, ContextMenu, ControlBar, CurrencyDisplay, CurrencyInput, Dashboard, DashboardContent, DashboardHeader, DataGrid, DataTable, DataTableCardView, DateDisplay, DatePicker, DateRangePicker, DateTimePicker, DesktopOnly, Drawer, DrawerFooter, DropZone, Dropdown, DropdownTrigger, EmptyState, ErrorBoundary, ExpandablePanel, ExpandablePanelContainer, ExpandablePanelSpacer, ExpandableRowButton, ExpandableToolbar, ExpandedRowEditForm, ExportButton, FORMULA_CATEGORIES, FORMULA_DEFINITIONS, FORMULA_NAMES, FieldArray, FileUpload, FilterBar, FilterControls, FilterStatusBanner, FloatingActionButton, Form, FormContext, FormControl, FormWizard, Grid, GridItem, HelpTooltip, Hide, HorizontalScroll, HoverCard, InfiniteScroll, Input, InviteCard, KanbanBoard, Layout, Loading, LoadingOverlay, Logo, MarkdownEditor, MaskedInput, Menu, MenuDivider, MobileHeader, MobileHeaderSpacer, MobileLayout, MobileOnly, MobileProvider, Modal, ModalFooter, MotivationalMessage, MultiSelect, NotificationBanner, NotificationBar, NotificationBell, NotificationIndicator, NumberInput, Page, PageHeader, PageLayout, PageNavigation, Pagination, PasswordInput, PermissionBadge, Popover, PriorityAlertBanner, Progress, ProgressCelebration, PullToRefresh, QueryTransparency, RadioGroup, Rating, Responsive, RichTextEditor, SearchBar, SearchableList, Select, Separator, SharedBadge, Show, Sidebar, SidebarGroup, Skeleton, SkeletonCard$1 as SkeletonCard, SkeletonTable, SkipLink, Slider, Spreadsheet, SpreadsheetReport, Stack, StatCard, StatItem, StatsCardGrid, StatsGrid, StatusBadge, StatusBar, StepIndicator, Stepper, StreakBadge, SuccessCheck, SummaryCard, SwipeActions, SwipeableCard, SwipeableListItem, Switch, Tabs, TabsContent, TabsList, TabsRoot, TabsTrigger, Text, Textarea, ThemeToggle, TimePicker, Timeline, TimezoneSelector, Toast, ToastContainer, Tooltip, Transfer, TreeView, TwoColumnContent, UserProfileButton, addErrorMessage, addInfoMessage, addSuccessMessage, addWarningMessage, calculateColumnWidth, createActionsSection, createFiltersSection, createMultiSheetExcel, createPageControlsSection, createQueryDetailsSection, exportDataTableToExcel, exportToExcel, formatStatisticValue, formatStatistics, getFormula, getFormulasByCategory, getLocalTimezone, isValidTimezone, loadColumnOrder, loadColumnWidths, reorderArray, saveColumnOrder, saveColumnWidths, searchFormulas, statusManager, useBreadcrumbReset, useBreakpoint, useBreakpointValue, useCelebration, useColumnReorder, useColumnResize, useCommandPalette, useConfirmDialog, useDelighters, useFABScroll, useFormContext, useIsDesktop, useIsMobile, useIsTablet, useIsTouchDevice, useMediaQuery, useMobileContext, useOrientation, usePrefersMobile, useResponsiveCallback, useSafeAreaInsets, useViewportSize, withMobileContext };
|
|
61859
|
+
export { Accordion, AchievementBadge, AchievementUnlock, ActionBar, ActionBarCenter, ActionBarLeft, ActionBarRight, ActionButton, ActivityFeed, AdminModal, Alert, AlertDialog, AppLayout, Autocomplete, Avatar, BREAKPOINTS, Badge, BottomNavigation, BottomNavigationSpacer, BottomSheet, BottomSheetActions, BottomSheetContent, BottomSheetHeader, Box, Breadcrumbs, Button, ButtonGroup, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CardView, Carousel, Celebration, Checkbox, CheckboxList, Chip, ChipGroup, CollaboratorAvatars, Collapsible, CollapsibleSection, ColorPicker, Combobox, ComingSoon, CommandPalette, CompactStat, ConfirmDialog, ContextMenu, ControlBar, CurrencyDisplay, CurrencyInput, Dashboard, DashboardContent, DashboardHeader, DataGrid, DataTable, DataTableCardView, DateDisplay, DatePicker, DateRangePicker, DateTimePicker, DesktopOnly, Drawer, DrawerFooter, DropZone, Dropdown, DropdownTrigger, EmptyState, ErrorBoundary, ExpandablePanel, ExpandablePanelContainer, ExpandablePanelSpacer, ExpandableRowButton, ExpandableToolbar, ExpandedRowEditForm, ExportButton, FORMULA_CATEGORIES, FORMULA_DEFINITIONS, FORMULA_NAMES, FieldArray, FileUpload, FilterBar, FilterControls, FilterStatusBanner, FloatingActionButton, Form, FormContext, FormControl, FormWizard, Grid, GridItem, HelpTooltip, Hide, HorizontalScroll, HoverCard, InfiniteScroll, Input, InviteCard, KanbanBoard, Layout, Loading, LoadingOverlay, Logo, MarkdownEditor, MaskedInput, Menu, MenuDivider, MobileHeader, MobileHeaderSpacer, MobileLayout, MobileOnly, MobileProvider, Modal, ModalFooter, MotivationalMessage, MultiSelect, NotificationBanner, NotificationBar, NotificationBell, NotificationIndicator, NumberInput, Page, PageHeader, PageLayout, PageNavigation, Pagination, PasswordInput, PermissionBadge, PivotTable, Popover, PriorityAlertBanner, Progress, ProgressCelebration, PullToRefresh, QueryTransparency, RadioGroup, Rating, Responsive, RichTextEditor, SearchBar, SearchableList, Select, Separator, SharedBadge, Show, Sidebar, SidebarGroup, Skeleton, SkeletonCard$1 as SkeletonCard, SkeletonTable, SkipLink, Slider, Spreadsheet, SpreadsheetReport, Stack, StatCard, StatItem, StatsCardGrid, StatsGrid, StatusBadge, StatusBar, StepIndicator, Stepper, StreakBadge, SuccessCheck, SummaryCard, SwipeActions, SwipeableCard, SwipeableListItem, Switch, Tabs, TabsContent, TabsList, TabsRoot, TabsTrigger, Text, Textarea, ThemeToggle, TimePicker, Timeline, TimezoneSelector, Toast, ToastContainer, Tooltip, Transfer, TreeView, TwoColumnContent, UserProfileButton, addErrorMessage, addInfoMessage, addSuccessMessage, addWarningMessage, calculateColumnWidth, createActionsSection, createFiltersSection, createMultiSheetExcel, createPageControlsSection, createQueryDetailsSection, exportDataTableToExcel, exportToExcel, formatStatisticValue, formatStatistics, getFormula, getFormulasByCategory, getLocalTimezone, isValidTimezone, loadColumnOrder, loadColumnWidths, reorderArray, saveColumnOrder, saveColumnWidths, searchFormulas, statusManager, useBreadcrumbReset, useBreakpoint, useBreakpointValue, useCelebration, useColumnReorder, useColumnResize, useCommandPalette, useConfirmDialog, useDelighters, useFABScroll, useFormContext, useIsDesktop, useIsMobile, useIsTablet, useIsTouchDevice, useMediaQuery, useMobileContext, useOrientation, usePrefersMobile, useResponsiveCallback, useSafeAreaInsets, useViewportSize, withMobileContext };
|
|
61626
61860
|
//# sourceMappingURL=index.esm.js.map
|