@singularsystems/neo-react 1.0.0-alpha.2 → 1.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. package/CHANGELOG.md +98 -0
  2. package/README.md +4 -0
  3. package/dist/Modules/NeoReactModule.d.ts +4 -4
  4. package/dist/Modules/NeoReactModule.js +28 -26
  5. package/dist/Modules/ReactSetup.d.ts +2 -2
  6. package/dist/Modules/ReactSetup.js +17 -17
  7. package/dist/Modules/Types.d.ts +63 -61
  8. package/dist/Modules/Types.js +13 -12
  9. package/dist/React/AutoRunner.d.ts +5 -5
  10. package/dist/React/AutoRunner.js +94 -92
  11. package/dist/React/DataView.d.ts +6 -6
  12. package/dist/React/DataView.js +11 -11
  13. package/dist/React/ReactModelCreator.d.ts +11 -11
  14. package/dist/React/ReactModelCreator.js +165 -162
  15. package/dist/ReactComponents/Button.d.ts +24 -23
  16. package/dist/ReactComponents/Button.js +131 -123
  17. package/dist/ReactComponents/Card.d.ts +24 -23
  18. package/dist/ReactComponents/Card.js +56 -54
  19. package/dist/ReactComponents/Collapsable.d.ts +23 -23
  20. package/dist/ReactComponents/Collapsable.js +38 -38
  21. package/dist/ReactComponents/CollapsableBase.d.ts +13 -13
  22. package/dist/ReactComponents/CollapsableBase.js +42 -42
  23. package/dist/ReactComponents/ColorPicker.d.ts +26 -26
  24. package/dist/ReactComponents/ColorPicker.js +67 -67
  25. package/dist/ReactComponents/ComponentBase.d.ts +17 -17
  26. package/dist/ReactComponents/ComponentBase.js +33 -33
  27. package/dist/ReactComponents/ContextMenu/ContextMenu.d.ts +25 -24
  28. package/dist/ReactComponents/ContextMenu/ContextMenu.js +91 -88
  29. package/dist/ReactComponents/ContextMenu/ContextMenuContainer.d.ts +14 -14
  30. package/dist/ReactComponents/ContextMenu/ContextMenuContainer.js +48 -48
  31. package/dist/ReactComponents/ContextMenu/ContextMenuState.d.ts +8 -7
  32. package/dist/ReactComponents/ContextMenu/ContextMenuState.js +23 -23
  33. package/dist/ReactComponents/DatePicker.d.ts +19 -19
  34. package/dist/ReactComponents/DatePicker.js +53 -53
  35. package/dist/ReactComponents/DropDown/AutoCompleteDropDown.d.ts +93 -83
  36. package/dist/ReactComponents/DropDown/AutoCompleteDropDown.js +222 -188
  37. package/dist/ReactComponents/DropDown/DropDown.d.ts +44 -44
  38. package/dist/ReactComponents/DropDown/DropDown.js +138 -134
  39. package/dist/ReactComponents/DropDown/DropDownBase.d.ts +16 -15
  40. package/dist/ReactComponents/DropDown/DropDownBase.js +86 -108
  41. package/dist/ReactComponents/DropDown/LookupHelper.d.ts +13 -0
  42. package/dist/ReactComponents/DropDown/LookupHelper.js +45 -0
  43. package/dist/ReactComponents/ErrorHandler.d.ts +9 -8
  44. package/dist/ReactComponents/ErrorHandler.js +92 -91
  45. package/dist/ReactComponents/FileManager/FileBasicInput.d.ts +20 -20
  46. package/dist/ReactComponents/FileManager/FileBasicInput.js +70 -70
  47. package/dist/ReactComponents/FileManager/FileContext.d.ts +16 -16
  48. package/dist/ReactComponents/FileManager/FileContext.js +24 -24
  49. package/dist/ReactComponents/FileManager/FileDropArea.d.ts +19 -18
  50. package/dist/ReactComponents/FileManager/FileDropArea.js +66 -64
  51. package/dist/ReactComponents/FileManager/FileInput.d.ts +44 -42
  52. package/dist/ReactComponents/FileManager/FileInput.js +191 -189
  53. package/dist/ReactComponents/FileManager/FileUploadButton.d.ts +17 -17
  54. package/dist/ReactComponents/FileManager/FileUploadButton.js +49 -49
  55. package/dist/ReactComponents/FileManager/FileUploadProgress.d.ts +14 -14
  56. package/dist/ReactComponents/FileManager/FileUploadProgress.js +35 -35
  57. package/dist/ReactComponents/Form.d.ts +19 -18
  58. package/dist/ReactComponents/Form.js +90 -90
  59. package/dist/ReactComponents/FormContext.d.ts +33 -31
  60. package/dist/ReactComponents/FormContext.js +39 -40
  61. package/dist/ReactComponents/FormGroup/FormGroup.d.ts +37 -37
  62. package/dist/ReactComponents/FormGroup/FormGroup.js +83 -84
  63. package/dist/ReactComponents/FormGroup/FormGroupFloating.d.ts +19 -19
  64. package/dist/ReactComponents/FormGroup/FormGroupFloating.js +97 -97
  65. package/dist/ReactComponents/FormGroup/FormGroupInline.d.ts +11 -11
  66. package/dist/ReactComponents/FormGroup/FormGroupInline.js +43 -43
  67. package/dist/ReactComponents/Grid/ButtonColumn.d.ts +47 -47
  68. package/dist/ReactComponents/Grid/ButtonColumn.js +81 -82
  69. package/dist/ReactComponents/Grid/Column.d.ts +47 -47
  70. package/dist/ReactComponents/Grid/Column.js +205 -205
  71. package/dist/ReactComponents/Grid/ColumnHelper.d.ts +12 -12
  72. package/dist/ReactComponents/Grid/ColumnHelper.js +19 -19
  73. package/dist/ReactComponents/Grid/Grid.d.ts +87 -90
  74. package/dist/ReactComponents/Grid/Grid.js +203 -203
  75. package/dist/ReactComponents/Grid/Row.d.ts +81 -81
  76. package/dist/ReactComponents/Grid/Row.js +200 -201
  77. package/dist/ReactComponents/Grid/_Exports.d.ts +5 -5
  78. package/dist/ReactComponents/Grid/_Exports.js +5 -5
  79. package/dist/ReactComponents/GridLayout.d.ts +20 -20
  80. package/dist/ReactComponents/GridLayout.js +38 -38
  81. package/dist/ReactComponents/Icons/FontAwesomeIconFactory.d.ts +23 -0
  82. package/dist/ReactComponents/Icons/FontAwesomeIconFactory.js +43 -0
  83. package/dist/ReactComponents/Icons/IIconFactory.d.ts +21 -0
  84. package/dist/ReactComponents/Icons/IIconFactory.js +1 -0
  85. package/dist/ReactComponents/Icons/IconFactory.d.ts +9 -0
  86. package/dist/ReactComponents/Icons/IconFactory.js +45 -0
  87. package/dist/ReactComponents/Icons/index.d.ts +3 -0
  88. package/dist/ReactComponents/Icons/index.js +2 -0
  89. package/dist/ReactComponents/Input.d.ts +45 -45
  90. package/dist/ReactComponents/Input.js +153 -152
  91. package/dist/ReactComponents/InputHelpers.d.ts +6 -5
  92. package/dist/ReactComponents/InputHelpers.js +29 -33
  93. package/dist/ReactComponents/Link.d.ts +13 -13
  94. package/dist/ReactComponents/Link.js +28 -28
  95. package/dist/ReactComponents/Loader.d.ts +18 -18
  96. package/dist/ReactComponents/Loader.js +57 -57
  97. package/dist/ReactComponents/Misc.d.ts +15 -15
  98. package/dist/ReactComponents/Misc.js +28 -28
  99. package/dist/ReactComponents/Modal/Modal.d.ts +11 -11
  100. package/dist/ReactComponents/Modal/Modal.js +129 -129
  101. package/dist/ReactComponents/Modal/ModalContainer.d.ts +17 -17
  102. package/dist/ReactComponents/Modal/ModalContainer.js +37 -37
  103. package/dist/ReactComponents/Modal/ModalPortal.d.ts +16 -15
  104. package/dist/ReactComponents/Modal/ModalPortal.js +27 -27
  105. package/dist/ReactComponents/Notifications/Alert.d.ts +7 -6
  106. package/dist/ReactComponents/Notifications/Alert.js +38 -35
  107. package/dist/ReactComponents/Notifications/Toast.d.ts +9 -8
  108. package/dist/ReactComponents/Notifications/Toast.js +47 -45
  109. package/dist/ReactComponents/Notifications/ToastContainer.d.ts +8 -8
  110. package/dist/ReactComponents/Notifications/ToastContainer.js +18 -18
  111. package/dist/ReactComponents/NumberInput.d.ts +57 -50
  112. package/dist/ReactComponents/NumberInput.js +260 -246
  113. package/dist/ReactComponents/Paging/BasicPagerControls.d.ts +26 -25
  114. package/dist/ReactComponents/Paging/BasicPagerControls.js +57 -55
  115. package/dist/ReactComponents/Paging/PageSizeControl.d.ts +11 -11
  116. package/dist/ReactComponents/Paging/PageSizeControl.js +21 -21
  117. package/dist/ReactComponents/Paging/Pager.d.ts +24 -24
  118. package/dist/ReactComponents/Paging/Pager.js +41 -41
  119. package/dist/ReactComponents/ProgressBar.d.ts +19 -19
  120. package/dist/ReactComponents/ProgressBar.js +52 -52
  121. package/dist/ReactComponents/PropTypes.d.ts +161 -161
  122. package/dist/ReactComponents/PropTypes.js +253 -236
  123. package/dist/ReactComponents/RadioList.d.ts +29 -29
  124. package/dist/ReactComponents/RadioList.js +59 -77
  125. package/dist/ReactComponents/Slider.d.ts +28 -28
  126. package/dist/ReactComponents/Slider.js +76 -76
  127. package/dist/ReactComponents/StateObserver.d.ts +15 -15
  128. package/dist/ReactComponents/StateObserver.js +35 -35
  129. package/dist/ReactComponents/Tabs/Tab.d.ts +42 -41
  130. package/dist/ReactComponents/Tabs/Tab.js +71 -72
  131. package/dist/ReactComponents/Tabs/TabContainer.d.ts +44 -44
  132. package/dist/ReactComponents/Tabs/TabContainer.js +98 -98
  133. package/dist/ReactComponents/Tabs/TabManager.d.ts +62 -62
  134. package/dist/ReactComponents/Tabs/TabManager.js +154 -154
  135. package/dist/ReactComponents/Tooltip.d.ts +20 -19
  136. package/dist/ReactComponents/Tooltip.js +51 -51
  137. package/dist/ReactComponents/TooltipHelper.d.ts +8 -8
  138. package/dist/ReactComponents/TooltipHelper.js +84 -84
  139. package/dist/ReactComponents/TooltipProvider.d.ts +30 -30
  140. package/dist/ReactComponents/TooltipProvider.js +111 -111
  141. package/dist/ReactComponents/ValidationSummary.d.ts +23 -22
  142. package/dist/ReactComponents/ValidationSummary.js +46 -43
  143. package/dist/ReactComponents/_Exports.d.ts +41 -41
  144. package/dist/ReactComponents/_Exports.js +41 -41
  145. package/dist/ReactComponents/_Managers.d.ts +4 -4
  146. package/dist/ReactComponents/_Managers.js +4 -4
  147. package/dist/Routing/BreadCrumbItem.d.ts +14 -14
  148. package/dist/Routing/BreadCrumbItem.js +12 -12
  149. package/dist/Routing/IRouteChangedProps.d.ts +31 -31
  150. package/dist/Routing/IRouteChangedProps.js +1 -1
  151. package/dist/Routing/IRouteParameter.d.ts +22 -22
  152. package/dist/Routing/IRouteParameter.js +9 -9
  153. package/dist/Routing/MenuRoute.d.ts +25 -24
  154. package/dist/Routing/MenuRoute.js +24 -24
  155. package/dist/Routing/NavigationHelper.d.ts +41 -40
  156. package/dist/Routing/NavigationHelper.js +61 -61
  157. package/dist/Routing/PageLeaveHandler.d.ts +13 -13
  158. package/dist/Routing/PageLeaveHandler.js +74 -74
  159. package/dist/Routing/RouteProvider.d.ts +31 -31
  160. package/dist/Routing/RouteProvider.js +92 -92
  161. package/dist/Routing/RouteView.d.ts +50 -50
  162. package/dist/Routing/RouteView.js +143 -144
  163. package/dist/Routing/RoutingState.d.ts +18 -15
  164. package/dist/Routing/RoutingState.js +45 -40
  165. package/dist/Routing/ViewParameter.d.ts +80 -58
  166. package/dist/Routing/ViewParameter.js +116 -95
  167. package/dist/Routing/ViewParameterList.d.ts +53 -53
  168. package/dist/Routing/ViewParameterList.js +163 -145
  169. package/dist/Routing/index.d.ts +9 -9
  170. package/dist/Routing/index.js +6 -6
  171. package/dist/Services/DisposeHelper.d.ts +15 -15
  172. package/dist/Services/DisposeHelper.js +40 -41
  173. package/dist/Services/IDisposeHelper.d.ts +12 -12
  174. package/dist/Services/IDisposeHelper.js +1 -1
  175. package/dist/Views/EmptyViewModel.d.ts +5 -5
  176. package/dist/Views/EmptyViewModel.js +14 -14
  177. package/dist/Views/IViewModel.d.ts +16 -16
  178. package/dist/Views/IViewModel.js +1 -1
  179. package/dist/Views/PersistentViewBase.d.ts +10 -10
  180. package/dist/Views/PersistentViewBase.js +21 -21
  181. package/dist/Views/ViewBase.d.ts +70 -71
  182. package/dist/Views/ViewBase.js +166 -153
  183. package/dist/Views/ViewComponentBase.d.ts +19 -13
  184. package/dist/Views/ViewComponentBase.js +24 -21
  185. package/dist/Views/ViewModelBase.d.ts +57 -56
  186. package/dist/Views/ViewModelBase.js +122 -118
  187. package/dist/Views/ViewState.d.ts +13 -13
  188. package/dist/Views/ViewState.js +9 -9
  189. package/dist/Views/index.d.ts +5 -5
  190. package/dist/Views/index.js +5 -5
  191. package/dist/index.d.ts +11 -10
  192. package/dist/index.js +10 -9
  193. package/package.json +26 -26
  194. package/styles/DatePicker.scss +2 -2
  195. package/styles/Forms.scss +5 -0
  196. package/styles/Validation.scss +0 -9
