@singularsystems/neo-core 1.0.0-alpha.2 → 1.0.0-alpha.4

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 (296) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/ApiClient/ApiClientBase.d.ts +5 -5
  3. package/dist/ApiClient/ApiClientBase.js +13 -13
  4. package/dist/ApiClient/ReadApiClient.d.ts +16 -16
  5. package/dist/ApiClient/ReadApiClient.js +24 -24
  6. package/dist/ApiClient/UpdateableApiClient.d.ts +28 -28
  7. package/dist/ApiClient/UpdateableApiClient.js +33 -33
  8. package/dist/AppServices/AppService.d.ts +46 -46
  9. package/dist/AppServices/AppService.js +25 -25
  10. package/dist/AppServices/Config/ConfigModel.d.ts +21 -20
  11. package/dist/AppServices/Config/ConfigModel.js +28 -17
  12. package/dist/AppServices/Config/ConfigService.d.ts +15 -15
  13. package/dist/AppServices/Config/ConfigService.js +49 -53
  14. package/dist/AppServices/Module.d.ts +11 -11
  15. package/dist/AppServices/Module.js +13 -13
  16. package/dist/AppServices/NeoContainer.d.ts +22 -22
  17. package/dist/AppServices/NeoContainer.js +42 -42
  18. package/dist/AppServices/NeoModule.d.ts +3 -3
  19. package/dist/AppServices/NeoModule.js +30 -30
  20. package/dist/AppServices/NeoTypes.d.ts +61 -61
  21. package/dist/AppServices/NeoTypes.js +42 -42
  22. package/dist/AppServices/ServiceIdentifier.d.ts +23 -23
  23. package/dist/AppServices/ServiceIdentifier.js +38 -39
  24. package/dist/AppServices/index.d.ts +7 -7
  25. package/dist/AppServices/index.js +7 -7
  26. package/dist/Components/AnimationHelper.d.ts +69 -69
  27. package/dist/Components/AnimationHelper.js +182 -182
  28. package/dist/Components/BootstrapHelpers.d.ts +8 -8
  29. package/dist/Components/BootstrapHelpers.js +30 -30
  30. package/dist/Components/BootstrapTypes.d.ts +35 -35
  31. package/dist/Components/BootstrapTypes.js +1 -1
  32. package/dist/Components/ButtonOptions.d.ts +63 -61
  33. package/dist/Components/ButtonOptions.js +1 -1
  34. package/dist/Components/ContextMenu/ContextMenu.d.ts +16 -16
  35. package/dist/Components/ContextMenu/ContextMenu.js +1 -1
  36. package/dist/Components/ContextMenu/MenuUtils.d.ts +16 -16
  37. package/dist/Components/ContextMenu/MenuUtils.js +34 -34
  38. package/dist/Components/DatePicker/DatePicker.d.ts +70 -69
  39. package/dist/Components/DatePicker/DatePicker.js +502 -487
  40. package/dist/Components/DatePicker/DatePickerOptions.d.ts +43 -34
  41. package/dist/Components/DatePicker/DatePickerOptions.js +33 -33
  42. package/dist/Components/ErrorHandler.d.ts +59 -55
  43. package/dist/Components/ErrorHandler.js +210 -138
  44. package/dist/Components/FileManager/BoundFileManager.d.ts +18 -18
  45. package/dist/Components/FileManager/BoundFileManager.js +60 -60
  46. package/dist/Components/FileManager/FileManager.d.ts +80 -78
  47. package/dist/Components/FileManager/FileManager.js +277 -257
  48. package/dist/Components/FileManager/FileUploadBatch.d.ts +37 -37
  49. package/dist/Components/FileManager/FileUploadBatch.js +83 -82
  50. package/dist/Components/FileManager/IFileManagerOptions.d.ts +42 -42
  51. package/dist/Components/FileManager/IFileManagerOptions.js +1 -1
  52. package/dist/Components/FormOptions.d.ts +34 -34
  53. package/dist/Components/FormOptions.js +1 -1
  54. package/dist/Components/ICollapsableOptions.d.ts +11 -11
  55. package/dist/Components/ICollapsableOptions.js +1 -1
  56. package/dist/Components/Modal/ModalHelper.d.ts +31 -31
  57. package/dist/Components/Modal/ModalHelper.js +174 -174
  58. package/dist/Components/Modal/ModalOptions.d.ts +61 -61
  59. package/dist/Components/Modal/ModalOptions.js +1 -1
  60. package/dist/Components/Modal/ModalStore.d.ts +32 -32
  61. package/dist/Components/Modal/ModalStore.js +82 -82
  62. package/dist/Components/Modal/ModalUtils.d.ts +61 -61
  63. package/dist/Components/Modal/ModalUtils.js +109 -109
  64. package/dist/Components/Notifications/INotificationHelper.d.ts +56 -56
  65. package/dist/Components/Notifications/INotificationHelper.js +1 -1
  66. package/dist/Components/Notifications/Notification.d.ts +32 -32
  67. package/dist/Components/Notifications/Notification.js +26 -27
  68. package/dist/Components/Notifications/NotificationHelper.d.ts +63 -63
  69. package/dist/Components/Notifications/NotificationHelper.js +111 -112
  70. package/dist/Components/Notifications/NotificationStore.d.ts +34 -34
  71. package/dist/Components/Notifications/NotificationStore.js +78 -79
  72. package/dist/Components/PositionHelper.d.ts +10 -10
  73. package/dist/Components/PositionHelper.js +43 -43
  74. package/dist/Components/TaskRunner/Decorators.d.ts +6 -6
  75. package/dist/Components/TaskRunner/Decorators.js +24 -24
  76. package/dist/Components/TaskRunner/ProgressState.d.ts +22 -22
  77. package/dist/Components/TaskRunner/ProgressState.js +71 -72
  78. package/dist/Components/TaskRunner/TaskRunner.d.ts +114 -114
  79. package/dist/Components/TaskRunner/TaskRunner.js +253 -244
  80. package/dist/Components/TooltipOptions.d.ts +8 -8
  81. package/dist/Components/TooltipOptions.js +1 -1
  82. package/dist/Components/index.d.ts +22 -22
  83. package/dist/Components/index.js +13 -13
  84. package/dist/ConnectionManager.d.ts +45 -45
  85. package/dist/ConnectionManager.js +60 -61
  86. package/dist/Data/ApiDataSource.d.ts +46 -46
  87. package/dist/Data/ApiDataSource.js +140 -144
  88. package/dist/Data/AsyncDataSource.d.ts +35 -35
  89. package/dist/Data/AsyncDataSource.js +79 -80
  90. package/dist/Data/CacheService.d.ts +40 -40
  91. package/dist/Data/CacheService.js +63 -64
  92. package/dist/Data/DataCacheEntry.d.ts +42 -42
  93. package/dist/Data/DataCacheEntry.js +80 -80
  94. package/dist/Data/DataView.d.ts +43 -43
  95. package/dist/Data/DataView.js +173 -172
  96. package/dist/Data/Deserialiser.d.ts +42 -42
  97. package/dist/Data/Deserialiser.js +255 -255
  98. package/dist/Data/Paging/PageManager.d.ts +167 -167
  99. package/dist/Data/Paging/PageManager.js +323 -323
  100. package/dist/Data/Paging/PageRequest.d.ts +24 -24
  101. package/dist/Data/Paging/PageRequest.js +38 -39
  102. package/dist/Data/Paging/PageResult.d.ts +10 -10
  103. package/dist/Data/Paging/PageResult.js +14 -14
  104. package/dist/Data/Serialiser.d.ts +41 -41
  105. package/dist/Data/Serialiser.js +201 -201
  106. package/dist/Data/SortOperation.d.ts +8 -8
  107. package/dist/Data/SortOperation.js +26 -26
  108. package/dist/Data/StaticDataSource.d.ts +9 -9
  109. package/dist/Data/StaticDataSource.js +27 -27
  110. package/dist/Data/WindowedDataView.d.ts +8 -8
  111. package/dist/Data/WindowedDataView.js +49 -50
  112. package/dist/Data/index.d.ts +15 -15
  113. package/dist/Data/index.js +15 -15
  114. package/dist/Dates/DateUtils.d.ts +47 -47
  115. package/dist/Dates/DateUtils.js +226 -226
  116. package/dist/Dates/TimeSpan.d.ts +24 -24
  117. package/dist/Dates/TimeSpan.js +46 -46
  118. package/dist/DebounceHelper.d.ts +44 -38
  119. package/dist/DebounceHelper.js +122 -95
  120. package/dist/Extensions.d.ts +82 -82
  121. package/dist/Extensions.js +182 -182
  122. package/dist/FileUtils.d.ts +6 -6
  123. package/dist/FileUtils.js +37 -37
  124. package/dist/Globals.d.ts +19 -19
  125. package/dist/Globals.js +41 -41
  126. package/dist/JsonSchema/ClassMetadata.d.ts +25 -25
  127. package/dist/JsonSchema/ClassMetadata.js +53 -53
  128. package/dist/JsonSchema/JsonData.d.ts +16 -16
  129. package/dist/JsonSchema/JsonData.js +97 -97
  130. package/dist/JsonSchema/JsonSchemaTypes.d.ts +37 -37
  131. package/dist/JsonSchema/JsonSchemaTypes.js +1 -1
  132. package/dist/JsonSchema/PropertyMetadata.d.ts +8 -8
  133. package/dist/JsonSchema/PropertyMetadata.js +8 -8
  134. package/dist/JsonSchema/TypeCache.d.ts +16 -16
  135. package/dist/JsonSchema/TypeCache.js +44 -44
  136. package/dist/JsonSchema/TypeMetadata.d.ts +45 -45
  137. package/dist/JsonSchema/TypeMetadata.js +170 -170
  138. package/dist/JsonSchema/index.d.ts +7 -7
  139. package/dist/JsonSchema/index.js +6 -6
  140. package/dist/Localisation/ILocalisationService.d.ts +11 -11
  141. package/dist/Localisation/ILocalisationService.js +1 -1
  142. package/dist/Localisation/LocalisationService.d.ts +4 -4
  143. package/dist/Localisation/LocalisationService.js +17 -17
  144. package/dist/Localisation/index.d.ts +1 -1
  145. package/dist/Localisation/index.js +1 -1
  146. package/dist/Misc.d.ts +6 -6
  147. package/dist/Misc.js +6 -6
  148. package/dist/Model/BaseModels/AuditValues.d.ts +12 -12
  149. package/dist/Model/BaseModels/AuditValues.js +46 -48
  150. package/dist/Model/BaseModels/CriteriaBase.d.ts +18 -16
  151. package/dist/Model/BaseModels/CriteriaBase.js +45 -34
  152. package/dist/Model/BaseModels/FileDescriptorBase.d.ts +12 -12
  153. package/dist/Model/BaseModels/FileDescriptorBase.js +22 -22
  154. package/dist/Model/BaseModels/ReasonedUserEvent.d.ts +5 -4
  155. package/dist/Model/BaseModels/ReasonedUserEvent.js +23 -19
  156. package/dist/Model/BaseModels/UserEvent.d.ts +9 -8
  157. package/dist/Model/BaseModels/UserEvent.js +36 -32
  158. package/dist/Model/BindableBase.d.ts +46 -40
  159. package/dist/Model/BindableBase.js +79 -76
  160. package/dist/Model/Decorators.d.ts +47 -44
  161. package/dist/Model/Decorators.js +182 -177
  162. package/dist/Model/EnumHelper.d.ts +54 -54
  163. package/dist/Model/EnumHelper.js +104 -100
  164. package/dist/Model/IAutoRunner.d.ts +5 -5
  165. package/dist/Model/IAutoRunner.js +1 -1
  166. package/dist/Model/IModelBase.d.ts +92 -79
  167. package/dist/Model/IModelBase.js +1 -1
  168. package/dist/Model/IModelCreatorBase.d.ts +9 -9
  169. package/dist/Model/IModelCreatorBase.js +1 -1
  170. package/dist/Model/List.d.ts +79 -77
  171. package/dist/Model/List.js +208 -198
  172. package/dist/Model/LookupBase.d.ts +13 -6
  173. package/dist/Model/LookupBase.js +19 -10
  174. package/dist/Model/Misc.d.ts +83 -81
  175. package/dist/Model/Misc.js +59 -59
  176. package/dist/Model/ModelBase.d.ts +88 -86
  177. package/dist/Model/ModelBase.js +182 -180
  178. package/dist/Model/ModelCreatorBase.d.ts +24 -23
  179. package/dist/Model/ModelCreatorBase.js +92 -92
  180. package/dist/Model/ModelFieldInfo.d.ts +29 -12
  181. package/dist/Model/ModelFieldInfo.js +35 -26
  182. package/dist/Model/ModelGraphTraverser.d.ts +35 -35
  183. package/dist/Model/ModelGraphTraverser.js +101 -99
  184. package/dist/Model/NeoModel.d.ts +6 -6
  185. package/dist/Model/NeoModel.js +13 -13
  186. package/dist/Model/NeoTypeInfo.d.ts +52 -41
  187. package/dist/Model/NeoTypeInfo.js +300 -250
  188. package/dist/Model/ObservableProperty.d.ts +8 -8
  189. package/dist/Model/ObservableProperty.js +41 -41
  190. package/dist/Model/ObservableValue.d.ts +9 -9
  191. package/dist/Model/ObservableValue.js +25 -26
  192. package/dist/Model/PropertyInfo.d.ts +83 -81
  193. package/dist/Model/PropertyInfo.js +138 -137
  194. package/dist/Model/PropertyInstance.d.ts +84 -48
  195. package/dist/Model/PropertyInstance.js +173 -113
  196. package/dist/Model/ValueObject.d.ts +3 -3
  197. package/dist/Model/ValueObject.js +10 -10
  198. package/dist/Model/index.d.ts +15 -14
  199. package/dist/Model/index.js +13 -12
  200. package/dist/NumberUtils.d.ts +63 -49
  201. package/dist/NumberUtils.js +247 -197
  202. package/dist/Routing/IMenuItemProvider.d.ts +9 -9
  203. package/dist/Routing/IMenuItemProvider.js +1 -1
  204. package/dist/Routing/IMenuRoute.d.ts +18 -18
  205. package/dist/Routing/IMenuRoute.js +1 -1
  206. package/dist/Routing/INavigationHelper.d.ts +7 -7
  207. package/dist/Routing/INavigationHelper.js +1 -1
  208. package/dist/Routing/IPageLeaveHandler.d.ts +23 -23
  209. package/dist/Routing/IPageLeaveHandler.js +7 -7
  210. package/dist/Routing/IRoute.d.ts +27 -27
  211. package/dist/Routing/IRoute.js +1 -1
  212. package/dist/Routing/IRouteSecurityService.d.ts +14 -14
  213. package/dist/Routing/IRouteSecurityService.js +1 -1
  214. package/dist/Routing/MenuItemProvider.d.ts +17 -17
  215. package/dist/Routing/MenuItemProvider.js +53 -54
  216. package/dist/Routing/RouteSecurityService.d.ts +18 -18
  217. package/dist/Routing/RouteSecurityService.js +35 -36
  218. package/dist/Routing/index.d.ts +7 -7
  219. package/dist/Routing/index.js +3 -3
  220. package/dist/Security/IAuthenticationService.d.ts +41 -36
  221. package/dist/Security/IAuthenticationService.js +1 -1
  222. package/dist/Security/IAuthorisationService.d.ts +11 -11
  223. package/dist/Security/IAuthorisationService.js +1 -1
  224. package/dist/Security/ILoginErrorHandler.d.ts +4 -4
  225. package/dist/Security/ILoginErrorHandler.js +1 -1
  226. package/dist/Security/ISecurityService.d.ts +10 -10
  227. package/dist/Security/ISecurityService.js +1 -1
  228. package/dist/Security/IUser.d.ts +10 -10
  229. package/dist/Security/IUser.js +1 -1
  230. package/dist/Security/IUserRole.d.ts +6 -6
  231. package/dist/Security/IUserRole.js +1 -1
  232. package/dist/Security/LoginErrorHandler.d.ts +15 -15
  233. package/dist/Security/LoginErrorHandler.js +97 -98
  234. package/dist/Security/Oidc/OidcAuthService.d.ts +67 -60
  235. package/dist/Security/Oidc/OidcAuthService.js +216 -189
  236. package/dist/Security/Oidc/OidcTypes.d.ts +46 -29
  237. package/dist/Security/Oidc/OidcTypes.js +1 -1
  238. package/dist/Security/Oidc/OidcUser.d.ts +9 -9
  239. package/dist/Security/Oidc/OidcUser.js +33 -33
  240. package/dist/Security/SecurityService.d.ts +12 -12
  241. package/dist/Security/SecurityService.js +33 -34
  242. package/dist/Security/SignInResult.d.ts +13 -13
  243. package/dist/Security/SignInResult.js +8 -8
  244. package/dist/Security/User.d.ts +12 -12
  245. package/dist/Security/User.js +24 -24
  246. package/dist/Security/index.d.ts +10 -10
  247. package/dist/Security/index.js +5 -5
  248. package/dist/Settings.d.ts +71 -57
  249. package/dist/Settings.js +100 -87
  250. package/dist/SignalR/HubBase.d.ts +70 -70
  251. package/dist/SignalR/HubBase.js +164 -164
  252. package/dist/SignalR/HubReceiver.d.ts +11 -11
  253. package/dist/SignalR/HubReceiver.js +25 -25
  254. package/dist/SignalR/HubSubscription.d.ts +12 -12
  255. package/dist/SignalR/HubSubscription.js +14 -14
  256. package/dist/SignalR/index.d.ts +3 -3
  257. package/dist/SignalR/index.js +1 -1
  258. package/dist/StringUtils.d.ts +7 -7
  259. package/dist/StringUtils.js +24 -24
  260. package/dist/Utils.d.ts +81 -80
  261. package/dist/Utils.js +220 -218
  262. package/dist/Validation/Decorators.d.ts +12 -12
  263. package/dist/Validation/Decorators.js +52 -52
  264. package/dist/Validation/DisplayHelper.d.ts +20 -19
  265. package/dist/Validation/DisplayHelper.js +104 -104
  266. package/dist/Validation/Misc.d.ts +10 -10
  267. package/dist/Validation/Misc.js +11 -11
  268. package/dist/Validation/ModelProxy.d.ts +20 -20
  269. package/dist/Validation/ModelProxy.js +46 -46
  270. package/dist/Validation/RuleContext.d.ts +86 -86
  271. package/dist/Validation/RuleContext.js +130 -130
  272. package/dist/Validation/Rules.d.ts +70 -70
  273. package/dist/Validation/Rules.js +177 -177
  274. package/dist/Validation/ValidationHelpers.d.ts +12 -12
  275. package/dist/Validation/ValidationHelpers.js +57 -57
  276. package/dist/Validation/ValidationRules.d.ts +18 -18
  277. package/dist/Validation/ValidationRules.js +34 -34
  278. package/dist/Validation/ValidationState.d.ts +42 -42
  279. package/dist/Validation/ValidationState.js +74 -74
  280. package/dist/Validation/Validators/IModelValidator.d.ts +28 -24
  281. package/dist/Validation/Validators/IModelValidator.js +1 -1
  282. package/dist/Validation/Validators/IPropertyValidator.d.ts +21 -21
  283. package/dist/Validation/Validators/IPropertyValidator.js +15 -15
  284. package/dist/Validation/Validators/ModelValidator.d.ts +46 -45
  285. package/dist/Validation/Validators/ModelValidator.js +143 -137
  286. package/dist/Validation/Validators/PropertyValidator.d.ts +21 -21
  287. package/dist/Validation/Validators/PropertyValidator.js +64 -67
  288. package/dist/Validation/Validators/RuleValidator.d.ts +19 -19
  289. package/dist/Validation/Validators/RuleValidator.js +51 -55
  290. package/dist/Validation/index.d.ts +9 -9
  291. package/dist/Validation/index.js +7 -7
  292. package/dist/Views/IViewBase.d.ts +5 -5
  293. package/dist/Views/IViewBase.js +1 -1
  294. package/dist/index.d.ts +37 -36
  295. package/dist/index.js +44 -43
  296. package/package.json +11 -10
