qbs-react-grid 2.2.6 → 2.2.11

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.
Files changed (58) hide show
  1. package/dist/css/qbs-react-grid.css +1 -1
  2. package/dist/css/qbs-react-grid.min.css +1 -1
  3. package/dist/css/qbs-react-grid.min.css.map +1 -1
  4. package/es/index.d.ts +2 -0
  5. package/es/index.js +2 -1
  6. package/es/less/qbs-table.less +89 -6
  7. package/es/qbsTable/CustomTableCell.js +4 -2
  8. package/es/qbsTable/QbsTable.js +52 -6
  9. package/es/qbsTable/TableCardList.js +39 -5
  10. package/es/qbsTable/Toolbar.js +96 -21
  11. package/es/qbsTable/commontypes.d.ts +18 -0
  12. package/es/qbsTable/labels.d.ts +25 -0
  13. package/es/qbsTable/labels.js +32 -0
  14. package/es/qbsTable/utilities/ColumShowHide.d.ts +3 -0
  15. package/es/qbsTable/utilities/ColumShowHide.js +63 -35
  16. package/es/qbsTable/utilities/ToolTip.js +2 -1
  17. package/es/qbsTable/utilities/VerticalDropDownMenu.js +28 -7
  18. package/es/qbsTable/utilities/columnToggleCoordinator.d.ts +5 -0
  19. package/es/qbsTable/utilities/columnToggleCoordinator.js +9 -0
  20. package/es/qbsTable/utilities/icons.d.ts +3 -0
  21. package/es/qbsTable/utilities/icons.js +67 -3
  22. package/es/qbsTable/utilities/verticalMenuCoordinator.d.ts +5 -0
  23. package/es/qbsTable/utilities/verticalMenuCoordinator.js +9 -0
  24. package/lib/index.d.ts +2 -0
  25. package/lib/index.js +6 -2
  26. package/lib/less/qbs-table.less +89 -6
  27. package/lib/qbsTable/CustomTableCell.js +4 -2
  28. package/lib/qbsTable/QbsTable.js +52 -6
  29. package/lib/qbsTable/TableCardList.js +39 -5
  30. package/lib/qbsTable/Toolbar.js +94 -19
  31. package/lib/qbsTable/commontypes.d.ts +18 -0
  32. package/lib/qbsTable/labels.d.ts +25 -0
  33. package/lib/qbsTable/labels.js +40 -0
  34. package/lib/qbsTable/utilities/ColumShowHide.d.ts +3 -0
  35. package/lib/qbsTable/utilities/ColumShowHide.js +62 -34
  36. package/lib/qbsTable/utilities/ToolTip.js +2 -1
  37. package/lib/qbsTable/utilities/VerticalDropDownMenu.js +27 -6
  38. package/lib/qbsTable/utilities/columnToggleCoordinator.d.ts +5 -0
  39. package/lib/qbsTable/utilities/columnToggleCoordinator.js +15 -0
  40. package/lib/qbsTable/utilities/icons.d.ts +3 -0
  41. package/lib/qbsTable/utilities/icons.js +72 -5
  42. package/lib/qbsTable/utilities/verticalMenuCoordinator.d.ts +5 -0
  43. package/lib/qbsTable/utilities/verticalMenuCoordinator.js +15 -0
  44. package/package.json +1 -1
  45. package/src/index.ts +6 -0
  46. package/src/less/qbs-table.less +89 -6
  47. package/src/qbsTable/CustomTableCell.tsx +4 -2
  48. package/src/qbsTable/QbsTable.tsx +41 -4
  49. package/src/qbsTable/TableCardList.tsx +30 -3
  50. package/src/qbsTable/Toolbar.tsx +105 -26
  51. package/src/qbsTable/commontypes.ts +19 -0
  52. package/src/qbsTable/labels.ts +55 -0
  53. package/src/qbsTable/utilities/ColumShowHide.tsx +114 -77
  54. package/src/qbsTable/utilities/ToolTip.tsx +1 -1
  55. package/src/qbsTable/utilities/VerticalDropDownMenu.tsx +36 -5
  56. package/src/qbsTable/utilities/columnToggleCoordinator.ts +14 -0
  57. package/src/qbsTable/utilities/icons.tsx +76 -3
  58. package/src/qbsTable/utilities/verticalMenuCoordinator.ts +14 -0
@@ -12,6 +12,7 @@ var _HeaderCell = _interopRequireDefault(require("../HeaderCell"));
12
12
  var _Pagination = _interopRequireDefault(require("../Pagination"));
13
13
  var _Table = _interopRequireDefault(require("../Table"));
