namirasoft-site-react 1.5.10 → 1.5.12

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 (129) hide show
  1. package/dist/components/NSHeader.d.ts +2 -2
  2. package/dist/components/NSLayout.d.ts +2 -2
  3. package/dist/components/NSListMenu.d.ts +2 -0
  4. package/dist/components/NSListMenu.js +26 -9
  5. package/dist/components/NSListMenu.js.map +1 -1
  6. package/dist/components/NSReorderDialog.d.ts +30 -0
  7. package/dist/components/NSReorderDialog.js +73 -0
  8. package/dist/components/NSReorderDialog.js.map +1 -0
  9. package/dist/components/NSReorderDialog.module.css +50 -0
  10. package/dist/components/NSSortDialog.d.ts +21 -0
  11. package/dist/components/NSSortDialog.js +67 -0
  12. package/dist/components/NSSortDialog.js.map +1 -0
  13. package/dist/components/NSTable.d.ts +17 -1
  14. package/dist/components/NSTable.js +117 -39
  15. package/dist/components/NSTable.js.map +1 -1
  16. package/dist/components/NSTable.module.css +1 -0
  17. package/dist/formatter/BaseColumnFormatter.d.ts +7 -0
  18. package/dist/formatter/BaseColumnFormatter.js +53 -0
  19. package/dist/formatter/BaseColumnFormatter.js.map +1 -1
  20. package/dist/formatter/BaseURLImageFormatter.d.ts +1 -0
  21. package/dist/formatter/BaseURLImageFormatter.js +3 -0
  22. package/dist/formatter/BaseURLImageFormatter.js.map +1 -1
  23. package/dist/formatter/BooleanFormatter.d.ts +1 -0
  24. package/dist/formatter/BooleanFormatter.js +3 -0
  25. package/dist/formatter/BooleanFormatter.js.map +1 -1
  26. package/dist/formatter/BytesFormatter.d.ts +1 -0
  27. package/dist/formatter/BytesFormatter.js +3 -0
  28. package/dist/formatter/BytesFormatter.js.map +1 -1
  29. package/dist/formatter/DateFormatter.d.ts +1 -0
  30. package/dist/formatter/DateFormatter.js +3 -0
  31. package/dist/formatter/DateFormatter.js.map +1 -1
  32. package/dist/formatter/DateTimeFormatter.d.ts +1 -0
  33. package/dist/formatter/DateTimeFormatter.js +3 -0
  34. package/dist/formatter/DateTimeFormatter.js.map +1 -1
  35. package/dist/formatter/DurationFormatter.d.ts +1 -0
  36. package/dist/formatter/DurationFormatter.js +3 -0
  37. package/dist/formatter/DurationFormatter.js.map +1 -1
  38. package/dist/formatter/EmailFormatter.d.ts +1 -0
  39. package/dist/formatter/EmailFormatter.js +3 -0
  40. package/dist/formatter/EmailFormatter.js.map +1 -1
  41. package/dist/formatter/EnumFormatter.d.ts +1 -0
  42. package/dist/formatter/EnumFormatter.js +3 -0
  43. package/dist/formatter/EnumFormatter.js.map +1 -1
  44. package/dist/formatter/FloatFormatter.d.ts +1 -0
  45. package/dist/formatter/FloatFormatter.js +3 -0
  46. package/dist/formatter/FloatFormatter.js.map +1 -1
  47. package/dist/formatter/IDFormatter.d.ts +1 -0
  48. package/dist/formatter/IDFormatter.js +3 -0
  49. package/dist/formatter/IDFormatter.js.map +1 -1
  50. package/dist/formatter/IPFormatter.d.ts +1 -0
  51. package/dist/formatter/IPFormatter.js +23 -0
  52. package/dist/formatter/IPFormatter.js.map +1 -1
  53. package/dist/formatter/IntegerFormatter.d.ts +1 -0
  54. package/dist/formatter/IntegerFormatter.js +3 -0
  55. package/dist/formatter/IntegerFormatter.js.map +1 -1
  56. package/dist/formatter/JsonFormatter.d.ts +1 -0
  57. package/dist/formatter/JsonFormatter.js +13 -0
  58. package/dist/formatter/JsonFormatter.js.map +1 -1
  59. package/dist/formatter/MoneyFormatter.d.ts +1 -0
  60. package/dist/formatter/MoneyFormatter.js +3 -0
  61. package/dist/formatter/MoneyFormatter.js.map +1 -1
  62. package/dist/formatter/PercentFormatter.d.ts +1 -0
  63. package/dist/formatter/PercentFormatter.js +3 -0
  64. package/dist/formatter/PercentFormatter.js.map +1 -1
  65. package/dist/formatter/PhoneFormatter.d.ts +1 -0
  66. package/dist/formatter/PhoneFormatter.js +3 -0
  67. package/dist/formatter/PhoneFormatter.js.map +1 -1
  68. package/dist/formatter/SensitiveFormatter.d.ts +1 -0
  69. package/dist/formatter/SensitiveFormatter.js +3 -0
  70. package/dist/formatter/SensitiveFormatter.js.map +1 -1
  71. package/dist/formatter/StringFormatter.d.ts +1 -0
  72. package/dist/formatter/StringFormatter.js +3 -0
  73. package/dist/formatter/StringFormatter.js.map +1 -1
  74. package/dist/formatter/TimeFormatter.d.ts +1 -0
  75. package/dist/formatter/TimeFormatter.js +3 -0
  76. package/dist/formatter/TimeFormatter.js.map +1 -1
  77. package/dist/formatter/URLFormatter.d.ts +1 -0
  78. package/dist/formatter/URLFormatter.js +3 -0
  79. package/dist/formatter/URLFormatter.js.map +1 -1
  80. package/dist/formatter/UnknowFormatter.d.ts +1 -0
  81. package/dist/formatter/UnknowFormatter.js +3 -0
  82. package/dist/formatter/UnknowFormatter.js.map +1 -1
  83. package/dist/main.d.ts +2 -2
  84. package/dist/main.js +2 -2
  85. package/dist/main.js.map +1 -1
  86. package/dist/routing/NSRouterMaker.d.ts +13 -7
  87. package/dist/routing/NSRouterMaker.js +7 -8
  88. package/dist/routing/NSRouterMaker.js.map +1 -1
  89. package/package.json +1 -1
  90. package/src/components/NSHeader.tsx +2 -2
  91. package/src/components/NSLayout.tsx +2 -2
  92. package/src/components/NSListMenu.tsx +43 -12
  93. package/src/components/NSReorderDialog.module.css +50 -0
  94. package/src/components/NSReorderDialog.tsx +155 -0
  95. package/src/components/NSSortDialog.tsx +125 -0
  96. package/src/components/NSTable.module.css +1 -0
  97. package/src/components/NSTable.tsx +207 -68
  98. package/src/formatter/BaseColumnFormatter.ts +68 -0
  99. package/src/formatter/BaseURLImageFormatter.tsx +4 -0
  100. package/src/formatter/BooleanFormatter.ts +4 -0
  101. package/src/formatter/BytesFormatter.tsx +4 -0
  102. package/src/formatter/DateFormatter.ts +4 -0
  103. package/src/formatter/DateTimeFormatter.ts +4 -0
  104. package/src/formatter/DurationFormatter.ts +4 -0
  105. package/src/formatter/EmailFormatter.tsx +4 -0
  106. package/src/formatter/EnumFormatter.ts +4 -0
  107. package/src/formatter/FloatFormatter.ts +4 -0
  108. package/src/formatter/IDFormatter.tsx +5 -1
  109. package/src/formatter/IPFormatter.ts +26 -0
  110. package/src/formatter/IntegerFormatter.ts +4 -0
  111. package/src/formatter/JsonFormatter.tsx +17 -0
  112. package/src/formatter/MoneyFormatter.ts +4 -0
  113. package/src/formatter/PercentFormatter.tsx +4 -0
  114. package/src/formatter/PhoneFormatter.tsx +4 -0
  115. package/src/formatter/SensitiveFormatter.tsx +4 -0
  116. package/src/formatter/StringFormatter.tsx +4 -0
  117. package/src/formatter/TimeFormatter.ts +4 -0
  118. package/src/formatter/URLFormatter.tsx +4 -0
  119. package/src/formatter/UnknowFormatter.ts +4 -0
  120. package/src/main.ts +2 -2
  121. package/src/routing/NSRouterMaker.tsx +21 -13
  122. package/dist/routing/NSRouterMakerComponent.d.ts +0 -4
  123. package/dist/routing/NSRouterMakerComponent.js +0 -2
  124. package/dist/routing/NSRouterMakerComponent.js.map +0 -1
  125. package/dist/routing/NSRouterMakerProps.d.ts +0 -4
  126. package/dist/routing/NSRouterMakerProps.js +0 -2
  127. package/dist/routing/NSRouterMakerProps.js.map +0 -1
  128. package/src/routing/NSRouterMakerComponent.ts +0 -6
  129. package/src/routing/NSRouterMakerProps.ts +0 -6
