@fluixi/reactive 1.0.0-alpha.83 → 1.0.0-alpha.84

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 (167) hide show
  1. package/dist/cdn/reactive.cjs +2673 -1
  2. package/dist/cdn/reactive.global.js +2 -1
  3. package/dist/cdn/reactive.mjs +2657 -1
  4. package/dist/cdn/signal.cjs +299 -1
  5. package/dist/cdn/signal.d.ts +1 -1
  6. package/dist/cdn/signal.global.js +2 -1
  7. package/dist/cdn/signal.js +1 -1
  8. package/dist/cdn/signal.mjs +276 -1
  9. package/dist/index.cjs +2673 -1
  10. package/dist/index.mjs +2657 -1
  11. package/dist/lib/index.cjs +2674 -1
  12. package/dist/lib/index.js +1 -1
  13. package/dist/lib/index.mjs +2659 -1
  14. package/dist/lib/observable/index.cjs +386 -1
  15. package/dist/lib/observable/index.mjs +364 -1
  16. package/dist/lib/observable/observable.cjs +384 -1
  17. package/dist/lib/observable/observable.d.ts +0 -137
  18. package/dist/lib/observable/observable.d.ts.map +1 -1
  19. package/dist/lib/observable/observable.js +0 -71
  20. package/dist/lib/observable/observable.mjs +361 -1
  21. package/dist/lib/observable/subscription.cjs +180 -1
  22. package/dist/lib/observable/subscription.d.ts +0 -12
  23. package/dist/lib/observable/subscription.d.ts.map +1 -1
  24. package/dist/lib/observable/subscription.js +0 -12
  25. package/dist/lib/observable/subscription.mjs +157 -1
  26. package/dist/lib/observable/types.cjs +18 -1
  27. package/dist/lib/observable/types.d.ts.map +1 -1
  28. package/dist/lib/predicates.cjs +44 -1
  29. package/dist/lib/predicates.d.ts +2 -2
  30. package/dist/lib/predicates.js +2 -2
  31. package/dist/lib/predicates.mjs +23 -1
  32. package/dist/lib/signal/api.cjs +571 -1
  33. package/dist/lib/signal/api.d.ts +211 -1
  34. package/dist/lib/signal/api.d.ts.map +1 -1
  35. package/dist/lib/signal/api.js +207 -12
  36. package/dist/lib/signal/api.mjs +548 -1
  37. package/dist/lib/signal/cached-resource.cjs +672 -1
  38. package/dist/lib/signal/cached-resource.d.ts +28 -16
  39. package/dist/lib/signal/cached-resource.d.ts.map +1 -1
  40. package/dist/lib/signal/cached-resource.js +35 -29
  41. package/dist/lib/signal/cached-resource.mjs +650 -1
  42. package/dist/lib/signal/graph/children.cjs +325 -1
  43. package/dist/lib/signal/graph/children.js +1 -1
  44. package/dist/lib/signal/graph/children.mjs +302 -1
  45. package/dist/lib/signal/graph/compat.cjs +578 -1
  46. package/dist/lib/signal/graph/compat.d.ts +13 -13
  47. package/dist/lib/signal/graph/compat.d.ts.map +1 -1
  48. package/dist/lib/signal/graph/compat.js +33 -31
  49. package/dist/lib/signal/graph/compat.mjs +556 -1
  50. package/dist/lib/signal/graph/core.cjs +295 -1
  51. package/dist/lib/signal/graph/core.d.ts +28 -24
  52. package/dist/lib/signal/graph/core.d.ts.map +1 -1
  53. package/dist/lib/signal/graph/core.js +38 -31
  54. package/dist/lib/signal/graph/core.mjs +273 -1
  55. package/dist/lib/signal/graph/debounced.cjs +668 -1
  56. package/dist/lib/signal/graph/debounced.d.ts +5 -5
  57. package/dist/lib/signal/graph/debounced.d.ts.map +1 -1
  58. package/dist/lib/signal/graph/debounced.js +5 -5
  59. package/dist/lib/signal/graph/debounced.mjs +645 -1
  60. package/dist/lib/signal/graph/derived.cjs +496 -1
  61. package/dist/lib/signal/graph/derived.d.ts +1 -1
  62. package/dist/lib/signal/graph/derived.js +1 -1
  63. package/dist/lib/signal/graph/derived.mjs +473 -1
  64. package/dist/lib/signal/graph/detect.cjs +66 -1
  65. package/dist/lib/signal/graph/detect.mjs +45 -1
  66. package/dist/lib/signal/graph/error-boundary.cjs +301 -1
  67. package/dist/lib/signal/graph/error-boundary.js +3 -3
  68. package/dist/lib/signal/graph/error-boundary.mjs +278 -1
  69. package/dist/lib/signal/graph/index.cjs +305 -1
  70. package/dist/lib/signal/graph/index.d.ts +7 -6
  71. package/dist/lib/signal/graph/index.d.ts.map +1 -1
  72. package/dist/lib/signal/graph/index.js +7 -6
  73. package/dist/lib/signal/graph/index.mjs +283 -1
  74. package/dist/lib/signal/graph/observe.cjs +163 -1
  75. package/dist/lib/signal/graph/observe.d.ts +8 -8
  76. package/dist/lib/signal/graph/observe.js +5 -5
  77. package/dist/lib/signal/graph/observe.mjs +140 -1
  78. package/dist/lib/signal/graph/resource.cjs +620 -1
  79. package/dist/lib/signal/graph/resource.d.ts +1 -1
  80. package/dist/lib/signal/graph/resource.js +7 -8
  81. package/dist/lib/signal/graph/resource.mjs +597 -1
  82. package/dist/lib/signal/graph/runtime.cjs +501 -1
  83. package/dist/lib/signal/graph/runtime.d.ts +7 -7
  84. package/dist/lib/signal/graph/runtime.d.ts.map +1 -1
  85. package/dist/lib/signal/graph/runtime.js +34 -30
  86. package/dist/lib/signal/graph/runtime.mjs +478 -1
  87. package/dist/lib/signal/graph/signal-next.cjs +1208 -1
  88. package/dist/lib/signal/graph/signal-next.d.ts +5 -5
  89. package/dist/lib/signal/graph/signal-next.d.ts.map +1 -1
  90. package/dist/lib/signal/graph/signal-next.js +14 -12
  91. package/dist/lib/signal/graph/signal-next.mjs +1186 -1
  92. package/dist/lib/signal/graph/ssr-hooks.cjs +60 -1
  93. package/dist/lib/signal/graph/ssr-hooks.d.ts +6 -7
  94. package/dist/lib/signal/graph/ssr-hooks.d.ts.map +1 -1
  95. package/dist/lib/signal/graph/ssr-hooks.js +6 -7
  96. package/dist/lib/signal/graph/ssr-hooks.mjs +39 -1
  97. package/dist/lib/signal/graph/state.cjs +72 -1
  98. package/dist/lib/signal/graph/state.d.ts +41 -10
  99. package/dist/lib/signal/graph/state.d.ts.map +1 -1
  100. package/dist/lib/signal/graph/state.js +83 -22
  101. package/dist/lib/signal/graph/state.mjs +49 -1
  102. package/dist/lib/signal/graph/suspense.cjs +301 -1
  103. package/dist/lib/signal/graph/suspense.js +4 -4
  104. package/dist/lib/signal/graph/suspense.mjs +278 -1
  105. package/dist/lib/signal/index-legacy.cjs +2540 -1
  106. package/dist/lib/signal/index-legacy.d.ts +1 -1
  107. package/dist/lib/signal/index-legacy.js +1 -1
  108. package/dist/lib/signal/index-legacy.mjs +2518 -1
  109. package/dist/lib/signal/index.cjs +1275 -1
  110. package/dist/lib/signal/index.d.ts +3 -2
  111. package/dist/lib/signal/index.d.ts.map +1 -1
  112. package/dist/lib/signal/index.js +7 -4
  113. package/dist/lib/signal/index.mjs +1253 -1
  114. package/dist/lib/signal/list.cjs +549 -1
  115. package/dist/lib/signal/list.d.ts +5 -5
  116. package/dist/lib/signal/list.js +5 -5
  117. package/dist/lib/signal/list.mjs +526 -1
  118. package/dist/lib/signal/resource-api.cjs +626 -1
  119. package/dist/lib/signal/resource-api.d.ts +5 -5
  120. package/dist/lib/signal/resource-api.js +5 -5
  121. package/dist/lib/signal/resource-api.mjs +603 -1
  122. package/dist/lib/signal/signal.cjs +2023 -1
  123. package/dist/lib/signal/signal.d.ts +4 -4
  124. package/dist/lib/signal/signal.d.ts.map +1 -1
  125. package/dist/lib/signal/signal.js +22 -23
  126. package/dist/lib/signal/signal.mjs +2000 -1
  127. package/dist/lib/signal/types.cjs +38 -1
  128. package/dist/lib/signal/types.d.ts.map +1 -1
  129. package/dist/lib/signal/types.js +2 -2
  130. package/dist/lib/signal/types.mjs +17 -1
  131. package/dist/lib/signal/utilities.cjs +1012 -1
  132. package/dist/lib/signal/utilities.d.ts +0 -108
  133. package/dist/lib/signal/utilities.d.ts.map +1 -1
  134. package/dist/lib/signal/utilities.js +0 -158
  135. package/dist/lib/signal/utilities.mjs +990 -1
  136. package/dist/lib/store/api.cjs +612 -1
  137. package/dist/lib/store/api.d.ts +33 -0
  138. package/dist/lib/store/api.d.ts.map +1 -1
  139. package/dist/lib/store/api.js +41 -8
  140. package/dist/lib/store/api.mjs +596 -1
  141. package/dist/lib/store/index.cjs +691 -1
  142. package/dist/lib/store/index.js +1 -1
  143. package/dist/lib/store/index.mjs +676 -1
  144. package/dist/lib/store/setter.types.cjs +18 -1
  145. package/dist/lib/store/setter.types.d.ts +43 -3
  146. package/dist/lib/store/setter.types.d.ts.map +1 -1
  147. package/dist/lib/store/store.cjs +658 -1
  148. package/dist/lib/store/store.d.ts +72 -0
  149. package/dist/lib/store/store.d.ts.map +1 -1
  150. package/dist/lib/store/store.js +148 -5
  151. package/dist/lib/store/store.mjs +644 -1
  152. package/dist/lib/store/types.cjs +18 -1
  153. package/dist/lib/store/types.d.ts +1 -1
  154. package/dist/lib/store/types.d.ts.map +1 -1
  155. package/dist/lib/store/utils.cjs +43 -1
  156. package/dist/lib/store/utils.d.ts +1 -1
  157. package/dist/lib/store/utils.js +1 -1
  158. package/dist/lib/store/utils.mjs +22 -1
  159. package/dist/lib/subject.cjs +450 -1
  160. package/dist/lib/subject.js +3 -91
  161. package/dist/lib/subject.mjs +427 -1
  162. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  163. package/dist/version.generated.cjs +27 -1
  164. package/dist/version.generated.d.ts +1 -1
  165. package/dist/version.generated.js +2 -2
  166. package/dist/version.generated.mjs +7 -1
  167. package/package.json +5 -4
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/store/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/store/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1,43 @@
1
- "use strict";var e=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var f=(t,n)=>{for(var r in n)e(t,r,{get:n[r],enumerable:!0})},p=(t,n,r,s)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of T(n))!y.call(t,o)&&o!==r&&e(t,o,{get:()=>n[o],enumerable:!(s=i(n,o))||s.enumerable});return t};var u=t=>p(e({},"__esModule",{value:!0}),t);var j={};f(j,{produce:()=>a,reconcile:()=>d});module.exports=u(j);function c(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t))return t.map(c);let n={};for(let r of Object.keys(t))n[r]=c(t[r]);return n}function a(t){return n=>{let r=c(n);return t(r),r}}function d(t,n={}){return()=>t}
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/store/utils.ts
21
+ var utils_exports = {};
22
+ __export(utils_exports, {
23
+ produce: () => produce,
24
+ reconcile: () => reconcile
25
+ });
26
+ module.exports = __toCommonJS(utils_exports);
27
+ function clone(value) {
28
+ if (value == null || typeof value !== "object") return value;
29
+ if (Array.isArray(value)) return value.map(clone);
30
+ const out = {};
31
+ for (const key of Object.keys(value)) out[key] = clone(value[key]);
32
+ return out;
33
+ }
34
+ function produce(producer) {
35
+ return (state) => {
36
+ const draft = clone(state);
37
+ producer(draft);
38
+ return draft;
39
+ };
40
+ }
41
+ function reconcile(value, _options = {}) {
42
+ return () => value;
43
+ }
@@ -1,6 +1,6 @@
1
1
  import type { Producer, ReconcileOptions } from './types.js';