@@ -1,91 +1,92 @@
1
- import { __decorate, __extends, __metadata } from "tslib";
2
- import React from 'react';
3
- import { Components, ModalUtils } from '@singularsystems/neo-core';
4
- import { Observer } from 'mobx-react';
5
- import { observable } from 'mobx';
6
- var ErrorGroup = /** @class */ (function () {
7
- function ErrorGroup(errorDisplay) {
8
- this.errorDisplay = errorDisplay;
9
- this.count = 1;
10
- }
11
- __decorate([
12
- observable,
13
- __metadata("design:type", Object)
14
- ], ErrorGroup.prototype, "count", void 0);
15
- return ErrorGroup;
16
- }());
17
- var ErrorHandler = /** @class */ (function (_super) {
18
- __extends(ErrorHandler, _super);
19
- function ErrorHandler() {
20
- var _this = _super !== null && _super.apply(this, arguments) || this;
21
- _this.errorList = [];
22
- _this.hidingErrorList = null;
23
- return _this;
24
- }
25
- ErrorHandler.prototype.displayError = function (displayType, error, errorDisplay) {
26
- if (errorDisplay.data) {
27
- errorDisplay.body = React.createElement(React.Fragment, null,
28
- errorDisplay.body,
29
- React.createElement("ul", null,
30
- errorDisplay.data.errors.map(function (err) { return (React.createElement("li", null, err)); }),
31
- errorDisplay.data.properties.map(function (property) { return (React.createElement("li", null,
32
- React.createElement("span", { "data-tip": "On field: " + property.key }, property.errors))); })));
33
- }
34
- _super.prototype.displayError.call(this, displayType, error, errorDisplay);
35
- };
36
- ErrorHandler.prototype.displayModal = function (error, errorDisplay) {
37
- var _this = this;
38
- if (errorDisplay.statusCode) {
39
- var existing = this.errorList.find(function (c) { return c.errorDisplay.statusCode === errorDisplay.statusCode; });
40
- if (existing) {
41
- existing.count += 1;
42
- return;
43
- }
44
- }
45
- var errorGroup = new ErrorGroup(errorDisplay);
46
- if (this.errorList.length === 0) {
47
- this.hidingErrorList = null;
48
- var modalOptions = errorDisplay.isServerError ? {
49
- footerContent: React.createElement("div", { className: "neo-error-modal-info" },
50
- "Timestamp: ",
51
- new Date().toISOString())
52
- } : {};
53
- modalOptions.onClose = function () {
54
- _this.hidingErrorList = _this.errorList;
55
- _this.errorList = [];
56
- };
57
- ModalUtils.showModal(errorDisplay.header, React.createElement(Observer, null, function () {
58
- var _a;
59
- return React.createElement(React.Fragment, null, ((_a = _this.hidingErrorList) !== null && _a !== void 0 ? _a : _this.errorList).map(function (errorGroup, index) { return (React.createElement("div", { key: index, className: "neo-error-modal-body" },
60
- React.createElement("div", { className: "neo-error-modal-body-icon" }, errorGroup.count === 1 ?
61
- React.createElement("i", { className: _this.getIcon(errorGroup.errorDisplay) }) :
62
- React.createElement("span", { className: "badge badge-danger" }, errorGroup.count)),
63
- React.createElement("div", null, errorGroup.errorDisplay.body))); }));
64
- }), modalOptions);
65
- }
66
- if (this.errorList.length < 5) {
67
- this.errorList.push(errorGroup);
68
- }
69
- };
70
- ErrorHandler.prototype.getIcon = function (errorDisplay) {
71
- if (errorDisplay.statusCode) {
72
- if (errorDisplay.statusCode === 401) {
73
- return "fa fa-lock";
74
- }
75
- if (errorDisplay.statusCode === 403) {
76
- return "fa fa-user-lock";
77
- }
78
- }
79
- return "fa fa-exclamation-triangle";
80
- };
81
- __decorate([
82
- observable.shallow,
83
- __metadata("design:type", Array)
84
- ], ErrorHandler.prototype, "errorList", void 0);
85
- __decorate([
86
- observable.ref,
87
- __metadata("design:type", Object)
88
- ], ErrorHandler.prototype, "hidingErrorList", void 0);
89
- return ErrorHandler;
90
- }(Components.ErrorHandler));
91
- export { ErrorHandler };
1
+ import { __decorate, __extends, __metadata } from "tslib";
2
+ import React from 'react';
3
+ import { Components, ModalUtils } from '@singularsystems/neo-core';
4
+ import { Observer } from 'mobx-react';
5
+ import { makeObservable, observable } from 'mobx';
6
+ var ErrorGroup = /** @class */ (function () {
7
+ function ErrorGroup(errorDisplay) {
8
+ this.errorDisplay = errorDisplay;
9
+ this.count = 1;
10
+ makeObservable(this);
11
+ }
12
+ __decorate([
13
+ observable,
14
+ __metadata("design:type", Object)
15
+ ], ErrorGroup.prototype, "count", void 0);
16
+ return ErrorGroup;
17
+ }());
18
+ export var ErrorHandler = /** @class */ (function (_super) {
19
+ __extends(ErrorHandler, _super);
20
+ function ErrorHandler(notifications) {
21
+ var _this = _super.call(this, notifications) || this;
22
+ _this.errorList = [];
23
+ _this.hidingErrorList = null;
24
+ makeObservable(_this);
25
+ return _this;
26
+ }
27
+ ErrorHandler.prototype.displayError = function (displayType, error, errorDisplay) {
28
+ if (errorDisplay.data) {
29
+ errorDisplay.body = React.createElement(React.Fragment, null,
30
+ errorDisplay.body,
31
+ React.createElement("ul", null,
32
+ errorDisplay.data.errors.map(function (err) { return (React.createElement("li", null, err)); }),
33
+ errorDisplay.data.properties.map(function (property) { return (React.createElement("li", null,
34
+ React.createElement("span", { "data-tip": "On field: " + property.key }, property.errors))); })));
35
+ }
36
+ _super.prototype.displayError.call(this, displayType, error, errorDisplay);
37
+ };
38
+ ErrorHandler.prototype.displayModal = function (error, errorDisplay) {
39
+ var _this = this;
40
+ if (errorDisplay.statusCode) {
41
+ var existing = this.errorList.find(function (c) { return c.errorDisplay.statusCode === errorDisplay.statusCode; });
42
+ if (existing) {
43
+ existing.count += 1;
44
+ return;
45
+ }
46
+ }
47
+ var errorGroup = new ErrorGroup(errorDisplay);
48
+ if (this.errorList.length === 0) {
49
+ this.hidingErrorList = null;
50
+ var modalOptions = errorDisplay.isServerError ? {
51
+ footerContent: React.createElement("div", { className: "neo-error-modal-info" },
52
+ "Timestamp: ",
53
+ new Date().toISOString())
54
+ } : {};
55
+ modalOptions.onClose = function () {
56
+ _this.hidingErrorList = _this.errorList;
57
+ _this.errorList = [];
58
+ };
59
+ ModalUtils.showModal(errorDisplay.header, React.createElement(Observer, null, function () {
60
+ var _a;
61
+ return React.createElement(React.Fragment, null, ((_a = _this.hidingErrorList) !== null && _a !== void 0 ? _a : _this.errorList).map(function (errorGroup, index) { return (React.createElement("div", { key: index, className: "neo-error-modal-body" },
62
+ React.createElement("div", { className: "neo-error-modal-body-icon" }, errorGroup.count === 1 ?
63
+ React.createElement("i", { className: _this.getIcon(errorGroup.errorDisplay) }) :
64
+ React.createElement("span", { className: "badge badge-danger" }, errorGroup.count)),
65
+ React.createElement("div", null, errorGroup.errorDisplay.body))); }));
66
+ }), modalOptions);
67
+ }
68
+ if (this.errorList.length < 5) {
69
+ this.errorList.push(errorGroup);
70
+ }
71
+ };
72
+ ErrorHandler.prototype.getIcon = function (errorDisplay) {
73
+ if (errorDisplay.statusCode) {
74
+ if (errorDisplay.statusCode === 401) {
75
+ return "fa fa-lock";
76
+ }
77
+ if (errorDisplay.statusCode === 403) {
78
+ return "fa fa-user-lock";
79
+ }
80
+ }
81
+ return "fa fa-exclamation-triangle";
82
+ };
83
+ __decorate([
84
+ observable.shallow,
85
+ __metadata("design:type", Array)
86
+ ], ErrorHandler.prototype, "errorList", void 0);
87
+ __decorate([
88
+ observable.ref,
89
+ __metadata("design:type", Object)
90
+ ], ErrorHandler.prototype, "hidingErrorList", void 0);
91
+ return ErrorHandler;
92
+ }(Components.ErrorHandler));
@@ -1,20 +1,20 @@
1
- import React from 'react';
2
- import { Components } from "@singularsystems/neo-core";
3
- import { FileContext } from './FileContext';
4
- interface IFileInputProps extends React.HTMLProps<HTMLInputElement> {
5
- fileManager?: Components.IFileManager;
6
- isHidden?: boolean;
7
- inputRef?: React.RefObject<HTMLInputElement>;
8
- }
9
- /**
10
- * Renders an input[type=file] input bound to a file manager.
11
- */
12
- export default class FileBasicInput extends React.Component<IFileInputProps> {
13
- static contextType: React.Context<import("./FileContext").IFileContextProps>;
14
- context: React.ContextType<typeof FileContext>;
15
- private fileManager;
16
- constructor(props: IFileInputProps);
17
- private onFileSelected;
18
- render(): JSX.Element;
19
- }
20
- export {};
1
+ import React from 'react';
2
+ import { Components } from "@singularsystems/neo-core";
3
+ import { FileContext } from './FileContext';
4
+ interface IFileInputProps extends React.HTMLProps<HTMLInputElement> {
5
+ fileManager?: Components.IFileManager;
6
+ isHidden?: boolean;
7
+ inputRef?: React.RefObject<HTMLInputElement>;
8
+ }
9
+ /**
10
+ * Renders an input[type=file] input bound to a file manager.
11
+ */
12
+ export default class FileBasicInput extends React.Component<IFileInputProps> {
13
+ static contextType: React.Context<import("./FileContext").IFileContextProps>;
14
+ context: React.ContextType<typeof FileContext>;
15
+ private fileManager;
16
+ constructor(props: IFileInputProps);
17
+ private onFileSelected;
18
+ render(): JSX.Element;
19
+ }
20
+ export {};
@@ -1,70 +1,70 @@
1
- import { __assign, __awaiter, __decorate, __extends, __generator, __metadata, __rest } from "tslib";
2
- import React from 'react';
3
- import { observer } from 'mobx-react';
4
- import { FileContext } from './FileContext';
5
- import { BindPropsHelper } from '../PropTypes';
6
- /**
7
- * Renders an input[type=file] input bound to a file manager.
8
- */
9
- var FileBasicInput = /** @class */ (function (_super) {
10
- __extends(FileBasicInput, _super);
11
- function FileBasicInput(props) {
12
- var _this = _super.call(this, props) || this;
13
- _this.onFileSelected = _this.onFileSelected.bind(_this);
14
- return _this;
15
- }
16
- FileBasicInput.prototype.onFileSelected = function (e) {
17
- var _a, _b;
18
- return __awaiter(this, void 0, void 0, function () {
19
- var input;
20
- return __generator(this, function (_c) {
21
- switch (_c.label) {
22
- case 0:
23
- if (!e.target.files) return [3 /*break*/, 4];
24
- _c.label = 1;
25
- case 1:
26
- _c.trys.push([1, , 3, 4]);
27
- return [4 /*yield*/, this.fileManager.processFiles(e.target.files, { handleErrors: !this.fileManager.options.taskRunner })];
28
- case 2:
29
- _c.sent();
30
- return [3 /*break*/, 4];
31
- case 3:
32
- input = (_a = e.target) !== null && _a !== void 0 ? _a : (_b = this.props.inputRef) === null || _b === void 0 ? void 0 : _b.current;
33
- if (input) {
34
- input.value = "";
35
- }
36
- return [7 /*endfinally*/];
37
- case 4: return [2 /*return*/];
38
- }
39
- });
40
- });
41
- };
42
- FileBasicInput.prototype.render = function () {
43
- var _a = this.props, fileManager = _a.fileManager, isHidden = _a.isHidden, inputRef = _a.inputRef, native = __rest(_a, ["fileManager", "isHidden", "inputRef"]);
44
- if (this.context.fileManager) {
45
- this.fileManager = this.context.fileManager;
46
- }
47
- else {
48
- if (!fileManager) {
49
- throw Error("Basic file input must be in a FileContext, or have fileManager specified.");
50
- }
51
- this.fileManager = fileManager;
52
- }
53
- if (!native.name) {
54
- native.name = this.fileManager.options.name;
55
- }
56
- var bindProperty = this.fileManager.options.bind;
57
- if (bindProperty) {
58
- native[BindPropsHelper.DataFieldName] = bindProperty.propertyInfo.propertyName;
59
- }
60
- var fileManagerProps = this.fileManager.getFileInputProps();
61
- return React.createElement("input", __assign({}, fileManagerProps, { ref: inputRef, type: "file", style: { display: isHidden ? "none" : "unset" }, onChange: this.onFileSelected }, native));
62
- };
63
- FileBasicInput.contextType = FileContext;
64
- FileBasicInput = __decorate([
65
- observer,
66
- __metadata("design:paramtypes", [Object])
67
- ], FileBasicInput);
68
- return FileBasicInput;
69
- }(React.Component));
70
- export default FileBasicInput;
1
+ import { __assign, __awaiter, __decorate, __extends, __generator, __metadata, __rest } from "tslib";
2
+ import React from 'react';
3
+ import { observer } from 'mobx-react';
4
+ import { FileContext } from './FileContext';
5
+ import { BindPropsHelper } from '../PropTypes';
6
+ /**
7
+ * Renders an input[type=file] input bound to a file manager.
8
+ */
9
+ var FileBasicInput = /** @class */ (function (_super) {
10
+ __extends(FileBasicInput, _super);
11
+ function FileBasicInput(props) {
12
+ var _this = _super.call(this, props) || this;
13
+ _this.onFileSelected = _this.onFileSelected.bind(_this);
14
+ return _this;
15
+ }
16
+ FileBasicInput.prototype.onFileSelected = function (e) {
17
+ var _a, _b;
18
+ return __awaiter(this, void 0, void 0, function () {
19
+ var input;
20
+ return __generator(this, function (_c) {
21
+ switch (_c.label) {
22
+ case 0:
23
+ if (!e.target.files) return [3 /*break*/, 4];
24
+ _c.label = 1;
25
+ case 1:
26
+ _c.trys.push([1, , 3, 4]);
27
+ return [4 /*yield*/, this.fileManager.processFiles(e.target.files, { handleErrors: !this.fileManager.options.taskRunner })];
28
+ case 2:
29
+ _c.sent();
30
+ return [3 /*break*/, 4];
31
+ case 3:
32
+ input = (_a = e.target) !== null && _a !== void 0 ? _a : (_b = this.props.inputRef) === null || _b === void 0 ? void 0 : _b.current;
33
+ if (input) {
34
+ input.value = "";
35
+ }
36
+ return [7 /*endfinally*/];
37
+ case 4: return [2 /*return*/];
38
+ }
39
+ });
40
+ });
41
+ };
42
+ FileBasicInput.prototype.render = function () {
43
+ var _a = this.props, fileManager = _a.fileManager, isHidden = _a.isHidden, inputRef = _a.inputRef, native = __rest(_a, ["fileManager", "isHidden", "inputRef"]);
44
+ if (this.context.fileManager) {
45
+ this.fileManager = this.context.fileManager;
46
+ }
47
+ else {
48
+ if (!fileManager) {
49
+ throw Error("Basic file input must be in a FileContext, or have fileManager specified.");
50
+ }
51
+ this.fileManager = fileManager;
52
+ }
53
+ if (!native.name) {
54
+ native.name = this.fileManager.options.name;
55
+ }
56
+ var bindProperty = this.fileManager.options.bind;
57
+ if (bindProperty) {
58
+ native[BindPropsHelper.DataFieldName] = bindProperty.propertyInfo.propertyName;
59
+ }
60
+ var fileManagerProps = this.fileManager.getFileInputProps();
61
+ return React.createElement("input", __assign({}, fileManagerProps, { ref: inputRef, type: "file", style: { display: isHidden ? "none" : "unset" }, onChange: this.onFileSelected }, native));
62
+ };
63
+ FileBasicInput.contextType = FileContext;
64
+ FileBasicInput = __decorate([
65
+ observer,
66
+ __metadata("design:paramtypes", [Object])
67
+ ], FileBasicInput);
68
+ return FileBasicInput;
69
+ }(React.Component));
70
+ export default FileBasicInput;
@@ -1,16 +1,16 @@
1
- import React from 'react';
2
- import { Components } from '@singularsystems/neo-core';
3
- export interface IFileComponentProps extends Partial<Components.IBoundFileManagerOptions> {
4
- /** File manager instance. Props that can be specified in file manager options will be ignored on this component. */
5
- fileManager?: Components.IFileManager;
6
- /** Upload endpoint. This is required when not using a file manager. */
7
- uploadEndpoint?: string;
8
- children?: React.ReactNode;
9
- }
10
- export interface IFileContextProps {
11
- fileManager?: Components.IFileManager;
12
- }
13
- export declare const FileContext: React.Context<IFileContextProps>;
14
- export default class FileContextProvider extends React.Component<IFileComponentProps> {
15
- render(): JSX.Element;
16
- }
1
+ import React from 'react';
2
+ import { Components } from '@singularsystems/neo-core';
3
+ export interface IFileComponentProps {
4
+ /** File manager instance. Props that can be specified in file manager options will be ignored on this component. */
5
+ fileManager?: Components.IFileManager;
6
+ /** Upload endpoint. This is required when not using a file manager. */
7
+ uploadEndpoint?: string;
8
+ children?: React.ReactNode;
9
+ }
10
+ export interface IFileContextProps {
11
+ fileManager?: Components.IFileManager;
12
+ }
13
+ export declare const FileContext: React.Context<IFileContextProps>;
14
+ export default class FileContextProvider extends React.Component<IFileComponentProps & (Partial<Components.IFileManagerOptions> | Partial<Components.IBoundFileManagerOptions>)> {
15
+ render(): JSX.Element;
16
+ }
@@ -1,24 +1,24 @@
1
- import { __extends } from "tslib";
2
- import React from 'react';
3
- import { Components } from '@singularsystems/neo-core';
4
- export var FileContext = React.createContext({});
5
- var FileContextProvider = /** @class */ (function (_super) {
6
- __extends(FileContextProvider, _super);
7
- function FileContextProvider() {
8
- return _super !== null && _super.apply(this, arguments) || this;
9
- }
10
- FileContextProvider.prototype.render = function () {
11
- var fileManager = this.props.fileManager;
12
- if (!fileManager) {
13
- if (this.props.bind) {
14
- fileManager = new Components.BoundFileManager(this.props.uploadEndpoint, this.props);
15
- }
16
- else {
17
- fileManager = new Components.FileManager(this.props.uploadEndpoint, this.props);
18
- }
19
- }
20
- return (React.createElement(FileContext.Provider, { value: { fileManager: fileManager } }, this.props.children));
21
- };
22
- return FileContextProvider;
23
- }(React.Component));
24
- export default FileContextProvider;
1
+ import { __extends } from "tslib";
2
+ import React from 'react';
3
+ import { Components } from '@singularsystems/neo-core';
4
+ export var FileContext = React.createContext({});
5
+ var FileContextProvider = /** @class */ (function (_super) {
6
+ __extends(FileContextProvider, _super);
7
+ function FileContextProvider() {
8
+ return _super !== null && _super.apply(this, arguments) || this;
9
+ }
10
+ FileContextProvider.prototype.render = function () {
11
+ var fileManager = this.props.fileManager;
12
+ if (!fileManager) {
13
+ if (this.props.bind) {
14
+ fileManager = new Components.BoundFileManager(this.props.uploadEndpoint, this.props);
15
+ }
16
+ else {
17
+ fileManager = new Components.FileManager(this.props.uploadEndpoint, this.props);
18
+ }
19
+ }
20
+ return (React.createElement(FileContext.Provider, { value: { fileManager: fileManager } }, this.props.children));
21
+ };
22
+ return FileContextProvider;
23
+ }(React.Component));
24
+ export default FileContextProvider;
@@ -1,18 +1,19 @@
1
- import React from 'react';
2
- import { Components } from '@singularsystems/neo-core';
3
- import { FileContext } from './FileContext';
4
- interface IFileDropAreaProps extends React.HTMLProps<HTMLDivElement> {
5
- fileManager?: Components.IFileManager;
6
- }
7
- export default class FileDropArea extends React.Component<IFileDropAreaProps> {
8
- static contextType: React.Context<import("./FileContext").IFileContextProps>;
9
- context: React.ContextType<typeof FileContext>;
10
- private fileManager;
11
- private isDragging;
12
- private dropDiv;
13
- private dragEnter;
14
- private dragLeave;
15
- private drop;
16
- render(): JSX.Element;
17
- }
18
- export {};
1
+ import React from 'react';
2
+ import { Components } from '@singularsystems/neo-core';
3
+ import { FileContext } from './FileContext';
4
+ interface IFileDropAreaProps extends React.HTMLProps<HTMLDivElement> {
5
+ fileManager?: Components.IFileManager;
6
+ }
7
+ export default class FileDropArea extends React.Component<IFileDropAreaProps> {
8
+ static contextType: React.Context<import("./FileContext").IFileContextProps>;
9
+ context: React.ContextType<typeof FileContext>;
10
+ private fileManager;
11
+ private isDragging;
12
+ private dropDiv;
13
+ constructor(props: IFileDropAreaProps);
14
+ private dragEnter;
15
+ private dragLeave;
16
+ private drop;
17
+ render(): JSX.Element;
18
+ }
19
+ export {};
@@ -1,64 +1,66 @@
1
- import { __assign, __decorate, __extends, __metadata, __rest } from "tslib";
2
- import React from 'react';
3
- import { Utils } from '@singularsystems/neo-core';
4
- import { observable } from 'mobx';
5
- import { observer } from 'mobx-react';
6
- import { FileContext } from './FileContext';
7
- var FileDropArea = /** @class */ (function (_super) {
8
- __extends(FileDropArea, _super);
9
- function FileDropArea() {
10
- var _this = _super !== null && _super.apply(this, arguments) || this;
11
- _this.isDragging = false;
12
- _this.dropDiv = React.createRef();
13
- return _this;
14
- }
15
- FileDropArea.prototype.dragEnter = function (e) {
16
- e.preventDefault();
17
- this.isDragging = true;
18
- };
19
- FileDropArea.prototype.dragLeave = function (e) {
20
- if (e.target === this.dropDiv.current && (!e.relatedTarget || !e.target.contains(e.relatedTarget))) {
21
- e.preventDefault();
22
- this.isDragging = false;
23
- }
24
- };
25
- FileDropArea.prototype.drop = function (e) {
26
- this.isDragging = false;
27
- e.preventDefault();
28
- if (!this.fileManager.isUploading) {
29
- var files = void 0;
30
- if (e.dataTransfer.items) {
31
- files = Array.from(e.dataTransfer.items).filter(function (item) { return item.kind === "file"; }).map(function (file) { return file.getAsFile(); });
32
- }
33
- else {
34
- files = e.dataTransfer.files;
35
- }
36
- this.fileManager.processFiles(files, { handleErrors: true });
37
- }
38
- };
39
- FileDropArea.prototype.render = function () {
40
- var _this = this;
41
- var _a = this.props, fileManager = _a.fileManager, nativeProps = __rest(_a, ["fileManager"]);
42
- if (this.context.fileManager) {
43
- this.fileManager = this.context.fileManager;
44
- }
45
- else {
46
- if (!fileManager) {
47
- throw Error("File drop area must be in a FileContext, or have fileManager specified.");
48
- }
49
- this.fileManager = fileManager;
50
- }
51
- nativeProps.className = Utils.joinWithSpaces(nativeProps.className, "neo-file-drop", this.isDragging ? "dragging" : "");
52
- return (React.createElement("div", __assign({}, nativeProps, { ref: this.dropDiv, onDrop: function (e) { return _this.drop(e); }, onDragEnter: function (e) { return _this.dragEnter(e); }, onDragLeave: function (e) { return _this.dragLeave(e); }, onDragOver: function (e) { return e.preventDefault(); } })));
53
- };
54
- FileDropArea.contextType = FileContext;
55
- __decorate([
56
- observable.ref,
57
- __metadata("design:type", Object)
58
- ], FileDropArea.prototype, "isDragging", void 0);
59
- FileDropArea = __decorate([
60
- observer
61
- ], FileDropArea);
62
- return FileDropArea;
63
- }(React.Component));
64
- export default FileDropArea;
1
+ import { __assign, __decorate, __extends, __metadata, __rest } from "tslib";
2
+ import React from 'react';
3
+ import { Utils } from '@singularsystems/neo-core';
4
+ import { makeObservable, observable } from 'mobx';
5
+ import { observer } from 'mobx-react';
6
+ import { FileContext } from './FileContext';
7
+ var FileDropArea = /** @class */ (function (_super) {
8
+ __extends(FileDropArea, _super);
9
+ function FileDropArea(props) {
10
+ var _this = _super.call(this, props) || this;
11
+ _this.isDragging = false;
12
+ _this.dropDiv = React.createRef();
13
+ makeObservable(_this);
14
+ return _this;
15
+ }
16
+ FileDropArea.prototype.dragEnter = function (e) {
17
+ e.preventDefault();
18
+ this.isDragging = true;
19
+ };
20
+ FileDropArea.prototype.dragLeave = function (e) {
21
+ if (e.target === this.dropDiv.current && (!e.relatedTarget || !e.target.contains(e.relatedTarget))) {
22
+ e.preventDefault();
23
+ this.isDragging = false;
24
+ }
25
+ };
26
+ FileDropArea.prototype.drop = function (e) {
27
+ this.isDragging = false;
28
+ e.preventDefault();
29
+ if (!this.fileManager.isUploading) {
30
+ var files = void 0;
31
+ if (e.dataTransfer.items) {
32
+ files = Array.from(e.dataTransfer.items).filter(function (item) { return item.kind === "file"; }).map(function (file) { return file.getAsFile(); });
33
+ }
34
+ else {
35
+ files = e.dataTransfer.files;
36
+ }
37
+ this.fileManager.processFiles(files, { handleErrors: true });
38
+ }
39
+ };
40
+ FileDropArea.prototype.render = function () {
41
+ var _this = this;
42
+ var _a = this.props, fileManager = _a.fileManager, nativeProps = __rest(_a, ["fileManager"]);
43
+ if (this.context.fileManager) {
44
+ this.fileManager = this.context.fileManager;
45
+ }
46
+ else {
47
+ if (!fileManager) {
48
+ throw Error("File drop area must be in a FileContext, or have fileManager specified.");
49
+ }
50
+ this.fileManager = fileManager;
51
+ }
52
+ nativeProps.className = Utils.joinWithSpaces(nativeProps.className, "neo-file-drop", this.isDragging ? "dragging" : "");
53
+ return (React.createElement("div", __assign({}, nativeProps, { ref: this.dropDiv, onDrop: function (e) { return _this.drop(e); }, onDragEnter: function (e) { return _this.dragEnter(e); }, onDragLeave: function (e) { return _this.dragLeave(e); }, onDragOver: function (e) { return e.preventDefault(); } })));
54
+ };
55
+ FileDropArea.contextType = FileContext;
56
+ __decorate([
57
+ observable.ref,
58
+ __metadata("design:type", Object)
59
+ ], FileDropArea.prototype, "isDragging", void 0);
60
+ FileDropArea = __decorate([
61
+ observer,
62
+ __metadata("design:paramtypes", [Object])
63
+ ], FileDropArea);
64
+ return FileDropArea;
65
+ }(React.Component));
66
+ export default FileDropArea;