@@ -12,12 +12,15 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
12
12
  import { BaseMetaColumn, BaseMetaTable, IStorageLocal, SortItem } from "namirasoft-core";
13
13
  import { Component, createRef } from "react";
14
14
  import { utils, writeFile } from 'xlsx';
15
+ import { BaseColumnFormatter } from '../formatter/BaseColumnFormatter';
15
16
  import { NSButton } from './NSButton';
16
17
  import { NSDialogInfo } from './NSDialogInfo';
17
18
  import { NSDialogPageSelection } from './NSDialogPageSelection';
18
19
  import { NSLoading } from './NSLoading';
19
20
  import { NSNoData } from './NSNoData';
20
21
  import { NSPagination } from './NSPagination';
22
+ import { NSReorderDialog } from './NSReorderDialog';
23
+ import { NSSortDialog } from './NSSortDialog';
21
24
  import { NSTableChart } from './NSTableChart';
22
25
  import Styles from './NSTable.module.css';
23
26
  var PageSelectionMode;
@@ -48,6 +51,8 @@ export class NSTable extends Component {
48
51
  columnWidths: this.loadColumnWidths(),
49
52
  fullscreen: false,
50
53
  showChart: false,
54
+ showSortDialog: false,
55
+ showReorderDialog: false,
51
56
  };
