@fncts/observable 0.0.26 → 0.0.28

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 (149) hide show
  1. package/Observable/api/raceWith.d.ts +0 -1
  2. package/Observable/api/repeatWhen.d.ts +1 -1
  3. package/Observable/api/share.d.ts +1 -1
  4. package/Observable/api.d.ts +4 -4
  5. package/Observable/definition.d.ts +1 -4
  6. package/Observable.d.ts +16 -16
  7. package/ObservableRef.d.ts +2 -2
  8. package/Operator.d.ts +3 -3
  9. package/Subject.d.ts +14 -5
  10. package/Subscriber.d.ts +23 -8
  11. package/Subscription.d.ts +2 -2
  12. package/_cjs/Action.cjs +1 -1
  13. package/_cjs/AnimationFrameAction.cjs +2 -2
  14. package/_cjs/AnimationFrameScheduler.cjs +2 -2
  15. package/_cjs/AsyncAction.cjs +4 -4
  16. package/_cjs/AsyncAction.cjs.map +1 -1
  17. package/_cjs/AsyncScheduler.cjs +2 -2
  18. package/_cjs/BehaviorSubject.cjs +2 -2
  19. package/_cjs/BehaviorSubject.cjs.map +1 -1
  20. package/_cjs/Observable/api/connect.cjs +7 -7
  21. package/_cjs/Observable/api/connect.cjs.map +1 -1
  22. package/_cjs/Observable/api/connectable.cjs +4 -4
  23. package/_cjs/Observable/api/connectable.cjs.map +1 -1
  24. package/_cjs/Observable/api/fromCallback.cjs +2 -2
  25. package/_cjs/Observable/api/fromEvent.cjs +1 -1
  26. package/_cjs/Observable/api/race.cjs +4 -4
  27. package/_cjs/Observable/api/race.cjs.map +1 -1
  28. package/_cjs/Observable/api/raceWith.cjs +3 -4
  29. package/_cjs/Observable/api/raceWith.cjs.map +1 -1
  30. package/_cjs/Observable/api/repeatWhen.cjs +9 -8
  31. package/_cjs/Observable/api/repeatWhen.cjs.map +1 -1
  32. package/_cjs/Observable/api/retryWhen.cjs +9 -8
  33. package/_cjs/Observable/api/retryWhen.cjs.map +1 -1
  34. package/_cjs/Observable/api/share.cjs +9 -9
  35. package/_cjs/Observable/api/share.cjs.map +1 -1
  36. package/_cjs/Observable/api/window.cjs +12 -11
  37. package/_cjs/Observable/api/window.cjs.map +1 -1
  38. package/_cjs/Observable/api/windowCount.cjs +12 -10
  39. package/_cjs/Observable/api/windowCount.cjs.map +1 -1
  40. package/_cjs/Observable/api/windowTime.cjs +12 -11
  41. package/_cjs/Observable/api/windowTime.cjs.map +1 -1
  42. package/_cjs/Observable/api/windowToggle.cjs +26 -24
  43. package/_cjs/Observable/api/windowToggle.cjs.map +1 -1
  44. package/_cjs/Observable/api/windowWhen.cjs +17 -15
  45. package/_cjs/Observable/api/windowWhen.cjs.map +1 -1
  46. package/_cjs/Observable/api.cjs +325 -311
  47. package/_cjs/Observable/api.cjs.map +1 -1
  48. package/_cjs/Observable/definition.cjs +7 -14
  49. package/_cjs/Observable/definition.cjs.map +1 -1
  50. package/_cjs/Observable/dom/animationFrames.cjs +3 -3
  51. package/_cjs/Observable/dom/animationFrames.cjs.map +1 -1
  52. package/_cjs/Observable.cjs +64 -64
  53. package/_cjs/Observable.cjs.map +1 -1
  54. package/_cjs/ObservableRef/api.cjs +2 -2
  55. package/_cjs/ObservableRef/atomic.cjs +2 -2
  56. package/_cjs/ObservableRef/definition.cjs +1 -1
  57. package/_cjs/ObservableRef.cjs +8 -8
  58. package/_cjs/ObservableRef.cjs.map +1 -1
  59. package/_cjs/Operator.cjs +9 -14
  60. package/_cjs/Operator.cjs.map +1 -1
  61. package/_cjs/Scheduler.cjs +2 -2
  62. package/_cjs/Subject.cjs +69 -43
  63. package/_cjs/Subject.cjs.map +1 -1
  64. package/_cjs/Subscriber.cjs +122 -70
  65. package/_cjs/Subscriber.cjs.map +1 -1
  66. package/_cjs/Subscription.cjs +7 -7
  67. package/_cjs/Subscription.cjs.map +1 -1
  68. package/_cjs/config.cjs +15 -0
  69. package/_cjs/config.cjs.map +1 -0
  70. package/_cjs/index.cjs +13 -13
  71. package/_cjs/internal/animationFrameProvider.cjs +1 -1
  72. package/_cjs/internal/args.cjs +1 -1
  73. package/_cjs/internal/util.cjs +2 -2
  74. package/_mjs/AsyncAction.mjs +3 -3
  75. package/_mjs/AsyncAction.mjs.map +1 -1
  76. package/_mjs/BehaviorSubject.mjs +1 -1
  77. package/_mjs/BehaviorSubject.mjs.map +1 -1
  78. package/_mjs/Observable/api/connect.mjs +6 -6
  79. package/_mjs/Observable/api/connect.mjs.map +1 -1
  80. package/_mjs/Observable/api/connectable.mjs +1 -1
  81. package/_mjs/Observable/api/connectable.mjs.map +1 -1
  82. package/_mjs/Observable/api/race.mjs +1 -1
  83. package/_mjs/Observable/api/race.mjs.map +1 -1
  84. package/_mjs/Observable/api/raceWith.mjs +3 -4
  85. package/_mjs/Observable/api/raceWith.mjs.map +1 -1
  86. package/_mjs/Observable/api/repeatWhen.mjs +9 -8
  87. package/_mjs/Observable/api/repeatWhen.mjs.map +1 -1
  88. package/_mjs/Observable/api/retryWhen.mjs +9 -8
  89. package/_mjs/Observable/api/retryWhen.mjs.map +1 -1
  90. package/_mjs/Observable/api/share.mjs +8 -8
  91. package/_mjs/Observable/api/share.mjs.map +1 -1
  92. package/_mjs/Observable/api/window.mjs +12 -11
  93. package/_mjs/Observable/api/window.mjs.map +1 -1
  94. package/_mjs/Observable/api/windowCount.mjs +12 -10
  95. package/_mjs/Observable/api/windowCount.mjs.map +1 -1
  96. package/_mjs/Observable/api/windowTime.mjs +11 -10
  97. package/_mjs/Observable/api/windowTime.mjs.map +1 -1
  98. package/_mjs/Observable/api/windowToggle.mjs +25 -23
  99. package/_mjs/Observable/api/windowToggle.mjs.map +1 -1
  100. package/_mjs/Observable/api/windowWhen.mjs +17 -15
  101. package/_mjs/Observable/api/windowWhen.mjs.map +1 -1
  102. package/_mjs/Observable/api.mjs +304 -290
  103. package/_mjs/Observable/api.mjs.map +1 -1
  104. package/_mjs/Observable/definition.mjs +2 -9
  105. package/_mjs/Observable/definition.mjs.map +1 -1
  106. package/_mjs/Observable/dom/animationFrames.mjs +1 -1
  107. package/_mjs/Observable/dom/animationFrames.mjs.map +1 -1
  108. package/_mjs/Observable.mjs +16 -18
  109. package/_mjs/Observable.mjs.map +1 -1
  110. package/_mjs/ObservableRef.mjs +2 -3
  111. package/_mjs/ObservableRef.mjs.map +1 -1
  112. package/_mjs/Operator.mjs +6 -11
  113. package/_mjs/Operator.mjs.map +1 -1
  114. package/_mjs/Subject.mjs +65 -39
  115. package/_mjs/Subject.mjs.map +1 -1
  116. package/_mjs/Subscriber.mjs +119 -67
  117. package/_mjs/Subscriber.mjs.map +1 -1
  118. package/_mjs/Subscription.mjs +6 -6
  119. package/_mjs/Subscription.mjs.map +1 -1
  120. package/_mjs/config.mjs +9 -0
  121. package/_mjs/config.mjs.map +1 -0
  122. package/_src/AsyncAction.ts +3 -3
  123. package/_src/BehaviorSubject.ts +1 -1
  124. package/_src/Observable/api/connect.ts +2 -2
  125. package/_src/Observable/api/connectable.ts +1 -1
  126. package/_src/Observable/api/race.ts +1 -1
  127. package/_src/Observable/api/raceWith.ts +2 -5
  128. package/_src/Observable/api/repeatWhen.ts +4 -4
  129. package/_src/Observable/api/retryWhen.ts +3 -3
  130. package/_src/Observable/api/share.ts +6 -6
  131. package/_src/Observable/api/window.ts +3 -3
  132. package/_src/Observable/api/windowCount.ts +30 -33
  133. package/_src/Observable/api/windowTime.ts +4 -4
  134. package/_src/Observable/api/windowToggle.ts +19 -21
  135. package/_src/Observable/api/windowWhen.ts +10 -13
  136. package/_src/Observable/api.ts +358 -363
  137. package/_src/Observable/definition.ts +2 -17
  138. package/_src/Observable/dom/animationFrames.ts +1 -1
  139. package/_src/Observable.ts +17 -18
  140. package/_src/ObservableRef.ts +2 -3
  141. package/_src/Operator.ts +9 -21
  142. package/_src/Subject.ts +66 -39
  143. package/_src/Subscriber.ts +134 -59
  144. package/_src/Subscription.ts +8 -8
  145. package/_src/config.ts +40 -0
  146. package/_src/global.ts +1 -1
  147. package/config.d.ts +36 -0
  148. package/global.d.ts +1 -1
  149. package/package.json +4 -2
