@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.js CHANGED
@@ -12,7 +12,6 @@ var reactFontawesome = require('@fortawesome/react-fontawesome');
12
12
  var reactDom = require('react-dom');
13
13
  var outline$2 = require('@heroicons/react/24/outline');
14
14
  var reactTable = require('@tanstack/react-table');
15
- var dateFns = require('date-fns');
16
15
  var set = require('lodash/set');
17
16
 
18
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -16802,6 +16801,39 @@ var utils/*:any*/ = {
16802
16801
  }
16803
16802
  };
16804
16803
 
16804
+ var handleGenerateSheets = function (tables) {
16805
+ var sheets = [];
16806
+ tables.forEach(function (table, index) {
16807
+ var _a, _b, _c;
16808
+ var columns = table.getAllColumns();
16809
+ 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; });
16810
+ 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 }); });
16811
+ var headerRow = {};
16812
+ headerNames.forEach(function (name) {
16813
+ headerRow[name.id] = {
16814
+ value: name.value,
16815
+ type: 'string',
16816
+ };
16817
+ });
16818
+ var excelRows = rows.map(function (row) {
16819
+ var result = {};
16820
+ Object.keys(row).forEach(function (key) {
16821
+ var _a;
16822
+ 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;
16823
+ var value = row[key];
16824
+ result[key] = __assign(__assign({}, cell), { value: value });
16825
+ });
16826
+ return result;
16827
+ });
16828
+ sheets.push({
16829
+ title: "Sheet ".concat(index + 1),
16830
+ rows: __spreadArray([headerRow], excelRows, true).map(function (row) {
16831
+ return Object.keys(row).map(function (key) { return row[key]; });
16832
+ }),
16833
+ });
16834
+ });
16835
+ return sheets;
16836
+ };
16805
16837
  var useExcel = function () {
16806
16838
  var handleFormatRow = function (row) {
16807
16839
  return row.map(function (cell) {
@@ -16942,49 +16974,6 @@ var TableList = function (props) {
16942
16974
  }
16943
16975
  // eslint-disable-next-line react-hooks/exhaustive-deps
16944
16976
  }, [sorting || visibility || order]);
16945
- var handleCalculateExcelTypeFromValue = function (value) {
16946
- var _a;
16947
- var result = 'string';
16948
- if (value !== undefined &&
16949
- value !== '' &&
16950
- (!isNaN(Number(value)) ||
16951
- !isNaN(Number((_a = "".concat(value)) === null || _a === void 0 ? void 0 : _a.replace('€', '').replace('.', '').replace(',', '.'))))) {
16952
- result = 'number';
16953
- }
16954
- if (dateFns.isValid(dateFns.parse(value, 'MM/dd/yyyy', new Date()))
16955
- // isValid(parse(value, 'dd/MM/yyyy', new Date()))
16956
- ) {
16957
- result = 'date';
16958
- }
16959
- return result;
16960
- };
16961
- var handleCalculateExcelFormat = function (type) {
16962
- var result = '';
16963
- if (type === 'number') {
16964
- result = '"€ "#,##0.00';
16965
- }
16966
- if (type === 'date') {
16967
- result = 'dd.MM.yyyy';
16968
- }
16969
- return result;
16970
- };
16971
- var handleCalculateSheets = function () {
16972
- var _a, _b;
16973
- var rowsForFirstSheet = [];
16974
- var rows = (_b = (_a = table
16975
- .getRowModel()) === null || _a === void 0 ? void 0 : _a.flatRows) === null || _b === void 0 ? void 0 : _b.map(function (row) { return row.original; });
16976
- rows.forEach(function (row) {
16977
- var result = [];
16978
- Object.keys(row).forEach(function (cell) {
16979
- var value = row[cell];
16980
- var type = handleCalculateExcelTypeFromValue(value);
16981
- var format = handleCalculateExcelFormat(type);
16982
- result.push({ value: value, type: type, format: format });
16983
- });
16984
- rowsForFirstSheet.push(result);
16985
- });
16986
- return [{ title: 'Sheet 1', rows: rowsForFirstSheet }];
16987
- };
16988
16977
  var handleUpdateColumnOrder = n.useCallback(function (column, location) {
16989
16978
  var _a;
16990
16979
  var ids = (_a = table
@@ -17045,22 +17034,21 @@ var TableList = function (props) {
17045
17034
  }) })) })), jsxRuntime.jsx(ButtonElement, __assign({ styles: (stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.buttonElement)
17046
17035
  ? stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.buttonElement
17047
17036
  : { container: '!py-1.5 !px-3' }, onClick: function () {
17048
- var sheets = handleCalculateSheets();
17037
+ var sheets = handleGenerateSheets([table]);
17049
17038
  write(sheets, { fileName: 'users-export' });
17050
- } }, { children: jsxRuntime.jsx(outline$2.TableCellsIcon, { className: "w-6 h-6" }) }))] })), jsxRuntime.jsx("div", __assign({ className: styles.body.container }, { children: jsxRuntime.jsx("div", __assign({ className: styles.body.wrapper }, { children: jsxRuntime.jsx("div", __assign({ className: styles.body.content }, { children: jsxRuntime.jsx("div", __assign({ className: styles.body.styleWrapper }, { children: jsxRuntime.jsxs("table", __assign({ className: styles.body.table.container, style: hasStickyHeader ? { borderSpacing: 0 } : {} }, { children: [jsxRuntime.jsx("thead", __assign({ className: styles.body.table.head.container }, { children: table === null || table === void 0 ? void 0 : table.getHeaderGroups().map(function (headerGroup) { return (jsxRuntime.jsx("tr", { children: headerGroup.headers.map(function (header) { return (jsxRuntime.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
17051
- ? null
17052
- : reactTable.flexRender(header.column.columnDef.header, header.getContext()), header.column.getCanSort() && (jsxRuntime.jsx("span", __assign({ className: toClassName(styles.sortIndicator.container, header.column.getIsSorted()
17053
- ? styles.sortIndicator.isSorted
17054
- : styles.sortIndicator.isNotSorted) }, { children: jsxRuntime.jsx(outline$2.ChevronDownIcon, { className: toClassName(styles.sortIndicator.icon.container, header.column.getIsSorted() === 'asc' &&
17055
- '-scale-100'), "aria-hidden": "true" }) })))] }), header.id)); }) }, headerGroup.id)); }) })), jsxRuntime.jsxs("tbody", __assign({ className: styles.body.table.body.container }, { children: [isLoading && (jsxRuntime.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 (jsxRuntime.jsxs("div", __assign({ className: "flex gap-2" }, { children: [jsxRuntime.jsx("div", { className: "w-20 h-14 rounded-md bg-gray-100 animate-pulse" }), jsxRuntime.jsx("div", { className: "w-full h-14 rounded-md bg-gray-100 animate-pulse" })] }), index)); }) }))), !isLoading &&
17056
- (table === null || table === void 0 ? void 0 : table.getRowModel().rows.map(function (row, index) { return (jsxRuntime.jsx("tr", __assign({ className: toClassName(styles.body.table.body.row, isStriped && index % 2 === 0 && 'bg-gray-50') }, { children: row.getVisibleCells().map(function (cell) {
17057
- var _a, _b;
17058
- return (jsxRuntime.jsx("td", __assign({ className: toClassName(styles.body.table.body.cell, hasStickyHeader &&
17059
- index !==
17060
- ((_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) -
17061
- 1 &&
17062
- 'border-b border-gray-200') }, { children: reactTable.flexRender(cell.column.columnDef.cell, cell.getContext()) }), cell.id));
17063
- }) }), row.id)); }))] }))] })) })) })) })) })), !isLoading && (jsxRuntime.jsx(PanelPaginationNavigation, __assign({ max: page.total, styles: (stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.panelPaginationNavigation)
17039
+ } }, { children: jsxRuntime.jsx(outline$2.TableCellsIcon, { className: "w-6 h-6" }) }))] })), jsxRuntime.jsx("div", __assign({ className: styles.body.container }, { children: jsxRuntime.jsx("div", __assign({ className: styles.body.wrapper }, { children: jsxRuntime.jsx("div", __assign({ className: styles.body.content }, { children: jsxRuntime.jsxs("div", __assign({ className: styles.body.styleWrapper }, { children: [jsxRuntime.jsxs("table", __assign({ className: styles.body.table.container, style: hasStickyHeader ? { borderSpacing: 0 } : {} }, { children: [jsxRuntime.jsx("thead", __assign({ className: styles.body.table.head.container }, { children: table === null || table === void 0 ? void 0 : table.getHeaderGroups().map(function (headerGroup) { return (jsxRuntime.jsx("tr", { children: headerGroup.headers.map(function (header) { return (jsxRuntime.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
17040
+ ? null
17041
+ : reactTable.flexRender(header.column.columnDef.header, header.getContext()), header.column.getCanSort() && (jsxRuntime.jsx("span", __assign({ className: toClassName(styles.sortIndicator.container, header.column.getIsSorted()
17042
+ ? styles.sortIndicator.isSorted
17043
+ : styles.sortIndicator.isNotSorted) }, { children: jsxRuntime.jsx(outline$2.ChevronDownIcon, { className: toClassName(styles.sortIndicator.icon.container, header.column.getIsSorted() === 'asc' &&
17044
+ '-scale-100'), "aria-hidden": "true" }) })))] }), header.id)); }) }, headerGroup.id)); }) })), !isLoading && (jsxRuntime.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 (jsxRuntime.jsx("tr", __assign({ className: toClassName(styles.body.table.body.row, isStriped && index % 2 === 0 && 'bg-gray-50') }, { children: row.getVisibleCells().map(function (cell) {
17045
+ var _a, _b;
17046
+ return (jsxRuntime.jsx("td", __assign({ className: toClassName(styles.body.table.body.cell, hasStickyHeader &&
17047
+ index !==
17048
+ ((_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) -
17049
+ 1 &&
17050
+ 'border-b border-gray-200') }, { children: reactTable.flexRender(cell.column.columnDef.cell, cell.getContext()) }), cell.id));
17051
+ }) }), row.id)); }) })))] })), isLoading && (jsxRuntime.jsx("div", __assign({ className: "flex flex-col gap-y-2 w-full pt-5" }, { children: new Array(8).fill(undefined).map(function (index) { return (jsxRuntime.jsxs("div", __assign({ className: "flex gap-2" }, { children: [jsxRuntime.jsx("div", { className: "w-20 h-14 rounded-md bg-gray-100 animate-pulse" }), jsxRuntime.jsx("div", { className: "w-full h-14 rounded-md bg-gray-100 animate-pulse" })] }), index)); }) })))] })) })) })) })), !isLoading && (jsxRuntime.jsx(PanelPaginationNavigation, __assign({ max: page.total, styles: (stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.panelPaginationNavigation)
17064
17052
  ? stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.components.panelPaginationNavigation
17065
17053
  : { container: 'mt-4' }, onChange: onPaginate }, { children: children })))] })) }));
17066
17054
  };
@@ -17592,7 +17580,7 @@ var ModalOverlay = function (props) {
17592
17580
  };
17593
17581
 
17594
17582
  var base$2 = {
17595
- container: 'relative z-40',
17583
+ container: 'relative z-0',
17596
17584
  background: {
17597
17585
  container: 'fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity',
17598
17586
  transition: {