@fncts/observable 0.0.9 → 0.0.11

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 (221) hide show
  1. package/BehaviorSubject.d.ts +2 -2
  2. package/Notification.d.ts +4 -4
  3. package/Observable/api/connect.d.ts +2 -2
  4. package/Observable/api/connectable.d.ts +2 -2
  5. package/Observable/api/fromEvent.d.ts +4 -0
  6. package/Observable/api/race.d.ts +2 -1
  7. package/Observable/api/raceWith.d.ts +2 -2
  8. package/Observable/api/repeatWhen.d.ts +5 -2
  9. package/Observable/api/retryWhen.d.ts +2 -3
  10. package/Observable/api/share.d.ts +5 -4
  11. package/Observable/api/window.d.ts +2 -2
  12. package/Observable/api/windowCount.d.ts +2 -2
  13. package/Observable/api/windowTime.d.ts +5 -5
  14. package/Observable/api/windowToggle.d.ts +3 -3
  15. package/Observable/api/windowWhen.d.ts +3 -3
  16. package/Observable/api.d.ts +189 -195
  17. package/Observable/definition.d.ts +8 -6
  18. package/ObservableRef/api.d.ts +63 -0
  19. package/ObservableRef/atomic.d.ts +32 -0
  20. package/ObservableRef/definition.d.ts +52 -0
  21. package/Operator.d.ts +2 -2
  22. package/_cjs/Action.cjs +0 -7
  23. package/_cjs/Action.cjs.map +1 -1
  24. package/_cjs/AnimationFrameAction.cjs +0 -12
  25. package/_cjs/AnimationFrameAction.cjs.map +1 -1
  26. package/_cjs/AnimationFrameScheduler.cjs +0 -12
  27. package/_cjs/AnimationFrameScheduler.cjs.map +1 -1
  28. package/_cjs/AsyncAction.cjs +0 -25
  29. package/_cjs/AsyncAction.cjs.map +1 -1
  30. package/_cjs/AsyncScheduler.cjs +2 -16
  31. package/_cjs/AsyncScheduler.cjs.map +1 -1
  32. package/_cjs/BehaviorSubject.cjs +1 -13
  33. package/_cjs/BehaviorSubject.cjs.map +1 -1
  34. package/_cjs/Notification.cjs +21 -40
  35. package/_cjs/Notification.cjs.map +1 -1
  36. package/_cjs/Observable/api/connect.cjs +12 -17
  37. package/_cjs/Observable/api/connect.cjs.map +1 -1
  38. package/_cjs/Observable/api/connectable.cjs +6 -18
  39. package/_cjs/Observable/api/connectable.cjs.map +1 -1
  40. package/_cjs/Observable/api/fromCallback.cjs +0 -15
  41. package/_cjs/Observable/api/fromCallback.cjs.map +1 -1
  42. package/_cjs/Observable/api/fromEvent.cjs +3 -5
  43. package/_cjs/Observable/api/fromEvent.cjs.map +1 -1
  44. package/_cjs/Observable/api/index.cjs +0 -28
  45. package/_cjs/Observable/api/index.cjs.map +1 -1
  46. package/_cjs/Observable/api/race.cjs +2 -12
  47. package/_cjs/Observable/api/race.cjs.map +1 -1
  48. package/_cjs/Observable/api/raceWith.cjs +8 -11
  49. package/_cjs/Observable/api/raceWith.cjs.map +1 -1
  50. package/_cjs/Observable/api/repeatWhen.cjs +44 -55
  51. package/_cjs/Observable/api/repeatWhen.cjs.map +1 -1
  52. package/_cjs/Observable/api/retryWhen.cjs +29 -45
  53. package/_cjs/Observable/api/retryWhen.cjs.map +1 -1
  54. package/_cjs/Observable/api/share.cjs +61 -77
  55. package/_cjs/Observable/api/share.cjs.map +1 -1
  56. package/_cjs/Observable/api/window.cjs +33 -39
  57. package/_cjs/Observable/api/window.cjs.map +1 -1
  58. package/_cjs/Observable/api/windowCount.cjs +40 -48
  59. package/_cjs/Observable/api/windowCount.cjs.map +1 -1
  60. package/_cjs/Observable/api/windowTime.cjs +60 -73
  61. package/_cjs/Observable/api/windowTime.cjs.map +1 -1
  62. package/_cjs/Observable/api/windowToggle.cjs +55 -71
  63. package/_cjs/Observable/api/windowToggle.cjs.map +1 -1
  64. package/_cjs/Observable/api/windowWhen.cjs +42 -52
  65. package/_cjs/Observable/api/windowWhen.cjs.map +1 -1
  66. package/_cjs/Observable/api.cjs +1260 -1485
  67. package/_cjs/Observable/api.cjs.map +1 -1
  68. package/_cjs/Observable/definition.cjs +9 -37
  69. package/_cjs/Observable/definition.cjs.map +1 -1
  70. package/_cjs/Observable/dom/animationFrames.cjs +0 -12
  71. package/_cjs/Observable/dom/animationFrames.cjs.map +1 -1
  72. package/_cjs/Observable.cjs +0 -38
  73. package/_cjs/Observable.cjs.map +1 -1
  74. package/_cjs/ObservableRef/api.cjs +160 -0
  75. package/_cjs/ObservableRef/api.cjs.map +1 -0
  76. package/_cjs/ObservableRef/atomic.cjs +93 -0
  77. package/_cjs/ObservableRef/atomic.cjs.map +1 -0
  78. package/_cjs/ObservableRef/definition.cjs +24 -0
  79. package/_cjs/ObservableRef/definition.cjs.map +1 -0
  80. package/_cjs/Operator.cjs +11 -21
  81. package/_cjs/Operator.cjs.map +1 -1
  82. package/_cjs/Scheduler.cjs +0 -18
  83. package/_cjs/Scheduler.cjs.map +1 -1
  84. package/_cjs/Subject.cjs +3 -50
  85. package/_cjs/Subject.cjs.map +1 -1
  86. package/_cjs/Subscriber.cjs +0 -32
  87. package/_cjs/Subscriber.cjs.map +1 -1
  88. package/_cjs/Subscription.cjs +0 -37
  89. package/_cjs/Subscription.cjs.map +1 -1
  90. package/_cjs/index.cjs +0 -28
  91. package/_cjs/internal/animationFrameProvider.cjs +0 -9
  92. package/_cjs/internal/animationFrameProvider.cjs.map +1 -1
  93. package/_cjs/internal/args.cjs +0 -6
  94. package/_cjs/internal/args.cjs.map +1 -1
  95. package/_cjs/internal/intervalProvider.cjs +0 -2
  96. package/_cjs/internal/intervalProvider.cjs.map +1 -1
  97. package/_cjs/internal/performanceTimestampProvider.cjs +0 -1
  98. package/_cjs/internal/performanceTimestampProvider.cjs.map +1 -1
  99. package/_cjs/internal/timeoutProvider.cjs +0 -2
  100. package/_cjs/internal/timeoutProvider.cjs.map +1 -1
  101. package/_cjs/internal/timestampProvider.cjs +0 -1
  102. package/_cjs/internal/timestampProvider.cjs.map +1 -1
  103. package/_cjs/internal/util.cjs +2 -21
  104. package/_cjs/internal/util.cjs.map +1 -1
  105. package/_mjs/Action.mjs +0 -3
  106. package/_mjs/Action.mjs.map +1 -1
  107. package/_mjs/AnimationFrameAction.mjs +0 -6
  108. package/_mjs/AnimationFrameAction.mjs.map +1 -1
  109. package/_mjs/AnimationFrameScheduler.mjs +0 -7
  110. package/_mjs/AnimationFrameScheduler.mjs.map +1 -1
  111. package/_mjs/AsyncAction.mjs +0 -17
  112. package/_mjs/AsyncAction.mjs.map +1 -1
  113. package/_mjs/AsyncScheduler.mjs +2 -10
  114. package/_mjs/AsyncScheduler.mjs.map +1 -1
  115. package/_mjs/BehaviorSubject.mjs +1 -8
  116. package/_mjs/BehaviorSubject.mjs.map +1 -1
  117. package/_mjs/Notification.mjs +18 -26
  118. package/_mjs/Notification.mjs.map +1 -1
  119. package/_mjs/Observable/api/connect.mjs +12 -11
  120. package/_mjs/Observable/api/connect.mjs.map +1 -1
  121. package/_mjs/Observable/api/connectable.mjs +6 -9
  122. package/_mjs/Observable/api/connectable.mjs.map +1 -1
  123. package/_mjs/Observable/api/fromCallback.mjs +0 -10
  124. package/_mjs/Observable/api/fromCallback.mjs.map +1 -1
  125. package/_mjs/Observable/api/fromEvent.mjs +3 -1
  126. package/_mjs/Observable/api/fromEvent.mjs.map +1 -1
  127. package/_mjs/Observable/api/index.mjs.map +1 -1
  128. package/_mjs/Observable/api/race.mjs +2 -6
  129. package/_mjs/Observable/api/race.mjs.map +1 -1
  130. package/_mjs/Observable/api/raceWith.mjs +7 -6
  131. package/_mjs/Observable/api/raceWith.mjs.map +1 -1
  132. package/_mjs/Observable/api/repeatWhen.mjs +44 -48
  133. package/_mjs/Observable/api/repeatWhen.mjs.map +1 -1
  134. package/_mjs/Observable/api/retryWhen.mjs +29 -37
  135. package/_mjs/Observable/api/retryWhen.mjs.map +1 -1
  136. package/_mjs/Observable/api/share.mjs +60 -70
  137. package/_mjs/Observable/api/share.mjs.map +1 -1
  138. package/_mjs/Observable/api/window.mjs +32 -33
  139. package/_mjs/Observable/api/window.mjs.map +1 -1
  140. package/_mjs/Observable/api/windowCount.mjs +39 -43
  141. package/_mjs/Observable/api/windowCount.mjs.map +1 -1
  142. package/_mjs/Observable/api/windowTime.mjs +59 -63
  143. package/_mjs/Observable/api/windowTime.mjs.map +1 -1
  144. package/_mjs/Observable/api/windowToggle.mjs +54 -62
  145. package/_mjs/Observable/api/windowToggle.mjs.map +1 -1
  146. package/_mjs/Observable/api/windowWhen.mjs +41 -45
  147. package/_mjs/Observable/api/windowWhen.mjs.map +1 -1
  148. package/_mjs/Observable/api.mjs +1186 -1311
  149. package/_mjs/Observable/api.mjs.map +1 -1
  150. package/_mjs/Observable/definition.mjs +9 -24
  151. package/_mjs/Observable/definition.mjs.map +1 -1
  152. package/_mjs/Observable/dom/animationFrames.mjs +0 -5
  153. package/_mjs/Observable/dom/animationFrames.mjs.map +1 -1
  154. package/_mjs/Observable.mjs +4 -4
  155. package/_mjs/Observable.mjs.map +1 -1
  156. package/_mjs/ObservableRef/api.mjs +141 -0
  157. package/_mjs/ObservableRef/api.mjs.map +1 -0
  158. package/_mjs/ObservableRef/atomic.mjs +82 -0
  159. package/_mjs/ObservableRef/atomic.mjs.map +1 -0
  160. package/_mjs/ObservableRef/definition.mjs +16 -0
  161. package/_mjs/ObservableRef/definition.mjs.map +1 -0
  162. package/_mjs/Operator.mjs +11 -12
  163. package/_mjs/Operator.mjs.map +1 -1
  164. package/_mjs/Scheduler.mjs +0 -9
  165. package/_mjs/Scheduler.mjs.map +1 -1
  166. package/_mjs/Subject.mjs +3 -37
  167. package/_mjs/Subject.mjs.map +1 -1
  168. package/_mjs/Subscriber.mjs +0 -20
  169. package/_mjs/Subscriber.mjs.map +1 -1
  170. package/_mjs/Subscription.mjs +0 -26
  171. package/_mjs/Subscription.mjs.map +1 -1
  172. package/_mjs/index.mjs.map +1 -1
  173. package/_mjs/internal/animationFrameProvider.mjs +0 -5
  174. package/_mjs/internal/animationFrameProvider.mjs.map +1 -1
  175. package/_mjs/internal/args.mjs +0 -2
  176. package/_mjs/internal/args.mjs.map +1 -1
  177. package/_mjs/internal/intervalProvider.mjs +0 -2
  178. package/_mjs/internal/intervalProvider.mjs.map +1 -1
  179. package/_mjs/internal/performanceTimestampProvider.mjs +0 -1
  180. package/_mjs/internal/performanceTimestampProvider.mjs.map +1 -1
  181. package/_mjs/internal/timeoutProvider.mjs +0 -2
  182. package/_mjs/internal/timeoutProvider.mjs.map +1 -1
  183. package/_mjs/internal/timestampProvider.mjs +0 -1
  184. package/_mjs/internal/timestampProvider.mjs.map +1 -1
  185. package/_mjs/internal/util.mjs +2 -7
  186. package/_mjs/internal/util.mjs.map +1 -1
  187. package/_src/Action.ts +0 -1
  188. package/_src/AnimationFrameAction.ts +0 -2
  189. package/_src/AnimationFrameScheduler.ts +2 -7
  190. package/_src/BehaviorSubject.ts +3 -3
  191. package/_src/Notification.ts +21 -23
  192. package/_src/Observable/api/connect.ts +12 -9
  193. package/_src/Observable/api/connectable.ts +6 -7
  194. package/_src/Observable/api/fromCallback.ts +0 -1
  195. package/_src/Observable/api/fromEvent.ts +3 -0
  196. package/_src/Observable/api/race.ts +15 -13
  197. package/_src/Observable/api/raceWith.ts +15 -14
  198. package/_src/Observable/api/repeatWhen.ts +51 -56
  199. package/_src/Observable/api/retryWhen.ts +38 -43
  200. package/_src/Observable/api/share.ts +63 -71
  201. package/_src/Observable/api/window.ts +36 -41
  202. package/_src/Observable/api/windowCount.ts +44 -51
  203. package/_src/Observable/api/windowTime.ts +69 -81
  204. package/_src/Observable/api/windowToggle.ts +69 -73
  205. package/_src/Observable/api/windowWhen.ts +49 -55
  206. package/_src/Observable/api.ts +1493 -1498
  207. package/_src/Observable/definition.ts +24 -18
  208. package/_src/Observable/dom/animationFrames.ts +16 -6
  209. package/_src/Observable/instances.ts +0 -23
  210. package/_src/Observable.ts +0 -2
  211. package/_src/ObservableRef/api.ts +169 -0
  212. package/_src/ObservableRef/atomic.ts +85 -0
  213. package/_src/ObservableRef/definition.ts +57 -0
  214. package/_src/Operator.ts +20 -15
  215. package/_src/Scheduler.ts +0 -6
  216. package/_src/Subject.ts +1 -1
  217. package/_src/Subscriber.ts +3 -2
  218. package/_src/global.ts +5 -1
  219. package/_src/internal/util.ts +8 -4
  220. package/global.d.ts +5 -1
  221. package/package.json +2 -2