52
57
  this.getSortItemsKey = this.getSortItemsKey.bind(this);
53
58
  this.getSortItems = this.getSortItems.bind(this);
@@ -87,14 +92,52 @@ export class NSTable extends Component {
87
92
  }
88
93
  return [];
89
94
  }
95
+ isSortEnabled() {
96
+ var _a, _b;
97
+ return (_b = (_a = this.props.sort) === null || _a === void 0 ? void 0 : _a.enabled) !== null && _b !== void 0 ? _b : true;
98
+ }
99
+ hasCustomSort() {
100
+ var _a;
101
+ return !!((_a = this.props.sort) === null || _a === void 0 ? void 0 : _a.onSort);
102
+ }
90
103
  setSortItems(items) {
104
+ if (!this.isSortEnabled())
105
+ return;
91
106
  let storage = new IStorageLocal();
92
107
  storage.set(this.getSortItemsKey(), SortItem.stringify(items));
93
108
  this.setState({ sortItems: items }, () => {
94
- var _a, _b;
109
+ var _a, _b, _c, _d;
95
110
  (_b = (_a = this.props).onSortChanged) === null || _b === void 0 ? void 0 : _b.call(_a, items);
96
- this.reload(null, null);
111
+ (_d = (_c = this.props.sort) === null || _c === void 0 ? void 0 : _c.onSort) === null || _d === void 0 ? void 0 : _d.call(_c, items);
112
+ });
113
+ }
114
+ compareRowsBySortItems(a, b, items) {
115
+ for (let item of items) {
116
+ let column = this.state.columns.find(c => c.table.name === item.table.name && c.name === item.column.name);
117
+ let va = a[item.column.name];
118
+ let vb = b[item.column.name];
119
+ let cmp = column ? column.formatter.compare(va, vb) : BaseColumnFormatter.smartCompare(va, vb);
120
+ if (cmp !== 0)
121
+ return item.ascending ? cmp : -cmp;
122
+ }
123
+ return 0;
124
+ }
125
+ sortRowsClient(rows) {
126
+ let items = this.state.sortItems;
127
+ if (!items || items.length === 0)
128
+ return rows;
129
+ let decorated = rows.map((row, index) => ({ row, index }));
130
+ decorated.sort((x, y) => {
131
+ let cmp = this.compareRowsBySortItems(x.row, y.row, items);
132
+ return cmp !== 0 ? cmp : x.index - y.index;
97
133
  });
134
+ return decorated.map(d => d.row);
135
+ }
136
+ getDisplayRows() {
137
+ let rows = this.state.rows;
138
+ if (!rows || !this.isSortEnabled() || this.hasCustomSort())
139
+ return rows;
140
+ return this.sortRowsClient(rows);
98
141
  }
99
142
  getVisibleColumnsKey() {
100
143
  return "ns_table_" + this.props.name + "_visible_columns";
@@ -261,12 +304,12 @@ export class NSTable extends Component {
261
304
  this.setSelectedIDs(selectedIDs, selectedRows);
262
305
  }
263
306
  getRowsInRange(fromIndex, toIndex) {
264
- var _a;
265
- if (!this.state.rows)
307
+ let rows = this.getDisplayRows();
308
+ if (!rows)
266
309
  return [];
267
310
  let start = Math.min(fromIndex, toIndex);
268
311
  let end = Math.max(fromIndex, toIndex);
269
- return (_a = this.state.rows) === null || _a === void 0 ? void 0 : _a.slice(start, end + 1);
312
+ return rows.slice(start, end + 1);
270
313
  }
271
314
  getSelectedIDs() {
272
315
  return this.state.selectedIDs;
@@ -291,12 +334,12 @@ export class NSTable extends Component {
291
334
  return v === null || v === undefined ? "" : String(v);
292
335
  }).join("");
293
336
  }
