react-elmish 6.5.1 → 6.5.2-beta.1

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/dist/cmd.d.ts CHANGED
@@ -22,21 +22,21 @@ declare const cmd: {
22
22
  * @param ofError Creates the message to dispatch when the function throws an error or, for an async function, the promise is rejected.
23
23
  * @param args The parameters of the task.
24
24
  */
25
- ofEither<TMessage_3 extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: Awaited<TReturn>) => TMessage_3, ofError: (error: Error) => TMessage_3, ...args: TArgs): Cmd<TMessage_3>;
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
26
  /**
27
27
  * Creates a command out of a function and ignores the error case. This can also be an async function.
28
28
  * @param task The async function to call.
29
29
  * @param ofSuccess Creates the message to dispatch when the function runs successfully or, for an async function, the promise is resolved.
30
30
  * @param args The parameters of the task.
31
31
  */
32
- ofSuccess<TMessage_4 extends Message, TArgs_1 extends unknown[], TReturn_1>(task: (...args: TArgs_1) => TReturn_1, ofSuccess: (result: Awaited<TReturn_1>) => TMessage_4, ...args: TArgs_1): Cmd<TMessage_4>;
32
+ ofSuccess<TSuccessMessage_1 extends Message, TArgs_1 extends unknown[], TReturn_1>(task: (...args: TArgs_1) => TReturn_1, ofSuccess: (result: Awaited<TReturn_1>) => TSuccessMessage_1, ...args: TArgs_1): Cmd<TSuccessMessage_1>;
33
33
  /**
34
34
  * Creates a command out of a function and ignores the success case. This can also be an async function.
35
35
  * @param task The function to call.
36
36
  * @param ofError Creates the message to dispatch when the function runs successfully or, for an async function, the promise is rejected.
37
37
  * @param args The parameters of the task.
38
38
  */
39
- ofError<TMessage_5 extends Message, TArgs_2 extends unknown[], TReturn_2>(task: (...args: TArgs_2) => TReturn_2, ofError: (error: Error) => TMessage_5, ...args: TArgs_2): Cmd<TMessage_5>;
39
+ ofError<TErrorMessage_1 extends Message, TArgs_2 extends unknown[], TReturn_2>(task: (...args: TArgs_2) => TReturn_2, ofError: (error: Error) => TErrorMessage_1, ...args: TArgs_2): Cmd<TErrorMessage_1>;
40
40
  /**
41
41
  * Provides functionalities to create commands from simple functions.
42
42
  */
@@ -48,21 +48,21 @@ declare const cmd: {
48
48
  * @param ofError Creates the message to dispatch when an error occurred.
49
49
  * @param args The parameters of the task.
50
50
  */
51
- either<TMessage_6 extends Message, TArgs_3 extends unknown[], TReturn_3>(task: (...args: TArgs_3) => TReturn_3, ofSuccess: (result: TReturn_3) => TMessage_6, ofError: (error: Error) => TMessage_6, ...args: TArgs_3): Cmd<TMessage_6>;
51
+ either<TSuccessMessage_2 extends Message, TErrorMessage_2 extends Message, TArgs_3 extends unknown[], TReturn_3>(task: (...args: TArgs_3) => TReturn_3, ofSuccess: (result: TReturn_3) => TSuccessMessage_2, ofError: (error: Error) => TErrorMessage_2, ...args: TArgs_3): Cmd<TSuccessMessage_2 | TErrorMessage_2>;
52
52
  /**
53
53
  * Creates a command out of a simple function and ignores the error case.
54
54
  * @param task The function to call.
55
55
  * @param ofSuccess Creates the message to dispatch after a successful call of the task.
56
56
  * @param args The parameters of the task.
57
57
  */
58
- perform<TMessage_7 extends Message, TArgs_4 extends unknown[], TReturn_4>(task: (...args: TArgs_4) => TReturn_4, ofSuccess: (result: TReturn_4) => TMessage_7, ...args: TArgs_4): Cmd<TMessage_7>;
58
+ perform<TSuccessMessage_3 extends Message, TArgs_4 extends unknown[], TReturn_4>(task: (...args: TArgs_4) => TReturn_4, ofSuccess: (result: TReturn_4) => TSuccessMessage_3, ...args: TArgs_4): Cmd<TSuccessMessage_3>;
59
59
  /**
60
60
  * Creates a command out of a simple function and ignores the success case.
61
61
  * @param task The function to call.
62
62
  * @param ofError Creates the message to dispatch when an error occurred.
63
63
  * @param args The parameters of the task.
64
64
  */
65
- attempt<TMessage_8 extends Message, TArgs_5 extends unknown[], TReturn_5>(task: (...args: TArgs_5) => TReturn_5, ofError: (error: Error) => TMessage_8, ...args: TArgs_5): Cmd<TMessage_8>;
65
+ attempt<TErrorMessage_3 extends Message, TArgs_5 extends unknown[], TReturn_5>(task: (...args: TArgs_5) => TReturn_5, ofError: (error: Error) => TErrorMessage_3, ...args: TArgs_5): Cmd<TErrorMessage_3>;
66
66
  };
