@soundworks/core 5.4.3 → 5.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/.gitattributes +1 -0
  2. package/CHANGELOG.md +5 -0
  3. package/README.md +6 -0
  4. package/package.json +18 -12
  5. package/src/client/Client.js +7 -4
  6. package/src/client/ClientSocket.js +9 -3
  7. package/src/common/BasePlugin.js +2 -2
  8. package/src/common/BasePluginManager.js +2 -2
  9. package/src/common/BaseStateManager.js +8 -3
  10. package/src/common/ParameterBag.js +14 -14
  11. package/src/common/SharedState.js +40 -8
  12. package/src/common/SharedStateCollection.js +3 -3
  13. package/src/common/constants.js +2 -0
  14. package/src/common/isomorphic/colored-logger.browser.js +17 -0
  15. package/src/common/isomorphic/colored-logger.node.js +19 -0
  16. package/src/common/isomorphic/web-socket.browser.js +1 -0
  17. package/src/common/isomorphic/web-socket.node.js +3 -0
  18. package/src/common/logs/gated-logger.js +30 -0
  19. package/src/common/logs/warnings.js +36 -0
  20. package/src/common/version.js +1 -1
  21. package/src/server/Server.js +23 -35
  22. package/src/server/ServerClient.js +7 -3
  23. package/src/server/ServerStateManager.js +10 -6
  24. package/src/server/SharedStatePrivate.js +19 -0
  25. package/src/server/create-http-server.js +81 -39
  26. package/src/server/crypto.js +2 -3
  27. package/types/client/Client.d.ts.map +1 -1
  28. package/types/client/ClientPluginManager.d.ts +1 -1
  29. package/types/client/ClientPluginManager.d.ts.map +1 -1
  30. package/types/client/ClientSocket.d.ts +4 -0
  31. package/types/client/ClientSocket.d.ts.map +1 -1
  32. package/types/client/index.d.ts +3 -3
  33. package/types/client/index.d.ts.map +1 -1
  34. package/types/common/BasePluginManager.d.ts +1 -1
  35. package/types/common/BasePluginManager.d.ts.map +1 -1
  36. package/types/common/BaseStateManager.d.ts.map +1 -1
  37. package/types/common/BatchedTransport.d.ts +1 -1
  38. package/types/common/BatchedTransport.d.ts.map +1 -1
  39. package/types/common/ParameterBag.d.ts +30 -8
  40. package/types/common/ParameterBag.d.ts.map +1 -1
  41. package/types/common/PromiseStore.d.ts +1 -1
  42. package/types/common/PromiseStore.d.ts.map +1 -1
  43. package/types/common/SharedState.d.ts +11 -4
  44. package/types/common/SharedState.d.ts.map +1 -1
  45. package/types/common/SharedStateCollection.d.ts +7 -7
  46. package/types/common/SharedStateCollection.d.ts.map +1 -1
  47. package/types/common/constants.d.ts +1 -0
  48. package/types/common/constants.d.ts.map +1 -1
  49. package/types/common/isomorphic/colored-logger.browser.d.ts +8 -0
  50. package/types/common/isomorphic/colored-logger.browser.d.ts.map +1 -0
  51. package/types/common/isomorphic/colored-logger.node.d.ts +8 -0
  52. package/types/common/isomorphic/colored-logger.node.d.ts.map +1 -0
  53. package/types/common/isomorphic/web-socket.browser.d.ts +10 -0
  54. package/types/common/isomorphic/web-socket.browser.d.ts.map +1 -0
  55. package/types/common/isomorphic/web-socket.node.d.ts +2 -0
  56. package/types/common/isomorphic/web-socket.node.d.ts.map +1 -0
  57. package/types/common/logs/gated-logger.d.ts +9 -0
  58. package/types/common/logs/gated-logger.d.ts.map +1 -0
  59. package/types/common/logs/warnings.d.ts +7 -0
  60. package/types/common/logs/warnings.d.ts.map +1 -0
  61. package/types/common/shared-state-types.d.ts +11 -11
  62. package/types/common/shared-state-types.d.ts.map +1 -1
  63. package/types/common/version.d.ts +1 -1
  64. package/types/server/Server.d.ts +5 -5
  65. package/types/server/Server.d.ts.map +1 -1
  66. package/types/server/ServerClient.d.ts.map +1 -1
  67. package/types/server/ServerPluginManager.d.ts +1 -1
  68. package/types/server/ServerPluginManager.d.ts.map +1 -1
  69. package/types/server/ServerSocket.d.ts +1 -1
  70. package/types/server/ServerSocket.d.ts.map +1 -1
  71. package/types/server/ServerStateManager.d.ts.map +1 -1
  72. package/types/server/SharedStatePrivate.d.ts +5 -5
  73. package/types/server/SharedStatePrivate.d.ts.map +1 -1
  74. package/types/server/create-http-server.d.ts +1 -0
  75. package/types/server/create-http-server.d.ts.map +1 -1
  76. package/types/server/crypto.d.ts +1 -1
  77. package/types/server/crypto.d.ts.map +1 -1
  78. package/types/server/index.d.ts +3 -3
  79. package/types/server/index.d.ts.map +1 -1
  80. package/src/common/logger.js +0 -150
  81. package/types/common/logger.d.ts +0 -19
  82. package/types/common/logger.d.ts.map +0 -1
@@ -1,8 +1,6 @@
1
1
  import EventEmitter from 'node:events';
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
- import os from 'node:os';
5
-
6
4
 