14
14
  var _useResponsiveStore = _interopRequireDefault(require("../utils/useResponsiveStore"));
15
+ var _labels = require("./labels");
15
16
  var _CustomTableCell = require("./CustomTableCell");
16
17
  var _Toolbar = _interopRequireDefault(require("./Toolbar"));
17
18
  var _CardComponent = _interopRequireDefault(require("./utilities/CardComponent"));
@@ -113,7 +114,28 @@ var QbsTable = function QbsTable(_ref) {
113
114
  isCustomTableCardView = _ref$isCustomTableCar === void 0 ? false : _ref$isCustomTableCar,
114
115
  handleTableCardView = _ref.handleTableCardView,
115
116
  handleCustomCardLoader = _ref.handleCustomCardLoader,
116
- dropType = _ref.dropType;
117
+ dropType = _ref.dropType,
118
+ labelsProp = _ref.labels,
119
+ _ref$rtl = _ref.rtl,
120
+ rtl = _ref$rtl === void 0 ? false : _ref$rtl,
121
+ _ref$rowViewToggle = _ref.rowViewToggle,
122
+ rowViewToggle = _ref$rowViewToggle === void 0 ? false : _ref$rowViewToggle,
123
+ _ref$defaultRowView = _ref.defaultRowView,
124
+ defaultRowView = _ref$defaultRowView === void 0 ? true : _ref$defaultRowView,
125
+ _ref$fullWidthView = _ref.fullWidthView,
126
+ fullWidthView = _ref$fullWidthView === void 0 ? false : _ref$fullWidthView,
127
+ setTableFullView = _ref.setTableFullView,
128
+ setRowViewToggle = _ref.setRowViewToggle,
129
+ _ref$isFullScreen = _ref.isFullScreen,
130
+ isFullScreen = _ref$isFullScreen === void 0 ? false : _ref$isFullScreen,
131
+ rowHeight = _ref.rowHeight;
132
+ var labels = (0, _react.useMemo)(function () {
133
+ return (0, _labels.mergeQbsTableLabels)(labelsProp);
134
+ }, [labelsProp]);
135
+ var effectiveWordWrap = (0, _react.useMemo)(function () {
136
+ if (!rowViewToggle) return wordWrap;
137
+ return defaultRowView ? wordWrap : 'break-word';
138
+ }, [rowViewToggle, defaultRowView, wordWrap]);
117
139
  var _useState = (0, _react.useState)(false),
118
140
  loading = _useState[0],
119
141
  setLoading = _useState[1];
@@ -136,6 +158,16 @@ var QbsTable = function QbsTable(_ref) {
136
158
  setTableViewToggle = _useState5[1];
137
159
  var isMobile = (0, _useResponsiveStore["default"])();
138
160
  var tableBodyRef = (0, _react.useRef)(null);
161
+ var _useState6 = (0, _react.useState)(0),
162
+ rowViewRefreshKey = _useState6[0],
163
+ setRowViewRefreshKey = _useState6[1];
164
+ (0, _react.useEffect)(function () {
165
+ if (rowViewToggle) {
166
+ setRowViewRefreshKey(function (key) {
167
+ return key + 1;
168
+ });
169
+ }
170
+ }, [defaultRowView, rowViewToggle]);
139
171
  var handleSortColumn = (0, _react.useCallback)(function (sortColumn, sortType) {
140
172
  setLoading(true);
141
173
  setTimeout(function () {
@@ -266,7 +298,15 @@ var QbsTable = function QbsTable(_ref) {
266
298
  searchPlaceholder: searchPlaceholder,
267
299
  setTableViewToggle: setTableViewToggle,
268
300
  tableViewToggle: tableViewToggle,
269
- enableTableToggle: enableTableToggle
301
+ enableTableToggle: enableTableToggle,
302
+ rowViewToggle: rowViewToggle,
303
+ defaultRowView: defaultRowView,
304
+ fullWidthView: fullWidthView,
305
+ setTableFullView: setTableFullView,
306
+ setRowViewToggle: setRowViewToggle,
307
+ isFullScreen: isFullScreen,
308
+ labels: labels,
309
+ rtl: rtl
270
310
  };
271
311
  var themeToggle = (0, _react.useMemo)(function () {
272
312
  return document.getElementById('themeToggle');
@@ -564,12 +604,13 @@ var QbsTable = function QbsTable(_ref) {
564
604
  className: "qbs-table-border-wrap"
565
605
  }, tableViewToggle ? /*#__PURE__*/_react["default"].createElement(_Table["default"], {
566
606
  height: autoHeight ? undefined : height,
567
- key: tableKey,
607
+ key: tableKey + "-" + rowViewRefreshKey,
568
608
  tableKey: tableKey,
609
+ rtl: rtl,
569
610
  data: data,
570
611
  tableBodyRef: tableBodyRef,
571
612
  dataTheme: dataTheme,
572
- wordWrap: wordWrap,
613
+ wordWrap: effectiveWordWrap,
573
614
  autoHeight: autoHeight,
574
615
  sortColumn: sortColumn,
575
616
  style: {
@@ -590,6 +631,7 @@ var QbsTable = function QbsTable(_ref) {
590
631
  columns: columns,
591
632
  minHeight: minHeight,
592
633
  headerHeight: headerHeight,
634
+ rowHeight: rowHeight,
593
635
  rowExpandedHeight: rowExpandedHeight,
594
636
  loading: isLoading != null ? isLoading : loading,
595
637
  showHeader: true,
@@ -688,7 +730,9 @@ var QbsTable = function QbsTable(_ref) {
688
730
  tableHeight: height,
689
731
  setIsOpen: setIsOpen,
690
732
  handleResetColumns: handleResetColumns,
691
- handleColumnToggle: handleColumnToggle
733
+ handleColumnToggle: handleColumnToggle,
734
+ labels: labels,
735
+ rtl: rtl
692
736
  })), /*#__PURE__*/_react["default"].createElement(_Cell["default"], null)), actionProps && (actionProps === null || actionProps === void 0 ? void 0 : actionProps.length) > 0 && /*#__PURE__*/_react["default"].createElement(_Column["default"], {
693
737
  width: 40,
694
738
  fixed: "right"
@@ -705,7 +749,9 @@ var QbsTable = function QbsTable(_ref) {
705
749
  isOpen: isOpen,
706
750
  setIsOpen: setIsOpen,
707
751
  handleResetColumns: handleResetColumns,
708
- handleColumnToggle: handleColumnToggle
752
+ handleColumnToggle: handleColumnToggle,
753
+ labels: labels,
754
+ rtl: rtl
709
755
  })), /*#__PURE__*/_react["default"].createElement(_CustomTableCell.ActionCell, {
710
756
  tableBodyRef: tableBodyRef,
711
757
  actionProps: actionProps,
@@ -11,6 +11,7 @@ var _ColumnGroup = _interopRequireDefault(require("../ColumnGroup"));
11
11
  var _HeaderCell = _interopRequireDefault(require("../HeaderCell"));
12
12
  var _Pagination = _interopRequireDefault(require("../Pagination"));
13
13
  var _Table = _interopRequireDefault(require("../Table"));
14
+ var _labels = require("./labels");
14
15
  var _CustomTableCell = require("./CustomTableCell");
15
16
  var _Toolbar = _interopRequireDefault(require("./Toolbar"));
16
17
  var _ColumShowHide = _interopRequireDefault(require("./utilities/ColumShowHide"));
@@ -98,7 +99,27 @@ var QbsTable = function QbsTable(_ref) {
98
99
  autoHeight = _ref.autoHeight,
99
100
  emptySubTitle = _ref.emptySubTitle,
100
101
  emptyTitle = _ref.emptyTitle,
101
- dropType = _ref.dropType;
102
+ dropType = _ref.dropType,
103
+ labelsProp = _ref.labels,
104
+ _ref$rtl = _ref.rtl,
105
+ rtl = _ref$rtl === void 0 ? false : _ref$rtl,
106
+ _ref$rowViewToggle = _ref.rowViewToggle,
107
+ rowViewToggle = _ref$rowViewToggle === void 0 ? false : _ref$rowViewToggle,
108
+ _ref$defaultRowView = _ref.defaultRowView,
109
+ defaultRowView = _ref$defaultRowView === void 0 ? true : _ref$defaultRowView,
110
+ _ref$fullWidthView = _ref.fullWidthView,
111
+ fullWidthView = _ref$fullWidthView === void 0 ? false : _ref$fullWidthView,
112
+ setTableFullView = _ref.setTableFullView,
113
+ setRowViewToggle = _ref.setRowViewToggle,
114
+ _ref$isFullScreen = _ref.isFullScreen,
115
+ isFullScreen = _ref$isFullScreen === void 0 ? false : _ref$isFullScreen;
116
+ var labels = (0, _react.useMemo)(function () {
117
+ return (0, _labels.mergeQbsTableLabels)(labelsProp);
118
+ }, [labelsProp]);
119
+ var effectiveWordWrap = (0, _react.useMemo)(function () {
120
+ if (!rowViewToggle) return wordWrap;
121
+ return defaultRowView ? wordWrap : 'break-word';
122
+ }, [rowViewToggle, defaultRowView, wordWrap]);
102
123
  var _useState = (0, _react.useState)(false),
103
124
  loading = _useState[0],
104
125
  setLoading = _useState[1];
@@ -244,7 +265,15 @@ var QbsTable = function QbsTable(_ref) {
244
265
  onSelect: handleClear,
245
266
  handleColumnToggle: handleColumnToggle,
246
267
  dataLength: data === null || data === void 0 ? void 0 : data.length,
247
- searchPlaceholder: searchPlaceholder
268
+ searchPlaceholder: searchPlaceholder,
269
+ rowViewToggle: rowViewToggle,
270
+ defaultRowView: defaultRowView,
271
+ fullWidthView: fullWidthView,
272
+ setTableFullView: setTableFullView,
273
+ setRowViewToggle: setRowViewToggle,
274
+ isFullScreen: isFullScreen,
275
+ labels: labels,
276
+ rtl: rtl
248
277
  };
249
278
  var themeToggle = (0, _react.useMemo)(function () {
250
279
  return document.getElementById('themeToggle');
@@ -425,10 +454,11 @@ var QbsTable = function QbsTable(_ref) {
425
454
  height: autoHeight ? undefined : height,
426
455
  key: tableKey,
427
456
  tableKey: tableKey,
457
+ rtl: rtl,
428
458
  data: data,
429
459
  tableBodyRef: tableBodyRef,
430
460
  dataTheme: dataTheme,
431
- wordWrap: wordWrap,
461
+ wordWrap: effectiveWordWrap,
432
462
  autoHeight: autoHeight,
433
463
  sortColumn: sortColumn,
434
464
  style: {
@@ -547,7 +577,9 @@ var QbsTable = function QbsTable(_ref) {
547
577
  tableHeight: height,
548
578
  setIsOpen: setIsOpen,
549
579
  handleResetColumns: handleResetColumns,
550
- handleColumnToggle: handleColumnToggle
580
+ handleColumnToggle: handleColumnToggle,
581
+ labels: labels,
582
+ rtl: rtl
551
583
  })), /*#__PURE__*/_react["default"].createElement(_Cell["default"], null)), actionProps && (actionProps === null || actionProps === void 0 ? void 0 : actionProps.length) > 0 && /*#__PURE__*/_react["default"].createElement(_Column["default"], {
552
584
  width: 40,
553
585
  fixed: "right"
@@ -564,7 +596,9 @@ var QbsTable = function QbsTable(_ref) {
564
596
  isOpen: isOpen,
565
597
  setIsOpen: setIsOpen,
566
598
  handleResetColumns: handleResetColumns,
567
- handleColumnToggle: handleColumnToggle
599
+ handleColumnToggle: handleColumnToggle,
600
+ labels: labels,
601
+ rtl: rtl
568
602
  })), /*#__PURE__*/_react["default"].createElement(_CustomTableCell.ActionCell, {
569
603
  tableBodyRef: tableBodyRef,
570
604
  actionProps: actionProps,
@@ -5,6 +5,7 @@ exports.__esModule = true;
5
5
  exports["default"] = void 0;
6
6
  var _react = _interopRequireWildcard(require("react"));
7
7
  var _useResponsiveStore = _interopRequireDefault(require("../utils/useResponsiveStore"));
8
+ var _labels = require("./labels");
8
9
  var _debounce = _interopRequireDefault(require("./utilities/debounce"));
9
10
  var _icons = require("./utilities/icons");
10
11
  var _SearchInput = _interopRequireDefault(require("./utilities/SearchInput"));
@@ -13,7 +14,7 @@ var _ToolTip = _interopRequireDefault(require("./utilities/ToolTip"));
13
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
16
  var ToolBar = function ToolBar(_ref) {
16
- var _paginationProps$tota, _paginationProps$rows, _paginationProps$curr;
17
+ var _ref2, _labels$switchToDefau, _labels$switchToRelax, _labels$switchToFullS, _labels$switchToTable, _labels$switchToCardV, _paginationProps$tota, _paginationProps$rows, _paginationProps$curr;
17
18
  var pagination = _ref.pagination,
18
19
  _ref$paginationProps = _ref.paginationProps,
19
20
  paginationProps = _ref$paginationProps === void 0 ? {} : _ref$paginationProps,
@@ -34,7 +35,21 @@ var ToolBar = function ToolBar(_ref) {
34
35
  tableViewToggle = _ref.tableViewToggle,
35
36
  setTableViewToggle = _ref.setTableViewToggle,
36
37
  _ref$enableTableToggl = _ref.enableTableToggle,
37
- enableTableToggle = _ref$enableTableToggl === void 0 ? false : _ref$enableTableToggl;
38
+ enableTableToggle = _ref$enableTableToggl === void 0 ? false : _ref$enableTableToggl,
39
+ _ref$rowViewToggle = _ref.rowViewToggle,
40
+ rowViewToggle = _ref$rowViewToggle === void 0 ? false : _ref$rowViewToggle,
41
+ _ref$defaultRowView = _ref.defaultRowView,
42
+ defaultRowView = _ref$defaultRowView === void 0 ? true : _ref$defaultRowView,
43
+ _ref$fullWidthView = _ref.fullWidthView,
44
+ fullWidthView = _ref$fullWidthView === void 0 ? false : _ref$fullWidthView,
45
+ setTableFullView = _ref.setTableFullView,
46
+ setRowViewToggle = _ref.setRowViewToggle,
47
+ _ref$isFullScreen = _ref.isFullScreen,
48
+ isFullScreen = _ref$isFullScreen === void 0 ? false : _ref$isFullScreen,
49
+ labelsProp = _ref.labels;
50
+ var labels = (0, _react.useMemo)(function () {
51
+ return (0, _labels.mergeQbsTableLabels)(labelsProp);
52
+ }, [labelsProp]);
38
53
  var debouncedOnSearch = (0, _react.useCallback)((0, _debounce["default"])(onSearch != null ? onSearch : function () {}, 1000), [onSearch]);
39
54
  var _useState = (0, _react.useState)(searchValue),
40
55
  searchParam = _useState[0],
@@ -59,11 +74,11 @@ var ToolBar = function ToolBar(_ref) {
59
74
  var handleHide = function handleHide(actions) {
60
75
  if (actions.hidden) {
61
76
  return false;
62
- } else if (actions.customHide == '>2') {
63
- return checkedKeys && (checkedKeys === null || checkedKeys === void 0 ? void 0 : checkedKeys.length) >= 2 ? true : false;
64
- } else {
65
- return true;
66
77
  }
78
+ if (actions.customHide === '>2') {
79
+ return checkedKeys && (checkedKeys === null || checkedKeys === void 0 ? void 0 : checkedKeys.length) >= 2;
80
+ }
81
+ return true;
67
82
  };
68
83
  var isMobile = (0, _useResponsiveStore["default"])();
69
84
  var handleFilterClick = function handleFilterClick() {
@@ -73,7 +88,7 @@ var ToolBar = function ToolBar(_ref) {
73
88
  className: "qbs-table-toolbar-container",
74
89
  ref: toolbarRef
75
90
  }, /*#__PURE__*/_react["default"].createElement("div", {
76
- className: "qbs-table-toolbar " + className
91
+ className: "qbs-table-toolbar " + (className != null ? className : '')
77
92
  }, /*#__PURE__*/_react["default"].createElement("div", {
78
93
  className: "start-container",
79
94
  style: {
@@ -83,7 +98,7 @@ var ToolBar = function ToolBar(_ref) {
83
98
  }, /*#__PURE__*/_react["default"].createElement("div", {
84
99
  className: "qbs-table-primary-filter"
85
100
  }, search && /*#__PURE__*/_react["default"].createElement(_SearchInput["default"], {
86
- placeholder: searchPlaceholder != null ? searchPlaceholder : 'Search',
101
+ placeholder: (_ref2 = searchPlaceholder != null ? searchPlaceholder : labels.search) != null ? _ref2 : 'Search',
87
102
  handleChange: handleChange,
88
103
  handleSearch: handleSearch,
89
104
  searchValue: searchParam
@@ -104,12 +119,69 @@ var ToolBar = function ToolBar(_ref) {
104
119
  strokeLinejoin: "round",
105
120
  d: "M12 3c2.755 0 5.455.232 8.083.678.533.09.917.556.917 1.096v1.044a2.25 2.25 0 0 1-.659 1.591l-5.432 5.432a2.25 2.25 0 0 0-.659 1.591v2.927a2.25 2.25 0 0 1-1.244 2.013L9.75 21v-6.568a2.25 2.25 0 0 0-.659-1.591L3.659 7.409A2.25 2.25 0 0 1 3 5.818V4.774c0-.54.384-1.006.917-1.096A48.32 48.32 0 0 1 12 3Z"
106
121
  }))), tableHeaderActions, /*#__PURE__*/_react["default"].createElement("div", {
107
- className: " pr-1 cursor-pointer relative "
108
- }, enableTableToggle && !isMobile && /*#__PURE__*/_react["default"].createElement("div", {
122
+ className: "pr-1 cursor-pointer relative table_custom_ctions"
123
+ }, (rowViewToggle || isFullScreen) && /*#__PURE__*/_react["default"].createElement("div", {
124
+ className: "flex gap-2 qbs-row-switch-cntainer"
125
+ }, rowViewToggle && /*#__PURE__*/_react["default"].createElement("div", {
126
+ className: "flex gap-2 table_cell_style qbs-table-top-icons"
127
+ }, /*#__PURE__*/_react["default"].createElement(_ToolTip["default"], {
128
+ tableBodyRef: toolbarRef,
129
+ title: (_labels$switchToDefau = labels.switchToDefaultView) != null ? _labels$switchToDefau : ''
130
+ }, /*#__PURE__*/_react["default"].createElement("div", {
131
+ role: "button",
132
+ tabIndex: 0,
133
+ title: labels.switchToDefaultView,
134
+ onClick: function onClick() {
135
+ return setRowViewToggle === null || setRowViewToggle === void 0 ? void 0 : setRowViewToggle(true);
136
+ },
137
+ onKeyDown: function onKeyDown(e) {
138
+ if (e.key === 'Enter' || e.key === ' ') {
139
+ setRowViewToggle === null || setRowViewToggle === void 0 ? void 0 : setRowViewToggle(true);
140
+ }
141
+ }
142
+ }, /*#__PURE__*/_react["default"].createElement(_icons.DefaultView, {
143
+ className: "" + (defaultRowView ? 'active' : '')
144
+ }))), /*#__PURE__*/_react["default"].createElement(_ToolTip["default"], {
145
+ tableBodyRef: toolbarRef,
146
+ title: (_labels$switchToRelax = labels.switchToRelaxedView) != null ? _labels$switchToRelax : ''
147
+ }, /*#__PURE__*/_react["default"].createElement("div", {
148
+ role: "button",
149
+ tabIndex: 0,
150
+ title: labels.switchToRelaxedView,
151
+ onClick: function onClick() {
152
+ return setRowViewToggle === null || setRowViewToggle === void 0 ? void 0 : setRowViewToggle(false);
153
+ },
154
+ onKeyDown: function onKeyDown(e) {
155
+ if (e.key === 'Enter' || e.key === ' ') {
156
+ setRowViewToggle === null || setRowViewToggle === void 0 ? void 0 : setRowViewToggle(false);
157
+ }
158
+ }
159
+ }, /*#__PURE__*/_react["default"].createElement(_icons.ContentView, {
160
+ className: "" + (!defaultRowView ? 'active' : '')
161
+ })))), isFullScreen && /*#__PURE__*/_react["default"].createElement("div", {
162
+ className: "table_full_width qbs-table-top-icons"
163
+ }, /*#__PURE__*/_react["default"].createElement(_ToolTip["default"], {
164
+ tableBodyRef: toolbarRef,
165
+ title: (_labels$switchToFullS = labels.switchToFullScreen) != null ? _labels$switchToFullS : ''
166
+ }, /*#__PURE__*/_react["default"].createElement("div", {
167
+ role: "button",
168
+ tabIndex: 0,
169
+ title: labels.switchToFullScreen,
170
+ onClick: function onClick() {
171
+ return setTableFullView === null || setTableFullView === void 0 ? void 0 : setTableFullView(!fullWidthView);
172
+ },
173
+ onKeyDown: function onKeyDown(e) {
174
+ if (e.key === 'Enter' || e.key === ' ') {
175
+ setTableFullView === null || setTableFullView === void 0 ? void 0 : setTableFullView(!fullWidthView);
176
+ }
177
+ }
178
+ }, /*#__PURE__*/_react["default"].createElement(_icons.ExpandIcon, {
179
+ className: "" + (fullWidthView ? 'active' : '')
180
+ }))))), enableTableToggle && !isMobile && /*#__PURE__*/_react["default"].createElement("div", {
109
181
  className: "qbs-table-top-icons flex gap-2"
110
182
  }, /*#__PURE__*/_react["default"].createElement(_ToolTip["default"], {
111
183
  tableBodyRef: toolbarRef,
112
- title: 'Switch to Table View'
184
+ title: (_labels$switchToTable = labels.switchToTableView) != null ? _labels$switchToTable : ''
113
185
  }, /*#__PURE__*/_react["default"].createElement("div", {
114
186
  onClick: function onClick() {
115
187
  return setTableViewToggle === null || setTableViewToggle === void 0 ? void 0 : setTableViewToggle(true);
@@ -118,13 +190,13 @@ var ToolBar = function ToolBar(_ref) {
118
190
  className: "" + (tableViewToggle ? 'active' : '')
119
191
  }))), /*#__PURE__*/_react["default"].createElement("div", {
120
192
  className: "border-r h-4 w-1"
121
- }), /*#__PURE__*/_react["default"].createElement("div", {
193
+ }), /*#__PURE__*/_react["default"].createElement(_ToolTip["default"], {
194
+ tableBodyRef: toolbarRef,
195
+ title: (_labels$switchToCardV = labels.switchToCardView) != null ? _labels$switchToCardV : ''
196
+ }, /*#__PURE__*/_react["default"].createElement("div", {
122
197
  onClick: function onClick() {
123
198
  return setTableViewToggle === null || setTableViewToggle === void 0 ? void 0 : setTableViewToggle(false);
124
199
  }
125
- }, /*#__PURE__*/_react["default"].createElement(_ToolTip["default"], {
126
- tableBodyRef: toolbarRef,
127
- title: 'Switch to Card View'
128
200
  }, /*#__PURE__*/_react["default"].createElement(_icons.CardView, {
129
201
  className: "" + (!tableViewToggle ? 'active' : '')
130
202
  }))))))), isMobile && isOpen && /*#__PURE__*/_react["default"].createElement("div", {
@@ -137,16 +209,19 @@ var ToolBar = function ToolBar(_ref) {
137
209
  className: "qbs-table-toolbar-sub-container-start"
138
210
  }, /*#__PURE__*/_react["default"].createElement("div", {
139
211
  className: "selected-row"
140
- }, "Selected Items(" + (checkedKeys === null || checkedKeys === void 0 ? void 0 : checkedKeys.length) + ") "), /*#__PURE__*/_react["default"].createElement("div", {
212
+ }, (0, _labels.formatSelectedItems)(checkedKeys.length, labels)), /*#__PURE__*/_react["default"].createElement("div", {
141
213
  className: "selected-row-action"
142
214
  }, /*#__PURE__*/_react["default"].createElement("button", {
215
+ type: "button",
143
216
  className: "btn",
144
217
  onClick: function onClick() {
145
218
  return onSelect === null || onSelect === void 0 ? void 0 : onSelect([]);
146
219
  }
147
- }, "Clear"), selectedRowActions === null || selectedRowActions === void 0 ? void 0 : selectedRowActions.map(function (actions, index) {
148
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, handleHide(actions) && /*#__PURE__*/_react["default"].createElement("button", {
149
- key: index.toString(),
220
+ }, labels.clear), selectedRowActions === null || selectedRowActions === void 0 ? void 0 : selectedRowActions.map(function (actions, index) {
221
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
222
+ key: index.toString()
223
+ }, handleHide(actions) && /*#__PURE__*/_react["default"].createElement("button", {
224
+ type: "button",
150
225
  className: "btn",
151
226
  disabled: actions.disabled,
152
227
  onClick: function onClick() {
@@ -1,4 +1,5 @@
1
1
  import React, { ReactElement, ReactNode } from 'react';
2
+ import type { QbsTableLabels } from './labels';
2
3
  interface Content {
3
4
  cell: ReactNode | string;
4
5
  toolTip?: string;
@@ -83,6 +84,8 @@ export interface QbsTableProps {
83
84
  setExpandedRowKeys?: (value: readonly number[]) => void;
84
85
  handleMenuActions?: (actions: ActionProps, rowData: any) => void;
85
86
  dropType?: 'vertical' | string;
87
+ labels?: QbsTableLabels;
88
+ rtl?: boolean;
86
89
  handleRowExpanded?: (rowData: any) => React.ReactNode;
87
90
  shouldUpdateScroll?: boolean;
88
91
  rowExpand?: boolean;
@@ -128,6 +131,13 @@ export interface QbsTableProps {
128
131
  handleTableCardView?: (data: any) => React.ReactNode;
129
132
  isCustomTableCardView?: boolean;
130
133
  handleCustomCardLoader?: () => React.ReactNode;
134
+ rowViewToggle?: boolean;
135
+ defaultRowView?: boolean;
136
+ fullWidthView?: boolean;
137
+ setTableFullView?: (value: boolean) => void;
138
+ setRowViewToggle?: (value: boolean) => void;
139
+ isFullScreen?: boolean;
140
+ rowHeight?: number;
131
141
  }
132
142
  export interface QbsTableToolbarProps {
133
143
  title?: string;
@@ -156,6 +166,14 @@ export interface QbsTableToolbarProps {
156
166
  enableTableToggle?: boolean;
157
167
  tableViewToggle?: boolean;
158
168
  setTableViewToggle?: (value: boolean) => void;
169
+ rowViewToggle?: boolean;
170
+ defaultRowView?: boolean;
171
+ fullWidthView?: boolean;
172
+ setTableFullView?: (value: boolean) => void;
173
+ setRowViewToggle?: (value: boolean) => void;
174
+ isFullScreen?: boolean;
175
+ labels?: QbsTableLabels;
176
+ rtl?: boolean;
159
177
  selectedRowActions?: {
160
178
  actionTitle?: string;
161
179
  action: (checked: (number | string)[]) => void;
@@ -0,0 +1,25 @@
1
+ export type QbsTableLabels = {
2
+ search?: string;
3
+ searchAriaLabel?: string;
4
+ clear?: string;
5
+ selectedItems?: string;
6
+ switchToDefaultView?: string;
7
+ switchToRelaxedView?: string;
8
+ switchToFullScreen?: string;
9
+ switchToTableView?: string;
10
+ switchToCardView?: string;
11
+ noDataFound?: string;
12
+ showingRange?: (start: number, end: number, total: number) => string;
13
+ itemsPerPage?: string;
14
+ fixedColumns?: string;
15
+ visibleColumns?: string;
16
+ availableColumns?: string;
17
+ resetToDefault?: string;
18
+ save?: string;
19
+ viewMore?: string;
20
+ viewLess?: string;
21
+ actions?: string;
22
+ };
23
+ export declare const defaultQbsTableLabels: QbsTableLabels;
24
+ export declare const mergeQbsTableLabels: (overrides?: QbsTableLabels) => QbsTableLabels;
25
+ export declare const formatSelectedItems: (count: number, labels?: QbsTableLabels) => string;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ exports.__esModule = true;
5
+ exports.mergeQbsTableLabels = exports.formatSelectedItems = exports.defaultQbsTableLabels = void 0;
6
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
7
+ var defaultQbsTableLabels = {
8
+ search: 'Search',
9
+ searchAriaLabel: 'Search',
10
+ clear: 'Clear',
11
+ selectedItems: 'Selected items',
12
+ switchToDefaultView: 'Switch to Default View',
13
+ switchToRelaxedView: 'Switch to Relaxed View',
14
+ switchToFullScreen: 'Switch to Full Screen',
15
+ switchToTableView: 'Switch to Table View',
16
+ switchToCardView: 'Switch to Card View',
17
+ noDataFound: 'No Data Found',
18
+ showingRange: function showingRange(start, end, total) {
19
+ return "Showing " + start + " to " + end + " of " + total;
20
+ },
21
+ itemsPerPage: 'Items per page',
22
+ fixedColumns: 'FIXED COLUMNS',
23
+ visibleColumns: 'VISIBLE COLUMNS',
24
+ availableColumns: 'AVAILABLE COLUMNS',
25
+ resetToDefault: 'Reset to default',
26
+ save: 'Save',
27
+ viewMore: 'View More',
28
+ viewLess: 'View Less',
29
+ actions: 'Actions'
30
+ };
31
+ exports.defaultQbsTableLabels = defaultQbsTableLabels;
32
+ var mergeQbsTableLabels = function mergeQbsTableLabels(overrides) {
33
+ return (0, _extends2["default"])({}, defaultQbsTableLabels, overrides);
34
+ };
35
+ exports.mergeQbsTableLabels = mergeQbsTableLabels;
36
+ var formatSelectedItems = function formatSelectedItems(count, labels) {
37
+ var merged = mergeQbsTableLabels(labels);
38
+ return merged.selectedItems + " (" + count + ")";
39
+ };
40
+ exports.formatSelectedItems = formatSelectedItems;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { QbsColumnProps } from '../commontypes';
3
+ import type { QbsTableLabels } from '../labels';
3
4
  interface ColumnToggleProps {
4
5
  columns: QbsColumnProps[];
5
6
  onToggle: (columnName: string) => void;
@@ -9,6 +10,8 @@ interface ColumnToggleProps {
9
10
  handleColumnToggle?: (columns: QbsColumnProps[]) => void;
10
11
  handleResetColumns?: () => void;
11
12
  tableHeight?: number;
13
+ labels?: QbsTableLabels;
14
+ rtl?: boolean;
12
15
  }
13
16
  declare const ColumnToggle: React.FC<ColumnToggleProps>;
14
17
  export default ColumnToggle;