2
2
  /**
3
- * Creates a producer function for immutable updates: `set(produce(draft => ))`.
3
+ * Creates a producer function for immutable updates: `set(produce(draft => ...))`.
4
4
  * The producer mutates a clone; the result replaces the state.
5
5
  */
6
6
  declare function produce<T>(producer: Producer<T>): (state: T) => T;
@@ -9,7 +9,7 @@ function clone(value) {
9
9
  return out;
10
10
  }
11
11
  /**
12
- * Creates a producer function for immutable updates: `set(produce(draft => ))`.
12
+ * Creates a producer function for immutable updates: `set(produce(draft => ...))`.
13
13
  * The producer mutates a clone; the result replaces the state.
14
14
  */
15
15
  function produce(producer) {
@@ -1 +1,22 @@
1
- function o(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t))return t.map(o);let n={};for(let r of Object.keys(t))n[r]=o(t[r]);return n}function e(t){return n=>{let r=o(n);return t(r),r}}function c(t,n={}){return()=>t}export{e as produce,c as reconcile};
1
+ // src/lib/store/utils.ts
2
+ function clone(value) {
3
+ if (value == null || typeof value !== "object") return value;
4
+ if (Array.isArray(value)) return value.map(clone);
5
+ const out = {};
6
+ for (const key of Object.keys(value)) out[key] = clone(value[key]);
7
+ return out;
8
+ }
9
+ function produce(producer) {
10
+ return (state) => {
11
+ const draft = clone(state);
12
+ producer(draft);
13
+ return draft;
14
+ };
15
+ }
16
+ function reconcile(value, _options = {}) {
17
+ return () => value;
18
+ }
19
+ export {
20
+ produce,
21
+ reconcile
22
+ };
@@ -1 +1,450 @@
1
- "use strict";var a=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var O=Object.prototype.hasOwnProperty;var T=(o,e)=>{for(var r in e)a(o,r,{get:e[r],enumerable:!0})},y=(o,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of v(e))!O.call(o,i)&&i!==r&&a(o,i,{get:()=>e[i],enumerable:!(t=d(e,i))||t.enumerable});return o};var F=o=>y(a({},"__esModule",{value:!0}),o);var S={};T(S,{Subject:()=>f});module.exports=F(S);function b(o){return typeof o=="function"&&!/^class\s/.test(Function.prototype.toString.call(o))}function h(o){return o==null||Array.isArray(o)||typeof o=="function"||o instanceof Date||o instanceof RegExp||o instanceof Map||o instanceof Set||o instanceof Error?!1:typeof o=="object"}var p=class o{constructor(e){this._closed=!1;this._parentOrParents=null;this._subscriptions=null;e&&(this._subscriptions=[e])}get closed(){return this._closed}unsubscribe(){if(this._closed)return;this._closed=!0;let{_parentOrParents:e,_subscriptions:r}=this;if(e instanceof o)e.remove(this);else if(e!==null)for(let t of e)t.remove(this);if(r){for(let t of r)if(b(t)&&!(t instanceof o))try{t()}catch(i){console.error("Error in unsubscribe function:",i)}else if(h(t)&&typeof t.unsubscribe=="function")try{t.unsubscribe()}catch(i){console.error("Error unsubscribing child:",i)}this._subscriptions=null}}add(e){if(!e||e===this)return this;if(e.closed)return this;let{_closed:r,_subscriptions:t}=this;if(r){if(b(e))try{e()}catch(i){console.error("Error in unsubscribe function:",i)}else if(e.unsubscribe)try{e.unsubscribe()}catch(i){console.error("Error unsubscribing:",i)}return this}return t||(this._subscriptions=[]),this._subscriptions.push(e),e instanceof o&&e._addParent(this),this}remove(e){let{_subscriptions:r}=this;if(!r)return;let t=r.indexOf(e);t!==-1&&(r.splice(t,1),e._removeParent(this))}_addParent(e){let{_parentOrParents:r}=this;r?Array.isArray(r)?r.push(e):this._parentOrParents=[r,e]:this._parentOrParents=e}_removeParent(e){let{_parentOrParents:r}=this;if(r===e)this._parentOrParents=null;else if(Array.isArray(r)){let t=r.indexOf(e);t!==-1&&(r.splice(t,1),r.length===1&&(this._parentOrParents=r[0]))}}};var u=class extends p{constructor(r,t,i){super();this.isStopped=!1;let s;r?typeof r=="object"?s=r:s={next:r,error:t,complete:i}:s={},this.destination=s}next(r){if(!this.isStopped&&this.destination.next)try{this.destination.next(r)}catch(t){this.error(t)}}error(r){if(!this.isStopped){if(this.isStopped=!0,this.destination.error)try{this.destination.error(r)}catch(t){throw t}else throw r;this.unsubscribe()}}complete(){if(!this.isStopped){if(this.isStopped=!0,this.destination.complete)try{this.destination.complete()}catch(r){this.error(r);return}this.unsubscribe()}}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}},l=class extends u{constructor(r,t,i,s){super(r,t,i);this._isUnsubscribing=!1;this._parentSubscriber=null;this._parentSubscriber=s||null}next(r){if(!this.isStopped&&!this._isUnsubscribing)try{super.next(r)}catch(t){this.error(t)}}error(r){if(!this.isStopped&&!this._isUnsubscribing){this._isUnsubscribing=!0;try{super.error(r)}finally{this._isUnsubscribing=!1}}}complete(){if(!this.isStopped&&!this._isUnsubscribing){this._isUnsubscribing=!0;try{super.complete()}finally{this._isUnsubscribing=!1}}}unsubscribe(){this.closed||(this._isUnsubscribing=!0,super.unsubscribe(),this._isUnsubscribing=!1)}};var c=class extends p{constructor(e){if(super(),e)this._subscribe=e;else throw new TypeError("Observable constructor requires a subscribe function")}subscribe(e,r,t){let i;e instanceof u?i=e:i=new l(e,r,t);let{_subscribe:s}=this;try{let n=s.call(this,i);n&&(typeof n=="function"||typeof n.unsubscribe=="function")&&i.add(n)}catch(n){i.error(n)}return i}pipe(...e){return e.length===0?this:e.reduce((r,t)=>t(r),this)}toPromise(){return new Promise((e,r)=>{let t;this.subscribe({next:i=>t=i,error:r,complete:()=>e(t)})})}};var f=class extends c{constructor(){super(r=>{if(this.closed)throw new Error("Subject has been closed");if(this.hasError)r.error(this.thrownError);else if(this.isStopped)r.complete();else return this.observers.push(r),()=>{let t=this.observers.indexOf(r);t!==-1&&this.observers.splice(t,1)}});this.observers=[];this.isStopped=!1;this.hasError=!1;this.thrownError=null}next(r){if(this.isStopped)return;let{observers:t}=this,i=t.length,s=t.slice();for(let n=0;n<i;n++)s[n].next?.(r)}error(r){if(this.isStopped)return;this.hasError=!0,this.thrownError=r,this.isStopped=!0;let{observers:t}=this;this.observers=[];let i=t.length,s=t.slice();for(let n=0;n<i;n++)s[n].error?.(r)}complete(){if(this.isStopped)return;this.isStopped=!0;let{observers:r}=this;this.observers=[];let t=r.length,i=r.slice();for(let s=0;s<t;s++)i[s].complete?.()}unsubscribe(){this.isStopped=!0,this.observers=[]}asObservable(){return new c(t=>this.subscribe(t))}};
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/subject.ts
21
+ var subject_exports = {};
22
+ __export(subject_exports, {
23
+ Subject: () => Subject
24
+ });
25
+ module.exports = __toCommonJS(subject_exports);
26
+
27
+ // src/lib/predicates.ts
28
+ function isFunction(value) {
29
+ return typeof value === "function" && !/^class\s/.test(Function.prototype.toString.call(value));
30
+ }
31
+ function isObject(value) {
32
+ if (value == null) return false;
33
+ if (Array.isArray(value)) return false;
34
+ if (typeof value === "function") return false;
35
+ if (value instanceof Date) return false;
36
+ if (value instanceof RegExp) return false;
37
+ if (value instanceof Map) return false;
38
+ if (value instanceof Set) return false;
39
+ if (value instanceof Error) return false;
40
+ return typeof value === "object";
41
+ }
42
+
43
+ // src/lib/observable/subscription.ts
44
+ var Subscription = class _Subscription {
45
+ /**
46
+ * Creates a new Subscription.
47
+ */
48
+ constructor(unsubscribe) {
49
+ /** @private */
50
+ this._closed = false;
51
+ /** @private */
52
+ this._parentOrParents = null;
53
+ /** @private */
54
+ this._subscriptions = null;
55
+ if (unsubscribe) {
56
+ this._subscriptions = [unsubscribe];
57
+ }
58
+ }
59
+ /**
60
+ * Whether the subscription is closed.
61
+ */
62
+ get closed() {
63
+ return this._closed;
64
+ }
65
+ /**
66
+ * Disposes the resources held by the subscription.
67
+ * May be called multiple times (idempotent).
68
+ */
69
+ unsubscribe() {
70
+ if (this._closed) {
71
+ return;
72
+ }
73
+ this._closed = true;
74
+ const { _parentOrParents, _subscriptions } = this;
75
+ if (_parentOrParents instanceof _Subscription) {
76
+ _parentOrParents.remove(this);
77
+ } else if (_parentOrParents !== null) {
78
+ for (const parent of _parentOrParents) {
79
+ parent.remove(this);
80
+ }
81
+ }
82
+ if (_subscriptions) {
83
+ for (const sub of _subscriptions) {
84
+ if (isFunction(sub) && !(sub instanceof _Subscription)) {
85
+ try {
86
+ sub();
87
+ } catch (error) {
88
+ console.error("Error in unsubscribe function:", error);
89
+ }
90
+ } else if (isObject(sub) && typeof sub.unsubscribe === "function") {
91
+ try {
92
+ sub.unsubscribe();
93
+ } catch (error) {
94
+ console.error("Error unsubscribing child:", error);
95
+ }
96
+ }
97
+ }
98
+ this._subscriptions = null;
99
+ }
100
+ }
101
+ /**
102
+ * Adds a child subscription or cleanup function to this subscription.
103
+ * When this subscription is unsubscribed, all added subscriptions/functions will be unsubscribed/called.
104
+ *
105
+ * @throws {TypeError} If the argument is not a subscription-like object or function
106
+ */
107
+ add(subscription) {
108
+ if (!subscription || subscription === this) {
109
+ return this;
110
+ }
111
+ if (subscription.closed) {
112
+ return this;
113
+ }
114
+ let { _closed, _subscriptions } = this;
115
+ if (_closed) {
116
+ if (isFunction(subscription)) {
117
+ try {
118
+ subscription();
119
+ } catch (error) {
120
+ console.error("Error in unsubscribe function:", error);
121
+ }
122
+ } else if (subscription.unsubscribe) {
123
+ try {
124
+ subscription.unsubscribe();
125
+ } catch (error) {
126
+ console.error("Error unsubscribing:", error);
127
+ }
128
+ }
129
+ return this;
130
+ }
131
+ if (!_subscriptions) {
132
+ this._subscriptions = [];
133
+ }
134
+ this._subscriptions.push(subscription);
135
+ if (subscription instanceof _Subscription) {
136
+ subscription._addParent(this);
137
+ }
138
+ return this;
139
+ }
140
+ /**
141
+ * Removes a child subscription from this subscription.
142
+ */
143
+ remove(subscription) {
144
+ const { _subscriptions } = this;
145
+ if (!_subscriptions) {
146
+ return;
147
+ }
148
+ const index = _subscriptions.indexOf(subscription);
149
+ if (index !== -1) {
150
+ _subscriptions.splice(index, 1);
151
+ subscription._removeParent(this);
152
+ }
153
+ }
154
+ /** @private */
155
+ _addParent(parent) {
156
+ const { _parentOrParents } = this;
157
+ if (!_parentOrParents) {
158
+ this._parentOrParents = parent;
159
+ } else if (Array.isArray(_parentOrParents)) {
160
+ _parentOrParents.push(parent);
161
+ } else {
162
+ this._parentOrParents = [_parentOrParents, parent];
163
+ }
164
+ }
165
+ /** @private */
166
+ _removeParent(parent) {
167
+ const { _parentOrParents } = this;
168
+ if (_parentOrParents === parent) {
169
+ this._parentOrParents = null;
170
+ } else if (Array.isArray(_parentOrParents)) {
171
+ const index = _parentOrParents.indexOf(parent);
172
+ if (index !== -1) {
173
+ _parentOrParents.splice(index, 1);
174
+ if (_parentOrParents.length === 1) {
175
+ this._parentOrParents = _parentOrParents[0];
176
+ }
177
+ }
178
+ }
179
+ }
180
+ };
181
+
182
+ // src/lib/observable/observable.ts
183
+ var Subscriber = class extends Subscription {
184
+ /**
185
+ * Creates a new Subscriber.
186
+ */
187
+ constructor(destinationOrNext, error, complete) {
188
+ super();
189
+ /** @private */
190
+ this.isStopped = false;
191
+ let observer;
192
+ if (!destinationOrNext) {
193
+ observer = {};
194
+ } else if (typeof destinationOrNext === "object") {
195
+ observer = destinationOrNext;
196
+ } else {
197
+ observer = {
198
+ next: destinationOrNext,
199
+ error,
200
+ complete
201
+ };
202
+ }
203
+ this.destination = observer;
204
+ }
205
+ /**
206
+ * Sends the next value to the observer.
207
+ */
208
+ next(value) {
209
+ if (!this.isStopped && this.destination.next) {
210
+ try {
211
+ this.destination.next(value);
212
+ } catch (error) {
213
+ this.error(error);
214
+ }
215
+ }
216
+ }
217
+ /**
218
+ * Sends an error notification to the observer.
219
+ */
220
+ error(err) {
221
+ if (!this.isStopped) {
222
+ this.isStopped = true;
223
+ if (this.destination.error) {
224
+ try {
225
+ this.destination.error(err);
226
+ } catch (error) {
227
+ throw error;
228
+ }
229
+ } else {
230
+ throw err;
231
+ }
232
+ this.unsubscribe();
233
+ }
234
+ }
235
+ /**
236
+ * Sends a complete notification to the observer.
237
+ */
238
+ complete() {
239
+ if (!this.isStopped) {
240
+ this.isStopped = true;
241
+ if (this.destination.complete) {
242
+ try {
243
+ this.destination.complete();
244
+ } catch (error) {
245
+ this.error(error);
246
+ return;
247
+ }
248
+ }
249
+ this.unsubscribe();
250
+ }
251
+ }
252
+ /**
253
+ * Unsubscribes the subscriber.
254
+ */
255
+ unsubscribe() {
256
+ if (this.closed) {
257
+ return;
258
+ }
259
+ this.isStopped = true;
260
+ super.unsubscribe();
261
+ }
262
+ };
263
+ var SafeSubscriber = class extends Subscriber {
264
+ constructor(observerOrNext, error, complete, parentSubscriber) {
265
+ super(observerOrNext, error, complete);
266
+ /** @private */
267
+ this._isUnsubscribing = false;
268
+ /** @private */
269
+ this._parentSubscriber = null;
270
+ this._parentSubscriber = parentSubscriber || null;
271
+ }
272
+ next(value) {
273
+ if (!this.isStopped && !this._isUnsubscribing) {
274
+ try {
275
+ super.next(value);
276
+ } catch (error) {
277
+ this.error(error);
278
+ }
279
+ }
280
+ }
281
+ error(err) {
282
+ if (!this.isStopped && !this._isUnsubscribing) {
283
+ this._isUnsubscribing = true;
284
+ try {
285
+ super.error(err);
286
+ } finally {
287
+ this._isUnsubscribing = false;
288
+ }
289
+ }
290
+ }
291
+ complete() {
292
+ if (!this.isStopped && !this._isUnsubscribing) {
293
+ this._isUnsubscribing = true;
294
+ try {
295
+ super.complete();
296
+ } finally {
297
+ this._isUnsubscribing = false;
298
+ }
299
+ }
300
+ }
301
+ unsubscribe() {
302
+ if (this.closed) {
303
+ return;
304
+ }
305
+ this._isUnsubscribing = true;
306
+ super.unsubscribe();
307
+ this._isUnsubscribing = false;
308
+ }
309
+ };
310
+ var Observable = class extends Subscription {
311
+ /**
312
+ * Creates a new Observable.
313
+ */
314
+ constructor(subscribe) {
315
+ super();
316
+ if (subscribe) {
317
+ this._subscribe = subscribe;
318
+ } else {
319
+ throw new TypeError("Observable constructor requires a subscribe function");
320
+ }
321
+ }
322
+ subscribe(observerOrNext, error, complete) {
323
+ let subscriber;
324
+ if (observerOrNext instanceof Subscriber) {
325
+ subscriber = observerOrNext;
326
+ } else {
327
+ subscriber = new SafeSubscriber(observerOrNext, error, complete);
328
+ }
329
+ const { _subscribe } = this;
330
+ try {
331
+ const result = _subscribe.call(this, subscriber);
332
+ if (result) {
333
+ if (typeof result === "function") {
334
+ subscriber.add(result);
335
+ } else if (typeof result.unsubscribe === "function") {
336
+ subscriber.add(result);
337
+ }
338
+ }
339
+ } catch (err) {
340
+ subscriber.error(err);
341
+ }
342
+ return subscriber;
343
+ }
344
+ pipe(...operations) {
345
+ if (operations.length === 0) {
346
+ return this;
347
+ }
348
+ return operations.reduce(
349
+ (prev, fn) => fn(prev),
350
+ this
351
+ );
352
+ }
353
+ /**
354
+ * Converts the Observable to a Promise.
355
+ * The Promise resolves with the last emitted value when the Observable completes,
356
+ * or rejects if the Observable errors.
357
+ *
358
+ * @example
359
+ * // Convert Observable to Promise
360
+ * const value = await of(1, 2, 3).toPromise();
361
+ * console.log(value); // 3
362
+ *
363
+ * @example
364
+ * // Handle empty Observable
365
+ * const value = await EMPTY.toPromise();
366
+ * console.log(value); // undefined
367
+ */
368
+ toPromise() {
369
+ return new Promise((resolve, reject) => {
370
+ let lastValue;
371
+ this.subscribe({
372
+ next: (value) => lastValue = value,
373
+ error: reject,
374
+ complete: () => resolve(lastValue)
375
+ });
376
+ });
377
+ }
378
+ };
379
+
380
+ // src/lib/subject.ts
381
+ var Subject = class extends Observable {
382
+ constructor() {
383
+ super((subscriber) => {
384
+ if (this.closed) {
385
+ throw new Error("Subject has been closed");
386
+ } else if (this.hasError) {
387
+ subscriber.error(this.thrownError);
388
+ } else if (this.isStopped) {
389
+ subscriber.complete();
390
+ } else {
391
+ this.observers.push(subscriber);
392
+ return () => {
393
+ const index = this.observers.indexOf(subscriber);
394
+ if (index !== -1) {
395
+ this.observers.splice(index, 1);
396
+ }
397
+ };
398
+ }
399
+ return void 0;
400
+ });
401
+ this.observers = [];
402
+ // override closed = false;
403
+ this.isStopped = false;
404
+ this.hasError = false;
405
+ this.thrownError = null;
406
+ }
407
+ next(value) {
408
+ if (this.isStopped) return;
409
+ const { observers } = this;
410
+ const len = observers.length;
411
+ const copy = observers.slice();
412
+ for (let i = 0; i < len; i++) {
413
+ copy[i].next?.(value);
414
+ }
415
+ }
416
+ error(err) {
417
+ if (this.isStopped) return;
418
+ this.hasError = true;
419
+ this.thrownError = err;
420
+ this.isStopped = true;
421
+ const { observers } = this;
422
+ this.observers = [];
423
+ const len = observers.length;
424
+ const copy = observers.slice();
425
+ for (let i = 0; i < len; i++) {
426
+ copy[i].error?.(err);
427
+ }
428
+ }
429
+ complete() {
430
+ if (this.isStopped) return;
431
+ this.isStopped = true;
432
+ const { observers } = this;
433
+ this.observers = [];
434
+ const len = observers.length;
435
+ const copy = observers.slice();
436
+ for (let i = 0; i < len; i++) {
437
+ copy[i].complete?.();
438
+ }
439
+ }
440
+ unsubscribe() {
441
+ this.isStopped = true;
442
+ this.observers = [];
443
+ }
444
+ asObservable() {
445
+ const observable = new Observable((subscriber) => {
446
+ return this.subscribe(subscriber);
447
+ });
448
+ return observable;
449
+ }
450
+ };
@@ -76,94 +76,6 @@ export class Subject extends Observable {
76
76
  return observable;
77
77
  }