67
67
  /**
68
68
  * Provides functionalities to create commands from async functions.
@@ -75,21 +75,21 @@ declare const cmd: {
75
75
  * @param ofError Creates the message to dispatch when the promise is rejected.
76
76
  * @param args The parameters of the task.
77
77
  */
78
- either<TMessage_9 extends Message, TArgs_6 extends unknown[], TReturn_6>(task: (...args: TArgs_6) => Promise<TReturn_6>, ofSuccess: (result: TReturn_6) => TMessage_9, ofError: (error: Error) => TMessage_9, ...args: TArgs_6): Cmd<TMessage_9>;
78
+ either<TSuccessMessage_4 extends Message, TErrorMessage_4 extends Message, TArgs_6 extends unknown[], TReturn_6>(task: (...args: TArgs_6) => Promise<TReturn_6>, ofSuccess: (result: TReturn_6) => TSuccessMessage_4, ofError: (error: Error) => TErrorMessage_4, ...args: TArgs_6): Cmd<TSuccessMessage_4 | TErrorMessage_4>;
79
79
  /**
80
80
  * Creates a command out of an async function and ignores the error case.
81
81
  * @param task The async function to call.
82
82
  * @param ofSuccess Creates the message to dispatch when the promise is resolved.
83
83
  * @param args The parameters of the task.
84
84
  */
85
- perform<TMessage_10 extends Message, TArgs_7 extends unknown[], TReturn_7>(task: (...args: TArgs_7) => Promise<TReturn_7>, ofSuccess: (result: TReturn_7) => TMessage_10, ...args: TArgs_7): Cmd<TMessage_10>;
85
+ perform<TSuccessMessage_5 extends Message, TArgs_7 extends unknown[], TReturn_7>(task: (...args: TArgs_7) => Promise<TReturn_7>, ofSuccess: (result: TReturn_7) => TSuccessMessage_5, ...args: TArgs_7): Cmd<TSuccessMessage_5>;
86
86
  /**
87
87
  * Creates a command out of an async function and ignores the success case.
88
88
  * @param task The async function to call.
89
89
  * @param ofError Creates the message to dispatch when the promise is rejected.
90
90
  * @param args The parameters of the task.
91
91
  */
92
- attempt<TMessage_11 extends Message, TArgs_8 extends unknown[], TReturn_8>(task: (...args: TArgs_8) => Promise<TReturn_8>, ofError: (error: Error) => TMessage_11, ...args: TArgs_8): Cmd<TMessage_11>;
92
+ attempt<TErrorMessage_5 extends Message, TArgs_8 extends unknown[], TReturn_8>(task: (...args: TArgs_8) => Promise<TReturn_8>, ofError: (error: Error) => TErrorMessage_5, ...args: TArgs_8): Cmd<TErrorMessage_5>;
93
93
  };
94
94
  };
95
95
  export { cmd, };
package/dist/cmd.js CHANGED
@@ -242,4 +242,4 @@ exports.cmd = cmd;
242
242
  function defaultFallbackHandler() {
243
243
  // blank
244
244
  }
