@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.
- package/CHANGELOG.md +15 -0
- package/dist/ApiClient/ApiClientBase.d.ts +5 -5
- package/dist/ApiClient/ApiClientBase.js +13 -13
- package/dist/ApiClient/ReadApiClient.d.ts +16 -16
- package/dist/ApiClient/ReadApiClient.js +24 -24
- package/dist/ApiClient/UpdateableApiClient.d.ts +28 -28
- package/dist/ApiClient/UpdateableApiClient.js +33 -33
- package/dist/AppServices/AppService.d.ts +46 -46
- package/dist/AppServices/AppService.js +25 -25
- package/dist/AppServices/Config/ConfigModel.d.ts +21 -20
- package/dist/AppServices/Config/ConfigModel.js +28 -17
- package/dist/AppServices/Config/ConfigService.d.ts +15 -15
- package/dist/AppServices/Config/ConfigService.js +49 -53
- package/dist/AppServices/Module.d.ts +11 -11
- package/dist/AppServices/Module.js +13 -13
- package/dist/AppServices/NeoContainer.d.ts +22 -22
- package/dist/AppServices/NeoContainer.js +42 -42
- package/dist/AppServices/NeoModule.d.ts +3 -3
- package/dist/AppServices/NeoModule.js +30 -30
- package/dist/AppServices/NeoTypes.d.ts +61 -61
- package/dist/AppServices/NeoTypes.js +42 -42
- package/dist/AppServices/ServiceIdentifier.d.ts +23 -23
- package/dist/AppServices/ServiceIdentifier.js +38 -39
- package/dist/AppServices/index.d.ts +7 -7
- package/dist/AppServices/index.js +7 -7
- package/dist/Components/AnimationHelper.d.ts +69 -69
- package/dist/Components/AnimationHelper.js +182 -182
- package/dist/Components/BootstrapHelpers.d.ts +8 -8
- package/dist/Components/BootstrapHelpers.js +30 -30
- package/dist/Components/BootstrapTypes.d.ts +35 -35
- package/dist/Components/BootstrapTypes.js +1 -1
- package/dist/Components/ButtonOptions.d.ts +63 -61
- package/dist/Components/ButtonOptions.js +1 -1
- package/dist/Components/ContextMenu/ContextMenu.d.ts +16 -16
- package/dist/Components/ContextMenu/ContextMenu.js +1 -1
- package/dist/Components/ContextMenu/MenuUtils.d.ts +16 -16
- package/dist/Components/ContextMenu/MenuUtils.js +34 -34
- package/dist/Components/DatePicker/DatePicker.d.ts +70 -69
- package/dist/Components/DatePicker/DatePicker.js +502 -487
- package/dist/Components/DatePicker/DatePickerOptions.d.ts +43 -34
- package/dist/Components/DatePicker/DatePickerOptions.js +33 -33
- package/dist/Components/ErrorHandler.d.ts +59 -55
- package/dist/Components/ErrorHandler.js +210 -138
- package/dist/Components/FileManager/BoundFileManager.d.ts +18 -18
- package/dist/Components/FileManager/BoundFileManager.js +60 -60
- package/dist/Components/FileManager/FileManager.d.ts +80 -78
- package/dist/Components/FileManager/FileManager.js +277 -257
- package/dist/Components/FileManager/FileUploadBatch.d.ts +37 -37
- package/dist/Components/FileManager/FileUploadBatch.js +83 -82
- package/dist/Components/FileManager/IFileManagerOptions.d.ts +42 -42
- package/dist/Components/FileManager/IFileManagerOptions.js +1 -1
- package/dist/Components/FormOptions.d.ts +34 -34
- package/dist/Components/FormOptions.js +1 -1
- package/dist/Components/ICollapsableOptions.d.ts +11 -11
- package/dist/Components/ICollapsableOptions.js +1 -1
- package/dist/Components/Modal/ModalHelper.d.ts +31 -31
- package/dist/Components/Modal/ModalHelper.js +174 -174
- package/dist/Components/Modal/ModalOptions.d.ts +61 -61
- package/dist/Components/Modal/ModalOptions.js +1 -1
- package/dist/Components/Modal/ModalStore.d.ts +32 -32
- package/dist/Components/Modal/ModalStore.js +82 -82
- package/dist/Components/Modal/ModalUtils.d.ts +61 -61
- package/dist/Components/Modal/ModalUtils.js +109 -109
- package/dist/Components/Notifications/INotificationHelper.d.ts +56 -56
- package/dist/Components/Notifications/INotificationHelper.js +1 -1
- package/dist/Components/Notifications/Notification.d.ts +32 -32
- package/dist/Components/Notifications/Notification.js +26 -27
- package/dist/Components/Notifications/NotificationHelper.d.ts +63 -63
- package/dist/Components/Notifications/NotificationHelper.js +111 -112
- package/dist/Components/Notifications/NotificationStore.d.ts +34 -34
- package/dist/Components/Notifications/NotificationStore.js +78 -79
- package/dist/Components/PositionHelper.d.ts +10 -10
- package/dist/Components/PositionHelper.js +43 -43
- package/dist/Components/TaskRunner/Decorators.d.ts +6 -6
- package/dist/Components/TaskRunner/Decorators.js +24 -24
- package/dist/Components/TaskRunner/ProgressState.d.ts +22 -22
- package/dist/Components/TaskRunner/ProgressState.js +71 -72
- package/dist/Components/TaskRunner/TaskRunner.d.ts +114 -114
- package/dist/Components/TaskRunner/TaskRunner.js +253 -244
- package/dist/Components/TooltipOptions.d.ts +8 -8
- package/dist/Components/TooltipOptions.js +1 -1
- package/dist/Components/index.d.ts +22 -22
- package/dist/Components/index.js +13 -13
- package/dist/ConnectionManager.d.ts +45 -45
- package/dist/ConnectionManager.js +60 -61
- package/dist/Data/ApiDataSource.d.ts +46 -46
- package/dist/Data/ApiDataSource.js +140 -144
- package/dist/Data/AsyncDataSource.d.ts +35 -35
- package/dist/Data/AsyncDataSource.js +79 -80
- package/dist/Data/CacheService.d.ts +40 -40
- package/dist/Data/CacheService.js +63 -64
- package/dist/Data/DataCacheEntry.d.ts +42 -42
- package/dist/Data/DataCacheEntry.js +80 -80
- package/dist/Data/DataView.d.ts +43 -43
- package/dist/Data/DataView.js +173 -172
- package/dist/Data/Deserialiser.d.ts +42 -42
- package/dist/Data/Deserialiser.js +255 -255
- package/dist/Data/Paging/PageManager.d.ts +167 -167
- package/dist/Data/Paging/PageManager.js +323 -323
- package/dist/Data/Paging/PageRequest.d.ts +24 -24
- package/dist/Data/Paging/PageRequest.js +38 -39
- package/dist/Data/Paging/PageResult.d.ts +10 -10
- package/dist/Data/Paging/PageResult.js +14 -14
- package/dist/Data/Serialiser.d.ts +41 -41
- package/dist/Data/Serialiser.js +201 -201
- package/dist/Data/SortOperation.d.ts +8 -8
- package/dist/Data/SortOperation.js +26 -26
- package/dist/Data/StaticDataSource.d.ts +9 -9
- package/dist/Data/StaticDataSource.js +27 -27
- package/dist/Data/WindowedDataView.d.ts +8 -8
- package/dist/Data/WindowedDataView.js +49 -50
- package/dist/Data/index.d.ts +15 -15
- package/dist/Data/index.js +15 -15
- package/dist/Dates/DateUtils.d.ts +47 -47
- package/dist/Dates/DateUtils.js +226 -226
- package/dist/Dates/TimeSpan.d.ts +24 -24
- package/dist/Dates/TimeSpan.js +46 -46
- package/dist/DebounceHelper.d.ts +44 -38
- package/dist/DebounceHelper.js +122 -95
- package/dist/Extensions.d.ts +82 -82
- package/dist/Extensions.js +182 -182
- package/dist/FileUtils.d.ts +6 -6
- package/dist/FileUtils.js +37 -37
- package/dist/Globals.d.ts +19 -19
- package/dist/Globals.js +41 -41
- package/dist/JsonSchema/ClassMetadata.d.ts +25 -25
- package/dist/JsonSchema/ClassMetadata.js +53 -53
- package/dist/JsonSchema/JsonData.d.ts +16 -16
- package/dist/JsonSchema/JsonData.js +97 -97
- package/dist/JsonSchema/JsonSchemaTypes.d.ts +37 -37
- package/dist/JsonSchema/JsonSchemaTypes.js +1 -1
- package/dist/JsonSchema/PropertyMetadata.d.ts +8 -8
- package/dist/JsonSchema/PropertyMetadata.js +8 -8
- package/dist/JsonSchema/TypeCache.d.ts +16 -16
- package/dist/JsonSchema/TypeCache.js +44 -44
- package/dist/JsonSchema/TypeMetadata.d.ts +45 -45
- package/dist/JsonSchema/TypeMetadata.js +170 -170
- package/dist/JsonSchema/index.d.ts +7 -7
- package/dist/JsonSchema/index.js +6 -6
- package/dist/Localisation/ILocalisationService.d.ts +11 -11
- package/dist/Localisation/ILocalisationService.js +1 -1
- package/dist/Localisation/LocalisationService.d.ts +4 -4
- package/dist/Localisation/LocalisationService.js +17 -17
- package/dist/Localisation/index.d.ts +1 -1
- package/dist/Localisation/index.js +1 -1
- package/dist/Misc.d.ts +6 -6
- package/dist/Misc.js +6 -6
- package/dist/Model/BaseModels/AuditValues.d.ts +12 -12
- package/dist/Model/BaseModels/AuditValues.js +46 -48
- package/dist/Model/BaseModels/CriteriaBase.d.ts +18 -16
- package/dist/Model/BaseModels/CriteriaBase.js +45 -34
- package/dist/Model/BaseModels/FileDescriptorBase.d.ts +12 -12
- package/dist/Model/BaseModels/FileDescriptorBase.js +22 -22
- package/dist/Model/BaseModels/ReasonedUserEvent.d.ts +5 -4
- package/dist/Model/BaseModels/ReasonedUserEvent.js +23 -19
- package/dist/Model/BaseModels/UserEvent.d.ts +9 -8
- package/dist/Model/BaseModels/UserEvent.js +36 -32
- package/dist/Model/BindableBase.d.ts +46 -40
- package/dist/Model/BindableBase.js +79 -76
- package/dist/Model/Decorators.d.ts +47 -44
- package/dist/Model/Decorators.js +182 -177
- package/dist/Model/EnumHelper.d.ts +54 -54
- package/dist/Model/EnumHelper.js +104 -100
- package/dist/Model/IAutoRunner.d.ts +5 -5
- package/dist/Model/IAutoRunner.js +1 -1
- package/dist/Model/IModelBase.d.ts +92 -79
- package/dist/Model/IModelBase.js +1 -1
- package/dist/Model/IModelCreatorBase.d.ts +9 -9
- package/dist/Model/IModelCreatorBase.js +1 -1
- package/dist/Model/List.d.ts +79 -77
- package/dist/Model/List.js +208 -198
- package/dist/Model/LookupBase.d.ts +13 -6
- package/dist/Model/LookupBase.js +19 -10
- package/dist/Model/Misc.d.ts +83 -81
- package/dist/Model/Misc.js +59 -59
- package/dist/Model/ModelBase.d.ts +88 -86
- package/dist/Model/ModelBase.js +182 -180
- package/dist/Model/ModelCreatorBase.d.ts +24 -23
- package/dist/Model/ModelCreatorBase.js +92 -92
- package/dist/Model/ModelFieldInfo.d.ts +29 -12
- package/dist/Model/ModelFieldInfo.js +35 -26
- package/dist/Model/ModelGraphTraverser.d.ts +35 -35
- package/dist/Model/ModelGraphTraverser.js +101 -99
- package/dist/Model/NeoModel.d.ts +6 -6
- package/dist/Model/NeoModel.js +13 -13
- package/dist/Model/NeoTypeInfo.d.ts +52 -41
- package/dist/Model/NeoTypeInfo.js +300 -250
- package/dist/Model/ObservableProperty.d.ts +8 -8
- package/dist/Model/ObservableProperty.js +41 -41
- package/dist/Model/ObservableValue.d.ts +9 -9
- package/dist/Model/ObservableValue.js +25 -26
- package/dist/Model/PropertyInfo.d.ts +83 -81
- package/dist/Model/PropertyInfo.js +138 -137
- package/dist/Model/PropertyInstance.d.ts +84 -48
- package/dist/Model/PropertyInstance.js +173 -113
- package/dist/Model/ValueObject.d.ts +3 -3
- package/dist/Model/ValueObject.js +10 -10
- package/dist/Model/index.d.ts +15 -14
- package/dist/Model/index.js +13 -12
- package/dist/NumberUtils.d.ts +63 -49
- package/dist/NumberUtils.js +247 -197
- package/dist/Routing/IMenuItemProvider.d.ts +9 -9
- package/dist/Routing/IMenuItemProvider.js +1 -1
- package/dist/Routing/IMenuRoute.d.ts +18 -18
- package/dist/Routing/IMenuRoute.js +1 -1
- package/dist/Routing/INavigationHelper.d.ts +7 -7
- package/dist/Routing/INavigationHelper.js +1 -1
- package/dist/Routing/IPageLeaveHandler.d.ts +23 -23
- package/dist/Routing/IPageLeaveHandler.js +7 -7
- package/dist/Routing/IRoute.d.ts +27 -27
- package/dist/Routing/IRoute.js +1 -1
- package/dist/Routing/IRouteSecurityService.d.ts +14 -14
- package/dist/Routing/IRouteSecurityService.js +1 -1
- package/dist/Routing/MenuItemProvider.d.ts +17 -17
- package/dist/Routing/MenuItemProvider.js +53 -54
- package/dist/Routing/RouteSecurityService.d.ts +18 -18
- package/dist/Routing/RouteSecurityService.js +35 -36
- package/dist/Routing/index.d.ts +7 -7
- package/dist/Routing/index.js +3 -3
- package/dist/Security/IAuthenticationService.d.ts +41 -36
- package/dist/Security/IAuthenticationService.js +1 -1
- package/dist/Security/IAuthorisationService.d.ts +11 -11
- package/dist/Security/IAuthorisationService.js +1 -1
- package/dist/Security/ILoginErrorHandler.d.ts +4 -4
- package/dist/Security/ILoginErrorHandler.js +1 -1
- package/dist/Security/ISecurityService.d.ts +10 -10
- package/dist/Security/ISecurityService.js +1 -1
- package/dist/Security/IUser.d.ts +10 -10
- package/dist/Security/IUser.js +1 -1
- package/dist/Security/IUserRole.d.ts +6 -6
- package/dist/Security/IUserRole.js +1 -1
- package/dist/Security/LoginErrorHandler.d.ts +15 -15
- package/dist/Security/LoginErrorHandler.js +97 -98
- package/dist/Security/Oidc/OidcAuthService.d.ts +67 -60
- package/dist/Security/Oidc/OidcAuthService.js +216 -189
- package/dist/Security/Oidc/OidcTypes.d.ts +46 -29
- package/dist/Security/Oidc/OidcTypes.js +1 -1
- package/dist/Security/Oidc/OidcUser.d.ts +9 -9
- package/dist/Security/Oidc/OidcUser.js +33 -33
- package/dist/Security/SecurityService.d.ts +12 -12
- package/dist/Security/SecurityService.js +33 -34
- package/dist/Security/SignInResult.d.ts +13 -13
- package/dist/Security/SignInResult.js +8 -8
- package/dist/Security/User.d.ts +12 -12
- package/dist/Security/User.js +24 -24
- package/dist/Security/index.d.ts +10 -10
- package/dist/Security/index.js +5 -5
- package/dist/Settings.d.ts +71 -57
- package/dist/Settings.js +100 -87
- package/dist/SignalR/HubBase.d.ts +70 -70
- package/dist/SignalR/HubBase.js +164 -164
- package/dist/SignalR/HubReceiver.d.ts +11 -11
- package/dist/SignalR/HubReceiver.js +25 -25
- package/dist/SignalR/HubSubscription.d.ts +12 -12
- package/dist/SignalR/HubSubscription.js +14 -14
- package/dist/SignalR/index.d.ts +3 -3
- package/dist/SignalR/index.js +1 -1
- package/dist/StringUtils.d.ts +7 -7
- package/dist/StringUtils.js +24 -24
- package/dist/Utils.d.ts +81 -80
- package/dist/Utils.js +220 -218
- package/dist/Validation/Decorators.d.ts +12 -12
- package/dist/Validation/Decorators.js +52 -52
- package/dist/Validation/DisplayHelper.d.ts +20 -19
- package/dist/Validation/DisplayHelper.js +104 -104
- package/dist/Validation/Misc.d.ts +10 -10
- package/dist/Validation/Misc.js +11 -11
- package/dist/Validation/ModelProxy.d.ts +20 -20
- package/dist/Validation/ModelProxy.js +46 -46
- package/dist/Validation/RuleContext.d.ts +86 -86
- package/dist/Validation/RuleContext.js +130 -130
- package/dist/Validation/Rules.d.ts +70 -70
- package/dist/Validation/Rules.js +177 -177
- package/dist/Validation/ValidationHelpers.d.ts +12 -12
- package/dist/Validation/ValidationHelpers.js +57 -57
- package/dist/Validation/ValidationRules.d.ts +18 -18
- package/dist/Validation/ValidationRules.js +34 -34
- package/dist/Validation/ValidationState.d.ts +42 -42
- package/dist/Validation/ValidationState.js +74 -74
- package/dist/Validation/Validators/IModelValidator.d.ts +28 -24
- package/dist/Validation/Validators/IModelValidator.js +1 -1
- package/dist/Validation/Validators/IPropertyValidator.d.ts +21 -21
- package/dist/Validation/Validators/IPropertyValidator.js +15 -15
- package/dist/Validation/Validators/ModelValidator.d.ts +46 -45
- package/dist/Validation/Validators/ModelValidator.js +143 -137
- package/dist/Validation/Validators/PropertyValidator.d.ts +21 -21
- package/dist/Validation/Validators/PropertyValidator.js +64 -67
- package/dist/Validation/Validators/RuleValidator.d.ts +19 -19
- package/dist/Validation/Validators/RuleValidator.js +51 -55
- package/dist/Validation/index.d.ts +9 -9
- package/dist/Validation/index.js +7 -7
- package/dist/Views/IViewBase.d.ts +5 -5
- package/dist/Views/IViewBase.js +1 -1
- package/dist/index.d.ts +37 -36
- package/dist/index.js +44 -43
- package/package.json +11 -10
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
import * as signalR from '@microsoft/signalr';
|
|
2
|
-
import { IHubReceiver } from "./HubReceiver";
|
|
3
|
-
import { AppServices } from '../';
|
|
4
|
-
import { IConnection, ConnectionState } from '../ConnectionManager';
|
|
5
|
-
export interface IHubBase extends IConnection {
|
|
6
|
-
/**
|
|
7
|
-
* Connects to the server hub if the connection state is disconnected.
|
|
8
|
-
* Returns false if the hub is already connected.
|
|
9
|
-
*/
|
|
10
|
-
connect(): Promise<boolean>;
|
|
11
|
-
/**
|
|
12
|
-
* Connects to the server hub if the user is authenticated, and the connection state is disconnected.
|
|
13
|
-
* Returns true if the user is authenticated and there is no existing connection. I.e. the connection is opened.
|
|
14
|
-
*/
|
|
15
|
-
connectIfAuthenticated(): Promise<boolean>;
|
|
16
|
-
disconnect(): Promise<void>;
|
|
17
|
-
/** Subscription for connection events. Value is true for initial connect and false for reconnect. */
|
|
18
|
-
readonly onConnected: IHubReceiver<boolean>;
|
|
19
|
-
/** Subscription for disconnection events. Not called during a reconnection. */
|
|
20
|
-
readonly onDisconnected: IHubReceiver<Error | undefined>;
|
|
21
|
-
}
|
|
22
|
-
export interface IHubOptions {
|
|
23
|
-
/** True if you want the client to try reconnect on disconnection, or initial connection. True by default. */
|
|
24
|
-
reconnectOnDisconnect: boolean;
|
|
25
|
-
/** No of times to try connect (intially and on reconnect). (Default is 3) */
|
|
26
|
-
retryCount: number;
|
|
27
|
-
/** Reconnect interval in milliseconds. (Default is 30s) */
|
|
28
|
-
retryInterval: number;
|
|
29
|
-
/** Log level in development. Defaults to Debug. */
|
|
30
|
-
developmentLogLevel: signalR.LogLevel;
|
|
31
|
-
/** Log level in production. Defaults to Error. */
|
|
32
|
-
releaseLogLevel: signalR.LogLevel;
|
|
33
|
-
}
|
|
34
|
-
export declare class HubBase implements IHubBase {
|
|
35
|
-
private url;
|
|
36
|
-
private authenticationService;
|
|
37
|
-
private connection;
|
|
38
|
-
private receivers;
|
|
39
|
-
private connectPush;
|
|
40
|
-
private disconnectedPush;
|
|
41
|
-
private _connectionState;
|
|
42
|
-
private readonly options;
|
|
43
|
-
/**
|
|
44
|
-
* Sets up the signalR hub.
|
|
45
|
-
* @param url Hub endpoint.
|
|
46
|
-
* @param options Hub options.
|
|
47
|
-
* @param authenticationService Optional auth service if you don't want it to get from DI.
|
|
48
|
-
*/
|
|
49
|
-
constructor(url: string, options?: Partial<IHubOptions>, configModel?: AppServices.IConfigModel, authenticationService?: import("../Security").IAuthenticationService);
|
|
50
|
-
readonly onDisconnected: IHubReceiver<Error | undefined>;
|
|
51
|
-
readonly onConnected: IHubReceiver<boolean>;
|
|
52
|
-
get connectionState(): ConnectionState;
|
|
53
|
-
connect(): Promise<boolean>;
|
|
54
|
-
connectIfAuthenticated(): Promise<boolean>;
|
|
55
|
-
disconnect(): Promise<void>;
|
|
56
|
-
/**
|
|
57
|
-
* Invokes a method on the server hub, returning a promise.
|
|
58
|
-
* The Promise is resolved with the return value (if any) when the method on the server returns.
|
|
59
|
-
* If the method on the server throws an error, the Promise is rejected with the error message.
|
|
60
|
-
*/
|
|
61
|
-
protected invoke<T>(methodName: string, ...args: any[]): Promise<T>;
|
|
62
|
-
/**
|
|
63
|
-
* Invokes a method on the server hub, returning a promise.
|
|
64
|
-
* Note: Using send doesn't wait until the server has received the message.
|
|
65
|
-
* Consequently, it's not possible to return data or errors from the server.
|
|
66
|
-
* Use with caution.
|
|
67
|
-
*/
|
|
68
|
-
protected send(methodName: string, ...args: any[]): Promise<void>;
|
|
69
|
-
protected registerReceiver<T>(methodName: string): IHubReceiver<T>;
|
|
70
|
-
}
|
|
1
|
+
import * as signalR from '@microsoft/signalr';
|
|
2
|
+
import { IHubReceiver } from "./HubReceiver";
|
|
3
|
+
import { AppServices } from '../';
|
|
4
|
+
import { IConnection, ConnectionState } from '../ConnectionManager';
|
|
5
|
+
export interface IHubBase extends IConnection {
|
|
6
|
+
/**
|
|
7
|
+
* Connects to the server hub if the connection state is disconnected.
|
|
8
|
+
* Returns false if the hub is already connected.
|
|
9
|
+
*/
|
|
10
|
+
connect(): Promise<boolean>;
|
|
11
|
+
/**
|
|
12
|
+
* Connects to the server hub if the user is authenticated, and the connection state is disconnected.
|
|
13
|
+
* Returns true if the user is authenticated and there is no existing connection. I.e. the connection is opened.
|
|
14
|
+
*/
|
|
15
|
+
connectIfAuthenticated(): Promise<boolean>;
|
|
16
|
+
disconnect(): Promise<void>;
|
|
17
|
+
/** Subscription for connection events. Value is true for initial connect and false for reconnect. */
|
|
18
|
+
readonly onConnected: IHubReceiver<boolean>;
|
|
19
|
+
/** Subscription for disconnection events. Not called during a reconnection. */
|
|
20
|
+
readonly onDisconnected: IHubReceiver<Error | undefined>;
|
|
21
|
+
}
|
|
22
|
+
export interface IHubOptions {
|
|
23
|
+
/** True if you want the client to try reconnect on disconnection, or initial connection. True by default. */
|
|
24
|
+
reconnectOnDisconnect: boolean;
|
|
25
|
+
/** No of times to try connect (intially and on reconnect). (Default is 3) */
|
|
26
|
+
retryCount: number;
|
|
27
|
+
/** Reconnect interval in milliseconds. (Default is 30s) */
|
|
28
|
+
retryInterval: number;
|
|
29
|
+
/** Log level in development. Defaults to Debug. */
|
|
30
|
+
developmentLogLevel: signalR.LogLevel;
|
|
31
|
+
/** Log level in production. Defaults to Error. */
|
|
32
|
+
releaseLogLevel: signalR.LogLevel;
|
|
33
|
+
}
|
|
34
|
+
export declare class HubBase implements IHubBase {
|
|
35
|
+
private url;
|
|
36
|
+
private authenticationService;
|
|
37
|
+
private connection;
|
|
38
|
+
private receivers;
|
|
39
|
+
private connectPush;
|
|
40
|
+
private disconnectedPush;
|
|
41
|
+
private _connectionState;
|
|
42
|
+
private readonly options;
|
|
43
|
+
/**
|
|
44
|
+
* Sets up the signalR hub.
|
|
45
|
+
* @param url Hub endpoint.
|
|
46
|
+
* @param options Hub options.
|
|
47
|
+
* @param authenticationService Optional auth service if you don't want it to get from DI.
|
|
48
|
+
*/
|
|
49
|
+
constructor(url: string, options?: Partial<IHubOptions>, configModel?: AppServices.IConfigModel, authenticationService?: import("../Security").IAuthenticationService);
|
|
50
|
+
readonly onDisconnected: IHubReceiver<Error | undefined>;
|
|
51
|
+
readonly onConnected: IHubReceiver<boolean>;
|
|
52
|
+
get connectionState(): ConnectionState;
|
|
53
|
+
connect(): Promise<boolean>;
|
|
54
|
+
connectIfAuthenticated(): Promise<boolean>;
|
|
55
|
+
disconnect(): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Invokes a method on the server hub, returning a promise.
|
|
58
|
+
* The Promise is resolved with the return value (if any) when the method on the server returns.
|
|
59
|
+
* If the method on the server throws an error, the Promise is rejected with the error message.
|
|
60
|
+
*/
|
|
61
|
+
protected invoke<T>(methodName: string, ...args: any[]): Promise<T>;
|
|
62
|
+
/**
|
|
63
|
+
* Invokes a method on the server hub, returning a promise.
|
|
64
|
+
* Note: Using send doesn't wait until the server has received the message.
|
|
65
|
+
* Consequently, it's not possible to return data or errors from the server.
|
|
66
|
+
* Use with caution.
|
|
67
|
+
*/
|
|
68
|
+
protected send(methodName: string, ...args: any[]): Promise<void>;
|
|
69
|
+
protected registerReceiver<T>(methodName: string): IHubReceiver<T>;
|
|
70
|
+
}
|
package/dist/SignalR/HubBase.js
CHANGED
|
@@ -1,164 +1,164 @@
|
|
|
1
|
-
import { __awaiter, __generator, __spreadArray } from "tslib";
|
|
2
|
-
import * as signalR from '@microsoft/signalr';
|
|
3
|
-
import HubReceiver from "./HubReceiver";
|
|
4
|
-
import { AppServices, Misc, TaskRunner } from '../';
|
|
5
|
-
import { ConnectionState } from '../ConnectionManager';
|
|
6
|
-
import { ObservableValue } from '../Model';
|
|
7
|
-
import { Utils } from '../Utils';
|
|
8
|
-
var HubBase = /** @class */ (function () {
|
|
9
|
-
/**
|
|
10
|
-
* Sets up the signalR hub.
|
|
11
|
-
* @param url Hub endpoint.
|
|
12
|
-
* @param options Hub options.
|
|
13
|
-
* @param authenticationService Optional auth service if you don't want it to get from DI.
|
|
14
|
-
*/
|
|
15
|
-
function HubBase(url, options, configModel, authenticationService) {
|
|
16
|
-
if (configModel === void 0) { configModel = Misc.Globals.appService.get(AppServices.NeoTypes.Config.ConfigModel); }
|
|
17
|
-
if (authenticationService === void 0) { authenticationService = Misc.Globals.appService.get(AppServices.NeoTypes.Security.AuthenticationService); }
|
|
18
|
-
var _this = this;
|
|
19
|
-
this.url = url;
|
|
20
|
-
this.authenticationService = authenticationService;
|
|
21
|
-
this.receivers = new Map();
|
|
22
|
-
this._connectionState = new ObservableValue(ConnectionState.NotStarted);
|
|
23
|
-
this.options = Utils.populatePartialWithDefaults(options, { reconnectOnDisconnect: true, retryCount: 3, retryInterval: 30000, developmentLogLevel: signalR.LogLevel.Debug, releaseLogLevel: signalR.LogLevel.Error });
|
|
24
|
-
var builder = new signalR.HubConnectionBuilder()
|
|
25
|
-
.withUrl(this.url, {
|
|
26
|
-
accessTokenFactory: function () { return _this.authenticationService.user ? _this.authenticationService.user.accessToken : ""; }
|
|
27
|
-
})
|
|
28
|
-
.configureLogging(configModel.isDevelopment ? this.options.developmentLogLevel : this.options.releaseLogLevel);
|
|
29
|
-
if (this.options.reconnectOnDisconnect) {
|
|
30
|
-
var retries = [];
|
|
31
|
-
for (var i = 0; i < this.options.retryCount; i++) {
|
|
32
|
-
retries.push(this.options.retryInterval);
|
|
33
|
-
}
|
|
34
|
-
builder = builder.withAutomaticReconnect(retries);
|
|
35
|
-
}
|
|
36
|
-
this.connection = builder.build();
|
|
37
|
-
// These allow consumers of this service to subscribe to connection events.
|
|
38
|
-
this.onDisconnected = new HubReceiver(function (push) {
|
|
39
|
-
_this.disconnectedPush = push;
|
|
40
|
-
});
|
|
41
|
-
this.onConnected = new HubReceiver(function (push) {
|
|
42
|
-
_this.connectPush = push;
|
|
43
|
-
});
|
|
44
|
-
// These are used internally
|
|
45
|
-
this.connection.onreconnected(function () {
|
|
46
|
-
_this._connectionState.value = ConnectionState.Connected;
|
|
47
|
-
_this.connectPush(false);
|
|
48
|
-
});
|
|
49
|
-
this.connection.onreconnecting(function () {
|
|
50
|
-
_this._connectionState.value = ConnectionState.ReConnecting;
|
|
51
|
-
});
|
|
52
|
-
this.connection.onclose(function (error) {
|
|
53
|
-
_this._connectionState.value = ConnectionState.Disconnected;
|
|
54
|
-
_this.disconnectedPush(error);
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
Object.defineProperty(HubBase.prototype, "connectionState", {
|
|
58
|
-
get: function () {
|
|
59
|
-
return this._connectionState.value;
|
|
60
|
-
},
|
|
61
|
-
enumerable: false,
|
|
62
|
-
configurable: true
|
|
63
|
-
});
|
|
64
|
-
HubBase.prototype.connect = function () {
|
|
65
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
66
|
-
var i, e_1;
|
|
67
|
-
return __generator(this, function (_a) {
|
|
68
|
-
switch (_a.label) {
|
|
69
|
-
case 0:
|
|
70
|
-
if (!(this.connection.state === signalR.HubConnectionState.Disconnected)) return [3 /*break*/, 8];
|
|
71
|
-
i = 0;
|
|
72
|
-
_a.label = 1;
|
|
73
|
-
case 1:
|
|
74
|
-
if (!(i < this.options.retryCount)) return [3 /*break*/, 8];
|
|
75
|
-
_a.label = 2;
|
|
76
|
-
case 2:
|
|
77
|
-
_a.trys.push([2, 4, , 5]);
|
|
78
|
-
return [4 /*yield*/, this.connection.start()];
|
|
79
|
-
case 3:
|
|
80
|
-
_a.sent();
|
|
81
|
-
this._connectionState.value = ConnectionState.Connected;
|
|
82
|
-
this.connectPush(true);
|
|
83
|
-
return [2 /*return*/, true];
|
|
84
|
-
case 4:
|
|
85
|
-
e_1 = _a.sent();
|
|
86
|
-
if (i >= this.options.retryCount) {
|
|
87
|
-
this._connectionState.value = ConnectionState.Disconnected;
|
|
88
|
-
throw e_1;
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
this._connectionState.value = ConnectionState.ReConnecting;
|
|
92
|
-
}
|
|
93
|
-
return [3 /*break*/, 5];
|
|
94
|
-
case 5: return [4 /*yield*/, TaskRunner.delay(this.options.retryInterval)];
|
|
95
|
-
case 6:
|
|
96
|
-
_a.sent();
|
|
97
|
-
_a.label = 7;
|
|
98
|
-
case 7:
|
|
99
|
-
i++;
|
|
100
|
-
return [3 /*break*/, 1];
|
|
101
|
-
case 8: return [2 /*return*/, false];
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
};
|
|
106
|
-
HubBase.prototype.connectIfAuthenticated = function () {
|
|
107
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
108
|
-
return __generator(this, function (_a) {
|
|
109
|
-
if (this.authenticationService.isAuthenticated) {
|
|
110
|
-
return [2 /*return*/, this.connect()];
|
|
111
|
-
}
|
|
112
|
-
else {
|
|
113
|
-
return [2 /*return*/, Promise.resolve(false)];
|
|
114
|
-
}
|
|
115
|
-
return [2 /*return*/];
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
};
|
|
119
|
-
HubBase.prototype.disconnect = function () {
|
|
120
|
-
return this.connection.stop();
|
|
121
|
-
};
|
|
122
|
-
/**
|
|
123
|
-
* Invokes a method on the server hub, returning a promise.
|
|
124
|
-
* The Promise is resolved with the return value (if any) when the method on the server returns.
|
|
125
|
-
* If the method on the server throws an error, the Promise is rejected with the error message.
|
|
126
|
-
*/
|
|
127
|
-
HubBase.prototype.invoke = function (methodName) {
|
|
128
|
-
var _a;
|
|
129
|
-
var args = [];
|
|
130
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
131
|
-
args[_i - 1] = arguments[_i];
|
|
132
|
-
}
|
|
133
|
-
return (_a = this.connection).invoke.apply(_a, __spreadArray([methodName], args, false));
|
|
134
|
-
};
|
|
135
|
-
/**
|
|
136
|
-
* Invokes a method on the server hub, returning a promise.
|
|
137
|
-
* Note: Using send doesn't wait until the server has received the message.
|
|
138
|
-
* Consequently, it's not possible to return data or errors from the server.
|
|
139
|
-
* Use with caution.
|
|
140
|
-
*/
|
|
141
|
-
HubBase.prototype.send = function (methodName) {
|
|
142
|
-
var _a;
|
|
143
|
-
var args = [];
|
|
144
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
145
|
-
args[_i - 1] = arguments[_i];
|
|
146
|
-
}
|
|
147
|
-
return (_a = this.connection).send.apply(_a, __spreadArray([methodName], args, false));
|
|
148
|
-
};
|
|
149
|
-
HubBase.prototype.registerReceiver = function (methodName) {
|
|
150
|
-
var _this = this;
|
|
151
|
-
var receiver = this.receivers.get(methodName);
|
|
152
|
-
if (!receiver) {
|
|
153
|
-
receiver = new HubReceiver(function (push) {
|
|
154
|
-
_this.connection.on(methodName, function (value) {
|
|
155
|
-
push(value);
|
|
156
|
-
});
|
|
157
|
-
});
|
|
158
|
-
this.receivers.set(methodName, receiver);
|
|
159
|
-
}
|
|
160
|
-
return receiver;
|
|
161
|
-
};
|
|
162
|
-
return HubBase;
|
|
163
|
-
}());
|
|
164
|
-
export { HubBase };
|
|
1
|
+
import { __awaiter, __generator, __spreadArray } from "tslib";
|
|
2
|
+
import * as signalR from '@microsoft/signalr';
|
|
3
|
+
import HubReceiver from "./HubReceiver";
|
|
4
|
+
import { AppServices, Misc, TaskRunner } from '../';
|
|
5
|
+
import { ConnectionState } from '../ConnectionManager';
|
|
6
|
+
import { ObservableValue } from '../Model';
|
|
7
|
+
import { Utils } from '../Utils';
|
|
8
|
+
var HubBase = /** @class */ (function () {
|
|
9
|
+
/**
|
|
10
|
+
* Sets up the signalR hub.
|
|
11
|
+
* @param url Hub endpoint.
|
|
12
|
+
* @param options Hub options.
|
|
13
|
+
* @param authenticationService Optional auth service if you don't want it to get from DI.
|
|
14
|
+
*/
|
|
15
|
+
function HubBase(url, options, configModel, authenticationService) {
|
|
16
|
+
if (configModel === void 0) { configModel = Misc.Globals.appService.get(AppServices.NeoTypes.Config.ConfigModel); }
|
|
17
|
+
if (authenticationService === void 0) { authenticationService = Misc.Globals.appService.get(AppServices.NeoTypes.Security.AuthenticationService); }
|
|
18
|
+
var _this = this;
|
|
19
|
+
this.url = url;
|
|
20
|
+
this.authenticationService = authenticationService;
|
|
21
|
+
this.receivers = new Map();
|
|
22
|
+
this._connectionState = new ObservableValue(ConnectionState.NotStarted);
|
|
23
|
+
this.options = Utils.populatePartialWithDefaults(options, { reconnectOnDisconnect: true, retryCount: 3, retryInterval: 30000, developmentLogLevel: signalR.LogLevel.Debug, releaseLogLevel: signalR.LogLevel.Error });
|
|
24
|
+
var builder = new signalR.HubConnectionBuilder()
|
|
25
|
+
.withUrl(this.url, {
|
|
26
|
+
accessTokenFactory: function () { return _this.authenticationService.user ? _this.authenticationService.user.accessToken : ""; }
|
|
27
|
+
})
|
|
28
|
+
.configureLogging(configModel.isDevelopment ? this.options.developmentLogLevel : this.options.releaseLogLevel);
|
|
29
|
+
if (this.options.reconnectOnDisconnect) {
|
|
30
|
+
var retries = [];
|
|
31
|
+
for (var i = 0; i < this.options.retryCount; i++) {
|
|
32
|
+
retries.push(this.options.retryInterval);
|
|
33
|
+
}
|
|
34
|
+
builder = builder.withAutomaticReconnect(retries);
|
|
35
|
+
}
|
|
36
|
+
this.connection = builder.build();
|
|
37
|
+
// These allow consumers of this service to subscribe to connection events.
|
|
38
|
+
this.onDisconnected = new HubReceiver(function (push) {
|
|
39
|
+
_this.disconnectedPush = push;
|
|
40
|
+
});
|
|
41
|
+
this.onConnected = new HubReceiver(function (push) {
|
|
42
|
+
_this.connectPush = push;
|
|
43
|
+
});
|
|
44
|
+
// These are used internally
|
|
45
|
+
this.connection.onreconnected(function () {
|
|
46
|
+
_this._connectionState.value = ConnectionState.Connected;
|
|
47
|
+
_this.connectPush(false);
|
|
48
|
+
});
|
|
49
|
+
this.connection.onreconnecting(function () {
|
|
50
|
+
_this._connectionState.value = ConnectionState.ReConnecting;
|
|
51
|
+
});
|
|
52
|
+
this.connection.onclose(function (error) {
|
|
53
|
+
_this._connectionState.value = ConnectionState.Disconnected;
|
|
54
|
+
_this.disconnectedPush(error);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
Object.defineProperty(HubBase.prototype, "connectionState", {
|
|
58
|
+
get: function () {
|
|
59
|
+
return this._connectionState.value;
|
|
60
|
+
},
|
|
61
|
+
enumerable: false,
|
|
62
|
+
configurable: true
|
|
63
|
+
});
|
|
64
|
+
HubBase.prototype.connect = function () {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
66
|
+
var i, e_1;
|
|
67
|
+
return __generator(this, function (_a) {
|
|
68
|
+
switch (_a.label) {
|
|
69
|
+
case 0:
|
|
70
|
+
if (!(this.connection.state === signalR.HubConnectionState.Disconnected)) return [3 /*break*/, 8];
|
|
71
|
+
i = 0;
|
|
72
|
+
_a.label = 1;
|
|
73
|
+
case 1:
|
|
74
|
+
if (!(i < this.options.retryCount)) return [3 /*break*/, 8];
|
|
75
|
+
_a.label = 2;
|
|
76
|
+
case 2:
|
|
77
|
+
_a.trys.push([2, 4, , 5]);
|
|
78
|
+
return [4 /*yield*/, this.connection.start()];
|
|
79
|
+
case 3:
|
|
80
|
+
_a.sent();
|
|
81
|
+
this._connectionState.value = ConnectionState.Connected;
|
|
82
|
+
this.connectPush(true);
|
|
83
|
+
return [2 /*return*/, true];
|
|
84
|
+
case 4:
|
|
85
|
+
e_1 = _a.sent();
|
|
86
|
+
if (i >= this.options.retryCount) {
|
|
87
|
+
this._connectionState.value = ConnectionState.Disconnected;
|
|
88
|
+
throw e_1;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this._connectionState.value = ConnectionState.ReConnecting;
|
|
92
|
+
}
|
|
93
|
+
return [3 /*break*/, 5];
|
|
94
|
+
case 5: return [4 /*yield*/, TaskRunner.delay(this.options.retryInterval)];
|
|
95
|
+
case 6:
|
|
96
|
+
_a.sent();
|
|
97
|
+
_a.label = 7;
|
|
98
|
+
case 7:
|
|
99
|
+
i++;
|
|
100
|
+
return [3 /*break*/, 1];
|
|
101
|
+
case 8: return [2 /*return*/, false];
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
};
|
|
106
|
+
HubBase.prototype.connectIfAuthenticated = function () {
|
|
107
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
108
|
+
return __generator(this, function (_a) {
|
|
109
|
+
if (this.authenticationService.isAuthenticated) {
|
|
110
|
+
return [2 /*return*/, this.connect()];
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
return [2 /*return*/, Promise.resolve(false)];
|
|
114
|
+
}
|
|
115
|
+
return [2 /*return*/];
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
HubBase.prototype.disconnect = function () {
|
|
120
|
+
return this.connection.stop();
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* Invokes a method on the server hub, returning a promise.
|
|
124
|
+
* The Promise is resolved with the return value (if any) when the method on the server returns.
|
|
125
|
+
* If the method on the server throws an error, the Promise is rejected with the error message.
|
|
126
|
+
*/
|
|
127
|
+
HubBase.prototype.invoke = function (methodName) {
|
|
128
|
+
var _a;
|
|
129
|
+
var args = [];
|
|
130
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
131
|
+
args[_i - 1] = arguments[_i];
|
|
132
|
+
}
|
|
133
|
+
return (_a = this.connection).invoke.apply(_a, __spreadArray([methodName], args, false));
|
|
134
|
+
};
|
|
135
|
+
/**
|
|
136
|
+
* Invokes a method on the server hub, returning a promise.
|
|
137
|
+
* Note: Using send doesn't wait until the server has received the message.
|
|
138
|
+
* Consequently, it's not possible to return data or errors from the server.
|
|
139
|
+
* Use with caution.
|
|
140
|
+
*/
|
|
141
|
+
HubBase.prototype.send = function (methodName) {
|
|
142
|
+
var _a;
|
|
143
|
+
var args = [];
|
|
144
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
145
|
+
args[_i - 1] = arguments[_i];
|
|
146
|
+
}
|
|
147
|
+
return (_a = this.connection).send.apply(_a, __spreadArray([methodName], args, false));
|
|
148
|
+
};
|
|
149
|
+
HubBase.prototype.registerReceiver = function (methodName) {
|
|
150
|
+
var _this = this;
|
|
151
|
+
var receiver = this.receivers.get(methodName);
|
|
152
|
+
if (!receiver) {
|
|
153
|
+
receiver = new HubReceiver(function (push) {
|
|
154
|
+
_this.connection.on(methodName, function (value) {
|
|
155
|
+
push(value);
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
this.receivers.set(methodName, receiver);
|
|
159
|
+
}
|
|
160
|
+
return receiver;
|
|
161
|
+
};
|
|
162
|
+
return HubBase;
|
|
163
|
+
}());
|
|
164
|
+
export { HubBase };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import Subscription, { IHubSubscription } from "./HubSubscription";
|
|
2
|
-
export interface IHubReceiver<T> {
|
|
3
|
-
subscribe(onReceive: (value: T) => void): IHubSubscription;
|
|
4
|
-
}
|
|
5
|
-
export default class HubReceiver<T> implements IHubReceiver<T> {
|
|
6
|
-
private subscriptions;
|
|
7
|
-
constructor(initializer: (onReceive: (value: T) => void) => void);
|
|
8
|
-
subscribe(onReceive: (value: T) => void): IHubSubscription;
|
|
9
|
-
unSubscribe(subscription: Subscription<T>): void;
|
|
10
|
-
private onReceive;
|
|
11
|
-
}
|
|
1
|
+
import Subscription, { IHubSubscription } from "./HubSubscription";
|
|
2
|
+
export interface IHubReceiver<T> {
|
|
3
|
+
subscribe(onReceive: (value: T) => void): IHubSubscription;
|
|
4
|
+
}
|
|
5
|
+
export default class HubReceiver<T> implements IHubReceiver<T> {
|
|
6
|
+
private subscriptions;
|
|
7
|
+
constructor(initializer: (onReceive: (value: T) => void) => void);
|
|
8
|
+
subscribe(onReceive: (value: T) => void): IHubSubscription;
|
|
9
|
+
unSubscribe(subscription: Subscription<T>): void;
|
|
10
|
+
private onReceive;
|
|
11
|
+
}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import Subscription from "./HubSubscription";
|
|
2
|
-
var HubReceiver = /** @class */ (function () {
|
|
3
|
-
function HubReceiver(initializer) {
|
|
4
|
-
this.subscriptions = [];
|
|
5
|
-
initializer(this.onReceive.bind(this));
|
|
6
|
-
}
|
|
7
|
-
HubReceiver.prototype.subscribe = function (onReceive) {
|
|
8
|
-
var subscription = new Subscription(this, onReceive);
|
|
9
|
-
this.subscriptions.push(subscription);
|
|
10
|
-
return subscription;
|
|
11
|
-
};
|
|
12
|
-
HubReceiver.prototype.unSubscribe = function (subscription) {
|
|
13
|
-
var index = this.subscriptions.indexOf(subscription);
|
|
14
|
-
this.subscriptions.splice(index, 1);
|
|
15
|
-
};
|
|
16
|
-
HubReceiver.prototype.onReceive = function (value) {
|
|
17
|
-
for (var _i = 0, _a = this.subscriptions; _i < _a.length; _i++) {
|
|
18
|
-
var subscription = _a[_i];
|
|
19
|
-
subscription.onReceive(value);
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
;
|
|
23
|
-
return HubReceiver;
|
|
24
|
-
}());
|
|
25
|
-
export default HubReceiver;
|
|
1
|
+
import Subscription from "./HubSubscription";
|
|
2
|
+
var HubReceiver = /** @class */ (function () {
|
|
3
|
+
function HubReceiver(initializer) {
|
|
4
|
+
this.subscriptions = [];
|
|
5
|
+
initializer(this.onReceive.bind(this));
|
|
6
|
+
}
|
|
7
|
+
HubReceiver.prototype.subscribe = function (onReceive) {
|
|
8
|
+
var subscription = new Subscription(this, onReceive);
|
|
9
|
+
this.subscriptions.push(subscription);
|
|
10
|
+
return subscription;
|
|
11
|
+
};
|
|
12
|
+
HubReceiver.prototype.unSubscribe = function (subscription) {
|
|
13
|
+
var index = this.subscriptions.indexOf(subscription);
|
|
14
|
+
this.subscriptions.splice(index, 1);
|
|
15
|
+
};
|
|
16
|
+
HubReceiver.prototype.onReceive = function (value) {
|
|
17
|
+
for (var _i = 0, _a = this.subscriptions; _i < _a.length; _i++) {
|
|
18
|
+
var subscription = _a[_i];
|
|
19
|
+
subscription.onReceive(value);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
;
|
|
23
|
+
return HubReceiver;
|
|
24
|
+
}());
|
|
25
|
+
export default HubReceiver;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { IDisposable } from "../Model/Misc";
|
|
2
|
-
import Receiver from "./HubReceiver";
|
|
3
|
-
export interface IHubSubscription extends IDisposable {
|
|
4
|
-
unSubscribe(): void;
|
|
5
|
-
}
|
|
6
|
-
export default class HubSubscription<T> implements IHubSubscription {
|
|
7
|
-
onReceive: (value: T) => void;
|
|
8
|
-
private receiver;
|
|
9
|
-
constructor(receiver: Receiver<T>, onReceive: (value: T) => void);
|
|
10
|
-
unSubscribe(): void;
|
|
11
|
-
dispose(): void;
|
|
12
|
-
}
|
|
1
|
+
import { IDisposable } from "../Model/Misc";
|
|
2
|
+
import Receiver from "./HubReceiver";
|
|
3
|
+
export interface IHubSubscription extends IDisposable {
|
|
4
|
+
unSubscribe(): void;
|
|
5
|
+
}
|
|
6
|
+
export default class HubSubscription<T> implements IHubSubscription {
|
|
7
|
+
onReceive: (value: T) => void;
|
|
8
|
+
private receiver;
|
|
9
|
+
constructor(receiver: Receiver<T>, onReceive: (value: T) => void);
|
|
10
|
+
unSubscribe(): void;
|
|
11
|
+
dispose(): void;
|
|
12
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
var HubSubscription = /** @class */ (function () {
|
|
2
|
-
function HubSubscription(receiver, onReceive) {
|
|
3
|
-
this.receiver = receiver;
|
|
4
|
-
this.onReceive = onReceive;
|
|
5
|
-
}
|
|
6
|
-
HubSubscription.prototype.unSubscribe = function () {
|
|
7
|
-
this.receiver.unSubscribe(this);
|
|
8
|
-
};
|
|
9
|
-
HubSubscription.prototype.dispose = function () {
|
|
10
|
-
this.unSubscribe();
|
|
11
|
-
};
|
|
12
|
-
return HubSubscription;
|
|
13
|
-
}());
|
|
14
|
-
export default HubSubscription;
|
|
1
|
+
var HubSubscription = /** @class */ (function () {
|
|
2
|
+
function HubSubscription(receiver, onReceive) {
|
|
3
|
+
this.receiver = receiver;
|
|
4
|
+
this.onReceive = onReceive;
|
|
5
|
+
}
|
|
6
|
+
HubSubscription.prototype.unSubscribe = function () {
|
|
7
|
+
this.receiver.unSubscribe(this);
|
|
8
|
+
};
|
|
9
|
+
HubSubscription.prototype.dispose = function () {
|
|
10
|
+
this.unSubscribe();
|
|
11
|
+
};
|
|
12
|
+
return HubSubscription;
|
|
13
|
+
}());
|
|
14
|
+
export default HubSubscription;
|
package/dist/SignalR/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { IHubBase, HubBase } from './HubBase';
|
|
2
|
-
export { IHubReceiver } from './HubReceiver';
|
|
3
|
-
export { IHubSubscription } from './HubSubscription';
|
|
1
|
+
export { IHubBase, HubBase } from './HubBase';
|
|
2
|
+
export { IHubReceiver } from './HubReceiver';
|
|
3
|
+
export { IHubSubscription } from './HubSubscription';
|
package/dist/SignalR/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { HubBase } from './HubBase';
|
|
1
|
+
export { HubBase } from './HubBase';
|
package/dist/StringUtils.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export default class StringUtils {
|
|
2
|
-
/** Will check if a string is null, undefined, empty or only whitespace */
|
|
3
|
-
static isNullOrWhitespace(input: string | null | undefined): boolean;
|
|
4
|
-
/** If 1 word, will return that word, otherwise will return comma separated words,
|
|
5
|
-
* until the last 2 which will be separated by ' and '*/
|
|
6
|
-
static commasAnd(words: string[]): string;
|
|
7
|
-
}
|
|
1
|
+
export default class StringUtils {
|
|
2
|
+
/** Will check if a string is null, undefined, empty or only whitespace */
|
|
3
|
+
static isNullOrWhitespace(input: string | null | undefined): boolean;
|
|
4
|
+
/** If 1 word, will return that word, otherwise will return comma separated words,
|
|
5
|
+
* until the last 2 which will be separated by ' and '*/
|
|
6
|
+
static commasAnd(words: string[]): string;
|
|
7
|
+
}
|