package/_mjs/Subject.mjs CHANGED
@@ -3,93 +3,119 @@ import * as tsplus_module_1 from "@fncts/observable/Observable";
3
3
  import * as tsplus_module_2 from "@fncts/observable/Subscription";
4
4
  import * as tsplus_module_3 from "@fncts/base/data/Either/destructors";
5
5
  import * as tsplus_module_4 from "@fncts/base/data/Either/constructors";
6
- import { arrayRemove } from "@fncts/observable/internal/util";
6
+ /**
7
+ * A Subject is a special type of Observable that allows values to be
8
+ * multicasted to many Observers. Subjects are like EventEmitters.
9
+ *
10
+ * Every Subject is an Observable and an Observer. You can subscribe to a
11
+ * Subject, and you can call next to feed values as well as error and complete.
12
+ */
7
13
  export class Subject extends tsplus_module_1.Observable {
8
14
  constructor() {
9
15
  super();
10
- this.closed = false;
11
- this.observers = [];
12
- this.isStopped = false;
16
+ this._closed = false;
17
+ this.currentObservers = new Map();
18
+ this.observersCount = 0;
13
19
  this.hasError = false;
14
20
  this.thrownError = null;
15
21
  }
16
- lift(operator) {
17
- const subject = new AnonymousSubject(this, this);
18
- subject.operator = operator;
19
- return subject;
22
+ get closed() {
23
+ return this._closed;
24
+ }
25
+ get observers() {
26
+ return this.observerSnapshot ?? (this.observerSnapshot = Array.from(this.currentObservers.values()));
20
27
  }
21
28
  next(value) {
22
- this.throwIfClosed();
23
- if (!this.isStopped) {
24
- const copy = this.observers.slice();
25
- for (const observer of copy) {
26
- observer.next(value);
29
+ if (!this._closed) {
30
+ const {
31
+ observers
32
+ } = this;
33
+ const len = observers.length;
34
+ for (let i = 0; i < len; i++) {
35
+ observers[i].next(value);
27
36
  }
28
37
  }
29
38
  }
30
39
  error(err) {
31
- this.throwIfClosed();
32
- if (!this.isStopped) {
33
- this.hasError = this.isStopped = true;
40
+ if (!this._closed) {
41
+ this.hasError = this._closed = true;
34
42
  this.thrownError = err;
35
43
  const {
36
44
  observers
37
45
  } = this;
38
- while (observers.length) {
39
- observers.shift().error(err);
46
+ const len = observers.length;
47
+ for (let i = 0; i < len; i++) {
48
+ observers[i].error(err);
40
49
  }
50
+ this.clearObservers();
41
51
  }
42
52
  }
43
53
  complete() {
44
- this.throwIfClosed();
45
- if (!this.isStopped) {
46
- this.isStopped = true;
54
+ if (!this._closed) {
55
+ this._closed = true;
47
56
  const {
48
57
  observers
49
58
  } = this;
50
- while (observers.length) {
51
- observers.shift().complete();
59
+ const len = observers.length;
60
+ for (let i = 0; i < len; i++) {
61
+ observers[i].complete();
52
62
  }
63
+ this.clearObservers();
53
64
  }
54
65
  }
55
66
  unsubscribe() {
56
- this.isStopped = this.closed = true;
57
- this.observers = null;
67
+ this._closed = true;
68
+ this.clearObservers();
58
69
  }
59
70
  get observed() {
60
- return this.observers?.length > 0;
71
+ return this.currentObservers.size > 0;
61
72
  }
62
73
  throwIfClosed() {
63
- if (this.closed) {
74
+ if (this._closed) {
64
75
  throw new Error("Object Unsubscribed");
65
76
  }
66
77
  }
78
+ clearObservers() {
79
+ this.currentObservers.clear();
80
+ this.observerSnapshot = undefined;
81
+ }
67
82
  trySubscribe(subscriber, environment) {
68
83
  this.throwIfClosed();
69
84
  return super.trySubscribe(subscriber, environment);
70
85
  }
71
86
  subscribeInternal(subscriber) {
72
- this.throwIfClosed();
73
87
  this.checkFinalizedStatuses(subscriber);
74
88
  return this.innerSubscribe(subscriber);
75
89
  }
76
90
  innerSubscribe(subscriber) {
77
91
  const {
78
92
  hasError,
79
- isStopped,
80
- observers
93
+ _closed: closed
94
+ } = this;
95
+ if (hasError || closed) {
96
+ return tsplus_module_2.EMPTY_SUBSCRIPTION;
97
+ }
98
+ const {
99
+ currentObservers
81
100
  } = this;
82
- return hasError || isStopped ? tsplus_module_2.EMPTY_SUBSCRIPTION : (observers.push(subscriber), new tsplus_module_2.Subscription(() => arrayRemove(observers, subscriber)));
101
+ const observerId = this.observersCount++;
102
+ currentObservers.set(observerId, subscriber);
103
+ this.observerSnapshot = undefined;
104
+ subscriber.add(() => {
105
+ currentObservers.delete(observerId);
106
+ this.observerSnapshot = undefined;
107
+ });
108
+ return subscriber;
83
109
  }
84
110
  checkFinalizedStatuses(subscriber) {
85
111
  const {
86
112
  hasError,
87
113
  thrownError,
88
- isStopped
114
+ _closed: closed
89
115
  } = this;
90
116
  if (hasError) {
91
117
  subscriber.error(thrownError);
92
- } else if (isStopped) {
118
+ } else if (closed) {
93
119
  subscriber.complete();
94
120
  }
95
121
  }
@@ -133,25 +159,25 @@ export class AsyncSubject extends Subject {
133
159
  hasValue,
134
160
  value,
135
161
  thrownError,
136
- isStopped,
162
+ _closed: closed,
137
163
  isComplete
138
164
  } = this;
139
165
  if (hasError) {
140
166
  subscriber.error(thrownError);
141
- } else if (isStopped || isComplete) {
167
+ } else if (closed || isComplete) {
142
168
  hasValue && tsplus_module_3.match(e => subscriber.error(e), a => subscriber.next(a))(value);
143
169
  subscriber.complete();
144
170
  }
145
171
  }
146
172
  next(value) {
147
- if (!this.isStopped) {
148
- this.value = tsplus_module_4.right(value, fileName_1 + ":150:35");
173
+ if (!this._closed) {
174
+ this.value = tsplus_module_4.right(value, fileName_1 + ":177:35");
149
175
  this.hasValue = true;
150
176
  }
151
177
  }
152
178
  error(err) {
153
- if (!this.isStopped) {
154
- this.value = tsplus_module_4.left(err, fileName_1 + ":157:34");
179
+ if (!this._closed) {
180
+ this.value = tsplus_module_4.left(err, fileName_1 + ":184:34");
155
181
  this.hasValue = true;
156
182
  }
157
183
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Subject.mjs","names":["arrayRemove","Subject","tsplus_module_1","Observable","constructor","closed","observers","isStopped","hasError","thrownError","lift","operator","subject","AnonymousSubject","next","value","throwIfClosed","copy","slice","observer","error","err","length","shift","complete","unsubscribe","observed","Error","trySubscribe","subscriber","environment","subscribeInternal","checkFinalizedStatuses","innerSubscribe","tsplus_module_2","EMPTY_SUBSCRIPTION","push","Subscription","asObservable","observable","source","destination","provideEnvironment","subscribe","AsyncSubject","hasValue","isComplete","tsplus_module_3","match","e","a","tsplus_module_4","right","fileName_1","left"],"sources":["../_src/Subject.ts"],"sourcesContent":[null],"mappings":";;;;;AAAA,SAASA,WAAW,QAAQ,iCAAiC;AAI7D,OAAM,MAAOC,OAAiB,SAAQC,eAAA,CAAAC,UAAmB;EAOvDC,YAAA;IACE,KAAK,EAAE;IAPT,KAAAC,MAAM,GAAG,KAAK;IACJ,KAAAC,SAAS,GAA0B,EAAE;IACrC,KAAAC,SAAS,GAAe,KAAK;IAC7B,KAAAC,QAAQ,GAAgB,KAAK;IAC7B,KAAAC,WAAW,GAAa,IAAK;EAIvC;EAEAC,IAAIA,CAAYC,QAAyB;IACvC,MAAMC,OAAO,GAAM,IAAIC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC;IACnDD,OAAO,CAACD,QAAQ,GAAGA,QAAe;IAClC,OAAOC,OAAc;EACvB;EAEAE,IAAIA,CAACC,KAAQ;IACX,IAAI,CAACC,aAAa,EAAE;IACpB,IAAI,CAAC,IAAI,CAACT,SAAS,EAAE;MACnB,MAAMU,IAAI,GAAG,IAAI,CAACX,SAAS,CAACY,KAAK,EAAE;MACnC,KAAK,MAAMC,QAAQ,IAAIF,IAAI,EAAE;QAC3BE,QAAQ,CAACL,IAAI,CAACC,KAAK,CAAC;MACtB;IACF;EACF;EAEAK,KAAKA,CAACC,GAAa;IACjB,IAAI,CAACL,aAAa,EAAE;IACpB,IAAI,CAAC,IAAI,CAACT,SAAS,EAAE;MACnB,IAAI,CAACC,QAAQ,GAAS,IAAI,CAACD,SAAS,GAAG,IAAI;MAC3C,IAAI,CAACE,WAAW,GAAMY,GAAG;MACzB,MAAM;QAAEf;MAAS,CAAE,GAAG,IAAI;MAC1B,OAAOA,SAAS,CAACgB,MAAM,EAAE;QACvBhB,SAAS,CAACiB,KAAK,EAAG,CAACH,KAAK,CAACC,GAAG,CAAC;MAC/B;IACF;EACF;EAEAG,QAAQA,CAAA;IACN,IAAI,CAACR,aAAa,EAAE;IACpB,IAAI,CAAC,IAAI,CAACT,SAAS,EAAE;MACnB,IAAI,CAACA,SAAS,GAAQ,IAAI;MAC1B,MAAM;QAAED;MAAS,CAAE,GAAG,IAAI;MAC1B,OAAOA,SAAS,CAACgB,MAAM,EAAE;QACvBhB,SAAS,CAACiB,KAAK,EAAG,CAACC,QAAQ,EAAE;MAC/B;IACF;EACF;EAEAC,WAAWA,CAAA;IACT,IAAI,CAAClB,SAAS,GAAG,IAAI,CAACF,MAAM,GAAG,IAAI;IACnC,IAAI,CAACC,SAAS,GAAG,IAAK;EACxB;EAEA,IAAIoB,QAAQA,CAAA;IACV,OAAO,IAAI,CAACpB,SAAS,EAAEgB,MAAM,GAAG,CAAC;EACnC;EAEUN,aAAaA,CAAA;IACrB,IAAI,IAAI,CAACX,MAAM,EAAE;MACf,MAAM,IAAIsB,KAAK,CAAC,qBAAqB,CAAC;IACxC;EACF;EAEUC,YAAYA,CAACC,UAA4B,EAAEC,WAA2B;IAC9E,IAAI,CAACd,aAAa,EAAE;IACpB,OAAO,KAAK,CAACY,YAAY,CAACC,UAAU,EAAEC,WAAW,CAAC;EACpD;EAEUC,iBAAiBA,CAACF,UAA4B;IACtD,IAAI,CAACb,aAAa,EAAE;IACpB,IAAI,CAACgB,sBAAsB,CAACH,UAAU,CAAC;IACvC,OAAO,IAAI,CAACI,cAAc,CAACJ,UAAU,CAAC;EACxC;EAEUI,cAAcA,CAACJ,UAA4B;IACnD,MAAM;MAAErB,QAAQ;MAAED,SAAS;MAAED;IAAS,CAAE,GAAG,IAAI;IAC/C,OAAOE,QAAQ,IAAID,SAAS,GACzB2B,eAAA,CAAAC,kBAAA,IACE7B,SAAS,CAAC8B,IAAI,CAACP,UAAU,CAAC,EAAE,IAAAK,eAAA,CAAIG,YAAY,CAAC,MAAMrC,WAAW,CAACM,SAAS,EAAEuB,UAAU,CAAC,CAAC,CAAC;EAC9F;EAEUG,sBAAsBA,CAACH,UAAgC;IAC/D,MAAM;MAAErB,QAAQ;MAAEC,WAAW;MAAEF;IAAS,CAAE,GAAG,IAAI;IACjD,IAAIC,QAAQ,EAAE;MACZqB,UAAU,CAACT,KAAK,CAACX,WAAW,CAAC;IAC/B,CAAC,MAAM,IAAIF,SAAS,EAAE;MACpBsB,UAAU,CAACL,QAAQ,EAAE;IACvB;EACF;EAEAc,YAAYA,CAAA;IACV,MAAMC,UAAU,GAAQ,IAAArC,eAAA,CAAIC,UAAU,EAAW;IACjDoC,UAAU,CAACC,MAAM,GAAO,IAAI;IAC5B,OAAOD,UAAU;EACnB;;AAGF,OAAM,MAAO1B,gBAA0B,SAAQZ,OAAgB;EAC7DG,YACYqC,WAA4B,EACtCD,MAA4B;IAE5B,KAAK,EAAE;IAHG,KAAAC,WAAW,GAAXA,WAAW;IAIrB,IAAI,CAACD,MAAM,GAAGA,MAAM;EACtB;EACA1B,IAAIA,CAACC,KAAQ;IACX,IAAI,CAAC0B,WAAW,EAAE3B,IAAI,GAAGC,KAAK,CAAC;EACjC;EACAK,KAAKA,CAACC,GAAa;IACjB,IAAI,CAACoB,WAAW,EAAErB,KAAK,GAAGC,GAAG,CAAC;EAChC;EACAG,QAAQA,CAAA;IACN,IAAI,CAACiB,WAAW,EAAEjB,QAAQ,GAAE,CAAE;EAChC;EAEA;EACUO,iBAAiBA,CAAOF,UAA4B;IAC5D,OAAO,IAAI,CAACW,MAAM,EAAEE,kBAAkB,CAAC,IAAI,CAACZ,WAAW,CAAC,CAACa,SAAS,CAACd,UAAU,CAAC,IAAAK,eAAA,CAAAC,kBAAsB;EACtG;;AAGF,OAAM,MAAOS,YAAsB,SAAQ3C,OAAgB;EAA3DG,YAAA;;IACU,KAAAW,KAAK,GAA+B,IAAI;IACxC,KAAA8B,QAAQ,GAAK,KAAK;IAClB,KAAAC,UAAU,GAAG,KAAK;EA2C5B;EAzCE;EACUd,sBAAsBA,CAACH,UAA4B;IAC3D,MAAM;MAAErB,QAAQ;MAAEqC,QAAQ;MAAE9B,KAAK;MAAEN,WAAW;MAAEF,SAAS;MAAEuC;IAAU,CAAE,GAAG,IAAI;IAC9E,IAAItC,QAAQ,EAAE;MACZqB,UAAU,CAACT,KAAK,CAACX,WAAW,CAAC;IAC/B,CAAC,MAAM,IAAIF,SAAS,IAAIuC,UAAU,EAAE;MAClCD,QAAQ,IACNE,eAAA,CAAAC,KAAA,CACGC,CAAC,IAAKpB,UAAU,CAACT,KAAK,CAAC6B,CAAC,CAAC,EACzBC,CAAC,IAAKrB,UAAU,CAACf,IAAI,CAACoC,CAAC,CAAC,EAF3BnC,KAAM,CAGL;MACHc,UAAU,CAACL,QAAQ,EAAE;IACvB;EACF;EAEAV,IAAIA,CAACC,KAAQ;IACX,IAAI,CAAC,IAAI,CAACR,SAAS,EAAE;MACnB,IAAI,CAACQ,KAAK,GAAMoC,eAAA,CAAAC,KAAA,CAAarC,KAAK,EAAAsC,UAAA,aAAC;MACnC,IAAI,CAACR,QAAQ,GAAG,IAAI;IACtB;EACF;EAEAzB,KAAKA,CAACC,GAAa;IACjB,IAAI,CAAC,IAAI,CAACd,SAAS,EAAE;MACnB,IAAI,CAACQ,KAAK,GAAMoC,eAAA,CAAAG,IAAA,CAAYjC,GAAG,EAAAgC,UAAA,aAAC;MAChC,IAAI,CAACR,QAAQ,GAAG,IAAI;IACtB;EACF;EAEArB,QAAQA,CAAA;IACN,MAAM;MAAEqB,QAAQ;MAAE9B,KAAK;MAAE+B;IAAU,CAAE,GAAG,IAAI;IAC5C,IAAI,CAACA,UAAU,EAAE;MACf,IAAI,CAACA,UAAU,GAAG,IAAI;MACtBD,QAAQ,IACNE,eAAA,CAAAC,KAAA,CACGC,CAAC,IAAK,KAAK,CAAC7B,KAAK,CAAC6B,CAAC,CAAC,EACpBC,CAAC,IAAK,KAAK,CAACpC,IAAI,CAACoC,CAAC,CAAC,EAFtBnC,KAAM,CAGL;MACH,KAAK,CAACS,QAAQ,EAAE;IAClB;EACF","ignoreList":[]}
1
+ {"version":3,"file":"Subject.mjs","names":["Subject","tsplus_module_1","Observable","constructor","_closed","currentObservers","Map","observersCount","hasError","thrownError","closed","observers","observerSnapshot","Array","from","values","next","value","len","length","i","error","err","clearObservers","complete","unsubscribe","observed","size","throwIfClosed","Error","clear","undefined","trySubscribe","subscriber","environment","subscribeInternal","checkFinalizedStatuses","innerSubscribe","tsplus_module_2","EMPTY_SUBSCRIPTION","observerId","set","add","delete","asObservable","observable","source","AnonymousSubject","destination","provideEnvironment","subscribe","AsyncSubject","hasValue","isComplete","tsplus_module_3","match","e","a","tsplus_module_4","right","fileName_1","left"],"sources":["../_src/Subject.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,127 +1,179 @@
1
1
  var _a;
2
2
  import * as tsplus_module_1 from "@fncts/observable/Subscription";
3
- import * as tsplus_module_2 from "@fncts/base/util/predicates";
4
- import * as tsplus_module_3 from "@fncts/observable/internal/util";
5
- import * as tsplus_module_4 from "@fncts/base/data/Cause/api";
3
+ import * as tsplus_module_2 from "@fncts/observable/Notification";
4
+ import * as tsplus_module_3 from "@fncts/base/data/Cause/api";
5
+ import * as tsplus_module_4 from "@fncts/observable/internal/util";
6
+ import * as tsplus_module_5 from "@fncts/base/util/predicates";
7
+ import * as tsplus_module_6 from "@fncts/observable/internal/timeoutProvider";
8
+ import { isFunction } from "@fncts/base/util/predicates";
9
+ import { config } from "./config.mjs";
10
+ import { reportUnhandledError } from "./internal/util.mjs";
6
11
  export const SubscriberTypeId = /*#__PURE__*/Symbol.for("fncts.observable.Subscriber");
12
+ /**
13
+ * @tsplus type fncts.observable.Subscriber
14
+ */
7
15
  export class Subscriber extends tsplus_module_1.Subscription {
8
- constructor(observer) {
9
- super();
16
+ constructor(destination, overrides) {
17
+ super(overrides?.finalize);
10
18
  this[_a] = SubscriberTypeId;
11
19
  this.isStopped = false;
12
- if (observer) {
13
- this.observer = observer;
14
- if (tsplus_module_1.isSubscription(observer)) {
15
- observer.add(this);
16
- }
17
- } else {
18
- this.observer = EMPTY_OBSERVER;
20
+ this.nextOverride = null;
21
+ this.errorOverride = null;
22
+ this.completeOverride = null;
23
+ this.destination = destination instanceof Subscriber ? destination : createSafeObserver(destination);
24
+ this.nextOverride = overrides?.next ?? null;
25
+ this.errorOverride = overrides?.error ?? null;
26
+ this.completeOverride = overrides?.complete ?? null;
27
+ this.next = this.nextOverride ? overrideNext : this.next;
28
+ this.error = this.errorOverride ? overrideError : this.error;
29
+ this.complete = this.completeOverride ? overrideComplete : this.complete;
30
+ if (hasAddAndUnsubscribe(destination)) {
31
+ destination.add(this);
19
32
  }
20
33
  }
21
34
  next(value) {
22
- if (!this.isStopped) {
35
+ if (this.isStopped) {
36
+ handleStoppedNotification(tsplus_module_2.next(value), this);
37
+ } else {
23
38
  this._next(value);
24
39
  }
25
40
  }
26
41
  error(err) {
27
- if (!this.isStopped) {
42
+ if (this.isStopped) {
43
+ handleStoppedNotification(tsplus_module_2.error(err), this);
44
+ } else {
28
45
  this.isStopped = true;
29
46
  this._error(err);
30
47
  }
31
48
  }
32
49
  complete() {
33
- if (!this.isStopped) {
50
+ if (this.isStopped) {
51
+ handleStoppedNotification(tsplus_module_2.complete(), this);
52
+ } else {
34
53
  this.isStopped = true;
35
54
  this._complete();
36
55
  }
37
56
  }
38
57
  unsubscribe() {
39
- if (!this.closed) {
58
+ if (!this._closed) {
40
59
  this.isStopped = true;
41
60
  super.unsubscribe();
42
- this.observer = null;
61
+ this.destination = null;
43
62
  }
44
63
  }
45
64
  _next(value) {
46
- this.observer.next(value);
65
+ this.destination.next(value);
47
66
  }
48
67
  _error(err) {
49
68
  try {
50
- this.observer.error(err);
69
+ this.destination.error(err);
51
70
  } finally {
52
71
  this.unsubscribe();
53
72
  }
54
73
  }
55
74
  _complete() {
56
75
  try {
57
- this.observer.complete();
76
+ this.destination.complete();
58
77
  } finally {
59
78
  this.unsubscribe();
60
79
  }
61
80
  }
62
81
  }
63
82
  _a = SubscriberTypeId;
64
- export class SafeSubscriber extends Subscriber {
65
- constructor(observer) {
66
- super();
67
- let next = undefined;
68
- let error = undefined;
69
- let complete = undefined;
70
- if (tsplus_module_2.isFunction(observer)) {
71
- next = observer;
72
- } else if (observer) {
73
- ({
74
- next,
75
- error,
76
- complete
77
- } = observer);
78
- next = next?.bind(observer);
79
- error = error?.bind(observer);
80
- complete = complete?.bind(observer);
83
+ function createSafeObserver(observerOrNext) {
84
+ return new ConsumerObserver(!observerOrNext || isFunction(observerOrNext) ? {
85
+ next: observerOrNext ?? undefined
86
+ } : observerOrNext);
87
+ }
88
+ export class ConsumerObserver {
89
+ constructor(partialObserver) {
90
+ this.partialObserver = partialObserver;
91
+ this.onError = reportUnhandledError;
92
+ this.onError = partialObserver.error ?? reportUnhandledError;
93
+ }
94
+ next(value) {
95
+ const {
96
+ partialObserver
97
+ } = this;
98
+ if (partialObserver.next) {
99
+ try {
100
+ partialObserver.next(value);
101
+ } catch (error) {
102
+ this.onError(tsplus_module_3.halt(error));
103
+ }
81
104
  }
82
- if (error) {
83
- this.observer = {
84
- next: next ? wrapDefectHandler(next, error) : tsplus_module_3.noop,
85
- error: error ? wrapDefectHandler(error, error) : tsplus_module_3.noop,
86
- complete: complete ? wrapDefectHandler(complete, error) : tsplus_module_3.noop
87
- };
105
+ }
106
+ error(err) {
107
+ const {
108
+ partialObserver
109
+ } = this;
110
+ if (partialObserver.error) {
111
+ try {
112
+ partialObserver.error(err);
113
+ } catch (error) {
114
+ this.onError(tsplus_module_3.halt(error));
115
+ }
88
116
  } else {
89
- this.observer = {
90
- next: next ? wrapThrowHandler(next) : tsplus_module_3.noop,
91
- error: wrapThrowHandler(error ?? defaultErrorHandler),
92
- complete: complete ? wrapThrowHandler(complete) : tsplus_module_3.noop
93
- };
117
+ this.onError(err);
94
118
  }
95
119
  }
96
- }
97
- function wrapDefectHandler(handler, onDefect) {
98
- return (...args) => {
99
- try {
100
- handler(...args);
101
- } catch (err) {
102
- onDefect(tsplus_module_4.halt(err));
120
+ complete() {
121
+ const {
122
+ partialObserver
123
+ } = this;
124
+ if (partialObserver.complete) {
125
+ try {
126
+ partialObserver.complete();
127
+ } catch (error) {
128
+ this.onError(tsplus_module_3.halt(error));
129
+ }
103
130
  }
104
- };
131
+ }
105
132
  }
106
- function wrapThrowHandler(handler) {
107
- return (...args) => {
108
- try {
109
- handler(...args);
110
- } catch (err) {
111
- tsplus_module_3.reportUnhandledError(err);
112
- }
113
- };
133
+ function overrideNext(value) {
134
+ try {
135
+ this.nextOverride(value);
136
+ } catch (error) {
137
+ this.destination.error(tsplus_module_3.halt(error));
138
+ }
139
+ }
140
+ function overrideError(err) {
141
+ try {
142
+ this.errorOverride(err);
143
+ } catch (error) {
144
+ this.destination.error(tsplus_module_3.halt(error));
145
+ } finally {
146
+ this.unsubscribe();
147
+ }
148
+ }
149
+ function overrideComplete() {
150
+ try {
151
+ this.completeOverride();
152
+ } catch (error) {
153
+ this.destination.error(tsplus_module_3.halt(error));
154
+ } finally {
155
+ this.unsubscribe();
156
+ }
114
157
  }
115
158
  function defaultErrorHandler(error) {
116
159
  throw error;
117
160
  }
118
161
  export const EMPTY_OBSERVER = {
119
162
  closed: true,
120
- next: tsplus_module_3.noop,
163
+ next: tsplus_module_4.noop,
121
164
  error: defaultErrorHandler,
122
- complete: tsplus_module_3.noop
165
+ complete: tsplus_module_4.noop
123
166
  };
167
+ function hasAddAndUnsubscribe(value) {
168
+ return value && isFunction(value.unsubscribe) && isFunction(value.add);
169
+ }
124
170
  export function isSubscriber(u) {
125
- return tsplus_module_2.isObject(u) && SubscriberTypeId in u;
171
+ return tsplus_module_5.isObject(u) && SubscriberTypeId in u;
172
+ }
173
+ function handleStoppedNotification(notification, subscriber) {
174
+ const {
175
+ onStoppedNotification
176
+ } = config;
177
+ onStoppedNotification && tsplus_module_6.timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));
126
178
  }
127
179
  //# sourceMappingURL=Subscriber.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Subscriber.mjs","names":["SubscriberTypeId","Symbol","for","Subscriber","tsplus_module_1","Subscription","constructor","observer","_a","isStopped","isSubscription","add","EMPTY_OBSERVER","next","value","_next","error","err","_error","complete","_complete","unsubscribe","closed","SafeSubscriber","undefined","tsplus_module_2","isFunction","bind","wrapDefectHandler","tsplus_module_3","noop","wrapThrowHandler","defaultErrorHandler","handler","onDefect","args","tsplus_module_4","halt","reportUnhandledError","isSubscriber","u","isObject"],"sources":["../_src/Subscriber.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Subscriber.mjs","names":["isFunction","config","reportUnhandledError","SubscriberTypeId","Symbol","for","Subscriber","tsplus_module_1","Subscription","constructor","destination","overrides","finalize","_a","isStopped","nextOverride","errorOverride","completeOverride","createSafeObserver","next","error","complete","overrideNext","overrideError","overrideComplete","hasAddAndUnsubscribe","add","value","handleStoppedNotification","tsplus_module_2","_next","err","_error","_complete","unsubscribe","_closed","observerOrNext","ConsumerObserver","undefined","partialObserver","onError","tsplus_module_3","halt","defaultErrorHandler","EMPTY_OBSERVER","closed","tsplus_module_4","noop","isSubscriber","u","tsplus_module_5","isObject","notification","subscriber","onStoppedNotification","tsplus_module_6","timeoutProvider","setTimeout"],"sources":["../_src/Subscriber.ts"],"sourcesContent":[null],"mappings":";;;;;;;AACA,SAASA,UAAU,QAAQ,6BAA6B;AAExD,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,oBAAoB,QAAQ,qBAAoB;AAGzD,OAAO,MAAMC,gBAAgB,gBAAGC,MAAM,CAACC,GAAG,CAAC,6BAA6B,CAAC;AAUzE;;;AAGA,OAAM,MAAOC,UAAiB,SAAQC,eAAA,CAAAC,YAAY;EAUhDC,YACEC,WAAsF,EACtFC,SAAqC;IAErC,KAAK,CAACA,SAAS,EAAEC,QAAQ,CAAC;IAbnB,KAAAC,EAAA,CAAkB,GAAqBV,gBAAgB;IAExD,KAAAW,SAAS,GAAG,KAAK;IAGN,KAAAC,YAAY,GAAsC,IAAI;IACtD,KAAAC,aAAa,GAAqC,IAAI;IACtD,KAAAC,gBAAgB,GAAkC,IAAI;IAQvE,IAAI,CAACP,WAAW,GAAGA,WAAW,YAAYJ,UAAU,GAAGI,WAAW,GAAGQ,kBAAkB,CAACR,WAAW,CAAC;IAEpG,IAAI,CAACK,YAAY,GAAOJ,SAAS,EAAEQ,IAAI,IAAI,IAAI;IAC/C,IAAI,CAACH,aAAa,GAAML,SAAS,EAAES,KAAK,IAAI,IAAI;IAChD,IAAI,CAACH,gBAAgB,GAAGN,SAAS,EAAEU,QAAQ,IAAI,IAAI;IAEnD,IAAI,CAACF,IAAI,GAAO,IAAI,CAACJ,YAAY,GAAGO,YAAY,GAAG,IAAI,CAACH,IAAI;IAC5D,IAAI,CAACC,KAAK,GAAM,IAAI,CAACJ,aAAa,GAAGO,aAAa,GAAG,IAAI,CAACH,KAAK;IAC/D,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACJ,gBAAgB,GAAGO,gBAAgB,GAAG,IAAI,CAACH,QAAQ;IAExE,IAAII,oBAAoB,CAACf,WAAW,CAAC,EAAE;MACrCA,WAAW,CAACgB,GAAG,CAAC,IAAI,CAAC;IACvB;EACF;EAEAP,IAAIA,CAACQ,KAAQ;IACX,IAAI,IAAI,CAACb,SAAS,EAAE;MAClBc,yBAAyB,CAACC,eAAA,CAAAV,IAAA,CAAkBQ,KAAK,CAAC,EAAE,IAAI,CAAC;IAC3D,CAAC,MAAM;MACL,IAAI,CAACG,KAAK,CAACH,KAAK,CAAC;IACnB;EACF;EACAP,KAAKA,CAACW,GAAa;IACjB,IAAI,IAAI,CAACjB,SAAS,EAAE;MAClBc,yBAAyB,CAACC,eAAA,CAAAT,KAAA,CAAmBW,GAAG,CAAC,EAAE,IAAI,CAAC;IAC1D,CAAC,MAAM;MACL,IAAI,CAACjB,SAAS,GAAG,IAAI;MACrB,IAAI,CAACkB,MAAM,CAACD,GAAG,CAAC;IAClB;EACF;EACAV,QAAQA,CAAA;IACN,IAAI,IAAI,CAACP,SAAS,EAAE;MAClBc,yBAAyB,CAACC,eAAA,CAAAR,QAAA,EAAuB,EAAE,IAAI,CAAC;IAC1D,CAAC,MAAM;MACL,IAAI,CAACP,SAAS,GAAG,IAAI;MACrB,IAAI,CAACmB,SAAS,EAAE;IAClB;EACF;EACAC,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAACC,OAAO,EAAE;MACjB,IAAI,CAACrB,SAAS,GAAG,IAAI;MACrB,KAAK,CAACoB,WAAW,EAAE;MACnB,IAAI,CAACxB,WAAW,GAAG,IAAI;IACzB;EACF;EAEAoB,KAAKA,CAACH,KAAQ;IACZ,IAAI,CAACjB,WAAY,CAACS,IAAI,CAACQ,KAAK,CAAC;EAC/B;EAEAK,MAAMA,CAACD,GAAa;IAClB,IAAI;MACF,IAAI,CAACrB,WAAY,CAACU,KAAK,CAACW,GAAG,CAAC;IAC9B,CAAC,SAAS;MACR,IAAI,CAACG,WAAW,EAAE;IACpB;EACF;EAEAD,SAASA,CAAA;IACP,IAAI;MACF,IAAI,CAACvB,WAAY,CAACW,QAAQ,EAAE;IAC9B,CAAC,SAAS;MACR,IAAI,CAACa,WAAW,EAAE;IACpB;EACF;;KA/EU/B,gBAAgB;AAkF5B,SAASe,kBAAkBA,CACzBkB,cAAsE;EAEtE,OAAO,IAAIC,gBAAgB,CACzB,CAACD,cAAc,IAAIpC,UAAU,CAACoC,cAAc,CAAC,GAAG;IAAEjB,IAAI,EAAEiB,cAAc,IAAIE;EAAS,CAAE,GAAGF,cAAc,CACvG;AACH;AAEA,OAAM,MAAOC,gBAAgB;EAE3B5B,YAAoB8B,eAAwC;IAAxC,KAAAA,eAAe,GAAfA,eAAe;IAD3B,KAAAC,OAAO,GAA8BtC,oBAAoB;IAE/D,IAAI,CAACsC,OAAO,GAAGD,eAAe,CAACnB,KAAK,IAAIlB,oBAAoB;EAC9D;EAEAiB,IAAIA,CAACQ,KAAQ;IACX,MAAM;MAAEY;IAAe,CAAE,GAAG,IAAI;IAChC,IAAIA,eAAe,CAACpB,IAAI,EAAE;MACxB,IAAI;QACFoB,eAAe,CAACpB,IAAI,CAACQ,KAAK,CAAC;MAC7B,CAAC,CAAC,OAAOP,KAAK,EAAE;QACd,IAAI,CAACoB,OAAO,CAACC,eAAA,CAAAC,IAAA,CAAWtB,KAAK,CAAC,CAAC;MACjC;IACF;EACF;EAEAA,KAAKA,CAACW,GAAa;IACjB,MAAM;MAAEQ;IAAe,CAAE,GAAG,IAAI;IAChC,IAAIA,eAAe,CAACnB,KAAK,EAAE;MACzB,IAAI;QACFmB,eAAe,CAACnB,KAAK,CAACW,GAAG,CAAC;MAC5B,CAAC,CAAC,OAAOX,KAAK,EAAE;QACd,IAAI,CAACoB,OAAO,CAACC,eAAA,CAAAC,IAAA,CAAWtB,KAAK,CAAC,CAAC;MACjC;IACF,CAAC,MAAM;MACL,IAAI,CAACoB,OAAO,CAACT,GAAG,CAAC;IACnB;EACF;EAEAV,QAAQA,CAAA;IACN,MAAM;MAAEkB;IAAe,CAAE,GAAG,IAAI;IAChC,IAAIA,eAAe,CAAClB,QAAQ,EAAE;MAC5B,IAAI;QACFkB,eAAe,CAAClB,QAAQ,EAAE;MAC5B,CAAC,CAAC,OAAOD,KAAK,EAAE;QACd,IAAI,CAACoB,OAAO,CAACC,eAAA,CAAAC,IAAA,CAAWtB,KAAK,CAAC,CAAC;MACjC;IACF;EACF;;AAGF,SAASE,YAAYA,CAA+BK,KAAQ;EAC1D,IAAI;IACF,IAAI,CAACZ,YAAa,CAACY,KAAK,CAAC;EAC3B,CAAC,CAAC,OAAOP,KAAK,EAAE;IACd,IAAI,CAACV,WAAY,CAACU,KAAK,CAACqB,eAAA,CAAAC,IAAA,CAAWtB,KAAK,CAAC,CAAC;EAC5C;AACF;AAEA,SAASG,aAAaA,CAA+BQ,GAAa;EAChE,IAAI;IACF,IAAI,CAACf,aAAc,CAACe,GAAG,CAAC;EAC1B,CAAC,CAAC,OAAOX,KAAK,EAAE;IACd,IAAI,CAACV,WAAY,CAACU,KAAK,CAACqB,eAAA,CAAAC,IAAA,CAAWtB,KAAK,CAAC,CAAC;EAC5C,CAAC,SAAS;IACR,IAAI,CAACc,WAAW,EAAE;EACpB;AACF;AAEA,SAASV,gBAAgBA,CAAA;EACvB,IAAI;IACF,IAAI,CAACP,gBAAiB,EAAE;EAC1B,CAAC,CAAC,OAAOG,KAAK,EAAE;IACd,IAAI,CAACV,WAAY,CAACU,KAAK,CAACqB,eAAA,CAAAC,IAAA,CAAWtB,KAAK,CAAC,CAAC;EAC5C,CAAC,SAAS;IACR,IAAI,CAACc,WAAW,EAAE;EACpB;AACF;AAEA,SAASS,mBAAmBA,CAACvB,KAAU;EACrC,MAAMA,KAAK;AACb;AAEA,OAAO,MAAMwB,cAAc,GAEvB;EACFC,MAAM,EAAE,IAAI;EACZ1B,IAAI,EAAA2B,eAAA,CAAEC,IAAI;EACV3B,KAAK,EAAEuB,mBAAmB;EAC1BtB,QAAQ,EAAAyB,eAAA,CAAEC;CACX;AAED,SAAStB,oBAAoBA,CAACE,KAAU;EACtC,OAAOA,KAAK,IAAI3B,UAAU,CAAC2B,KAAK,CAACO,WAAW,CAAC,IAAIlC,UAAU,CAAC2B,KAAK,CAACD,GAAG,CAAC;AACxE;AAEA,OAAM,SAAUsB,YAAYA,CAACC,CAAU;EACrC,OAAOC,eAAA,CAAAC,QAAQ,CAACF,CAAC,CAAC,IAAI9C,gBAAgB,IAAI8C,CAAC;AAC7C;AAEA,SAASrB,yBAAyBA,CAAOwB,YAAgC,EAAEC,UAA4B;EACrG,MAAM;IAAEC;EAAqB,CAAE,GAAGrD,MAAM;EACxCqD,qBAAqB,IAAIC,eAAA,CAAAC,eAAe,CAACC,UAAU,CAAC,MAAMH,qBAAqB,CAACF,YAAY,EAAEC,UAAU,CAAC,CAAC;AAC5G","ignoreList":[]}
@@ -9,14 +9,14 @@ export class Subscription {
9
9
  constructor(initialFinalizer) {
10
10
  this.initialFinalizer = initialFinalizer;
11
11
  this[_a] = SubscriptionTypeId;
12
- this.closed = false;
12
+ this._closed = false;
13
13
  this.finalizers = null;
14
14
  this.parents = null;
15
15
  }
16
16
  unsubscribe() {
17
17
  let errors;
18
- if (!this.closed) {
19
- this.closed = true;
18
+ if (!this._closed) {
19
+ this._closed = true;
20
20
  const {
21
21
  parents,
22
22
  initialFinalizer,
@@ -57,11 +57,11 @@ export class Subscription {
57
57
  }
58
58
  add(finalizer) {
59
59
  if (finalizer && finalizer !== this) {
60
- if (this.closed) {
60
+ if (this._closed) {
61
61
  executeFinalizer(finalizer);
62
62
  } else {
63
63
  if (isSubscription(finalizer)) {
64
- if (finalizer.closed || finalizer.hasParent(this)) {
64
+ if (finalizer._closed || finalizer.hasParent(this)) {
65
65
  return;
66
66
  }
67
67
  finalizer.addParent(this);
@@ -105,7 +105,7 @@ function executeFinalizer(finalizer) {
105
105
  */
106
106
  export const EMPTY_SUBSCRIPTION = /*#__PURE__*/(() => {
107
107
  const empty = /*#__PURE__*/new Subscription();
108
- empty.closed = true;
108
+ empty._closed = true;
109
109
  return empty;
110
110
  })();
111
111
  export const UnsubscribeErrorTypeId = /*#__PURE__*/Symbol.for("@principia/observable/UnsubscribeError");
@@ -1 +1 @@
1
- {"version":3,"file":"Subscription.mjs","names":["SubscriptionTypeId","Symbol","for","Subscription","constructor","initialFinalizer","_a","closed","finalizers","parents","unsubscribe","errors","parent","remove","e","isUnsubscribeError","finalizer","executeFinalizer","push","UnsubscribeError","add","isSubscription","hasParent","addParent","Set","parentage","has","removeParent","delete","u","tsplus_module_1","isObject","EMPTY_SUBSCRIPTION","empty","UnsubscribeErrorTypeId","_b"],"sources":["../_src/Subscription.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Subscription.mjs","names":["SubscriptionTypeId","Symbol","for","Subscription","constructor","initialFinalizer","_a","_closed","finalizers","parents","unsubscribe","errors","parent","remove","e","isUnsubscribeError","finalizer","executeFinalizer","push","UnsubscribeError","add","isSubscription","hasParent","addParent","Set","parentage","has","removeParent","delete","u","tsplus_module_1","isObject","EMPTY_SUBSCRIPTION","empty","UnsubscribeErrorTypeId","_b"],"sources":["../_src/Subscription.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * The {@link GlobalConfig} object for RxJS. It is used to configure things
3
+ * like how to react on unhandled errors.
4
+ */
5
+ export const config = {
6
+ onUnhandledError: null,
7
+ onStoppedNotification: null
8
+ };
9
+ //# sourceMappingURL=config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.mjs","names":["config","onUnhandledError","onStoppedNotification"],"sources":["../_src/config.ts"],"sourcesContent":[null],"mappings":"AAEA;;;;AAIA,OAAO,MAAMA,MAAM,GAAiB;EAClCC,gBAAgB,EAAE,IAAI;EACtBC,qBAAqB,EAAE;CACxB","ignoreList":[]}
@@ -15,7 +15,7 @@ export class AsyncAction<A> extends Action<A> {
15
15
  }
16
16
 
17
17
  schedule(state?: A, delay = 0): Subscription {
18
- if (this.closed) {
18
+ if (this._closed) {
19
19
  return this;
20
20
  }
21
21
 
@@ -48,7 +48,7 @@ export class AsyncAction<A> extends Action<A> {
48
48
  }
49
49
 
50
50
  public execute(state: A, delay: number): unknown {
51
- if (this.closed) {
51
+ if (this._closed) {
52
52
  throw new Error("executing a cancelled action");
53
53
  }
54
54
 
@@ -77,7 +77,7 @@ export class AsyncAction<A> extends Action<A> {
77
77
  }
78
78
 
79
79
  unsubscribe() {
80
- if (!this.closed) {
80
+ if (!this._closed) {
81
81
  const { id, scheduler } = this;
82
82
  const { actions } = scheduler;
83
83
 
@@ -18,7 +18,7 @@ export class BehaviorSubject<A> extends Subject<never, never, A> {
18
18
 
19
19
  protected subscribeInternal(subscriber: Subscriber<never, A>) {
20
20
  const subscription = super.subscribeInternal(subscriber);
21
- !subscription.closed && subscriber.next(this._value);
21
+ !subscription._closed && subscriber.next(this._value);
22
22
  return subscription;
23
23
  }
24
24
 
@@ -15,12 +15,12 @@ export function connect<R, E, A, R1, E1, B>(
15
15
  ) {
16
16
  return (fa: Observable<R, E, A>): Observable<R | R1, E | E1, B> => {
17
17
  const { connector } = config;
18
- return fa.operate((source, subscriber, environment) => {
18
+ return new Observable((subscriber, environment) => {
19
19
  const subject = connector();
20
20
  Observable.from(selector(Observable.fromSubscribable(subject)))
21
21
  .provideEnvironment(environment)
22
22
  .subscribe(subscriber);
23
- subscriber.add(source.provideEnvironment(environment).subscribe(subject));
23
+ subscriber.add(fa.provideEnvironment(environment).subscribe(subject));
24
24
  });
25
25
  };
26
26
  }
@@ -31,7 +31,7 @@ export class Connectable<R, E, A> extends Observable<R, E, A> implements Connect
31
31
  this.source = Observable.from(source);
32
32
  }
33
33
  connect() {
34
- if (!this.connection || this.connection.closed) {
34
+ if (!this.connection || this.connection._closed) {
35
35
  this.connection = Observable.defer(this.source).provideEnvironment(this.environment).subscribe(this.subject);
36
36
  if (this.resetOnDisconnect) {
37
37
  this.connection.add(() => (this.subject = this.connector()));