245
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbWQiLCJvZk1zZyIsIm1zZyIsImRpc3BhdGNoIiwiYmF0Y2giLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiY29tbWFuZHMiLCJBcnJheSIsIl9rZXkiLCJmaWx0ZXIiLCJCb29sZWFuIiwiZmxhdCIsIm9mU3ViIiwic3ViIiwib2ZFaXRoZXIiLCJ0YXNrIiwib2ZTdWNjZXNzIiwib2ZFcnJvciIsIl9sZW4yIiwiYXJncyIsIl9rZXkyIiwiYmluZCIsInRhc2tSZXN1bHQiLCJhcHBseSIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsInJlc3VsdCIsImV4IiwiX2xlbjMiLCJfa2V5MyIsImZhbGxiYWNrIiwidW5kZWZpbmVkIiwiZGVmYXVsdEZhbGxiYWNrSGFuZGxlciIsIl9sZW40IiwiX2tleTQiLCJvZkZ1bmMiLCJlaXRoZXIiLCJfbGVuNSIsIl9rZXk1IiwicGVyZm9ybSIsIl9sZW42IiwiX2tleTYiLCJhdHRlbXB0IiwiX2xlbjciLCJfa2V5NyIsIm9mUHJvbWlzZSIsIl9sZW44IiwiX2tleTgiLCJfbGVuOSIsIl9rZXk5IiwiX2xlbjEwIiwiX2tleTEwIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jbWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ21kLCBEaXNwYXRjaCwgRmFsbGJhY2tIYW5kbGVyLCBNZXNzYWdlLCBTdWIgfSBmcm9tIFwiLi9UeXBlc1wiO1xuXG5jb25zdCBjbWQgPSB7XG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc3BlY2lmaWMgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0ge1RNZXNzYWdlfSBtc2cgVGhlIHNwZWNpZmljIG1lc3NhZ2UuXG4gICAgICovXG4gICAgb2ZNc2c8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAobXNnOiBUTWVzc2FnZSk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICByZXR1cm4gW2Rpc3BhdGNoID0+IGRpc3BhdGNoKG1zZyldO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBBZ2dyZWdhdGVzIG11bHRpcGxlIGNvbW1hbmRzLlxuICAgICAqIEBwYXJhbSB7Q21kPFRNZXNzYWdlPiBbXX0gY29tbWFuZHMgQXJyYXkgb2YgY29tbWFuZHMuXG4gICAgICovXG4gICAgYmF0Y2g8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAoLi4uY29tbWFuZHM6IChDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkIHwgbnVsbCkgW10pOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgcmV0dXJuIChjb21tYW5kcy5maWx0ZXIoQm9vbGVhbikgYXMgQ21kPFRNZXNzYWdlPiBbXSkuZmxhdCgpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBDb21tYW5kIHRvIGNhbGwgdGhlIHN1YnNjcmliZXIuXG4gICAgICogQHBhcmFtIHtTdWI8VE1lc3NhZ2U+fSBzdWIgVGhlIHN1YnNjcmliZXIgZnVuY3Rpb24uXG4gICAgICovXG4gICAgb2ZTdWI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAoc3ViOiBTdWI8VE1lc3NhZ2U+KTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBbc3ViXTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LiBUaGlzIGNhbiBhbHNvIGJlIGFuIGFzeW5jIGZ1bmN0aW9uLlxuICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG4gICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvciBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICovXG4gICAgb2ZFaXRoZXI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBBd2FpdGVkPFRSZXR1cm4+KSA9PiBUTWVzc2FnZSwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrUmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSh0YXNrUmVzdWx0KVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBbYmluZF07XG4gICAgfSxcblxuICAgIC8qKlxuICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIGVycm9yIGNhc2UuIFRoaXMgY2FuIGFsc28gYmUgYW4gYXN5bmMgZnVuY3Rpb24uXG4gICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cbiAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICovXG4gICAgb2ZTdWNjZXNzPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogQXdhaXRlZDxUUmV0dXJuPikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s6IEZhbGxiYWNrSGFuZGxlciA9IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICBQcm9taXNlLnJlc29sdmUodGFza1Jlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4ocmVzdWx0ID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKGZhbGxiYWNrKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgZmFsbGJhY2soZXggYXMgRXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBbYmluZF07XG4gICAgfSxcblxuICAgIC8qKlxuICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIHN1Y2Nlc3MgY2FzZS4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cbiAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICovXG4gICAgb2ZFcnJvcjxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrUmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSh0YXNrUmVzdWx0KVxuICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PiBmYWxsYmFjaz8uKCkpXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXg6IEVycm9yKSA9PiBkaXNwYXRjaChvZkVycm9yKGV4KSkpO1xuICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaChvZkVycm9yKGV4IGFzIEVycm9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogUHJvdmlkZXMgZnVuY3Rpb25hbGl0aWVzIHRvIGNyZWF0ZSBjb21tYW5kcyBmcm9tIHNpbXBsZSBmdW5jdGlvbnMuXG4gICAgICovXG4gICAgb2ZGdW5jOiB7XG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCBhZnRlciBhIHN1Y2Nlc3NmdWwgY2FsbCBvZiB0aGUgdGFzay5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gYW4gZXJyb3Igb2NjdXJyZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGVpdGhlcjxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNZXNzYWdlLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggYWZ0ZXIgYSBzdWNjZXNzZnVsIGNhbGwgb2YgdGhlIHRhc2suXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIHBlcmZvcm08VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrKGV4IGFzIEVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIGFuIGVycm9yIG9jY3VycmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBhdHRlbXB0PFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGVzIGZ1bmN0aW9uYWxpdGllcyB0byBjcmVhdGUgY29tbWFuZHMgZnJvbSBhc3luYyBmdW5jdGlvbnMuXG4gICAgICovXG4gICAgb2ZQcm9taXNlOiB7XG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhbiBhc3luYyBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgZWl0aGVyPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFByb21pc2U8VFJldHVybj4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVE1lc3NhZ2UsIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBlcnJvciBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBwZXJmb3JtPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFByb21pc2U8VFJldHVybj4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTWVzc2FnZT4sIGZhbGxiYWNrOiBGYWxsYmFja0hhbmRsZXIgPSBkZWZhdWx0RmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZmFsbGJhY2spO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcblxuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYW4gYXN5bmMgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIHN1Y2Nlc3MgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGF0dGVtcHQ8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTWVzc2FnZT4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChleDogRXJyb3IpID0+IGRpc3BhdGNoKG9mRXJyb3IoZXgpKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuICAgIH0sXG59O1xuXG5mdW5jdGlvbiBkZWZhdWx0RmFsbGJhY2tIYW5kbGVyICgpOiB2b2lkIHtcbiAgICAvLyBibGFua1xufVxuXG5leHBvcnQge1xuICAgIGNtZCxcbn07Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxJQUFNQSxHQUFHLEdBQUc7RUFDUjtBQUNKO0FBQ0E7QUFDQTtFQUNJQyxLQUFLLFdBQUFBLE1BQTRCQyxHQUFhLEVBQWlCO0lBQzNELE9BQU8sQ0FBQyxVQUFBQyxRQUFRO01BQUEsT0FBSUEsUUFBUSxDQUFDRCxHQUFHLENBQUM7SUFBQSxFQUFDO0VBQ3RDLENBQUM7RUFFRDtBQUNKO0FBQ0E7QUFDQTtFQUNJRSxLQUFLLFdBQUFBLE1BQUEsRUFBK0Y7SUFBQSxTQUFBQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxFQUFoRUMsUUFBUSxPQUFBQyxLQUFBLENBQUFKLElBQUEsR0FBQUssSUFBQSxNQUFBQSxJQUFBLEdBQUFMLElBQUEsRUFBQUssSUFBQTtNQUFSRixRQUFRLENBQUFFLElBQUEsSUFBQUosU0FBQSxDQUFBSSxJQUFBO0lBQUE7SUFDeEMsT0FBUUYsUUFBUSxDQUFDRyxN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
245
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbWQiLCJvZk1zZyIsIm1zZyIsImRpc3BhdGNoIiwiYmF0Y2giLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiY29tbWFuZHMiLCJBcnJheSIsIl9rZXkiLCJmaWx0ZXIiLCJCb29sZWFuIiwiZmxhdCIsIm9mU3ViIiwic3ViIiwib2ZFaXRoZXIiLCJ0YXNrIiwib2ZTdWNjZXNzIiwib2ZFcnJvciIsIl9sZW4yIiwiYXJncyIsIl9rZXkyIiwiYmluZCIsInRhc2tSZXN1bHQiLCJhcHBseSIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsInJlc3VsdCIsImV4IiwiX2xlbjMiLCJfa2V5MyIsImZhbGxiYWNrIiwidW5kZWZpbmVkIiwiZGVmYXVsdEZhbGxiYWNrSGFuZGxlciIsIl9sZW40IiwiX2tleTQiLCJvZkZ1bmMiLCJlaXRoZXIiLCJfbGVuNSIsIl9rZXk1IiwicGVyZm9ybSIsIl9sZW42IiwiX2tleTYiLCJhdHRlbXB0IiwiX2xlbjciLCJfa2V5NyIsIm9mUHJvbWlzZSIsIl9sZW44IiwiX2tleTgiLCJfbGVuOSIsIl9rZXk5IiwiX2xlbjEwIiwiX2tleTEwIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jbWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ21kLCBEaXNwYXRjaCwgRmFsbGJhY2tIYW5kbGVyLCBNZXNzYWdlLCBTdWIgfSBmcm9tIFwiLi9UeXBlc1wiO1xuXG5jb25zdCBjbWQgPSB7XG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc3BlY2lmaWMgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0ge1RNZXNzYWdlfSBtc2cgVGhlIHNwZWNpZmljIG1lc3NhZ2UuXG4gICAgICovXG4gICAgb2ZNc2c8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAobXNnOiBUTWVzc2FnZSk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICByZXR1cm4gW2Rpc3BhdGNoID0+IGRpc3BhdGNoKG1zZyldO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBBZ2dyZWdhdGVzIG11bHRpcGxlIGNvbW1hbmRzLlxuICAgICAqIEBwYXJhbSB7Q21kPFRNZXNzYWdlPiBbXX0gY29tbWFuZHMgQXJyYXkgb2YgY29tbWFuZHMuXG4gICAgICovXG4gICAgYmF0Y2g8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAoLi4uY29tbWFuZHM6IChDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkIHwgbnVsbCkgW10pOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgcmV0dXJuIChjb21tYW5kcy5maWx0ZXIoQm9vbGVhbikgYXMgQ21kPFRNZXNzYWdlPiBbXSkuZmxhdCgpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBDb21tYW5kIHRvIGNhbGwgdGhlIHN1YnNjcmliZXIuXG4gICAgICogQHBhcmFtIHtTdWI8VE1lc3NhZ2U+fSBzdWIgVGhlIHN1YnNjcmliZXIgZnVuY3Rpb24uXG4gICAgICovXG4gICAgb2ZTdWI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAoc3ViOiBTdWI8VE1lc3NhZ2U+KTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBbc3ViXTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LiBUaGlzIGNhbiBhbHNvIGJlIGFuIGFzeW5jIGZ1bmN0aW9uLlxuICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG4gICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvciBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICovXG4gICAgb2ZFaXRoZXI8VFN1Y2Nlc3NNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEVycm9yTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IEF3YWl0ZWQ8VFJldHVybj4pID0+IFRTdWNjZXNzTWVzc2FnZSwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVEVycm9yTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VFN1Y2Nlc3NNZXNzYWdlIHwgVEVycm9yTWVzc2FnZT4ge1xuICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUU3VjY2Vzc01lc3NhZ2UgfCBURXJyb3JNZXNzYWdlPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrUmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSh0YXNrUmVzdWx0KVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBbYmluZF07XG4gICAgfSxcblxuICAgIC8qKlxuICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIGVycm9yIGNhc2UuIFRoaXMgY2FuIGFsc28gYmUgYW4gYXN5bmMgZnVuY3Rpb24uXG4gICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBmdW5jdGlvbiBydW5zIHN1Y2Nlc3NmdWxseSBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cbiAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICovXG4gICAgb2ZTdWNjZXNzPFRTdWNjZXNzTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IEF3YWl0ZWQ8VFJldHVybj4pID0+IFRTdWNjZXNzTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VFN1Y2Nlc3NNZXNzYWdlPiB7XG4gICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRTdWNjZXNzTWVzc2FnZT4sIGZhbGxiYWNrOiBGYWxsYmFja0hhbmRsZXIgPSBkZWZhdWx0RmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhc2tSZXN1bHQgPSB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHRhc2tSZXN1bHQpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKHJlc3VsdCA9PiBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSkpXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaChmYWxsYmFjayk7XG4gICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgIGZhbGxiYWNrKGV4IGFzIEVycm9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuIFRoaXMgY2FuIGFsc28gYmUgYW4gYXN5bmMgZnVuY3Rpb24uXG4gICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG4gICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAqL1xuICAgIG9mRXJyb3I8VEVycm9yTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBURXJyb3JNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxURXJyb3JNZXNzYWdlPiB7XG4gICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRFcnJvck1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrUmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSh0YXNrUmVzdWx0KVxuICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PiBmYWxsYmFjaz8uKCkpXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXg6IEVycm9yKSA9PiBkaXNwYXRjaChvZkVycm9yKGV4KSkpO1xuICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaChvZkVycm9yKGV4IGFzIEVycm9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogUHJvdmlkZXMgZnVuY3Rpb25hbGl0aWVzIHRvIGNyZWF0ZSBjb21tYW5kcyBmcm9tIHNpbXBsZSBmdW5jdGlvbnMuXG4gICAgICovXG4gICAgb2ZGdW5jOiB7XG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCBhZnRlciBhIHN1Y2Nlc3NmdWwgY2FsbCBvZiB0aGUgdGFzay5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gYW4gZXJyb3Igb2NjdXJyZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGVpdGhlcjxUU3VjY2Vzc01lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBURXJyb3JNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVFN1Y2Nlc3NNZXNzYWdlLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBURXJyb3JNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUU3VjY2Vzc01lc3NhZ2UgfCBURXJyb3JNZXNzYWdlPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUU3VjY2Vzc01lc3NhZ2UgfCBURXJyb3JNZXNzYWdlPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggYWZ0ZXIgYSBzdWNjZXNzZnVsIGNhbGwgb2YgdGhlIHRhc2suXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIHBlcmZvcm08VFN1Y2Nlc3NNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVFN1Y2Nlc3NNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUU3VjY2Vzc01lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRTdWNjZXNzTWVzc2FnZT4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSk7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjayhleCBhcyBFcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgc3VjY2VzcyBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgYXR0ZW1wdDxURXJyb3JNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRFcnJvck1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRFcnJvck1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRFcnJvck1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGVzIGZ1bmN0aW9uYWxpdGllcyB0byBjcmVhdGUgY29tbWFuZHMgZnJvbSBhc3luYyBmdW5jdGlvbnMuXG4gICAgICovXG4gICAgb2ZQcm9taXNlOiB7XG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhbiBhc3luYyBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgZWl0aGVyPFRTdWNjZXNzTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRFcnJvck1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUU3VjY2Vzc01lc3NhZ2UsIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRFcnJvck1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRTdWNjZXNzTWVzc2FnZSB8IFRFcnJvck1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRTdWNjZXNzTWVzc2FnZSB8IFRFcnJvck1lc3NhZ2U+KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBlcnJvciBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBwZXJmb3JtPFRTdWNjZXNzTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBQcm9taXNlPFRSZXR1cm4+LCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRTdWNjZXNzTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VFN1Y2Nlc3NNZXNzYWdlPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUU3VjY2Vzc01lc3NhZ2U+LCBmYWxsYmFjazogRmFsbGJhY2tIYW5kbGVyID0gZGVmYXVsdEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncylcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4ocmVzdWx0ID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKGZhbGxiYWNrKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBhdHRlbXB0PFRFcnJvck1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVEVycm9yTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VEVycm9yTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VEVycm9yTWVzc2FnZT4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChleDogRXJyb3IpID0+IGRpc3BhdGNoKG9mRXJyb3IoZXgpKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuICAgIH0sXG59O1xuXG5mdW5jdGlvbiBkZWZhdWx0RmFsbGJhY2tIYW5kbGVyICgpOiB2b2lkIHtcbiAgICAvLyBibGFua1xufVxuXG5leHBv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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-elmish",
3
- "version": "6.5.1",
3
+ "version": "6.5.2-beta.1",
4
4
  "description": "Elmish for React using Typescript",
5
5
  "author": "atheck",
6
6
  "license": "MIT",