@dooboostore/simple-boot-http-server 1.0.25 → 1.0.26

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 (38) hide show
  1. package/dist/cjs/SimpleBootHttpServer.js +14 -2
  2. package/dist/cjs/SimpleBootHttpServer.js.map +2 -2
  3. package/dist/cjs/bundle-entry.js +34 -24
  4. package/dist/cjs/bundle-entry.js.map +2 -2
  5. package/dist/cjs/option/HttpServerOption.js.map +2 -2
  6. package/dist/cjs/proxy/TopicProtocolApiServiceProxy.js +244 -266
  7. package/dist/cjs/proxy/TopicProtocolApiServiceProxy.js.map +3 -3
  8. package/dist/cjs/websocket/WebSocketClient.js +2 -1
  9. package/dist/cjs/websocket/WebSocketClient.js.map +2 -2
  10. package/dist/esm/SimpleBootHttpServer.js +14 -2
  11. package/dist/esm/SimpleBootHttpServer.js.map +2 -2
  12. package/dist/esm/bundle-entry.js +14 -12
  13. package/dist/esm/bundle-entry.js.map +2 -2
  14. package/dist/esm/option/HttpServerOption.js.map +2 -2
  15. package/dist/esm/proxy/TopicProtocolApiServiceProxy.js +244 -266
  16. package/dist/esm/proxy/TopicProtocolApiServiceProxy.js.map +3 -3
  17. package/dist/esm/websocket/WebSocketClient.js +3 -2
  18. package/dist/esm/websocket/WebSocketClient.js.map +2 -2
  19. package/dist/esm-bundle/dooboostore-simple-boot-http-server.esm.js +19393 -9581
  20. package/dist/esm-bundle/dooboostore-simple-boot-http-server.esm.js.map +4 -4
  21. package/dist/types/SimpleBootHttpServer.d.ts.map +1 -1
  22. package/dist/types/bundle-entry.d.ts +7 -12
  23. package/dist/types/bundle-entry.d.ts.map +1 -1
  24. package/dist/types/option/HttpServerOption.d.ts +6 -2
  25. package/dist/types/option/HttpServerOption.d.ts.map +1 -1
  26. package/dist/types/proxy/TopicProtocolApiServiceProxy.d.ts +5 -15
  27. package/dist/types/proxy/TopicProtocolApiServiceProxy.d.ts.map +1 -1
  28. package/dist/types/websocket/WebSocketClient.d.ts.map +1 -1
  29. package/dist/umd-bundle/dooboostore-simple-boot-http-server.umd.js +19437 -9631
  30. package/dist/umd-bundle/dooboostore-simple-boot-http-server.umd.js.map +4 -4
  31. package/dist/umd-bundle/websocket-client.umd.js +207 -1477
  32. package/dist/umd-bundle/websocket-client.umd.js.map +4 -4
  33. package/package.json +8 -8
  34. package/src/SimpleBootHttpServer.ts +16 -2
  35. package/src/bundle-entry.ts +12 -12
  36. package/src/option/HttpServerOption.ts +4 -2
  37. package/src/proxy/TopicProtocolApiServiceProxy.ts +260 -275
  38. package/src/websocket/WebSocketClient.ts +3 -2
@@ -7,11 +7,11 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
7
7
  for (var name in all)
8
8
  __defProp(target, name, { get: all[name], enumerable: true });
9
9
  };
10
- var __copyProps = (to, from2, except, desc) => {
11
- if (from2 && typeof from2 === "object" || typeof from2 === "function") {
12
- for (let key of __getOwnPropNames(from2))
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
13
  if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from2[key], enumerable: !(desc = __getOwnPropDesc(from2, key)) || desc.enumerable });
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
15
  }
16
16
  return to;
17
17
  };
@@ -48,6 +48,7 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
48
48
  DEFAULT_EXPRESSION_CONFIG: () => DEFAULT_EXPRESSION_CONFIG,
49
49
  DateUtils: () => DateUtils,
50
50
  Ellipse: () => Ellipse,
51
+ EmptyError: () => EmptyError,
51
52
  EmptyValidator: () => EmptyValidator,
52
53
  ExcludeCheckedValidatorArray: () => ExcludeCheckedValidatorArray,
53
54
  Expression: () => Expression,
@@ -66,8 +67,6 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
66
67
  LoggerLevel: () => LoggerLevel,
67
68
  MathUtil: () => MathUtil,
68
69
  MemoryStorage: () => MemoryStorage,
69
- MessageInternal: () => internal_exports,
70
- MessageOperator: () => operators_exports,
71
70
  MultipleValidator: () => MultipleValidator,
72
71
  NonPassValidator: () => NonPassValidator,
73
72
  NotEmptyValidator: () => NotEmptyValidator,
@@ -121,9 +120,17 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
121
120
  WebSocketClient: () => WebSocketClient,
122
121
  WrapPolygons: () => WrapPolygons,
123
122
  WrapRects: () => WrapRects,
123
+ concat: () => concat,
124
124
  debounce: () => debounce,
125
125
  debounceTimeIntervalLock: () => debounceTimeIntervalLock,
126
+ defer: () => defer,
127
+ empty: () => empty,
128
+ firstValueFrom: () => firstValueFrom,
129
+ fromArray: () => fromArray,
130
+ fromEvent: () => fromEvent,
131
+ fromPromise: () => fromPromise,
126
132
  getExpression: () => getExpression,
133
+ interval: () => interval,
127
134
  isAtRule: () => isAtRule,
128
135
  isCssCommentItem: () => isCssCommentItem,
129
136
  isCssDeclarationItem: () => isCssDeclarationItem,
@@ -134,8 +141,20 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
134
141
  isRule: () => isRule,
135
142
  isSizeType: () => isSizeType,
136
143
  isStyleRule: () => isStyleRule,
137
- throttle: () => throttle2,
138
- throttleTime: () => throttleTime
144
+ lastValueFrom: () => lastValueFrom,
145
+ merge: () => merge,
146
+ never: () => never,
147
+ of: () => of,
148
+ range: () => range,
149
+ skip: () => skip,
150
+ startWith: () => startWith,
151
+ take: () => take,
152
+ takeWhile: () => takeWhile,
153
+ throttle: () => throttle,
154
+ throttleTime: () => throttleTime,
155
+ throwError: () => throwError,
156
+ timer: () => timer,
157
+ toPromise: () => toPromise
139
158
  });
140
159
 
141
160
  // ../core/dist/esm/valid/ValidUtils.js
@@ -188,11 +207,11 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
188
207
  ValidUtils2.isNullOrUndefined = (data) => {
189
208
  return data == null || void 0 === data;
190
209
  };
