@singularsystems/neo-react 0.10.31 → 0.10.34

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 (187) hide show
  1. package/dist/Modules/NeoReactModule.js +0 -1
  2. package/dist/Modules/ReactSetup.js +0 -1
  3. package/dist/Modules/Types.js +0 -1
  4. package/dist/React/AutoRunner.js +0 -1
  5. package/dist/React/DataView.js +0 -1
  6. package/dist/React/Decorators.js +0 -1
  7. package/dist/React/ReactModelCreator.js +0 -2
  8. package/dist/React/Utils.js +0 -1
  9. package/dist/ReactComponents/Button.js +0 -1
  10. package/dist/ReactComponents/Card.js +0 -1
  11. package/dist/ReactComponents/Collapsable.js +0 -1
  12. package/dist/ReactComponents/CollapsableBase.js +0 -1
  13. package/dist/ReactComponents/ColorPicker.js +0 -1
  14. package/dist/ReactComponents/ComponentBase.js +0 -1
  15. package/dist/ReactComponents/ContextMenu/ContextMenu.js +0 -1
  16. package/dist/ReactComponents/ContextMenu/ContextMenuContainer.js +0 -1
  17. package/dist/ReactComponents/ContextMenu/ContextMenuState.js +0 -1
  18. package/dist/ReactComponents/DatePicker.js +0 -1
  19. package/dist/ReactComponents/DropDown/AutoCompleteDropDown.js +0 -1
  20. package/dist/ReactComponents/DropDown/DropDown.js +0 -1
  21. package/dist/ReactComponents/DropDown/DropDownBase.js +6 -1
  22. package/dist/ReactComponents/ErrorHandler.js +0 -1
  23. package/dist/ReactComponents/FileManager/FileBasicInput.js +0 -1
  24. package/dist/ReactComponents/FileManager/FileContext.js +0 -1
  25. package/dist/ReactComponents/FileManager/FileDropArea.js +0 -1
  26. package/dist/ReactComponents/FileManager/FileInput.js +0 -1
  27. package/dist/ReactComponents/FileManager/FileUploadButton.js +0 -1
  28. package/dist/ReactComponents/FileManager/FileUploadProgress.js +0 -1
  29. package/dist/ReactComponents/Form.js +0 -1
  30. package/dist/ReactComponents/FormContext.js +0 -1
  31. package/dist/ReactComponents/FormGroup/FormGroup.js +0 -1
  32. package/dist/ReactComponents/FormGroup/FormGroupFloating.js +0 -1
  33. package/dist/ReactComponents/FormGroup/FormGroupInline.js +0 -1
  34. package/dist/ReactComponents/Grid/ButtonColumn.js +0 -1
  35. package/dist/ReactComponents/Grid/Column.js +0 -1
  36. package/dist/ReactComponents/Grid/ColumnHelper.js +0 -1
  37. package/dist/ReactComponents/Grid/Grid.d.ts +2 -0
  38. package/dist/ReactComponents/Grid/Grid.js +3 -3
  39. package/dist/ReactComponents/Grid/Row.d.ts +11 -2
  40. package/dist/ReactComponents/Grid/Row.js +11 -6
  41. package/dist/ReactComponents/Grid/_Exports.js +0 -1
  42. package/dist/ReactComponents/GridLayout.js +0 -1
  43. package/dist/ReactComponents/Input.js +0 -1
  44. package/dist/ReactComponents/InputHelpers.js +0 -1
  45. package/dist/ReactComponents/Loader.js +0 -1
  46. package/dist/ReactComponents/Modal/Modal.js +0 -1
  47. package/dist/ReactComponents/Modal/ModalContainer.js +0 -1
  48. package/dist/ReactComponents/Modal/ModalPortal.js +0 -1
  49. package/dist/ReactComponents/Notifications/Alert.js +0 -1
  50. package/dist/ReactComponents/Notifications/Toast.js +0 -1
  51. package/dist/ReactComponents/Notifications/ToastContainer.js +0 -1
  52. package/dist/ReactComponents/NumberInput.d.ts +3 -1
  53. package/dist/ReactComponents/NumberInput.js +75 -41
  54. package/dist/ReactComponents/Paging/BasicPagerControls.js +0 -1
  55. package/dist/ReactComponents/Paging/PageSizeControl.js +0 -1
  56. package/dist/ReactComponents/Paging/Pager.js +0 -1
  57. package/dist/ReactComponents/ProgressBar.js +0 -1
  58. package/dist/ReactComponents/PropTypes.js +3 -3
  59. package/dist/ReactComponents/RadioList.js +6 -1
  60. package/dist/ReactComponents/ReactHelpers.js +0 -1
  61. package/dist/ReactComponents/Slider.js +0 -1
  62. package/dist/ReactComponents/StateObserver.js +0 -1
  63. package/dist/ReactComponents/Tabs/Tab.js +0 -1
  64. package/dist/ReactComponents/Tabs/TabContainer.js +0 -1
  65. package/dist/ReactComponents/Tabs/TabManager.js +0 -1
  66. package/dist/ReactComponents/Tooltip.js +0 -1
  67. package/dist/ReactComponents/TooltipHelper.js +0 -1
  68. package/dist/ReactComponents/TooltipProvider.js +0 -1
  69. package/dist/ReactComponents/ValidationSummary.js +0 -1
  70. package/dist/ReactComponents/_Exports.js +0 -1
  71. package/dist/ReactComponents/_Managers.js +0 -1
  72. package/dist/Routing/BreadCrumbItem.js +0 -1
  73. package/dist/Routing/IRouteChangedProps.js +0 -1
  74. package/dist/Routing/IRouteParameter.js +0 -1
  75. package/dist/Routing/MenuRoute.js +0 -1
  76. package/dist/Routing/NavigationHelper.js +0 -1
  77. package/dist/Routing/PageLeaveHandler.js +0 -1
  78. package/dist/Routing/RouteProvider.js +0 -1
  79. package/dist/Routing/RouteView.js +0 -1
  80. package/dist/Routing/RoutingState.js +0 -1
  81. package/dist/Routing/ViewParameter.js +0 -1
  82. package/dist/Routing/ViewParameterList.js +0 -1
  83. package/dist/Routing/index.js +0 -1
  84. package/dist/Services/DisposeHelper.js +0 -1
  85. package/dist/Services/IDisposeHelper.js +0 -1
  86. package/dist/Views/EmptyViewModel.js +0 -1
  87. package/dist/Views/IViewModel.js +0 -1
  88. package/dist/Views/PersistentViewBase.js +0 -1
  89. package/dist/Views/ViewBase.js +0 -1
  90. package/dist/Views/ViewComponentBase.js +0 -1
  91. package/dist/Views/ViewModelBase.js +0 -1
  92. package/dist/Views/ViewState.js +0 -1
  93. package/dist/Views/index.js +0 -1
  94. package/dist/index.js +0 -1
  95. package/package.json +6 -5
  96. package/styles/Validation.scss +0 -2
  97. package/dist/Modules/NeoReactModule.js.map +0 -1
  98. package/dist/Modules/ReactSetup.js.map +0 -1
  99. package/dist/Modules/Types.js.map +0 -1
  100. package/dist/React/AutoRunner.js.map +0 -1
  101. package/dist/React/DataView.js.map +0 -1
  102. package/dist/React/Decorators.js.map +0 -1
  103. package/dist/React/ReactModelCreator.js.map +0 -1
  104. package/dist/React/Utils.js.map +0 -1
  105. package/dist/ReactComponents/Button.js.map +0 -1
  106. package/dist/ReactComponents/Card.js.map +0 -1
  107. package/dist/ReactComponents/Collapsable.js.map +0 -1
  108. package/dist/ReactComponents/CollapsableBase.js.map +0 -1
  109. package/dist/ReactComponents/ColorPicker.js.map +0 -1
  110. package/dist/ReactComponents/ComponentBase.js.map +0 -1
  111. package/dist/ReactComponents/ContextMenu/ContextMenu.js.map +0 -1
  112. package/dist/ReactComponents/ContextMenu/ContextMenuContainer.js.map +0 -1
  113. package/dist/ReactComponents/ContextMenu/ContextMenuState.js.map +0 -1
  114. package/dist/ReactComponents/DatePicker.js.map +0 -1
  115. package/dist/ReactComponents/DropDown/AutoCompleteDropDown.js.map +0 -1
  116. package/dist/ReactComponents/DropDown/DropDown.js.map +0 -1
  117. package/dist/ReactComponents/DropDown/DropDownBase.js.map +0 -1
  118. package/dist/ReactComponents/ErrorHandler.js.map +0 -1
  119. package/dist/ReactComponents/FileManager/FileBasicInput.js.map +0 -1
  120. package/dist/ReactComponents/FileManager/FileContext.js.map +0 -1
  121. package/dist/ReactComponents/FileManager/FileDropArea.js.map +0 -1
  122. package/dist/ReactComponents/FileManager/FileInput.js.map +0 -1
  123. package/dist/ReactComponents/FileManager/FileUploadButton.js.map +0 -1
  124. package/dist/ReactComponents/FileManager/FileUploadProgress.js.map +0 -1
  125. package/dist/ReactComponents/Form.js.map +0 -1
  126. package/dist/ReactComponents/FormContext.js.map +0 -1
  127. package/dist/ReactComponents/FormGroup/FormGroup.js.map +0 -1
  128. package/dist/ReactComponents/FormGroup/FormGroupFloating.js.map +0 -1
  129. package/dist/ReactComponents/FormGroup/FormGroupInline.js.map +0 -1
  130. package/dist/ReactComponents/Grid/ButtonColumn.js.map +0 -1
  131. package/dist/ReactComponents/Grid/Column.js.map +0 -1
  132. package/dist/ReactComponents/Grid/ColumnHelper.js.map +0 -1
  133. package/dist/ReactComponents/Grid/Grid.js.map +0 -1
  134. package/dist/ReactComponents/Grid/Row.js.map +0 -1
  135. package/dist/ReactComponents/Grid/_Exports.js.map +0 -1
  136. package/dist/ReactComponents/GridLayout.js.map +0 -1
  137. package/dist/ReactComponents/Input.js.map +0 -1
  138. package/dist/ReactComponents/InputHelpers.js.map +0 -1
  139. package/dist/ReactComponents/Loader.js.map +0 -1
  140. package/dist/ReactComponents/Modal/Modal.js.map +0 -1
  141. package/dist/ReactComponents/Modal/ModalContainer.js.map +0 -1
  142. package/dist/ReactComponents/Modal/ModalPortal.js.map +0 -1
  143. package/dist/ReactComponents/Notifications/Alert.js.map +0 -1
  144. package/dist/ReactComponents/Notifications/Toast.js.map +0 -1
  145. package/dist/ReactComponents/Notifications/ToastContainer.js.map +0 -1
  146. package/dist/ReactComponents/NumberInput.js.map +0 -1
  147. package/dist/ReactComponents/Paging/BasicPagerControls.js.map +0 -1
  148. package/dist/ReactComponents/Paging/PageSizeControl.js.map +0 -1
  149. package/dist/ReactComponents/Paging/Pager.js.map +0 -1
  150. package/dist/ReactComponents/ProgressBar.js.map +0 -1
  151. package/dist/ReactComponents/PropTypes.js.map +0 -1
  152. package/dist/ReactComponents/RadioList.js.map +0 -1
  153. package/dist/ReactComponents/ReactHelpers.js.map +0 -1
  154. package/dist/ReactComponents/Slider.js.map +0 -1
  155. package/dist/ReactComponents/StateObserver.js.map +0 -1
  156. package/dist/ReactComponents/Tabs/Tab.js.map +0 -1
  157. package/dist/ReactComponents/Tabs/TabContainer.js.map +0 -1
  158. package/dist/ReactComponents/Tabs/TabManager.js.map +0 -1
  159. package/dist/ReactComponents/Tooltip.js.map +0 -1
  160. package/dist/ReactComponents/TooltipHelper.js.map +0 -1
  161. package/dist/ReactComponents/TooltipProvider.js.map +0 -1
  162. package/dist/ReactComponents/ValidationSummary.js.map +0 -1
  163. package/dist/ReactComponents/_Exports.js.map +0 -1
  164. package/dist/ReactComponents/_Managers.js.map +0 -1
  165. package/dist/Routing/BreadCrumbItem.js.map +0 -1
  166. package/dist/Routing/IRouteChangedProps.js.map +0 -1
  167. package/dist/Routing/IRouteParameter.js.map +0 -1
  168. package/dist/Routing/MenuRoute.js.map +0 -1
  169. package/dist/Routing/NavigationHelper.js.map +0 -1
  170. package/dist/Routing/PageLeaveHandler.js.map +0 -1
  171. package/dist/Routing/RouteProvider.js.map +0 -1
  172. package/dist/Routing/RouteView.js.map +0 -1
  173. package/dist/Routing/RoutingState.js.map +0 -1
  174. package/dist/Routing/ViewParameter.js.map +0 -1
  175. package/dist/Routing/ViewParameterList.js.map +0 -1
  176. package/dist/Routing/index.js.map +0 -1
  177. package/dist/Services/DisposeHelper.js.map +0 -1
  178. package/dist/Services/IDisposeHelper.js.map +0 -1
  179. package/dist/Views/EmptyViewModel.js.map +0 -1
  180. package/dist/Views/IViewModel.js.map +0 -1
  181. package/dist/Views/PersistentViewBase.js.map +0 -1
  182. package/dist/Views/ViewBase.js.map +0 -1
  183. package/dist/Views/ViewComponentBase.js.map +0 -1
  184. package/dist/Views/ViewModelBase.js.map +0 -1
  185. package/dist/Views/ViewState.js.map +0 -1
  186. package/dist/Views/index.js.map +0 -1
  187. package/dist/index.js.map +0 -1
