@kithinji/orca 1.0.22 → 1.0.24

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.
@@ -933,7 +933,16 @@ var StreamRenderer = class {
933
933
  }
934
934
  }
935
935
  const instance = componentInjector.resolve(ComponentClass);
936
- instance.props = vnode.props || {};
936
+ const mergedProps = Object.create(Object.getPrototypeOf(instance.props));
937
+ Object.defineProperties(
938
+ mergedProps,
939
+ Object.getOwnPropertyDescriptors(instance.props)
940
+ );
941
+ Object.defineProperties(
942
+ mergedProps,
943
+ Object.getOwnPropertyDescriptors(vnode.props || {})
944
+ );
945
+ instance.props = mergedProps;
937
946
  const childVNode = instance.build();
938
947
  if (childVNode instanceof Promise) {
939
948
  return this.createPendingReference(vnode, childVNode, componentInjector);
@@ -1759,6 +1768,13 @@ var Subject = class extends Observable {
1759
1768
  this.subscribers = /* @__PURE__ */ new Set();
1760
1769
  this._isCompleted = false;
1761
1770
  this._hasError = false;
1771
+ this._thrownError = null;
1772
+ }
1773
+ asObservable() {
1774
+ return new Observable((observer) => {
1775
+ const subscription = this.subscribe(observer);
1776
+ return () => subscription.unsubscribe();
1777
+ });
1762
1778
  }
1763
1779
  subscribe(observerOrNext, error, complete) {
1764
1780
  if (this._isCompleted) {
@@ -1795,16 +1811,10 @@ var Subject = class extends Observable {
1795
1811
  error(err) {
1796
1812
  if (this._isCompleted || this._hasError) return;
1797
1813
  this._hasError = true;
1798
- const currentSubscribers = Array.from(this.subscribers);
1799
- currentSubscribers.forEach((observer) => {
1800
- if (observer.error) {
1801
- try {
1802
- observer.error(err);
1803
- } catch (e) {
1804
- console.error("Error in error handler:", e);
1805
- }
1806
- }
1807
- });
1814
+ this._thrownError = err;
1815
+ for (const observer of this.subscribers) {
1816
+ observer.error?.(err);
1817
+ }
1808
1818
  this.subscribers.clear();
1809
1819
  }
1810
1820
  complete() {
@@ -1833,22 +1843,23 @@ var BehaviorSubject = class extends Subject {
1833
1843
  get $value() {
1834
1844
  return this._value;
1835
1845
  }
1836
- setValue(value) {
1837
- this._value = value;
1838
- }
1839
1846
  next(value) {
1840
1847
  this._value = value;
1841
1848
  super.next(value);
1842
1849
  }
1843
1850
  subscribe(observerOrNext, error, complete) {
1844
1851
  const observer = typeof observerOrNext === "function" ? { next: observerOrNext, error, complete } : observerOrNext;
1845
- try {
1846
- observer.next(this._value);
1847
- } catch (err) {
1848
- if (observer.error) {
1849
- observer.error(err);
1850
- }
1852
+ if (this._hasError) {
1853
+ observer.error?.(this._thrownError);
1854
+ return { unsubscribe: () => {
1855
+ } };
1851
1856
  }
1857
+ if (this._isCompleted) {
1858
+ observer.complete?.();
1859
+ return { unsubscribe: () => {
1860
+ } };
1861
+ }
1862
+ observer.next(this._value);
1852
1863
  return super.subscribe(observer);
1853
1864
  }
1854
1865
  };
@@ -1858,6 +1869,8 @@ var OrcaComponent = class {
1858
1869
  constructor() {
1859
1870
  this.__cleanup = [];
1860
1871
  }
1872
+ onInit() {
1873
+ }
1861
1874
  onDestroy() {
1862
1875
  this.__cleanup.forEach((cb) => cb());
1863
1876
  }