7
5
  import {
8
6
  isPlainObject,
@@ -10,10 +8,12 @@ import {
10
8
  counter,
11
9
  getTime,
12
10
  } from '@ircam/sc-utils';
13
- import chalk from 'chalk';
14
11
  import Keyv from 'keyv';
15
12
  import { KeyvFile } from 'keyv-file';
16
- import _ from 'lodash';
13
+ import { defu } from 'defu';
14
+
15
+ import gatedLogger from '../common/logs/gated-logger.js';
16
+ import warnings from '../common/logs/warnings.js';
17
17
 
18
18
  import auditClassDescription from './audit-state-class-description.js';
19
19
  import {
@@ -22,6 +22,7 @@ import {
22
22
  } from './crypto.js';
23
23
  import {
24
24
  createHttpServer,
25
+ logServerInfos,
25
26
  } from './create-http-server.js';
26
27
  import ServerClient, {
27
28
  kServerClientToken,
@@ -57,7 +58,6 @@ import ServerSockets, {
57
58
  kSocketsStart,
58
59
  kSocketsStop,
59
60
  } from './ServerSockets.js';
60
- import logger from '../common/logger.js';
61
61
  import {
62
62
  SERVER_ID,
63
63
  CLIENT_HANDSHAKE_REQUEST,
@@ -159,7 +159,7 @@ class Server {
159
159
  throw new TypeError(`Cannot construct 'Server': Parameter 1 must be an object`);
160
160
  }
161
161
 
162
- config = _.merge({}, DEFAULT_CONFIG, config);
162
+ config = defu(config, DEFAULT_CONFIG);
163
163
 
164
164
  // ---------------------------------------------------------------------
165
165
  // Deprecation checks for config
@@ -170,7 +170,7 @@ class Server {
170
170
  const clientConfig = config.app.clients[role];
171
171
 
172
172
  if (clientConfig.target) {
173
- logger.deprecated('ClientDescription#target', 'ClientDescription#runtime (or run `npx soundworks --upgrade-config` to upgrade your config files)', '4.0.0-alpha.29');
173
+ warnings.deprecated('ClientDescription#target', 'ClientDescription#runtime (or run `npx soundworks --upgrade-config` to upgrade your config files)', '4.0.0-alpha.29');
174
174
  clientConfig.runtime = clientConfig.target;
175
175
  delete clientConfig.target;
176
176
  }
@@ -178,7 +178,7 @@ class Server {
178
178
 
179
179
  // `env.subpath` to `env.baseUrl`
180
180
  if ('subpath' in config.env) {
181
- logger.deprecated('ServerConfig#subpath', 'ServerConfig#baseUrl (or run `npx soundworks --upgrade-config` to upgrade your config files)', '4.0.0-alpha.29');
181
+ warnings.deprecated('ServerConfig#subpath', 'ServerConfig#baseUrl (or run `npx soundworks --upgrade-config` to upgrade your config files)', '4.0.0-alpha.29');
182
182
  config.env.baseUrl = config.env.subpath;
183
183
  delete config.env.subpath;
184
184
  }
@@ -240,7 +240,7 @@ class Server {
240
240
  // register audit state schema
241
241
  this.#stateManager.defineClass(AUDIT_STATE_NAME, auditClassDescription);
242
242
 
243
- logger.configure(this.#config.env.verbose);
243
+ gatedLogger.verbose = !!this.#config.env.verbose;
244
244
  }
245
245
 
246
246
  /**
@@ -506,7 +506,7 @@ class Server {
506
506
  const { configureHttpRouter } = await import('@soundworks/helpers/server.js');
507
507
  configureHttpRouter(this);
508
508
  } catch (err) {
509
- logger.warn('Could not apply patch for deprecated `useDefaultApplicationTemplate` method. Please use `configureHttpRouter` from helpers instead.');
509
+ console.warn('Could not apply patch for deprecated `useDefaultApplicationTemplate` method. Please use `configureHttpRouter` from helpers instead.');
510
510
  throw err;
511
511
  }
512
512
  }
@@ -516,7 +516,7 @@ class Server {
516
516
  this.#httpServer = await createHttpServer(this);
517
517
  await this.#dispatchStatus('http-server-ready');
518
518
  } catch (err) {
519
- logger.error(err.message);
519
+ console.error(err.message);
520
520
  await this.#dispatchStatus('errored');
521
521
  throw err;
522
522
  }
@@ -564,31 +564,19 @@ class Server {
564
564
  // start `SocketServer`
565
565
  await this.#sockets[kSocketsStart]();
566
566
  // start httpServer
567
- return new Promise(resolve => {
568
- const port = this.#config.env.port;
569
- const protocol = this.#config.env.useHttps ? 'https' : 'http';
570
- const interfaces = os.networkInterfaces();
571
-
572
- this.#httpServer.listen(port, async () => {
573
- logger.title(`${protocol} server listening on`);
574
-
575
- Object.keys(interfaces).forEach(dev => {
576
- interfaces[dev].forEach(details => {
577
- if (details.family === 'IPv4') {
578
- logger.ip(protocol, details.address, port);
579
- }
580
- });
581
- });
567
+ const { promise, resolve } = Promise.withResolvers();
582
568
 
583
- await this.#dispatchStatus('started');
569
+ this.#httpServer.listen(this.#config.env.port, async () => {
570
+ if (this.#config.env.verbose) {
571
+ logServerInfos(this.#config.env);
572
+ }
584
573
 
585
- if (this.#config.env.type === 'development') {
586
- logger.log(`\n> press "${chalk.bold('Ctrl + C')}" to exit`);
587
- }
574
+ await this.#dispatchStatus('started');
588
575
 
589
- resolve();
590
- });
576
+ resolve();
591
577
  });
578
+
579
+ return promise;
592
580
  }
593
581
 
594
582
  /**
@@ -709,7 +697,7 @@ class Server {
709
697
  }
710
698
 
711
699
  if (version !== this.#version) {
712
- logger.warnVersionDiscrepancies(role, version, this.#version);
700
+ warnings.versionDiscrepancies(role, version, this.#version);
713
701
  }
714
702
 
715
703
  try {
@@ -872,7 +860,7 @@ class Server {
872
860
  // @note - keyv-file doesn't seems to works
873
861
  const store = new KeyvFile({ filename });
874
862
  const db = new Keyv({ namespace, store });
875
- db.on('error', err => logger.error(`[soundworks:Server] db ${namespace} error: ${err}`));
863
+ db.on('error', err => console.error(`namespaced db ("${namespace}") error:`, err));
876
864
 
877
865
  return db;
878
866
  }
@@ -881,7 +869,7 @@ class Server {
881
869
  * @deprecated
882
870
  */
883
871
  useDefaultApplicationTemplate() {
884
- logger.deprecated('Server#useDefaultApplicationTemplate', '`configureHttpRouter(server)` from the `@soundworks/helpers/server.js` package', '4.0.0-alpha.29');
872
+ warnings.deprecated('Server#useDefaultApplicationTemplate', '`configureHttpRouter(server)` from the `@soundworks/helpers/server.js` package', '4.0.0-alpha.29');
885
873
  this.#useDefaultApplicationTemplate = true;
886
874
  }
887
875
  }
@@ -1,5 +1,9 @@
1
- import { counter } from '@ircam/sc-utils';
2
- import { v4 as uuid } from 'uuid';
1
+ import crypto from 'node:crypto';
2
+
3
+ import {
4
+ counter,
5
+ } from '@ircam/sc-utils';
6
+
3
7
 
4
8
  const generateId = counter();
5
9
 
@@ -24,7 +28,7 @@ class ServerClient {
24
28
  constructor(role, socket) {
25
29
  this.#role = role;
26
30
  this.#id = generateId();
27
- this.#uuid = uuid();
31
+ this.#uuid = crypto.randomUUID();
28
32
  this.#socket = socket;
29
33
 
30
34
  /**
@@ -1,5 +1,9 @@
1
- import { counter, isString, isPlainObject, isFunction } from '@ircam/sc-utils';
2
- import clonedeep from 'lodash/cloneDeep.js';
1
+ import {
2
+ counter,
3
+ isString,
4
+ isPlainObject,
5
+ isFunction,
6
+ } from '@ircam/sc-utils';
3
7
 
4
8
  import BaseStateManager, {
5
9
  kStateManagerInit,
@@ -32,7 +36,7 @@ import SharedStatePrivate, {
32
36
  kSharedStatePrivateGetValues,
33
37
  } from './SharedStatePrivate.js';
34
38
 
35
- import logger from '../common/logger.js';
39
+ import warnings from '../common/logs/warnings.js';
36
40
 
37
41
 
38
42
  const generateStateId = counter();
@@ -486,7 +490,7 @@ class ServerStateManager extends BaseStateManager {
486
490
  throw new TypeError(`Cannot execute 'defineClass' (${className}) on ServerStateManager: ${err.message}`);
487
491
  }
488
492
 
489
- this.#classes.set(className, clonedeep(classDescription));
493
+ this.#classes.set(className, structuredClone(classDescription));
490
494
  // create hooks list
491
495
  this.#createHooksByClassName.set(className, new Set());
492
496
  this.#updateHooksByClassName.set(className, new Set());
@@ -497,7 +501,7 @@ class ServerStateManager extends BaseStateManager {
497
501
  * @deprecated Use {@link ServerStateManager#defineClass} instead.
498
502
  */
499
503
  registerSchema(className, classDescription) {
500
- logger.deprecated('ServerStateManager#registerSchema', 'ServerStateManager#defineClass', '4.0.0-alpha.29');
504
+ warnings.deprecated('ServerStateManager#registerSchema', 'ServerStateManager#defineClass', '4.0.0-alpha.29');
501
505
  this.defineClass(className, classDescription);
502
506
  }
503
507
 
@@ -543,7 +547,7 @@ class ServerStateManager extends BaseStateManager {
543
547
  * @deprecated Use {@link ServerStateManager#defineClass} instead.
544
548
  */
545
549
  deleteSchema(className) {
546
- logger.deprecated('ServerStateManager#deleteSchema', 'ServerStateManager#deleteClass', '4.0.0-alpha.29');
550
+ warnings.deprecated('ServerStateManager#deleteSchema', 'ServerStateManager#deleteClass', '4.0.0-alpha.29');
547
551
  this.deleteClass(className);
548
552
  }
549
553
 
@@ -9,6 +9,7 @@ import {
9
9
  UPDATE_RESPONSE,
10
10
  UPDATE_ABORT,
11
11
  UPDATE_NOTIFICATION,
12
+ HAS_SIBLINGS_NOTIFICATION,
12
13
  } from '../common/constants.js';
13
14
  import {
14
15
  kServerStateManagerDeletePrivateState,
@@ -297,6 +298,8 @@ class SharedStatePrivate {
297
298
  this[kSharedStatePrivateDetachClient](instanceId, client);
298
299
  client.transport.emit(`${DETACH_RESPONSE}-${this.id}-${instanceId}`, reqId);
299
300
  });
301
+
302
+ this.#updateHasSiblings();
300
303
  }
301
304
  }
302
305
 
@@ -306,6 +309,22 @@ class SharedStatePrivate {
306
309
  client.transport.removeAllListeners(`${UPDATE_REQUEST}-${this.id}-${instanceId}`);
307
310
  client.transport.removeAllListeners(`${DELETE_REQUEST}-${this.id}-${instanceId}`);
308
311
  client.transport.removeAllListeners(`${DETACH_REQUEST}-${this.id}-${instanceId}`);
312
+
313
+ this.#updateHasSiblings();
314
+ }
315
+
316
+ /**
317
+ * Update hasSiblings property on owner
318
+ */
319
+ #updateHasSiblings() {
320
+ for (let [instanceId, clientInfos] of this.attachedClients) {
321
+ const { client, isOwner } = clientInfos;
322
+
323
+ if (isOwner) {
324
+ const hasSiblings = this.attachedClients.size > 1;
325
+ client.transport.emit(`${HAS_SIBLINGS_NOTIFICATION}-${this.id}-${instanceId}`, hasSiblings);
326
+ }
327
+ }
309
328
  }
310
329
  }
311
330
 
@@ -1,32 +1,26 @@
1
- import http from 'node:http';
2
- import https from 'node:https';
3
- import fs from 'node:fs';
4
1
  import {
5
2
  X509Certificate,
6
3
  createPrivateKey,
7
4
  } from 'node:crypto';
5
+ import fs from 'node:fs';
6
+ import http from 'node:http';
7
+ import https from 'node:https';
8
+ import os from 'node:os';
9
+ import {
10
+ styleText,
11
+ } from 'node:util';
8
12
 
9
- import pem from 'pem';
10
- import equal from 'fast-deep-equal';
11
-
12
- import logger from '../common/logger.js';
13
-
14
- /**
15
- * @private
16
- * @return {HttpServer|HttpsServer}
17
- */
18
- export async function createHttpServer(server) {
19
- const serverConfig = server.config;
20
-
21
- if (serverConfig.env.useHttps !== true) {
22
- return http.createServer();
23
- }
13
+ import selfsigned from 'selfsigned';
24
14
 
15
+ async function createHttpsServer(server) {
25
16
  // https is more tricky
26
- const httpsInfos = serverConfig.env.httpsInfos;
17
+ const httpsInfos = server.config.env.httpsInfos;
27
18
  let useSelfSigned = false;
28
19
 
29
- if (!httpsInfos || equal(httpsInfos, { cert: null, key: null })) {
20
+ if (!httpsInfos
21
+ || !fs.existsSync(httpsInfos.cert)
22
+ || !fs.existsSync(httpsInfos.key)
23
+ ) {
30
24
  useSelfSigned = true;
31
25
  }
32
26
 
@@ -77,7 +71,7 @@ export async function createHttpServer(server) {
77
71
 
78
72
  httpsServer = https.createServer({ key, cert });
79
73
  } catch (err) {
80
- logger.error(`
74
+ console.error(`
81
75
  Invalid certificate files, please check your:
82
76
  - key file: ${httpsInfos.key}
83
77
  - cert file: ${httpsInfos.cert}
@@ -86,33 +80,23 @@ Invalid certificate files, please check your:
86
80
  throw err;
87
81
  }
88
82
  } else {
83
+
89
84
  // generate self signed certs or reused already existing ones
90
85
  let cert = await server.db.get('httpsCert');
91
86
  let key = await server.db.get('httpsKey');
92
87
 
93
88
  if (!cert || !key) {
94
89
  try {
95
- const result = await new Promise((resolve, reject) => {
96
- pem.createCertificate({ days: 1, selfSigned: true }, async (err, keys) => {
97
- if (err) {
98
- reject(err);
99
- return;
100
- }
101
-
102
- resolve({
103
- cert: keys.certificate,
104
- key: keys.serviceKey,
105
- });
106
- });
107
- });
90
+ const result = await selfsigned.generate(null);
108
91
 
109
92
  cert = result.cert;
110
- key = result.key;
93
+ key = result.private;
94
+
111
95
  // store the generated certs to reuse on next start
112
- await server.db.set('httpsCert', cert);
113
- await server.db.set('httpsKey', key);
96
+ await server.db.set('httpsCert', cert); // -----BEGIN CERTIFICATE-----
97
+ await server.db.set('httpsKey', key); // -----BEGIN RSA PRIVATE KEY-----
114
98
  } catch (err) {
115
- logger.error(err.stack);
99
+ console.error(err.stack);
116
100
  throw err;
117
101
  }
118
102
  }
@@ -121,7 +105,65 @@ Invalid certificate files, please check your:
121
105
  httpsServer = https.createServer({ cert, key });
122
106
  }
123
107
 
124
- logger.httpsCertsInfos(httpsCertsInfos);
108
+ // Log certificate information, just be verbose
109
+ console.log(styleText('cyan', `https certificates infos`));
110
+
111
+ if (httpsCertsInfos.selfSigned) {
112
+ console.warn(styleText('yellow', ` -------------------------------------------`));
113
+ console.warn(styleText('yellow', ` > USING SELF-SIGNED CERTIFICATE. `));
114
+ console.warn(styleText('yellow', ` users will face a unsafe web page warning `));
115
+ console.warn(styleText('yellow', ` -------------------------------------------`));
116
+ } else {
117
+ console.log(` valid from: ${httpsCertsInfos.validFrom}`);
118
+ console.log(` valid to: ${httpsCertsInfos.validTo}`);
119
+
120
+ if (!httpsCertsInfos.isValid) {
121
+ console.error(styleText('red', ` -------------------------------------------`));
122
+ console.error(styleText('red', ` > INVALID CERTIFICATE `));
123
+ console.error(styleText('red', ` i.e. you pretend to be safe but you are not`));
124
+ console.error(styleText('red', ` -------------------------------------------`));
125
+ } else {
126
+ if (httpsCertsInfos.daysRemaining < 5) {
127
+ console.log(styleText('red', ` > CERTIFICATE IS VALID... BUT ONLY ${httpsCertsInfos.daysRemaining} DAYS LEFT, PLEASE CONSIDER UPDATING YOUR CERTS!`));
128
+ } else if (httpsCertsInfos.daysRemaining < 15) {
129
+ console.log(styleText('yellow', ` > CERTIFICATE IS VALID - only ${httpsCertsInfos.daysRemaining} days left, be careful...`));
130
+ } else {
131
+ console.log(styleText('green', ` > CERTIFICATE IS VALID (${httpsCertsInfos.daysRemaining} days left)`));
132
+ }
133
+ }
134
+ }
125
135
 
126
136
  return httpsServer;
127
137
  }
138
+
139
+ /**
140
+ * @private
141
+ * @return {HttpServer|HttpsServer}
142
+ */
143
+ export async function createHttpServer(server) {
144
+ const serverConfig = server.config;
145
+
146
+ const httpServer = serverConfig.env.useHttps !== true
147
+ ? http.createServer()
148
+ : await createHttpsServer(server);
149
+
150
+ return httpServer;
151
+ }
152
+
153
+ export function logServerInfos(envConfig) {
154
+ const protocol = envConfig.useHttps ? 'https' : 'http';
155
+ const port = envConfig.port;
156
+ const interfaces = os.networkInterfaces();
157
+
158
+ console.log(styleText('cyan', `${protocol} server listening on`));
159
+
160
+ Object.keys(interfaces).forEach(dev => {
161
+ interfaces[dev].forEach(details => {
162
+ if (details.family === 'IPv4') {
163
+ console.log(` ${protocol}://${details.address}:${styleText('green', `${port}`)}`);
164
+ }
165
+ });
166
+ });
167
+
168
+ console.log(`\n> press "${styleText('bold', 'Ctrl + C')}" to exit`);
169
+ }
@@ -1,11 +1,10 @@
1
1
  import crypto from 'node:crypto';
2
- import { v4 as uuidv4 } from 'uuid';
3
2
 
4
3
  // adapted from https://dev.to/jobizil/encrypt-and-decrypt-data-in-nodejs-using-aes-256-cbc-2l6d
5
4
  // generate a new key and init vector each time the server restart, we don't need
6
5
  // any persistency here
7
- const secretKey = uuidv4();
8
- const secretIv = uuidv4();
6
+ const secretKey = crypto.randomUUID();
7
+ const secretIv = crypto.randomUUID();
9
8
  const encryptionMethod = 'aes-256-cbc';
10
9
 
11
10
  const key = crypto
@@ -1 +1 @@
1
- {"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/client/Client.js"],"names":[],"mappings":"AA6BA,+CAA2E;AAC3E,2DAAqG;;AAErG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IAeE;;;OAGG;IACH,oBAHW,YAAY,EA+DtB;IAED;;;;OAIG;IACH,eAFU,MAAM,CAIf;IAED;;;;OAIG;IACH,YAFU,MAAM,CAIf;IAED;;;;OAIG;IACH,cAFU,YAAY,CAIrB;IAED;;;;;;;OAOG;IACH,UAFU,MAAM,CAIf;IAED;;;;;OAKG;IACH,YAFU,MAAM,CAIf;IAED;;;;;;;OAOG;IACH,aAFU,MAAM,CAIf;IAED;;;;OAIG;IACH,eAFU,MAAM,GAAC,SAAS,CAIzB;IAED;;OAEG;IACH,iCAGC;IAED;;;;;OAKG;IACH,cAFU,YAAY,CAIrB;IAED;;;;;;;OAOG;IACH,sBAFU,oBAAoB,CAI7B;IAED;;;;;;;OAOG;IACH,8CAEC;IAED;;;;;;;OAOG;IACH,oBAFU,kBAAkB,CAI3B;IAED;;;;OAIG;IACH,cAFU,MAAM,GAAC,QAAQ,GAAC,SAAS,GAAC,SAAS,CAI5C;IAqBD;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,sBA0DC;IAED;;;;;;;;;;;;;;;OAeG;IACH,uBAgBC;IAED;;;;;;;;;;;;;;;OAeG;IACH,sBAcC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,iBAPa,OAAO,CAAC,WAAW,CAAC,CAiBhC;IAED;;;;;OAKG;IACH,6CAGC;IA3VC,2CAAgD;;CA4VnD;yBAndM,mBAAmB;iCARnB,2BAA2B;gCACF,0BAA0B;+BAQ3B,yBAAyB"}
1
+ {"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/client/Client.js"],"names":[],"mappings":"AAgCA,+CAA2E;AAC3E,2DAAqG;;AAErG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IAeE;;;OAGG;IACH,oBAHW,YAAY,EA+DtB;IAED;;;;OAIG;IACH,eAFU,MAAM,CAIf;IAED;;;;OAIG;IACH,YAFU,MAAM,CAIf;IAED;;;;OAIG;IACH,cAFU,YAAY,CAIrB;IAED;;;;;;;OAOG;IACH,UAFU,MAAM,CAIf;IAED;;;;;OAKG;IACH,YAFU,MAAM,CAIf;IAED;;;;;;;OAOG;IACH,aAFU,MAAM,CAIf;IAED;;;;OAIG;IACH,eAFU,MAAM,GAAC,SAAS,CAIzB;IAED;;OAEG;IACH,iCAGC;IAED;;;;;OAKG;IACH,cAFU,YAAY,CAIrB;IAED;;;;;;;OAOG;IACH,sBAFU,oBAAoB,CAI7B;IAED;;;;;;;OAOG;IACH,8CAEC;IAED;;;;;;;OAOG;IACH,oBAFU,kBAAkB,CAI3B;IAED;;;;OAIG;IACH,cAFU,MAAM,GAAC,QAAQ,GAAC,SAAS,GAAC,SAAS,CAI5C;IAqBD;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,sBA0DC;IAED;;;;;;;;;;;;;;;OAeG;IACH,uBAgBC;IAED;;;;;;;;;;;;;;;OAeG;IACH,sBAcC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,iBAPa,OAAO,CAAC,WAAW,CAAC,CAiBhC;IAED;;;;;OAKG;IACH,6CAGC;IA3VC,2CAAgD;;CA4VnD;yBAtdM,mBAAmB;iCARnB,2BAA2B;gCACF,0BAA0B;+BAQ3B,yBAAyB"}
@@ -86,7 +86,7 @@ declare class ClientPluginManager<T> extends BasePluginManager {
86
86
  * // server-side
87
87
  * server.pluginManager.register('user-defined-id', pluginFactory);
88
88
  */
89
- register(id: string, ctor: T<ClientPlugin>, options?: object, deps?: any[]): void;
89
+ register(id: string, ctor: T<ClientPlugin>, options?: object, deps?: array): void;
90
90
  /**
91
91
  * Retrieve an fully started instance of a registered plugin.
92
92
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ClientPluginManager.d.ts","sourceRoot":"","sources":["../../src/client/ClientPluginManager.js"],"names":[],"mappings":";AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,kCAFa,CAAC;IAGZ;;;OAGG;IACH,oBAHW,MAAM,EAShB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,aAfW,MAAM,QAEN,CAAC,CAAC,YAAY,CAAC,YACf,MAAM,sBAmBhB;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,QAHW,MAAM,GACJ,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAQpC;CACF;8BAnI6B,gCAAgC;mBAD3C,aAAa"}
1
+ {"version":3,"file":"ClientPluginManager.d.ts","sourceRoot":"","sources":["../../src/client/ClientPluginManager.js"],"names":[],"mappings":";AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,kCAFa,CAAC;IAGZ;;;OAGG;IACH,oBAHW,MAAM,EAShB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,aAfW,MAAM,QAEN,CAAC,CAAC,YAAY,CAAC,YACf,MAAM,SACN,KAAK,QAkBf;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,QAHW,MAAM,GACJ,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAQpC;CACF;8BAnI6B,gCAAgC;mBAD3C,aAAa"}
@@ -61,6 +61,10 @@ declare class ClientSocket {
61
61
  * @param {string} channel - Channel name.
62
62
  */
63
63
  removeAllListeners(channel?: string): void;
64
+ /**
65
+ * Close the socket, will dispatch the close event. For debug testing purpose
66
+ */
67
+ close(): void;
64
68
  /**
65
69
  * Removes all listeners and immediately close the two sockets. Is automatically
66
70
  * called on `client.stop()`
@@ -1 +1 @@
1
- {"version":3,"file":"ClientSocket.d.ts","sourceRoot":"","sources":["../../src/client/ClientSocket.js"],"names":[],"mappings":"AAaA,6CAAsE;;AAEtE;;;;;;;;;;;;;;;;;;;GAmBG;AACH;IAOE,wDAIC;IAED;;;;;;;OAOG;IACH,aA4HC;IAoCD;;;;;;OAMG;IACH,cAJW,MAAM,WACH,GAAC,EAAA,QAQd;IAED;;;;;;;OAOG;IACH,qBALW,MAAM,4BAYhB;IAED;;;;;OAKG;IACH,wBAHW,MAAM,4BAYhB;IAED;;;;OAIG;IACH,6BAFW,MAAM,QAQhB;IA7FD;;;;;;;;;OASG;IACH,2BAWC;;CAyEF"}
1
+ {"version":3,"file":"ClientSocket.d.ts","sourceRoot":"","sources":["../../src/client/ClientSocket.js"],"names":[],"mappings":"AAYA,6CAAsE;;AAEtE;;;;;;;;;;;;;;;;;;;GAmBG;AACH;IAOE,wDAIC;IAED;;;;;;;OAOG;IACH,aA4HC;IAoCD;;;;;;OAMG;IACH,cAJW,MAAM,WACH,GAAC,EAAA,QAQd;IAED;;;;;;;OAOG;IACH,qBALW,MAAM,4BAYhB;IAED;;;;;OAKG;IACH,wBAHW,MAAM,4BAYhB;IAED;;;;OAIG;IACH,6BAFW,MAAM,QAQhB;IAED;;OAEG;IACH,cAEC;IApGD;;;;;;;;;OASG;IACH,2BAWC;;CAgFF"}
@@ -9,11 +9,11 @@ export type ClientAppConfig = {
9
9
  /**
10
10
  * - Name of the application.
11
11
  */
12
- name?: string;
12
+ name?: string | undefined;
13
13
  /**
14
14
  * - Name of the author.
15
15
  */
16
- author?: string;
16
+ author?: string | undefined;
17
17
  };
18
18
  /**
19
19
  * Environment configuration object.
@@ -35,7 +35,7 @@ export type ClientEnvConfig = {
35
35
  /**
36
36
  * - If running behind a proxy, base URL of the application.
37
37
  */
38
- baseUrl?: string;
38
+ baseUrl?: string | undefined;
39
39
  };
40
40
  /**
41
41
  * Configuration object for a client running in a browser runtime.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.js"],"names":[],"mappings":";;;;;;;;;;;WAac,MAAM;;;;aACN,MAAM;;;;;;;;;UAON,MAAM;;;;;mBACN,MAAM;;;;cAEN,OAAO;;;;cACP,MAAM;;;;;;;;;UAON,MAAM;;;;SACN,eAAe;;;;SACf,eAAe"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;UAqBc,MAAM;;;;;mBACN,MAAM;;;;cAEN,OAAO;;;;;;;;;;;;;UAQP,MAAM;;;;SACN,eAAe;;;;SACf,eAAe"}
@@ -81,7 +81,7 @@ declare class BasePluginManager {
81
81
  * // server-side
82
82
  * server.pluginManager.register('user-defined-id', pluginFactory);
83
83
  */
84
- register(id: string, ctor: Function, options?: object, deps?: any[]): void;
84
+ register(id: string, ctor: Function, options?: object, deps?: array): void;
85
85
  /**
86
86
  * Manually add a dependency to a given plugin.
87
87
  *
@@ -1 +1 @@
1
- {"version":3,"file":"BasePluginManager.d.ts","sourceRoot":"","sources":["../../src/common/BasePluginManager.js"],"names":[],"mappings":"AAQA,gDAA6E;AAC7E,+CAA2E;AAC3E,oDAAqF;;;;;oDAM1E,MAAM,aACN,YAAY,GAAC,YAAY,GAAC,IAAI;;;;;AALzC;;;;;;;;GAQG;AAEH;;;;GAIG;AAEH,eAAe;AACf;IAQE,uBAIC;IA8DD;;;;OAIG;IACH,cAFU,MAAM,GAAC,QAAQ,GAAC,SAAS,GAAC,SAAS,CAI5C;IAED;;;;OAIG;IACH,kBAEC;IAED;;;;;;;;;OASG;IACH,iCAqDC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,aAfW,MAAM,4BAGN,MAAM,sBA6ChB;IAED;;;;OAIG;IACH,sDAGC;IAED;;;OAGG;IACH,wBAFa,MAAM,EAAE,CAIpB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,wBAhBW,kCAAkC,GAChC,wCAAwC,CAkBpD;IA9OD;;;;;;OAMG;IACH,8BAyBC;IAED,eAAe;IACf,6BAQC;IA9DC,eAAe;IACf,kCAAyC;;CAiQ5C"}
1
+ {"version":3,"file":"BasePluginManager.d.ts","sourceRoot":"","sources":["../../src/common/BasePluginManager.js"],"names":[],"mappings":"AAQA,gDAA6E;AAC7E,+CAA2E;AAC3E,oDAAqF;;;;;oDAM1E,MAAM,aACN,YAAY,GAAC,YAAY,GAAC,IAAI;;;;;AALzC;;;;;;;;GAQG;AAEH;;;;GAIG;AAEH,eAAe;AACf;IAQE,uBAIC;IA8DD;;;;OAIG;IACH,cAFU,MAAM,GAAC,QAAQ,GAAC,SAAS,GAAC,SAAS,CAI5C;IAED;;;;OAIG;IACH,kBAEC;IAED;;;;;;;;;OASG;IACH,iCAqDC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,aAfW,MAAM,4BAGN,MAAM,SACN,KAAK,QA4Cf;IAED;;;;OAIG;IACH,sDAGC;IAED;;;OAGG;IACH,wBAFa,MAAM,EAAE,CAIpB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,wBAhBW,kCAAkC,GAChC,wCAAwC,CAkBpD;IA9OD;;;;;;OAMG;IACH,8BAyBC;IAED,eAAe;IACf,6BAQC;IA9DC,eAAe;IACf,kCAAyC;;CAiQ5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseStateManager.d.ts","sourceRoot":"","sources":["../../src/common/BaseStateManager.js"],"names":[],"mappings":"AA2BA,8CAAyE;AACzE,qDAAwF;AAExF,gDAA6E;;;;;;;;;;;AAE7E;;;;;;;;GAQG;AACH;;;;;GAKG;AAEH,eAAe;AACf;IAuLE;;;;;;OAMG;IACH,2CAHW,GAAC,QAKX;IAED;;;;;;;;OAQG;IACH,+BANW,oBAAoB,GAEnB,2BAA2B,CAatC;IAED;;OAEG;IACH,wCAGC;IAED;;;;;;;;OAQG;IACH,kBANW,oBAAoB;;QAElB,OAAO,CAAC,WAAW,CAAC,CAahC;;;;;;;;;;;IAKE,kBACQ,oBAAoB,GAClB,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;IAMA,kBACQ,oBAAoB,WACpB,MAAM,GACJ,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;IAMA,kBACQ,oBAAoB,UACpB,MAAM,EAAE,GACN,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;;IAMA,kBACQ,oBAAoB,WACpB,MAAM,UACN,MAAM,EAAE,GACN,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;;;IAsEA,kBACQ,2BAA2B,OAEnC;;;;;;;;;;;;;;;IAWA,mBACQ,oBAAoB,YAEpB,2BAA2B,OAEnC;;;;;;;;;;;;;;;;;;IASA,kBACQ,2BAA2B,WAGnC;QAAyB,YAAY,EAA7B,OAAO;KAEf,OAAA;;;;;;;;;;;;;;;;;;IAWA,mBACQ,oBAAoB,YAEpB,2BAA2B,WAGnC;QAAyB,YAAY,EAA7B,OAAO;KAEf,OAAA;;;;;;;;;;;IAwJA,yBACQ,oBAAoB,GAClB,OAAO,CAAC,qBAAqB,CAAC,CAExC;;;;;;;;;;;;;IAMA,yBACQ,oBAAoB,UACpB,wBAAwB,EAAE,GAExB,OAAO,CAAC,qBAAqB,CAAC,CAExC;;;;;;;;;;;;;;IAMA,yBACQ,oBAAoB,WAE5B;QAAyB,YAAY,EAA7B,OAAO;KAEf,GAAU,OAAO,CAAC,qBAAqB,CAAC,CAExC;;;;;;;;;;;;;;;;IAMA,yBACQ,oBAAoB,UACpB,wBAAwB,EAAE,WAGlC;QAAyB,YAAY,EAA7B,OAAO;KAEf,GAAU,OAAO,CAAC,qBAAqB,CAAC,CAExC;IA7jBH,eAAe;IACf,mCAEC;IAED;;;;;;;OAOG;IACH,4BA2IC;IA5KC,eAAe;IACf,8BAAgC;;CAupBnC;wBAjtBuB,kBAAkB;kCAGnC,4BAA4B"}
1
+ {"version":3,"file":"BaseStateManager.d.ts","sourceRoot":"","sources":["../../src/common/BaseStateManager.js"],"names":[],"mappings":"AAgCA,8CAAyE;AACzE,qDAAwF;AAExF,gDAA6E;;;;;;;;;;;AAE7E;;;;;;;;GAQG;AACH;;;;;GAKG;AAEH,eAAe;AACf;IAuLE;;;;;;OAMG;IACH,2CAHW,GAAC,QAKX;IAED;;;;;;;;OAQG;IACH,+BANW,oBAAoB,GAEnB,2BAA2B,CAatC;IAED;;OAEG;IACH,wCAGC;IAED;;;;;;;;OAQG;IACH,kBANW,oBAAoB;;QAElB,OAAO,CAAC,WAAW,CAAC,CAahC;;;;;;;;;;;IAKE,kBACQ,oBAAoB,GAClB,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;IAMA,kBACQ,oBAAoB,WACpB,MAAM,GACJ,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;IAMA,kBACQ,oBAAoB,UACpB,MAAM,EAAE,GACN,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;;IAMA,kBACQ,oBAAoB,WACpB,MAAM,UACN,MAAM,EAAE,GACN,OAAO,CAAC,WAAW,CAAC,CAE9B;;;;;;;;;;;;;;IAsEA,kBACQ,2BAA2B,OAEnC;;;;;;;;;;;;;;;IAWA,mBACQ,oBAAoB,YAEpB,2BAA2B,OAEnC;;;;;;;;;;;;;;;;;;IASA,kBACQ,2BAA2B,WAGnC;QAAyB,YAAY,EAA7B,OAAO;KAEf,OAAA;;;;;;;;;;;;;;;;;;IAWA,mBACQ,oBAAoB,YAEpB,2BAA2B,WAGnC;QAAyB,YAAY,EAA7B,OAAO;KAEf,OAAA;;;;;;;;;;;IAwJA,yBACQ,oBAAoB,GAClB,OAAO,CAAC,qBAAqB,CAAC,CAExC;;;;;;;;;;;;;IAMA,yBACQ,oBAAoB,UACpB,wBAAwB,EAAE,GAExB,OAAO,CAAC,qBAAqB,CAAC,CAExC;;;;;;;;;;;;;;IAMA,yBACQ,oBAAoB,WAE5B;QAAyB,YAAY,EAA7B,OAAO;KAEf,GAAU,OAAO,CAAC,qBAAqB,CAAC,CAExC;;;;;;;;;;;;;;;;IAMA,yBACQ,oBAAoB,UACpB,wBAAwB,EAAE,WAGlC;QAAyB,YAAY,EAA7B,OAAO;KAEf,GAAU,OAAO,CAAC,qBAAqB,CAAC,CAExC;IA7jBH,eAAe;IACf,mCAEC;IAED;;;;;;;OAOG;IACH,4BA2IC;IA5KC,eAAe;IACf,8BAAgC;;CAupBnC;wBAjtBuB,kBAAkB;kCAGnC,4BAA4B"}
@@ -8,7 +8,7 @@ declare class BatchedTransport {
8
8
  addListener(channel: any, callback: any): void;
9
9
  emit(channel: any, ...args: any[]): Promise<void>;
10
10
  removeListener(channel: any, callback: any): void;
11
- removeAllListeners(channel?: any): void;
11
+ removeAllListeners(channel?: null): void;
12
12
  #private;
13
13
  }
14
14
  //# sourceMappingURL=BatchedTransport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BatchedTransport.d.ts","sourceRoot":"","sources":["../../src/common/BatchedTransport.js"],"names":[],"mappings":";AAEA;;;GAGG;AACH;IAME,4BAeC;IAED,+CAOC;IAED,kDAWC;IAED,kDAKC;IAED,wCAOC;;CACF"}
1
+ {"version":3,"file":"BatchedTransport.d.ts","sourceRoot":"","sources":["../../src/common/BatchedTransport.js"],"names":[],"mappings":";AAEA;;;GAGG;AACH;IAME,4BAeC;IAED,+CAOC;IAED,kDAWC;IAED,kDAKC;IAED,yCAOC;;CACF"}
@@ -11,13 +11,13 @@ export namespace types {
11
11
  export namespace boolean {
12
12
  let required_1: string[];
13
13
  export { required_1 as required };
14
- export const defaultOptions: any;
15
- export function coerceFunction(name: any, def: any, value: any): boolean;
14
+ export namespace defaultOptions { }
15
+ export function coerceFunction(name: any, def: any, value: any): value is true;
16
16
  }
17
17
  export namespace string {
18
18
  let required_2: string[];
19
19
  export { required_2 as required };
20
- const defaultOptions_1: any;
20
+ export namespace defaultOptions_1 { }
21
21
  export { defaultOptions_1 as defaultOptions };
22
22
  export function coerceFunction_1(name: any, def: any, value: any): string;
23
23
  export { coerceFunction_1 as coerceFunction };
@@ -25,7 +25,18 @@ export namespace types {
25
25
  export namespace integer {
26
26
  let required_3: string[];
27
27
  export { required_3 as required };
28
- const defaultOptions_2: any;
28
+ const defaultOptions_2: {
29
+ nullable: boolean;
30
+ event: boolean;
31
+ required: boolean;
32
+ metas: {};
33
+ filterChange: boolean;
34
+ immediate: boolean;
35
+ acknowledge: boolean;
36
+ } & {
37
+ min: number;
38
+ max: number;
39
+ };
29
40
  export { defaultOptions_2 as defaultOptions };
30
41
  export function sanitizeDescription(def: any): any;
31
42
  export function coerceFunction_2(name: any, def: any, value: any): number;
@@ -34,7 +45,18 @@ export namespace types {
34
45
  export namespace float {
35
46
  let required_4: string[];
36
47
  export { required_4 as required };
37
- const defaultOptions_3: any;
48
+ const defaultOptions_3: {
49
+ nullable: boolean;
50
+ event: boolean;
51
+ required: boolean;
52
+ metas: {};
53
+ filterChange: boolean;
54
+ immediate: boolean;
55
+ acknowledge: boolean;
56
+ } & {
57
+ min: number;
58
+ max: number;
59
+ };
38
60
  export { defaultOptions_3 as defaultOptions };
39
61
  export function sanitizeDescription_1(def: any): any;
40
62
  export { sanitizeDescription_1 as sanitizeDescription };
@@ -44,7 +66,7 @@ export namespace types {
44
66
  export namespace _enum {
45
67
  let required_5: string[];
46
68
  export { required_5 as required };
47
- const defaultOptions_4: any;
69
+ export namespace defaultOptions_4 { }
48
70
  export { defaultOptions_4 as defaultOptions };
49
71
  export function coerceFunction_4(name: any, def: any, value: any): any;
50
72
  export { coerceFunction_4 as coerceFunction };
@@ -53,7 +75,7 @@ export namespace types {
53
75
  export namespace any {
54
76
  let required_6: string[];
55
77
  export { required_6 as required };
56
- const defaultOptions_5: any;
78
+ export namespace defaultOptions_5 { }
57
79
  export { defaultOptions_5 as defaultOptions };
58
80
  export function coerceFunction_5(name: any, def: any, value: any): any;
59
81
  export { coerceFunction_5 as coerceFunction };
@@ -135,7 +157,7 @@ declare class ParameterBag {
135
157
  /**
136
158
  * @return {object}
137
159
  */
138
- getDescription(name?: any): object;
160
+ getDescription(name?: null): object;
139
161
  getInitValues(): {};
140
162
  getDefaults(): {};
141
163
  getParamListByDescriptor(descriptorName: any, descriptorValue: any): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"ParameterBag.d.ts","sourceRoot":"","sources":["../../src/common/ParameterBag.js"],"names":[],"mappings":";;;;;;;;;;;;;;QAuBoB,yEAMf;;;;;;;QAOe,0EAMf;;;;;;;;QAUoB,mDAgBpB;QACe,0EAMf;;;;;;;;QAUoB,qDAgBpB;;QACe,0EAMf;;;;;;;;QAOe,uEAOf;;;;;;;;;QAOe,uEAGf;;;;;AAKL,eAAe;AACf;IACE,mDAoCC;IAED,iDAyBC;IAKD,+CAyCC;IAED;;;;;OAKG;IACH,UAHW,MAAM,WAKhB;IAED;;;;;OAKG;IACH,aAFY,MAAM,CAUjB;IAED;;;;;;;;OAQG;IACH,mBAFY,MAAM,CAUjB;IAED;;;;;;OAMG;IACH,UAHW,MAAM,GACL,KAAK,CAchB;IAED;;;;;;;;;OASG;IACH,gBAHW,MAAM,GACL,KAAK,CAQhB;IAED;;;;;OAKG;IACH,iCAFW,KAAK,SAmBf;IAED;;;;;;;;OAQG;IACH,UAJW,MAAM,SACN,KAAK,SAqBf;IAED;;;;;;OAMG;IAWH;;OAEG;IACH,4BAFY,MAAM,CAYjB;IAGD,oBAQC;IAGD,kBAQC;IAGD,8EAUC;;CACF"}
1
+ {"version":3,"file":"ParameterBag.d.ts","sourceRoot":"","sources":["../../src/common/ParameterBag.js"],"names":[],"mappings":";;;;;;;;;;;;;;QAuBoB,+EAMf;;;;;;;QAOe,0EAMf;;;;;;;;;;;;;;;;;;;QAUoB,mDAgBpB;QACe,0EAMf;;;;;;;;;;;;;;;;;;;QAUoB,qDAgBpB;;QACe,0EAMf;;;;;;;;QAOe,uEAOf;;;;;;;;;QAOe,uEAGf;;;;;AAKL,eAAe;AACf;IACE,mDAoCC;IAED,iDAyBC;IAKD,+CAyCC;IAED;;;;;OAKG;IACH,UAHW,MAAM,WAKhB;IAED;;;;;OAKG;IACH,aAFY,MAAM,CAUjB;IAED;;;;;;;;OAQG;IACH,mBAFY,MAAM,CAUjB;IAED;;;;;;OAMG;IACH,UAHW,MAAM,GACL,KAAK,CAchB;IAED;;;;;;;;;OASG;IACH,gBAHW,MAAM,GACL,KAAK,CAQhB;IAED;;;;;OAKG;IACH,iCAFW,KAAK,SAmBf;IAED;;;;;;;;OAQG;IACH,UAJW,MAAM,SACN,KAAK,SAqBf;IAED;;;;;;OAMG;IAWH;;OAEG;IACH,6BAFY,MAAM,CAYjB;IAGD,oBAQC;IAGD,kBAQC;IAGD,8EAUC;;CACF"}
@@ -3,7 +3,7 @@ export default class PromiseStore {
3
3
  constructor(name: any);
4
4
  name: any;
5
5
  store: Map<any, any>;
6
- generateId: any;
6
+ generateId: Function;
7
7
  createPromise(): {
8
8
  id: any;
9
9
  promise: any;
@@ -1 +1 @@
1
- {"version":3,"file":"PromiseStore.d.ts","sourceRoot":"","sources":["../../src/common/PromiseStore.js"],"names":[],"mappings":"AAKA,eAAe;AACf;IACE,uBAIC;IAHC,UAAgB;IAChB,qBAAsB;IACtB,gBAA2B;IAG7B;;;MAYC;IAID,yDAGC;IAED,kCAcC;IAED,gCASC;IAGD,cAMC;CACF"}
1
+ {"version":3,"file":"PromiseStore.d.ts","sourceRoot":"","sources":["../../src/common/PromiseStore.js"],"names":[],"mappings":"AAKA,eAAe;AACf;IACE,uBAIC;IAHC,UAAgB;IAChB,qBAAsB;IACtB,qBAA2B;IAG7B;;;MAYC;IAID,yDAGC;IAED,kCAcC;IAED,gCASC;IAGD,cAMC;CACF"}