@@ -22,4 +22,3 @@ var neoReactModule = new AppServices.Module("neo-react", function (container) {
22
22
  runReactSetup(container);
23
23
  });
24
24
  export default neoReactModule;
25
- //# sourceMappingURL=NeoReactModule.js.map
@@ -26,4 +26,3 @@ export function runReactSetup(container) {
26
26
  container.get(AppServices.NeoTypes.Routing.PageLeaveHandler).onWindowUnload(ViewBase.currentView, e);
27
27
  });
28
28
  }
29
- //# sourceMappingURL=ReactSetup.js.map
@@ -10,4 +10,3 @@ var NeoReactTypes = __assign(__assign({}, AppServices.NeoTypes), { Components: {
10
10
  DisposeHelper: new AppServices.ServiceIdentifier("NeoReact.DisposeHelper")
11
11
  } });
12
12
  export { NeoReactTypes };
13
- //# sourceMappingURL=Types.js.map
@@ -74,4 +74,3 @@ var AutoRunner = /** @class */ (function () {
74
74
  };
75
75
  return AutoRunner;
76
76
  }());
77
- //# sourceMappingURL=AutoRunner.js.map
@@ -11,4 +11,3 @@ var DataViewContextParams = /** @class */ (function () {
11
11
  }());
12
12
  export { DataViewContextParams };