@@ -1,244 +1,253 @@
1
- import { __assign, __awaiter, __decorate, __extends, __generator, __metadata, __param } from "tslib";
2
- import { Observable } from '../../Model/Decorators';
3
- import NeoModel from '../../Model/NeoModel';
4
- import { ModalUtils } from '../..';
5
- import { injectable, inject } from 'inversify';
6
- import { ErrorDisplayType } from '../ErrorHandler';
7
- import { NeoTypes } from '../../AppServices';
8
- import { ProgressState } from './ProgressState';
9
- var TaskRunnerOptions = /** @class */ (function () {
10
- function TaskRunnerOptions(taskRunner) {
11
- this.taskRunner = taskRunner;
12
- /** Specifies how the task runner must handle errors that are raised by your code. */
13
- this.errorHandling = ErrorDisplayType.ShowModal;
14
- /** Loading text to show in the loading bar */
15
- this.loadingText = "";
16
- this.variant = "primary";
17
- /** Progress % to start on. */
18
- this.initialProgress = 0;
19
- /** Time in seconds for the progress to reach half way. */
20
- this.halfLife = 1;
21
- /** False if the progress will be progressed manually. */
22
- this.autoProgress = true;
23
- }
24
- Object.defineProperty(TaskRunnerOptions.prototype, "progressState", {
25
- get: function () {
26
- return this.taskRunner.progressState;
27
- },
28
- enumerable: false,
29
- configurable: true
30
- });
31
- __decorate([
32
- Observable(),
33
- __metadata("design:type", Object)
34
- ], TaskRunnerOptions.prototype, "loadingText", void 0);
35
- __decorate([
36
- Observable(),
37
- __metadata("design:type", String)
38
- ], TaskRunnerOptions.prototype, "variant", void 0);
39
- TaskRunnerOptions = __decorate([
40
- NeoModel,
41
- __metadata("design:paramtypes", [TaskRunner])
42
- ], TaskRunnerOptions);
43
- return TaskRunnerOptions;
44
- }());
45
- export { TaskRunnerOptions };
46
- var WaitForTaskRunnerOptions = /** @class */ (function (_super) {
47
- __extends(WaitForTaskRunnerOptions, _super);
48
- function WaitForTaskRunnerOptions() {
49
- return _super !== null && _super.apply(this, arguments) || this;
50
- }
51
- return WaitForTaskRunnerOptions;
52
- }(TaskRunnerOptions));
53
- export { WaitForTaskRunnerOptions };
54
- var defaultTaskName = "default";
55
- var TaskRunner = /** @class */ (function () {
56
- function TaskRunner(errorHandler) {
57
- this.errorHandler = errorHandler;
58
- this.isBusy = false;
59
- this.options = new TaskRunnerOptions(this);
60
- this.progressState = new ProgressState();
61
- this.runningTasks = [];
62
- }
63
- TaskRunner.prototype.run = function (loadingTextOrTask, taskOrNothing) {
64
- if (!this.runningTasks.find(function (c) { return c.name == defaultTaskName; })) {
65
- var pendingTask = void 0;
66
- var options = new TaskRunnerOptions(this);
67
- if (taskOrNothing === undefined) {
68
- // Task only
69
- pendingTask = loadingTextOrTask;
70
- }
71
- else {
72
- // Loading text then task
73
- options.loadingText = loadingTextOrTask;
74
- pendingTask = taskOrNothing;
75
- }
76
- return this.runTask(defaultTaskName, pendingTask(options), options);
77
- }
78
- else {
79
- throw "Cannot run more than 1 task at a time.";
80
- }
81
- };
82
- /**
83
- * Sets the isBusy property to true while the supplied promise is executing.
84
- * @param task A promise which is busy executing.
85
- * @param options Static options.
86
- */
87
- TaskRunner.prototype.waitFor = function (task, options) {
88
- return this.runTask("", task, Object.assign(new WaitForTaskRunnerOptions(this), options));
89
- };
90
- /**
91
- * Accepts a dictionary of promises, and waits for all of them to resolve.
92
- * A dictionary with the same keys is returned with the results of each promise.
93
- */
94
- TaskRunner.prototype.waitForAll = function (promises, options) {
95
- return __awaiter(this, void 0, void 0, function () {
96
- var returnValue, promiseList, sharedOptions, errorHandling, key, waitingTask, results, index, key, e_1;
97
- return __generator(this, function (_a) {
98
- switch (_a.label) {
99
- case 0:
100
- returnValue = {};
101
- promiseList = [];
102
- sharedOptions = Object.assign(new WaitForTaskRunnerOptions(this), options);
103
- errorHandling = sharedOptions.errorHandling;
104
- sharedOptions.errorHandling = ErrorDisplayType.ThrowError;
105
- for (key in promises) {
106
- waitingTask = this.runTask("", promises[key], sharedOptions);
107
- promiseList.push(waitingTask);
108
- }
109
- _a.label = 1;
110
- case 1:
111
- _a.trys.push([1, 3, , 4]);
112
- return [4 /*yield*/, Promise.all(promiseList)];
113
- case 2:
114
- results = _a.sent();
115
- index = 0;
116
- for (key in promises) {
117
- returnValue[key] = results[index++];
118
- }
119
- return [2 /*return*/, returnValue];
120
- case 3:
121
- e_1 = _a.sent();
122
- if (errorHandling !== ErrorDisplayType.ThrowError) {
123
- this.errorHandler.showError(e_1, errorHandling);
124
- }
125
- throw e_1;
126
- case 4: return [2 /*return*/];
127
- }
128
- });
129
- });
130
- };
131
- TaskRunner.prototype.waitForData = function (task, options) {
132
- return __awaiter(this, void 0, void 0, function () {
133
- var optionsNoDefault, result, e_2;
134
- return __generator(this, function (_a) {
135
- switch (_a.label) {
136
- case 0:
137
- optionsNoDefault = __assign(__assign({}, options), { defaultReturnValue: undefined });
138
- _a.label = 1;
139
- case 1:
140
- _a.trys.push([1, 3, , 4]);
141
- return [4 /*yield*/, this.waitFor(task, optionsNoDefault)];
142
- case 2:
143
- result = _a.sent();
144
- return [2 /*return*/, result.data];
145
- case 3:
146
- e_2 = _a.sent();
147
- if ((options === null || options === void 0 ? void 0 : options.defaultReturnValue) === undefined) {
148
- throw e_2;
149
- }
150
- else {
151
- return [2 /*return*/, options === null || options === void 0 ? void 0 : options.defaultReturnValue];
152
- }
153
- return [3 /*break*/, 4];
154
- case 4: return [2 /*return*/];
155
- }
156
- });
157
- });
158
- };
159
- TaskRunner.prototype.runTask = function (name, runningTask, options) {
160
- var _this = this;
161
- if (this.runningTasks.length === 0) {
162
- if (options.autoProgress) {
163
- this.progressState.resume(options.initialProgress, options.halfLife);
164
- }
165
- else {
166
- this.progressState.progress = options.initialProgress;
167
- }
168
- this.isBusy = true;
169
- }
170
- this.options = options;
171
- this.runningTasks.push({ name: name, promise: runningTask, options: options });
172
- return new Promise(function (resolve, reject) {
173
- runningTask.then(function (value) {
174
- var axiosResponse = value;
175
- var allowPosts = options.allowPost;
176
- if (name === "" && !allowPosts && axiosResponse && axiosResponse.config) {
177
- if (axiosResponse.config.method !== "get") {
178
- var message = "The operation completed, but TaskRunner.waitFor() must only be used for get operations. Change your code to use TaskRunner.run()";
179
- ModalUtils.showMessage("Error", message);
180
- reject(message);
181
- return;
182
- }
183
- }
184
- resolve(value);
185
- })
186
- .catch(function (e) {
187
- var _a;
188
- var cancel = false;
189
- if (options.onError !== undefined) {
190
- var errorInfo = _this.errorHandler.parseError(e);
191
- options.onError(errorInfo);
192
- cancel = (_a = errorInfo.cancelDisplay) !== null && _a !== void 0 ? _a : false;
193
- }
194
- if (!cancel && options.errorHandling !== ErrorDisplayType.ThrowError) {
195
- _this.errorHandler.showError(e, options.errorHandling);
196
- }
197
- if (options.defaultReturnValue === undefined) {
198
- reject(e);
199
- }
200
- else {
201
- resolve(options.defaultReturnValue);
202
- }
203
- }).finally(function () {
204
- var task = _this.runningTasks.find(function (c) { return c.promise === runningTask; });
205
- if (_this.runningTasks.length === 1) {
206
- // This was the last task to finish.
207
- _this.progressState.stop();
208
- _this.isBusy = false;
209
- }
210
- else {
211
- if (task === _this.runningTasks[_this.runningTasks.length - 1]) {
212
- // Task that just completed was the last one added, set the loading state to the previously added task.
213
- _this.options = _this.runningTasks[_this.runningTasks.length - 2].options;
214
- }
215
- }
216
- _this.runningTasks.splice(_this.runningTasks.indexOf(task), 1);
217
- });
218
- });
219
- };
220
- /** Waits the specified number of milliseconds. */
221
- TaskRunner.delay = function (ms) {
222
- return new Promise(function (resolve) { return setTimeout(resolve, ms); });
223
- };
224
- __decorate([
225
- Observable(),
226
- __metadata("design:type", Boolean)
227
- ], TaskRunner.prototype, "isBusy", void 0);
228
- __decorate([
229
- Observable(),
230
- __metadata("design:type", Object)
231
- ], TaskRunner.prototype, "options", void 0);
232
- __decorate([
233
- Observable(),
234
- __metadata("design:type", Object)
235
- ], TaskRunner.prototype, "progressState", void 0);
236
- TaskRunner = __decorate([
237
- injectable(),
238
- NeoModel,
239
- __param(0, inject(NeoTypes.UI.ErrorHandler.symbol)),
240
- __metadata("design:paramtypes", [Object])
241
- ], TaskRunner);
242
- return TaskRunner;
243
- }());
244
- export default TaskRunner;
1
+ import { __assign, __awaiter, __decorate, __extends, __generator, __metadata, __param } from "tslib";
2
+ import { Observable } from '../../Model/Decorators';
3
+ import NeoModel from '../../Model/NeoModel';
4
+ import { ModalUtils } from '../..';
5
+ import { injectable, inject } from 'inversify';
6
+ import { ErrorDisplayType } from '../ErrorHandler';
7
+ import { NeoTypes } from '../../AppServices';
8
+ import { ProgressState } from './ProgressState';
9
+ export var TaskRunnerOptions = /** @class */ (function () {
10
+ function TaskRunnerOptions(taskRunner) {
11
+ this.taskRunner = taskRunner;
12
+ /** Specifies how the task runner must handle errors that are raised by your code. */
13
+ this.errorHandling = ErrorDisplayType.ShowModal;
14
+ /** Loading text to show in the loading bar */
15
+ this.loadingText = "";
16
+ this.variant = "primary";
17
+ /** Progress % to start on. */
18
+ this.initialProgress = 0;
19
+ /** Time in seconds for the progress to reach half way. */
20
+ this.halfLife = 1;
21
+ /** False if the progress will be progressed manually. */
22
+ this.autoProgress = true;
23
+ }
24
+ Object.defineProperty(TaskRunnerOptions.prototype, "progressState", {
25
+ get: function () {
26
+ return this.taskRunner.progressState;
27
+ },
28
+ enumerable: false,
29
+ configurable: true
30
+ });
31
+ __decorate([
32
+ Observable(),
33
+ __metadata("design:type", Object)
34
+ ], TaskRunnerOptions.prototype, "loadingText", void 0);
35
+ __decorate([
36
+ Observable(),
37
+ __metadata("design:type", String)
38
+ ], TaskRunnerOptions.prototype, "variant", void 0);
39
+ TaskRunnerOptions = __decorate([
40
+ NeoModel,
41
+ __metadata("design:paramtypes", [TaskRunner])
42
+ ], TaskRunnerOptions);
43
+ return TaskRunnerOptions;
44
+ }());
45
+ var WaitForTaskRunnerOptions = /** @class */ (function (_super) {
46
+ __extends(WaitForTaskRunnerOptions, _super);
47
+ function WaitForTaskRunnerOptions() {
48
+ return _super !== null && _super.apply(this, arguments) || this;
49
+ }
50
+ return WaitForTaskRunnerOptions;
51
+ }(TaskRunnerOptions));
52
+ export { WaitForTaskRunnerOptions };
53
+ var defaultTaskName = "default";
54
+ var TaskRunner = /** @class */ (function () {
55
+ function TaskRunner(errorHandler) {
56
+ this.errorHandler = errorHandler;
57
+ this.isBusy = false;
58
+ this.options = new TaskRunnerOptions(this);
59
+ this.progressState = new ProgressState();
60
+ this.runningTasks = [];
61
+ }
62
+ TaskRunner.prototype.run = function (loadingTextOrTask, taskOrNothing) {
63
+ if (!this.runningTasks.find(function (c) { return c.name == defaultTaskName; })) {
64
+ var pendingTask = void 0;
65
+ var options = new TaskRunnerOptions(this);
66
+ if (taskOrNothing === undefined) {
67
+ // Task only
68
+ pendingTask = loadingTextOrTask;
69
+ }
70
+ else {
71
+ // Loading text then task
72
+ options.loadingText = loadingTextOrTask;
73
+ pendingTask = taskOrNothing;
74
+ }
75
+ return this.runTask(defaultTaskName, pendingTask(options), options);
76
+ }
77
+ else {
78
+ throw "Cannot run more than 1 task at a time.";
79
+ }
80
+ };
81
+ /**
82
+ * Sets the isBusy property to true while the supplied promise is executing.
83
+ * @param task A promise which is busy executing.
84
+ * @param options Static options.
85
+ */
86
+ TaskRunner.prototype.waitFor = function (task, options) {
87
+ return this.runTask("", task, Object.assign(new WaitForTaskRunnerOptions(this), options));
88
+ };
89
+ /**
90
+ * Accepts a dictionary of promises, and waits for all of them to resolve.
91
+ * A dictionary with the same keys is returned with the results of each promise.
92
+ */
93
+ TaskRunner.prototype.waitForAll = function (promises, options) {
94
+ return __awaiter(this, void 0, void 0, function () {
95
+ var returnValue, promiseList, sharedOptions, errorHandling, key, waitingTask, results, index, key, e_1;
96
+ return __generator(this, function (_a) {
97
+ switch (_a.label) {
98
+ case 0:
99
+ returnValue = {};
100
+ promiseList = [];
101
+ sharedOptions = Object.assign(new WaitForTaskRunnerOptions(this), options);
102
+ errorHandling = sharedOptions.errorHandling;
103
+ sharedOptions.errorHandling = ErrorDisplayType.ThrowError;
104
+ for (key in promises) {
105
+ waitingTask = this.runTask("", promises[key], sharedOptions);
106
+ promiseList.push(waitingTask);
107
+ }
108
+ _a.label = 1;
109
+ case 1:
110
+ _a.trys.push([1, 3, , 4]);
111
+ return [4 /*yield*/, Promise.all(promiseList)];
112
+ case 2:
113
+ results = _a.sent();
114
+ index = 0;
115
+ for (key in promises) {
116
+ returnValue[key] = results[index++];
117
+ }
118
+ return [2 /*return*/, returnValue];
119
+ case 3:
120
+ e_1 = _a.sent();
121
+ if (errorHandling !== ErrorDisplayType.ThrowError) {
122
+ this.errorHandler.showError(e_1, errorHandling);
123
+ }
124
+ throw e_1;
125
+ case 4: return [2 /*return*/];
126
+ }
127
+ });
128
+ });
129
+ };
130
+ TaskRunner.prototype.waitForData = function (task, options) {
131
+ return __awaiter(this, void 0, void 0, function () {
132
+ var optionsNoDefault, result, e_2;
133
+ return __generator(this, function (_a) {
134
+ switch (_a.label) {
135
+ case 0:
136
+ optionsNoDefault = __assign(__assign({}, options), { defaultReturnValue: undefined });
137
+ _a.label = 1;
138
+ case 1:
139
+ _a.trys.push([1, 3, , 4]);
140
+ return [4 /*yield*/, this.waitFor(task, optionsNoDefault)];
141
+ case 2:
142
+ result = _a.sent();
143
+ return [2 /*return*/, result.data];
144
+ case 3:
145
+ e_2 = _a.sent();
146
+ if ((options === null || options === void 0 ? void 0 : options.defaultReturnValue) === undefined) {
147
+ throw e_2;
148
+ }
149
+ else {
150
+ return [2 /*return*/, options === null || options === void 0 ? void 0 : options.defaultReturnValue];
151
+ }
152
+ return [3 /*break*/, 4];
153
+ case 4: return [2 /*return*/];
154
+ }
155
+ });
156
+ });
157
+ };
158
+ TaskRunner.prototype.runTask = function (name, runningTask, options) {
159
+ var _this = this;
160
+ if (this.runningTasks.length === 0) {
161
+ if (options.autoProgress) {
162
+ this.progressState.resume(options.initialProgress, options.halfLife);
163
+ }
164
+ else {
165
+ this.progressState.progress = options.initialProgress;
166
+ }
167
+ this.isBusy = true;
168
+ }
169
+ this.options = options;
170
+ this.runningTasks.push({ name: name, promise: runningTask, options: options });
171
+ return new Promise(function (resolve, reject) {
172
+ runningTask.then(function (value) {
173
+ var axiosResponse = value;
174
+ var allowPosts = options.allowPost;
175
+ if (name === "" && !allowPosts && axiosResponse && axiosResponse.config) {
176
+ if (axiosResponse.config.method !== "get") {
177
+ var message = "The operation completed, but TaskRunner.waitFor() must only be used for get operations. Change your code to use TaskRunner.run()";
178
+ ModalUtils.showMessage("Error", message);
179
+ reject(message);
180
+ return;
181
+ }
182
+ }
183
+ resolve(value);
184
+ })
185
+ .catch(function (e) { return __awaiter(_this, void 0, void 0, function () {
186
+ var cancel, errorInfo;
187
+ var _a;
188
+ return __generator(this, function (_b) {
189
+ switch (_b.label) {
190
+ case 0:
191
+ cancel = false;
192
+ if (!(options.onError !== undefined)) return [3 /*break*/, 2];
193
+ return [4 /*yield*/, this.errorHandler.parseError(e)];
194
+ case 1:
195
+ errorInfo = _b.sent();
196
+ options.onError(errorInfo);
197
+ cancel = (_a = errorInfo.cancelDisplay) !== null && _a !== void 0 ? _a : false;
198
+ _b.label = 2;
199
+ case 2:
200
+ if (!cancel && options.errorHandling !== ErrorDisplayType.ThrowError) {
201
+ this.errorHandler.showError(e, options.errorHandling);
202
+ }
203
+ if (options.defaultReturnValue === undefined) {
204
+ reject(e);
205
+ }
206
+ else {
207
+ resolve(options.defaultReturnValue);
208
+ }
209
+ return [2 /*return*/];
210
+ }
211
+ });
212
+ }); }).finally(function () {
213
+ var task = _this.runningTasks.find(function (c) { return c.promise === runningTask; });
214
+ if (_this.runningTasks.length === 1) {
215
+ // This was the last task to finish.
216
+ _this.progressState.stop();
217
+ _this.isBusy = false;
218
+ }
219
+ else {
220
+ if (task === _this.runningTasks[_this.runningTasks.length - 1]) {
221
+ // Task that just completed was the last one added, set the loading state to the previously added task.
222
+ _this.options = _this.runningTasks[_this.runningTasks.length - 2].options;
223
+ }
224
+ }
225
+ _this.runningTasks.splice(_this.runningTasks.indexOf(task), 1);
226
+ });
227
+ });
228
+ };
229
+ /** Waits the specified number of milliseconds. */
230
+ TaskRunner.delay = function (ms) {
231
+ return new Promise(function (resolve) { return setTimeout(resolve, ms); });
232
+ };
233
+ __decorate([
234
+ Observable(),
235
+ __metadata("design:type", Boolean)
236
+ ], TaskRunner.prototype, "isBusy", void 0);
237
+ __decorate([
238
+ Observable(),
239
+ __metadata("design:type", Object)
240
+ ], TaskRunner.prototype, "options", void 0);
241
+ __decorate([
242
+ Observable(),
243
+ __metadata("design:type", Object)
244
+ ], TaskRunner.prototype, "progressState", void 0);
245
+ TaskRunner = __decorate([
246
+ injectable(),
247
+ NeoModel,
248
+ __param(0, inject(NeoTypes.UI.ErrorHandler.symbol)),
249
+ __metadata("design:paramtypes", [Object])
250
+ ], TaskRunner);
251
+ return TaskRunner;
252
+ }());
253
+ export default TaskRunner;
@@ -1,8 +1,8 @@
1
- export declare type Alignment = "start" | "start-edge" | "center" | "end" | "end-edge";
2
- export declare type Position = "top" | "right" | "bottom" | "left";
3
- export interface ITooltipOptions<TContent = string> {
4
- content: TContent;
5
- alignment?: Alignment;
6
- position?: Position;
7
- className?: string;
8
- }
1
+ export type Alignment = "start" | "start-edge" | "center" | "end" | "end-edge";
2
+ export type Position = "top" | "right" | "bottom" | "left";
3
+ export interface ITooltipOptions<TContent = string> {
4
+ content: TContent;
5
+ alignment?: Alignment;
6
+ position?: Position;
7
+ className?: string;
8
+ }
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,22 +1,22 @@
1
- export { default as AnimationHelper, CollapseAnimationHelper } from './AnimationHelper';
2
- export { default as BootstrapHelpers } from './BootstrapHelpers';
3
- export * from "./BootstrapTypes";
4
- export { IButtonOptions, IButtonDropDownItem } from './ButtonOptions';
5
- export { ICollapsableOptions } from './ICollapsableOptions';
6
- export { IMenuItem } from './ContextMenu/ContextMenu';
7
- export { default as DatePicker } from './DatePicker/DatePicker';
8
- export { default as DatePickerOptions, IPartialDateProps, YearsInYearView } from './DatePicker/DatePickerOptions';
9
- export { IErrorHandler, ErrorHandler, ErrorDisplayType, IErrorDisplay } from './ErrorHandler';
10
- export { default as FileManager, IFileManager, IFileManagerOptions } from './FileManager/FileManager';
11
- export { default as BoundFileManager, IBoundFileManagerOptions } from './FileManager/BoundFileManager';
12
- export { FileUploadBatch } from './FileManager/FileUploadBatch';
13
- export { IFileResponse } from './FileManager/IFileManagerOptions';
14
- export { IFormOptions, IFormContextOptions } from './FormOptions';
15
- export { ICodeModal } from './Modal/ModalStore';
16
- export { INotification, INotificationOptions } from './Notifications/Notification';
17
- export { INotificationStore } from './Notifications/NotificationStore';
18
- export { INotificationHelper } from './Notifications/INotificationHelper';
19
- export { ProgressState } from './TaskRunner/ProgressState';
20
- export { default as PositionHelper } from './PositionHelper';
21
- import * as Tooltip from './TooltipOptions';
22
- export { Tooltip };
1
+ export { default as AnimationHelper, CollapseAnimationHelper } from './AnimationHelper';
2
+ export { default as BootstrapHelpers } from './BootstrapHelpers';
3
+ export * from "./BootstrapTypes";
4
+ export { IButtonOptions, IButtonDropDownItem } from './ButtonOptions';
5
+ export { ICollapsableOptions } from './ICollapsableOptions';
6
+ export { IMenuItem } from './ContextMenu/ContextMenu';
7
+ export { default as DatePicker } from './DatePicker/DatePicker';
8
+ export { default as DatePickerOptions, IPartialDateProps, YearsInYearView } from './DatePicker/DatePickerOptions';
9
+ export { IErrorHandler, ErrorHandler, ErrorDisplayType, IErrorDisplay } from './ErrorHandler';
10
+ export { default as FileManager, IFileManager, IFileManagerOptions } from './FileManager/FileManager';
11
+ export { default as BoundFileManager, IBoundFileManagerOptions } from './FileManager/BoundFileManager';
12
+ export { FileUploadBatch } from './FileManager/FileUploadBatch';
13
+ export { IFileResponse } from './FileManager/IFileManagerOptions';
14
+ export { IFormOptions, IFormContextOptions } from './FormOptions';
15
+ export { ICodeModal } from './Modal/ModalStore';
16
+ export { INotification, INotificationOptions } from './Notifications/Notification';
17
+ export { INotificationStore } from './Notifications/NotificationStore';
18
+ export { INotificationHelper } from './Notifications/INotificationHelper';
19
+ export { ProgressState } from './TaskRunner/ProgressState';
20
+ export { default as PositionHelper } from './PositionHelper';
21
+ import * as Tooltip from './TooltipOptions';
22
+ export { Tooltip };
@@ -1,13 +1,13 @@
1
- export { default as AnimationHelper, CollapseAnimationHelper } from './AnimationHelper';
2
- export { default as BootstrapHelpers } from './BootstrapHelpers';
3
- export * from "./BootstrapTypes";
4
- export { default as DatePicker } from './DatePicker/DatePicker';
5
- export { default as DatePickerOptions, YearsInYearView } from './DatePicker/DatePickerOptions';
6
- export { ErrorHandler, ErrorDisplayType } from './ErrorHandler';
7
- export { default as FileManager } from './FileManager/FileManager';
8
- export { default as BoundFileManager } from './FileManager/BoundFileManager';
9
- export { FileUploadBatch } from './FileManager/FileUploadBatch';
10
- export { ProgressState } from './TaskRunner/ProgressState';
11
- export { default as PositionHelper } from './PositionHelper';
12
- import * as Tooltip from './TooltipOptions';
13
- export { Tooltip };
1
+ export { default as AnimationHelper, CollapseAnimationHelper } from './AnimationHelper';
2
+ export { default as BootstrapHelpers } from './BootstrapHelpers';
3
+ export * from "./BootstrapTypes";
4
+ export { default as DatePicker } from './DatePicker/DatePicker';
5
+ export { default as DatePickerOptions, YearsInYearView } from './DatePicker/DatePickerOptions';
6
+ export { ErrorHandler, ErrorDisplayType } from './ErrorHandler';
7
+ export { default as FileManager } from './FileManager/FileManager';
8
+ export { default as BoundFileManager } from './FileManager/BoundFileManager';
9
+ export { FileUploadBatch } from './FileManager/FileUploadBatch';
10
+ export { ProgressState } from './TaskRunner/ProgressState';
11
+ export { default as PositionHelper } from './PositionHelper';
12
+ import * as Tooltip from './TooltipOptions';
13
+ export { Tooltip };