191
- ValidUtils2.isConstructor = (obj) => {
192
- return typeof obj === "function" && obj.prototype !== void 0 && obj.prototype.constructor === obj;
210
+ ValidUtils2.isClassType = (obj) => {
211
+ return typeof obj === "function" && /^\s*class\s+/.test(obj.toString());
193
212
  };
194
- ValidUtils2.isFunction = (obj) => {
195
- return typeof obj === "function" && !(0, ValidUtils2.isConstructor)(obj);
213
+ ValidUtils2.isFunctionType = (obj) => {
214
+ return typeof obj === "function";
196
215
  };
197
216
  ValidUtils2.isNullish = (data) => {
198
217
  return ValidUtils2.isNotNullish(data);
@@ -341,6 +360,13 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
341
360
  // ../core/dist/esm/array/ArrayUtils.js
342
361
  var ArrayUtils;
343
362
  ((ArrayUtils2) => {
363
+ ArrayUtils2.split = (data, length) => {
364
+ const result = [];
365
+ for (let i = 0; i < data.length; i += length) {
366
+ result.push(data.slice(i, i + length));
367
+ }
368
+ return result;
369
+ };
344
370
  ArrayUtils2.create2DArray = (rows, cols, initialValue) => {
345
371
  const array = [];
346
372
  for (let row = 0; row < rows; row++) {
@@ -3111,6 +3137,10 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
3111
3137
  const rotatedY = translatedX * Math.sin(angleInRadians) + translatedY * Math.cos(angleInRadians);
3112
3138
  return new Point2D(rotatedX + center.x, rotatedY + center.y);
3113
3139
  };
3140
+ MathUtil2.quadraticBezier = (p0, p1, p2, t) => {
3141
+ const mt = 1 - t;
3142
+ return mt * mt * p0 + 2 * mt * t * p1 + t * t * p2;
3143
+ };
3114
3144
  })(MathUtil || (MathUtil = {}));
3115
3145
 
3116
3146
  // ../core/dist/esm/convert/ConvertUtils.js
@@ -3119,10 +3149,10 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
3119
3149
  ConvertUtils2.objToGetURL = (obj) => {
3120
3150
  return Object.keys(obj).reduce((prev, key, i) => `${prev}${i !== 0 ? "&" : ""}${key}=${obj[key]}`, "");
3121
3151
  };
3122
- ConvertUtils2.mapToJson = (map2) => {
3152
+ ConvertUtils2.mapToJson = (map) => {
3123
3153
  return JSON.stringify(
3124
3154
  Array.from(
3125
- map2.entries()
3155
+ map.entries()
3126
3156
  ).reduce((o, [key, value]) => {
3127
3157
  o[key] = value;
3128
3158
  return o;
@@ -3168,9 +3198,9 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
3168
3198
  });
3169
3199
  return mp;
3170
3200
  };
3171
- ConvertUtils2.mapToObj = (map2) => {
3201
+ ConvertUtils2.mapToObj = (map) => {
3172
3202
  const obj = {};
3173
- map2.forEach((v, k) => {
3203
+ map.forEach((v, k) => {
3174
3204
  obj[k] = v;
3175
3205
  });
3176
3206
  return obj;
@@ -3223,8 +3253,8 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
3223
3253
  return Object.fromEntries(obj);
3224
3254
  } else {
3225
3255
  if (ValidUtils.isMap(obj)) {
3226
- const map2 = obj;
3227
- obj = ConvertUtils2.mapToObj(map2);
3256
+ const map = obj;
3257
+ obj = ConvertUtils2.mapToObj(map);
3228
3258
  }
3229
3259
  if (ValidUtils.isArray(obj)) {
3230
3260
  const arr = obj;
@@ -3479,17 +3509,17 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
3479
3509
  return result;
3480
3510
  };
3481
3511
  ConvertUtils2.groupByMap = (array, keySelector) => {
3482
- return array.reduce((map2, item) => {
3512
+ return array.reduce((map, item) => {
3483
3513
  const key = keySelector(item);
3484
- const group = map2.get(key) || [];
3514
+ const group = map.get(key) || [];
3485
3515
  group.push(item);
3486
- map2.set(key, group);
3487
- return map2;
3516
+ map.set(key, group);
3517
+ return map;
3488
3518
  }, /* @__PURE__ */ new Map());
3489
3519
  };
3490
3520
  ConvertUtils2.groupByObject = (array, keySelector) => {
3491
- const map2 = (0, ConvertUtils2.groupByMap)(array, keySelector);
3492
- return Object.fromEntries(map2);
3521
+ const map = (0, ConvertUtils2.groupByMap)(array, keySelector);
3522
+ return Object.fromEntries(map);
3493
3523
  };
3494
3524
  ConvertUtils2.toURLSearchParams = (data) => {
3495
3525
  const searchParams = new URLSearchParams();
@@ -3979,32 +4009,6 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
3979
4009
  }
3980
4010
  };
3981
4011
 
3982
- // ../core/dist/esm/message/internal/index.js
3983
- var internal_exports = {};
3984
- __export(internal_exports, {
3985
- EmptyError: () => EmptyError,
3986
- concat: () => concat,
3987
- defer: () => defer,
3988
- empty: () => empty,
3989
- firstValueFrom: () => firstValueFrom,
3990
- fromArray: () => fromArray,
3991
- fromEvent: () => fromEvent,
3992
- fromPromise: () => fromPromise,
3993
- interval: () => interval,
3994
- lastValueFrom: () => lastValueFrom,
3995
- merge: () => merge,
3996
- never: () => never,
3997
- of: () => of,
3998
- range: () => range,
3999
- skip: () => skip,
4000
- startWith: () => startWith,
4001
- take: () => take,
4002
- takeWhile: () => takeWhile,
4003
- throwError: () => throwError,
4004
- timer: () => timer,
4005
- toPromise: () => toPromise
4006
- });
4007
-
4008
4012
  // ../core/dist/esm/message/internal/interval.js
4009
4013
  function interval(period = 0) {
4010
4014
  if (period < 0) {
@@ -4213,1181 +4217,28 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
4213
4217
  }).catch((error) => {
4214
4218
  subscriber.error(error);
4215
4219
  });
4216
- } else {
4217
- const observable = result;
4218
- return observable.subscribe({
4219
- next: (value) => subscriber.next(value),
4220
- error: (err) => subscriber.error(err),
4221
- complete: () => subscriber.complete()
4222
- });
4223
- }
4224
- });
4225
- }
4226
-
4227
- // ../core/dist/esm/message/internal/skip.js
4228
- function skip(count) {
4229
- return (source) => {
4230
- return new Observable((subscriber) => {
4231
- let skipped = 0;
4232
- const subscription = source.subscribe({
4233
- next: (value) => {
4234
- if (skipped < count) {
4235
- skipped++;
4236
- } else {
4237
- subscriber.next(value);
4238
- }
4239
- },
4240
- error: (err) => {
4241
- subscriber.error(err);
4242
- },
4243
- complete: () => {
4244
- subscriber.complete();
4245
- }
4246
- });
4247
- return subscription;
4248
- });
4249
- };
4250
- }
4251
-
4252
- // ../core/dist/esm/message/internal/takeWhile.js
4253
- function takeWhile(predicate, inclusive = false) {
4254
- return (source) => {
4255
- return new Observable((subscriber) => {
4256
- let index = 0;
4257
- const subscription = source.subscribe({
4258
- next: (value) => {
4259
- const result = predicate(value, index++);
4260
- if (result) {
4261
- subscriber.next(value);
4262
- } else {
4263
- if (inclusive) {
4264
- subscriber.next(value);
4265
- }
4266
- subscriber.complete();
4267
- }
4268
- },
4269
- error: (err) => {
4270
- subscriber.error(err);
4271
- },
4272
- complete: () => {
4273
- subscriber.complete();
4274
- }
4275
- });
4276
- return subscription;
4277
- });
4278
- };
4279
- }
4280
-
4281
- // ../core/dist/esm/message/internal/startWith.js
4282
- function startWith(...values) {
4283
- return (source) => {
4284
- return new Observable((subscriber) => {
4285
- for (const value of values) {
4286
- subscriber.next(value);
4287
- }
4288
- const subscription = source.subscribe({
4289
- next: (value) => {
4290
- subscriber.next(value);
4291
- },
4292
- error: (err) => {
4293
- subscriber.error(err);
4294
- },
4295
- complete: () => {
4296
- subscriber.complete();
4297
- }
4298
- });
4299
- return subscription;
4300
- });
4301
- };
4302
- }
4303
-
4304
- // ../core/dist/esm/message/internal/concat.js
4305
- function concat(...observables) {
4306
- return new Observable((subscriber) => {
4307
- let currentIndex = 0;
4308
- let currentSubscription;
4309
- function subscribeToNext() {
4310
- if (currentIndex >= observables.length) {
4311
- subscriber.complete();
4312
- return;
4313
- }
4314
- const currentObservable = observables[currentIndex++];
4315
- currentSubscription = currentObservable.subscribe({
4316
- next: (value) => {
4317
- subscriber.next(value);
4318
- },
4319
- error: (err) => {
4320
- subscriber.error(err);
4321
- },
4322
- complete: () => {
4323
- subscribeToNext();
4324
- }
4325
- });
4326
- }
4327
- subscribeToNext();
4328
- return () => {
4329
- if (currentSubscription) {
4330
- currentSubscription.unsubscribe();
4331
- }
4332
- };
4333
- });
4334
- }
4335
-
4336
- // ../core/dist/esm/message/internal/merge.js
4337
- function merge(...observables) {
4338
- return new Observable((subscriber) => {
4339
- if (observables.length === 0) {
4340
- subscriber.complete();
4341
- return;
4342
- }
4343
- let completedCount = 0;
4344
- const subscriptions = [];
4345
- for (const observable of observables) {
4346
- const subscription = observable.subscribe({
4347
- next: (value) => {
4348
- subscriber.next(value);
4349
- },
4350
- error: (err) => {
4351
- subscriber.error(err);
4352
- },
4353
- complete: () => {
4354
- completedCount++;
4355
- if (completedCount === observables.length) {
4356
- subscriber.complete();
4357
- }
4358
- }
4359
- });
4360
- subscriptions.push(subscription);
4361
- }
4362
- return () => {
4363
- subscriptions.forEach((sub) => sub.unsubscribe());
4364
- };
4365
- });
4366
- }
4367
-
4368
- // ../core/dist/esm/message/internal/fromEvent.js
4369
- function fromEvent(target, eventName) {
4370
- return new Observable((subscriber) => {
4371
- const handler = (event) => {
4372
- subscriber.next(event);
4373
- };
4374
- target.addEventListener(eventName, handler);
4375
- return () => {
4376
- target.removeEventListener(eventName, handler);
4377
- };
4378
- });
4379
- }
4380
-
4381
- // ../core/dist/esm/message/internal/toPromise.js
4382
- function toPromise(source) {
4383
- return new Promise((resolve, reject) => {
4384
- let _hasValue = false;
4385
- let _value;
4386
- source.subscribe({
4387
- next: (value) => {
4388
- _value = value;
4389
- _hasValue = true;
4390
- },
4391
- error: reject,
4392
- complete: () => {
4393
- if (_hasValue) {
4394
- resolve(_value);
4395
- } else {
4396
- reject(new EmptyError());
4397
- }
4398
- }
4399
- });
4400
- });
4401
- }
4402
-
4403
- // ../core/dist/esm/message/operators/index.js
4404
- var operators_exports = {};
4405
- __export(operators_exports, {
4406
- EmptyError: () => EmptyError2,
4407
- SequenceError: () => SequenceError,
4408
- TimeoutError: () => TimeoutError,
4409
- bufferTime: () => bufferTime,
4410
- catchError: () => catchError,
4411
- concatMap: () => concatMap,
4412
- debounceTime: () => debounceTime,
4413
- delay: () => delay,
4414
- distinctUntilChanged: () => distinctUntilChanged,
4415
- filter: () => filter,
4416
- finalize: () => finalize,
4417
- find: () => find,
4418
- first: () => first,
4419
- from: () => from,
4420
- interval: () => interval2,
4421
- map: () => map,
4422
- mergeMap: () => mergeMap,
4423
- reduce: () => reduce,
4424
- retry: () => retry,
4425
- scan: () => scan,
4426
- share: () => share,
4427
- single: () => single,
4428
- skip: () => skip2,
4429
- skipWhile: () => skipWhile,
4430
- switchMap: () => switchMap,
4431
- take: () => take2,
4432
- takeLast: () => takeLast,
4433
- takeUntil: () => takeUntil,
4434
- takeWhile: () => takeWhile2,
4435
- tap: () => tap,
4436
- throttle: () => throttle,
4437
- timeout: () => timeout
4438
- });
4439
-
4440
- // ../core/dist/esm/message/operators/bufferTime.js
4441
- function bufferTime(bufferTimeSpan, config) {
4442
- return (source) => {
4443
- return new Observable((subscriber) => {
4444
- const bufferCreationInterval = config?.bufferCreationInterval;
4445
- const maxBufferSize = config?.maxBufferSize;
4446
- const skipEmpty = config?.skipEmpty ?? false;
4447
- const setIntervalFn = config?.setInterval || setInterval;
4448
- const setTimeoutFn = config?.setTimeout || setTimeout;
4449
- const clearIntervalFn = config?.clearInterval || clearInterval;
4450
- const clearTimeoutFn = config?.clearTimeout || clearTimeout;
4451
- if (bufferCreationInterval === void 0 || bufferCreationInterval === null) {
4452
- let buffer = [];
4453
- const intervalId = setIntervalFn(() => {
4454
- if (!skipEmpty || buffer.length > 0) {
4455
- subscriber.next(buffer);
4456
- }
4457
- buffer = [];
4458
- }, bufferTimeSpan);
4459
- const sourceSubscription2 = source.subscribe({
4460
- next: (value) => {
4461
- buffer.push(value);
4462
- if (maxBufferSize && buffer.length >= maxBufferSize) {
4463
- subscriber.next(buffer);
4464
- buffer = [];
4465
- }
4466
- },
4467
- error: (err) => {
4468
- subscriber.error(err);
4469
- clearIntervalFn(intervalId);
4470
- },
4471
- complete: () => {
4472
- if (!skipEmpty || buffer.length > 0) {
4473
- subscriber.next(buffer);
4474
- }
4475
- subscriber.complete();
4476
- clearIntervalFn(intervalId);
4477
- }
4478
- });
4479
- return () => {
4480
- sourceSubscription2.unsubscribe();
4481
- clearIntervalFn(intervalId);
4482
- };
4483
- }
4484
- const buffers = [];
4485
- let creationIntervalId;
4486
- const createBuffer = () => {
4487
- const newBuffer = [];
4488
- const timeoutId = setTimeoutFn(() => {
4489
- const index = buffers.findIndex((b) => b.timeoutId === timeoutId);
4490
- if (index !== -1) {
4491
- const [removed] = buffers.splice(index, 1);
4492
- if (!skipEmpty || removed.buffer.length > 0) {
4493
- subscriber.next(removed.buffer);
4494
- }
4495
- }
4496
- }, bufferTimeSpan);
4497
- buffers.push({ buffer: newBuffer, timeoutId });
4498
- };
4499
- createBuffer();
4500
- creationIntervalId = setIntervalFn(() => {
4501
- createBuffer();
4502
- }, bufferCreationInterval);
4503
- const sourceSubscription = source.subscribe({
4504
- next: (value) => {
4505
- for (const bufferObj of buffers) {
4506
- bufferObj.buffer.push(value);
4507
- if (maxBufferSize && bufferObj.buffer.length >= maxBufferSize) {
4508
- const index = buffers.indexOf(bufferObj);
4509
- if (index !== -1) {
4510
- buffers.splice(index, 1);
4511
- clearTimeoutFn(bufferObj.timeoutId);
4512
- subscriber.next(bufferObj.buffer);
4513
- }
4514
- }
4515
- }
4516
- },
4517
- error: (err) => {
4518
- subscriber.error(err);
4519
- clearIntervalFn(creationIntervalId);
4520
- buffers.forEach((b) => clearTimeoutFn(b.timeoutId));
4521
- },
4522
- complete: () => {
4523
- clearIntervalFn(creationIntervalId);
4524
- buffers.forEach((b) => {
4525
- clearTimeoutFn(b.timeoutId);
4526
- if (!skipEmpty || b.buffer.length > 0) {
4527
- subscriber.next(b.buffer);
4528
- }
4529
- });
4530
- subscriber.complete();
4531
- }
4532
- });
4533
- return () => {
4534
- sourceSubscription.unsubscribe();
4535
- clearIntervalFn(creationIntervalId);
4536
- buffers.forEach((b) => clearTimeoutFn(b.timeoutId));
4537
- };
4538
- });
4539
- };
4540
- }
4541
-
4542
- // ../core/dist/esm/message/operators/debounceTime.js
4543
- function debounceTime(duration, config) {
4544
- return (source) => {
4545
- return new Observable((subscriber) => {
4546
- const setTimeoutFn = config?.setTimeout || setTimeout;
4547
- const clearTimeoutFn = config?.clearTimeout || clearTimeout;
4548
- let timeoutId = null;
4549
- let lastValue;
4550
- let hasValue = false;
4551
- const subscription = source.subscribe({
4552
- next: (value) => {
4553
- clearTimeoutFn(timeoutId);
4554
- lastValue = value;
4555
- hasValue = true;
4556
- timeoutId = setTimeoutFn(() => {
4557
- if (hasValue) {
4558
- subscriber.next(lastValue);
4559
- hasValue = false;
4560
- }
4561
- }, duration);
4562
- },
4563
- error: (err) => {
4564
- clearTimeoutFn(timeoutId);
4565
- subscriber.error(err);
4566
- },
4567
- complete: () => {
4568
- clearTimeoutFn(timeoutId);
4569
- if (hasValue) {
4570
- subscriber.next(lastValue);
4571
- }
4572
- subscriber.complete();
4573
- }
4574
- });
4575
- return subscription;
4576
- });
4577
- };
4578
- }
4579
-
4580
- // ../core/dist/esm/message/operators/distinctUntilChanged.js
4581
- function distinctUntilChanged(comparator) {
4582
- return (source) => {
4583
- return new Observable((subscriber) => {
4584
- let hasValue = false;
4585
- let previousValue;
4586
- const subscription = source.subscribe({
4587
- next: (value) => {
4588
- const areEqual = hasValue ? comparator ? comparator(previousValue, value) : previousValue === value : false;
4589
- if (!areEqual) {
4590
- hasValue = true;
4591
- previousValue = value;
4592
- subscriber.next(value);
4593
- }
4594
- },
4595
- error: (err) => {
4596
- subscriber.error(err);
4597
- },
4598
- complete: () => {
4599
- subscriber.complete();
4600
- }
4601
- });
4602
- return subscription;
4603
- });
4604
- };
4605
- }
4606
-
4607
- // ../core/dist/esm/message/operators/filter.js
4608
- function filter(predicate) {
4609
- return (source) => {
4610
- return new Observable((subscriber) => {
4611
- let index = 0;
4612
- const subscription = source.subscribe({
4613
- next: (value) => {
4614
- try {
4615
- if (predicate(value, index++)) {
4616
- subscriber.next(value);
4617
- }
4618
- } catch (err) {
4619
- subscriber.error(err);
4620
- }
4621
- },
4622
- error: (err) => {
4623
- subscriber.error(err);
4624
- },
4625
- complete: () => {
4626
- subscriber.complete();
4627
- }
4628
- });
4629
- return subscription;
4630
- });
4631
- };
4632
- }
4633
-
4634
- // ../core/dist/esm/message/operators/from.js
4635
- function from(input) {
4636
- return new Observable((subscriber) => {
4637
- for (let i = 0; i < input.length; i++) {
4638
- subscriber.next(input[i]);
4639
- }
4640
- subscriber.complete();
4641
- });
4642
- }
4643
-
4644
- // ../core/dist/esm/message/operators/map.js
4645
- function map(project) {
4646
- return (source) => {
4647
- return new Observable((subscriber) => {
4648
- let index = 0;
4649
- const subscription = source.subscribe({
4650
- next: (value) => {
4651
- try {
4652
- subscriber.next(project(value, index++));
4653
- } catch (err) {
4654
- subscriber.error(err);
4655
- }
4656
- },
4657
- error: (err) => {
4658
- subscriber.error(err);
4659
- },
4660
- complete: () => {
4661
- subscriber.complete();
4662
- }
4663
- });
4664
- return subscription;
4665
- });
4666
- };
4667
- }
4668
-
4669
- // ../core/dist/esm/message/operators/skip.js
4670
- function skip2(count) {
4671
- return (source) => {
4672
- return new Observable((subscriber) => {
4673
- let skipped = 0;
4674
- const sourceSubscription = source.subscribe({
4675
- next: (value) => {
4676
- if (skipped < count) {
4677
- skipped++;
4678
- } else {
4679
- subscriber.next(value);
4680
- }
4681
- },
4682
- error: (err) => {
4683
- subscriber.error(err);
4684
- },
4685
- complete: () => {
4686
- subscriber.complete();
4687
- }
4688
- });
4689
- return () => {
4690
- sourceSubscription.unsubscribe();
4691
- };
4692
- });
4693
- };
4694
- }
4695
-
4696
- // ../core/dist/esm/message/operators/tap.js
4697
- function tap(observerOrNext, error, complete) {
4698
- return (source) => {
4699
- return new Observable((subscriber) => {
4700
- const partialObserver = {
4701
- next: typeof observerOrNext === "object" ? observerOrNext.next : observerOrNext,
4702
- error: typeof observerOrNext === "object" ? observerOrNext.error : error,
4703
- complete: typeof observerOrNext === "object" ? observerOrNext.complete : complete
4704
- };
4705
- const subscription = source.subscribe({
4706
- next: (value) => {
4707
- try {
4708
- partialObserver.next?.(value);
4709
- } catch (err) {
4710
- subscriber.error(err);
4711
- return;
4712
- }
4713
- subscriber.next(value);
4714
- },
4715
- error: (err) => {
4716
- try {
4717
- partialObserver.error?.(err);
4718
- } catch (e) {
4719
- subscriber.error(e);
4720
- return;
4721
- }
4722
- subscriber.error(err);
4723
- },
4724
- complete: () => {
4725
- try {
4726
- partialObserver.complete?.();
4727
- } catch (err) {
4728
- subscriber.error(err);
4729
- return;
4730
- }
4731
- subscriber.complete();
4732
- }
4733
- });
4734
- return subscription;
4735
- });
4736
- };
4737
- }
4738
-
4739
- // ../core/dist/esm/message/operators/switchMap.js
4740
- function switchMap(project) {
4741
- return (source) => {
4742
- return new Observable((subscriber) => {
4743
- let index = 0;
4744
- let innerSubscription = null;
4745
- let hasCompleted = false;
4746
- let outerCompleted = false;
4747
- const checkForComplete = () => {
4748
- if (outerCompleted && !innerSubscription) {
4749
- subscriber.complete();
4750
- }
4751
- };
4752
- const outerSubscription = source.subscribe({
4753
- next: (value) => {
4754
- if (innerSubscription) {
4755
- innerSubscription.unsubscribe();
4756
- innerSubscription = null;
4757
- }
4758
- try {
4759
- const innerObservable = project(value, index++);
4760
- let isInnerComplete = false;
4761
- let currentInnerSub = null;
4762
- const sub = innerObservable.subscribe({
4763
- next: (innerValue) => {
4764
- subscriber.next(innerValue);
4765
- },
4766
- error: (err) => {
4767
- subscriber.error(err);
4768
- },
4769
- complete: () => {
4770
- isInnerComplete = true;
4771
- if (innerSubscription === currentInnerSub) {
4772
- innerSubscription = null;
4773
- }
4774
- checkForComplete();
4775
- }
4776
- });
4777
- if (!isInnerComplete) {
4778
- currentInnerSub = sub;
4779
- innerSubscription = sub;
4780
- }
4781
- } catch (err) {
4782
- subscriber.error(err);
4783
- }
4784
- },
4785
- error: (err) => {
4786
- subscriber.error(err);
4787
- },
4788
- complete: () => {
4789
- outerCompleted = true;
4790
- checkForComplete();
4791
- }
4792
- });
4793
- return () => {
4794
- outerSubscription.unsubscribe();
4795
- if (innerSubscription) {
4796
- innerSubscription.unsubscribe();
4797
- }
4798
- };
4799
- });
4800
- };
4801
- }
4802
-
4803
- // ../core/dist/esm/message/operators/mergeMap.js
4804
- function mergeMap(project) {
4805
- return (source) => {
4806
- return new Observable((subscriber) => {
4807
- let index = 0;
4808
- let activeCount = 0;
4809
- let hasCompleted = false;
4810
- const innerSubscriptions = [];
4811
- const checkComplete = () => {
4812
- if (hasCompleted && activeCount === 0) {
4813
- subscriber.complete();
4814
- }
4815
- };
4816
- const sourceSubscription = source.subscribe({
4817
- next: (value) => {
4818
- activeCount++;
4819
- const currentIndex = index++;
4820
- try {
4821
- const projected = project(value, currentIndex);
4822
- const innerObservable = projected instanceof Promise ? new Observable((innerSubscriber) => {
4823
- projected.then((result) => {
4824
- innerSubscriber.next(result);
4825
- innerSubscriber.complete();
4826
- }).catch((err) => {
4827
- innerSubscriber.error(err);
4828
- });
4829
- }) : projected;
4830
- let isInnerComplete = false;
4831
- let innerSubscription = null;
4832
- const sub = innerObservable.subscribe({
4833
- next: (innerValue) => {
4834
- subscriber.next(innerValue);
4835
- },
4836
- error: (err) => {
4837
- activeCount--;
4838
- subscriber.error(err);
4839
- },
4840
- complete: () => {
4841
- activeCount--;
4842
- isInnerComplete = true;
4843
- if (innerSubscription) {
4844
- const idx = innerSubscriptions.indexOf(innerSubscription);
4845
- if (idx >= 0) {
4846
- innerSubscriptions.splice(idx, 1);
4847
- }
4848
- }
4849
- checkComplete();
4850
- }
4851
- });
4852
- if (!isInnerComplete) {
4853
- innerSubscription = sub;
4854
- innerSubscriptions.push(innerSubscription);
4855
- }
4856
- } catch (err) {
4857
- activeCount--;
4858
- subscriber.error(err);
4859
- }
4860
- },
4861
- error: (err) => {
4862
- subscriber.error(err);
4863
- },
4864
- complete: () => {
4865
- hasCompleted = true;
4866
- checkComplete();
4867
- }
4868
- });
4869
- return () => {
4870
- sourceSubscription.unsubscribe();
4871
- innerSubscriptions.forEach((sub) => sub.unsubscribe());
4872
- };
4873
- });
4874
- };
4875
- }
4876
-
4877
- // ../core/dist/esm/message/operators/concatMap.js
4878
- function concatMap(project) {
4879
- return (source) => {
4880
- return new Observable((subscriber) => {
4881
- let index = 0;
4882
- let buffer = [];
4883
- let activeInnerSubscription = null;
4884
- let hasCompleted = false;
4885
- const checkForComplete = () => {
4886
- if (hasCompleted && !activeInnerSubscription && buffer.length === 0) {
4887
- subscriber.complete();
4888
- }
4889
- };
4890
- const subscribeToNext = () => {
4891
- if (buffer.length === 0 || activeInnerSubscription) {
4892
- return;
4893
- }
4894
- const next = buffer.shift();
4895
- try {
4896
- const innerObservable = project(next.value, next.index);
4897
- let isInnerComplete = false;
4898
- const sub = innerObservable.subscribe({
4899
- next: (innerValue) => {
4900
- subscriber.next(innerValue);
4901
- },
4902
- error: (err) => {
4903
- activeInnerSubscription = null;
4904
- subscriber.error(err);
4905
- },
4906
- complete: () => {
4907
- isInnerComplete = true;
4908
- activeInnerSubscription = null;
4909
- subscribeToNext();
4910
- checkForComplete();
4911
- }
4912
- });
4913
- if (!isInnerComplete) {
4914
- activeInnerSubscription = sub;
4915
- }
4916
- } catch (err) {
4917
- activeInnerSubscription = null;
4918
- subscriber.error(err);
4919
- }
4920
- };
4921
- const outerSubscription = source.subscribe({
4922
- next: (value) => {
4923
- buffer.push({ value, index: index++ });
4924
- subscribeToNext();
4925
- },
4926
- error: (err) => {
4927
- subscriber.error(err);
4928
- },
4929
- complete: () => {
4930
- hasCompleted = true;
4931
- checkForComplete();
4932
- }
4933
- });
4934
- return () => {
4935
- outerSubscription.unsubscribe();
4936
- if (activeInnerSubscription) {
4937
- activeInnerSubscription.unsubscribe();
4938
- }
4939
- };
4940
- });
4941
- };
4942
- }
4943
-
4944
- // ../core/dist/esm/message/operators/catchError.js
4945
- function catchError(selector) {
4946
- return (source) => {
4947
- return new Observable((subscriber) => {
4948
- let subscription;
4949
- const subscribeToSource = () => {
4950
- subscription = source.subscribe({
4951
- next: (value) => {
4952
- subscriber.next(value);
4953
- },
4954
- error: (err) => {
4955
- try {
4956
- const result = selector(err, source);
4957
- let isInnerComplete = false;
4958
- const sub = result.subscribe({
4959
- next: (value) => {
4960
- subscriber.next(value);
4961
- },
4962
- error: (innerErr) => {
4963
- subscriber.error(innerErr);
4964
- },
4965
- complete: () => {
4966
- isInnerComplete = true;
4967
- subscriber.complete();
4968
- }
4969
- });
4970
- if (!isInnerComplete) {
4971
- subscription = sub;
4972
- }
4973
- } catch (selectorErr) {
4974
- subscriber.error(selectorErr);
4975
- }
4976
- },
4977
- complete: () => {
4978
- subscriber.complete();
4979
- }
4980
- });
4981
- };
4982
- subscribeToSource();
4983
- return () => {
4984
- if (subscription) {
4985
- subscription.unsubscribe();
4986
- }
4987
- };
4988
- });
4989
- };
4990
- }
4991
-
4992
- // ../core/dist/esm/message/operators/retry.js
4993
- function retry(count = 3) {
4994
- return (source) => {
4995
- return new Observable((subscriber) => {
4996
- let retryCount = 0;
4997
- let subscription;
4998
- const subscribeToSource = () => {
4999
- subscription = source.subscribe({
5000
- next: (value) => {
5001
- subscriber.next(value);
5002
- },
5003
- error: (err) => {
5004
- if (retryCount < count) {
5005
- retryCount++;
5006
- subscribeToSource();
5007
- } else {
5008
- subscriber.error(err);
5009
- }
5010
- },
5011
- complete: () => {
5012
- subscriber.complete();
5013
- }
5014
- });
5015
- };
5016
- subscribeToSource();
5017
- return () => {
5018
- if (subscription) {
5019
- subscription.unsubscribe();
5020
- }
5021
- };
5022
- });
5023
- };
5024
- }
5025
-
5026
- // ../core/dist/esm/message/operators/delay.js
5027
- function delay(delayMs, config) {
5028
- return (source) => {
5029
- return new Observable((subscriber) => {
5030
- const setTimeoutFn = config?.setTimeout || setTimeout;
5031
- const clearTimeoutFn = config?.clearTimeout || clearTimeout;
5032
- const timeouts = [];
5033
- const subscription = source.subscribe({
5034
- next: (value) => {
5035
- const timeoutId = setTimeoutFn(() => {
5036
- subscriber.next(value);
5037
- }, delayMs);
5038
- timeouts.push(timeoutId);
5039
- },
5040
- error: (err) => {
5041
- const timeoutId = setTimeoutFn(() => {
5042
- subscriber.error(err);
5043
- }, delayMs);
5044
- timeouts.push(timeoutId);
5045
- },
5046
- complete: () => {
5047
- const timeoutId = setTimeoutFn(() => {
5048
- subscriber.complete();
5049
- }, delayMs);
5050
- timeouts.push(timeoutId);
5051
- }
5052
- });
5053
- return () => {
5054
- subscription.unsubscribe();
5055
- timeouts.forEach((timeout2) => clearTimeoutFn(timeout2));
5056
- };
5057
- });
5058
- };
5059
- }
5060
-
5061
- // ../core/dist/esm/message/operators/timeout.js
5062
- var TimeoutError = class extends Error {
5063
- constructor(message = "Timeout has occurred") {
5064
- super(message);
5065
- this.name = "TimeoutError";
5066
- }
5067
- };
5068
- function timeout(due, config) {
5069
- return (source) => {
5070
- return new Observable((subscriber) => {
5071
- const setTimeoutFn = config?.setTimeout || setTimeout;
5072
- const clearTimeoutFn = config?.clearTimeout || clearTimeout;
5073
- let timeoutId;
5074
- let hasEmitted = false;
5075
- const resetTimeout = () => {
5076
- if (timeoutId) {
5077
- clearTimeoutFn(timeoutId);
5078
- }
5079
- timeoutId = setTimeoutFn(() => {
5080
- if (!hasEmitted) {
5081
- subscriber.error(new TimeoutError());
5082
- }
5083
- }, due);
5084
- };
5085
- resetTimeout();
5086
- const subscription = source.subscribe({
5087
- next: (value) => {
5088
- hasEmitted = true;
5089
- clearTimeoutFn(timeoutId);
5090
- subscriber.next(value);
5091
- resetTimeout();
5092
- },
5093
- error: (err) => {
5094
- clearTimeoutFn(timeoutId);
5095
- subscriber.error(err);
5096
- },
5097
- complete: () => {
5098
- clearTimeoutFn(timeoutId);
5099
- subscriber.complete();
5100
- }
5101
- });
5102
- return () => {
5103
- clearTimeoutFn(timeoutId);
5104
- subscription.unsubscribe();
5105
- };
5106
- });
5107
- };
5108
- }
5109
-
5110
- // ../core/dist/esm/message/operators/scan.js
5111
- function scan(accumulator, seed) {
5112
- return (source) => {
5113
- return new Observable((subscriber) => {
5114
- let hasAccumulator = arguments.length >= 2;
5115
- let acc = seed;
5116
- let index = 0;
5117
- const subscription = source.subscribe({
5118
- next: (value) => {
5119
- try {
5120
- if (!hasAccumulator) {
5121
- acc = value;
5122
- hasAccumulator = true;
5123
- } else {
5124
- acc = accumulator(acc, value, index);
5125
- }
5126
- subscriber.next(acc);
5127
- index++;
5128
- } catch (err) {
5129
- subscriber.error(err);
5130
- }
5131
- },
5132
- error: (err) => {
5133
- subscriber.error(err);
5134
- },
5135
- complete: () => {
5136
- subscriber.complete();
5137
- }
5138
- });
5139
- return subscription;
5140
- });
5141
- };
5142
- }
5143
-
5144
- // ../core/dist/esm/message/operators/reduce.js
5145
- function reduce(accumulator, seed) {
5146
- return (source) => {
5147
- return new Observable((subscriber) => {
5148
- let hasAccumulator = arguments.length >= 2;
5149
- let acc = seed;
5150
- let index = 0;
5151
- const subscription = source.subscribe({
5152
- next: (value) => {
5153
- try {
5154
- if (!hasAccumulator) {
5155
- acc = value;
5156
- hasAccumulator = true;
5157
- } else {
5158
- acc = accumulator(acc, value, index);
5159
- }
5160
- index++;
5161
- } catch (err) {
5162
- subscriber.error(err);
5163
- }
5164
- },
5165
- error: (err) => {
5166
- subscriber.error(err);
5167
- },
5168
- complete: () => {
5169
- if (hasAccumulator) {
5170
- subscriber.next(acc);
5171
- subscriber.complete();
5172
- } else {
5173
- subscriber.error(new Error("Reduce of empty sequence with no initial value"));
5174
- }
5175
- }
5176
- });
5177
- return subscription;
5178
- });
5179
- };
5180
- }
5181
-
5182
- // ../core/dist/esm/message/operators/share.js
5183
- function share() {
5184
- return (source) => {
5185
- let subject = null;
5186
- let sourceSubscription = null;
5187
- let refCount = 0;
5188
- let hasCompleted = false;
5189
- let hasErrored = false;
5190
- const reset = () => {
5191
- subject = null;
5192
- sourceSubscription = null;
5193
- hasCompleted = false;
5194
- hasErrored = false;
5195
- };
5196
- return new Observable((subscriber) => {
5197
- refCount++;
5198
- let isFirst = false;
5199
- if (!subject || hasCompleted || hasErrored) {
5200
- if (sourceSubscription) {
5201
- sourceSubscription.unsubscribe();
5202
- }
5203
- subject = new Subject();
5204
- hasCompleted = false;
5205
- hasErrored = false;
5206
- isFirst = true;
5207
- }
5208
- const subscription = subject.subscribe({
5209
- next: (value) => subscriber.next(value),
5210
- error: (err) => subscriber.error(err),
5211
- complete: () => subscriber.complete()
5212
- });
5213
- if (isFirst) {
5214
- const sub = source.subscribe({
5215
- next: (value) => {
5216
- if (subject) {
5217
- subject.next(value);
5218
- }
5219
- },
5220
- error: (err) => {
5221
- hasErrored = true;
5222
- const s = subject;
5223
- if (s) {
5224
- s.error(err);
5225
- }
5226
- if (refCount === 0) {
5227
- reset();
5228
- }
5229
- },
5230
- complete: () => {
5231
- hasCompleted = true;
5232
- const s = subject;
5233
- if (s) {
5234
- s.complete();
5235
- }
5236
- if (refCount === 0) {
5237
- reset();
5238
- }
5239
- }
5240
- });
5241
- if (!subject) {
5242
- sub.unsubscribe();
5243
- } else {
5244
- sourceSubscription = sub;
5245
- }
5246
- }
5247
- return () => {
5248
- refCount--;
5249
- subscription.unsubscribe();
5250
- if (refCount === 0) {
5251
- if (sourceSubscription) {
5252
- sourceSubscription.unsubscribe();
5253
- }
5254
- reset();
5255
- }
5256
- };
5257
- });
5258
- };
5259
- }
5260
-
5261
- // ../core/dist/esm/message/operators/finalize.js
5262
- function finalize(callback) {
5263
- return (source) => {
5264
- return new Observable((subscriber) => {
5265
- let executed = false;
5266
- const executeCallback = () => {
5267
- if (!executed) {
5268
- executed = true;
5269
- callback();
5270
- }
5271
- };
5272
- const subscription = source.subscribe({
5273
- next: (value) => {
5274
- subscriber.next(value);
5275
- },
5276
- error: (err) => {
5277
- try {
5278
- executeCallback();
5279
- } finally {
5280
- subscriber.error(err);
5281
- }
5282
- },
5283
- complete: () => {
5284
- try {
5285
- executeCallback();
5286
- } finally {
5287
- subscriber.complete();
5288
- }
5289
- }
5290
- });
5291
- return () => {
5292
- try {
5293
- subscription.unsubscribe();
5294
- } finally {
5295
- executeCallback();
5296
- }
5297
- };
5298
- });
5299
- };
5300
- }
5301
-
5302
- // ../core/dist/esm/message/operators/first.js
5303
- function first(predicate, defaultValue) {
5304
- return (source) => {
5305
- return new Observable((subscriber) => {
5306
- let index = 0;
5307
- let hasValue = false;
5308
- const subscription = source.subscribe({
5309
- next: (value) => {
5310
- if (hasValue) {
5311
- return;
5312
- }
5313
- const shouldEmit = predicate ? predicate(value, index++) : true;
5314
- if (shouldEmit) {
5315
- hasValue = true;
5316
- subscriber.next(value);
5317
- subscriber.complete();
5318
- subscription.unsubscribe();
5319
- }
5320
- },
5321
- error: (err) => {
5322
- if (!hasValue) {
5323
- subscriber.error(err);
5324
- }
5325
- },
5326
- complete: () => {
5327
- if (!hasValue) {
5328
- if (defaultValue !== void 0) {
5329
- subscriber.next(defaultValue);
5330
- subscriber.complete();
5331
- } else {
5332
- subscriber.error(new Error("no elements in sequence"));
5333
- }
5334
- }
5335
- }
5336
- });
5337
- return subscription;
5338
- });
5339
- };
5340
- }
5341
-
5342
- // ../core/dist/esm/message/operators/take.js
5343
- function take2(count) {
5344
- return (source) => {
5345
- return new Observable((subscriber) => {
5346
- let taken = 0;
5347
- if (count === 0) {
5348
- subscriber.complete();
5349
- return;
5350
- }
5351
- const sourceSubscription = source.subscribe({
5352
- next: (value) => {
5353
- if (taken < count) {
5354
- taken++;
5355
- subscriber.next(value);
5356
- if (taken === count) {
5357
- subscriber.complete();
5358
- sourceSubscription.unsubscribe();
5359
- }
5360
- }
5361
- },
5362
- error: (err) => {
5363
- subscriber.error(err);
5364
- },
5365
- complete: () => {
5366
- subscriber.complete();
5367
- }
4220
+ } else {
4221
+ const observable = result;
4222
+ return observable.subscribe({
4223
+ next: (value) => subscriber.next(value),
4224
+ error: (err) => subscriber.error(err),
4225
+ complete: () => subscriber.complete()
5368
4226
  });
5369
- return () => {
5370
- sourceSubscription.unsubscribe();
5371
- };
5372
- });
5373
- };
4227
+ }
4228
+ });
5374
4229
  }
5375
4230
 
5376
- // ../core/dist/esm/message/operators/find.js
5377
- function find(predicate) {
4231
+ // ../core/dist/esm/message/internal/skip.js
4232
+ function skip(count) {
5378
4233
  return (source) => {
5379
4234
  return new Observable((subscriber) => {
5380
- let index = 0;
5381
- const sourceSubscription = source.subscribe({
4235
+ let skipped = 0;
4236
+ const subscription = source.subscribe({
5382
4237
  next: (value) => {
5383
- try {
5384
- if (predicate(value, index++)) {
5385
- subscriber.next(value);
5386
- subscriber.complete();
5387
- sourceSubscription.unsubscribe();
5388
- }
5389
- } catch (err) {
5390
- subscriber.error(err);
4238
+ if (skipped < count) {
4239
+ skipped++;
4240
+ } else {
4241
+ subscriber.next(value);
5391
4242
  }
5392
4243
  },
5393
4244
  error: (err) => {
@@ -5397,29 +4248,26 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5397
4248
  subscriber.complete();
5398
4249
  }
5399
4250
  });
5400
- return () => {
5401
- sourceSubscription.unsubscribe();
5402
- };
4251
+ return subscription;
5403
4252
  });
5404
4253
  };
5405
4254
  }
5406
4255
 
5407
- // ../core/dist/esm/message/operators/takeWhile.js
5408
- function takeWhile2(predicate) {
4256
+ // ../core/dist/esm/message/internal/takeWhile.js
4257
+ function takeWhile(predicate, inclusive = false) {
5409
4258
  return (source) => {
5410
4259
  return new Observable((subscriber) => {
5411
4260
  let index = 0;
5412
- const sourceSubscription = source.subscribe({
4261
+ const subscription = source.subscribe({
5413
4262
  next: (value) => {
5414
- try {
5415
- if (predicate(value, index++)) {
4263
+ const result = predicate(value, index++);
4264
+ if (result) {
4265
+ subscriber.next(value);
4266
+ } else {
4267
+ if (inclusive) {
5416
4268
  subscriber.next(value);
5417
- } else {
5418
- subscriber.complete();
5419
- sourceSubscription.unsubscribe();
5420
4269
  }
5421
- } catch (err) {
5422
- subscriber.error(err);
4270
+ subscriber.complete();
5423
4271
  }
5424
4272
  },
5425
4273
  error: (err) => {
@@ -5429,72 +4277,19 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5429
4277
  subscriber.complete();
5430
4278
  }
5431
4279
  });
5432
- return () => {
5433
- sourceSubscription.unsubscribe();
5434
- };
5435
- });
5436
- };
5437
- }
5438
-
5439
- // ../core/dist/esm/message/operators/single.js
5440
- var EmptyError2 = class extends Error {
5441
- constructor(message = "No elements in single") {
5442
- super(message);
5443
- this.name = "EmptyError";
5444
- }
5445
- };
5446
- var SequenceError = class extends Error {
5447
- constructor(message) {
5448
- super(message);
5449
- this.name = "SequenceError";
5450
- }
5451
- };
5452
- function single(predicate) {
5453
- return (source) => {
5454
- return new Observable((subscriber) => {
5455
- let index = 0;
5456
- let match;
5457
- let hasFound = false;
5458
- const sourceSubscription = source.subscribe({
5459
- next: (value) => {
5460
- try {
5461
- if (predicate(value, index++)) {
5462
- if (hasFound) {
5463
- subscriber.error(new SequenceError("Sequence contains more than one element"));
5464
- sourceSubscription.unsubscribe();
5465
- } else {
5466
- match = value;
5467
- hasFound = true;
5468
- }
5469
- }
5470
- } catch (err) {
5471
- subscriber.error(err);
5472
- }
5473
- },
5474
- error: (err) => {
5475
- subscriber.error(err);
5476
- },
5477
- complete: () => {
5478
- if (hasFound) {
5479
- subscriber.next(match);
5480
- subscriber.complete();
5481
- } else {
5482
- subscriber.error(new EmptyError2());
5483
- }
5484
- }
5485
- });
5486
- return () => {
5487
- sourceSubscription.unsubscribe();
5488
- };
4280
+ return subscription;
5489
4281
  });
5490
4282
  };
5491
4283
  }
5492
4284
 
5493
- // ../core/dist/esm/message/operators/takeUntil.js
5494
- function takeUntil(notifier) {
4285
+ // ../core/dist/esm/message/internal/startWith.js
4286
+ function startWith(...values) {
5495
4287
  return (source) => {
5496
4288
  return new Observable((subscriber) => {
5497
- const sourceSubscription = source.subscribe({
4289
+ for (const value of values) {
4290
+ subscriber.next(value);
4291
+ }
4292
+ const subscription = source.subscribe({
5498
4293
  next: (value) => {
5499
4294
  subscriber.next(value);
5500
4295
  },
@@ -5505,202 +4300,110 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5505
4300
  subscriber.complete();
5506
4301
  }
5507
4302
  });
5508
- const notifierSubscription = notifier.subscribe({
5509
- next: () => {
5510
- subscriber.complete();
5511
- sourceSubscription.unsubscribe();
5512
- notifierSubscription.unsubscribe();
5513
- },
5514
- error: (err) => {
5515
- subscriber.error(err);
5516
- },
5517
- complete: () => {
5518
- }
5519
- });
5520
- return () => {
5521
- sourceSubscription.unsubscribe();
5522
- notifierSubscription.unsubscribe();
5523
- };
4303
+ return subscription;
5524
4304
  });
5525
4305
  };
5526
4306
  }
5527
4307
 
5528
- // ../core/dist/esm/message/operators/takeLast.js
5529
- function takeLast(count) {
5530
- return (source) => {
5531
- return new Observable((subscriber) => {
5532
- let buffer = [];
5533
- if (count === 0) {
4308
+ // ../core/dist/esm/message/internal/concat.js
4309
+ function concat(...observables) {
4310
+ return new Observable((subscriber) => {
4311
+ let currentIndex = 0;
4312
+ let currentSubscription;
4313
+ function subscribeToNext() {
4314
+ if (currentIndex >= observables.length) {
5534
4315
  subscriber.complete();
5535
4316
  return;
5536
4317
  }
5537
- const sourceSubscription = source.subscribe({
4318
+ const currentObservable = observables[currentIndex++];
4319
+ currentSubscription = currentObservable.subscribe({
5538
4320
  next: (value) => {
5539
- buffer.push(value);
5540
- if (buffer.length > count) {
5541
- buffer.shift();
5542
- }
4321
+ subscriber.next(value);
5543
4322
  },
5544
4323
  error: (err) => {
5545
4324
  subscriber.error(err);
5546
4325
  },
5547
4326
  complete: () => {
5548
- for (const value of buffer) {
5549
- subscriber.next(value);
5550
- }
5551
- subscriber.complete();
4327
+ subscribeToNext();
5552
4328
  }
5553
4329
  });
5554
- return () => {
5555
- sourceSubscription.unsubscribe();
5556
- };
5557
- });
5558
- };
4330
+ }
4331
+ subscribeToNext();
4332
+ return () => {
4333
+ if (currentSubscription) {
4334
+ currentSubscription.unsubscribe();
4335
+ }
4336
+ };
4337
+ });
5559
4338
  }
5560
4339
 
5561
- // ../core/dist/esm/message/operators/skipWhile.js
5562
- function skipWhile(predicate) {
5563
- return (source) => {
5564
- return new Observable((subscriber) => {
5565
- let index = 0;
5566
- let skipping = true;
5567
- const sourceSubscription = source.subscribe({
4340
+ // ../core/dist/esm/message/internal/merge.js
4341
+ function merge(...observables) {
4342
+ return new Observable((subscriber) => {
4343
+ if (observables.length === 0) {
4344
+ subscriber.complete();
4345
+ return;
4346
+ }
4347
+ let completedCount = 0;
4348
+ const subscriptions = [];
4349
+ for (const observable of observables) {
4350
+ const subscription = observable.subscribe({
5568
4351
  next: (value) => {
5569
- try {
5570
- if (skipping && predicate(value, index++)) {
5571
- } else {
5572
- skipping = false;
5573
- subscriber.next(value);
5574
- }
5575
- } catch (err) {
5576
- subscriber.error(err);
5577
- }
4352
+ subscriber.next(value);
5578
4353
  },
5579
4354
  error: (err) => {
5580
4355
  subscriber.error(err);
5581
4356
  },
5582
4357
  complete: () => {
5583
- subscriber.complete();
5584
- }
5585
- });
5586
- return () => {
5587
- sourceSubscription.unsubscribe();
5588
- };
5589
- });
5590
- };
5591
- }
5592
-
5593
- // ../core/dist/esm/message/operators/throttle.js
5594
- function throttle(durationSelector, config) {
5595
- const leading = config?.leading ?? true;
5596
- const trailing = config?.trailing ?? false;
5597
- return (source) => {
5598
- return new Observable((subscriber) => {
5599
- let throttled = false;
5600
- let trailingValue;
5601
- let hasTrailingValue = false;
5602
- let durationSubscription = null;
5603
- let isEndingThrottle = false;
5604
- const endThrottle = () => {
5605
- if (isEndingThrottle) {
5606
- return;
5607
- }
5608
- isEndingThrottle = true;
5609
- if (durationSubscription) {
5610
- durationSubscription.unsubscribe();
5611
- durationSubscription = null;
5612
- }
5613
- throttled = false;
5614
- if (trailing && hasTrailingValue) {
5615
- const valueToEmit = trailingValue;
5616
- hasTrailingValue = false;
5617
- trailingValue = void 0;
5618
- Promise.resolve().then(() => {
5619
- isEndingThrottle = false;
5620
- if (!subscriber.closed) {
5621
- subscriber.next(valueToEmit);
5622
- startThrottle(valueToEmit);
5623
- }
5624
- });
5625
- } else {
5626
- isEndingThrottle = false;
5627
- }
5628
- };
5629
- const startThrottle = (value) => {
5630
- if (throttled) {
5631
- return;
5632
- }
5633
- throttled = true;
5634
- try {
5635
- const duration = durationSelector(value);
5636
- durationSubscription = duration.subscribe({
5637
- next: () => {
5638
- endThrottle();
5639
- },
5640
- error: (err) => {
5641
- throttled = false;
5642
- if (durationSubscription) {
5643
- durationSubscription.unsubscribe();
5644
- durationSubscription = null;
5645
- }
5646
- subscriber.error(err);
5647
- },
5648
- complete: () => {
5649
- endThrottle();
5650
- }
5651
- });
5652
- } catch (err) {
5653
- throttled = false;
5654
- subscriber.error(err);
5655
- }
5656
- };
5657
- const sourceSubscription = source.subscribe({
5658
- next: (value) => {
5659
- if (!throttled) {
5660
- if (leading) {
5661
- subscriber.next(value);
5662
- } else if (trailing) {
5663
- trailingValue = value;
5664
- hasTrailingValue = true;
5665
- }
5666
- startThrottle(value);
5667
- } else if (trailing) {
5668
- trailingValue = value;
5669
- hasTrailingValue = true;
4358
+ completedCount++;
4359
+ if (completedCount === observables.length) {
4360
+ subscriber.complete();
5670
4361
  }
5671
- },
5672
- error: (err) => {
5673
- subscriber.error(err);
5674
- },
5675
- complete: () => {
5676
- subscriber.complete();
5677
4362
  }
5678
4363
  });
5679
- return () => {
5680
- sourceSubscription.unsubscribe();
5681
- if (durationSubscription) {
5682
- durationSubscription.unsubscribe();
5683
- }
5684
- };
5685
- });
5686
- };
4364
+ subscriptions.push(subscription);
4365
+ }
4366
+ return () => {
4367
+ subscriptions.forEach((sub) => sub.unsubscribe());
4368
+ };
4369
+ });
5687
4370
  }
5688
4371
 
5689
- // ../core/dist/esm/message/operators/interval.js
5690
- function interval2(period = 0, config) {
4372
+ // ../core/dist/esm/message/internal/fromEvent.js
4373
+ function fromEvent(target, eventName) {
5691
4374
  return new Observable((subscriber) => {
5692
- const setIntervalFn = config?.setInterval || setInterval;
5693
- const clearIntervalFn = config?.clearInterval || clearInterval;
5694
- let count = 0;
5695
- const intervalId = setIntervalFn(() => {
5696
- subscriber.next(count++);
5697
- }, period);
4375
+ const handler = (event) => {
4376
+ subscriber.next(event);
4377
+ };
4378
+ target.addEventListener(eventName, handler);
5698
4379
  return () => {
5699
- clearIntervalFn(intervalId);
4380
+ target.removeEventListener(eventName, handler);
5700
4381
  };
5701
4382
  });
5702
4383
  }
5703
4384
 
4385
+ // ../core/dist/esm/message/internal/toPromise.js
4386
+ function toPromise(source) {
4387
+ return new Promise((resolve, reject) => {
4388
+ let _hasValue = false;
4389
+ let _value;
4390
+ source.subscribe({
4391
+ next: (value) => {
4392
+ _value = value;
4393
+ _hasValue = true;
4394
+ },
4395
+ error: reject,
4396
+ complete: () => {
4397
+ if (_hasValue) {
4398
+ resolve(_value);
4399
+ } else {
4400
+ reject(new EmptyError());
4401
+ }
4402
+ }
4403
+ });
4404
+ });
4405
+ }
4406
+
5704
4407
  // ../core/dist/esm/message/index.js
5705
4408
  var debounceTimeIntervalLock = (unlockChecker, unlocked, intervalTime, config) => {
5706
4409
  const clearIntervalFn = config?.clearInterval || clearInterval;
@@ -5713,7 +4416,7 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5713
4416
  }, intervalTime);
5714
4417
  return nextIntervalId;
5715
4418
  };
5716
- var debounce = (fn, delay2, config) => {
4419
+ var debounce = (fn, delay, config) => {
5717
4420
  const setTimeoutFn = config?.setTimeout || setTimeout;
5718
4421
  const clearTimeoutFn = config?.clearTimeout || clearTimeout;
5719
4422
  let timer2 = null;
@@ -5724,10 +4427,10 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5724
4427
  timer2 = setTimeoutFn(() => {
5725
4428
  fn(data);
5726
4429
  timer2 = null;
5727
- }, delay2);
4430
+ }, delay);
5728
4431
  };
5729
4432
  };
5730
- var throttleTime = (fn, delay2, config) => {
4433
+ var throttleTime = (fn, delay, config) => {
5731
4434
  const setTimeoutFn = config?.setTimeout || setTimeout;
5732
4435
  let timer2 = null;
5733
4436
  return (...args) => {
@@ -5735,15 +4438,15 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5735
4438
  timer2 = setTimeoutFn(() => {
5736
4439
  fn(...args);
5737
4440
  timer2 = null;
5738
- }, delay2);
4441
+ }, delay);
5739
4442
  }
5740
4443
  };
5741
4444
  };
5742
- var throttle2 = (fn, delay2) => {
4445
+ var throttle = (fn, delay) => {
5743
4446
  let lastTime = 0;
5744
4447
  return (...args) => {
5745
4448
  const now = Date.now();
5746
- if (now - lastTime >= delay2) {
4449
+ if (now - lastTime >= delay) {
5747
4450
  fn(...args);
5748
4451
  lastTime = now;
5749
4452
  }
@@ -5853,7 +4556,7 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5853
4556
  } catch (e) {
5854
4557
  const targetHas = Array.isArray(has) ? has : [has];
5855
4558
  for (let ha of targetHas) {
5856
- if (ValidUtils.isConstructor(ha)) {
4559
+ if (ValidUtils.isFunctionType(ha)) {
5857
4560
  if (e instanceof ha) {
5858
4561
  return e;
5859
4562
  }
@@ -5909,12 +4612,12 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
5909
4612
  }
5910
4613
  };
5911
4614
  };
5912
- Promises2.delayExecute = (value, delay2 = 0) => {
4615
+ Promises2.delayExecute = (value, delay = 0) => {
5913
4616
  return new Promise((resolve) => {
5914
4617
  setTimeout(async () => {
5915
4618
  const t = await value();
5916
4619
  resolve(t);
5917
- }, delay2);
4620
+ }, delay);
5918
4621
  });
5919
4622
  };
5920
4623
  Promises2.abortable = (executor, signal) => {
@@ -8770,10 +7473,10 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
8770
7473
  Reflect.defineMetadata(metadataKey, value, target);
8771
7474
  }
8772
7475
  };
8773
- ReflectUtils2.copyMetadata = (from2, to, propertyKey) => {
8774
- const keys = propertyKey ? Reflect.getOwnMetadataKeys(from2, propertyKey) : Reflect.getOwnMetadataKeys(from2);
7476
+ ReflectUtils2.copyMetadata = (from, to, propertyKey) => {
7477
+ const keys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from);
8775
7478
  for (const key of keys) {
8776
- const data = propertyKey ? Reflect.getOwnMetadata(key, from2, propertyKey) : Reflect.getOwnMetadata(key, from2);
7479
+ const data = propertyKey ? Reflect.getOwnMetadata(key, from, propertyKey) : Reflect.getOwnMetadata(key, from);
8777
7480
  if (propertyKey) {
8778
7481
  Reflect.defineMetadata(key, data, to, propertyKey);
8779
7482
  } else {
@@ -8873,8 +7576,8 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
8873
7576
  }
8874
7577
  };
8875
7578
  var RangeIterator = class {
8876
- constructor(first2, last, step) {
8877
- this._current = this._first = first2;
7579
+ constructor(first, last, step) {
7580
+ this._current = this._first = first;
8878
7581
  this._last = last;
8879
7582
  this._step = step;
8880
7583
  }
@@ -8902,8 +7605,8 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
8902
7605
  }
8903
7606
  };
8904
7607
  var Range = class _Range {
8905
- constructor(first2, last, step = 1) {
8906
- this.first = first2;
7608
+ constructor(first, last, step = 1) {
7609
+ this.first = first;
8907
7610
  this.last = last;
8908
7611
  this.step = step;
8909
7612
  this.isRange = true;
@@ -8914,15 +7617,15 @@ var dooboostoreSimpleBootHttpServerWebSocketClient = (() => {
8914
7617
  map(callbackfn, thisArg) {
8915
7618
  return Array.from(this).map(callbackfn);
8916
7619
  }
8917
- static range(first2, last, step = 1) {
8918
- if (typeof first2 === "number" && last === void 0) {
8919
- return new _Range(0, first2, step);
8920
- } else if (typeof first2 === "string") {
8921
- const [_first, _last = "0"] = first2.split("..");
7620
+ static range(first, last, step = 1) {
7621
+ if (typeof first === "number" && last === void 0) {
7622
+ return new _Range(0, first, step);
7623
+ } else if (typeof first === "string") {
7624
+ const [_first, _last = "0"] = first.split("..");
8922
7625
  const [__last, _step = "1"] = _last.split(",");
8923
7626
  return new _Range(Number(_first.trim()), Number(__last.trim()), Number(_step.trim()));
8924
7627
  } else {
8925
- return new _Range(first2, last ?? 0, step);
7628
+ return new _Range(first, last ?? 0, step);
8926
7629
  }
8927
7630
  }
8928
7631
  };
@@ -10846,6 +9549,33 @@ ${indentStr}}`;
10846
9549
  };
10847
9550
  }
10848
9551
 
9552
+ // ../core/dist/esm/message/operators/filter.js
9553
+ function filter(predicate) {
9554
+ return (source) => {
9555
+ return new Observable((subscriber) => {
9556
+ let index = 0;
9557
+ const subscription = source.subscribe({
9558
+ next: (value) => {
9559
+ try {
9560
+ if (predicate(value, index++)) {
9561
+ subscriber.next(value);
9562
+ }
9563
+ } catch (err) {
9564
+ subscriber.error(err);
9565
+ }
9566
+ },
9567
+ error: (err) => {
9568
+ subscriber.error(err);
9569
+ },
9570
+ complete: () => {
9571
+ subscriber.complete();
9572
+ }
9573
+ });
9574
+ return subscription;
9575
+ });
9576
+ };
9577
+ }
9578
+
10849
9579
  // src/websocket/WebSocketClient.ts
10850
9580
  var WebSocketClient = class {
10851
9581
  constructor(connection, config) {
@@ -11312,7 +10042,7 @@ ${indentStr}}`;
11312
10042
  const value = { type: option?.type, uuid, requestUUID, body };
11313
10043
  self.sendMessage(value);
11314
10044
  }
11315
- return topicSubject.pipe(operators_exports.filter((data) => data && data.requestUUID === requestUUID));
10045
+ return topicSubject.pipe(filter((data) => data && data.requestUUID === requestUUID));
11316
10046
  },
11317
10047
  onUnsubscribe: (callback) => {
11318
10048
  onUnsubscribes.push(callback);