78
78
  }
79
- // export class BehaviorSubject<T> extends Subject<T> {
80
- // constructor(private _value: T) {
81
- // super();
82
- // }
83
- // get value(): T {
84
- // return this.getValue();
85
- // }
86
- // getValue(): T {
87
- // if (this.hasError) {
88
- // throw this.thrownError;
89
- // } else if (this.closed) {
90
- // throw new Error('BehaviorSubject has been closed');
91
- // } else {
92
- // return this._value;
93
- // }
94
- // }
95
- // override next(value: T): void {
96
- // super.next((this._value = value));
97
- // }
98
- // subscribe(subscriber: Partial<Observer<T>>): Subscription {
99
- // const subscription = super.subscribe(subscriber);
100
- // if (subscription && !subscription.closed) {
101
- // subscriber.next?.(this._value);
102
- // }
103
- // return subscription;
104
- // }
105
- // }
106
- // export class ReplaySubject<T> extends Subject<T> {
107
- // private _buffer: T[] = [];
108
- // private _bufferSize: number;
109
- // private _windowTime: number;
110
- // constructor(
111
- // bufferSize: number = Infinity,
112
- // windowTime: number = Infinity
113
- // ) {
114
- // super();
115
- // this._bufferSize = bufferSize < 1 ? 1 : bufferSize;
116
- // this._windowTime = windowTime < 1 ? 1 : windowTime;
117
- // }
118
- // next(value: T): void {
119
- // const now = Date.now();
120
- // this._buffer.push(value);
121
- // this._trimBuffer(now);
122
- // super.next(value);
123
- // }
124
- // private _trimBuffer(now: number): void {
125
- // if (this._bufferSize < this._buffer.length) {
126
- // this._buffer.splice(0, this._buffer.length - this._bufferSize);
127
- // }
128
- // if (this._windowTime < Infinity) {
129
- // // Simple implementation
130
- // while (this._buffer.length > this._bufferSize) {
131
- // this._buffer.shift();
132
- // }
133
- // }
134
- // }
135
- // subscribe(subscriber: Partial<Observer<T>>): Subscription {
136
- // const subscription = super.subscribe(subscriber);
137
- // if (subscription && !subscription.closed) {
138
- // const copy = this._buffer.slice();
139
- // for (let i = 0; i < copy.length; i++) {
140
- // subscriber.next?.(copy[i]);
141
- // }
142
- // }
143
- // return subscription;
144
- // }
145
- // }
146
- // export class AsyncSubject<T> extends Subject<T> {
147
- // private lastValue: T | null = null;
148
- // private hasNext = false;
149
- // next(value: T): void {
150
- // if (!this.isStopped) {
151
- // this.lastValue = value;
152
- // this.hasNext = true;
153
- // }
154
- // }
155
- // error(error: any): void {
156
- // if (!this.isStopped) {
157
- // super.error(error);
158
- // }
159
- // }
160
- // complete(): void {
161
- // if (!this.isStopped) {
162
- // this.isStopped = true;
163
- // if (this.hasNext) {
164
- // super.next(this.lastValue!);
165
- // }
166
- // super.complete();
167
- // }
168
- // }
169
- // }
79
+ // BehaviorSubject, ReplaySubject and AsyncSubject are not implemented. Nothing in
80
+ // the framework needs them, and a Subject plus a signal covers what they are usually
81
+ // reached for. They were sketched here once; git has that if it is ever wanted.