react-elmish 10.4.0 → 10.5.0

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
@@ -14,6 +14,7 @@ This library brings the elmish pattern to react.
14
14
  - [Call an async function](#call-an-async-function)
15
15
  - [Dispatch a command from `init`](#dispatch-a-command-from-init)
16
16
  - [Dispatching multiple commands](#dispatching-multiple-commands)
17
+ - [Ignoring a result conditionally with `noop`](#ignoring-a-result-conditionally-with-noop)
17
18
  - [Subscriptions](#subscriptions)
18
19
  - [Working with external sources of events](#working-with-external-sources-of-events)
19
20
  - [Cleanup subscriptions](#cleanup-subscriptions)
@@ -380,6 +381,24 @@ To dispatch more than one command from `init` or `update` you can either use the
380
381
  return [{}, cmd.ofMsg(Msg.loadData()), cmd.ofEither(doStuff, Msg.success, Msg.error)];
381
382
  ```
382
383
 
384
+ ### Ignoring a result conditionally with `noop`
385
+
386
+ Sometimes the result of an async operation determines whether a message should be dispatched at all. Instead of defining a dedicated "do nothing" message in every component, you can use the built-in `noop()` function:
387
+
388
+ ```ts
389
+ import { cmd, noop } from "react-elmish";
390
+
391
+ {
392
+ load() {
393
+ return [{}, cmd.ofEither(fetchData, (result) => result ? Msg.loaded(result) : noop(), Msg.error)];
394
+ },
395
+ }
396
+ ```
397
+
398
+ When `noop()` is returned from a callback, the dispatch is silently skipped — no message is sent through the update system. This means you do not need to add a `noop` entry to your message type or `UpdateMap`.
399
+
400
+ `noop()` can be returned from the callback of `cmd.ofMsg`, `cmd.ofEither`, `cmd.ofSuccess`, and `cmd.ofError`.
401
+
383
402
  ## Subscriptions
384
403
 
385
404
  ### Working with external sources of events
package/dist/cmd.d.ts CHANGED
@@ -1,10 +1,11 @@
1
+ import { type NoopMessage } from "./noop";
1
2
  import type { Cmd, Message, Sub } from "./Types";
2
3
  declare const cmd: {
3
4
  /**
4
5
  * Creates a command out of a specific message.
5
6
  * @param {TMessage} msg The specific message.
6
7
  */
7
- ofMsg<TMessage extends Message>(msg: TMessage): Cmd<TMessage>;
8
+ ofMsg<TMessage extends Message>(msg: TMessage | NoopMessage): Cmd<TMessage>;
8
9
  /**
9
10
  * Aggregates multiple commands.
10
11
  * @param {Cmd<TMessage> []} commands Array of commands.
@@ -22,21 +23,21 @@ declare const cmd: {
22
23
  * @param ofError Creates the message to dispatch when the function throws an error or, for an async function, the promise is rejected.
23
24
  * @param args The parameters of the task.
24
25
  */
25
- ofEither<TSuccessMessage extends Message, TErrorMessage extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: Awaited<TReturn>) => TSuccessMessage, ofError: (error: Error) => TErrorMessage, ...args: TArgs): Cmd<TSuccessMessage | TErrorMessage>;
26
+ ofEither<TSuccessMessage extends Message, TErrorMessage extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: Awaited<TReturn>) => TSuccessMessage | NoopMessage, ofError: (error: Error) => TErrorMessage | NoopMessage, ...args: TArgs): Cmd<TSuccessMessage | TErrorMessage>;
26
27
  /**
27
28
  * Creates a command out of a function and ignores the error case. This can also be an async function.
28
29
  * @param task The async function to call.
29
30
  * @param ofSuccess Creates the message to dispatch when the function runs successfully or, for an async function, the promise is resolved.
30
31
  * @param args The parameters of the task.
31
32
  */
32
- ofSuccess<TSuccessMessage extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: Awaited<TReturn>) => TSuccessMessage, ...args: TArgs): Cmd<TSuccessMessage>;
33
+ ofSuccess<TSuccessMessage extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: Awaited<TReturn>) => TSuccessMessage | NoopMessage, ...args: TArgs): Cmd<TSuccessMessage>;
33
34
  /**
34
35
  * Creates a command out of a function and ignores the success case. This can also be an async function.
35
36
  * @param task The function to call.
36
37
  * @param ofError Creates the message to dispatch when the function runs successfully or, for an async function, the promise is rejected.
37
38
  * @param args The parameters of the task.
38
39
  */
39
- ofError<TErrorMessage extends Message, TArgs extends unknown[]>(task: (...args: TArgs) => unknown, ofError: (error: Error) => TErrorMessage, ...args: TArgs): Cmd<TErrorMessage>;
40
+ ofError<TErrorMessage extends Message, TArgs extends unknown[]>(task: (...args: TArgs) => unknown, ofError: (error: Error) => TErrorMessage | NoopMessage, ...args: TArgs): Cmd<TErrorMessage>;
40
41
  /**
41
42
  * Creates a command out of a function and ignores both, the success case and the error case. This can also be an async function.
42
43
  * @param task The function to call.
package/dist/cmd.js CHANGED
@@ -4,12 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.cmd = void 0;
7
+ var _noop = require("./noop");
7
8
  var cmd = exports.cmd = {
8
9
  /**
9
10
  * Creates a command out of a specific message.
10
11
  * @param {TMessage} msg The specific message.
11
12
  */
12
13
  ofMsg: function ofMsg(msg) {
14
+ if ((0, _noop.isNoop)(msg)) {
15
+ return [];
16
+ }
13
17
  return [function (dispatch) {
14
18
  return dispatch(msg);
15
19
  }];
@@ -48,15 +52,23 @@ var cmd = exports.cmd = {
48
52
  try {
49
53
  var taskResult = task.apply(void 0, args);
50
54
  Promise.resolve(taskResult).then(function (result) {
51
- return dispatch(ofSuccess(result));
52
- })
53
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- We only support Error types here.
54
- ["catch"](function (ex) {
55
- return dispatch(ofError(ex));
55
+ var msg = ofSuccess(result);
56
+ if (!(0, _noop.isNoop)(msg)) {
57
+ dispatch(msg);
58
+ }
59
+ })["catch"](function (ex) {
60
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- We only support Error types here.
61
+ var msg = ofError(ex);
62
+ if (!(0, _noop.isNoop)(msg)) {
63
+ dispatch(msg);
64
+ }
56
65
  });
57
66
  } catch (ex) {
58
67
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- We only support Error types here.
59
- dispatch(ofError(ex));
68
+ var msg = ofError(ex);
69
+ if (!(0, _noop.isNoop)(msg)) {
70
+ dispatch(msg);
71
+ }
60
72
  }
61
73
  };
62
74
  return [bind];
@@ -76,7 +88,10 @@ var cmd = exports.cmd = {
76
88
  try {
77
89
  var taskResult = task.apply(void 0, args);
78
90
  Promise.resolve(taskResult).then(function (result) {
79
- return dispatch(_ofSuccess(result));
91
+ var msg = _ofSuccess(result);
92
+ if (!(0, _noop.isNoop)(msg)) {
93
+ dispatch(msg);
94
+ }
80
95
  })["catch"](function () {
81
96
  return fallback();
82
97
  });
@@ -101,14 +116,19 @@ var cmd = exports.cmd = {
101
116
  var taskResult = task.apply(void 0, args);
102
117
  Promise.resolve(taskResult).then(function () {
103
118
  return fallback === null || fallback === void 0 ? void 0 : fallback();
104
- })
105
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- We only support Error types here.
106
- ["catch"](function (ex) {
107
- return dispatch(_ofError(ex));
119
+ })["catch"](function (ex) {
120
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- We only support Error types here.
121
+ var msg = _ofError(ex);
122
+ if (!(0, _noop.isNoop)(msg)) {
123
+ dispatch(msg);
124
+ }
108
125
  });
109
126
  } catch (ex) {
110
127
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- We only support Error types here.
111
- dispatch(_ofError(ex));
128
+ var msg = _ofError(ex);
129
+ if (!(0, _noop.isNoop)(msg)) {
130
+ dispatch(msg);
131
+ }
112
132
  }
113
133
  };
114
134
  return [bind];
@@ -140,4 +160,4 @@ var cmd = exports.cmd = {
140
160
  function defaultFallbackHandler() {
141
161
  // blank
142
162
  }
143
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbWQiLCJleHBvcnRzIiwib2ZNc2ciLCJtc2ciLCJkaXNwYXRjaCIsImJhdGNoIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImNvbW1hbmRzIiwiQXJyYXkiLCJfa2V5IiwiZmlsdGVyIiwiY3VycmVudCIsImZsYXQiLCJvZlN1YiIsInN1YiIsIm9mRWl0aGVyIiwidGFzayIsIm9mU3VjY2VzcyIsIm9mRXJyb3IiLCJfbGVuMiIsImFyZ3MiLCJfa2V5MiIsImJpbmQiLCJ0YXNrUmVzdWx0IiwiYXBwbHkiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJyZXN1bHQiLCJleCIsIl9sZW4zIiwiX2tleTMiLCJmYWxsYmFjayIsInVuZGVmaW5lZCIsImRlZmF1bHRGYWxsYmFja0hhbmRsZXIiLCJfdW51c2VkIiwiX2xlbjQiLCJfa2V5NCIsIm9mTm9uZSIsIl9sZW41IiwiX2tleTUiLCJfZGlzcGF0Y2giLCJfdW51c2VkMiJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jbWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDbWQsIERpc3BhdGNoLCBGYWxsYmFja0hhbmRsZXIsIE1lc3NhZ2UsIFN1YiB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbmNvbnN0IGNtZCA9IHtcblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNwZWNpZmljIG1lc3NhZ2UuXG5cdCAqIEBwYXJhbSB7VE1lc3NhZ2V9IG1zZyBUaGUgc3BlY2lmaWMgbWVzc2FnZS5cblx0ICovXG5cdG9mTXNnPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4obXNnOiBUTWVzc2FnZSk6IENtZDxUTWVzc2FnZT4ge1xuXHRcdHJldHVybiBbKGRpc3BhdGNoKSA9PiBkaXNwYXRjaChtc2cpXTtcblx0fSxcblxuXHQvKipcblx0ICogQWdncmVnYXRlcyBtdWx0aXBsZSBjb21tYW5kcy5cblx0ICogQHBhcmFtIHtDbWQ8VE1lc3NhZ2U+IFtdfSBjb21tYW5kcyBBcnJheSBvZiBjb21tYW5kcy5cblx0ICovXG5cdGJhdGNoPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4oLi4uY29tbWFuZHM6IChDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkIHwgbnVsbClbXSk6IENtZDxUTWVzc2FnZT4ge1xuXHRcdHJldHVybiBjb21tYW5kcy5maWx0ZXIoKGN1cnJlbnQpID0+IGN1cnJlbnQgIT0gbnVsbCkuZmxhdCgpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBDb21tYW5kIHRvIGNhbGwgdGhlIHN1YnNjcmliZXIuXG5cdCAqIEBwYXJhbSB7U3ViPFRNZXNzYWdlPn0gc3ViIFRoZSBzdWJzY3JpYmVyIGZ1bmN0aW9uLlxuXHQgKi9cblx0b2ZTdWI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPihzdWI6IFN1YjxUTWVzc2FnZT4pOiBDbWQ8VE1lc3NhZ2U+IHtcblx0XHRyZXR1cm4gW3N1Yl07XG5cdH0sXG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIGZ1bmN0aW9uIGFuZCBtYXBzIHRoZSByZXN1bHQuIFRoaXMgY2FuIGFsc28gYmUgYW4gYXN5bmMgZnVuY3Rpb24uXG5cdCAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuXHQgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG5cdCAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gdGhyb3dzIGFuIGVycm9yIG9yLCBmb3IgYW4gYXN5bmMgZnVuY3Rpb24sIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLlxuXHQgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cblx0ICovXG5cdG9mRWl0aGVyPFRTdWNjZXNzTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRFcnJvck1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd25bXSwgVFJldHVybj4oXG5cdFx0dGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLFxuXHRcdG9mU3VjY2VzczogKHJlc3VsdDogQXdhaXRlZDxUUmV0dXJuPikgPT4gVFN1Y2Nlc3NNZXNzYWdlLFxuXHRcdG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRFcnJvck1lc3NhZ2UsXG5cdFx0Li4uYXJnczogVEFyZ3Ncblx0KTogQ21kPFRTdWNjZXNzTWVzc2FnZSB8IFRFcnJvck1lc3NhZ2U+IHtcblx0XHRjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUU3VjY2Vzc01lc3NhZ2UgfCBURXJyb3JNZXNzYWdlPik6IHZvaWQgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Y29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRhc2tSZXN1bHQpXG5cdFx0XHRcdFx0LnRoZW4oKHJlc3VsdCkgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuXHRcdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXR5cGUtYXNzZXJ0aW9uIC0tIFdlIG9ubHkgc3VwcG9ydCBFcnJvciB0eXBlcyBoZXJlLlxuXHRcdFx0XHRcdC5jYXRjaCgoZXg6IHVua25vd24pID0+IGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKSk7XG5cdFx0XHR9IGNhdGNoIChleDogdW5rbm93bikge1xuXHRcdFx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS10eXBlLWFzc2VydGlvbiAtLSBXZSBvbmx5IHN1cHBvcnQgRXJyb3IgdHlwZXMgaGVyZS5cblx0XHRcdFx0ZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRyZXR1cm4gW2JpbmRdO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cblx0ICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG5cdCAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cblx0ICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG5cdCAqL1xuXHRvZlN1Y2Nlc3M8VFN1Y2Nlc3NNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duW10sIFRSZXR1cm4+KFxuXHRcdHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybixcblx0XHRvZlN1Y2Nlc3M6IChyZXN1bHQ6IEF3YWl0ZWQ8VFJldHVybj4pID0+IFRTdWNjZXNzTWVzc2FnZSxcblx0XHQuLi5hcmdzOiBUQXJnc1xuXHQpOiBDbWQ8VFN1Y2Nlc3NNZXNzYWdlPiB7XG5cdFx0Y29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VFN1Y2Nlc3NNZXNzYWdlPiwgZmFsbGJhY2s6IEZhbGxiYWNrSGFuZGxlciA9IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdGNvbnN0IHRhc2tSZXN1bHQgPSB0YXNrKC4uLmFyZ3MpO1xuXG5cdFx0XHRcdFByb21pc2UucmVzb2x2ZSh0YXNrUmVzdWx0KVxuXHRcdFx0XHRcdC50aGVuKChyZXN1bHQpID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcblx0XHRcdFx0XHQuY2F0Y2goKCkgPT4gZmFsbGJhY2soKSk7XG5cdFx0XHR9IGNhdGNoIHtcblx0XHRcdFx0ZmFsbGJhY2soKTtcblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0cmV0dXJuIFtiaW5kXTtcblx0fSxcblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIHN1Y2Nlc3MgY2FzZS4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cblx0ICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG5cdCAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG5cdCAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuXHQgKi9cblx0b2ZFcnJvcjxURXJyb3JNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duW10+KFxuXHRcdHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gdW5rbm93bixcblx0XHRvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBURXJyb3JNZXNzYWdlLFxuXHRcdC4uLmFyZ3M6IFRBcmdzXG5cdCk6IENtZDxURXJyb3JNZXNzYWdlPiB7XG5cdFx0Y29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VEVycm9yTWVzc2FnZT4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRjb25zdCB0YXNrUmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuXHRcdFx0XHRQcm9taXNlLnJlc29sdmUodGFza1Jlc3VsdClcblx0XHRcdFx0XHQudGhlbigoKSA9PiBmYWxsYmFjaz8uKCkpXG5cdFx0XHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtdHlwZS1hc3NlcnRpb24gLS0gV2Ugb25seSBzdXBwb3J0IEVycm9yIHR5cGVzIGhlcmUuXG5cdFx0XHRcdFx0LmNhdGNoKChleDogdW5rbm93bikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpKTtcblx0XHRcdH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG5cdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXR5cGUtYXNzZXJ0aW9uIC0tIFdlIG9ubHkgc3VwcG9ydCBFcnJvciB0eXBlcyBoZXJlLlxuXHRcdFx0XHRkaXNwYXRjaChvZkVycm9yKGV4IGFzIEVycm9yKSk7XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdHJldHVybiBbYmluZF07XG5cdH0sXG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIGJvdGgsIHRoZSBzdWNjZXNzIGNhc2UgYW5kIHRoZSBlcnJvciBjYXNlLiBUaGlzIGNhbiBhbHNvIGJlIGFuIGFzeW5jIGZ1bmN0aW9uLlxuXHQgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cblx0ICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG5cdCAqL1xuXHRvZk5vbmU8VEVycm9yTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93bltdPihcblx0XHR0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IHVua25vd24sXG5cdFx0Li4uYXJnczogVEFyZ3Ncblx0KTogQ21kPFRFcnJvck1lc3NhZ2U+IHtcblx0XHRjb25zdCBiaW5kID0gKF9kaXNwYXRjaDogRGlzcGF0Y2g8VEVycm9yTWVzc2FnZT4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRjb25zdCB0YXNrUmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuXHRcdFx0XHRQcm9taXNlLnJlc29sdmUodGFza1Jlc3VsdClcblx0XHRcdFx0XHQudGhlbigoKSA9PiBmYWxsYmFjaz8uKCkpXG5cdFx0XHRcdFx0LmNhdGNoKCgpID0+IGZhbGxiYWNrPy4oKSk7XG5cdFx0XHR9IGNhdGNoIHtcblx0XHRcdFx0ZmFsbGJhY2s/LigpO1xuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRyZXR1cm4gW2JpbmRdO1xuXHR9LFxufTtcblxuZnVuY3Rpb24gZGVmYXVsdEZhbGxiYWNrSGFuZGxlcigpOiB2b2lkIHtcblx0Ly8gYmxhbmtcbn1cblxuZXhwb3J0IHsgY21kIH07XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBQUMsT0FBQSxDQUFBRCxHQUFBLEdBQUc7RUFDWDtBQUNEO0FBQ0E7QUFDQTtFQUNDRSxLQUFLLFdBQUxBLEtBQUtBLENBQTJCQyxHQUFhLEVBQWlCO0lBQzdELE9BQU8sQ0FBQyxVQUFDQyxRQUFRO01BQUEsT0FBS0EsUUFBUSxDQUFDRCxHQUFHLENBQUM7SUFBQSxFQUFDO0VBQ3JDLENBQUM7RUFFRDtBQUNEO0FBQ0E7QUFDQTtFQUNDRSxLQUFLLFdBQUxBLEtBQUtBLENBQUEsRUFBNkY7SUFBQSxTQUFBQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxFQUEvREMsUUFBUSxPQUFBQyxLQUFBLENBQUFKLElBQUEsR0FBQUssSUFBQSxNQUFBQSxJQUFBLEdBQUFMLElBQUEsRUFBQUssSUFBQTtNQUFSRixRQUFRLENBQUFFLElBQUEsSUFBQUosU0FBQSxDQUFBSSxJQUFBO0lBQUE7SUFDMUMsT0FBT0YsUUFBUSxDQUFDRyxNQUFNLENBQUMsVUFBQ0MsT0FBTztNQUFBLE9BQUtBLE9BQU8sSUFBSSxJQUFJO0lBQUEsRUFBQyxDQUFDQyxJQUFJLENBQUMs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
163
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbm9vcCIsInJlcXVpcmUiLCJjbWQiLCJleHBvcnRzIiwib2ZNc2ciLCJtc2ciLCJpc05vb3AiLCJkaXNwYXRjaCIsImJhdGNoIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImNvbW1hbmRzIiwiQXJyYXkiLCJfa2V5IiwiZmlsdGVyIiwiY3VycmVudCIsImZsYXQiLCJvZlN1YiIsInN1YiIsIm9mRWl0aGVyIiwidGFzayIsIm9mU3VjY2VzcyIsIm9mRXJyb3IiLCJfbGVuMiIsImFyZ3MiLCJfa2V5MiIsImJpbmQiLCJ0YXNrUmVzdWx0IiwiYXBwbHkiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJyZXN1bHQiLCJleCIsIl9sZW4zIiwiX2tleTMiLCJmYWxsYmFjayIsInVuZGVmaW5lZCIsImRlZmF1bHRGYWxsYmFja0hhbmRsZXIiLCJfdW51c2VkIiwiX2xlbjQiLCJfa2V5NCIsIm9mTm9uZSIsIl9sZW41IiwiX2tleTUiLCJfZGlzcGF0Y2giLCJfdW51c2VkMiJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jbWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNOb29wLCB0eXBlIE5vb3BNZXNzYWdlIH0gZnJvbSBcIi4vbm9vcFwiO1xuaW1wb3J0IHR5cGUgeyBDbWQsIERpc3BhdGNoLCBGYWxsYmFja0hhbmRsZXIsIE1lc3NhZ2UsIFN1YiB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbmNvbnN0IGNtZCA9IHtcblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNwZWNpZmljIG1lc3NhZ2UuXG5cdCAqIEBwYXJhbSB7VE1lc3NhZ2V9IG1zZyBUaGUgc3BlY2lmaWMgbWVzc2FnZS5cblx0ICovXG5cdG9mTXNnPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4obXNnOiBUTWVzc2FnZSB8IE5vb3BNZXNzYWdlKTogQ21kPFRNZXNzYWdlPiB7XG5cdFx0aWYgKGlzTm9vcChtc2cpKSB7XG5cdFx0XHRyZXR1cm4gW107XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFsoZGlzcGF0Y2gpID0+IGRpc3BhdGNoKG1zZyldO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZ2dyZWdhdGVzIG11bHRpcGxlIGNvbW1hbmRzLlxuXHQgKiBAcGFyYW0ge0NtZDxUTWVzc2FnZT4gW119IGNvbW1hbmRzIEFycmF5IG9mIGNvbW1hbmRzLlxuXHQgKi9cblx0YmF0Y2g8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiguLi5jb21tYW5kczogKENtZDxUTWVzc2FnZT4gfCB1bmRlZmluZWQgfCBudWxsKVtdKTogQ21kPFRNZXNzYWdlPiB7XG5cdFx0cmV0dXJuIGNvbW1hbmRzLmZpbHRlcigoY3VycmVudCkgPT4gY3VycmVudCAhPSBudWxsKS5mbGF0KCk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIENvbW1hbmQgdG8gY2FsbCB0aGUgc3Vic2NyaWJlci5cblx0ICogQHBhcmFtIHtTdWI8VE1lc3NhZ2U+fSBzdWIgVGhlIHN1YnNjcmliZXIgZnVuY3Rpb24uXG5cdCAqL1xuXHRvZlN1YjxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+KHN1YjogU3ViPFRNZXNzYWdlPik6IENtZDxUTWVzc2FnZT4ge1xuXHRcdHJldHVybiBbc3ViXTtcblx0fSxcblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgZnVuY3Rpb24gYW5kIG1hcHMgdGhlIHJlc3VsdC4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cblx0ICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG5cdCAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cblx0ICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiB0aHJvd3MgYW4gZXJyb3Igb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG5cdCAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuXHQgKi9cblx0b2ZFaXRoZXI8VFN1Y2Nlc3NNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEVycm9yTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93bltdLCBUUmV0dXJuPihcblx0XHR0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sXG5cdFx0b2ZTdWNjZXNzOiAocmVzdWx0OiBBd2FpdGVkPFRSZXR1cm4+KSA9PiBUU3VjY2Vzc01lc3NhZ2UgfCBOb29wTWVzc2FnZSxcblx0XHRvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBURXJyb3JNZXNzYWdlIHwgTm9vcE1lc3NhZ2UsXG5cdFx0Li4uYXJnczogVEFyZ3Ncblx0KTogQ21kPFRTdWNjZXNzTWVzc2FnZSB8IFRFcnJvck1lc3NhZ2U+IHtcblx0XHRjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUU3VjY2Vzc01lc3NhZ2UgfCBURXJyb3JNZXNzYWdlPik6IHZvaWQgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Y29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRhc2tSZXN1bHQpXG5cdFx0XHRcdFx0LnRoZW4oKHJlc3VsdCkgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc3QgbXNnID0gb2ZTdWNjZXNzKHJlc3VsdCk7XG5cblx0XHRcdFx0XHRcdGlmICghaXNOb29wKG1zZykpIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGF0Y2gobXNnKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdC5jYXRjaCgoZXg6IHVua25vd24pID0+IHtcblx0XHRcdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXR5cGUtYXNzZXJ0aW9uIC0tIFdlIG9ubHkgc3VwcG9ydCBFcnJvciB0eXBlcyBoZXJlLlxuXHRcdFx0XHRcdFx0Y29uc3QgbXNnID0gb2ZFcnJvcihleCBhcyBFcnJvcik7XG5cblx0XHRcdFx0XHRcdGlmICghaXNOb29wKG1zZykpIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGF0Y2gobXNnKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG5cdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXR5cGUtYXNzZXJ0aW9uIC0tIFdlIG9ubHkgc3VwcG9ydCBFcnJvciB0eXBlcyBoZXJlLlxuXHRcdFx0XHRjb25zdCBtc2cgPSBvZkVycm9yKGV4IGFzIEVycm9yKTtcblxuXHRcdFx0XHRpZiAoIWlzTm9vcChtc2cpKSB7XG5cdFx0XHRcdFx0ZGlzcGF0Y2gobXNnKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRyZXR1cm4gW2JpbmRdO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cblx0ICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG5cdCAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cblx0ICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG5cdCAqL1xuXHRvZlN1Y2Nlc3M8VFN1Y2Nlc3NNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duW10sIFRSZXR1cm4+KFxuXHRcdHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybixcblx0XHRvZlN1Y2Nlc3M6IChyZXN1bHQ6IEF3YWl0ZWQ8VFJldHVybj4pID0+IFRTdWNjZXNzTWVzc2FnZSB8IE5vb3BNZXNzYWdlLFxuXHRcdC4uLmFyZ3M6IFRBcmdzXG5cdCk6IENtZDxUU3VjY2Vzc01lc3NhZ2U+IHtcblx0XHRjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUU3VjY2Vzc01lc3NhZ2U+LCBmYWxsYmFjazogRmFsbGJhY2tIYW5kbGVyID0gZGVmYXVsdEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Y29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRhc2tSZXN1bHQpXG5cdFx0XHRcdFx0LnRoZW4oKHJlc3VsdCkgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc3QgbXNnID0gb2ZTdWNjZXNzKHJlc3VsdCk7XG5cblx0XHRcdFx0XHRcdGlmICghaXNOb29wKG1zZykpIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGF0Y2gobXNnKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdC5jYXRjaCgoKSA9PiBmYWxsYmFjaygpKTtcblx0XHRcdH0gY2F0Y2gge1xuXHRcdFx0XHRmYWxsYmFjaygpO1xuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRyZXR1cm4gW2JpbmRdO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgc3VjY2VzcyBjYXNlLiBUaGlzIGNhbiBhbHNvIGJlIGFuIGFzeW5jIGZ1bmN0aW9uLlxuXHQgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cblx0ICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cblx0ICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG5cdCAqL1xuXHRvZkVycm9yPFRFcnJvck1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd25bXT4oXG5cdFx0dGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiB1bmtub3duLFxuXHRcdG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRFcnJvck1lc3NhZ2UgfCBOb29wTWVzc2FnZSxcblx0XHQuLi5hcmdzOiBUQXJnc1xuXHQpOiBDbWQ8VEVycm9yTWVzc2FnZT4ge1xuXHRcdGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRFcnJvck1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Y29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRhc2tSZXN1bHQpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gZmFsbGJhY2s/LigpKVxuXHRcdFx0XHRcdC5jYXRjaCgoZXg6IHVua25vd24pID0+IHtcblx0XHRcdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXR5cGUtYXNzZXJ0aW9uIC0tIFdlIG9ubHkgc3VwcG9ydCBFcnJvciB0eXBlcyBoZXJlLlxuXHRcdFx0XHRcdFx0Y29uc3QgbXNnID0gb2ZFcnJvcihleCBhcyBFcnJvcik7XG5cblx0XHRcdFx0XHRcdGlmICghaXNOb29wKG1zZykpIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGF0Y2gobXNnKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG5cdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXR5cGUtYXNzZXJ0aW9uIC0tIFdlIG9ubHkgc3VwcG9ydCBFcnJvciB0eXBlcyBoZXJlLlxuXHRcdFx0XHRjb25zdCBtc2cgPSBvZkVycm9yKGV4IGFzIEVycm9yKTtcblxuXHRcdFx0XHRpZiAoIWlzTm9vcChtc2cpKSB7XG5cdFx0XHRcdFx0ZGlzcGF0Y2gobXNnKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRyZXR1cm4gW2JpbmRdO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgaWdub3JlcyBib3RoLCB0aGUgc3VjY2VzcyBjYXNlIGFuZCB0aGUgZXJyb3IgY2FzZS4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cblx0ICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG5cdCAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuXHQgKi9cblx0b2ZOb25lPFRFcnJvck1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd25bXT4oXG5cdFx0dGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiB1bmtub3duLFxuXHRcdC4uLmFyZ3M6IFRBcmdzXG5cdCk6IENtZDxURXJyb3JNZXNzYWdlPiB7XG5cdFx0Y29uc3QgYmluZCA9IChfZGlzcGF0Y2g6IERpc3BhdGNoPFRFcnJvck1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Y29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRhc2tSZXN1bHQpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gZmFsbGJhY2s/LigpKVxuXHRcdFx0XHRcdC5jYXRjaCgoKSA9PiBmYWxsYmFjaz8uKCkpO1xuXHRcdFx0fSBjYXRjaCB7XG5cdFx0XHRcdGZhbGxiYWNrPy4oKTtcblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0cmV0dXJuIFtiaW5kXTtcblx0fSxcbn07XG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWxsYmFja0hhbmRsZXIoKTogdm9pZCB7XG5cdC8vIGJsYW5rXG59XG5cbmV4cG9ydCB7IGNtZCB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxLQUFBLEdBQUFDLE9BQUE7QUFHQSxJQUFNQyxHQUFHLEdBQUFDLE9BQUEsQ0FBQUQsR0FBQSxHQUFHO0VBQ1g7QUFDRDtBQUNBO0FBQ0E7RUFDQ0UsS0FBSyxXQUFMQSxLQUFLQSxDQUEyQkMsR0FBMkIsRUFBaUI7SUFDM0UsSUFBSSxJQUFBQyxZQUFNLEVBQUNELEdBQUcsQ0FBQyxFQUFFO01BQ2hCLE9BQU8sRUFBRTtJQUNWO0lBRUEsT0FBTyxDQUFDLFVBQUNFLFFBQVE7TUFBQSxPQUFLQSxRQUFRLENBQUNGLEdBQUcsQ0FBQztJQUFBLEVBQUM7RUFDckMsQ0FBQztFQUVEO0FBQ0Q7QUFDQTtBQUNBO0VBQ0NHLEtBQUssV0FBTEEsS0FBS0EsQ0FBQSxFQUE2RjtJQUFBLFNBQUFDLElBQUEsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLEVBQS9EQyxRQUFRLE9BQUFDLEtBQUEsQ0FBQUosSUFBQSxHQUFBSyxJQUFBLE1BQUFBLElBQUEsR0FBQUwsSUFBQSxFQUFBSyxJQUFBO01BQVJGLFFBQVEsQ0FBQUUsSUFBQSxJQUFBSixTQUFBLENBQUFJLElBQUE7SUFBQTtJQUMxQyxPQUFPRixRQUFRLENBQUNHLE1BQU0sQ0FBQyxVQUFDQyxPQUFPO01BQUEsT0FBS0EsT0FBTyxJQUFJLElBQUk7SUFBQSxFQUFDLENBQUNDLElBQUksQ0FBQyxDQUFDO0VBQzVELENBQUM7RUFF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
@@ -2,6 +2,7 @@ export { cmd } from "../cmd";
2
2
  export { type ErrorMessage, errorMsg } from "../ErrorHandling";
3
3
  export { type ElmOptions, init, type Logger } from "../Init";
4
4
  export { mergeSubscriptions } from "../mergeSubscriptions";
5
+ export { type NoopMessage, noop } from "../noop";
5
6
  export type { Cmd, Dispatch, DisposeFunction, InitResult, Message, SubscriptionResult, } from "../Types";
6
7
  export { errorHandler, handleError } from "./ErrorHandling";
7
8
  export type { Subscription, UpdateFunctionOptions, UpdateMap, UpdateReturnType, } from "./Types";
@@ -39,6 +39,12 @@ Object.defineProperty(exports, "mergeSubscriptions", {
39
39
  return _mergeSubscriptions.mergeSubscriptions;
40
40
  }
41
41
  });
42
+ Object.defineProperty(exports, "noop", {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _noop.noop;
46
+ }
47
+ });
42
48
  Object.defineProperty(exports, "useElmish", {
43
49
  enumerable: true,
44
50
  get: function get() {
@@ -49,6 +55,7 @@ var _cmd = require("../cmd");
49
55
  var _ErrorHandling = require("../ErrorHandling");
50
56
  var _Init = require("../Init");
51
57
  var _mergeSubscriptions = require("../mergeSubscriptions");
58
+ var _noop = require("../noop");
52
59
  var _ErrorHandling2 = require("./ErrorHandling");
53
60
  var _useElmish = require("./useElmish");
54
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY21kIiwicmVxdWlyZSIsIl9FcnJvckhhbmRsaW5nIiwiX0luaXQiLCJfbWVyZ2VTdWJzY3JpcHRpb25zIiwiX0Vycm9ySGFuZGxpbmcyIiwiX3VzZUVsbWlzaCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbW11dGFibGUvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgY21kIH0gZnJvbSBcIi4uL2NtZFwiO1xuZXhwb3J0IHsgdHlwZSBFcnJvck1lc3NhZ2UsIGVycm9yTXNnIH0gZnJvbSBcIi4uL0Vycm9ySGFuZGxpbmdcIjtcbmV4cG9ydCB7IHR5cGUgRWxtT3B0aW9ucywgaW5pdCwgdHlwZSBMb2dnZXIgfSBmcm9tIFwiLi4vSW5pdFwiO1xuZXhwb3J0IHsgbWVyZ2VTdWJzY3JpcHRpb25zIH0gZnJvbSBcIi4uL21lcmdlU3Vic2NyaXB0aW9uc1wiO1xuZXhwb3J0IHR5cGUge1xuXHRDbWQsXG5cdERpc3BhdGNoLFxuXHREaXNwb3NlRnVuY3Rpb24sXG5cdEluaXRSZXN1bHQsXG5cdE1lc3NhZ2UsXG5cdFN1YnNjcmlwdGlvblJlc3VsdCxcbn0gZnJvbSBcIi4uL1R5cGVzXCI7XG5leHBvcnQgeyBlcnJvckhhbmRsZXIsIGhhbmRsZUVycm9yIH0gZnJvbSBcIi4vRXJyb3JIYW5kbGluZ1wiO1xuZXhwb3J0IHR5cGUge1xuXHRTdWJzY3JpcHRpb24sXG5cdFVwZGF0ZUZ1bmN0aW9uT3B0aW9ucyxcblx0VXBkYXRlTWFwLFxuXHRVcGRhdGVSZXR1cm5UeXBlLFxufSBmcm9tIFwiLi9UeXBlc1wiO1xuZXhwb3J0IHsgdHlwZSBVc2VFbG1pc2hPcHRpb25zLCB1c2VFbG1pc2ggfSBmcm9tIFwiLi91c2VFbG1pc2hcIjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxJQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxjQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxtQkFBQSxHQUFBSCxPQUFBO0FBU0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBT0EsSUFBQUssVUFBQSxHQUFBTCxPQUFBIiwiaWdub3JlTGlzdCI6W119
61
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY21kIiwicmVxdWlyZSIsIl9FcnJvckhhbmRsaW5nIiwiX0luaXQiLCJfbWVyZ2VTdWJzY3JpcHRpb25zIiwiX25vb3AiLCJfRXJyb3JIYW5kbGluZzIiLCJfdXNlRWxtaXNoIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ltbXV0YWJsZS9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBjbWQgfSBmcm9tIFwiLi4vY21kXCI7XG5leHBvcnQgeyB0eXBlIEVycm9yTWVzc2FnZSwgZXJyb3JNc2cgfSBmcm9tIFwiLi4vRXJyb3JIYW5kbGluZ1wiO1xuZXhwb3J0IHsgdHlwZSBFbG1PcHRpb25zLCBpbml0LCB0eXBlIExvZ2dlciB9IGZyb20gXCIuLi9Jbml0XCI7XG5leHBvcnQgeyBtZXJnZVN1YnNjcmlwdGlvbnMgfSBmcm9tIFwiLi4vbWVyZ2VTdWJzY3JpcHRpb25zXCI7XG5leHBvcnQgeyB0eXBlIE5vb3BNZXNzYWdlLCBub29wIH0gZnJvbSBcIi4uL25vb3BcIjtcbmV4cG9ydCB0eXBlIHtcblx0Q21kLFxuXHREaXNwYXRjaCxcblx0RGlzcG9zZUZ1bmN0aW9uLFxuXHRJbml0UmVzdWx0LFxuXHRNZXNzYWdlLFxuXHRTdWJzY3JpcHRpb25SZXN1bHQsXG59IGZyb20gXCIuLi9UeXBlc1wiO1xuZXhwb3J0IHsgZXJyb3JIYW5kbGVyLCBoYW5kbGVFcnJvciB9IGZyb20gXCIuL0Vycm9ySGFuZGxpbmdcIjtcbmV4cG9ydCB0eXBlIHtcblx0U3Vic2NyaXB0aW9uLFxuXHRVcGRhdGVGdW5jdGlvbk9wdGlvbnMsXG5cdFVwZGF0ZU1hcCxcblx0VXBkYXRlUmV0dXJuVHlwZSxcbn0gZnJvbSBcIi4vVHlwZXNcIjtcbmV4cG9ydCB7IHR5cGUgVXNlRWxtaXNoT3B0aW9ucywgdXNlRWxtaXNoIH0gZnJvbSBcIi4vdXNlRWxtaXNoXCI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsSUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsY0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsbUJBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUosT0FBQTtBQVNBLElBQUFLLGVBQUEsR0FBQUwsT0FBQTtBQU9BLElBQUFNLFVBQUEsR0FBQU4sT0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
package/dist/index.d.ts CHANGED
@@ -3,5 +3,6 @@ export { ElmComponent } from "./ElmComponent";
3
3
  export { type ErrorMessage, errorHandler, errorMsg, handleError } from "./ErrorHandling";
4
4
  export { type ElmOptions, init, type Logger } from "./Init";
5
5
  export { mergeSubscriptions } from "./mergeSubscriptions";
6
+ export { type NoopMessage, noop } from "./noop";
6
7
  export type { Cmd, Dispatch, DisposeFunction, InitResult, Message, MsgSource, Subscription, SubscriptionResult, UpdateFunctionOptions, UpdateMap, UpdateReturnType, } from "./Types";
7
8
  export { type UseElmishOptions, useElmish } from "./useElmish";
package/dist/index.js CHANGED
@@ -45,6 +45,12 @@ Object.defineProperty(exports, "mergeSubscriptions", {
45
45
  return _mergeSubscriptions.mergeSubscriptions;
46
46
  }
47
47
  });
48
+ Object.defineProperty(exports, "noop", {
49
+ enumerable: true,
50
+ get: function get() {
51
+ return _noop.noop;
52
+ }
53
+ });
48
54
  Object.defineProperty(exports, "useElmish", {
49
55
  enumerable: true,
50
56
  get: function get() {
@@ -56,5 +62,6 @@ var _ElmComponent = require("./ElmComponent");
56
62
  var _ErrorHandling = require("./ErrorHandling");
57
63
  var _Init = require("./Init");
58
64
  var _mergeSubscriptions = require("./mergeSubscriptions");
65
+ var _noop = require("./noop");
59
66
  var _useElmish = require("./useElmish");
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY21kIiwicmVxdWlyZSIsIl9FbG1Db21wb25lbnQiLCJfRXJyb3JIYW5kbGluZyIsIl9Jbml0IiwiX21lcmdlU3Vic2NyaXB0aW9ucyIsIl91c2VFbG1pc2giXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgY21kIH0gZnJvbSBcIi4vY21kXCI7XG5leHBvcnQgeyBFbG1Db21wb25lbnQgfSBmcm9tIFwiLi9FbG1Db21wb25lbnRcIjtcbmV4cG9ydCB7IHR5cGUgRXJyb3JNZXNzYWdlLCBlcnJvckhhbmRsZXIsIGVycm9yTXNnLCBoYW5kbGVFcnJvciB9IGZyb20gXCIuL0Vycm9ySGFuZGxpbmdcIjtcbmV4cG9ydCB7IHR5cGUgRWxtT3B0aW9ucywgaW5pdCwgdHlwZSBMb2dnZXIgfSBmcm9tIFwiLi9Jbml0XCI7XG5leHBvcnQgeyBtZXJnZVN1YnNjcmlwdGlvbnMgfSBmcm9tIFwiLi9tZXJnZVN1YnNjcmlwdGlvbnNcIjtcbmV4cG9ydCB0eXBlIHtcblx0Q21kLFxuXHREaXNwYXRjaCxcblx0RGlzcG9zZUZ1bmN0aW9uLFxuXHRJbml0UmVzdWx0LFxuXHRNZXNzYWdlLFxuXHRNc2dTb3VyY2UsXG5cdFN1YnNjcmlwdGlvbixcblx0U3Vic2NyaXB0aW9uUmVzdWx0LFxuXHRVcGRhdGVGdW5jdGlvbk9wdGlvbnMsXG5cdFVwZGF0ZU1hcCxcblx0VXBkYXRlUmV0dXJuVHlwZSxcbn0gZnJvbSBcIi4vVHlwZXNcIjtcbmV4cG9ydCB7IHR5cGUgVXNlRWxtaXNoT3B0aW9ucywgdXNlRWxtaXNoIH0gZnJvbSBcIi4vdXNlRWxtaXNoXCI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsSUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsYUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsY0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksbUJBQUEsR0FBQUosT0FBQTtBQWNBLElBQUFLLFVBQUEsR0FBQUwsT0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
67
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY21kIiwicmVxdWlyZSIsIl9FbG1Db21wb25lbnQiLCJfRXJyb3JIYW5kbGluZyIsIl9Jbml0IiwiX21lcmdlU3Vic2NyaXB0aW9ucyIsIl9ub29wIiwiX3VzZUVsbWlzaCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBjbWQgfSBmcm9tIFwiLi9jbWRcIjtcbmV4cG9ydCB7IEVsbUNvbXBvbmVudCB9IGZyb20gXCIuL0VsbUNvbXBvbmVudFwiO1xuZXhwb3J0IHsgdHlwZSBFcnJvck1lc3NhZ2UsIGVycm9ySGFuZGxlciwgZXJyb3JNc2csIGhhbmRsZUVycm9yIH0gZnJvbSBcIi4vRXJyb3JIYW5kbGluZ1wiO1xuZXhwb3J0IHsgdHlwZSBFbG1PcHRpb25zLCBpbml0LCB0eXBlIExvZ2dlciB9IGZyb20gXCIuL0luaXRcIjtcbmV4cG9ydCB7IG1lcmdlU3Vic2NyaXB0aW9ucyB9IGZyb20gXCIuL21lcmdlU3Vic2NyaXB0aW9uc1wiO1xuZXhwb3J0IHsgdHlwZSBOb29wTWVzc2FnZSwgbm9vcCB9IGZyb20gXCIuL25vb3BcIjtcbmV4cG9ydCB0eXBlIHtcblx0Q21kLFxuXHREaXNwYXRjaCxcblx0RGlzcG9zZUZ1bmN0aW9uLFxuXHRJbml0UmVzdWx0LFxuXHRNZXNzYWdlLFxuXHRNc2dTb3VyY2UsXG5cdFN1YnNjcmlwdGlvbixcblx0U3Vic2NyaXB0aW9uUmVzdWx0LFxuXHRVcGRhdGVGdW5jdGlvbk9wdGlvbnMsXG5cdFVwZGF0ZU1hcCxcblx0VXBkYXRlUmV0dXJuVHlwZSxcbn0gZnJvbSBcIi4vVHlwZXNcIjtcbmV4cG9ydCB7IHR5cGUgVXNlRWxtaXNoT3B0aW9ucywgdXNlRWxtaXNoIH0gZnJvbSBcIi4vdXNlRWxtaXNoXCI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsSUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsYUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsY0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksbUJBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUwsT0FBQTtBQWNBLElBQUFNLFVBQUEsR0FBQU4sT0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
package/dist/noop.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ declare const noopMessageName: "__react_elmish_noop__";
2
+ interface NoopMessage {
3
+ readonly name: typeof noopMessageName;
4
+ }
5
+ declare function noop(): NoopMessage;
6
+ declare function isNoop(msg: {
7
+ name: string;
8
+ }): msg is NoopMessage;
9
+ export type { NoopMessage };
10
+ export { isNoop, noop, noopMessageName };
package/dist/noop.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isNoop = isNoop;
7
+ exports.noop = noop;
8
+ exports.noopMessageName = void 0;
9
+ var noopMessageName = exports.noopMessageName = "__react_elmish_noop__";
10
+ function noop() {
11
+ return {
12
+ name: noopMessageName
13
+ };
14
+ }
15
+ function isNoop(msg) {
16
+ return msg.name === noopMessageName;
17
+ }
18
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJub29wTWVzc2FnZU5hbWUiLCJleHBvcnRzIiwibm9vcCIsIm5hbWUiLCJpc05vb3AiLCJtc2ciXSwic291cmNlcyI6WyIuLi9zcmMvbm9vcC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBub29wTWVzc2FnZU5hbWUgPSBcIl9fcmVhY3RfZWxtaXNoX25vb3BfX1wiIGFzIGNvbnN0O1xuXG5pbnRlcmZhY2UgTm9vcE1lc3NhZ2Uge1xuXHRyZWFkb25seSBuYW1lOiB0eXBlb2Ygbm9vcE1lc3NhZ2VOYW1lO1xufVxuXG5mdW5jdGlvbiBub29wKCk6IE5vb3BNZXNzYWdlIHtcblx0cmV0dXJuIHsgbmFtZTogbm9vcE1lc3NhZ2VOYW1lIH07XG59XG5cbmZ1bmN0aW9uIGlzTm9vcChtc2c6IHsgbmFtZTogc3RyaW5nIH0pOiBtc2cgaXMgTm9vcE1lc3NhZ2Uge1xuXHRyZXR1cm4gbXNnLm5hbWUgPT09IG5vb3BNZXNzYWdlTmFtZTtcbn1cblxuZXhwb3J0IHR5cGUgeyBOb29wTWVzc2FnZSB9O1xuXG5leHBvcnQgeyBpc05vb3AsIG5vb3AsIG5vb3BNZXNzYWdlTmFtZSB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQU1BLGVBQWUsR0FBQUMsT0FBQSxDQUFBRCxlQUFBLEdBQUcsdUJBQWdDO0FBTXhELFNBQVNFLElBQUlBLENBQUEsRUFBZ0I7RUFDNUIsT0FBTztJQUFFQyxJQUFJLEVBQUVIO0VBQWdCLENBQUM7QUFDakM7QUFFQSxTQUFTSSxNQUFNQSxDQUFDQyxHQUFxQixFQUFzQjtFQUMxRCxPQUFPQSxHQUFHLENBQUNGLElBQUksS0FBS0gsZUFBZTtBQUNwQyIsImlnbm9yZUxpc3QiOltdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-elmish",
3
- "version": "10.4.0",
3
+ "version": "10.5.0",
4
4
  "description": "Elmish for React using Typescript",
5
5
  "author": "atheck",
6
6
  "license": "MIT",