13
13
  export var DataViewContext = React.createContext(new DataViewContextParams());
14
- //# sourceMappingURL=DataView.js.map
@@ -13,4 +13,3 @@ export function observableList(type, propertyKey) {
13
13
  }
14
14
  };
15
15
  }
16
- //# sourceMappingURL=Decorators.js.map
@@ -89,7 +89,6 @@ var ReactModelCreator = /** @class */ (function (_super) {
89
89
  if (typeof onChange.newValue === "string") {
90
90
  throw "Error: tried to assign a string to a date property.";
91
91
  }
92
- propertyInstance.sortValue = onChange.newValue ? onChange.newValue.getTime() : 0;
93
92
  }
94
93
  }
95
94
  observable.previousValue = observable.value;
@@ -122,4 +121,3 @@ var ReactModelCreator = /** @class */ (function (_super) {
122
121
  return ReactModelCreator;
123
122
  }(ModelCreatorBase));
124
123
  export { ReactModelCreator };
125
- //# sourceMappingURL=ReactModelCreator.js.map
@@ -13,4 +13,3 @@ export function createObservableList(target, propertyKey, list) {
13
13
  throw "observableList can only be defined on arrays.";
14
14
  }
15
15
  }
16
- //# sourceMappingURL=Utils.js.map
@@ -122,4 +122,3 @@ var Button = /** @class */ (function (_super) {
122
122
  return Button;
123
123
  }(ComponentBase));