294
- buildChildrenMap() {
337
+ buildChildrenMap(rows) {
295
338
  let h = this.props.hierarchy;
296
- if (!h || !this.state.rows)
339
+ if (!h || !rows)
297
340
  return null;
298
341
  let map = new Map();
299
- for (let r of this.state.rows) {
342
+ for (let r of rows) {
300
343
  let pid = r[h.parent];
301
344
  let pidKey = pid === null || pid === undefined ? "" : String(pid);
302
345
  let key = pidKey + "" + this.getGroupKey(r);
@@ -438,7 +481,14 @@ export class NSTable extends Component {
438
481
  render() {
439
482
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
440
483
  let show_pagination = (_b = (_a = this.props.ui) === null || _a === void 0 ? void 0 : _a.pagination) !== null && _b !== void 0 ? _b : true;
441
- let show_button_panel = (_d = (_c = this.props.ui) === null || _c === void 0 ? void 0 : _c.button_panel) !== null && _d !== void 0 ? _d : true;
484
+ let button_panel_config = (_c = this.props.ui) === null || _c === void 0 ? void 0 : _c.button_panel;
485
+ let show_button_panel = button_panel_config !== false;
486
+ let isButtonEnabled = (key) => {
487
+ var _a;
488
+ if (button_panel_config === undefined || typeof button_panel_config === "boolean")
489
+ return true;
490
+ return (_a = button_panel_config[key]) !== null && _a !== void 0 ? _a : true;
491
+ };
442
492
  let getRowAttributes = (row_value, row_index) => {
443
493
  if (this.props.getRowAttributes)
444
494
  return this.props.getRowAttributes(row_value, row_index);
@@ -482,10 +532,11 @@ export class NSTable extends Component {
482
532
  content = (_jsx("tr", { className: "d-flex justify-content-center align-items-center p-0", children: _jsx("td", { className: "w-100 h-100 m-0 mh-100", children: _jsx(NSNoData, { lable: 'No Data', classList: ["p-3"] }) }) }));
483
533
  }
484
534
  else {
535
+ let displayRows = (_d = this.getDisplayRows()) !== null && _d !== void 0 ? _d : [];
485
536
  let hierarchical = !!this.props.hierarchy;
486
- let childrenMap = this.buildChildrenMap();
537
+ let childrenMap = this.buildChildrenMap(displayRows);
487
538
  let indexOfRow = new Map();
488
- this.state.rows.forEach((r, i) => indexOfRow.set(r, i));
539
+ displayRows.forEach((r, i) => indexOfRow.set(r, i));
489
540
  let INDENT = 16;
490
541
  let lineColor = "rgba(20, 27, 92, 0.35)";
491
542
  let renderRow = (rowValue, rowIndex, depth, parentKey, ancestorHasNext, isLastChild) => {
@@ -587,8 +638,8 @@ export class NSTable extends Component {
587
638
  if (hierarchical && this.props.hierarchy) {
588
639
  let parentCol = this.props.hierarchy.parent;
589
640
  let ids = new Set();
590
- this.state.rows.forEach(r => ids.add(this.getRowIdValue(r) + "" + this.getGroupKey(r)));
591
- topLevel = this.state.rows.filter(r => {
641
+ displayRows.forEach(r => ids.add(this.getRowIdValue(r) + "" + this.getGroupKey(r)));
642
+ topLevel = displayRows.filter(r => {
592
643
  let pid = r[parentCol];
593
644
  let pidKey = pid === null || pid === undefined ? "" : String(pid);
594
645
  if (pidKey === "")
@@ -597,7 +648,7 @@ export class NSTable extends Component {
597
648
  });
598
649
  }
599
650
  else {
600
- topLevel = this.state.rows;
651
+ topLevel = displayRows;
601
652
  }
602
653
  content = topLevel.flatMap((rowValue, i) => { var _a; return renderRow(rowValue, (_a = indexOfRow.get(rowValue)) !== null && _a !== void 0 ? _a : 0, 0, "", [], i === topLevel.length - 1); });
603
654
  }
@@ -633,39 +684,54 @@ export class NSTable extends Component {
633
684
  this.print(items);
634
685
  else if (this.state.pageSelectionMode === PageSelectionMode.CSV)
635
686
  this.exportCSV(items);
636
- }), onClose: () => this.setState({ pageSelectionMode: PageSelectionMode.Hidden }) }), (_j = this.props.buttons) === null || _j === void 0 ? void 0 : _j.map((button, index) => {
687
+ }), onClose: () => this.setState({ pageSelectionMode: PageSelectionMode.Hidden }) }), isButtonEnabled("reorder") &&
688
+ _jsx(NSButton, { attributes: { title: 'Reorder' }, icon: { src: "https://static.namirasoft.com/image/concept/grip-vertical/blue.svg", alt: "reorder" }, onClick: {
689
+ action: () => this.setState({ showReorderDialog: true }),
690
+ showLoading: false
691
+ }, classList: [Styles.ns_table_button] }), isButtonEnabled("sort") && this.isSortEnabled() &&
692
+ _jsx(NSButton, { attributes: { title: 'Sort' }, icon: { src: "https://static.namirasoft.com/image/concept/arrow-down-short-wide/blue.svg", alt: "sort" }, onClick: {
693
+ action: () => this.setState({ showSortDialog: true }),
694
+ showLoading: false
695
+ }, classList: [Styles.ns_table_button] }), (_j = this.props.buttons) === null || _j === void 0 ? void 0 : _j.map((button, index) => {
637
696
  var _a;
638
697
  return (_jsx(NSButton, Object.assign({}, button, { classList: [Styles.ns_table_button, ...((_a = button.classList) !== null && _a !== void 0 ? _a : [])] }), index));
639
- }), _jsx(NSButton, { icon: { src: `https://static.namirasoft.com/image/concept/full-screen/blue.svg` }, classList: [Styles.ns_table_button, Styles.ns_fullscreen_button], onClick: {
640
- action: this.toggleFullscreen,
641
- showLoading: false
642
- }, attributes: { title: this.state.fullscreen ? 'Minimize' : 'Maximize' } }), _jsx(NSButton, { attributes: { title: 'Chart' }, icon: { src: "https://static.namirasoft.com/image/concept/chart/blue.svg" }, onClick: {
643
- action: () => {
644
- if (!this.state.rows || this.state.rows.length === 0)
645
- this.showModal(" ", "There is no data to display as a chart.");
646
- else
647
- this.setState({ showChart: true });
648
- },
649
- showLoading: false
650
- }, classList: [Styles.ns_table_button] }), _jsx(NSButton, { icon: { src: "https://static.namirasoft.com/image/concept/export/blue.svg" }, onClick: {
651
- action: () => { this.setState({ pageSelectionMode: PageSelectionMode.CSV }); },
652
- showLoading: false
653
- }, classList: [Styles.ns_table_button], attributes: { title: 'Export' } }), _jsx(NSButton, { attributes: { title: 'Print' }, icon: { src: "https://static.namirasoft.com/image/concept/print/blue.svg" }, onClick: {
654
- action: () => { this.setState({ pageSelectionMode: PageSelectionMode.Print }); },
655
- showLoading: false
656
- }, classList: [Styles.ns_table_button] }), _jsx(NSButton, { attributes: { title: 'Refresh' }, icon: { src: "https://static.namirasoft.com/image/concept/refresh/blue.svg" }, onClick: {
657
- action: (onFinished) => __awaiter(this, void 0, void 0, function* () {
658
- this.reload(null, null).then(onFinished).catch(onFinished);
659
- })
660
- }, classList: [Styles.ns_table_button], style: { border: '1px solid rgb(3, 119, 255)' } })] }));
698
+ }), isButtonEnabled("fullscreen") &&
699
+ _jsx(NSButton, { icon: { src: `https://static.namirasoft.com/image/concept/full-screen/blue.svg` }, classList: [Styles.ns_table_button, Styles.ns_fullscreen_button], onClick: {
700
+ action: this.toggleFullscreen,
701
+ showLoading: false
702
+ }, attributes: { title: this.state.fullscreen ? 'Minimize' : 'Maximize' } }), isButtonEnabled("chart") &&
703
+ _jsx(NSButton, { attributes: { title: 'Chart' }, icon: { src: "https://static.namirasoft.com/image/concept/chart/blue.svg" }, onClick: {
704
+ action: () => {
705
+ if (!this.state.rows || this.state.rows.length === 0)
706
+ this.showModal(" ", "There is no data to display as a chart.");
707
+ else
708
+ this.setState({ showChart: true });
709
+ },
710
+ showLoading: false
711
+ }, classList: [Styles.ns_table_button] }), isButtonEnabled("export") &&
712
+ _jsx(NSButton, { icon: { src: "https://static.namirasoft.com/image/concept/export/blue.svg" }, onClick: {
713
+ action: () => { this.setState({ pageSelectionMode: PageSelectionMode.CSV }); },
714
+ showLoading: false
715
+ }, classList: [Styles.ns_table_button], attributes: { title: 'Export' } }), isButtonEnabled("print") &&
716
+ _jsx(NSButton, { attributes: { title: 'Print' }, icon: { src: "https://static.namirasoft.com/image/concept/print/blue.svg" }, onClick: {
717
+ action: () => { this.setState({ pageSelectionMode: PageSelectionMode.Print }); },
718
+ showLoading: false
719
+ }, classList: [Styles.ns_table_button] }), isButtonEnabled("refresh") &&
720
+ _jsx(NSButton, { attributes: { title: 'Refresh' }, icon: { src: "https://static.namirasoft.com/image/concept/refresh/blue.svg" }, onClick: {
721
+ action: (onFinished) => __awaiter(this, void 0, void 0, function* () {
722
+ this.reload(null, null).then(onFinished).catch(onFinished);
723
+ })
724
+ }, classList: [Styles.ns_table_button], style: { border: '1px solid rgb(3, 119, 255)' } })] }));
661
725
  return (_jsxs("div", { id: this.props.id, className: [...(_k = this.props.classList) !== null && _k !== void 0 ? _k : [], Styles.ns_table_wrapper, this.state.fullscreen ? Styles.ns_fullscreen : ""].filter(Boolean).join(" "), style: Object.assign({}, this.props.style), children: [((!this.state.fullscreen && this.props.headerChildren) || show_pagination || buttonPanel) &&
662
726
  _jsxs("div", { className: Styles.ns_table_topbar, children: [!this.state.fullscreen &&
663
727
  this.props.headerChildren, show_pagination &&
664
- _jsx(NSPagination, { ref: this.NSPagination, totalItems: this.state.totalItems, onPageChange: this.onPageChange, style: { marginRight: "auto" } }), buttonPanel] }), !this.state.fullscreen && this.props.children &&
728
+ _jsx(NSPagination, { ref: this.NSPagination, totalItems: this.state.totalItems, onPageChange: this.onPageChange }), buttonPanel] }), !this.state.fullscreen && this.props.children &&
665
729
  _jsx("div", { className: Styles.ns_table_children, children: this.props.children }), _jsxs("table", { ref: this.Table_Ref, className: Styles.ns_table, children: [_jsx("thead", { children: _jsxs("tr", { style: { gridTemplateColumns }, children: [this.props.checkbox &&
666
730
  _jsx("th", { "data-cell-type": "checkbox", className: "d-flex", children: _jsx("label", { htmlFor: 'checkbox', className: Styles.ns_checkbox_label, children: _jsx("input", { id: "checkbox", type: "checkbox", className: `${Styles.ns_check_box} ${this.isSomeSelected() ? Styles.ns_indeterminate : ""}`, checked: this.getSelectedIDs().length > 0, onChange: this.toggleAllSelections }) }) }), this.getColumns(true).map(column => _jsxs("th", { scope: "col", onMouseDown: (e) => {
667
731
  if (e.target.closest('[data-resize-handle]'))
668
732
  return;
733
+ if (!this.isSortEnabled())
734
+ return;
669
735
  let t = new BaseMetaTable(null, column.table.name, column.table.text);
670
736
  let c = new BaseMetaColumn(t, column.name, column.text, "", false);
671
737
  let items = this.getSortItems();
@@ -679,7 +745,19 @@ export class NSTable extends Component {
679
745
  }
680
746
  }, style: { width: this.getColumnWidth(column) }, children: [_jsx("span", { className: Styles.ns_th_title, children: column.text + " " + getSortSign(column) }), _jsx("div", { "data-resize-handle": "true", className: Styles.ns_resize_handle, onMouseDown: (e) => this.startResize(e, column), onClick: (e) => { e.stopPropagation(); } })] }, column.name))] }) }), _jsx("tbody", { className: Styles.ns_tbody, children: content })] }), this.state.model.show &&
681
747
  _jsx(NSDialogInfo, { description: this.state.model.description, onClose: () => { this.hideModal(); }, title: this.state.title, show_as_code: true, children: _jsx(_Fragment, {}) }), this.state.showChart &&
682
- _jsx(NSTableChart, { name: this.props.name, columns: this.getColumns(true), rows: (_l = this.state.rows) !== null && _l !== void 0 ? _l : [], selectedRows: this.state.selectedRows, onClose: () => this.setState({ showChart: false }) })] }));
748
+ _jsx(NSTableChart, { name: this.props.name, columns: this.getColumns(true), rows: (_l = this.state.rows) !== null && _l !== void 0 ? _l : [], selectedRows: this.state.selectedRows, onClose: () => this.setState({ showChart: false }) }), this.state.showSortDialog && this.isSortEnabled() &&
749
+ _jsx(NSSortDialog, { sorts: this.getSortItems(), getColumns: () => this.getColumns(null), onCancel: () => this.setState({ showSortDialog: false }), onApply: sorts => {
750
+ this.setSortItems(sorts);
751
+ this.setState({ showSortDialog: false });
752
+ } }), this.state.showReorderDialog &&
753
+ _jsx(NSReorderDialog, { visibleColumnKeys: this.getVisibleColumns().map(c => c.table + "." + c.column), getColumns: () => this.getColumns(null), onCancel: () => this.setState({ showReorderDialog: false }), onApply: orderedKeys => {
754
+ const all = this.getColumns(null);
755
+ const cs = orderedKeys
756
+ .map(k => all.find(c => c.table.name + "." + c.name === k))
757
+ .filter((c) => !!c);
758
+ this.setVisibleColumns(cs.map(c => ({ table: c.table.name, column: c.name })));
759
+ this.setState({ showReorderDialog: false });
760
+ } })] }));
683
761
  }
