rx-tiny-flux 1.0.33 → 1.0.34

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.
package/Readme.md CHANGED
@@ -194,10 +194,6 @@ counterSubscription.unsubscribe();
194
194
 
195
195
  For developers using the `ZML` library on the ZeppOS platform, `rx-tiny-flux` offers an optional plugin that seamlessly integrates the store with the `BaseApp` and `BasePage` component lifecycle.
196
196
 
197
- **Disclaimer:** This library is currently intended to run inside ZeppOS. It uses ZeppOS-only modules (like `@zos/fs` and `@zos/ble/TransferFile`) for large action transfers, so bundlers outside the ZeppOS environment may warn about unresolved dependencies.
198
-
199
- **Promise:** A future release will provide a ZeppOS-safe optional build (lazy-loading the `@zos/*` modules) so non-ZeppOS environments can consume the library without these warnings.
200
-
201
197
  This plugin injects `dispatch` and `subscribe` methods into your component's instance. Most importantly, the `subscribe` method is lifecycle-aware: it automatically tracks all subscriptions and unsubscribes from them when the component's `onDestroy` hook is called, preventing common memory leaks.
202
198
 
203
199
  #### How to Use
@@ -352,8 +348,6 @@ const showSuccessToastEffect = createEffect(actions$ => actions$.pipe(
352
348
 
353
349
  ```
354
350
 
355
- For large payloads that exceed the `messaging.call` limits, use `propagateLargeAction()` instead of `propagateAction()`. It persists the action on disk, transfers it using the TransferFile API, and dispatches it on the other side. Ensure the `storePlugin` is registered on both the App and Side Service contexts so the receiver can read and dispatch the file.
356
-
357
351
  #### Accessing State within Effects using `withLatestFromStore`
358
352
 
359
353
  A common requirement for effects is to access the current state to make decisions. For example, an effect might need the current user's ID to fetch data. The `withLatestFromStore` operator is designed for this purpose, especially in ZeppOS where the `store` instance isn't readily available when defining effects.
@@ -2494,6 +2494,11 @@ const getTransferState = (context) => {
2494
2494
  return null;
2495
2495
  }
2496
2496
 
2497
+ if (typeof transferFile.getInbox !== 'function' || typeof transferFile.getOutbox !== 'function') {
2498
+ logError(context, '[rx-tiny-flux] TransferFile is missing inbox/outbox accessors.');
2499
+ return null;
2500
+ }
2501
+
2497
2502
  const state = {
2498
2503
  transferFile,
2499
2504
  inbox: transferFile.getInbox(),
@@ -2501,6 +2506,10 @@ const getTransferState = (context) => {
2501
2506
  inboxListenerAttached: false,
2502
2507
  expectedFiles: new Set(),
2503
2508
  };
2509
+ logDebug(
2510
+ context,
2511
+ `[rx-tiny-flux] TransferFile initialized. inbox=${Boolean(state.inbox)} outbox=${Boolean(state.outbox)}`
2512
+ );
2504
2513
  context[TRANSFER_STATE_KEY] = state;
2505
2514
  return state;
2506
2515
  } catch (error) {
@@ -2679,21 +2688,29 @@ const handleLargeActionMessage = (context, message) => {
2679
2688
  }
2680
2689
  }
2681
2690
 
2682
- logDebug(context, '[rx-tiny-flux] Received large action header message.');
2691
+ logDebug(
2692
+ context,
2693
+ `[rx-tiny-flux] Received large action header message. transferId=${payload.transferId || 'unknown'} fileName=${payload.fileName || 'unknown'} actionType=${payload.actionType || 'unknown'}`
2694
+ );
2683
2695
  return true;
2684
2696
  };
2685
2697
 
2686
2698
  const setupLargeActionReceiver = (context) => {
2687
2699
  const state = getTransferState(context);
2688
2700
  if (!state || state.inboxListenerAttached) {
2701
+ if (!state) {
2702
+ logDebug(context, '[rx-tiny-flux] Skipping large action receiver setup: no TransferFile state.');
2703
+ }
2689
2704
  return;
2690
2705
  }
2691
2706
 
2692
2707
  state.inboxListenerAttached = true;
2708
+ logDebug(context, '[rx-tiny-flux] Large action receiver attached to inbox.');
2693
2709
 
2694
2710
  state.inbox.on('NEWFILE', () => {
2695
2711
  const fileObject = state.inbox.getNextFile();
2696
2712
  if (!fileObject) {
2713
+ logDebug(context, '[rx-tiny-flux] Inbox NEWFILE fired but no file object was returned.');
2697
2714
  return;
2698
2715
  }
2699
2716
 
@@ -2703,11 +2720,17 @@ const setupLargeActionReceiver = (context) => {
2703
2720
  const isExpected = filePath && state.expectedFiles.has(filePath);
2704
2721
  const isLargeAction = Boolean(metaPayload) || isExpected;
2705
2722
 
2723
+ logDebug(
2724
+ context,
2725
+ `[rx-tiny-flux] Inbox NEWFILE received. filePath=${filePath || 'unknown'} expected=${Boolean(isExpected)} hasMeta=${Boolean(metaPayload)}`
2726
+ );
2727
+
2706
2728
  if (filePath && isExpected) {
2707
2729
  state.expectedFiles.delete(filePath);
2708
2730
  }
2709
2731
 
2710
2732
  if (!isLargeAction) {
2733
+ logDebug(context, '[rx-tiny-flux] Ignoring inbox file: not a large action.');
2711
2734
  return;
2712
2735
  }
2713
2736
 
@@ -2728,6 +2751,7 @@ const setupLargeActionReceiver = (context) => {
2728
2751
  if (typeof fileObject.on === 'function') {
2729
2752
  fileObject.on('change', (event) => {
2730
2753
  const readyState = event && event.data && event.data.readyState;
2754
+ logDebug(context, `[rx-tiny-flux] Inbox file change event. readyState=${readyState || 'unknown'}`);
2731
2755
  if (readyState === 'transferred') {
2732
2756
  handleTransferred();
2733
2757
  } else if (readyState === 'error') {
@@ -2737,6 +2761,7 @@ const setupLargeActionReceiver = (context) => {
2737
2761
  }
2738
2762
 
2739
2763
  if (fileObject.readyState === 'transferred') {
2764
+ logDebug(context, '[rx-tiny-flux] Inbox file already transferred.');
2740
2765
  handleTransferred();
2741
2766
  }
2742
2767
  });
@@ -2752,6 +2777,7 @@ const enqueueLargeActionTransfer = (action, context) => {
2752
2777
  return false;
2753
2778
  }
2754
2779
 
2780
+ logDebug(context, `[rx-tiny-flux] Enqueueing large action transfer. type=${action && action.type ? action.type : 'unknown'}`);
2755
2781
  const transferId = createTransferId();
2756
2782
  const fileName = buildFileName(transferId);
2757
2783
  const payload = {
@@ -2768,12 +2794,16 @@ const enqueueLargeActionTransfer = (action, context) => {
2768
2794
  }
2769
2795
 
2770
2796
  if (typeof context.call === 'function') {
2797
+ logDebug(context, `[rx-tiny-flux] Sending large action header via messaging.call. transferId=${transferId}`);
2771
2798
  context.call({ [LARGE_ACTION_MESSAGE_KEY]: payload });
2799
+ } else {
2800
+ logDebug(context, '[rx-tiny-flux] messaging.call is not available for large action header.');
2772
2801
  }
2773
2802
 
2774
2803
  let fileObject;
2775
2804
  try {
2776
2805
  fileObject = state.outbox.enqueueFile(fileName, { [LARGE_ACTION_MESSAGE_KEY]: payload });
2806
+ logDebug(context, `[rx-tiny-flux] Enqueued file for transfer. fileName=${fileName}`);
2777
2807
  } catch (error) {
2778
2808
  logError(context, '[rx-tiny-flux] Failed to enqueue file for transfer.', error);
2779
2809
  removeFile(context, fileName);
@@ -2783,6 +2813,7 @@ const enqueueLargeActionTransfer = (action, context) => {
2783
2813
  if (fileObject && typeof fileObject.on === 'function') {
2784
2814
  fileObject.on('change', (event) => {
2785
2815
  const readyState = event && event.data && event.data.readyState;
2816
+ logDebug(context, `[rx-tiny-flux] Outbox file change event. readyState=${readyState || 'unknown'}`);
2786
2817
  if (readyState === 'transferred' || readyState === 'error') {
2787
2818
  removeFile(context, fileName);
2788
2819
  }
@@ -1 +1 @@
1
- var t=function(n,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var e in n)Object.prototype.hasOwnProperty.call(n,e)&&(t[e]=n[e])},t(n,e)};function n(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=n}t(n,e),n.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}function e(t,n,e,r){return new(e||(e=Promise))(function(o,i){function u(t){try{c(r.next(t))}catch(t){i(t)}}function s(t){try{c(r.throw(t))}catch(t){i(t)}}function c(t){var n;t.done?o(t.value):(n=t.value,n instanceof e?n:new e(function(t){t(n)})).then(u,s)}c((r=r.apply(t,n||[])).next())})}function r(t,n){var e,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return u.next=s(0),u.throw=s(1),u.return=s(2),"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function s(s){return function(c){return function(s){if(e)throw new TypeError("Generator is already executing.");for(;u&&(u=0,s[0]&&(i=0)),i;)try{if(e=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=n.call(t,i)}catch(t){s=[6,t],r=0}finally{e=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function o(t){var n="function"==typeof Symbol&&Symbol.iterator,e=n&&t[n],r=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function i(t,n){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var r,o,i=e.call(t),u=[];try{for(;(void 0===n||n-- >0)&&!(r=i.next()).done;)u.push(r.value)}catch(t){o={error:t}}finally{try{r&&!r.done&&(e=i.return)&&e.call(i)}finally{if(o)throw o.error}}return u}function u(t,n,e){if(e||2===arguments.length)for(var r,o=0,i=n.length;o<i;o++)!r&&o in n||(r||(r=Array.prototype.slice.call(n,0,o)),r[o]=n[o]);return t.concat(r||Array.prototype.slice.call(n))}function s(t){return this instanceof s?(this.v=t,this):new s(t)}function c(t,n,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,o=e.apply(t,n||[]),i=[];return r=Object.create(("function"==typeof AsyncIterator?AsyncIterator:Object).prototype),u("next"),u("throw"),u("return",function(t){return function(n){return Promise.resolve(n).then(t,l)}}),r[Symbol.asyncIterator]=function(){return this},r;function u(t,n){o[t]&&(r[t]=function(n){return new Promise(function(e,r){i.push([t,n,e,r])>1||c(t,n)})},n&&(r[t]=n(r[t])))}function c(t,n){try{(e=o[t](n)).value instanceof s?Promise.resolve(e.value.v).then(a,l):f(i[0][2],e)}catch(t){f(i[0][3],t)}var e}function a(t){c("next",t)}function l(t){c("throw",t)}function f(t,n){t(n),i.shift(),i.length&&c(i[0][0],i[0][1])}}function a(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,e=t[Symbol.asyncIterator];return e?e.call(t):(t=o(t),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(e){n[e]=t[e]&&function(n){return new Promise(function(r,o){(function(t,n,e,r){Promise.resolve(r).then(function(n){t({value:n,done:e})},n)})(r,o,(n=t[e](n)).done,n.value)})}}}function l(t){return"function"==typeof t}function f(t){var n=t(function(t){Error.call(t),t.stack=(new Error).stack});return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}"function"==typeof SuppressedError&&SuppressedError;var h=f(function(t){return function(n){t(this),this.message=n?n.length+" errors occurred during unsubscription:\n"+n.map(function(t,n){return n+1+") "+t.toString()}).join("\n "):"",this.name="UnsubscriptionError",this.errors=n}});function p(t,n){if(t){var e=t.indexOf(n);0<=e&&t.splice(e,1)}}var d=function(){function t(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}var n;return t.prototype.unsubscribe=function(){var t,n,e,r,s;if(!this.closed){this.closed=!0;var c=this._parentage;if(c)if(this._parentage=null,Array.isArray(c))try{for(var a=o(c),f=a.next();!f.done;f=a.next()){f.value.remove(this)}}catch(n){t={error:n}}finally{try{f&&!f.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}else c.remove(this);var p=this.initialTeardown;if(l(p))try{p()}catch(t){s=t instanceof h?t.errors:[t]}var d=this._finalizers;if(d){this._finalizers=null;try{for(var b=o(d),y=b.next();!y.done;y=b.next()){var g=y.value;try{v(g)}catch(t){s=null!=s?s:[],t instanceof h?s=u(u([],i(s)),i(t.errors)):s.push(t)}}}catch(t){e={error:t}}finally{try{y&&!y.done&&(r=b.return)&&r.call(b)}finally{if(e)throw e.error}}}if(s)throw new h(s)}},t.prototype.add=function(n){var e;if(n&&n!==this)if(this.closed)v(n);else{if(n instanceof t){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(e=this._finalizers)&&void 0!==e?e:[]).push(n)}},t.prototype._hasParent=function(t){var n=this._parentage;return n===t||Array.isArray(n)&&n.includes(t)},t.prototype._addParent=function(t){var n=this._parentage;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t},t.prototype._removeParent=function(t){var n=this._parentage;n===t?this._parentage=null:Array.isArray(n)&&p(n,t)},t.prototype.remove=function(n){var e=this._finalizers;e&&p(e,n),n instanceof t&&n._removeParent(this)},t.EMPTY=((n=new t).closed=!0,n),t}(),b=d.EMPTY;function y(t){return t instanceof d||t&&"closed"in t&&l(t.remove)&&l(t.add)&&l(t.unsubscribe)}function v(t){l(t)?t():t.unsubscribe()}var g={Promise:void 0},x=function(t,n){for(var e=[],r=2;r<arguments.length;r++)e[r-2]=arguments[r];return setTimeout.apply(void 0,u([t,n],i(e)))};function m(t){x(function(){throw t})}function w(){}function _(t){t()}var S=function(t){function e(n){var e=t.call(this)||this;return e.isStopped=!1,n?(e.destination=n,y(n)&&n.add(e)):e.destination=O,e}return n(e,t),e.create=function(t,n,e){return new E(t,n,e)},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e}(d),A=function(){function t(t){this.partialObserver=t}return t.prototype.next=function(t){var n=this.partialObserver;if(n.next)try{n.next(t)}catch(t){F(t)}},t.prototype.error=function(t){var n=this.partialObserver;if(n.error)try{n.error(t)}catch(t){F(t)}else F(t)},t.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(t){F(t)}},t}(),E=function(t){function e(n,e,r){var o,i=t.call(this)||this;return o=l(n)||!n?{next:null!=n?n:void 0,error:null!=e?e:void 0,complete:null!=r?r:void 0}:n,i.destination=new A(o),i}return n(e,t),e}(S);function F(t){m(t)}var O={closed:!0,next:w,error:function(t){throw t},complete:w},T="function"==typeof Symbol&&Symbol.observable||"@@observable";function P(t){return t}function I(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return $(t)}function $(t){return 0===t.length?P:1===t.length?t[0]:function(n){return t.reduce(function(t,n){return n(t)},n)}}var C=function(){function t(t){t&&(this._subscribe=t)}return t.prototype.lift=function(n){var e=new t;return e.source=this,e.operator=n,e},t.prototype.subscribe=function(t,n,e){var r,o=this,i=(r=t)&&r instanceof S||function(t){return t&&l(t.next)&&l(t.error)&&l(t.complete)}(r)&&y(r)?t:new E(t,n,e);return _(function(){var t=o,n=t.operator,e=t.source;i.add(n?n.call(i,e):e?o._subscribe(i):o._trySubscribe(i))}),i},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(n){t.error(n)}},t.prototype.forEach=function(t,n){var e=this;return new(n=z(n))(function(n,r){var o=new E({next:function(n){try{t(n)}catch(t){r(t),o.unsubscribe()}},error:r,complete:n});e.subscribe(o)})},t.prototype._subscribe=function(t){var n;return null===(n=this.source)||void 0===n?void 0:n.subscribe(t)},t.prototype[T]=function(){return this},t.prototype.pipe=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return $(t)(this)},t.prototype.toPromise=function(t){var n=this;return new(t=z(t))(function(t,e){var r;n.subscribe(function(t){return r=t},function(t){return e(t)},function(){return t(r)})})},t.create=function(n){return new t(n)},t}();function z(t){var n;return null!==(n=null!=t?t:g.Promise)&&void 0!==n?n:Promise}function j(t){return function(n){if(function(t){return l(null==t?void 0:t.lift)}(n))return n.lift(function(n){try{return t(n,this)}catch(t){this.error(t)}});throw new TypeError("Unable to lift unknown Observable type")}}function k(t,n,e,r,o){return new N(t,n,e,r,o)}var N=function(t){function e(n,e,r,o,i,u){var s=t.call(this,n)||this;return s.onFinalize=i,s.shouldUnsubscribe=u,s._next=e?function(t){try{e(t)}catch(t){n.error(t)}}:t.prototype._next,s._error=o?function(t){try{o(t)}catch(t){n.error(t)}finally{this.unsubscribe()}}:t.prototype._error,s._complete=r?function(){try{r()}catch(t){n.error(t)}finally{this.unsubscribe()}}:t.prototype._complete,s}return n(e,t),e.prototype.unsubscribe=function(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var e=this.closed;t.prototype.unsubscribe.call(this),!e&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}},e}(S),D=f(function(t){return function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),R=function(t){function e(){var n=t.call(this)||this;return n.closed=!1,n.currentObservers=null,n.observers=[],n.isStopped=!1,n.hasError=!1,n.thrownError=null,n}return n(e,t),e.prototype.lift=function(t){var n=new B(this,this);return n.operator=t,n},e.prototype._throwIfClosed=function(){if(this.closed)throw new D},e.prototype.next=function(t){var n=this;_(function(){var e,r;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var i=o(n.currentObservers),u=i.next();!u.done;u=i.next()){u.value.next(t)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}}})},e.prototype.error=function(t){var n=this;_(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=t;for(var e=n.observers;e.length;)e.shift().error(t)}})},e.prototype.complete=function(){var t=this;_(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var n=t.observers;n.length;)n.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(n){return this._throwIfClosed(),t.prototype._trySubscribe.call(this,n)},e.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},e.prototype._innerSubscribe=function(t){var n=this,e=this,r=e.hasError,o=e.isStopped,i=e.observers;return r||o?b:(this.currentObservers=null,i.push(t),new d(function(){n.currentObservers=null,p(i,t)}))},e.prototype._checkFinalizedStatuses=function(t){var n=this,e=n.hasError,r=n.thrownError,o=n.isStopped;e?t.error(r):o&&t.complete()},e.prototype.asObservable=function(){var t=new C;return t.source=this,t},e.create=function(t,n){return new B(t,n)},e}(C),B=function(t){function e(n,e){var r=t.call(this)||this;return r.destination=n,r.source=e,r}return n(e,t),e.prototype.next=function(t){var n,e;null===(e=null===(n=this.destination)||void 0===n?void 0:n.next)||void 0===e||e.call(n,t)},e.prototype.error=function(t){var n,e;null===(e=null===(n=this.destination)||void 0===n?void 0:n.error)||void 0===e||e.call(n,t)},e.prototype.complete=function(){var t,n;null===(n=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===n||n.call(t)},e.prototype._subscribe=function(t){var n,e;return null!==(e=null===(n=this.source)||void 0===n?void 0:n.subscribe(t))&&void 0!==e?e:b},e}(R),M=function(t){function e(n){var e=t.call(this)||this;return e._value=n,e}return n(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(n){var e=t.prototype._subscribe.call(this,n);return!e.closed&&n.next(this._value),e},e.prototype.getValue=function(){var t=this,n=t.hasError,e=t.thrownError,r=t._value;if(n)throw e;return this._throwIfClosed(),r},e.prototype.next=function(n){t.prototype.next.call(this,this._value=n)},e}(R),L={now:function(){return(L.delegate||Date).now()},delegate:void 0},U=function(t){function e(n,e,r){void 0===n&&(n=1/0),void 0===e&&(e=1/0),void 0===r&&(r=L);var o=t.call(this)||this;return o._bufferSize=n,o._windowTime=e,o._timestampProvider=r,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=e===1/0,o._bufferSize=Math.max(1,n),o._windowTime=Math.max(1,e),o}return n(e,t),e.prototype.next=function(n){var e=this,r=e.isStopped,o=e._buffer,i=e._infiniteTimeWindow,u=e._timestampProvider,s=e._windowTime;r||(o.push(n),!i&&o.push(u.now()+s)),this._trimBuffer(),t.prototype.next.call(this,n)},e.prototype._subscribe=function(t){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(t),e=this._infiniteTimeWindow,r=this._buffer.slice(),o=0;o<r.length&&!t.closed;o+=e?1:2)t.next(r[o]);return this._checkFinalizedStatuses(t),n},e.prototype._trimBuffer=function(){var t=this,n=t._bufferSize,e=t._timestampProvider,r=t._buffer,o=t._infiniteTimeWindow,i=(o?1:2)*n;if(n<1/0&&i<r.length&&r.splice(0,r.length-i),!o){for(var u=e.now(),s=0,c=1;c<r.length&&r[c]<=u;c+=2)s=c;s&&r.splice(0,s+1)}},e}(R),q=function(t){function e(n,e){return t.call(this)||this}return n(e,t),e.prototype.schedule=function(t,n){return this},e}(d),W=function(t,n){for(var e=[],r=2;r<arguments.length;r++)e[r-2]=arguments[r];return setInterval.apply(void 0,u([t,n],i(e)))},V=function(t){return clearInterval(t)},J=function(t){function e(n,e){var r=t.call(this,n,e)||this;return r.scheduler=n,r.work=e,r.pending=!1,r}return n(e,t),e.prototype.schedule=function(t,n){var e;if(void 0===n&&(n=0),this.closed)return this;this.state=t;var r=this.id,o=this.scheduler;return null!=r&&(this.id=this.recycleAsyncId(o,r,n)),this.pending=!0,this.delay=n,this.id=null!==(e=this.id)&&void 0!==e?e:this.requestAsyncId(o,this.id,n),this},e.prototype.requestAsyncId=function(t,n,e){return void 0===e&&(e=0),W(t.flush.bind(t,this),e)},e.prototype.recycleAsyncId=function(t,n,e){if(void 0===e&&(e=0),null!=e&&this.delay===e&&!1===this.pending)return n;null!=n&&V(n)},e.prototype.execute=function(t,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var e=this._execute(t,n);if(e)return e;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(t,n){var e,r=!1;try{this.work(t)}catch(t){r=!0,e=t||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),e},e.prototype.unsubscribe=function(){if(!this.closed){var n=this.id,e=this.scheduler,r=e.actions;this.work=this.state=this.scheduler=null,this.pending=!1,p(r,this),null!=n&&(this.id=this.recycleAsyncId(e,n,null)),this.delay=null,t.prototype.unsubscribe.call(this)}},e}(q),Y=function(){function t(n,e){void 0===e&&(e=t.now),this.schedulerActionCtor=n,this.now=e}return t.prototype.schedule=function(t,n,e){return void 0===n&&(n=0),new this.schedulerActionCtor(this,t).schedule(e,n)},t.now=L.now,t}(),Q=new(function(t){function e(n,e){void 0===e&&(e=Y.now);var r=t.call(this,n,e)||this;return r.actions=[],r._active=!1,r}return n(e,t),e.prototype.flush=function(t){var n=this.actions;if(this._active)n.push(t);else{var e;this._active=!0;do{if(e=t.execute(t.state,t.delay))break}while(t=n.shift());if(this._active=!1,e){for(;t=n.shift();)t.unsubscribe();throw e}}},e}(Y))(J),Z=Q,G=new C(function(t){return t.complete()});function K(t){return t&&l(t.schedule)}function H(t){return t[t.length-1]}function X(t){return K(H(t))?t.pop():void 0}var tt=function(t){return t&&"number"==typeof t.length&&"function"!=typeof t};function nt(t){return l(null==t?void 0:t.then)}function et(t){return l(t[T])}function rt(t){return Symbol.asyncIterator&&l(null==t?void 0:t[Symbol.asyncIterator])}function ot(t){return new TypeError("You provided "+(null!==t&&"object"==typeof t?"an invalid object":"'"+t+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}var it="function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator";function ut(t){return l(null==t?void 0:t[it])}function st(t){return c(this,arguments,function(){var n,e,o;return r(this,function(r){switch(r.label){case 0:n=t.getReader(),r.label=1;case 1:r.trys.push([1,,9,10]),r.label=2;case 2:return[4,s(n.read())];case 3:return e=r.sent(),o=e.value,e.done?[4,s(void 0)]:[3,5];case 4:return[2,r.sent()];case 5:return[4,s(o)];case 6:return[4,r.sent()];case 7:return r.sent(),[3,2];case 8:return[3,10];case 9:return n.releaseLock(),[7];case 10:return[2]}})})}function ct(t){return l(null==t?void 0:t.getReader)}function at(t){if(t instanceof C)return t;if(null!=t){if(et(t))return i=t,new C(function(t){var n=i[T]();if(l(n.subscribe))return n.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")});if(tt(t))return r=t,new C(function(t){for(var n=0;n<r.length&&!t.closed;n++)t.next(r[n]);t.complete()});if(nt(t))return e=t,new C(function(t){e.then(function(n){t.closed||(t.next(n),t.complete())},function(n){return t.error(n)}).then(null,m)});if(rt(t))return lt(t);if(ut(t))return n=t,new C(function(t){var e,r;try{for(var i=o(n),u=i.next();!u.done;u=i.next()){var s=u.value;if(t.next(s),t.closed)return}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}t.complete()});if(ct(t))return lt(st(t))}var n,e,r,i;throw ot(t)}function lt(t){return new C(function(n){(function(t,n){var o,i,u,s;return e(this,void 0,void 0,function(){var e,c;return r(this,function(r){switch(r.label){case 0:r.trys.push([0,5,6,11]),o=a(t),r.label=1;case 1:return[4,o.next()];case 2:if((i=r.sent()).done)return[3,4];if(e=i.value,n.next(e),n.closed)return[2];r.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return c=r.sent(),u={error:c},[3,11];case 6:return r.trys.push([6,,9,10]),i&&!i.done&&(s=o.return)?[4,s.call(o)]:[3,8];case 7:r.sent(),r.label=8;case 8:return[3,10];case 9:if(u)throw u.error;return[7];case 10:return[7];case 11:return n.complete(),[2]}})})})(t,n).catch(function(t){return n.error(t)})})}function ft(t,n,e,r,o){void 0===r&&(r=0),void 0===o&&(o=!1);var i=n.schedule(function(){e(),o?t.add(this.schedule(null,r)):this.unsubscribe()},r);if(t.add(i),!o)return i}function ht(t,n){return void 0===n&&(n=0),j(function(e,r){e.subscribe(k(r,function(e){return ft(r,t,function(){return r.next(e)},n)},function(){return ft(r,t,function(){return r.complete()},n)},function(e){return ft(r,t,function(){return r.error(e)},n)}))})}function pt(t,n){return void 0===n&&(n=0),j(function(e,r){r.add(t.schedule(function(){return e.subscribe(r)},n))})}function dt(t,n){if(!t)throw new Error("Iterable cannot be null");return new C(function(e){ft(e,n,function(){var r=t[Symbol.asyncIterator]();ft(e,n,function(){r.next().then(function(t){t.done?e.complete():e.next(t.value)})},0,!0)})})}function bt(t,n){if(null!=t){if(et(t))return function(t,n){return at(t).pipe(pt(n),ht(n))}(t,n);if(tt(t))return function(t,n){return new C(function(e){var r=0;return n.schedule(function(){r===t.length?e.complete():(e.next(t[r++]),e.closed||this.schedule())})})}(t,n);if(nt(t))return function(t,n){return at(t).pipe(pt(n),ht(n))}(t,n);if(rt(t))return dt(t,n);if(ut(t))return function(t,n){return new C(function(e){var r;return ft(e,n,function(){r=t[it](),ft(e,n,function(){var t,n,o;try{n=(t=r.next()).value,o=t.done}catch(t){return void e.error(t)}o?e.complete():e.next(n)},0,!0)}),function(){return l(null==r?void 0:r.return)&&r.return()}})}(t,n);if(ct(t))return function(t,n){return dt(st(t),n)}(t,n)}throw ot(t)}function yt(t,n){return n?bt(t,n):at(t)}function vt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return yt(t,X(t))}function gt(t,n){return j(function(e,r){var o=0;e.subscribe(k(r,function(e){r.next(t.call(n,e,o++))}))})}function xt(t,n,e){return void 0===e&&(e=1/0),l(n)?xt(function(e,r){return gt(function(t,o){return n(e,t,r,o)})(at(t(e,r)))},e):("number"==typeof n&&(e=n),j(function(n,r){return function(t,n,e,r,o,i,u){var s=[],c=0,a=0,l=!1,f=function(){!l||s.length||c||n.complete()},h=function(t){c++;var o=!1;at(e(t,a++)).subscribe(k(n,function(t){n.next(t)},function(){o=!0},void 0,function(){if(o)try{c--;for(var t=function(){var t=s.shift();u||h(t)};s.length&&c<r;)t();f()}catch(t){n.error(t)}}))};return t.subscribe(k(n,function(t){return c<r?h(t):s.push(t)},function(){l=!0,f()})),function(){}}(n,r,t,e)}))}function mt(){return xt(P,1)}function wt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return mt()(yt(t,X(t)))}function _t(t){return new C(function(n){at(t()).subscribe(n)})}function St(t,n,e){void 0===t&&(t=0),void 0===e&&(e=Z);var r=-1;return null!=n&&(K(n)?e=n:r=n),new C(function(n){var o,i=(o=t)instanceof Date&&!isNaN(o)?+t-e.now():t;i<0&&(i=0);var u=0;return e.schedule(function(){n.closed||(n.next(u++),0<=r?this.schedule(void 0,r):n.complete())},i)})}function At(t,n){return j(function(e,r){var o=0;e.subscribe(k(r,function(e){return t.call(n,e,o++)&&r.next(e)}))})}function Et(t,n){return j(function(e,r){var i=[];at(t).subscribe(k(r,function(t){var e=[];i.push(e);var o=new d;o.add(at(n(t)).subscribe(k(r,function(){p(i,e),r.next(e),o.unsubscribe()},w)))},w)),e.subscribe(k(r,function(t){var n,e;try{for(var r=o(i),u=r.next();!u.done;u=r.next()){u.value.push(t)}}catch(t){n={error:t}}finally{try{u&&!u.done&&(e=r.return)&&e.call(r)}finally{if(n)throw n.error}}},function(){for(;i.length>0;)r.next(i.shift());r.complete()}))})}function Ft(t){return j(function(n,e){var r,o=null,i=!1;o=n.subscribe(k(e,void 0,void 0,function(u){r=at(t(u,Ft(t)(n))),o?(o.unsubscribe(),o=null,r.subscribe(e)):i=!0})),i&&(o.unsubscribe(),o=null,r.subscribe(e))})}function Ot(t,n){return l(n)?xt(t,n,1):xt(t,1)}function Tt(t,n){return void 0===n&&(n=Q),j(function(e,r){var o=null,i=null,u=null,s=function(){if(o){o.unsubscribe(),o=null;var t=i;i=null,r.next(t)}};function c(){var e=u+t,i=n.now();if(i<e)return o=this.schedule(void 0,e-i),void r.add(o);s()}e.subscribe(k(r,function(e){i=e,u=n.now(),o||(o=n.schedule(c,t),r.add(o))},function(){s(),r.complete()},void 0,function(){i=o=null}))})}function Pt(t){return t<=0?function(){return G}:j(function(n,e){var r=0;n.subscribe(k(e,function(n){++r<=t&&(e.next(n),t<=r&&e.complete())}))})}function It(t,n){return xt(function(n,e){return at(t(n,e)).pipe(Pt(1),function(t){return gt(function(){return t})}(n))})}function $t(t,n){void 0===n&&(n=Q);var e=St(t,n);return It(function(){return e})}function Ct(t,n){return t===n}function zt(t,n){return n?function(e){return e.pipe(zt(function(e,r){return at(t(e,r)).pipe(gt(function(t,o){return n(e,t,r,o)}))}))}:j(function(n,e){var r=0,o=null,i=!1;n.subscribe(k(e,function(n){o||(o=k(e,void 0,function(){o=null,i&&e.complete()}),at(t(n,r++)).subscribe(o))},function(){i=!0,!o&&e.complete()}))})}function jt(t,n){return j(function(t,n,e,r,o){return function(r,i){var u=e,s=n,c=0;r.subscribe(k(i,function(n){var e=c++;s=u?t(s,n,e):(u=!0,n),i.next(s)},o))}}(t,n,arguments.length>=2))}function kt(t,n){for(var e=[],r=2;r<arguments.length;r++)e[r-2]=arguments[r];if(!0!==n){if(!1!==n){var o=new E({next:function(){o.unsubscribe(),t()}});return at(n.apply(void 0,u([],i(e)))).subscribe(o)}}else t()}function Nt(t,n,e){var r;return r=t,function(t){void 0===t&&(t={});var n=t.connector,e=void 0===n?function(){return new R}:n,r=t.resetOnError,o=void 0===r||r,i=t.resetOnComplete,u=void 0===i||i,s=t.resetOnRefCountZero,c=void 0===s||s;return function(t){var n,r,i,s=0,a=!1,l=!1,f=function(){null==r||r.unsubscribe(),r=void 0},h=function(){f(),n=i=void 0,a=l=!1},p=function(){var t=n;h(),null==t||t.unsubscribe()};return j(function(t,d){s++,l||a||f();var b=i=null!=i?i:e();d.add(function(){0!==--s||l||a||(r=kt(p,c))}),b.subscribe(d),!n&&s>0&&(n=new E({next:function(t){return b.next(t)},error:function(t){l=!0,f(),r=kt(h,o,t),b.error(t)},complete:function(){a=!0,f(),r=kt(h,u),b.complete()}}),at(t).subscribe(n))})(t)}}({connector:function(){return new U(r,n,e)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:!1})}function Dt(t,n){return j(function(e,r){var o=null,i=0,u=!1,s=function(){return u&&!o&&r.complete()};e.subscribe(k(r,function(e){null==o||o.unsubscribe();var u=0,c=i++;at(t(e,c)).subscribe(o=k(r,function(t){return r.next(n?n(e,t,c,u++):t)},function(){o=null,s()}))},function(){u=!0,s()}))})}function Rt(t,n,e){var r=l(t)||n||e?{next:t,error:n,complete:e}:t;return r?j(function(t,n){var e;null===(e=r.subscribe)||void 0===e||e.call(r);var o=!0;t.subscribe(k(n,function(t){var e;null===(e=r.next)||void 0===e||e.call(r,t),n.next(t)},function(){var t;o=!1,null===(t=r.complete)||void 0===t||t.call(r),n.complete()},function(t){var e;o=!1,null===(e=r.error)||void 0===e||e.call(r,t),n.error(t)},function(){var t,n;o&&(null===(t=r.unsubscribe)||void 0===t||t.call(r)),null===(n=r.finalize)||void 0===n||n.call(r)}))}):P}function Bt(t,n,e){void 0===n&&(n=Q);var r=St(t,n);return function(t,n){return j(function(e,r){var o=null!=n?n:{},i=o.leading,u=void 0===i||i,s=o.trailing,c=void 0!==s&&s,a=!1,l=null,f=null,h=!1,p=function(){null==f||f.unsubscribe(),f=null,c&&(y(),h&&r.complete())},d=function(){f=null,h&&r.complete()},b=function(n){return f=at(t(n)).subscribe(k(r,p,d))},y=function(){if(a){a=!1;var t=l;l=null,r.next(t),!h&&b(t)}};e.subscribe(k(r,function(t){a=!0,l=t,(!f||f.closed)&&(u?y():b(t))},function(){h=!0,(!(c&&a&&f)||f.closed)&&r.complete()}))})}(function(){return r},e)}function Mt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var e,r=l(H(e=t))?e.pop():void 0;return j(function(n,e){for(var o=t.length,s=new Array(o),c=t.map(function(){return!1}),a=!1,l=function(n){at(t[n]).subscribe(k(e,function(t){s[n]=t,a||c[n]||(c[n]=!0,(a=c.every(P))&&(c=null))},w))},f=0;f<o;f++)l(f);n.subscribe(k(e,function(t){if(a){var n=u([t],i(s));e.next(r?r.apply(void 0,u([],i(n))):n)}}))})}class Lt{_state$;_actions$=new R;get actions$(){return this._actions$.asObservable()}_reducers=[];_context=null;constructor(t={}){const n="function"==typeof structuredClone?structuredClone(t):JSON.parse(JSON.stringify(t));this._state$=new M(n);const e=this._actions$.pipe(jt((t,n)=>{let e={...t},r=!1;return this._reducers.forEach(({path:o,reducerFn:i})=>{const u=t[o],s=i(u,n);u!==s&&(e[o]=s,r=!0)}),r?e:t},n),function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var e=X(t);return j(function(n,r){(e?wt(t,n,e):wt(t,n)).subscribe(r)})}(t),Nt(1));e.subscribe(this._state$)}registerReducers(...t){this._reducers.push(...t);const n={...this._state$.getValue()};let e=!1;t.forEach(({path:t,initialState:r})=>{void 0===n[t]&&(n[t]=r,e=!0)}),e&&this._state$.next(n)}setContext(t){this._context=t}registerEffects(...t){t.forEach(t=>{const n=t._rxEffect||{dispatch:!0};let e=t(this._actions$);n.dispatch?e.pipe(gt(t=>this._context&&!t.context?{...t,context:this._context}:t)).subscribe(t=>this.dispatch(t)):e.subscribe()})}dispatch(t){this._actions$.next(t)}select(t){return this._state$.pipe(gt(n=>t(n)),(void 0===e&&(e=P),n=null!=n?n:Ct,j(function(t,r){var o,i=!0;t.subscribe(k(r,function(t){var u=e(t);!i&&n(o,u)||(i=!1,o=u,r.next(t))}))})));var n,e}}function Ut(t){const n=n=>({type:t,...n});return n.type=t,n}function qt(){}function Wt(...t){const n=t.pop(),e=t,r=e.includes(qt);if(r&&e.length>1)throw new Error("The `anyAction` token cannot be mixed with other action creators in a single `on` handler.");return{types:e.map(t=>t.type),reducerFn:n,isCatchAll:r}}function Vt(t,n,...e){if(!t||"string"!=typeof t)throw new Error("Reducer featureKey must be a non-empty string.");const r=e.filter(t=>!t.isCatchAll),o=e.find(t=>t.isCatchAll);return{path:t,initialState:n,reducerFn:(t=n,e)=>{for(const n of r)if(n.types.includes(e.type))return n.reducerFn(t,e);return o?o.reducerFn(t,e):t}}}function Jt(...t){const n=t.map(t=>t.type);return At(t=>n.includes(t.type))}function Yt(t,n={dispatch:!0}){if("function"!=typeof t)throw new Error("Effect must be a function.");return Object.defineProperty(t,"_rxEffect",{value:{dispatch:!1!==n.dispatch},enumerable:!1}),t}function Qt(t,n){return e=>{const r=e[t];return n?n(r):r}}function Zt(...t){const n=t.pop(),e=t;let r,o,i=!1;return t=>{const u=e.map(n=>n(t));return i&&function(t,n){if(!n||t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==n[e])return!1;return!0}(u,o)||(o=u,r=n(...u),i=!0),r}}const Gt="__rxTinyFluxLargeAction",Kt="_rxTinyFluxTransferState";let Ht,Xt;const tn=t=>{const n="function"==typeof __$$RQR$$__?__$$RQR$$__:"function"==typeof require?require:null;if(!n)return null;try{return n(t)}catch(t){return null}},nn=()=>{if(void 0!==Ht)return Ht;const t="undefined"!=typeof messaging;if(t&&"undefined"!=typeof transferFile&&"function"==typeof transferFile.getInbox)return Ht=transferFile,Ht;if(t&&"undefined"!=typeof globalThis&&globalThis.transferFile&&"function"==typeof globalThis.transferFile.getInbox)return Ht=globalThis.transferFile,Ht;if(!t){const t=tn("@zos/ble/TransferFile"),n=t&&(t.default||t.TransferFile||t);if(n)return Ht=new n,Ht}return Ht=null,Ht},en=()=>void 0!==Xt?Xt:"undefined"!=typeof globalThis&&globalThis.fs?(Xt=globalThis.fs,Xt):(Xt=tn("@zos/fs")||null,Xt),rn=(t,n)=>{t&&"function"==typeof t.debug?t.debug(n):"undefined"!=typeof console&&"function"==typeof console.debug&&console.debug(n)},on=(t,n,e)=>{"undefined"!=typeof console&&"function"==typeof console.error?console.error(n,e):"undefined"!=typeof console&&"function"==typeof console.log&&console.log(n,e)},un=t=>{if(!t)return null;if(t[Kt])return t[Kt];try{const n=nn();if(!n)return on(0,"[rx-tiny-flux] TransferFile is not available."),null;const e={transferFile:n,inbox:n.getInbox(),outbox:n.getOutbox(),inboxListenerAttached:!1,expectedFiles:new Set};return t[Kt]=e,e}catch(t){return on(0,"[rx-tiny-flux] Failed to initialize TransferFile.",t),null}},sn=(t,n)=>{const e=en();if(!e||"function"!=typeof e.readFileSync)throw new Error("[rx-tiny-flux] readFileSync is not available in @zos/fs.");const r=(t=>{if("string"==typeof t)return t;if(!t)return"";if("undefined"!=typeof TextDecoder)try{return new TextDecoder("utf-8").decode(t)}catch(t){rn(null,`[rx-tiny-flux] TextDecoder failed: ${t?.message||t}`)}let n=t;t instanceof ArrayBuffer?n=new Uint8Array(t):ArrayBuffer.isView(t)&&(n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength));let e="";for(let t=0;t<n.length;t+=1)e+=String.fromCharCode(n[t]);return e})(e.readFileSync(n));return JSON.parse(r)},cn=(t,n)=>{if(!n)return;const e=en();if(e)try{"function"==typeof e.unlinkSync?e.unlinkSync(n):"function"==typeof e.rmSync?e.rmSync(n):"function"==typeof e.removeSync&&e.removeSync(n)}catch(e){rn(t,`[rx-tiny-flux] Failed to remove file ${n}.`)}},an=(t,n)=>{if(!n)return!1;const e=n[Gt]||(n.type===Gt?n:null);if(!e)return!1;const r=un(t);if(r){const t=e.fileName||n.fileName;t&&r.expectedFiles.add(t)}return rn(t,"[rx-tiny-flux] Received large action header message."),!0},ln=t=>{const n=un(t);n&&!n.inboxListenerAttached&&(n.inboxListenerAttached=!0,n.inbox.on("NEWFILE",()=>{const e=n.inbox.getNextFile();if(!e)return;const r=(t=>t?t.meta?t.meta:t.metadata?t.metadata:t.metaData?t.metaData:"function"==typeof t.getMetaData?t.getMetaData():"function"==typeof t.getMetadata?t.getMetadata():null:null)(e),o=r&&r[Gt],i=((t,n)=>t?t.filePath?t.filePath:t.path?t.path:t.fullPath?t.fullPath:t.fileName?t.fileName:"function"==typeof t.getFilePath?t.getFilePath():n:n)(e,o&&o.fileName),u=i&&n.expectedFiles.has(i),s=Boolean(o)||u;if(i&&u&&n.expectedFiles.delete(i),!s)return;const c=()=>{i?((t,n)=>{try{const e=sn(0,n);e&&"string"==typeof e.type?"function"==typeof t.dispatch?t.dispatch(e):on(0,"[rx-tiny-flux] Dispatch is not available for large action."):rn(t,"[rx-tiny-flux] Ignored large action without a valid type.")}catch(t){on(0,`[rx-tiny-flux] Failed to read large action from ${n}.`,t)}finally{cn(t,n)}})(t,i):on(0,"[rx-tiny-flux] Incoming large action has no file path.")};"function"==typeof e.on&&e.on("change",n=>{const e=n&&n.data&&n.data.readyState;"transferred"===e?c():"error"===e&&i&&cn(t,i)}),"transferred"===e.readyState&&c()}))},fn=(t,n)=>{if(!n)return!1;const e=un(n);if(!e)return!1;const r=`${Date.now()}-${Math.random().toString(16).slice(2)}`,o=(t=>`data://rx-tiny-flux-action-${t}.json`)(r),i={transferId:r,fileName:o,actionType:t&&t.type};try{((t,n,e)=>{const r=en();if(!r||"function"!=typeof r.writeFileSync)throw new Error("[rx-tiny-flux] writeFileSync is not available in @zos/fs.");r.writeFileSync(n,JSON.stringify(e)),rn(t,`[rx-tiny-flux] Stored large action at ${n}.`)})(n,o,t)}catch(t){return on(0,"[rx-tiny-flux] Failed to store large action on disk.",t),!1}let u;"function"==typeof n.call&&n.call({[Gt]:i});try{u=e.outbox.enqueueFile(o,{[Gt]:i})}catch(t){return on(0,"[rx-tiny-flux] Failed to enqueue file for transfer.",t),cn(n,o),!1}return u&&"function"==typeof u.on&&u.on("change",t=>{const e=t&&t.data&&t.data.readyState;"transferred"!==e&&"error"!==e||cn(n,o)}),!0};function hn(t,n){return{onCreate(){n?(n.setContext(this),this.debug("Attach the store and a dispatch method to the App instance."),this._store=n,this.dispatch=t=>{setTimeout(()=>{const n={...t,context:this};this._store.dispatch(n)},50)},this.onAction=t=>{an(this,t)||(t&&"string"==typeof t.type?(this.debug(`Dispatching action ${t.type} from App.onAction.`),this.dispatch(t)):this.debug("Not an Action, discarding the message on App.onAction."))},this.messaging.onCall(this.onAction),ln(this),this.subscribe=(t,...n)=>{this._subscriptions||(this._subscriptions=[]);const e=n.pop(),r=n,o=this._store.select(t),i=(r.length>0?o.pipe(...r):o).subscribe(e);return this._subscriptions.push(i),i}):console.error("[rx-tiny-flux] StorePlugin Error: A store instance must be provided to `BaseApp.use(storePlugin, store)`.")},onInit(){let t;const e="undefined"!=typeof messaging;if(e)n?(n.setContext(this),t=n,this.onAction=t=>{an(this,t)||(t&&"string"==typeof t.type?(this.debug(`Dispatching action ${t.type} from SideService.onAction.`),this.dispatch(t)):this.debug("Not an Action, discarding the message on SideService.onAction."))}):console.error("[rx-tiny-flux] StorePlugin Error: A store instance must be provided to `BaseSideService.use(storePlugin, store)`.");else{const n=getApp();n&&n._store?t=n._store:console.error("[rx-tiny-flux] Store not found on global App object. Ensure the plugin is registered on BaseApp."),this.onAction=()=>{}}if(!t)return this.onAction=()=>console.error("[rx-tiny-flux] OnAction failed: store not initialized."),this.messaging.onCall(this.onAction),this.dispatch=()=>console.error("[rx-tiny-flux] Dispatch failed: store not initialized."),void(this.subscribe=()=>console.error("[rx-tiny-flux] Subscribe failed: store not initialized."));this._store=t,this.messaging.onCall(this.onAction),this.debug(`Attaching store methods to the ${e?"SideService":"Page"} instance.`),this.dispatch=t=>{setTimeout(()=>{const n={...t,context:this};this._store.dispatch(n)},50)},e&&ln(this),this.subscribe=(t,...n)=>{this._subscriptions||(this._subscriptions=[]);const e=n.pop(),r=n,o=this._store.select(t),i=(r.length>0?o.pipe(...r):o).subscribe(e);return this._subscriptions.push(i),i},e||(this.listen=(t,n)=>{const e=(Array.isArray(t)?t:[t]).map(t=>"function"==typeof t?t.type:t);if(e.some(t=>"string"!=typeof t))throw new Error("[rx-tiny-flux] listen: actionTypes must be strings or action creators with a `type` property.");this._subscriptions||(this._subscriptions=[]);const r=this._store.actions$.pipe(At(t=>e.includes(t.type))).subscribe(n);this._subscriptions.push(r)})},onDestroy(){this.messaging.offOnCall(this.onAction),this._subscriptions&&this._subscriptions.length>0&&(this._subscriptions.forEach(t=>t.unsubscribe()),this._subscriptions=[])}}}const pn=(...t)=>n=>n.pipe(Rt(t=>{if(!t.context||!t.context._store||!t.context._store._state$)throw new Error("[rx-tiny-flux] `withLatestFromStore` could not find a valid store on `action.context._store`. Ensure the `storePlugin` is correctly configured.")}),gt(n=>{const e=n.context._store._state$.getValue();return[n,...t.map(t=>t(e))]})),dn=()=>At(()=>"undefined"!=typeof messaging),bn=()=>At(()=>"undefined"==typeof messaging),yn=()=>Rt(t=>{if(t.context&&"function"==typeof t.context.call){t.context.debug(`Propagation action '${t.type}' through messaging.call(action).`);const{context:n,...e}=t;t.context.call(e)}else console.debug(`No context: Action '${t.type}' not propagated through messaging.call(action).`)}),vn=()=>Rt(t=>{if(t.context&&"function"==typeof t.context.call){t.context.debug(`Propagation large action '${t.type}' through TransferFile.`);const{context:n,...e}=t;fn(e,t.context)}else console.debug(`No context: Action '${t.type}' not propagated through TransferFile.`)});export{G as EMPTY,C as Observable,Lt as Store,qt as anyAction,Et as bufferToggle,Ft as catchError,Ot as concatMap,Ut as createAction,Yt as createEffect,Qt as createFeatureSelector,Vt as createReducer,Zt as createSelector,Tt as debounceTime,_t as defer,$t as delay,zt as exhaustMap,At as filter,yt as from,bn as isApp,dn as isSideService,gt as map,xt as mergeMap,vt as of,Jt as ofType,Wt as on,I as pipe,yn as propagateAction,vn as propagateLargeAction,jt as scan,hn as storePlugin,Dt as switchMap,Pt as take,Rt as tap,Bt as throttleTime,St as timer,Mt as withLatestFrom,pn as withLatestFromStore};
1
+ var t=function(n,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var e in n)Object.prototype.hasOwnProperty.call(n,e)&&(t[e]=n[e])},t(n,e)};function n(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=n}t(n,e),n.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}function e(t,n,e,r){return new(e||(e=Promise))(function(i,o){function u(t){try{c(r.next(t))}catch(t){o(t)}}function s(t){try{c(r.throw(t))}catch(t){o(t)}}function c(t){var n;t.done?i(t.value):(n=t.value,n instanceof e?n:new e(function(t){t(n)})).then(u,s)}c((r=r.apply(t,n||[])).next())})}function r(t,n){var e,r,i,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return u.next=s(0),u.throw=s(1),u.return=s(2),"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function s(s){return function(c){return function(s){if(e)throw new TypeError("Generator is already executing.");for(;u&&(u=0,s[0]&&(o=0)),o;)try{if(e=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,r=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=n.call(t,o)}catch(t){s=[6,t],r=0}finally{e=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function i(t){var n="function"==typeof Symbol&&Symbol.iterator,e=n&&t[n],r=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function o(t,n){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var r,i,o=e.call(t),u=[];try{for(;(void 0===n||n-- >0)&&!(r=o.next()).done;)u.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(e=o.return)&&e.call(o)}finally{if(i)throw i.error}}return u}function u(t,n,e){if(e||2===arguments.length)for(var r,i=0,o=n.length;i<o;i++)!r&&i in n||(r||(r=Array.prototype.slice.call(n,0,i)),r[i]=n[i]);return t.concat(r||Array.prototype.slice.call(n))}function s(t){return this instanceof s?(this.v=t,this):new s(t)}function c(t,n,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,i=e.apply(t,n||[]),o=[];return r=Object.create(("function"==typeof AsyncIterator?AsyncIterator:Object).prototype),u("next"),u("throw"),u("return",function(t){return function(n){return Promise.resolve(n).then(t,l)}}),r[Symbol.asyncIterator]=function(){return this},r;function u(t,n){i[t]&&(r[t]=function(n){return new Promise(function(e,r){o.push([t,n,e,r])>1||c(t,n)})},n&&(r[t]=n(r[t])))}function c(t,n){try{(e=i[t](n)).value instanceof s?Promise.resolve(e.value.v).then(a,l):f(o[0][2],e)}catch(t){f(o[0][3],t)}var e}function a(t){c("next",t)}function l(t){c("throw",t)}function f(t,n){t(n),o.shift(),o.length&&c(o[0][0],o[0][1])}}function a(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,e=t[Symbol.asyncIterator];return e?e.call(t):(t=i(t),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(e){n[e]=t[e]&&function(n){return new Promise(function(r,i){(function(t,n,e,r){Promise.resolve(r).then(function(n){t({value:n,done:e})},n)})(r,i,(n=t[e](n)).done,n.value)})}}}function l(t){return"function"==typeof t}function f(t){var n=t(function(t){Error.call(t),t.stack=(new Error).stack});return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}"function"==typeof SuppressedError&&SuppressedError;var h=f(function(t){return function(n){t(this),this.message=n?n.length+" errors occurred during unsubscription:\n"+n.map(function(t,n){return n+1+") "+t.toString()}).join("\n "):"",this.name="UnsubscriptionError",this.errors=n}});function p(t,n){if(t){var e=t.indexOf(n);0<=e&&t.splice(e,1)}}var d=function(){function t(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}var n;return t.prototype.unsubscribe=function(){var t,n,e,r,s;if(!this.closed){this.closed=!0;var c=this._parentage;if(c)if(this._parentage=null,Array.isArray(c))try{for(var a=i(c),f=a.next();!f.done;f=a.next()){f.value.remove(this)}}catch(n){t={error:n}}finally{try{f&&!f.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}else c.remove(this);var p=this.initialTeardown;if(l(p))try{p()}catch(t){s=t instanceof h?t.errors:[t]}var d=this._finalizers;if(d){this._finalizers=null;try{for(var y=i(d),b=y.next();!b.done;b=y.next()){var x=b.value;try{v(x)}catch(t){s=null!=s?s:[],t instanceof h?s=u(u([],o(s)),o(t.errors)):s.push(t)}}}catch(t){e={error:t}}finally{try{b&&!b.done&&(r=y.return)&&r.call(y)}finally{if(e)throw e.error}}}if(s)throw new h(s)}},t.prototype.add=function(n){var e;if(n&&n!==this)if(this.closed)v(n);else{if(n instanceof t){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(e=this._finalizers)&&void 0!==e?e:[]).push(n)}},t.prototype._hasParent=function(t){var n=this._parentage;return n===t||Array.isArray(n)&&n.includes(t)},t.prototype._addParent=function(t){var n=this._parentage;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t},t.prototype._removeParent=function(t){var n=this._parentage;n===t?this._parentage=null:Array.isArray(n)&&p(n,t)},t.prototype.remove=function(n){var e=this._finalizers;e&&p(e,n),n instanceof t&&n._removeParent(this)},t.EMPTY=((n=new t).closed=!0,n),t}(),y=d.EMPTY;function b(t){return t instanceof d||t&&"closed"in t&&l(t.remove)&&l(t.add)&&l(t.unsubscribe)}function v(t){l(t)?t():t.unsubscribe()}var x={Promise:void 0},g=function(t,n){for(var e=[],r=2;r<arguments.length;r++)e[r-2]=arguments[r];return setTimeout.apply(void 0,u([t,n],o(e)))};function m(t){g(function(){throw t})}function w(){}function _(t){t()}var S=function(t){function e(n){var e=t.call(this)||this;return e.isStopped=!1,n?(e.destination=n,b(n)&&n.add(e)):e.destination=F,e}return n(e,t),e.create=function(t,n,e){return new E(t,n,e)},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e}(d),A=function(){function t(t){this.partialObserver=t}return t.prototype.next=function(t){var n=this.partialObserver;if(n.next)try{n.next(t)}catch(t){I(t)}},t.prototype.error=function(t){var n=this.partialObserver;if(n.error)try{n.error(t)}catch(t){I(t)}else I(t)},t.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(t){I(t)}},t}(),E=function(t){function e(n,e,r){var i,o=t.call(this)||this;return i=l(n)||!n?{next:null!=n?n:void 0,error:null!=e?e:void 0,complete:null!=r?r:void 0}:n,o.destination=new A(i),o}return n(e,t),e}(S);function I(t){m(t)}var F={closed:!0,next:w,error:function(t){throw t},complete:w},T="function"==typeof Symbol&&Symbol.observable||"@@observable";function $(t){return t}function O(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return P(t)}function P(t){return 0===t.length?$:1===t.length?t[0]:function(n){return t.reduce(function(t,n){return n(t)},n)}}var C=function(){function t(t){t&&(this._subscribe=t)}return t.prototype.lift=function(n){var e=new t;return e.source=this,e.operator=n,e},t.prototype.subscribe=function(t,n,e){var r,i=this,o=(r=t)&&r instanceof S||function(t){return t&&l(t.next)&&l(t.error)&&l(t.complete)}(r)&&b(r)?t:new E(t,n,e);return _(function(){var t=i,n=t.operator,e=t.source;o.add(n?n.call(o,e):e?i._subscribe(o):i._trySubscribe(o))}),o},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(n){t.error(n)}},t.prototype.forEach=function(t,n){var e=this;return new(n=k(n))(function(n,r){var i=new E({next:function(n){try{t(n)}catch(t){r(t),i.unsubscribe()}},error:r,complete:n});e.subscribe(i)})},t.prototype._subscribe=function(t){var n;return null===(n=this.source)||void 0===n?void 0:n.subscribe(t)},t.prototype[T]=function(){return this},t.prototype.pipe=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return P(t)(this)},t.prototype.toPromise=function(t){var n=this;return new(t=k(t))(function(t,e){var r;n.subscribe(function(t){return r=t},function(t){return e(t)},function(){return t(r)})})},t.create=function(n){return new t(n)},t}();function k(t){var n;return null!==(n=null!=t?t:x.Promise)&&void 0!==n?n:Promise}function z(t){return function(n){if(function(t){return l(null==t?void 0:t.lift)}(n))return n.lift(function(n){try{return t(n,this)}catch(t){this.error(t)}});throw new TypeError("Unable to lift unknown Observable type")}}function N(t,n,e,r,i){return new j(t,n,e,r,i)}var j=function(t){function e(n,e,r,i,o,u){var s=t.call(this,n)||this;return s.onFinalize=o,s.shouldUnsubscribe=u,s._next=e?function(t){try{e(t)}catch(t){n.error(t)}}:t.prototype._next,s._error=i?function(t){try{i(t)}catch(t){n.error(t)}finally{this.unsubscribe()}}:t.prototype._error,s._complete=r?function(){try{r()}catch(t){n.error(t)}finally{this.unsubscribe()}}:t.prototype._complete,s}return n(e,t),e.prototype.unsubscribe=function(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var e=this.closed;t.prototype.unsubscribe.call(this),!e&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}},e}(S),D=f(function(t){return function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),B=function(t){function e(){var n=t.call(this)||this;return n.closed=!1,n.currentObservers=null,n.observers=[],n.isStopped=!1,n.hasError=!1,n.thrownError=null,n}return n(e,t),e.prototype.lift=function(t){var n=new R(this,this);return n.operator=t,n},e.prototype._throwIfClosed=function(){if(this.closed)throw new D},e.prototype.next=function(t){var n=this;_(function(){var e,r;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var o=i(n.currentObservers),u=o.next();!u.done;u=o.next()){u.value.next(t)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}}})},e.prototype.error=function(t){var n=this;_(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=t;for(var e=n.observers;e.length;)e.shift().error(t)}})},e.prototype.complete=function(){var t=this;_(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var n=t.observers;n.length;)n.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(n){return this._throwIfClosed(),t.prototype._trySubscribe.call(this,n)},e.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},e.prototype._innerSubscribe=function(t){var n=this,e=this,r=e.hasError,i=e.isStopped,o=e.observers;return r||i?y:(this.currentObservers=null,o.push(t),new d(function(){n.currentObservers=null,p(o,t)}))},e.prototype._checkFinalizedStatuses=function(t){var n=this,e=n.hasError,r=n.thrownError,i=n.isStopped;e?t.error(r):i&&t.complete()},e.prototype.asObservable=function(){var t=new C;return t.source=this,t},e.create=function(t,n){return new R(t,n)},e}(C),R=function(t){function e(n,e){var r=t.call(this)||this;return r.destination=n,r.source=e,r}return n(e,t),e.prototype.next=function(t){var n,e;null===(e=null===(n=this.destination)||void 0===n?void 0:n.next)||void 0===e||e.call(n,t)},e.prototype.error=function(t){var n,e;null===(e=null===(n=this.destination)||void 0===n?void 0:n.error)||void 0===e||e.call(n,t)},e.prototype.complete=function(){var t,n;null===(n=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===n||n.call(t)},e.prototype._subscribe=function(t){var n,e;return null!==(e=null===(n=this.source)||void 0===n?void 0:n.subscribe(t))&&void 0!==e?e:y},e}(B),L=function(t){function e(n){var e=t.call(this)||this;return e._value=n,e}return n(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(n){var e=t.prototype._subscribe.call(this,n);return!e.closed&&n.next(this._value),e},e.prototype.getValue=function(){var t=this,n=t.hasError,e=t.thrownError,r=t._value;if(n)throw e;return this._throwIfClosed(),r},e.prototype.next=function(n){t.prototype.next.call(this,this._value=n)},e}(B),M={now:function(){return(M.delegate||Date).now()},delegate:void 0},q=function(t){function e(n,e,r){void 0===n&&(n=1/0),void 0===e&&(e=1/0),void 0===r&&(r=M);var i=t.call(this)||this;return i._bufferSize=n,i._windowTime=e,i._timestampProvider=r,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=e===1/0,i._bufferSize=Math.max(1,n),i._windowTime=Math.max(1,e),i}return n(e,t),e.prototype.next=function(n){var e=this,r=e.isStopped,i=e._buffer,o=e._infiniteTimeWindow,u=e._timestampProvider,s=e._windowTime;r||(i.push(n),!o&&i.push(u.now()+s)),this._trimBuffer(),t.prototype.next.call(this,n)},e.prototype._subscribe=function(t){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(t),e=this._infiniteTimeWindow,r=this._buffer.slice(),i=0;i<r.length&&!t.closed;i+=e?1:2)t.next(r[i]);return this._checkFinalizedStatuses(t),n},e.prototype._trimBuffer=function(){var t=this,n=t._bufferSize,e=t._timestampProvider,r=t._buffer,i=t._infiniteTimeWindow,o=(i?1:2)*n;if(n<1/0&&o<r.length&&r.splice(0,r.length-o),!i){for(var u=e.now(),s=0,c=1;c<r.length&&r[c]<=u;c+=2)s=c;s&&r.splice(0,s+1)}},e}(B),U=function(t){function e(n,e){return t.call(this)||this}return n(e,t),e.prototype.schedule=function(t,n){return this},e}(d),W=function(t,n){for(var e=[],r=2;r<arguments.length;r++)e[r-2]=arguments[r];return setInterval.apply(void 0,u([t,n],o(e)))},V=function(t){return clearInterval(t)},J=function(t){function e(n,e){var r=t.call(this,n,e)||this;return r.scheduler=n,r.work=e,r.pending=!1,r}return n(e,t),e.prototype.schedule=function(t,n){var e;if(void 0===n&&(n=0),this.closed)return this;this.state=t;var r=this.id,i=this.scheduler;return null!=r&&(this.id=this.recycleAsyncId(i,r,n)),this.pending=!0,this.delay=n,this.id=null!==(e=this.id)&&void 0!==e?e:this.requestAsyncId(i,this.id,n),this},e.prototype.requestAsyncId=function(t,n,e){return void 0===e&&(e=0),W(t.flush.bind(t,this),e)},e.prototype.recycleAsyncId=function(t,n,e){if(void 0===e&&(e=0),null!=e&&this.delay===e&&!1===this.pending)return n;null!=n&&V(n)},e.prototype.execute=function(t,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var e=this._execute(t,n);if(e)return e;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(t,n){var e,r=!1;try{this.work(t)}catch(t){r=!0,e=t||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),e},e.prototype.unsubscribe=function(){if(!this.closed){var n=this.id,e=this.scheduler,r=e.actions;this.work=this.state=this.scheduler=null,this.pending=!1,p(r,this),null!=n&&(this.id=this.recycleAsyncId(e,n,null)),this.delay=null,t.prototype.unsubscribe.call(this)}},e}(U),Y=function(){function t(n,e){void 0===e&&(e=t.now),this.schedulerActionCtor=n,this.now=e}return t.prototype.schedule=function(t,n,e){return void 0===n&&(n=0),new this.schedulerActionCtor(this,t).schedule(e,n)},t.now=M.now,t}(),Q=new(function(t){function e(n,e){void 0===e&&(e=Y.now);var r=t.call(this,n,e)||this;return r.actions=[],r._active=!1,r}return n(e,t),e.prototype.flush=function(t){var n=this.actions;if(this._active)n.push(t);else{var e;this._active=!0;do{if(e=t.execute(t.state,t.delay))break}while(t=n.shift());if(this._active=!1,e){for(;t=n.shift();)t.unsubscribe();throw e}}},e}(Y))(J),Z=Q,G=new C(function(t){return t.complete()});function K(t){return t&&l(t.schedule)}function H(t){return t[t.length-1]}function X(t){return K(H(t))?t.pop():void 0}var tt=function(t){return t&&"number"==typeof t.length&&"function"!=typeof t};function nt(t){return l(null==t?void 0:t.then)}function et(t){return l(t[T])}function rt(t){return Symbol.asyncIterator&&l(null==t?void 0:t[Symbol.asyncIterator])}function it(t){return new TypeError("You provided "+(null!==t&&"object"==typeof t?"an invalid object":"'"+t+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}var ot="function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator";function ut(t){return l(null==t?void 0:t[ot])}function st(t){return c(this,arguments,function(){var n,e,i;return r(this,function(r){switch(r.label){case 0:n=t.getReader(),r.label=1;case 1:r.trys.push([1,,9,10]),r.label=2;case 2:return[4,s(n.read())];case 3:return e=r.sent(),i=e.value,e.done?[4,s(void 0)]:[3,5];case 4:return[2,r.sent()];case 5:return[4,s(i)];case 6:return[4,r.sent()];case 7:return r.sent(),[3,2];case 8:return[3,10];case 9:return n.releaseLock(),[7];case 10:return[2]}})})}function ct(t){return l(null==t?void 0:t.getReader)}function at(t){if(t instanceof C)return t;if(null!=t){if(et(t))return o=t,new C(function(t){var n=o[T]();if(l(n.subscribe))return n.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")});if(tt(t))return r=t,new C(function(t){for(var n=0;n<r.length&&!t.closed;n++)t.next(r[n]);t.complete()});if(nt(t))return e=t,new C(function(t){e.then(function(n){t.closed||(t.next(n),t.complete())},function(n){return t.error(n)}).then(null,m)});if(rt(t))return lt(t);if(ut(t))return n=t,new C(function(t){var e,r;try{for(var o=i(n),u=o.next();!u.done;u=o.next()){var s=u.value;if(t.next(s),t.closed)return}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}t.complete()});if(ct(t))return lt(st(t))}var n,e,r,o;throw it(t)}function lt(t){return new C(function(n){(function(t,n){var i,o,u,s;return e(this,void 0,void 0,function(){var e,c;return r(this,function(r){switch(r.label){case 0:r.trys.push([0,5,6,11]),i=a(t),r.label=1;case 1:return[4,i.next()];case 2:if((o=r.sent()).done)return[3,4];if(e=o.value,n.next(e),n.closed)return[2];r.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return c=r.sent(),u={error:c},[3,11];case 6:return r.trys.push([6,,9,10]),o&&!o.done&&(s=i.return)?[4,s.call(i)]:[3,8];case 7:r.sent(),r.label=8;case 8:return[3,10];case 9:if(u)throw u.error;return[7];case 10:return[7];case 11:return n.complete(),[2]}})})})(t,n).catch(function(t){return n.error(t)})})}function ft(t,n,e,r,i){void 0===r&&(r=0),void 0===i&&(i=!1);var o=n.schedule(function(){e(),i?t.add(this.schedule(null,r)):this.unsubscribe()},r);if(t.add(o),!i)return o}function ht(t,n){return void 0===n&&(n=0),z(function(e,r){e.subscribe(N(r,function(e){return ft(r,t,function(){return r.next(e)},n)},function(){return ft(r,t,function(){return r.complete()},n)},function(e){return ft(r,t,function(){return r.error(e)},n)}))})}function pt(t,n){return void 0===n&&(n=0),z(function(e,r){r.add(t.schedule(function(){return e.subscribe(r)},n))})}function dt(t,n){if(!t)throw new Error("Iterable cannot be null");return new C(function(e){ft(e,n,function(){var r=t[Symbol.asyncIterator]();ft(e,n,function(){r.next().then(function(t){t.done?e.complete():e.next(t.value)})},0,!0)})})}function yt(t,n){if(null!=t){if(et(t))return function(t,n){return at(t).pipe(pt(n),ht(n))}(t,n);if(tt(t))return function(t,n){return new C(function(e){var r=0;return n.schedule(function(){r===t.length?e.complete():(e.next(t[r++]),e.closed||this.schedule())})})}(t,n);if(nt(t))return function(t,n){return at(t).pipe(pt(n),ht(n))}(t,n);if(rt(t))return dt(t,n);if(ut(t))return function(t,n){return new C(function(e){var r;return ft(e,n,function(){r=t[ot](),ft(e,n,function(){var t,n,i;try{n=(t=r.next()).value,i=t.done}catch(t){return void e.error(t)}i?e.complete():e.next(n)},0,!0)}),function(){return l(null==r?void 0:r.return)&&r.return()}})}(t,n);if(ct(t))return function(t,n){return dt(st(t),n)}(t,n)}throw it(t)}function bt(t,n){return n?yt(t,n):at(t)}function vt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return bt(t,X(t))}function xt(t,n){return z(function(e,r){var i=0;e.subscribe(N(r,function(e){r.next(t.call(n,e,i++))}))})}function gt(t,n,e){return void 0===e&&(e=1/0),l(n)?gt(function(e,r){return xt(function(t,i){return n(e,t,r,i)})(at(t(e,r)))},e):("number"==typeof n&&(e=n),z(function(n,r){return function(t,n,e,r,i,o,u){var s=[],c=0,a=0,l=!1,f=function(){!l||s.length||c||n.complete()},h=function(t){c++;var i=!1;at(e(t,a++)).subscribe(N(n,function(t){n.next(t)},function(){i=!0},void 0,function(){if(i)try{c--;for(var t=function(){var t=s.shift();u||h(t)};s.length&&c<r;)t();f()}catch(t){n.error(t)}}))};return t.subscribe(N(n,function(t){return c<r?h(t):s.push(t)},function(){l=!0,f()})),function(){}}(n,r,t,e)}))}function mt(){return gt($,1)}function wt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return mt()(bt(t,X(t)))}function _t(t){return new C(function(n){at(t()).subscribe(n)})}function St(t,n,e){void 0===t&&(t=0),void 0===e&&(e=Z);var r=-1;return null!=n&&(K(n)?e=n:r=n),new C(function(n){var i,o=(i=t)instanceof Date&&!isNaN(i)?+t-e.now():t;o<0&&(o=0);var u=0;return e.schedule(function(){n.closed||(n.next(u++),0<=r?this.schedule(void 0,r):n.complete())},o)})}function At(t,n){return z(function(e,r){var i=0;e.subscribe(N(r,function(e){return t.call(n,e,i++)&&r.next(e)}))})}function Et(t,n){return z(function(e,r){var o=[];at(t).subscribe(N(r,function(t){var e=[];o.push(e);var i=new d;i.add(at(n(t)).subscribe(N(r,function(){p(o,e),r.next(e),i.unsubscribe()},w)))},w)),e.subscribe(N(r,function(t){var n,e;try{for(var r=i(o),u=r.next();!u.done;u=r.next()){u.value.push(t)}}catch(t){n={error:t}}finally{try{u&&!u.done&&(e=r.return)&&e.call(r)}finally{if(n)throw n.error}}},function(){for(;o.length>0;)r.next(o.shift());r.complete()}))})}function It(t){return z(function(n,e){var r,i=null,o=!1;i=n.subscribe(N(e,void 0,void 0,function(u){r=at(t(u,It(t)(n))),i?(i.unsubscribe(),i=null,r.subscribe(e)):o=!0})),o&&(i.unsubscribe(),i=null,r.subscribe(e))})}function Ft(t,n){return l(n)?gt(t,n,1):gt(t,1)}function Tt(t,n){return void 0===n&&(n=Q),z(function(e,r){var i=null,o=null,u=null,s=function(){if(i){i.unsubscribe(),i=null;var t=o;o=null,r.next(t)}};function c(){var e=u+t,o=n.now();if(o<e)return i=this.schedule(void 0,e-o),void r.add(i);s()}e.subscribe(N(r,function(e){o=e,u=n.now(),i||(i=n.schedule(c,t),r.add(i))},function(){s(),r.complete()},void 0,function(){o=i=null}))})}function $t(t){return t<=0?function(){return G}:z(function(n,e){var r=0;n.subscribe(N(e,function(n){++r<=t&&(e.next(n),t<=r&&e.complete())}))})}function Ot(t,n){return gt(function(n,e){return at(t(n,e)).pipe($t(1),function(t){return xt(function(){return t})}(n))})}function Pt(t,n){void 0===n&&(n=Q);var e=St(t,n);return Ot(function(){return e})}function Ct(t,n){return t===n}function kt(t,n){return n?function(e){return e.pipe(kt(function(e,r){return at(t(e,r)).pipe(xt(function(t,i){return n(e,t,r,i)}))}))}:z(function(n,e){var r=0,i=null,o=!1;n.subscribe(N(e,function(n){i||(i=N(e,void 0,function(){i=null,o&&e.complete()}),at(t(n,r++)).subscribe(i))},function(){o=!0,!i&&e.complete()}))})}function zt(t,n){return z(function(t,n,e,r,i){return function(r,o){var u=e,s=n,c=0;r.subscribe(N(o,function(n){var e=c++;s=u?t(s,n,e):(u=!0,n),o.next(s)},i))}}(t,n,arguments.length>=2))}function Nt(t,n){for(var e=[],r=2;r<arguments.length;r++)e[r-2]=arguments[r];if(!0!==n){if(!1!==n){var i=new E({next:function(){i.unsubscribe(),t()}});return at(n.apply(void 0,u([],o(e)))).subscribe(i)}}else t()}function jt(t,n,e){var r;return r=t,function(t){void 0===t&&(t={});var n=t.connector,e=void 0===n?function(){return new B}:n,r=t.resetOnError,i=void 0===r||r,o=t.resetOnComplete,u=void 0===o||o,s=t.resetOnRefCountZero,c=void 0===s||s;return function(t){var n,r,o,s=0,a=!1,l=!1,f=function(){null==r||r.unsubscribe(),r=void 0},h=function(){f(),n=o=void 0,a=l=!1},p=function(){var t=n;h(),null==t||t.unsubscribe()};return z(function(t,d){s++,l||a||f();var y=o=null!=o?o:e();d.add(function(){0!==--s||l||a||(r=Nt(p,c))}),y.subscribe(d),!n&&s>0&&(n=new E({next:function(t){return y.next(t)},error:function(t){l=!0,f(),r=Nt(h,i,t),y.error(t)},complete:function(){a=!0,f(),r=Nt(h,u),y.complete()}}),at(t).subscribe(n))})(t)}}({connector:function(){return new q(r,n,e)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:!1})}function Dt(t,n){return z(function(e,r){var i=null,o=0,u=!1,s=function(){return u&&!i&&r.complete()};e.subscribe(N(r,function(e){null==i||i.unsubscribe();var u=0,c=o++;at(t(e,c)).subscribe(i=N(r,function(t){return r.next(n?n(e,t,c,u++):t)},function(){i=null,s()}))},function(){u=!0,s()}))})}function Bt(t,n,e){var r=l(t)||n||e?{next:t,error:n,complete:e}:t;return r?z(function(t,n){var e;null===(e=r.subscribe)||void 0===e||e.call(r);var i=!0;t.subscribe(N(n,function(t){var e;null===(e=r.next)||void 0===e||e.call(r,t),n.next(t)},function(){var t;i=!1,null===(t=r.complete)||void 0===t||t.call(r),n.complete()},function(t){var e;i=!1,null===(e=r.error)||void 0===e||e.call(r,t),n.error(t)},function(){var t,n;i&&(null===(t=r.unsubscribe)||void 0===t||t.call(r)),null===(n=r.finalize)||void 0===n||n.call(r)}))}):$}function Rt(t,n,e){void 0===n&&(n=Q);var r=St(t,n);return function(t,n){return z(function(e,r){var i=null!=n?n:{},o=i.leading,u=void 0===o||o,s=i.trailing,c=void 0!==s&&s,a=!1,l=null,f=null,h=!1,p=function(){null==f||f.unsubscribe(),f=null,c&&(b(),h&&r.complete())},d=function(){f=null,h&&r.complete()},y=function(n){return f=at(t(n)).subscribe(N(r,p,d))},b=function(){if(a){a=!1;var t=l;l=null,r.next(t),!h&&y(t)}};e.subscribe(N(r,function(t){a=!0,l=t,(!f||f.closed)&&(u?b():y(t))},function(){h=!0,(!(c&&a&&f)||f.closed)&&r.complete()}))})}(function(){return r},e)}function Lt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var e,r=l(H(e=t))?e.pop():void 0;return z(function(n,e){for(var i=t.length,s=new Array(i),c=t.map(function(){return!1}),a=!1,l=function(n){at(t[n]).subscribe(N(e,function(t){s[n]=t,a||c[n]||(c[n]=!0,(a=c.every($))&&(c=null))},w))},f=0;f<i;f++)l(f);n.subscribe(N(e,function(t){if(a){var n=u([t],o(s));e.next(r?r.apply(void 0,u([],o(n))):n)}}))})}class Mt{_state$;_actions$=new B;get actions$(){return this._actions$.asObservable()}_reducers=[];_context=null;constructor(t={}){const n="function"==typeof structuredClone?structuredClone(t):JSON.parse(JSON.stringify(t));this._state$=new L(n);const e=this._actions$.pipe(zt((t,n)=>{let e={...t},r=!1;return this._reducers.forEach(({path:i,reducerFn:o})=>{const u=t[i],s=o(u,n);u!==s&&(e[i]=s,r=!0)}),r?e:t},n),function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var e=X(t);return z(function(n,r){(e?wt(t,n,e):wt(t,n)).subscribe(r)})}(t),jt(1));e.subscribe(this._state$)}registerReducers(...t){this._reducers.push(...t);const n={...this._state$.getValue()};let e=!1;t.forEach(({path:t,initialState:r})=>{void 0===n[t]&&(n[t]=r,e=!0)}),e&&this._state$.next(n)}setContext(t){this._context=t}registerEffects(...t){t.forEach(t=>{const n=t._rxEffect||{dispatch:!0};let e=t(this._actions$);n.dispatch?e.pipe(xt(t=>this._context&&!t.context?{...t,context:this._context}:t)).subscribe(t=>this.dispatch(t)):e.subscribe()})}dispatch(t){this._actions$.next(t)}select(t){return this._state$.pipe(xt(n=>t(n)),(void 0===e&&(e=$),n=null!=n?n:Ct,z(function(t,r){var i,o=!0;t.subscribe(N(r,function(t){var u=e(t);!o&&n(i,u)||(o=!1,i=u,r.next(t))}))})));var n,e}}function qt(t){const n=n=>({type:t,...n});return n.type=t,n}function Ut(){}function Wt(...t){const n=t.pop(),e=t,r=e.includes(Ut);if(r&&e.length>1)throw new Error("The `anyAction` token cannot be mixed with other action creators in a single `on` handler.");return{types:e.map(t=>t.type),reducerFn:n,isCatchAll:r}}function Vt(t,n,...e){if(!t||"string"!=typeof t)throw new Error("Reducer featureKey must be a non-empty string.");const r=e.filter(t=>!t.isCatchAll),i=e.find(t=>t.isCatchAll);return{path:t,initialState:n,reducerFn:(t=n,e)=>{for(const n of r)if(n.types.includes(e.type))return n.reducerFn(t,e);return i?i.reducerFn(t,e):t}}}function Jt(...t){const n=t.map(t=>t.type);return At(t=>n.includes(t.type))}function Yt(t,n={dispatch:!0}){if("function"!=typeof t)throw new Error("Effect must be a function.");return Object.defineProperty(t,"_rxEffect",{value:{dispatch:!1!==n.dispatch},enumerable:!1}),t}function Qt(t,n){return e=>{const r=e[t];return n?n(r):r}}function Zt(...t){const n=t.pop(),e=t;let r,i,o=!1;return t=>{const u=e.map(n=>n(t));return o&&function(t,n){if(!n||t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==n[e])return!1;return!0}(u,i)||(i=u,r=n(...u),o=!0),r}}const Gt="__rxTinyFluxLargeAction",Kt="_rxTinyFluxTransferState";let Ht,Xt;const tn=t=>{const n="function"==typeof __$$RQR$$__?__$$RQR$$__:"function"==typeof require?require:null;if(!n)return null;try{return n(t)}catch(t){return null}},nn=()=>{if(void 0!==Ht)return Ht;const t="undefined"!=typeof messaging;if(t&&"undefined"!=typeof transferFile&&"function"==typeof transferFile.getInbox)return Ht=transferFile,Ht;if(t&&"undefined"!=typeof globalThis&&globalThis.transferFile&&"function"==typeof globalThis.transferFile.getInbox)return Ht=globalThis.transferFile,Ht;if(!t){const t=tn("@zos/ble/TransferFile"),n=t&&(t.default||t.TransferFile||t);if(n)return Ht=new n,Ht}return Ht=null,Ht},en=()=>void 0!==Xt?Xt:"undefined"!=typeof globalThis&&globalThis.fs?(Xt=globalThis.fs,Xt):(Xt=tn("@zos/fs")||null,Xt),rn=(t,n)=>{t&&"function"==typeof t.debug?t.debug(n):"undefined"!=typeof console&&"function"==typeof console.debug&&console.debug(n)},on=(t,n,e)=>{"undefined"!=typeof console&&"function"==typeof console.error?console.error(n,e):"undefined"!=typeof console&&"function"==typeof console.log&&console.log(n,e)},un=t=>{if(!t)return null;if(t[Kt])return t[Kt];try{const n=nn();if(!n)return on(0,"[rx-tiny-flux] TransferFile is not available."),null;if("function"!=typeof n.getInbox||"function"!=typeof n.getOutbox)return on(0,"[rx-tiny-flux] TransferFile is missing inbox/outbox accessors."),null;const e={transferFile:n,inbox:n.getInbox(),outbox:n.getOutbox(),inboxListenerAttached:!1,expectedFiles:new Set};return rn(t,`[rx-tiny-flux] TransferFile initialized. inbox=${Boolean(e.inbox)} outbox=${Boolean(e.outbox)}`),t[Kt]=e,e}catch(t){return on(0,"[rx-tiny-flux] Failed to initialize TransferFile.",t),null}},sn=(t,n)=>{const e=en();if(!e||"function"!=typeof e.readFileSync)throw new Error("[rx-tiny-flux] readFileSync is not available in @zos/fs.");const r=(t=>{if("string"==typeof t)return t;if(!t)return"";if("undefined"!=typeof TextDecoder)try{return new TextDecoder("utf-8").decode(t)}catch(t){rn(null,`[rx-tiny-flux] TextDecoder failed: ${t?.message||t}`)}let n=t;t instanceof ArrayBuffer?n=new Uint8Array(t):ArrayBuffer.isView(t)&&(n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength));let e="";for(let t=0;t<n.length;t+=1)e+=String.fromCharCode(n[t]);return e})(e.readFileSync(n));return JSON.parse(r)},cn=(t,n)=>{if(!n)return;const e=en();if(e)try{"function"==typeof e.unlinkSync?e.unlinkSync(n):"function"==typeof e.rmSync?e.rmSync(n):"function"==typeof e.removeSync&&e.removeSync(n)}catch(e){rn(t,`[rx-tiny-flux] Failed to remove file ${n}.`)}},an=(t,n)=>{if(!n)return!1;const e=n[Gt]||(n.type===Gt?n:null);if(!e)return!1;const r=un(t);if(r){const t=e.fileName||n.fileName;t&&r.expectedFiles.add(t)}return rn(t,`[rx-tiny-flux] Received large action header message. transferId=${e.transferId||"unknown"} fileName=${e.fileName||"unknown"} actionType=${e.actionType||"unknown"}`),!0},ln=t=>{const n=un(t);n&&!n.inboxListenerAttached?(n.inboxListenerAttached=!0,rn(t,"[rx-tiny-flux] Large action receiver attached to inbox."),n.inbox.on("NEWFILE",()=>{const e=n.inbox.getNextFile();if(!e)return void rn(t,"[rx-tiny-flux] Inbox NEWFILE fired but no file object was returned.");const r=(t=>t?t.meta?t.meta:t.metadata?t.metadata:t.metaData?t.metaData:"function"==typeof t.getMetaData?t.getMetaData():"function"==typeof t.getMetadata?t.getMetadata():null:null)(e),i=r&&r[Gt],o=((t,n)=>t?t.filePath?t.filePath:t.path?t.path:t.fullPath?t.fullPath:t.fileName?t.fileName:"function"==typeof t.getFilePath?t.getFilePath():n:n)(e,i&&i.fileName),u=o&&n.expectedFiles.has(o),s=Boolean(i)||u;if(rn(t,`[rx-tiny-flux] Inbox NEWFILE received. filePath=${o||"unknown"} expected=${Boolean(u)} hasMeta=${Boolean(i)}`),o&&u&&n.expectedFiles.delete(o),!s)return void rn(t,"[rx-tiny-flux] Ignoring inbox file: not a large action.");const c=()=>{o?((t,n)=>{try{const e=sn(0,n);e&&"string"==typeof e.type?"function"==typeof t.dispatch?t.dispatch(e):on(0,"[rx-tiny-flux] Dispatch is not available for large action."):rn(t,"[rx-tiny-flux] Ignored large action without a valid type.")}catch(t){on(0,`[rx-tiny-flux] Failed to read large action from ${n}.`,t)}finally{cn(t,n)}})(t,o):on(0,"[rx-tiny-flux] Incoming large action has no file path.")};"function"==typeof e.on&&e.on("change",n=>{const e=n&&n.data&&n.data.readyState;rn(t,`[rx-tiny-flux] Inbox file change event. readyState=${e||"unknown"}`),"transferred"===e?c():"error"===e&&o&&cn(t,o)}),"transferred"===e.readyState&&(rn(t,"[rx-tiny-flux] Inbox file already transferred."),c())})):n||rn(t,"[rx-tiny-flux] Skipping large action receiver setup: no TransferFile state.")},fn=(t,n)=>{if(!n)return!1;const e=un(n);if(!e)return!1;rn(n,`[rx-tiny-flux] Enqueueing large action transfer. type=${t&&t.type?t.type:"unknown"}`);const r=`${Date.now()}-${Math.random().toString(16).slice(2)}`,i=(t=>`data://rx-tiny-flux-action-${t}.json`)(r),o={transferId:r,fileName:i,actionType:t&&t.type};try{((t,n,e)=>{const r=en();if(!r||"function"!=typeof r.writeFileSync)throw new Error("[rx-tiny-flux] writeFileSync is not available in @zos/fs.");r.writeFileSync(n,JSON.stringify(e)),rn(t,`[rx-tiny-flux] Stored large action at ${n}.`)})(n,i,t)}catch(t){return on(0,"[rx-tiny-flux] Failed to store large action on disk.",t),!1}let u;"function"==typeof n.call?(rn(n,`[rx-tiny-flux] Sending large action header via messaging.call. transferId=${r}`),n.call({[Gt]:o})):rn(n,"[rx-tiny-flux] messaging.call is not available for large action header.");try{u=e.outbox.enqueueFile(i,{[Gt]:o}),rn(n,`[rx-tiny-flux] Enqueued file for transfer. fileName=${i}`)}catch(t){return on(0,"[rx-tiny-flux] Failed to enqueue file for transfer.",t),cn(n,i),!1}return u&&"function"==typeof u.on&&u.on("change",t=>{const e=t&&t.data&&t.data.readyState;rn(n,`[rx-tiny-flux] Outbox file change event. readyState=${e||"unknown"}`),"transferred"!==e&&"error"!==e||cn(n,i)}),!0};function hn(t,n){return{onCreate(){n?(n.setContext(this),this.debug("Attach the store and a dispatch method to the App instance."),this._store=n,this.dispatch=t=>{setTimeout(()=>{const n={...t,context:this};this._store.dispatch(n)},50)},this.onAction=t=>{an(this,t)||(t&&"string"==typeof t.type?(this.debug(`Dispatching action ${t.type} from App.onAction.`),this.dispatch(t)):this.debug("Not an Action, discarding the message on App.onAction."))},this.messaging.onCall(this.onAction),ln(this),this.subscribe=(t,...n)=>{this._subscriptions||(this._subscriptions=[]);const e=n.pop(),r=n,i=this._store.select(t),o=(r.length>0?i.pipe(...r):i).subscribe(e);return this._subscriptions.push(o),o}):console.error("[rx-tiny-flux] StorePlugin Error: A store instance must be provided to `BaseApp.use(storePlugin, store)`.")},onInit(){let t;const e="undefined"!=typeof messaging;if(e)n?(n.setContext(this),t=n,this.onAction=t=>{an(this,t)||(t&&"string"==typeof t.type?(this.debug(`Dispatching action ${t.type} from SideService.onAction.`),this.dispatch(t)):this.debug("Not an Action, discarding the message on SideService.onAction."))}):console.error("[rx-tiny-flux] StorePlugin Error: A store instance must be provided to `BaseSideService.use(storePlugin, store)`.");else{const n=getApp();n&&n._store?t=n._store:console.error("[rx-tiny-flux] Store not found on global App object. Ensure the plugin is registered on BaseApp."),this.onAction=()=>{}}if(!t)return this.onAction=()=>console.error("[rx-tiny-flux] OnAction failed: store not initialized."),this.messaging.onCall(this.onAction),this.dispatch=()=>console.error("[rx-tiny-flux] Dispatch failed: store not initialized."),void(this.subscribe=()=>console.error("[rx-tiny-flux] Subscribe failed: store not initialized."));this._store=t,this.messaging.onCall(this.onAction),this.debug(`Attaching store methods to the ${e?"SideService":"Page"} instance.`),this.dispatch=t=>{setTimeout(()=>{const n={...t,context:this};this._store.dispatch(n)},50)},e&&ln(this),this.subscribe=(t,...n)=>{this._subscriptions||(this._subscriptions=[]);const e=n.pop(),r=n,i=this._store.select(t),o=(r.length>0?i.pipe(...r):i).subscribe(e);return this._subscriptions.push(o),o},e||(this.listen=(t,n)=>{const e=(Array.isArray(t)?t:[t]).map(t=>"function"==typeof t?t.type:t);if(e.some(t=>"string"!=typeof t))throw new Error("[rx-tiny-flux] listen: actionTypes must be strings or action creators with a `type` property.");this._subscriptions||(this._subscriptions=[]);const r=this._store.actions$.pipe(At(t=>e.includes(t.type))).subscribe(n);this._subscriptions.push(r)})},onDestroy(){this.messaging.offOnCall(this.onAction),this._subscriptions&&this._subscriptions.length>0&&(this._subscriptions.forEach(t=>t.unsubscribe()),this._subscriptions=[])}}}const pn=(...t)=>n=>n.pipe(Bt(t=>{if(!t.context||!t.context._store||!t.context._store._state$)throw new Error("[rx-tiny-flux] `withLatestFromStore` could not find a valid store on `action.context._store`. Ensure the `storePlugin` is correctly configured.")}),xt(n=>{const e=n.context._store._state$.getValue();return[n,...t.map(t=>t(e))]})),dn=()=>At(()=>"undefined"!=typeof messaging),yn=()=>At(()=>"undefined"==typeof messaging),bn=()=>Bt(t=>{if(t.context&&"function"==typeof t.context.call){t.context.debug(`Propagation action '${t.type}' through messaging.call(action).`);const{context:n,...e}=t;t.context.call(e)}else console.debug(`No context: Action '${t.type}' not propagated through messaging.call(action).`)}),vn=()=>Bt(t=>{if(t.context&&"function"==typeof t.context.call){t.context.debug(`Propagation large action '${t.type}' through TransferFile.`);const{context:n,...e}=t;fn(e,t.context)}else console.debug(`No context: Action '${t.type}' not propagated through TransferFile.`)});export{G as EMPTY,C as Observable,Mt as Store,Ut as anyAction,Et as bufferToggle,It as catchError,Ft as concatMap,qt as createAction,Yt as createEffect,Qt as createFeatureSelector,Vt as createReducer,Zt as createSelector,Tt as debounceTime,_t as defer,Pt as delay,kt as exhaustMap,At as filter,bt as from,yn as isApp,dn as isSideService,xt as map,gt as mergeMap,vt as of,Jt as ofType,Wt as on,O as pipe,bn as propagateAction,vn as propagateLargeAction,zt as scan,hn as storePlugin,Dt as switchMap,$t as take,Bt as tap,Rt as throttleTime,St as timer,Lt as withLatestFrom,pn as withLatestFromStore};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rx-tiny-flux",
3
- "version": "1.0.33",
3
+ "version": "1.0.34",
4
4
  "description": "A lightweight, minimalist state management library for pure JavaScript projects, inspired by NgRx and Redux, and built with RxJS.",
5
5
  "author": "Bernardo Baumblatt <baumblatt@gmail.com>",
6
6
  "license": "MIT",