@ballistix.digital/react-components 0.4.19 → 0.4.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/index.esm.js CHANGED
@@ -8,7 +8,6 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
8
8
  import { unstable_batchedUpdates } from 'react-dom';
9
9
  import { ViewColumnsIcon, ChevronDownIcon as ChevronDownIcon$1, TableCellsIcon } from '@heroicons/react/24/outline';
10
10
  import { useReactTable, getCoreRowModel, flexRender, createColumnHelper as createColumnHelper$1 } from '@tanstack/react-table';
11
- import { isValid, parse } from 'date-fns';
12
11
  import set$1 from 'lodash/set';
13
12
 
14
13
  /******************************************************************************
@@ -16792,6 +16791,39 @@ var utils/*:any*/ = {
16792
16791
  }
16793
16792
  };
16794
16793
 
16794
+ var handleGenerateSheets = function (tables) {
16795
+ var sheets = [];
16796
+ tables.forEach(function (table, index) {
16797
+ var _a, _b, _c;
16798
+ var columns = table.getAllColumns();
16799
+ var rows = (_b = (_a = table.getRowModel()) === null || _a === void 0 ? void 0 : _a.flatRows) === null || _b === void 0 ? void 0 : _b.map(function (row) { return row.original; });
16800
+ var headerNames = (_c = columns === null || columns === void 0 ? void 0 : columns.filter(function (column) { return column === null || column === void 0 ? void 0 : column.getCanSort(); })) === null || _c === void 0 ? void 0 : _c.map(function (column) { var _a; return ({ id: column === null || column === void 0 ? void 0 : column.id, value: (_a = column === null || column === void 0 ? void 0 : column.columnDef) === null || _a === void 0 ? void 0 : _a.header }); });
16801
+ var headerRow = {};
16802
+ headerNames.forEach(function (name) {
16803
+ headerRow[name.id] = {
16804
+ value: name.value,
16805
+ type: 'string',
16806
+ };
16807
+ });
16808
+ var excelRows = rows.map(function (row) {
16809
+ var result = {};
16810
+ Object.keys(row).forEach(function (key) {
16811
+ var _a;
16812
+ var cell = (_a = columns === null || columns === void 0 ? void 0 : columns.find(function (column) { return column.id === key; }).columnDef.meta) === null || _a === void 0 ? void 0 : _a.excel;
16813
+ var value = row[key];
16814
+ result[key] = __assign(__assign({}, cell), { value: value });
16815
+ });
16816
+ return result;
16817
+ });
16818
+ sheets.push({
16819
+ title: "Sheet ".concat(index + 1),
16820
+ rows: __spreadArray([headerRow], excelRows, true).map(function (row) {
16821
+ return Object.keys(row).map(function (key) { return row[key]; });
16822
+ }),
16823
+ });
16824
+ });
16825
+ return sheets;
16826
+ };
16795
16827
  var useExcel = function () {
16796
16828
  var handleFormatRow = function (row) {
16797
16829
  return row.map(function (cell) {
@@ -16932,49 +16964,6 @@ var TableList = function (props) {
16932
16964
  }
16933
16965
  // eslint-disable-next-line react-hooks/exhaustive-deps
16934
16966
  }, [sorting || visibility || order]);
16935
- var handleCalculateExcelTypeFromValue = function (value) {
16936
- var _a;
16937
- var result = 'string';
16938
- if (value !== undefined &&
16939
- value !== '' &&
16940
- (!isNaN(Number(value)) ||
16941
- !isNaN(Number((_a = "".concat(value)) === null || _a === void 0 ? void 0 : _a.replace('€', '').replace('.', '').replace(',', '.'))))) {
16942
- result = 'number';
16943
- }
16944
- if (isValid(parse(value, 'MM/dd/yyyy', new Date()))
16945
- // isValid(parse(value, 'dd/MM/yyyy', new Date()))
16946
- ) {
16947
- result = 'date';
16948
- }
16949
- return result;
16950
- };
16951
- var handleCalculateExcelFormat = function (type) {
16952
- var result = '';
16953
- if (type === 'number') {
16954
- result = '"€ "#,##0.00';
16955
- }
16956
- if (type === 'date') {
16957
- result = 'dd.MM.yyyy';
16958
- }
16959
- return result;
16960
- };
16961
- var handleCalculateSheets = function () {
16962
- var _a, _b;
16963
- var rowsForFirstSheet = [];
16964
- var rows = (_b = (_a = table
16965
- .getRowModel()) === null || _a === void 0 ? void 0 : _a.flatRows) === null || _b === void 0 ? void 0 : _b.map(function (row) { return row.original; });
16966
- rows.forEach(function (row) {
16967
- var result = [];
16968
- Object.keys(row).forEach(function (cell) {
16969
- var value = row[cell];
16970
- var type = handleCalculateExcelTypeFromValue(value);
16971
- var format = handleCalculateExcelFormat(type);
16972
- result.push({ value: value, type: type, format: format });
16973
- });
16974
- rowsForFirstSheet.push(result);
16975
- });
16976
- return [{ title: 'Sheet 1', rows: rowsForFirstSheet }];
16977
- };
16978
16967
  var handleUpdateColumnOrder = useCallback(function (column, location) {
16979
16968
  var _a;
16980
16969
  var ids = (_a = table
@@ -17035,22 +17024,21 @@ var TableList = function (props) {
17035
17024
  }) })) })), jsx(ButtonElement, __assign({ styles: (stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.buttonElement)
17036
17025
  ? stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.buttonElement
17037
17026
  : { container: '!py-1.5 !px-3' }, onClick: function () {
17038
- var sheets = handleCalculateSheets();
17027
+ var sheets = handleGenerateSheets([table]);
17039
17028
  write(sheets, { fileName: 'users-export' });
17040
- } }, { children: jsx(TableCellsIcon, { className: "w-6 h-6" }) }))] })), jsx("div", __assign({ className: styles.body.container }, { children: jsx("div", __assign({ className: styles.body.wrapper }, { children: jsx("div", __assign({ className: styles.body.content }, { children: jsx("div", __assign({ className: styles.body.styleWrapper }, { children: jsxs("table", __assign({ className: styles.body.table.container, style: hasStickyHeader ? { borderSpacing: 0 } : {} }, { children: [jsx("thead", __assign({ className: styles.body.table.head.container }, { children: table === null || table === void 0 ? void 0 : table.getHeaderGroups().map(function (headerGroup) { return (jsx("tr", { children: headerGroup.headers.map(function (header) { return (jsxs("th", __assign({ colSpan: header.colSpan, className: toClassName(styles.body.table.head.cell, header.column.getCanSort() && 'cursor-pointer'), onClick: header.column.getToggleSortingHandler() }, { children: [header.isPlaceholder
17041
- ? null
17042
- : flexRender(header.column.columnDef.header, header.getContext()), header.column.getCanSort() && (jsx("span", __assign({ className: toClassName(styles.sortIndicator.container, header.column.getIsSorted()
17043
- ? styles.sortIndicator.isSorted
17044
- : styles.sortIndicator.isNotSorted) }, { children: jsx(ChevronDownIcon$1, { className: toClassName(styles.sortIndicator.icon.container, header.column.getIsSorted() === 'asc' &&
17045
- '-scale-100'), "aria-hidden": "true" }) })))] }), header.id)); }) }, headerGroup.id)); }) })), jsxs("tbody", __assign({ className: styles.body.table.body.container }, { children: [isLoading && (jsx("div", __assign({ className: "flex flex-col gap-y-2 w-full absolute mt-5 h-[32.5rem]" }, { children: new Array(8).fill(undefined).map(function (index) { return (jsxs("div", __assign({ className: "flex gap-2" }, { children: [jsx("div", { className: "w-20 h-14 rounded-md bg-gray-100 animate-pulse" }), jsx("div", { className: "w-full h-14 rounded-md bg-gray-100 animate-pulse" })] }), index)); }) }))), !isLoading &&
17046
- (table === null || table === void 0 ? void 0 : table.getRowModel().rows.map(function (row, index) { return (jsx("tr", __assign({ className: toClassName(styles.body.table.body.row, isStriped && index % 2 === 0 && 'bg-gray-50') }, { children: row.getVisibleCells().map(function (cell) {
17047
- var _a, _b;
17048
- return (jsx("td", __assign({ className: toClassName(styles.body.table.body.cell, hasStickyHeader &&
17049
- index !==
17050
- ((_b = (_a = table === null || table === void 0 ? void 0 : table.getState()) === null || _a === void 0 ? void 0 : _a.pagination) === null || _b === void 0 ? void 0 : _b.pageSize) -
17051
- 1 &&
17052
- 'border-b border-gray-200') }, { children: flexRender(cell.column.columnDef.cell, cell.getContext()) }), cell.id));
17053
- }) }), row.id)); }))] }))] })) })) })) })) })), !isLoading && (jsx(PanelPaginationNavigation, __assign({ max: page.total, styles: (stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.panelPaginationNavigation)
17029
+ } }, { children: jsx(TableCellsIcon, { className: "w-6 h-6" }) }))] })), jsx("div", __assign({ className: styles.body.container }, { children: jsx("div", __assign({ className: styles.body.wrapper }, { children: jsx("div", __assign({ className: styles.body.content }, { children: jsxs("div", __assign({ className: styles.body.styleWrapper }, { children: [jsxs("table", __assign({ className: styles.body.table.container, style: hasStickyHeader ? { borderSpacing: 0 } : {} }, { children: [jsx("thead", __assign({ className: styles.body.table.head.container }, { children: table === null || table === void 0 ? void 0 : table.getHeaderGroups().map(function (headerGroup) { return (jsx("tr", { children: headerGroup.headers.map(function (header) { return (jsxs("th", __assign({ colSpan: header.colSpan, className: toClassName(styles.body.table.head.cell, header.column.getCanSort() && 'cursor-pointer'), onClick: header.column.getToggleSortingHandler() }, { children: [header.isPlaceholder
17030
+ ? null
17031
+ : flexRender(header.column.columnDef.header, header.getContext()), header.column.getCanSort() && (jsx("span", __assign({ className: toClassName(styles.sortIndicator.container, header.column.getIsSorted()
17032
+ ? styles.sortIndicator.isSorted
17033
+ : styles.sortIndicator.isNotSorted) }, { children: jsx(ChevronDownIcon$1, { className: toClassName(styles.sortIndicator.icon.container, header.column.getIsSorted() === 'asc' &&
17034
+ '-scale-100'), "aria-hidden": "true" }) })))] }), header.id)); }) }, headerGroup.id)); }) })), !isLoading && (jsx("tbody", __assign({ className: styles.body.table.body.container }, { children: table === null || table === void 0 ? void 0 : table.getRowModel().rows.map(function (row, index) { return (jsx("tr", __assign({ className: toClassName(styles.body.table.body.row, isStriped && index % 2 === 0 && 'bg-gray-50') }, { children: row.getVisibleCells().map(function (cell) {
17035
+ var _a, _b;
17036
+ return (jsx("td", __assign({ className: toClassName(styles.body.table.body.cell, hasStickyHeader &&
17037
+ index !==
17038
+ ((_b = (_a = table === null || table === void 0 ? void 0 : table.getState()) === null || _a === void 0 ? void 0 : _a.pagination) === null || _b === void 0 ? void 0 : _b.pageSize) -
17039
+ 1 &&
17040
+ 'border-b border-gray-200') }, { children: flexRender(cell.column.columnDef.cell, cell.getContext()) }), cell.id));
17041
+ }) }), row.id)); }) })))] })), isLoading && (jsx("div", __assign({ className: "flex flex-col gap-y-2 w-full pt-5" }, { children: new Array(8).fill(undefined).map(function (index) { return (jsxs("div", __assign({ className: "flex gap-2" }, { children: [jsx("div", { className: "w-20 h-14 rounded-md bg-gray-100 animate-pulse" }), jsx("div", { className: "w-full h-14 rounded-md bg-gray-100 animate-pulse" })] }), index)); }) })))] })) })) })) })), !isLoading && (jsx(PanelPaginationNavigation, __assign({ max: page.total, styles: (stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.panelPaginationNavigation)
17054
17042
  ? stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.panelPaginationNavigation
17055
17043
  : { container: 'mt-4' }, onChange: onPaginate }, { children: children })))] })) }));
17056
17044
  };
@@ -17582,7 +17570,7 @@ var ModalOverlay = function (props) {
17582
17570
  };
17583
17571
 
17584
17572
  var base$2 = {
17585
- container: 'relative z-40',
17573
+ container: 'relative z-0',
17586
17574
  background: {
17587
17575
  container: 'fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity',
17588
17576
  transition: {