124
124
  export default Button;
125
- //# sourceMappingURL=Button.js.map
@@ -52,4 +52,3 @@ var Card = /** @class */ (function (_super) {
52
52
  return Card;
53
53
  }(React.Component));
54
54
  export default Card;
55
- //# sourceMappingURL=Card.js.map
@@ -36,4 +36,3 @@ var Collapsable = /** @class */ (function (_super) {
36
36
  return Collapsable;
37
37
  }(ComponentBase));
38
38
  export default Collapsable;
39
- //# sourceMappingURL=Collapsable.js.map
@@ -40,4 +40,3 @@ var CollapsableBase = /** @class */ (function (_super) {
40
40
  return CollapsableBase;
41
41
  }(ComponentBase));
42
42
  export default CollapsableBase;
43
- //# sourceMappingURL=CollapsableBase.js.map
@@ -65,4 +65,3 @@ var ColorPicker = /** @class */ (function (_super) {
65
65
  return ColorPicker;
66
66
  }(React.Component));
67
67
  export default ColorPicker;
68
- //# sourceMappingURL=ColorPicker.js.map
@@ -31,4 +31,3 @@ var ComponentBase = /** @class */ (function (_super) {
31
31
  return ComponentBase;
32
32
  }(React.Component));
33
33
  export default ComponentBase;
34
- //# sourceMappingURL=ComponentBase.js.map
@@ -86,4 +86,3 @@ var ContextMenu = /** @class */ (function (_super) {
86
86
  return ContextMenu;
87
87
  }(ComponentBase));
88
88
  export default ContextMenu;
89
- //# sourceMappingURL=ContextMenu.js.map
@@ -46,4 +46,3 @@ var ContextMenuContainer = /** @class */ (function (_super) {
46
46
  return ContextMenuContainer;
47
47
  }(React.Component));
48
48
  export default ContextMenuContainer;
49
- //# sourceMappingURL=ContextMenuContainer.js.map
@@ -21,4 +21,3 @@ var ContextMenuState = /** @class */ (function () {
21
21
  return ContextMenuState;
22
22
  }());
23
23
  export { ContextMenuState };
