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 +0 -6
- package/dist/rx-tiny-flux.esm.js +32 -1
- package/dist/rx-tiny-flux.esm.min.js +1 -1
- package/package.json +1 -1
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.
|
package/dist/rx-tiny-flux.esm.js
CHANGED
|
@@ -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(
|
|
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.
|
|
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",
|