@@ -6,72 +6,64 @@ import * as tsplus_module_5 from "@fncts/observable/internal/util";
6
6
  import * as tsplus_module_6 from "@fncts/observable/Operator";
7
7
  import { arrayRemove } from "@fncts/observable/internal/util";
8
8
  /**
9
- * @tsplus fluent fncts.observable.Observable windowToggle
9
+ * @tsplus pipeable fncts.observable.Observable windowToggle
10
10
  */
11
-
12
- export function windowToggle_(fa, openings, closingSelector) {
13
- return tsplus_module_6.operate_(fa, (source, subscriber) => {
14
- const windows = [];
15
-
16
- const handleError = err => {
17
- while (0 < windows.length) {
18
- windows.shift().error(err);
19
- }
20
-
21
- subscriber.error(err);
22
- };
23
-
24
- tsplus_module_3.from(openings).subscribe(tsplus_module_6.operatorSubscriber(subscriber, {
25
- next: openValue => {
26
- const window = new tsplus_module_1.Subject();
27
- windows.push(window);
28
- const closingSubscription = new tsplus_module_2.Subscription();
29
-
30
- const closeWindow = () => {
31
- arrayRemove(windows, window);
32
- window.complete();
33
- closingSubscription.unsubscribe();
34
- };
35
-
36
- let closingNotifier;
37
-
38
- try {
39
- closingNotifier = tsplus_module_3.from(closingSelector(openValue));
40
- } catch (err) {
41
- handleError(tsplus_module_4.halt(err));
42
- return;
11
+ export function windowToggle(openings, closingSelector) {
12
+ return fa => {
13
+ return tsplus_module_6.operate_((source, subscriber, environment) => {
14
+ const windows = [];
15
+ const handleError = err => {
16
+ while (0 < windows.length) {
17
+ windows.shift().error(err);
43
18
  }
44
-
45
- subscriber.next(window.asObservable());
46
- closingSubscription.add(closingNotifier.subscribe(tsplus_module_6.operatorSubscriber(subscriber, {
47
- next: closeWindow,
48
- complete: tsplus_module_5.noop,
49
- error: closeWindow
50
- })));
51
- },
52
- complete: tsplus_module_5.noop
53
- }));
54
- source.subscribe(tsplus_module_6.operatorSubscriber(subscriber, {
55
- next: value => {
56
- const windowsCopy = windows.slice();
57
-
58
- for (const window of windowsCopy) {
59
- window.next(value);
19
+ subscriber.error(err);
20
+ };
21
+ tsplus_module_3.from(openings).provideEnvironment(environment).subscribe(tsplus_module_6.operatorSubscriber(subscriber, {
22
+ next: openValue => {
23
+ const window = new tsplus_module_1.Subject();
24
+ windows.push(window);
25
+ const closingSubscription = new tsplus_module_2.Subscription();
26
+ const closeWindow = () => {
27
+ arrayRemove(windows, window);
28
+ window.complete();
29
+ closingSubscription.unsubscribe();
30
+ };
31
+ let closingNotifier;
32
+ try {
33
+ closingNotifier = tsplus_module_3.from(closingSelector(openValue));
34
+ } catch (err) {
35
+ handleError(tsplus_module_4.halt(err));
36
+ return;
37
+ }
38
+ subscriber.next(window.asObservable());
39
+ closingSubscription.add(closingNotifier.provideEnvironment(environment).subscribe(tsplus_module_6.operatorSubscriber(subscriber, {
40
+ next: closeWindow,
41
+ complete: tsplus_module_5.noop,
42
+ error: closeWindow
43
+ })));
44
+ },
45
+ complete: tsplus_module_5.noop
46
+ }));
47
+ source.provideEnvironment(environment).subscribe(tsplus_module_6.operatorSubscriber(subscriber, {
48
+ next: value => {
49
+ const windowsCopy = windows.slice();
50
+ for (const window of windowsCopy) {
51
+ window.next(value);
52
+ }
53
+ },
54
+ error: handleError,
55
+ complete: () => {
56
+ while (0 < windows.length) {
57
+ windows.shift().complete();
58
+ }
59
+ subscriber.complete();
60
60
  }
61
- },
62
- error: handleError,
63
- complete: () => {
61
+ }, () => {
64
62
  while (0 < windows.length) {
65
- windows.shift().complete();
63
+ windows.shift().unsubscribe();
66
64
  }
67
-
68
- subscriber.complete();
69
- }
70
- }, () => {
71
- while (0 < windows.length) {
72
- windows.shift().unsubscribe();
73
- }
74
- }));
75
- });
65
+ }));
66
+ })(fa);
67
+ };
76
68
  }
77
69
  //# sourceMappingURL=windowToggle.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"windowToggle.mjs","mappings":";;;;;;AAAA,SAASA,WAAT,QAA4B,iCAA5B;AAEA;;;;AAGA,OAAM,SAAUC,aAAV,CACJC,EADI,EAEJC,QAFI,EAGJC,eAHI,EAG2D;EAE/D,OAAOC,yBAASH,EAAT,EAAa,CAACI,MAAD,EAASC,UAAT,KAAuB;IACzC,MAAMC,OAAO,GAA2B,EAAxC;;IAEA,MAAMC,WAAW,GAAIC,GAAD,IAAkB;MACpC,OAAO,IAAIF,OAAO,CAACG,MAAnB,EAA2B;QACzBH,OAAO,CAACI,KAAR,GAAiBC,KAAjB,CAAuBH,GAAvB;MACD;;MACDH,UAAU,CAACM,KAAX,CAAiBH,GAAjB;IACD,CALD;;IAOAI,qBAAgBX,QAAhB,EAA0BY,SAA1B,CACEV,mCAAmBE,UAAnB,EAA+B;MAC7BS,IAAI,EAAGC,SAAD,IAAc;QAClB,MAAMC,MAAM,GAAG,oBAAIC,OAAJ,EAAf;QACAX,OAAO,CAACY,IAAR,CAAaF,MAAb;QACA,MAAMG,mBAAmB,GAAG,oBAAIC,YAAJ,EAA5B;;QACA,MAAMC,WAAW,GAAW,MAAK;UAC/BvB,WAAW,CAACQ,OAAD,EAAUU,MAAV,CAAX;UACAA,MAAM,CAACM,QAAP;UACAH,mBAAmB,CAACI,WAApB;QACD,CAJD;;QAMA,IAAIC,eAAJ;;QAEA,IAAI;UACFA,eAAe,GAAGZ,qBAAgBV,eAAe,CAACa,SAAD,CAA/B,CAAlB;QACD,CAFD,CAEE,OAAOP,GAAP,EAAY;UACZD,WAAW,CAACkB,qBAAWjB,GAAX,CAAD,CAAX;UACA;QACD;;QAEDH,UAAU,CAACS,IAAX,CAAgBE,MAAM,CAACU,YAAP,EAAhB;QAEAP,mBAAmB,CAACQ,GAApB,CACEH,eAAe,CAACX,SAAhB,CACEV,mCAAmBE,UAAnB,EAA+B;UAC7BS,IAAI,EAAEO,WADuB;UAE7BC,QAAQ,kBAAEM,IAFmB;UAG7BjB,KAAK,EAAEU;QAHsB,CAA/B,CADF,CADF;MASD,CA/B4B;MAgC7BC,QAAQ,kBAAEM;IAhCmB,CAA/B,CADF;IAqCAxB,MAAM,CAACS,SAAP,CACEV,mCACEE,UADF,EAEE;MACES,IAAI,EAAGe,KAAD,IAAU;QACd,MAAMC,WAAW,GAAGxB,OAAO,CAACyB,KAAR,EAApB;;QACA,KAAK,MAAMf,MAAX,IAAqBc,WAArB,EAAkC;UAChCd,MAAM,CAACF,IAAP,CAAYe,KAAZ;QACD;MACF,CANH;MAOElB,KAAK,EAAEJ,WAPT;MAQEe,QAAQ,EAAE,MAAK;QACb,OAAO,IAAIhB,OAAO,CAACG,MAAnB,EAA2B;UACzBH,OAAO,CAACI,KAAR,GAAiBY,QAAjB;QACD;;QACDjB,UAAU,CAACiB,QAAX;MACD;IAbH,CAFF,EAiBE,MAAK;MACH,OAAO,IAAIhB,OAAO,CAACG,MAAnB,EAA2B;QACzBH,OAAO,CAACI,KAAR,GAAiBa,WAAjB;MACD;IACF,CArBH,CADF;EAyBD,CAxEM,CAAP;AAyED","names":["arrayRemove","windowToggle_","fa","openings","closingSelector","tsplus_module_6","source","subscriber","windows","handleError","err","length","shift","error","tsplus_module_3","subscribe","next","openValue","window","Subject","push","closingSubscription","Subscription","closeWindow","complete","unsubscribe","closingNotifier","tsplus_module_4","asObservable","add","noop","value","windowsCopy","slice"],"sourceRoot":"","sources":["../../../_src/Observable/api/windowToggle.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"windowToggle.mjs","mappings":";;;;;;AAAA,SAASA,WAAW,QAAQ,iCAAiC;AAE7D;;;AAGA,OAAM,SAAUC,YAAY,CAC1BC,QAAoC,EACpCC,eAA+D;EAE/D,OAAiBC,EAAuB,IAAmE;IACzG,OAAOC,yBAAW,CAACC,MAAM,EAAEC,UAAU,EAAEC,WAAW,KAAI;MACpD,MAAMC,OAAO,GAA2B,EAAE;MAC1C,MAAMC,WAAW,GAAwBC,GAAa,IAAI;QACxD,OAAO,CAAC,GAAGF,OAAO,CAACG,MAAM,EAAE;UACzBH,OAAO,CAACI,KAAK,EAAG,CAACC,KAAK,CAACH,GAAG,CAAC;;QAE7BJ,UAAU,CAACO,KAAK,CAACH,GAAG,CAAC;MACvB,CAAC;MACDI,qBAAgBb,QAAQ,CAAC,CACtBc,kBAAkB,CAACR,WAAW,CAAC,CAC/BS,SAAS,CACRZ,kCAAkB,CAACE,UAAU,EAAE;QAC7BW,IAAI,EAAGC,SAAS,IAAI;UAClB,MAAMC,MAAM,GAAG,oBAAIC,OAAO,EAAe;UACzCZ,OAAO,CAACa,IAAI,CAACF,MAAM,CAAC;UACpB,MAAMG,mBAAmB,GAAG,oBAAIC,YAAY,EAAE;UAC9C,MAAMC,WAAW,GAAW,MAAK;YAC/BzB,WAAW,CAACS,OAAO,EAAEW,MAAM,CAAC;YAC5BA,MAAM,CAACM,QAAQ,EAAE;YACjBH,mBAAmB,CAACI,WAAW,EAAE;UACnC,CAAC;UACD,IAAIC,eAAwC;UAC5C,IAAI;YACFA,eAAe,GAAGb,qBAAgBZ,eAAe,CAACgB,SAAS,CAAC,CAAC;WAC9D,CAAC,OAAOR,GAAG,EAAE;YACZD,WAAW,CAACmB,qBAAWlB,GAAG,CAAC,CAAC;YAC5B;;UAEFJ,UAAU,CAACW,IAAI,CAACE,MAAM,CAACU,YAAY,EAAE,CAAC;UACtCP,mBAAmB,CAACQ,GAAG,CACrBH,eAAe,CAACZ,kBAAkB,CAACR,WAAW,CAAC,CAACS,SAAS,CACvDZ,kCAAkB,CAACE,UAAU,EAAE;YAC7BW,IAAI,EAAEO,WAAW;YACjBC,QAAQ,kBAAEM,IAAI;YACdlB,KAAK,EAAEW;WACR,CAAC,CACH,CACF;QACH,CAAC;QACDC,QAAQ,kBAAEM;OACX,CAAC,CACH;MACH1B,MAAM,CAACU,kBAAkB,CAACR,WAAW,CAAC,CAACS,SAAS,CAC9CZ,kCAAkB,CAChBE,UAAU,EACV;QACEW,IAAI,EAAGe,KAAK,IAAI;UACd,MAAMC,WAAW,GAAGzB,OAAO,CAAC0B,KAAK,EAAE;UACnC,KAAK,MAAMf,MAAM,IAAIc,WAAW,EAAE;YAChCd,MAAM,CAACF,IAAI,CAACe,KAAK,CAAC;;QAEtB,CAAC;QACDnB,KAAK,EAAEJ,WAAW;QAClBgB,QAAQ,EAAE,MAAK;UACb,OAAO,CAAC,GAAGjB,OAAO,CAACG,MAAM,EAAE;YACzBH,OAAO,CAACI,KAAK,EAAG,CAACa,QAAQ,EAAE;;UAE7BnB,UAAU,CAACmB,QAAQ,EAAE;QACvB;OACD,EACD,MAAK;QACH,OAAO,CAAC,GAAGjB,OAAO,CAACG,MAAM,EAAE;UACzBH,OAAO,CAACI,KAAK,EAAG,CAACc,WAAW,EAAE;;MAElC,CAAC,CACF,CACF;IACH,CAAC,EAnEMvB,EAAE,CAmEP;EACJ,CAAC;AACH","names":["arrayRemove","windowToggle","openings","closingSelector","fa","tsplus_module_6","source","subscriber","environment","windows","handleError","err","length","shift","error","tsplus_module_3","provideEnvironment","subscribe","next","openValue","window","Subject","push","closingSubscription","Subscription","closeWindow","complete","unsubscribe","closingNotifier","tsplus_module_4","asObservable","add","noop","value","windowsCopy","slice"],"sourceRoot":"","sources":["../../../_src/Observable/api/windowToggle.ts"],"sourcesContent":[null]}
@@ -3,52 +3,48 @@ import * as tsplus_module_2 from "@fncts/observable/Observable/api";
3
3
  import * as tsplus_module_3 from "@fncts/base/data/Cause/api";
4
4
  import * as tsplus_module_4 from "@fncts/observable/Operator";
5
5
  /**
6
- * @tsplus fluent fncts.observable.Observable windowWhen
6
+ * @tsplus pipeable fncts.observable.Observable windowWhen
7
7
  */
8
-
9
- export function windowWhen_(fa, closingSelector) {
10
- return tsplus_module_4.operate_(fa, (source, subscriber) => {
11
- let window;
12
- let closingSubscriber;
13
-
14
- const handleError = err => {
15
- window.error(err);
16
- subscriber.error(err);
17
- };
18
-
19
- const openWindow = () => {
20
- closingSubscriber?.unsubscribe();
21
- window?.complete();
22
- window = new tsplus_module_1.Subject();
23
- subscriber.next(window.asObservable());
24
- let closingNotifier;
25
-
26
- try {
27
- closingNotifier = tsplus_module_2.from(closingSelector());
28
- } catch (err) {
29
- handleError(tsplus_module_3.halt(err));
30
- return;
31
- }
32
-
33
- closingNotifier.subscribe(closingSubscriber = tsplus_module_4.operatorSubscriber(subscriber, {
34
- next: openWindow,
35
- complete: openWindow,
36
- error: handleError
8
+ export function windowWhen(closingSelector) {
9
+ return fa => {
10
+ return tsplus_module_4.operate_((source, subscriber, environment) => {
11
+ let window;
12
+ let closingSubscriber;
13
+ const handleError = err => {
14
+ window.error(err);
15
+ subscriber.error(err);
16
+ };
17
+ const openWindow = () => {
18
+ closingSubscriber?.unsubscribe();
19
+ window?.complete();
20
+ window = new tsplus_module_1.Subject();
21
+ subscriber.next(window.asObservable());
22
+ let closingNotifier;
23
+ try {
24
+ closingNotifier = tsplus_module_2.from(closingSelector());
25
+ } catch (err) {
26
+ handleError(tsplus_module_3.halt(err));
27
+ return;
28
+ }
29
+ closingNotifier.subscribe(closingSubscriber = tsplus_module_4.operatorSubscriber(subscriber, {
30
+ next: openWindow,
31
+ complete: openWindow,
32
+ error: handleError
33
+ }));
34
+ };
35
+ openWindow();
36
+ source.provideEnvironment(environment).subscribe(tsplus_module_4.operatorSubscriber(subscriber, {
37
+ next: value => window.next(value),
38
+ error: handleError,
39
+ complete: () => {
40
+ window.complete();
41
+ subscriber.complete();
42
+ }
43
+ }, () => {
44
+ closingSubscriber?.unsubscribe();
45
+ window = null;
37
46
  }));
38
- };
39
-
40
- openWindow();
41
- source.subscribe(tsplus_module_4.operatorSubscriber(subscriber, {
42
- next: value => window.next(value),
43
- error: handleError,
44
- complete: () => {
45
- window.complete();
46
- subscriber.complete();
47
- }
48
- }, () => {
49
- closingSubscriber?.unsubscribe();
50
- window = null;
51
- }));
52
- });
47
+ })(fa);
48
+ };
53
49
  }
54
50
  //# sourceMappingURL=windowWhen.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"windowWhen.mjs","mappings":";;;;AAAA;;;;AAGA,OAAM,SAAUA,WAAV,CACJC,EADI,EAEJC,eAFI,EAEqD;EAEzD,OAAOC,yBAASF,EAAT,EAAa,CAACG,MAAD,EAASC,UAAT,KAAuB;IACzC,IAAIC,MAAJ;IACA,IAAIC,iBAAJ;;IAEA,MAAMC,WAAW,GAAIC,GAAD,IAAkB;MACpCH,MAAO,CAACI,KAAR,CAAcD,GAAd;MACAJ,UAAU,CAACK,KAAX,CAAiBD,GAAjB;IACD,CAHD;;IAKA,MAAME,UAAU,GAAG,MAAK;MACtBJ,iBAAiB,EAAEK,WAAnB;MACAN,MAAM,EAAEO,QAAR;MACAP,MAAM,GAAG,oBAAIQ,OAAJ,EAAT;MACAT,UAAU,CAACU,IAAX,CAAgBT,MAAM,CAACU,YAAP,EAAhB;MACA,IAAIC,eAAJ;;MACA,IAAI;QACFA,eAAe,GAAGC,qBAAgBhB,eAAe,EAA/B,CAAlB;MACD,CAFD,CAEE,OAAOO,GAAP,EAAY;QACZD,WAAW,CAACW,qBAAWV,GAAX,CAAD,CAAX;QACA;MACD;;MAEDQ,eAAe,CAACG,SAAhB,CACGb,iBAAiB,GAAGJ,mCAAmBE,UAAnB,EAA+B;QAClDU,IAAI,EAAEJ,UAD4C;QAElDE,QAAQ,EAAEF,UAFwC;QAGlDD,KAAK,EAAEF;MAH2C,CAA/B,CADvB;IAOD,CApBD;;IAsBAG,UAAU;IAEVP,MAAM,CAACgB,SAAP,CACEjB,mCACEE,UADF,EAEE;MACEU,IAAI,EAAGM,KAAD,IAAWf,MAAO,CAACS,IAAR,CAAaM,KAAb,CADnB;MAEEX,KAAK,EAAEF,WAFT;MAGEK,QAAQ,EAAE,MAAK;QACbP,MAAO,CAACO,QAAR;QACAR,UAAU,CAACQ,QAAX;MACD;IANH,CAFF,EAUE,MAAK;MACHN,iBAAiB,EAAEK,WAAnB;MACAN,MAAM,GAAG,IAAT;IACD,CAbH,CADF;EAiBD,CAlDM,CAAP;AAmDD","names":["windowWhen_","fa","closingSelector","tsplus_module_4","source","subscriber","window","closingSubscriber","handleError","err","error","openWindow","unsubscribe","complete","Subject","next","asObservable","closingNotifier","tsplus_module_2","tsplus_module_3","subscribe","value"],"sourceRoot":"","sources":["../../../_src/Observable/api/windowWhen.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"windowWhen.mjs","mappings":";;;;AAAA;;;AAGA,OAAM,SAAUA,UAAU,CAACC,eAAyD;EAClF,OAAiBC,EAAuB,IAA+C;IACrF,OAAOC,yBAAW,CAACC,MAAM,EAAEC,UAAU,EAAEC,WAAW,KAAI;MACpD,IAAIC,MAAmC;MACvC,IAAIC,iBAAiD;MACrD,MAAMC,WAAW,GAAIC,GAAa,IAAI;QACpCH,MAAO,CAACI,KAAK,CAACD,GAAG,CAAC;QAClBL,UAAU,CAACM,KAAK,CAACD,GAAG,CAAC;MACvB,CAAC;MACD,MAAME,UAAU,GAAG,MAAK;QACtBJ,iBAAiB,EAAEK,WAAW,EAAE;QAChCN,MAAM,EAAEO,QAAQ,EAAE;QAClBP,MAAM,GAAG,oBAAIQ,OAAO,EAAE;QACtBV,UAAU,CAACW,IAAI,CAACT,MAAM,CAACU,YAAY,EAAE,CAAC;QACtC,IAAIC,eAA8C;QAClD,IAAI;UACFA,eAAe,GAAGC,qBAAgBlB,eAAe,EAAE,CAAC;SACrD,CAAC,OAAOS,GAAG,EAAE;UACZD,WAAW,CAACW,qBAAWV,GAAG,CAAC,CAAC;UAC5B;;QAEFQ,eAAe,CAACG,SAAS,CACtBb,iBAAiB,GAAGL,kCAAkB,CAACE,UAAU,EAAE;UAClDW,IAAI,EAAEJ,UAAU;UAChBE,QAAQ,EAAEF,UAAU;UACpBD,KAAK,EAAEF;SACR,CAAC,CACH;MACH,CAAC;MACDG,UAAU,EAAE;MACZR,MAAM,CAACkB,kBAAkB,CAAChB,WAAW,CAAC,CAACe,SAAS,CAC9ClB,kCAAkB,CAChBE,UAAU,EACV;QACEW,IAAI,EAAGO,KAAK,IAAKhB,MAAO,CAACS,IAAI,CAACO,KAAK,CAAC;QACpCZ,KAAK,EAAEF,WAAW;QAClBK,QAAQ,EAAE,MAAK;UACbP,MAAO,CAACO,QAAQ,EAAE;UAClBT,UAAU,CAACS,QAAQ,EAAE;QACvB;OACD,EACD,MAAK;QACHN,iBAAiB,EAAEK,WAAW,EAAE;QAChCN,MAAM,GAAG,IAAK;MAChB,CAAC,CACF,CACF;IACH,CAAC,EA7CML,EAAE,CA6CP;EACJ,CAAC;AACH","names":["windowWhen","closingSelector","fa","tsplus_module_4","source","subscriber","environment","window","closingSubscriber","handleError","err","error","openWindow","unsubscribe","complete","Subject","next","asObservable","closingNotifier","tsplus_module_2","tsplus_module_3","subscribe","provideEnvironment","value"],"sourceRoot":"","sources":["../../../_src/Observable/api/windowWhen.ts"],"sourcesContent":[null]}