@ballistix.digital/react-components 9.2.1 → 9.2.2-rc-342.0

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
@@ -2911,71 +2911,44 @@ var $22d7e244b9ff5d8c$export$4564041bcff0e281 = function() {
2911
2911
  });
2912
2912
  };
2913
2913
  var generate = function(table, exportData) {
2914
- var _a, _b, _c, _d;
2914
+ var _a, _b;
2915
2915
  var sheets = [];
2916
2916
  var columns = table.getAllColumns();
2917
2917
  var rows = exportData !== null && exportData !== void 0 ? exportData : (_b = (_a = table.getRowModel()) === null || _a === void 0 ? void 0 : _a.flatRows) === null || _b === void 0 ? void 0 : _b.map(function(row) {
2918
2918
  return row.original;
2919
2919
  });
2920
2920
  var order = table.getState().columnOrder;
2921
- var headerNames = (_d = (_c = columns === null || columns === void 0 ? void 0 : columns.sort(function(a, b) {
2921
+ var sortedColumns = (0, $iA2ta$lodash.filter)($22d7e244b9ff5d8c$var$__spreadArray([], columns, true).sort(function(a, b) {
2922
2922
  var _a, _b;
2923
2923
  return (0, $iA2ta$lodash.indexOf)(order, (_a = a.id) !== null && _a !== void 0 ? _a : (0, $iA2ta$lodash.get)(a, 'accessorKey')) - (0, $iA2ta$lodash.indexOf)(order, (_b = b.id) !== null && _b !== void 0 ? _b : (0, $iA2ta$lodash.get)(b, 'accessorKey'));
2924
- })) === null || _c === void 0 ? void 0 : _c.filter(function(column) {
2924
+ }), function(column) {
2925
2925
  var _a;
2926
2926
  return typeof ((_a = column === null || column === void 0 ? void 0 : column.columnDef) === null || _a === void 0 ? void 0 : _a.header) === 'string' && (column === null || column === void 0 ? void 0 : column.getIsVisible());
2927
- })) === null || _d === void 0 ? void 0 : _d.map(function(column) {
2927
+ });
2928
+ var columnIds = (0, $iA2ta$lodash.map)(sortedColumns, function(column) {
2929
+ return column.id;
2930
+ });
2931
+ var headerRow = (0, $iA2ta$lodash.map)(sortedColumns, function(column) {
2928
2932
  var _a;
2929
2933
  return {
2930
- id: column === null || column === void 0 ? void 0 : column.id,
2931
- value: (_a = column === null || column === void 0 ? void 0 : column.columnDef) === null || _a === void 0 ? void 0 : _a.header
2932
- };
2933
- });
2934
- var headerRow = {};
2935
- headerNames.forEach(function(name) {
2936
- headerRow[name.id] = {
2937
- value: name.value,
2934
+ value: (_a = column === null || column === void 0 ? void 0 : column.columnDef) === null || _a === void 0 ? void 0 : _a.header,
2938
2935
  type: 'string'
2939
2936
  };
2940
2937
  });
2941
- var excelRows = rows.map(function(row) {
2942
- var result = {};
2943
- Object.keys(row)// sort keys according to the current table order
2944
- .sort(function(a, b) {
2945
- return (0, $iA2ta$lodash.indexOf)(order, a) - (0, $iA2ta$lodash.indexOf)(order, b);
2946
- })// Filter out items with non-string values.
2947
- .filter(function(key) {
2938
+ var excelRows = (0, $iA2ta$lodash.map)(rows, function(row) {
2939
+ return (0, $iA2ta$lodash.map)(columnIds, function(key) {
2948
2940
  var _a;
2949
- var column = columns === null || columns === void 0 ? void 0 : columns.find(function(column) {
2941
+ var column = (0, $iA2ta$lodash.find)(sortedColumns, function(column) {
2950
2942
  return column.id === key;
2951
2943
  });
2952
- if (!column) return false;
2953
- return typeof ((_a = column.columnDef) === null || _a === void 0 ? void 0 : _a.header) === 'string';
2954
- })// Filter out hidden columns.
2955
- .filter(function(key) {
2956
- var column = columns === null || columns === void 0 ? void 0 : columns.find(function(column) {
2957
- return column.id === key;
2958
- });
2959
- if (!column) return false;
2960
- return column.getIsVisible();
2961
- }).forEach(function(key) {
2962
- var _a, _b;
2963
- var cell = (_b = (_a = columns === null || columns === void 0 ? void 0 : columns.find(function(column) {
2964
- return column.id === key;
2965
- })) === null || _a === void 0 ? void 0 : _a.columnDef.meta) === null || _b === void 0 ? void 0 : _b.excel((0, $iA2ta$lodash.get)(row, key));
2966
- result[key] = cell;
2944
+ return (_a = column === null || column === void 0 ? void 0 : column.columnDef.meta) === null || _a === void 0 ? void 0 : _a.excel((0, $iA2ta$lodash.get)(row, key));
2967
2945
  });
2968
- return result;
2969
2946
  });
2970
2947
  sheets.push({
2971
2948
  title: "Sheet 1",
2972
2949
  rows: $22d7e244b9ff5d8c$var$__spreadArray([
2973
2950
  headerRow
2974
- ], excelRows, true).map(function(row) {
2975
- return Object.keys(row).map(function(key) {
2976
- return row[key];
2977
- });
2978
- })
2951
+ ], excelRows, true)
2979
2952
  });
2980
2953
  return sheets;
2981
2954
  };
@@ -4974,8 +4947,8 @@ var $58654b0ec0449aca$export$2e2bcd8739ae039 = $58654b0ec0449aca$var$styles;
4974
4947
 
4975
4948
 
4976
4949
  var $4d17f0429978b255$var$ModalOverlay = function(props) {
4977
- var children = props.children, trigger = props.trigger, _a = props.size, size = _a === void 0 ? 'md' : _a, stylesOverrides = props.styles, dataCy = props.dataCy, onOpen = props.onOpen, onClose = props.onClose;
4978
- var _b = (0, $iA2ta$react.useState)(trigger ? false : true), isOpen = _b[0], setIsOpen = _b[1];
4950
+ var children = props.children, trigger = props.trigger, _a = props.size, size = _a === void 0 ? 'md' : _a, stylesOverrides = props.styles, dataCy = props.dataCy, onOpen = props.onOpen, onClose = props.onClose, _b = props.closeOnOutsideClick, closeOnOutsideClick = _b === void 0 ? true : _b, _c = props.closeOnEscape, closeOnEscape = _c === void 0 ? true : _c;
4951
+ var _d = (0, $iA2ta$react.useState)(trigger ? false : true), isOpen = _d[0], setIsOpen = _d[1];
4979
4952
  var handleClose = (0, $iA2ta$react.useCallback)(function() {
4980
4953
  setIsOpen(false);
4981
4954
  if (onClose) setTimeout(onClose, 180);
@@ -5007,6 +4980,39 @@ var $4d17f0429978b255$var$ModalOverlay = function(props) {
5007
4980
  isOpen,
5008
4981
  onOpen
5009
4982
  ]);
4983
+ (0, $iA2ta$react.useEffect)(function() {
4984
+ if (!closeOnEscape || !isOpen) return;
4985
+ var onKeyDown = function(event) {
4986
+ if (event.key === 'Escape') handleClose();
4987
+ };
4988
+ window.addEventListener('keydown', onKeyDown);
4989
+ return function() {
4990
+ window.removeEventListener('keydown', onKeyDown);
4991
+ };
4992
+ }, [
4993
+ closeOnEscape,
4994
+ handleClose,
4995
+ isOpen
4996
+ ]);
4997
+ var isStatic = (0, $iA2ta$react.useMemo)(function() {
4998
+ return !closeOnOutsideClick || !closeOnEscape;
4999
+ }, [
5000
+ closeOnOutsideClick,
5001
+ closeOnEscape
5002
+ ]);
5003
+ var handleClickOutsideDialog = (0, $iA2ta$react.useCallback)(function() {
5004
+ if (isStatic && closeOnOutsideClick) handleClose();
5005
+ }, [
5006
+ isStatic,
5007
+ closeOnOutsideClick,
5008
+ handleClose
5009
+ ]);
5010
+ var handleCloseDialog = (0, $iA2ta$react.useCallback)(function() {
5011
+ if (!isStatic) handleClose();
5012
+ }, [
5013
+ isStatic,
5014
+ handleClose
5015
+ ]);
5010
5016
  return (0, $iA2ta$reactjsxruntime.jsxs)((0, $iA2ta$reactjsxruntime.Fragment), {
5011
5017
  children: [
5012
5018
  (0, $iA2ta$reactjsxruntime.jsx)((0, $iA2ta$headlessuireact.Transition), {
@@ -5015,7 +5021,8 @@ var $4d17f0429978b255$var$ModalOverlay = function(props) {
5015
5021
  children: (0, $iA2ta$reactjsxruntime.jsxs)((0, $iA2ta$headlessuireact.Dialog), {
5016
5022
  as: "div",
5017
5023
  className: styles.container,
5018
- onClose: handleClose,
5024
+ onClose: handleCloseDialog,
5025
+ static: isStatic,
5019
5026
  children: [
5020
5027
  (0, $iA2ta$reactjsxruntime.jsx)((0, $iA2ta$headlessuireact.TransitionChild), {
5021
5028
  as: (0, $iA2ta$react.Fragment),
@@ -5032,6 +5039,7 @@ var $4d17f0429978b255$var$ModalOverlay = function(props) {
5032
5039
  (0, $iA2ta$reactjsxruntime.jsx)("div", {
5033
5040
  className: styles.layout.container,
5034
5041
  children: (0, $iA2ta$reactjsxruntime.jsx)("div", {
5042
+ onClick: handleClickOutsideDialog,
5035
5043
  className: styles.layout.content,
5036
5044
  "data-cy": dataCy,
5037
5045
  children: (0, $iA2ta$reactjsxruntime.jsx)((0, $iA2ta$headlessuireact.TransitionChild), {
@@ -5440,8 +5448,9 @@ var $4bd12ae33d8a86aa$var$TableColumnOptionsCustom = function(props) {
5440
5448
  }),
5441
5449
  table.getAllLeafColumns().map(function(column, index) {
5442
5450
  var isAccessorColumn = !!(column === null || column === void 0 ? void 0 : column.accessorFn);
5451
+ var isGrouped = column.getIsGrouped();
5443
5452
  return (0, $iA2ta$reactjsxruntime.jsxs)("div", {
5444
- className: (0, $622cd2936b18c771$export$4370d69198e9314a)(styles.controls.dropdown.container, !isAccessorColumn && 'hidden'),
5453
+ className: (0, $622cd2936b18c771$export$4370d69198e9314a)(styles.controls.dropdown.container, (!isAccessorColumn || isGrouped) && 'hidden'),
5445
5454
  children: [
5446
5455
  (0, $iA2ta$reactjsxruntime.jsx)("input", {
5447
5456
  className: styles.controls.dropdown.input,