@openfin/core 33.76.31 → 33.76.38

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 (269) hide show
  1. package/OpenFin.d.ts +1 -1
  2. package/README.md +29 -4
  3. package/fin.d.ts +2 -2
  4. package/{src → out}/GlobalOpenFin.d.ts +1 -1
  5. package/out/mock-alpha.d.ts +16112 -0
  6. package/out/mock-beta.d.ts +16112 -0
  7. package/out/mock-public.d.ts +16112 -0
  8. package/out/mock.d.ts +16797 -0
  9. package/out/mock.js +17104 -0
  10. package/package.json +30 -23
  11. package/LICENSE +0 -13
  12. package/NOTICE +0 -16
  13. package/openfin-core-33.76.31.tgz +0 -0
  14. package/src/OpenFin.d.ts +0 -3080
  15. package/src/OpenFin.js +0 -2
  16. package/src/api/api-exposer/api-consumer.d.ts +0 -28
  17. package/src/api/api-exposer/api-consumer.js +0 -28
  18. package/src/api/api-exposer/api-exposer.d.ts +0 -35
  19. package/src/api/api-exposer/api-exposer.js +0 -38
  20. package/src/api/api-exposer/decorators.d.ts +0 -10
  21. package/src/api/api-exposer/decorators.js +0 -18
  22. package/src/api/api-exposer/index.d.ts +0 -4
  23. package/src/api/api-exposer/index.js +0 -20
  24. package/src/api/api-exposer/strategies/index.d.ts +0 -1
  25. package/src/api/api-exposer/strategies/index.js +0 -17
  26. package/src/api/api-exposer/strategies/openfin-channels/channels-consumer.d.ts +0 -14
  27. package/src/api/api-exposer/strategies/openfin-channels/channels-consumer.js +0 -20
  28. package/src/api/api-exposer/strategies/openfin-channels/channels-exposer.d.ts +0 -20
  29. package/src/api/api-exposer/strategies/openfin-channels/channels-exposer.js +0 -23
  30. package/src/api/api-exposer/strategies/openfin-channels/index.d.ts +0 -2
  31. package/src/api/api-exposer/strategies/openfin-channels/index.js +0 -18
  32. package/src/api/application/Factory.d.ts +0 -148
  33. package/src/api/application/Factory.js +0 -230
  34. package/src/api/application/Instance.d.ts +0 -321
  35. package/src/api/application/Instance.js +0 -453
  36. package/src/api/application/index.d.ts +0 -3
  37. package/src/api/application/index.js +0 -19
  38. package/src/api/base.d.ts +0 -48
  39. package/src/api/base.js +0 -177
  40. package/src/api/clipboard/index.d.ts +0 -92
  41. package/src/api/clipboard/index.js +0 -120
  42. package/src/api/events/application.d.ts +0 -146
  43. package/src/api/events/application.js +0 -2
  44. package/src/api/events/base.d.ts +0 -42
  45. package/src/api/events/base.js +0 -2
  46. package/src/api/events/channel.d.ts +0 -30
  47. package/src/api/events/channel.js +0 -2
  48. package/src/api/events/emitterMap.d.ts +0 -11
  49. package/src/api/events/emitterMap.js +0 -35
  50. package/src/api/events/eventAggregator.d.ts +0 -5
  51. package/src/api/events/eventAggregator.js +0 -35
  52. package/src/api/events/externalApplication.d.ts +0 -19
  53. package/src/api/events/externalApplication.js +0 -2
  54. package/src/api/events/frame.d.ts +0 -30
  55. package/src/api/events/frame.js +0 -2
  56. package/src/api/events/globalHotkey.d.ts +0 -20
  57. package/src/api/events/globalHotkey.js +0 -2
  58. package/src/api/events/platform.d.ts +0 -26
  59. package/src/api/events/platform.js +0 -2
  60. package/src/api/events/system.d.ts +0 -113
  61. package/src/api/events/system.js +0 -2
  62. package/src/api/events/typedEventEmitter.d.ts +0 -20
  63. package/src/api/events/typedEventEmitter.js +0 -2
  64. package/src/api/events/view.d.ts +0 -82
  65. package/src/api/events/view.js +0 -2
  66. package/src/api/events/webcontents.d.ts +0 -266
  67. package/src/api/events/webcontents.js +0 -2
  68. package/src/api/events/window.d.ts +0 -352
  69. package/src/api/events/window.js +0 -2
  70. package/src/api/external-application/Factory.d.ts +0 -27
  71. package/src/api/external-application/Factory.js +0 -40
  72. package/src/api/external-application/Instance.d.ts +0 -102
  73. package/src/api/external-application/Instance.js +0 -109
  74. package/src/api/external-application/index.d.ts +0 -3
  75. package/src/api/external-application/index.js +0 -19
  76. package/src/api/fin.d.ts +0 -51
  77. package/src/api/fin.js +0 -42
  78. package/src/api/frame/Factory.d.ts +0 -37
  79. package/src/api/frame/Factory.js +0 -69
  80. package/src/api/frame/Instance.d.ts +0 -123
  81. package/src/api/frame/Instance.js +0 -130
  82. package/src/api/frame/index.d.ts +0 -3
  83. package/src/api/frame/index.js +0 -19
  84. package/src/api/global-hotkey/index.d.ts +0 -38
  85. package/src/api/global-hotkey/index.js +0 -64
  86. package/src/api/interappbus/channel/channel.d.ts +0 -28
  87. package/src/api/interappbus/channel/channel.js +0 -77
  88. package/src/api/interappbus/channel/channels-docs.d.ts +0 -340
  89. package/src/api/interappbus/channel/channels-docs.js +0 -398
  90. package/src/api/interappbus/channel/client.d.ts +0 -24
  91. package/src/api/interappbus/channel/client.js +0 -89
  92. package/src/api/interappbus/channel/connection-manager.d.ts +0 -29
  93. package/src/api/interappbus/channel/connection-manager.js +0 -246
  94. package/src/api/interappbus/channel/index.d.ts +0 -25
  95. package/src/api/interappbus/channel/index.js +0 -169
  96. package/src/api/interappbus/channel/protocols/classic/message-receiver.d.ts +0 -13
  97. package/src/api/interappbus/channel/protocols/classic/message-receiver.js +0 -73
  98. package/src/api/interappbus/channel/protocols/classic/strategy.d.ts +0 -24
  99. package/src/api/interappbus/channel/protocols/classic/strategy.js +0 -101
  100. package/src/api/interappbus/channel/protocols/combined/strategy.d.ts +0 -20
  101. package/src/api/interappbus/channel/protocols/combined/strategy.js +0 -58
  102. package/src/api/interappbus/channel/protocols/index.d.ts +0 -47
  103. package/src/api/interappbus/channel/protocols/index.js +0 -2
  104. package/src/api/interappbus/channel/protocols/protocol-manager.d.ts +0 -10
  105. package/src/api/interappbus/channel/protocols/protocol-manager.js +0 -43
  106. package/src/api/interappbus/channel/protocols/rtc/endpoint.d.ts +0 -25
  107. package/src/api/interappbus/channel/protocols/rtc/endpoint.js +0 -141
  108. package/src/api/interappbus/channel/protocols/rtc/ice-manager.d.ts +0 -30
  109. package/src/api/interappbus/channel/protocols/rtc/ice-manager.js +0 -130
  110. package/src/api/interappbus/channel/protocols/rtc/strategy.d.ts +0 -24
  111. package/src/api/interappbus/channel/protocols/rtc/strategy.js +0 -85
  112. package/src/api/interappbus/channel/protocols/strategy-types.d.ts +0 -13
  113. package/src/api/interappbus/channel/protocols/strategy-types.js +0 -2
  114. package/src/api/interappbus/channel/protocols/strategy.d.ts +0 -17
  115. package/src/api/interappbus/channel/protocols/strategy.js +0 -2
  116. package/src/api/interappbus/channel/provider.d.ts +0 -34
  117. package/src/api/interappbus/channel/provider.js +0 -166
  118. package/src/api/interappbus/index.d.ts +0 -85
  119. package/src/api/interappbus/index.js +0 -175
  120. package/src/api/interop/Factory.d.ts +0 -37
  121. package/src/api/interop/Factory.js +0 -76
  122. package/src/api/interop/InteropBroker.d.ts +0 -437
  123. package/src/api/interop/InteropBroker.js +0 -1085
  124. package/src/api/interop/InteropClient.d.ts +0 -278
  125. package/src/api/interop/InteropClient.js +0 -459
  126. package/src/api/interop/SessionContextGroupBroker.d.ts +0 -27
  127. package/src/api/interop/SessionContextGroupBroker.js +0 -108
  128. package/src/api/interop/SessionContextGroupClient.d.ts +0 -21
  129. package/src/api/interop/SessionContextGroupClient.js +0 -86
  130. package/src/api/interop/fdc3/PrivateChannelClient.d.ts +0 -20
  131. package/src/api/interop/fdc3/PrivateChannelClient.js +0 -90
  132. package/src/api/interop/fdc3/PrivateChannelProvider.d.ts +0 -55
  133. package/src/api/interop/fdc3/PrivateChannelProvider.js +0 -276
  134. package/src/api/interop/fdc3/fdc3-1.2.d.ts +0 -208
  135. package/src/api/interop/fdc3/fdc3-1.2.js +0 -438
  136. package/src/api/interop/fdc3/fdc3-2.0.d.ts +0 -301
  137. package/src/api/interop/fdc3/fdc3-2.0.js +0 -482
  138. package/src/api/interop/fdc3/fdc3.d.ts +0 -12
  139. package/src/api/interop/fdc3/fdc3.js +0 -35
  140. package/src/api/interop/fdc3/overrideCheck.d.ts +0 -4
  141. package/src/api/interop/fdc3/overrideCheck.js +0 -32
  142. package/src/api/interop/fdc3/shapes/fdc3v1.d.ts +0 -53
  143. package/src/api/interop/fdc3/shapes/fdc3v1.js +0 -4
  144. package/src/api/interop/fdc3/shapes/fdc3v2.d.ts +0 -75
  145. package/src/api/interop/fdc3/shapes/fdc3v2.js +0 -2
  146. package/src/api/interop/fdc3/utils.d.ts +0 -45
  147. package/src/api/interop/fdc3/utils.js +0 -239
  148. package/src/api/interop/fdc3/versions.d.ts +0 -1
  149. package/src/api/interop/fdc3/versions.js +0 -2
  150. package/src/api/interop/index.d.ts +0 -4
  151. package/src/api/interop/index.js +0 -20
  152. package/src/api/interop/utils.d.ts +0 -18
  153. package/src/api/interop/utils.js +0 -61
  154. package/src/api/me.d.ts +0 -40
  155. package/src/api/me.js +0 -134
  156. package/src/api/platform/Factory.d.ts +0 -115
  157. package/src/api/platform/Factory.js +0 -184
  158. package/src/api/platform/Instance.d.ts +0 -150
  159. package/src/api/platform/Instance.js +0 -332
  160. package/src/api/platform/common-utils.d.ts +0 -7
  161. package/src/api/platform/common-utils.js +0 -16
  162. package/src/api/platform/index.d.ts +0 -3
  163. package/src/api/platform/index.js +0 -19
  164. package/src/api/platform/layout/Factory.d.ts +0 -114
  165. package/src/api/platform/layout/Factory.js +0 -174
  166. package/src/api/platform/layout/Instance.d.ts +0 -57
  167. package/src/api/platform/layout/Instance.js +0 -126
  168. package/src/api/platform/layout/controllers/layout-content-cache.d.ts +0 -9
  169. package/src/api/platform/layout/controllers/layout-content-cache.js +0 -54
  170. package/src/api/platform/layout/controllers/layout-entities-controller.d.ts +0 -119
  171. package/src/api/platform/layout/controllers/layout-entities-controller.js +0 -287
  172. package/src/api/platform/layout/entities/layout-entities.d.ts +0 -235
  173. package/src/api/platform/layout/entities/layout-entities.js +0 -312
  174. package/src/api/platform/layout/entities/shapes.d.ts +0 -6
  175. package/src/api/platform/layout/entities/shapes.js +0 -2
  176. package/src/api/platform/layout/index.d.ts +0 -2
  177. package/src/api/platform/layout/index.js +0 -18
  178. package/src/api/platform/layout/layout.constants.d.ts +0 -1
  179. package/src/api/platform/layout/layout.constants.js +0 -4
  180. package/src/api/platform/layout/shapes.d.ts +0 -16
  181. package/src/api/platform/layout/shapes.js +0 -2
  182. package/src/api/platform/layout/utils/layout-traversal.d.ts +0 -4
  183. package/src/api/platform/layout/utils/layout-traversal.js +0 -65
  184. package/src/api/platform/provider.d.ts +0 -163
  185. package/src/api/platform/provider.js +0 -2
  186. package/src/api/snapshot-source/Factory.d.ts +0 -38
  187. package/src/api/snapshot-source/Factory.js +0 -66
  188. package/src/api/snapshot-source/Instance.d.ts +0 -31
  189. package/src/api/snapshot-source/Instance.js +0 -132
  190. package/src/api/snapshot-source/index.d.ts +0 -3
  191. package/src/api/snapshot-source/index.js +0 -19
  192. package/src/api/snapshot-source/utils.d.ts +0 -2
  193. package/src/api/snapshot-source/utils.js +0 -6
  194. package/src/api/system/index.d.ts +0 -517
  195. package/src/api/system/index.js +0 -895
  196. package/src/api/view/Factory.d.ts +0 -50
  197. package/src/api/view/Factory.js +0 -103
  198. package/src/api/view/Instance.d.ts +0 -487
  199. package/src/api/view/Instance.js +0 -557
  200. package/src/api/view/index.d.ts +0 -3
  201. package/src/api/view/index.js +0 -19
  202. package/src/api/webcontents/main.d.ts +0 -32
  203. package/src/api/webcontents/main.js +0 -156
  204. package/src/api/window/Factory.d.ts +0 -45
  205. package/src/api/window/Factory.js +0 -91
  206. package/src/api/window/Instance.d.ts +0 -1090
  207. package/src/api/window/Instance.js +0 -1349
  208. package/src/api/window/index.d.ts +0 -3
  209. package/src/api/window/index.js +0 -19
  210. package/src/browser.d.ts +0 -10
  211. package/src/browser.js +0 -36
  212. package/src/environment/browser.d.ts +0 -29
  213. package/src/environment/browser.js +0 -60
  214. package/src/environment/environment.d.ts +0 -33
  215. package/src/environment/environment.js +0 -4
  216. package/src/environment/mockEnvironment.d.ts +0 -27
  217. package/src/environment/mockEnvironment.js +0 -61
  218. package/src/environment/node-env.d.ts +0 -29
  219. package/src/environment/node-env.js +0 -72
  220. package/src/fdc3.d.ts +0 -3
  221. package/src/fdc3.js +0 -9
  222. package/src/mock.d.ts +0 -3
  223. package/src/mock.js +0 -18
  224. package/src/namespaces.d.ts +0 -21
  225. package/src/namespaces.js +0 -24
  226. package/src/shapes/ERROR_BOX_TYPES.d.ts +0 -1
  227. package/src/shapes/ERROR_BOX_TYPES.js +0 -2
  228. package/src/shapes/WebOptions.d.ts +0 -13
  229. package/src/shapes/WebOptions.js +0 -2
  230. package/src/shapes/WindowOptions.d.ts +0 -43
  231. package/src/shapes/WindowOptions.js +0 -2
  232. package/src/shapes/protocol.d.ts +0 -200
  233. package/src/shapes/protocol.js +0 -2
  234. package/src/transport/mockWire.d.ts +0 -11
  235. package/src/transport/mockWire.js +0 -26
  236. package/src/transport/transport-errors.d.ts +0 -31
  237. package/src/transport/transport-errors.js +0 -79
  238. package/src/transport/transport.d.ts +0 -73
  239. package/src/transport/transport.js +0 -219
  240. package/src/transport/wire.d.ts +0 -77
  241. package/src/transport/wire.js +0 -36
  242. package/src/util/asyncFilter.d.ts +0 -1
  243. package/src/util/asyncFilter.js +0 -7
  244. package/src/util/channel-api-relay.d.ts +0 -13
  245. package/src/util/channel-api-relay.js +0 -47
  246. package/src/util/errors.d.ts +0 -10
  247. package/src/util/errors.js +0 -12
  248. package/src/util/exhaustive.d.ts +0 -1
  249. package/src/util/exhaustive.js +0 -7
  250. package/src/util/http.d.ts +0 -11
  251. package/src/util/http.js +0 -90
  252. package/src/util/inaccessibleObject.d.ts +0 -2
  253. package/src/util/inaccessibleObject.js +0 -49
  254. package/src/util/lazy.d.ts +0 -34
  255. package/src/util/lazy.js +0 -54
  256. package/src/util/normalize-config.d.ts +0 -3
  257. package/src/util/normalize-config.js +0 -52
  258. package/src/util/promises.d.ts +0 -5
  259. package/src/util/promises.js +0 -27
  260. package/src/util/ref-counter.d.ts +0 -7
  261. package/src/util/ref-counter.js +0 -52
  262. package/src/util/reversible-map.d.ts +0 -11
  263. package/src/util/reversible-map.js +0 -49
  264. package/src/util/runtimeVersioning.d.ts +0 -3
  265. package/src/util/runtimeVersioning.js +0 -25
  266. package/src/util/utilTypes.d.ts +0 -8
  267. package/src/util/utilTypes.js +0 -2
  268. package/src/util/validate.d.ts +0 -3
  269. package/src/util/validate.js +0 -11
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChannelBase = exports.ProtectedItems = void 0;
4
- const resultOrPayload = (func) => async (topic, payload, senderIdentity) => {
5
- const res = await func(topic, payload, senderIdentity);
6
- return res === undefined ? payload : res;
7
- };
8
- class ProtectedItems {
9
- constructor(providerIdentity, wire) {
10
- this.providerIdentity = providerIdentity;
11
- this.wire = wire;
12
- }
13
- }
14
- exports.ProtectedItems = ProtectedItems;
15
- class ChannelBase {
16
- static defaultAction(topic) {
17
- throw new Error(`No action registered at target for ${topic}`);
18
- }
19
- constructor() {
20
- this.subscriptions = new Map();
21
- }
22
- async processAction(topic, payload, senderIdentity) {
23
- try {
24
- const mainAction = this.subscriptions.has(topic)
25
- ? this.subscriptions.get(topic)
26
- : (currentPayload, id) => { var _a; return ((_a = this.defaultAction) !== null && _a !== void 0 ? _a : ChannelBase.defaultAction)(topic, currentPayload, id); };
27
- const preActionProcessed = this.preAction ? await this.preAction(topic, payload, senderIdentity) : payload;
28
- const actionProcessed = await mainAction(preActionProcessed, senderIdentity);
29
- return this.postAction ? await this.postAction(topic, actionProcessed, senderIdentity) : actionProcessed;
30
- }
31
- catch (e) {
32
- if (this.errorMiddleware) {
33
- return this.errorMiddleware(topic, e, senderIdentity);
34
- }
35
- throw e;
36
- }
37
- }
38
- beforeAction(func) {
39
- if (this.preAction) {
40
- throw new Error('Already registered beforeAction middleware');
41
- }
42
- this.preAction = resultOrPayload(func);
43
- }
44
- onError(func) {
45
- if (this.errorMiddleware) {
46
- throw new Error('Already registered error middleware');
47
- }
48
- this.errorMiddleware = func;
49
- }
50
- afterAction(func) {
51
- if (this.postAction) {
52
- throw new Error('Already registered afterAction middleware');
53
- }
54
- this.postAction = resultOrPayload(func);
55
- }
56
- remove(action) {
57
- this.subscriptions.delete(action);
58
- }
59
- setDefaultAction(func) {
60
- if (this.defaultAction) {
61
- throw new Error('default action can only be set once');
62
- }
63
- else {
64
- this.defaultAction = func;
65
- }
66
- }
67
- register(topic, listener) {
68
- if (this.subscriptions.has(topic)) {
69
- throw new Error(`Subscription already registered for action: ${topic}. Unsubscribe before adding new subscription`);
70
- }
71
- else {
72
- this.subscriptions.set(topic, listener);
73
- return true;
74
- }
75
- }
76
- }
77
- exports.ChannelBase = ChannelBase;
@@ -1,340 +0,0 @@
1
- declare const InterApplicationBus: any;
2
- /**
3
- * Instance created to enable use of a channel as a provider. Allows for communication with the {@link Channel#ChannelClient ChannelClients} by invoking an action on
4
- * a single client via {@link Channel#ChannelProvider#dispatch dispatch} or all clients via {@link Channel#ChannelProvider#publish publish}
5
- * and to listen for communication from clients by registering an action via {@link Channel#ChannelProvider#register register}.
6
- *
7
- * ##### Constructor
8
- *
9
- * Returned by {@link InterApplicationBus.Channel.create Channel.create}.
10
- *
11
- * ##### Synchronous Methods
12
- * * {@link Channel#ChannelProvider#onConnection onConnection(listener)}
13
- * * {@link Channel#ChannelProvider#onDisconnection onDisconnection(listener)}
14
- * * {@link Channel#ChannelProvider#publish publish(action, payload)}
15
- * * {@link Channel#ChannelProvider#register register(action, listener)}
16
- * * {@link Channel#ChannelProvider#remove remove(action)}
17
- *
18
- * ##### Asynchronous Methods
19
- * * {@link Channel#ChannelProvider#destroy destroy()}
20
- * * {@link Channel#ChannelProvider#dispatch dispatch(to, action, payload)}
21
- * * {@link Channel#ChannelProvider#getAllClientInfo getAllClientInfo()}
22
- *
23
- * ##### Middleware
24
- * Middleware functions receive the following arguments: (action, payload, senderId).
25
- * The return value of the middleware function will be passed on as the payload from beforeAction, to the action listener, to afterAction
26
- * unless it is undefined, in which case the most recently defined payload is used. Middleware can be used for side effects.
27
- * * {@link Channel#ChannelProvider#setDefaultAction setDefaultAction(middleware)}
28
- * * {@link Channel#ChannelProvider#onError onError(middleware)}
29
- * * {@link Channel#ChannelProvider#beforeAction beforeAction(middleware)}
30
- * * {@link Channel#ChannelProvider#afterAction afterAction(middleware)}
31
- *
32
- * @memberof! Channel#
33
- * @hideconstructor
34
- * @property {InterApplicationBus.Channel~ClientIdentity[]} connections a read-only array containing all the identities of connecting clients.
35
- *
36
- */
37
- declare class ChannelProvider {
38
- /**
39
- *
40
- * Destroy the channel.
41
- * @returns {Promise<void>}
42
- * @tutorial ChannelProvider.destroy
43
- */
44
- destroy(): void;
45
- /**
46
- *
47
- * Dispatch an action to a specified client. Returns a promise for the result of executing that action on the client side.
48
- * @param {InterApplicationBus.Channel~ClientIdentity} to - Identity of the target client.
49
- * @param {string} action - Name of the action to be invoked by the client.
50
- * @param {*} payload - Payload to be sent along with the action.
51
- * @returns {Promise<any>}
52
- * @tutorial Channel.dispatch
53
- */
54
- dispatch(): void;
55
- /**
56
- *
57
- * Register an action to be called
58
- * @param {string} action - Name of the action to be registered for channel clients to later invoke.
59
- * @param {Channel#ChannelProvider~Action} listener - Function representing the action to be taken on a client dispatch.
60
- * @returns {boolean} - Boolean representing the successful registration of the action.
61
- * @tutorial Channel.register
62
- */
63
- register(): void;
64
- /**
65
- *
66
- * Publish an action and payload to every connected client.
67
- * Synchronously returns an array of promises for each action (see dispatch).
68
- * @param {string} action
69
- * @param {*} payload
70
- * @returns {Array<Promise<any>>}
71
- * @tutorial ChannelProvider.publish
72
- */
73
- publish(): void;
74
- /**
75
- *
76
- * Register a listener that is called on every new client connection.
77
- * It is passed the identity of the connecting client and a payload if it was provided to {@link Channel.connect}.
78
- * If you wish to reject the connection, throw an error. Be sure to synchronously provide an onConnection upon receipt of the channelProvider
79
- * to ensure all potential client connections are caught by the listener.
80
- * @param {Channel#ChannelProvider~ConnectionListener} listener
81
- * @returns {void}
82
- * @tutorial ChannelProvider.onConnection
83
- */
84
- onConnection(): void;
85
- /**
86
- *
87
- * Register a listener that is called on every new client disconnection.
88
- * It is passed the disconnection event of the disconnecting client.
89
- * @param {InterApplicationBus.Channel~ConnectionEvent} listener
90
- * @returns {void}
91
- * @tutorial Channel.onDisconnection
92
- */
93
- onDisconnection(): void;
94
- /**
95
- *
96
- * Register middleware that fires before the action.
97
- * @param {Channel#ChannelProvider~Middleware} middleware - Function to be executed before invoking the action.
98
- * @returns {void}
99
- * @tutorial ChannelMiddleware.beforeAction
100
- */
101
- beforeAction(): void;
102
- /**
103
- *
104
- * Register an error handler. This is called before responding on any error.
105
- * @param {Channel#ChannelProvider~Middleware} middleware - Function to be executed in case of an error.
106
- * @returns {void}
107
- * @tutorial ChannelMiddleware.onError
108
- */
109
- onError(): void;
110
- /**
111
- *
112
- * Register middleware that fires after the action. This is passed the return value of the action.
113
- * @param {Channel#ChannelProvider~Middleware} middleware - Function to be executed after invoking the action.
114
- * @returns {void}
115
- * @tutorial ChannelMiddleware.afterAction
116
- */
117
- afterAction(): void;
118
- /**
119
- *
120
- * Remove an action by action name.
121
- * @param {string} action - Name of the action to be removed.
122
- * @returns {void}
123
- * @tutorial Channel.remove
124
- */
125
- remove(): void;
126
- /**
127
- *
128
- * Sets a default action. This is used any time an action that has not been registered is invoked.
129
- * Default behavior if not set is to throw an error.
130
- * @param {Channel#ChannelProvider~Middleware} middleware - Function to be executed when a client invokes an action name that has not been registered.
131
- * @returns {void}
132
- * @tutorial ChannelMiddleware.setDefaultAction
133
- */
134
- setDefaultAction(): void;
135
- /** Returns an array with info on every Client connected to the Provider
136
- * @returns { Promise<Array<ClientInfo>> }
137
- * @tutorial Channel.getAllClientInfo
138
- */
139
- getAllClientInfo(): void;
140
- }
141
- /**
142
- * Instance created to enable use of a channel as a client. Allows for communication with the
143
- * {@link Channel#ChannelProvider ChannelProvider} by invoking an action on the
144
- * provider via {@link Channel#ChannelClient#dispatch dispatch} and to listen for communication
145
- * from the provider by registering an action via {@link Channel#ChannelClient#register register}.
146
- *
147
- * ##### Constructor
148
- * Returned by {@link InterApplicationBus.Channel.connect Channel.connect}.
149
- *
150
- * ##### Synchronous Methods
151
- * * {@link Channel#ChannelClient#onDisconnection onDisconnection(listener)}
152
- * * {@link Channel#ChannelClient#register register(action, listener)}
153
- * * {@link Channel#ChannelClient#remove remove(action)}
154
- *
155
- * ##### Asynchronous Methods
156
- * * {@link Channel#ChannelClient#disconnect disconnect()}
157
- * * {@link Channel#ChannelClient#dispatch dispatch(action, payload)}
158
- *
159
- * ##### Middleware
160
- * Middleware functions receive the following arguments: (action, payload, senderId).
161
- * The return value of the middleware function will be passed on as the payload from beforeAction, to the action listener, to afterAction
162
- * unless it is undefined, in which case the original payload is used. Middleware can be used for side effects.
163
- * * {@link Channel#ChannelClient#setDefaultAction setDefaultAction(middleware)}
164
- * * {@link Channel#ChannelClient#onError onError(middleware)}
165
- * * {@link Channel#ChannelClient#beforeAction beforeAction(middleware)}
166
- * * {@link Channel#ChannelClient#afterAction afterAction(middleware)}
167
- *
168
- * @hideconstructor
169
- * @memberof! Channel#
170
- * @property {InterApplicationBus.Channel~ProviderIdentity} providerIdentity a read-only provider identity
171
- */
172
- declare class ChannelClient {
173
- /**
174
- *
175
- * Disconnect from the channel.
176
- * @tutorial Channel.disconnect
177
- * @returns {Promise<void>}
178
- */
179
- disconnect(): void;
180
- /**
181
- *
182
- * Dispatch the given action to the channel provider. Returns a promise that resolves with the response from the provider for that action.
183
- * @param {string} action - Name of the action to be invoked by the channel provider.
184
- * @param {*} payload - Payload to be sent along with the action.
185
- * @tutorial Channel.dispatch
186
- * @returns {Promise<any>}
187
- */
188
- dispatch(): void;
189
- /**
190
- *
191
- * Register an action to be called by the provider of the channel.
192
- * @param {string} action - Name of the action to be registered for the channel provider to later invoke.
193
- * @param {Channel#ChannelClient~Action} listener - Function representing the action to be taken on a provider dispatch.
194
- * @returns {boolean}
195
- * @tutorial Channel.register
196
- */
197
- register(): void;
198
- /**
199
- *
200
- * Register middleware that fires before the action.
201
- * @param {Channel#ChannelClient~Middleware} middleware - Function to be executed before invoking the action.
202
- * @returns {void}
203
- * @tutorial ChannelMiddleware.beforeAction
204
- */
205
- beforeAction(): void;
206
- /**
207
- *
208
- * Register a listener that is called on channel disconnection.
209
- * It is passed the disconnection event of the disconnecting channel.
210
- * @param {InterApplicationBus.Channel~ConnectionEvent} listener
211
- * @returns {void}
212
- * @tutorial Channel.onDisconnection
213
- */
214
- onDisconnection(): void;
215
- /**
216
- * Register an error handler. This is called before responding on any error.
217
- * @param {Channel#ChannelClient~Middleware} middleware - Function to be executed in case of an error.
218
- * @returns {void}
219
- * @tutorial ChannelMiddleware.onError
220
- */
221
- onError(): void;
222
- /**
223
- *
224
- * Register middleware that fires after the action. This is passed the return value of the action.
225
- * @param {Channel#ChannelClient~Middleware} middleware - Function to be executed after invoking the action.
226
- * @returns {void}
227
- * @tutorial ChannelMiddleware.afterAction
228
- */
229
- afterAction(): void;
230
- /**
231
- *
232
- * Remove an action by action name.
233
- * @param {string} action - Name of the action to be removed.
234
- * @returns {void}
235
- * @tutorial Channel.remove
236
- */
237
- remove(): void;
238
- /**
239
- *
240
- * Sets a default action. This is used any time an action that has not been registered is invoked.
241
- * Default behavior if not set is to throw an error.
242
- * @param {Channel#ChannelClient~Middleware} middleware - Function to be executed when a client invokes an action name that has not been registered.
243
- * @returns {void}
244
- * @tutorial ChannelMiddleware.setDefaultAction
245
- */
246
- setDefaultAction(): void;
247
- }
248
- /**
249
- * Channel action callback signature
250
- * @callback Channel#ChannelProvider~Action
251
- * @param {any} payload - Payload sent along with the message.
252
- * @param {InterApplicationBus.Channel~ClientIdentity} identity - Identity of the sender.
253
- */
254
- /**
255
- * Channel action callback signature
256
- * @callback Channel#ChannelClient~Action
257
- * @param {any} payload - Payload sent along with the message.
258
- * @param {Identity} identity - Identity of the sender.
259
- */
260
- /**
261
- * Middleware function signature
262
- * @callback Channel#ChannelProvider~Middleware
263
- * @param {string} action - Action to be invoked.
264
- * @param {any} payload - Payload sent along with the message (or error for error middleware).
265
- * @param {Identity} identity - Identity of the sender.
266
- */
267
- /**
268
- * Middleware function signature
269
- * @callback Channel#ChannelClient~Middleware
270
- * @param {string} action - Action to be invoked.
271
- * @param {any} payload - Payload sent along with the message (or error for error middleware).
272
- * @param {Identity} identity - Identity of the sender.
273
- */
274
- /**
275
- * Callback for the channel onConnection or onDisconnection. If it errors connection will be rejected.
276
- * @callback Channel#ChannelProvider~ConnectionListener
277
- * @param {InterApplicationBus.Channel~ClientIdentity} identity - Identity of the client attempting to connect to the channel.
278
- * @param {any} payload - Payload sent with connection request.
279
- */
280
- /**
281
- * @REMOVED
282
- * Callback for onChannelConnect or onChannelDisconnect.
283
- * @typedef {object} InterApplicationBus.Channel~ConnectionEvent
284
- * @property {string} channelId - Identifier of the channel.
285
- * @property {string} uuid - Channel provider uuid.
286
- * @property {string} [name] - Channel provider name.
287
- * @property {string} channelName - Name of the channel.
288
- */
289
- /**
290
- * @PORTED
291
- * Protocol values for determining channel messaging strategy.
292
- * @typedef {('classic' | 'rtc')} InterApplicationBus.Channel~MessagingProtocols - EXPERIMENTAL
293
- *
294
- */
295
- /**
296
- * @PORTED
297
- * Channel provider creation options.
298
- * @typedef {object} InterApplicationBus.Channel~ChannelCreateOptions
299
- * @property {InterApplicationBus.Channel~MessagingProtocols[]} [protocols=['classic']] - EXPERIMENTAL: Messaging protocols supported by the channel provider.
300
- *
301
- */
302
- /**
303
- * @PORTED
304
- * Options provided on a client connection to a channel.
305
- * @typedef {object} InterApplicationBus.Channel~ChannelConnectOptions
306
- * @property {InterApplicationBus.Channel~MessagingProtocols[]} [protocols=['classic']] - EXPERIMENTAL: Messaging protocols requested by the client, connection will fail if the provider protocols are not compatible.
307
- * @property {any} [payload] - Payload to pass to ChannelProvider onConnection action.
308
- * @property {boolean} [wait=true] - If true will wait for ChannelProvider to connect. If false will fail if ChannelProvider is not found.
309
- *
310
- */
311
- /**
312
- * @PORTED
313
- * Provider Identity.
314
- * @typedef {object} InterApplicationBus.Channel~ProviderIdentity
315
- * @property {string} uuid - Channel provider uuid.
316
- * @property {string} [name] - Channel provider name.
317
- * @property {string} channelId - Identifier of the channel.
318
- * @property {boolean} [isExternal] - true if it's external connection.
319
- * @property {string} channelName - Name of the channel.
320
- *
321
- */
322
- /**
323
- * @PORTED
324
- * Client Identity.
325
- * @typedef {object} InterApplicationBus.Channel~ClientIdentity
326
- * @property {string} uuid - Channel client uuid.
327
- * @property {string} name - Channel client name.
328
- * @property {string} endpointId - Unique identifier for a client, because there can be multiple clients at one name/uuid entity.
329
- *
330
- */
331
- /**
332
- * @PORTED
333
- * Extended Client Information
334
- * @typedef {object} InterApplicationBus.Channel~ClientInfo
335
- * @property {string} uuid - Channel client uuid
336
- * @property {string} name - Channel client name
337
- * @property {string} endpointId - Unique identifier for a client, because there can be multiple clients at one name/uuid entity.
338
- * @property {string} entityType - Indicates if the client belongs to a Window or View
339
- * @property {string} connectionUrl - URL of the View or Window at the time of connection to the Channel Provider.
340
- */