684
762
  }
685
763
  //# sourceMappingURL=NSTable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NSTable.js","sourceRoot":"","sources":["../../src/components/NSTable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NSTable.js","sourceRoot":"","sources":["../../src/components/NSTable.tsx"],"names":[],"mappings":"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"}
@@ -142,6 +142,7 @@
142
142
  align-items: center;
143
143
  width: 100%;
144
144
  gap: 16px;
145
+ margin-left: auto;
145
146
  }
146
147
 
147
148
  .ns_table_button {
@@ -4,6 +4,13 @@ export declare abstract class BaseColumnFormatter {
4
4
  width: string;
5
5
  onclick_overrided: boolean;
6
6
  abstract format(value: any, column: TableColumnInfo, row: TableRowInfo<any>, printable: boolean): any;
7
+ compare(a: any, b: any): number;
8
+ static isEmpty(v: any): boolean;
9
+ static compareEmpty(a: any, b: any): number | null;
10
+ static numberCompare(a: any, b: any): number;
11
+ static dateCompare(a: any, b: any): number;
12
+ static stringCompare(a: any, b: any): number;
13
+ static smartCompare(a: any, b: any): number;
7
14
  static getColumn(column: BaseMetaColumn, formatter: BaseColumnFormatter, group?: string, defaults?: {
8
15
  hidden?: boolean;
9
16
  }): TableColumnInfo;
@@ -3,6 +3,59 @@ export class BaseColumnFormatter {
3
3
  this.width = "100px";
4
4
  this.onclick_overrided = false;
5
5
  }
6
+ compare(a, b) {
7
+ return BaseColumnFormatter.smartCompare(a, b);
8
+ }
9
+ static isEmpty(v) {
10
+ return v === null || v === undefined || v === "";
11
+ }
12
+ static compareEmpty(a, b) {
13
+ const ae = BaseColumnFormatter.isEmpty(a);
14
+ const be = BaseColumnFormatter.isEmpty(b);
15
+ if (ae && be)
16
+ return 0;
17
+ if (ae)
18
+ return 1;
19
+ if (be)
20
+ return -1;
21
+ return null;
22
+ }
23
+ static numberCompare(a, b) {
24
+ const e = BaseColumnFormatter.compareEmpty(a, b);
25
+ if (e !== null)
26
+ return e;
27
+ const na = Number(a);
28
+ const nb = Number(b);
29
+ if (isNaN(na) || isNaN(nb))
30
+ return BaseColumnFormatter.stringCompare(a, b);
31
+ return na - nb;
32
+ }
33
+ static dateCompare(a, b) {
34
+ const e = BaseColumnFormatter.compareEmpty(a, b);
35
+ if (e !== null)
36
+ return e;
37
+ const ta = new Date(a).getTime();
38
+ const tb = new Date(b).getTime();
39
+ if (isNaN(ta) || isNaN(tb))
40
+ return BaseColumnFormatter.stringCompare(a, b);
41
+ return ta - tb;
42
+ }
43
+ static stringCompare(a, b) {
44
+ const e = BaseColumnFormatter.compareEmpty(a, b);
45
+ if (e !== null)
46
+ return e;
47
+ return String(a).localeCompare(String(b));
48
+ }
49
+ static smartCompare(a, b) {
50
+ const e = BaseColumnFormatter.compareEmpty(a, b);
51
+ if (e !== null)
52
+ return e;
53
+ const na = Number(a);
54
+ const nb = Number(b);
55
+ if (!isNaN(na) && !isNaN(nb))
56
+ return na - nb;
57
+ return String(a).localeCompare(String(b));
58
+ }
6
59
  static getColumn(column, formatter, group, defaults) {
7
60
  return Object.assign(Object.assign({ index: 0 }, column), { formatter,
8
61
  group,
@@ -1 +1 @@
1
- {"version":3,"file":"BaseColumnFormatter.js","sourceRoot":"","sources":["../../src/formatter/BaseColumnFormatter.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,mBAAmB;IAAzC;QAEW,UAAK,GAAW,OAAO,CAAC;QACxB,sBAAiB,GAAY,KAAK,CAAC;IAY9C,CAAC;IAVG,MAAM,CAAC,SAAS,CAAC,MAAsB,EAAE,SAA8B,EAAE,KAAc,EAAE,QAA+B;QAEpH,qCACI,KAAK,EAAE,CAAC,IACL,MAAM,KACT,SAAS;YACT,KAAK;YACL,QAAQ,IACV;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"BaseColumnFormatter.js","sourceRoot":"","sources":["../../src/formatter/BaseColumnFormatter.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,5 @@ export declare class BaseURLImageFormatter extends BaseColumnFormatter {
12
12
  };
13
13
  href: string;
14
14
  }, _?: TableColumnInfo, __?: TableRowInfo<any>, printable?: boolean): any;
15
+ compare(a: any, b: any): number;
15
16
  }
@@ -13,5 +13,8 @@ export class BaseURLImageFormatter extends BaseColumnFormatter {
13
13
  }
14
14
  return value.text;
15
15
  }
16
+ compare(a, b) {
17
+ return BaseColumnFormatter.stringCompare(a === null || a === void 0 ? void 0 : a.text, b === null || b === void 0 ? void 0 : b.text);
18
+ }
16
19
  }
17
20
  //# sourceMappingURL=BaseURLImageFormatter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseURLImageFormatter.js","sourceRoot":"","sources":["../../src/formatter/BaseURLImageFormatter.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,qBAAsB,SAAQ,mBAAmB;IAG1D,YAAY,SAAoC,QAAQ,EAAE,QAAgB,OAAO;QAE7E,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IACQ,MAAM,CAAC,KAIf,EAAE,CAAmB,EAAE,EAAsB,EAAE,SAAmB;QAE/D,IAAI,CAAC,SAAS,EACd,CAAC;YACG,OAAO,CACH,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,aAEzD,KAAK,CAAC,KAAK,CAAC,GAAG;wBACf,cAAK,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,EAEjG,YAAG,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,YAAG,KAAK,CAAC,IAAI,GAAK,IACjI,CACV,CAAC;QACN,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC;IACtB,CAAC;CACJ"}
1
+ {"version":3,"file":"BaseURLImageFormatter.js","sourceRoot":"","sources":["../../src/formatter/BaseURLImageFormatter.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,qBAAsB,SAAQ,mBAAmB;IAG1D,YAAY,SAAoC,QAAQ,EAAE,QAAgB,OAAO;QAE7E,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IACQ,MAAM,CAAC,KAIf,EAAE,CAAmB,EAAE,EAAsB,EAAE,SAAmB;QAE/D,IAAI,CAAC,SAAS,EACd,CAAC;YACG,OAAO,CACH,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,aAEzD,KAAK,CAAC,KAAK,CAAC,GAAG;wBACf,cAAK,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,EAEjG,YAAG,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,YAAG,KAAK,CAAC,IAAI,GAAK,IACjI,CACV,CAAC;QACN,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC;IACtB,CAAC;IACQ,OAAO,CAAC,CAAM,EAAE,CAAM;QAE3B,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,EAAE,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;CACJ"}
@@ -4,4 +4,5 @@ export declare class BooleanFormatter extends BaseColumnFormatter {
4
4
  private false_value;
5
5
  constructor(true_value: string, false_value: string, width?: string);
6
6
  format(value: any): any;
7
+ compare(a: any, b: any): number;
7
8
  }
@@ -14,5 +14,8 @@ export class BooleanFormatter extends BaseColumnFormatter {
14
14
  return this.false_value;
15
15
  return value;
16
16
  }
17
+ compare(a, b) {
18
+ return BaseColumnFormatter.numberCompare(a, b);
19
+ }
17
20
  }
18
21
  //# sourceMappingURL=BooleanFormatter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanFormatter.js","sourceRoot":"","sources":["../../src/formatter/BooleanFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,gBAAiB,SAAQ,mBAAmB;IAIrD,YAAY,UAAkB,EAAE,WAAmB,EAAE,QAAgB,MAAM;QAEvE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,KAAK;YACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC3B,CAAC;IACQ,MAAM,CAAC,KAAU;QAEtB,IAAI,KAAK,KAAK,IAAI;YACd,OAAO,IAAI,CAAC,UAAU,CAAC;QAC3B,IAAI,KAAK,KAAK,KAAK;YACf,OAAO,IAAI,CAAC,WAAW,CAAC;QAC5B,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ"}
1
+ {"version":3,"file":"BooleanFormatter.js","sourceRoot":"","sources":["../../src/formatter/BooleanFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,gBAAiB,SAAQ,mBAAmB;IAIrD,YAAY,UAAkB,EAAE,WAAmB,EAAE,QAAgB,MAAM;QAEvE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,KAAK;YACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC3B,CAAC;IACQ,MAAM,CAAC,KAAU;QAEtB,IAAI,KAAK,KAAK,IAAI;YACd,OAAO,IAAI,CAAC,UAAU,CAAC;QAC3B,IAAI,KAAK,KAAK,KAAK;YACf,OAAO,IAAI,CAAC,WAAW,CAAC;QAC5B,OAAO,KAAK,CAAC;IACjB,CAAC;IACQ,OAAO,CAAC,CAAM,EAAE,CAAM;QAE3B,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;CACJ"}
@@ -2,4 +2,5 @@ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
2
  export declare class BytesFormatter extends BaseColumnFormatter {
3
3
  constructor(width?: string);
4
4
  format(bytes: number): string;
5
+ compare(a: any, b: any): number;
5
6
  }
@@ -8,5 +8,8 @@ export class BytesFormatter extends BaseColumnFormatter {
8
8
  format(bytes) {
9
9
  return ByteOperation.format(bytes, ByteUnit.B);
10
10
  }
11
+ compare(a, b) {
12
+ return BaseColumnFormatter.numberCompare(a, b);
13
+ }
11
14
  }
12
15
  //# sourceMappingURL=BytesFormatter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BytesFormatter.js","sourceRoot":"","sources":["../../src/formatter/BytesFormatter.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,cAAe,SAAQ,mBAAmB;IAEnD,YAAY,QAAgB,OAAO;QAE/B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,KAAa;QAEzB,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;CACJ"}
1
+ {"version":3,"file":"BytesFormatter.js","sourceRoot":"","sources":["../../src/formatter/BytesFormatter.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,cAAe,SAAQ,mBAAmB;IAEnD,YAAY,QAAgB,OAAO;QAE/B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,KAAa;QAEzB,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IACQ,OAAO,CAAC,CAAM,EAAE,CAAM;QAE3B,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;CACJ"}
@@ -2,4 +2,5 @@ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
2
  export declare class DateFormatter extends BaseColumnFormatter {
3
3
  constructor(width?: string);
4
4
  format(value: any): any;
5
+ compare(a: any, b: any): number;
5
6
  }
@@ -15,5 +15,8 @@ export class DateFormatter extends BaseColumnFormatter {
15
15
  }
16
16
  return value;
17
17
  }
18
+ compare(a, b) {
19
+ return BaseColumnFormatter.dateCompare(a, b);
20
+ }
18
21
  }
19
22
  //# sourceMappingURL=DateFormatter.js.map