24
- //# sourceMappingURL=ContextMenuState.js.map
@@ -51,4 +51,3 @@ var DatePicker = /** @class */ (function (_super) {
51
51
  return DatePicker;
52
52
  }(ComponentBase));
53
53
  export default DatePicker;
54
- //# sourceMappingURL=DatePicker.js.map
@@ -173,4 +173,3 @@ var AutoCompleteDropDown = /** @class */ (function (_super) {
173
173
  return AutoCompleteDropDown;
174
174
  }(DropDownBase));
175
175
  export default AutoCompleteDropDown;
176
- //# sourceMappingURL=AutoCompleteDropDown.js.map
@@ -131,4 +131,3 @@ var DropDown = /** @class */ (function (_super) {
131
131
  return DropDown;
132
132
  }(DropDownBase));
133
133
  export default DropDown;
134
- //# sourceMappingURL=DropDown.js.map
@@ -13,6 +13,12 @@ var DropDownBase = /** @class */ (function (_super) {
13
13
  }
14
14
  DropDownBase.prototype.findMembers = function (item) {
15
15
  if (!this.valueMember || !this.displayMember) {
16
+ if (!this.displayMember) {
17
+ var neoTypeInfo = item.constructor.neo;
18
+ if (neoTypeInfo && neoTypeInfo.displayMember) {
19
+ this.displayMember = neoTypeInfo.displayMember.propertyName;
20
+ }
21
+ }
16
22
  for (var propName in item) {
17
23
  if (this.valueMember && this.displayMember)
18
24
  break;
@@ -96,4 +102,3 @@ var DropDownBase = /** @class */ (function (_super) {
96
102
  return DropDownBase;
97
103
  }(ComponentBase));
98
104
  export { DropDownBase };
99
- //# sourceMappingURL=DropDownBase.js.map
@@ -89,4 +89,3 @@ var ErrorHandler = /** @class */ (function (_super) {
89
89
  return ErrorHandler;
90
90
  }(Components.ErrorHandler));
91
91
  export { ErrorHandler };
92
- //# sourceMappingURL=ErrorHandler.js.map
@@ -47,4 +47,3 @@ var FileBasicInput = /** @class */ (function (_super) {
47
47
  return FileBasicInput;
48
48
  }(React.Component));
49
49
  export default FileBasicInput;
50
- //# sourceMappingURL=FileBasicInput.js.map
@@ -22,4 +22,3 @@ var FileContextProvider = /** @class */ (function (_super) {
22
22
  return FileContextProvider;
23
23
  }(React.Component));
24
24
  export default FileContextProvider;
25
- //# sourceMappingURL=FileContext.js.map
@@ -62,4 +62,3 @@ var FileDropArea = /** @class */ (function (_super) {
62
62
  return FileDropArea;
63
63
  }(React.Component));
64
64
  export default FileDropArea;
65
- //# sourceMappingURL=FileDropArea.js.map
@@ -187,4 +187,3 @@ var FileInput = /** @class */ (function (_super) {
187
187
  return FileInput;
188
188
  }(ComponentBase));
189
189
  export default FileInput;
190
- //# sourceMappingURL=FileInput.js.map
@@ -44,4 +44,3 @@ var FileUploadButton = /** @class */ (function (_super) {
44
44
  return FileUploadButton;
45
45
  }(React.Component));
46
46
  export default FileUploadButton;
47
- //# sourceMappingURL=FileUploadButton.js.map
@@ -33,4 +33,3 @@ var FileUploadProgress = /** @class */ (function (_super) {
33
33
  return FileUploadProgress;
34
34
  }(React.Component));
35
35
  export default FileUploadProgress;
36
- //# sourceMappingURL=FileUploadProgress.js.map
@@ -88,4 +88,3 @@ var Form = /** @class */ (function (_super) {
88
88
  return Form;
89
89
  }(React.Component));
90
90
  export default Form;
91
- //# sourceMappingURL=Form.js.map
@@ -38,4 +38,3 @@ var FormContextProvider = /** @class */ (function (_super) {
38
38
  return FormContextProvider;
39
39
  }(React.Component));
40
40
  export { FormContextProvider };
41
- //# sourceMappingURL=FormContext.js.map
@@ -82,4 +82,3 @@ var FormGroup = /** @class */ (function (_super) {
82
82
  return FormGroup;
83
83
  }(FormGroupBase));
84
84
  export default FormGroup;
85
- //# sourceMappingURL=FormGroup.js.map
@@ -95,4 +95,3 @@ var FloatingFormGroup = /** @class */ (function (_super) {
95
95
  return FloatingFormGroup;
96
96
  }(ComponentBase));
97
97
  export default FloatingFormGroup;
98
- //# sourceMappingURL=FormGroupFloating.js.map
@@ -41,4 +41,3 @@ var FormGroupInline = /** @class */ (function (_super) {
41
41
  return FormGroupInline;
42
42
  }(FormGroupBase));
43
43
  export default FormGroupInline;
44
- //# sourceMappingURL=FormGroupInline.js.map
@@ -59,4 +59,3 @@ var ButtonColumn = /** @class */ (function (_super) {
59
59
  return ButtonColumn;
60
60
  }(ComponentBase));
61
61
  export { ButtonColumn };
62
- //# sourceMappingURL=ButtonColumn.js.map
@@ -204,4 +204,3 @@ var Column = /** @class */ (function (_super) {
204
204
  return Column;
205
205
  }(ComponentBase));
206
206
  export default Column;
207
- //# sourceMappingURL=Column.js.map
@@ -17,4 +17,3 @@ var ColumnHelper = /** @class */ (function () {
17
17
  return ColumnHelper;
18
18
  }());
19
19
  export { ColumnHelper };
20
- //# sourceMappingURL=ColumnHelper.js.map
@@ -65,6 +65,8 @@ export interface IGridProps<T> extends React.HTMLProps<HTMLTableElement> {
65
65
  showHover?: boolean;
66
66
  /** When specified, the table size will be reduced (by reducing the padding sizes in each cell by half). */
67
67
  isSmallTable?: boolean;
68
+ /** Additional footer row(s) to display below the main footer row. */
69
+ footerContent?: (data: T[]) => React.ReactNode;
68
70
  }
69
71
  export default class Grid<T> extends React.Component<IGridProps<T>> {
70
72
  static contextType: React.Context<import("../../React/DataView").DataViewContextParams<unknown>>;
@@ -32,7 +32,7 @@ var Grid = /** @class */ (function (_super) {
32
32
  }
33
33
  Grid.prototype.render = function () {
34
34
  var _this = this;
35
- var _a = this.props, items = _a.items, showAddButton = _a.showAddButton, addButton = _a.addButton, filterPredicate = _a.filterPredicate, keyProperty = _a.keyProperty, allowSort = _a.allowSort, expandAll = _a.expandAll, collapseAll = _a.collapseAll, initialSort = _a.initialSort, initialSortAscending = _a.initialSortAscending, isBordered = _a.isBordered, isStriped = _a.isStriped, isBorderless = _a.isBorderless, showHover = _a.showHover, isSmallTable = _a.isSmallTable, domProps = __rest(_a, ["items", "showAddButton", "addButton", "filterPredicate", "keyProperty", "allowSort", "expandAll", "collapseAll", "initialSort", "initialSortAscending", "isBordered", "isStriped", "isBorderless", "showHover", "isSmallTable"]);
35
+ var _a = this.props, items = _a.items, showAddButton = _a.showAddButton, addButton = _a.addButton, filterPredicate = _a.filterPredicate, keyProperty = _a.keyProperty, allowSort = _a.allowSort, expandAll = _a.expandAll, collapseAll = _a.collapseAll, initialSort = _a.initialSort, initialSortAscending = _a.initialSortAscending, isBordered = _a.isBordered, isStriped = _a.isStriped, isBorderless = _a.isBorderless, showHover = _a.showHover, isSmallTable = _a.isSmallTable, footerContent = _a.footerContent, domProps = __rest(_a, ["items", "showAddButton", "addButton", "filterPredicate", "keyProperty", "allowSort", "expandAll", "collapseAll", "initialSort", "initialSortAscending", "isBordered", "isStriped", "isBorderless", "showHover", "isSmallTable", "footerContent"]);
36
36
  if (expandAll === true) {
37
37
  this.gridContext.expandAll = true;
38
38
  }
@@ -90,9 +90,10 @@ var Grid = /** @class */ (function (_super) {
90
90
  React.createElement(GridContext.Provider, { value: this.gridContext },
91
91
  React.createElement(TableSection, { type: "header" }, this.headerItem && this.props.children(this.headerItem, this.headerItem.meta)),
92
92
  React.createElement(TableSection, { type: "body" }, this.gridContext.dataView.getItems().map(function (item) { return (React.createElement(ItemGroup, { item: item, key: keyProperty ? item[keyProperty] : item.entityIdentifier, template: _this.props.children })); })),
93
- React.createElement(Observer, null, function () { return (showAddButton || addButton || _this.gridContext.hasSummaries) &&
93
+ React.createElement(Observer, null, function () { return (showAddButton || addButton || _this.gridContext.hasSummaries || footerContent) &&
94
94
  React.createElement(TableSection, { type: "footer" },
95
95
  _this.gridContext.hasSummaries && _this.headerItem && _this.props.children(_this.headerItem, _this.headerItem.meta),
96
+ footerContent && footerContent(_this.gridContext.dataView.getItems()),
96
97
  (showAddButton || addButton) && React.createElement(AddButtonRow, { addButton: addButton })); }))));
97
98
  };
98
99
  Grid.prototype.setInitialSort = function (initialSort, initialSortAscending) {
@@ -196,4 +197,3 @@ var ItemGroup = /** @class */ (function (_super) {
196
197
  ], ItemGroup);
197
198
  return ItemGroup;
198
199
  }(React.Component));
199
- //# sourceMappingURL=Grid.js.map
@@ -34,11 +34,20 @@ export default class Row<TData> extends ComponentBase<IRowProps> {
34
34
  onExpandClick(): void;
35
35
  render(): false | JSX.Element;
36
36
  }
37
- interface INeoChildRowProps extends IRowProps {
37
+ interface INeoChildRowProps extends React.HTMLProps<HTMLTableRowElement> {
38
38
  /**
39
39
  * Overrides the value of the isExpanded property, or allows you to control the expansion of the child row manually.
40
40
  */
41
41
  isExpanded?: boolean;
42
+ /**
43
+ * By default, the expand column will cause the child row to be indented.
44
+ * Setting this to true will make the child row take the full width of the table.
45
+ */
46
+ isFullWidth?: boolean;
47
+ /**
48
+ * Props to apply to the inner child cell.
49
+ */
50
+ childCellProps?: React.HTMLProps<HTMLTableCellElement>;
42
51
  }
43
52
  export declare class ChildRow extends ComponentBase<INeoChildRowProps> {
44
53
  static contextType: React.Context<import("./Grid").GridContextParams<unknown>>;
@@ -54,7 +63,7 @@ export declare class ChildRow extends ComponentBase<INeoChildRowProps> {
54
63
  protected afterRender(isInitial: boolean): void;
55
64
  private afterTransition;
56
65
  private setHeight;
57
- render(): JSX.Element;
66
+ render(): false | JSX.Element | undefined;
58
67
  }
59
68
  interface INeoRowGroupProps {
60
69
  /**
@@ -2,7 +2,7 @@ import { __assign, __decorate, __extends, __metadata, __rest } from "tslib";
2
2
  import * as React from 'react';
3
3
  import { observer } from 'mobx-react';
4
4
  import { GridContext } from './Grid';
5
- import { Misc, Components } from '@singularsystems/neo-core';
5
+ import { Misc, Components, Utils } from '@singularsystems/neo-core';
6
6
  import Column from './Column';
7
7
  import NeoButton from '../Button';
8
8
  import { StateObserver } from '../StateObserver';
@@ -155,7 +155,8 @@ var ChildRow = /** @class */ (function (_super) {
155
155
  ChildRow.prototype.render = function () {
156
156
  var _a;
157
157
  this.onRender();
158
- var isExpanded = this.inBody && (_a = this.context.expandAll, (_a !== null && _a !== void 0 ? _a : this.isExpanded));
158
+ var _b = this.props, isExpanded = _b.isExpanded, isFullWidth = _b.isFullWidth, childCellProps = _b.childCellProps, domProps = __rest(_b, ["isExpanded", "isFullWidth", "childCellProps"]);
159
+ isExpanded = this.inBody && (_a = this.context.expandAll, (_a !== null && _a !== void 0 ? _a : this.isExpanded));
159
160
  if (this.context.expandAll !== undefined) {
160
161
  // Prevent animation on whole table expand change.
161
162
  this.wasExpanded = false;
@@ -163,12 +164,17 @@ var ChildRow = /** @class */ (function (_super) {
163
164
  else if (isExpanded) {
164
165
  this.wasExpanded = true;
165
166
  }
166
- var showExpandButtonColumn = this.context.expandProperty && this.context.expandAll === undefined;
167
+ domProps.className = Utils.joinWithSpaces(domProps.className, "neo-child-row");
168
+ if (childCellProps === undefined) {
169
+ childCellProps = {};
170
+ }
171
+ childCellProps.className = Utils.joinWithSpaces(childCellProps.className, "neo-child-row-cell");
172
+ var showExpandButtonColumn = this.context.expandProperty && this.context.expandAll === undefined && !this.props.isFullWidth;
167
173
  var colSpan = this.context.columnCount + (showExpandButtonColumn ? 0 : 1);
168
174
  return (this.inBody && (isExpanded || this.wasExpanded) &&
169
- React.createElement("tr", { className: "neo-child-row" },
175
+ React.createElement("tr", __assign({}, domProps),
170
176
  showExpandButtonColumn && React.createElement("td", null),
171
- React.createElement("td", { colSpan: colSpan, className: "neo-child-row-cell" },
177
+ React.createElement("td", __assign({}, childCellProps, { colSpan: colSpan }),
172
178
  React.createElement("div", { ref: this.containerDiv, className: "neo-child-row-container" }, this.props.children))));
173
179
  };
174
180
  ChildRow.contextType = GridContext;
@@ -193,4 +199,3 @@ var RowGroup = /** @class */ (function (_super) {
193
199
  return RowGroup;
194
200
  }(React.Component));
195
201
  export { RowGroup };
196
- //# sourceMappingURL=Row.js.map
@@ -3,4 +3,3 @@ import Column from './Column';
3
3
  import Row, { RowGroup, ChildRow } from './Row';
4
4
  import { ButtonColumn } from './ButtonColumn';
5
5
  export { Grid, Column, RowGroup, Row, ChildRow, ButtonColumn };
6
- //# sourceMappingURL=_Exports.js.map
@@ -36,4 +36,3 @@ var GridLayout = /** @class */ (function (_super) {
36
36
  return GridLayout;
37
37
  }(React.Component));
38
38
  export default GridLayout;
39
- //# sourceMappingURL=GridLayout.js.map
@@ -150,4 +150,3 @@ var Checkbox = /** @class */ (function (_super) {
150
150
  return Checkbox;
151
151
  }(Input));
152
152
  export { Checkbox };
153
- //# sourceMappingURL=Input.js.map
@@ -31,4 +31,3 @@ var InputHelpers = /** @class */ (function () {
31
31
  return InputHelpers;
32
32
  }());
33
33
  export { InputHelpers };
34
- //# sourceMappingURL=InputHelpers.js.map
@@ -55,4 +55,3 @@ var Loader = /** @class */ (function (_super) {
55
55
  return Loader;
56
56
  }(ComponentBase));
57
57
  export default Loader;
58
- //# sourceMappingURL=Loader.js.map
@@ -121,4 +121,3 @@ var Modal = /** @class */ (function (_super) {
121
121
  return Modal;
122
122
  }(React.Component));
123
123
  export default Modal;
124
- //# sourceMappingURL=Modal.js.map
@@ -35,4 +35,3 @@ var ModalContainer = /** @class */ (function (_super) {
35
35
  return ModalContainer;
36
36
  }(React.Component));
37
37
  export default ModalContainer;
38
- //# sourceMappingURL=ModalContainer.js.map
@@ -25,4 +25,3 @@ var ModalPortal = /** @class */ (function (_super) {
25
25
  return ModalPortal;
26
26
  }(React.Component));
27
27
  export default ModalPortal;
28
- //# sourceMappingURL=ModalPortal.js.map
@@ -33,4 +33,3 @@ var Alert = /** @class */ (function (_super) {
33
33
  return Alert;
34
34
  }(CollapsableBase));
35
35
  export default Alert;
36
- //# sourceMappingURL=Alert.js.map
@@ -43,4 +43,3 @@ var Toast = /** @class */ (function (_super) {
43
43
  return Toast;
44
44
  }(CollapsableBase));
45
45
  export default Toast;
46
- //# sourceMappingURL=Toast.js.map
@@ -16,4 +16,3 @@ var ToastContainer = /** @class */ (function (_super) {
16
16
  return ToastContainer;
17
17
  }(React.Component));
18
18
  export default ToastContainer;
19
- //# sourceMappingURL=ToastContainer.js.map
@@ -2,6 +2,7 @@ import * as React from 'react';
2
2
  import { IBindableEditorProps } from './PropTypes';
3
3
  import { FormContext } from './FormContext';
4
4
  import { Misc } from '@singularsystems/neo-core';
5
+ import Decimal from 'decimal.js-light';
5
6
  import ComponentBase from './ComponentBase';
6
7
  export interface INumberInputSpecificProps {
7
8
  /** Format string of number */
@@ -25,7 +26,7 @@ export declare class FormatState {
25
26
  zeroText?: string | undefined;
26
27
  constructor(isPercent: boolean, hasExternalPercentSymbol: boolean, formatString: string, zeroText?: string | undefined);
27
28
  static create(numericType: Misc.DataType, numProps?: INumberInputSpecificProps, appendText?: string): FormatState;
28
- getFormattedValue(value?: number): string;
29
+ getFormattedValue(value?: number | Decimal | null): string;
29
30
  }
30
31
  export default class NumberInput extends ComponentBase<INumberInputProps> {
31
32
  static contextType: React.Context<import("./FormContext").FormContextParams>;
@@ -39,6 +40,7 @@ export default class NumberInput extends ComponentBase<INumberInputProps> {
39
40
  constructor(props: INumberInputProps);
40
41
  private onChanged;
41
42
  private onFocus;
43
+ private getBindValueAsNumber;
42
44
  private setFocusedText;
43
45
  private onBlur;
44
46
  private onKeyDown;