react-elmish 2.1.0 → 3.1.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/.github/workflows/{publish.yml → release.yml} +19 -16
- package/.releaserc.json +3 -0
- package/README.md +435 -208
- package/dist/Cmd.d.ts +5 -0
- package/dist/Cmd.js +12 -1
- package/dist/ElmComponent.d.ts +5 -2
- package/dist/ElmComponent.js +1 -5
- package/dist/ElmUtilities.d.ts +7 -0
- package/dist/ElmUtilities.js +11 -2
- package/dist/Testing/index.d.ts +3 -1
- package/dist/Testing/index.js +10 -1
- package/dist/index.d.ts +5 -6
- package/dist/index.js +7 -9
- package/dist/legacy/useElmish.d.ts +15 -0
- package/dist/legacy/useElmish.js +135 -0
- package/dist/legacy/useElmishMap.d.ts +15 -0
- package/dist/legacy/useElmishMap.js +137 -0
- package/dist/useElmish.d.ts +22 -3
- package/dist/useElmish.js +52 -7
- package/package.json +11 -9
- package/.github/workflows/main.yml +0 -41
- package/dist/useElmishMap.d.ts +0 -3
- package/dist/useElmishMap.js +0 -123
package/dist/Cmd.d.ts
CHANGED
|
@@ -28,6 +28,11 @@ declare class Command<TMsg> {
|
|
|
28
28
|
* @param {Cmd<TMsg> []} commands Array of commands.
|
|
29
29
|
*/
|
|
30
30
|
batch(...commands: Cmd<TMsg>[]): Cmd<TMsg>;
|
|
31
|
+
/**
|
|
32
|
+
* Command to call the subscriber.
|
|
33
|
+
* @param {Sub<TMsg>} sub The subscriber function.
|
|
34
|
+
*/
|
|
35
|
+
ofSub(sub: Sub<TMsg>): Cmd<TMsg>;
|
|
31
36
|
/**
|
|
32
37
|
* Provides functionalities to create commands from simple functions.
|
|
33
38
|
*/
|
package/dist/Cmd.js
CHANGED
|
@@ -213,6 +213,17 @@ var Command = /*#__PURE__*/function () {
|
|
|
213
213
|
|
|
214
214
|
return commands.flat();
|
|
215
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* Command to call the subscriber.
|
|
218
|
+
* @param {Sub<TMsg>} sub The subscriber function.
|
|
219
|
+
*/
|
|
220
|
+
// eslint-disable-next-line class-methods-use-this
|
|
221
|
+
|
|
222
|
+
}, {
|
|
223
|
+
key: "ofSub",
|
|
224
|
+
value: function ofSub(sub) {
|
|
225
|
+
return [sub];
|
|
226
|
+
}
|
|
216
227
|
/**
|
|
217
228
|
* Provides functionalities to create commands from simple functions.
|
|
218
229
|
*/
|
|
@@ -231,4 +242,4 @@ var Command = /*#__PURE__*/function () {
|
|
|
231
242
|
function createCmd() {
|
|
232
243
|
return new Command();
|
|
233
244
|
}
|
|
234
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9DbWQudHMiXSwibmFtZXMiOlsiQ29tbWFuZCIsImVpdGhlciIsInRhc2siLCJvZlN1Y2Nlc3MiLCJvZkVycm9yIiwiYXJncyIsImJpbmQiLCJkaXNwYXRjaCIsInJlc3VsdCIsImV4IiwicGVyZm9ybSIsImZhbGxiYWNrIiwiYXR0ZW1wdCIsInRoZW4iLCJkZWZhdWx0RmFsbGJhY2tIYW5kbGVyIiwibXNnIiwiY29tbWFuZHMiLCJmbGF0IiwiY3JlYXRlQ21kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBTUE7QUFDQTtBQUNBOztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDTUEsTzs7OztrQ0FJWSxFOztvQ0F1QkU7QUFDWjtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNRQyxNQUFBQSxNQVJZLGtCQVE4QkMsSUFSOUIsRUFRaUVDLFNBUmpFLEVBUXVHQyxPQVJ2RyxFQVFtSztBQUFBLDBDQUF4QkMsSUFBd0I7QUFBeEJBLFVBQUFBLElBQXdCO0FBQUE7O0FBQzNLLFlBQU1DLElBQUksR0FBRyxTQUFQQSxJQUFPLENBQUNDLFFBQUQsRUFBb0M7QUFDN0MsY0FBSTtBQUNBLGdCQUFNQyxPQUFNLEdBQUdOLElBQUksTUFBSixTQUFRRyxJQUFSLENBQWY7O0FBRUFFLFlBQUFBLFFBQVEsQ0FBQ0osU0FBUyxDQUFDSyxPQUFELENBQVYsQ0FBUjtBQUNILFdBSkQsQ0FJRSxPQUFPQyxFQUFQLEVBQW9CO0FBQ2xCRixZQUFBQSxRQUFRLENBQUNILE9BQU8sQ0FBQ0ssRUFBRCxDQUFSLENBQVI7QUFDSDtBQUNKLFNBUkQ7O0FBVUEsZUFBTyxDQUFDSCxJQUFELENBQVA7QUFDSCxPQXBCVzs7QUFzQlo7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ1FJLE1BQUFBLE9BNUJZLG1CQTRCK0JSLElBNUIvQixFQTRCa0VDLFNBNUJsRSxFQTRCbUk7QUFBQSwyQ0FBeEJFLElBQXdCO0FBQXhCQSxV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LElBQUksR0FBRyxTQUFQQSxJQUFPLENBQUNDLFFBQUQsRUFBMkJJLFFBQTNCLEVBQWdFO0FBQ3pFVCxVQUFBQSxJQUFJLE1BQUosU0FBUUcsSUFBUixFQUFjUSxJQUFkLENBQW1CLFlBQU07QUFDckIsZ0JBQUlGLFFBQUosRUFBYztBQUNWQSxjQUFBQSxRQUFRO0FBQ1g7QUFDSixXQUpELFdBS1csVUFBQ0YsRUFBRDtBQUFBLG1CQUFlRixRQUFRLENBQUNILE9BQU8sQ0FBQ0ssRUFBRCxDQUFSLENBQXZCO0FBQUEsV0FMWDtBQU1ILFNBUEQ7O0FBU0EsZUFBTyxDQUFDSCxJQUFELENBQVA7QUFDSDtBQXJEYyxLOzs7Ozs7QUEzRm5CO0FBQ0o7QUFDQTtBQUNBO0FBQ0k7QUFDQSxtQkFBY1MsR0FBZCxFQUFvQztBQUNoQyxhQUFPLENBQUMsVUFBQVIsUUFBUTtBQUFBLGVBQUlBLFFBQVEsQ0FBQ1EsR0FBRCxDQUFaO0FBQUEsT0FBVCxDQUFQO0FBQ0g7QUFFRDtBQUNKO0FBQ0E7QUFDQTtBQUNJOzs7O1dBQ0EsaUJBQW9EO0FBQUEseUNBQW5DQyxRQUFtQztBQUFuQ0EsUUFBQUEsUUFBbUM7QUFBQTs7QUFDaEQsYUFBT0EsUUFBUSxDQUFDQyxJQUFULEVBQVA7QUFDSDtBQUVEO0FBQ0o7QUFDQTs7Ozs7O0FBZ0lBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNPLFNBQVNDLFNBQVQsR0FBMkM7QUFDOUMsU0FBTyxJQUFJbEIsT0FBSixFQUFQO0FBQ0giLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFR5cGUgb2YgdGhlIGRpc3BhdGNoIGZ1bmN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBEaXNwYXRjaDxUTXNnPiA9IChtc2c6IFRNc2cpID0+IHZvaWQ7XG5cbnR5cGUgRmFsbGJhY2tIYW5kbGVyID0gKGVycm9yPzogRXJyb3IpID0+IHZvaWQ7XG50eXBlIFN1YjxUTXNnPiA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1zZz4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKSA9PiB2b2lkO1xuXG4vKipcbiAqIFR5cGUgb2YgYSBjb21tYW5kLlxuICovXG5leHBvcnQgdHlwZSBDbWQ8VE1zZz4gPSBTdWI8VE1zZz4gW107XG5cbi8qKlxuICogQ2xhc3MgdG8gY3JlYXRlIGNvbW1hbmRzLlxuICogQGNsYXNzIENvbW1hbmRcbiAqIEB0ZW1wbGF0ZSBUTXNnIFR5cGUgb2YgdGhlIE1zZyBkaXNjcmltaW5hdGVkIHVuaW9uLlxuICovXG5jbGFzcyBDb21tYW5kPFRNc2c+IHtcbiAgICAvKipcbiAgICAgKiBSZXByZXNlbnRzIGFuIGVtcHR5IGNvbW1hbmQuXG4gICAgICovXG4gICAgcHVibGljIG5vbmUgPSBbXTtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNwZWNpZmljIG1lc3NhZ2UuXG4gICAgICogQHBhcmFtIHtUTXNnfSBtc2cgVGhlIHNwZWNpZmljIG1lc3NhZ2UuXG4gICAgICovXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXNcbiAgICBwdWJsaWMgb2ZNc2cgKG1zZzogVE1zZyk6IENtZDxUTXNnPiB7XG4gICAgICAgIHJldHVybiBbZGlzcGF0Y2ggPT4gZGlzcGF0Y2gobXNnKV07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWdncmVnYXRlcyBtdWx0aXBsZSBjb21tYW5kcy5cbiAgICAgKiBAcGFyYW0ge0NtZDxUTXNnPiBbXX0gY29tbWFuZHMgQXJyYXkgb2YgY29tbWFuZHMuXG4gICAgICovXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXNcbiAgICBwdWJsaWMgYmF0Y2ggKC4uLmNvbW1hbmRzOiBDbWQ8VE1zZz4gW10pOiBDbWQ8VE1zZz4ge1xuICAgICAgICByZXR1cm4gY29tbWFuZHMuZmxhdCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGVzIGZ1bmN0aW9uYWxpdGllcyB0byBjcmVhdGUgY29tbWFuZHMgZnJvbSBzaW1wbGUgZnVuY3Rpb25zLlxuICAgICAqL1xuICAgIHB1YmxpYyBvZkZ1bmMgPSB7XG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCBhZnRlciBhIHN1Y2Nlc3NmdWwgY2FsbCBvZiB0aGUgdGFzay5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gYW4gZXJyb3Igb2NjdXJyZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGVpdGhlcjxUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTXNnLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTXNnLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTXNnPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTXNnPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggYWZ0ZXIgYSBzdWNjZXNzZnVsIGNhbGwgb2YgdGhlIHRhc2suXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIHBlcmZvcm08VEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVE1zZywgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1zZz4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1zZz4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSk7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjayhleCBhcyBFcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgc3VjY2VzcyBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgYXR0ZW1wdDxUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1zZywgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1zZz4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1zZz4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaChvZkVycm9yKGV4IGFzIEVycm9yKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUHJvdmlkZXMgZnVuY3Rpb25hbGl0aWVzIHRvIGNyZWF0ZSBjb21tYW5kcyBmcm9tIGFzeW5jIGZ1bmN0aW9ucy5cbiAgICAgKi9cbiAgICBwdWJsaWMgb2ZQcm9taXNlID0ge1xuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYW4gYXN5bmMgZnVuY3Rpb24gYW5kIG1hcHMgdGhlIHJlc3VsdC5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGVpdGhlcjxUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTXNnLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTXNnLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTXNnPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTXNnPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncykudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBlcnJvciBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBwZXJmb3JtPFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBQcm9taXNlPFRSZXR1cm4+LCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNc2csIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNc2c+IHtcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgLy8gYmxhbmtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNc2c+LCBmYWxsYmFjazogRmFsbGJhY2tIYW5kbGVyID0gZGVmYXVsdEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncykudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZmFsbGJhY2spO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcblxuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYW4gYXN5bmMgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIHN1Y2Nlc3MgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGF0dGVtcHQ8VEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFByb21pc2U8VFJldHVybj4sIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNc2csIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNc2c+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNc2c+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmYWxsYmFjaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmFsbGJhY2soKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXg6IEVycm9yKSA9PiBkaXNwYXRjaChvZkVycm9yKGV4KSkpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcbiAgICB9O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSB0eXBlZCBpbnN0YW5jZSBvZiB0aGUgQ29tbWFuZCBjbGFzcy5cbiAqIEB0ZW1wbGF0ZSBUTXNnIFRoZSB0eXBlIG9mIHRoZSBNc2cgZGlzY3JpbWluYXRlZCB1bmlvbi5cbiAqIEBzZWUgQ29tbWFuZFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ21kPFRNc2c+ICgpOiBDb21tYW5kPFRNc2c+IHtcbiAgICByZXR1cm4gbmV3IENvbW1hbmQ8VE1zZz4oKTtcbn0iXX0=
|
|
245
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9DbWQudHMiXSwibmFtZXMiOlsiQ29tbWFuZCIsImVpdGhlciIsInRhc2siLCJvZlN1Y2Nlc3MiLCJvZkVycm9yIiwiYXJncyIsImJpbmQiLCJkaXNwYXRjaCIsInJlc3VsdCIsImV4IiwicGVyZm9ybSIsImZhbGxiYWNrIiwiYXR0ZW1wdCIsInRoZW4iLCJkZWZhdWx0RmFsbGJhY2tIYW5kbGVyIiwibXNnIiwiY29tbWFuZHMiLCJmbGF0Iiwic3ViIiwiY3JlYXRlQ21kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBTUE7QUFDQTtBQUNBOztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDTUEsTzs7OztrQ0FJWSxFOztvQ0FnQ0U7QUFDWjtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNRQyxNQUFBQSxNQVJZLGtCQVE4QkMsSUFSOUIsRUFRaUVDLFNBUmpFLEVBUXVHQyxPQVJ2RyxFQVFtSztBQUFBLDBDQUF4QkMsSUFBd0I7QUFBeEJBLFVBQUFBLElBQXdCO0FBQUE7O0FBQzNLLFlBQU1DLElBQUksR0FBRyxTQUFQQSxJQUFPLENBQUNDLFFBQUQsRUFBb0M7QUFDN0MsY0FBSTtBQUNBLGdCQUFNQyxPQUFNLEdBQUdOLElBQUksTUFBSixTQUFRRyxJQUFSLENBQWY7O0FBRUFFLFlBQUFBLFFBQVEsQ0FBQ0osU0FBUyxDQUFDSyxPQUFELENBQVYsQ0FBUjtBQUNILFdBSkQsQ0FJRSxPQUFPQyxFQUFQLEVBQW9CO0FBQ2xCRixZQUFBQSxRQUFRLENBQUNILE9BQU8sQ0FBQ0ssRUFBRCxDQUFSLENBQVI7QUFDSDtBQUNKLFNBUkQ7O0FBVUEsZUFBTyxDQUFDSCxJQUFELENBQVA7QUFDSCxPQXBCVzs7QUFzQlo7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ1FJLE1BQUFBLE9BNUJZLG1CQTRCK0JSLElBNUIvQixFQTRCa0VDLFNBNUJsRSxFQTRCbUk7QUFBQSwyQ0FBeEJFLElBQXdCO0FB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LFlBQU1DLElBQUksR0FBRyxTQUFQQSxJQUFPLENBQUNDLFFBQUQsRUFBMkJJLFFBQTNCLEVBQWdFO0FBQ3pFVCxVQUFBQSxJQUFJLE1BQUosU0FBUUcsSUFBUixFQUFjUSxJQUFkLENBQW1CLFlBQU07QUFDckIsZ0JBQUlGLFFBQUosRUFBYztBQUNWQSxjQUFBQSxRQUFRO0FBQ1g7QUFDSixXQUpELFdBS1csVUFBQ0YsRUFBRDtBQUFBLG1CQUFlRixRQUFRLENBQUNILE9BQU8sQ0FBQ0ssRUFBRCxDQUFSLENBQXZCO0FBQUEsV0FMWDtBQU1ILFNBUEQ7O0FBU0EsZUFBTyxDQUFDSCxJQUFELENBQVA7QUFDSDtBQXJEYyxLOzs7Ozs7QUFwR25CO0FBQ0o7QUFDQTtBQUNBO0FBQ0k7QUFDQSxtQkFBY1MsR0FBZCxFQUFvQztBQUNoQyxhQUFPLENBQUMsVUFBQVIsUUFBUTtBQUFBLGVBQUlBLFFBQVEsQ0FBQ1EsR0FBRCxDQUFaO0FBQUEsT0FBVCxDQUFQO0FBQ0g7QUFFRDtBQUNKO0FBQ0E7QUFDQTtBQUNJOzs7O1dBQ0EsaUJBQW9EO0FBQUEseUNBQW5DQyxRQUFtQztBQUFuQ0EsUUFBQUEsUUFBbUM7QUFBQTs7QUFDaEQsYUFBT0EsUUFBUSxDQUFDQyxJQUFULEVBQVA7QUFDSDtBQUVEO0FBQ0o7QUFDQTtBQUNBO0FBQ0k7Ozs7V0FDQSxlQUFjQyxHQUFkLEVBQXlDO0FBQ3JDLGFBQU8sQ0FBQ0EsR0FBRCxDQUFQO0FBQ0g7QUFFRDtBQUNKO0FBQ0E7Ozs7OztBQWdJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFDTyxTQUFTQyxTQUFULEdBQTJDO0FBQzlDLFNBQU8sSUFBSW5CLE9BQUosRUFBUDtBQUNIIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUeXBlIG9mIHRoZSBkaXNwYXRjaCBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IHR5cGUgRGlzcGF0Y2g8VE1zZz4gPSAobXNnOiBUTXNnKSA9PiB2b2lkO1xuXG50eXBlIEZhbGxiYWNrSGFuZGxlciA9IChlcnJvcj86IEVycm9yKSA9PiB2b2lkO1xudHlwZSBTdWI8VE1zZz4gPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNc2c+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcikgPT4gdm9pZDtcblxuLyoqXG4gKiBUeXBlIG9mIGEgY29tbWFuZC5cbiAqL1xuZXhwb3J0IHR5cGUgQ21kPFRNc2c+ID0gU3ViPFRNc2c+IFtdO1xuXG4vKipcbiAqIENsYXNzIHRvIGNyZWF0ZSBjb21tYW5kcy5cbiAqIEBjbGFzcyBDb21tYW5kXG4gKiBAdGVtcGxhdGUgVE1zZyBUeXBlIG9mIHRoZSBNc2cgZGlzY3JpbWluYXRlZCB1bmlvbi5cbiAqL1xuY2xhc3MgQ29tbWFuZDxUTXNnPiB7XG4gICAgLyoqXG4gICAgICogUmVwcmVzZW50cyBhbiBlbXB0eSBjb21tYW5kLlxuICAgICAqL1xuICAgIHB1YmxpYyBub25lID0gW107XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBzcGVjaWZpYyBtZXNzYWdlLlxuICAgICAqIEBwYXJhbSB7VE1zZ30gbXNnIFRoZSBzcGVjaWZpYyBtZXNzYWdlLlxuICAgICAqL1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzXG4gICAgcHVibGljIG9mTXNnIChtc2c6IFRNc2cpOiBDbWQ8VE1zZz4ge1xuICAgICAgICByZXR1cm4gW2Rpc3BhdGNoID0+IGRpc3BhdGNoKG1zZyldO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFnZ3JlZ2F0ZXMgbXVsdGlwbGUgY29tbWFuZHMuXG4gICAgICogQHBhcmFtIHtDbWQ8VE1zZz4gW119IGNvbW1hbmRzIEFycmF5IG9mIGNvbW1hbmRzLlxuICAgICAqL1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzXG4gICAgcHVibGljIGJhdGNoICguLi5jb21tYW5kczogQ21kPFRNc2c+IFtdKTogQ21kPFRNc2c+IHtcbiAgICAgICAgcmV0dXJuIGNvbW1hbmRzLmZsYXQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb21tYW5kIHRvIGNhbGwgdGhlIHN1YnNjcmliZXIuXG4gICAgICogQHBhcmFtIHtTdWI8VE1zZz59IHN1YiBUaGUgc3Vic2NyaWJlciBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2xhc3MtbWV0aG9kcy11c2UtdGhpc1xuICAgIHB1YmxpYyBvZlN1YiAoc3ViOiBTdWI8VE1zZz4pOiBDbWQ8VE1zZz4ge1xuICAgICAgICByZXR1cm4gW3N1Yl07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvdmlkZXMgZnVuY3Rpb25hbGl0aWVzIHRvIGNyZWF0ZSBjb21tYW5kcyBmcm9tIHNpbXBsZSBmdW5jdGlvbnMuXG4gICAgICovXG4gICAgcHVibGljIG9mRnVuYyA9IHtcbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBtYXBzIHRoZSByZXN1bHQuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mU3VjY2VzcyBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIGFmdGVyIGEgc3VjY2Vzc2Z1bCBjYWxsIG9mIHRoZSB0YXNrLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgZWl0aGVyPFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNc2csIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNc2csIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNc2c+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNc2c+KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSk7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBlcnJvciBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCBhZnRlciBhIHN1Y2Nlc3NmdWwgY2FsbCBvZiB0aGUgdGFzay5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgcGVyZm9ybTxUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTXNnLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTXNnPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTXNnPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrKGV4IGFzIEVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIGFuIGVycm9yIG9jY3VycmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBhdHRlbXB0PFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTXNnLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTXNnPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTXNnPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChmYWxsYmFjaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmFsbGJhY2soKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBQcm92aWRlcyBmdW5jdGlvbmFsaXRpZXMgdG8gY3JlYXRlIGNvbW1hbmRzIGZyb20gYXN5bmMgZnVuY3Rpb25zLlxuICAgICAqL1xuICAgIHB1YmxpYyBvZlByb21pc2UgPSB7XG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhbiBhc3luYyBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgZWl0aGVyPFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBQcm9taXNlPFRSZXR1cm4+LCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNc2csIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNc2csIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNc2c+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNc2c+KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKS50aGVuKHJlc3VsdCA9PiBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSkpXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXg6IEVycm9yKSA9PiBkaXNwYXRjaChvZkVycm9yKGV4KSkpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcblxuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYW4gYXN5bmMgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIGVycm9yIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mU3VjY2VzcyBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIHBlcmZvcm08VEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFByb21pc2U8VFJldHVybj4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVE1zZywgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1zZz4ge1xuICAgICAgICAgICAgY29uc3QgZGVmYXVsdEZhbGxiYWNrSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICAvLyBibGFua1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1zZz4sIGZhbGxiYWNrOiBGYWxsYmFja0hhbmRsZXIgPSBkZWZhdWx0RmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKS50aGVuKHJlc3VsdCA9PiBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSkpXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaChmYWxsYmFjayk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhbiBhc3luYyBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgc3VjY2VzcyBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgYXR0ZW1wdDxUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1zZywgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1zZz4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1zZz4sIGZhbGxiYWNrPzogRmFsbGJhY2tIYW5kbGVyKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGFzayguLi5hcmdzKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChleDogRXJyb3IpID0+IGRpc3BhdGNoKG9mRXJyb3IoZXgpKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuICAgIH07XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIHR5cGVkIGluc3RhbmNlIG9mIHRoZSBDb21tYW5kIGNsYXNzLlxuICogQHRlbXBsYXRlIFRNc2cgVGhlIHR5cGUgb2YgdGhlIE1zZyBkaXNjcmltaW5hdGVkIHVuaW9uLlxuICogQHNlZSBDb21tYW5kXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDbWQ8VE1zZz4gKCk6IENvbW1hbmQ8VE1zZz4ge1xuICAgIHJldHVybiBuZXcgQ29tbWFuZDxUTXNnPigpO1xufSJdfQ==
|
package/dist/ElmComponent.d.ts
CHANGED
|
@@ -25,7 +25,7 @@ export declare abstract class ElmComponent<TModel, TMsg extends Message, TProps>
|
|
|
25
25
|
* @param name The name of the component.
|
|
26
26
|
* @memberof ElmComponent
|
|
27
27
|
*/
|
|
28
|
-
constructor(props: TProps, init:
|
|
28
|
+
constructor(props: TProps, init: InitFunction<TProps, TModel, TMsg>, name: string);
|
|
29
29
|
/**
|
|
30
30
|
* Is called when the component is loaded.
|
|
31
31
|
* When implementing this method, the base implementation has to be called.
|
|
@@ -61,9 +61,12 @@ export declare abstract class ElmComponent<TModel, TMsg extends Message, TProps>
|
|
|
61
61
|
* @abstract
|
|
62
62
|
* @memberof ElmComponent
|
|
63
63
|
*/
|
|
64
|
-
abstract update:
|
|
64
|
+
abstract update: UpdateFunction<TProps, TModel, TMsg>;
|
|
65
65
|
}
|
|
66
|
+
export declare type InitResult<TModel, TMessage> = [TModel, Cmd<TMessage>?];
|
|
67
|
+
export declare type InitFunction<TProps, TModel, TMessage> = (props: TProps) => InitResult<TModel, TMessage>;
|
|
66
68
|
/**
|
|
67
69
|
* Type for the return value of the update function.
|
|
68
70
|
*/
|
|
69
71
|
export declare type UpdateReturnType<TModel, TMsg> = [Partial<TModel>, Cmd<TMsg>?];
|
|
72
|
+
export declare type UpdateFunction<TProps, TModel, TMsg> = (model: TModel, msg: TMsg, props: TProps) => UpdateReturnType<TModel, TMsg>;
|
package/dist/ElmComponent.js
CHANGED
|
@@ -220,10 +220,6 @@ var ElmComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
220
220
|
|
|
221
221
|
return ElmComponent;
|
|
222
222
|
}(_react["default"].Component);
|
|
223
|
-
/**
|
|
224
|
-
* Type for the return value of the update function.
|
|
225
|
-
*/
|
|
226
|
-
|
|
227
223
|
|
|
228
224
|
exports.ElmComponent = ElmComponent;
|
|
229
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9FbG1Db21wb25lbnQudHMiXSwibmFtZXMiOlsiRWxtQ29tcG9uZW50IiwicHJvcHMiLCJpbml0IiwibmFtZSIsIm1zZyIsIm1vZGVsSGFzQ2hhbmdlZCIsIm1vZGVsIiwiY3VycmVudE1vZGVsIiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsImxlbmd0aCIsImRpc3BhdGNoTWlkZGxld2FyZSIsInJlZW50ZXJlZCIsImJ1ZmZlciIsInB1c2giLCJuZXh0TXNnIiwibW9kaWZpZWQiLCJMb2dnZXJTZXJ2aWNlIiwiaW5mbyIsImNvbXBvbmVudE5hbWUiLCJkZWJ1ZyIsInVwZGF0ZSIsImNtZCIsImV4ZWNDbWQiLCJleCIsImVycm9yIiwic2hpZnQiLCJtb3VudGVkIiwiZm9yY2VVcGRhdGUiLCJpbml0Q21kIiwiZm9yRWFjaCIsImNhbGwiLCJkaXNwYXRjaCIsIlJlYWN0IiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFHQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDc0JBLFk7Ozs7O0FBUWxCO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0ksd0JBQW9CQyxLQUFwQixFQUFtQ0MsSUFBbkMsRUFBMkZDLElBQTNGLEVBQXlHO0FBQUE7O0FBQUE7O0FBQ3JHLDhCQUFNRixLQUFOOztBQURxRyw2REFadEUsRUFZc0U7O0FBQUEsZ0VBWHJGLEtBV3FGOztBQUFBLDhEQVZ2RixLQVV1Rjs7QUFBQSwrREEwRDlFLFVBQUNHLEdBQUQsRUFBcUI7QUFDNUMsVUFBTUMsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDQyxLQUFEO0FBQUEsZUFBcUNBLEtBQUssS0FBSyxNQUFLQyxZQUFmLElBQStCQyxNQUFNLENBQUNDLG1CQUFQLENBQTJCSCxLQUEzQixFQUFrQ0ksTUFBbEMs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QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OztFQTlIaUYwQixrQkFBTUMsUztBQWtJdkY7QUFDQTtBQUNBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGlzcGF0Y2hNaWRkbGV3YXJlLCBMb2dnZXJTZXJ2aWNlLCBNZXNzYWdlIH0gZnJvbSBcIi4vSW5pdFwiO1xuaW1wb3J0IHsgQ21kIH0gZnJvbSBcIi4vQ21kXCI7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gXCIuL0VsbVV0aWxpdGllc1wiO1xuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuXG4vKipcbiAqIEFic3RyYWN0IGNsYXNzIGZvciBhIHJlYWN0IGNsYXNzIGNvbXBvbmVudCB1c2luZyB0aGUgZWxtaXNoIHBhdHRlcm4uXG4gKiBAZXhwb3J0XG4gKiBAYWJzdHJhY3RcbiAqIEBjbGFzcyBFbG1Db21wb25lbnRcbiAqIEBleHRlbmRzIHtDb21wb25lbnQ8VFByb3BzLCBUTW9kZWw+fVxuICogQHRlbXBsYXRlIFRNb2RlbCBUaGUgdHlwZSBvZiB0aGUgbW9kZWwuXG4gKiBAdGVtcGxhdGUgVE1zZyBUaGUgdHlwZSBvZiB0aGUgbWVzc2FnZXMuXG4gKiBAdGVtcGxhdGUgVFByb3BzIFRoZSB0eXBlIG9mIHRoZSBwcm9wcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEVsbUNvbXBvbmVudDxUTW9kZWwsIFRNc2cgZXh0ZW5kcyBNZXNzYWdlLCBUUHJvcHM+IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PFRQcm9wcz4ge1xuICAgIHByaXZhdGUgaW5pdENtZDogTnVsbGFibGU8Q21kPFRNc2c+PiB8IHVuZGVmaW5lZDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudE5hbWU6IHN0cmluZztcbiAgICBwcml2YXRlIHJlYWRvbmx5IGJ1ZmZlcjogVE1zZyBbXSA9IFtdO1xuICAgIHByaXZhdGUgcmVlbnRlcmVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBtb3VudGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBjdXJyZW50TW9kZWw6IFRNb2RlbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRWxtQ29tcG9uZW50LlxuICAgICAqIEBwYXJhbSB7VFByb3BzfSBwcm9wcyBUaGUgcHJvcHMgZm9yIHRoZSBjb21wb25lbnQuXG4gICAgICogQHBhcmFtIHsoKSA9PiBUTW9kZWx9IGluaXQgVGhlIGluaXRpYWxpemVyIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAocHJvcHM6IFRQcm9wcywgaW5pdDogKGFyZzogVFByb3BzKSA9PiBbVE1vZGVsLCBDbWQ8VE1zZz4gfCB1bmRlZmluZWRdLCBuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuXG4gICAgICAgIGNvbnN0IFttb2RlbCwgY21kXSA9IGluaXQodGhpcy5wcm9wcyk7XG5cbiAgICAgICAgdGhpcy5jb21wb25lbnROYW1lID0gbmFtZTtcbiAgICAgICAgdGhpcy5jdXJyZW50TW9kZWwgPSBtb2RlbDtcbiAgICAgICAgdGhpcy5pbml0Q21kID0gY21kO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElzIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgbG9hZGVkLlxuICAgICAqIFdoZW4gaW1wbGVtZW50aW5nIHRoaXMgbWV0aG9kLCB0aGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBoYXMgdG8gYmUgY2FsbGVkLlxuICAgICAqIEBtZW1iZXJvZiBFbG1Db21wb25lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgY29tcG9uZW50RGlkTW91bnQgKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdW50ZWQgPSB0cnVlO1xuXG4gICAgICAgIGlmICh0aGlzLmluaXRDbWQpIHtcbiAgICAgICAgICAgIHRoaXMuZXhlY0NtZCh0aGlzLmluaXRDbWQpO1xuICAgICAgICAgICAgdGhpcy5pbml0Q21kID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElzIGNhbGxlZCBiZWZvcmUgdW5sb2FkaW5nIHRoZSBjb21wb25lbnQuXG4gICAgICogV2hlbiBpbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QsIHRoZSBiYXNlIGltcGxlbWVudGF0aW9uIGhhcyB0byBiZSBjYWxsZWQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb21wb25lbnRXaWxsVW5tb3VudCAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW91bnRlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZXhlY0NtZCAoY21kOiBDbWQ8VE1zZz4pOiB2b2lkIHtcbiAgICAgICAgY21kLmZvckVhY2goY2FsbCA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNhbGwodGhpcy5kaXNwYXRjaCk7XG4gICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgIExvZ2dlclNlcnZpY2U/LmVycm9yKGV4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgY3VycmVudCBtb2RlbC5cbiAgICAgKiBAcmVhZG9ubHlcbiAgICAgKiBAdHlwZSB7UmVhZG9ubHk8VE1vZGVsPn1cbiAgICAgKiBAbWVtYmVyb2YgRWxtQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIGdldCBtb2RlbCAoKTogUmVhZG9ubHk8VE1vZGVsPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRNb2RlbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEaXNwYXRjaGVzIGEgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0ge1RNc2d9IG1zZyBUaGUgbWVzc2FnZSB0byBkaXNwYXRjaC5cbiAgICAgKiBAbWVtYmVyb2YgRWxtQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGRpc3BhdGNoID0gKG1zZzogVE1zZyk6IHZvaWQgPT4ge1xuICAgICAgICBjb25zdCBtb2RlbEhhc0NoYW5nZWQgPSAobW9kZWw6IFBhcnRpYWw8VE1vZGVsPik6IGJvb2xlYW4gPT4gbW9kZWwgIT09IHRoaXMuY3VycmVudE1vZGVsICYmIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1vZGVsKS5sZW5ndGggPiAwO1xuXG4gICAgICAgIGlmIChkaXNwYXRjaE1pZGRsZXdhcmUpIHtcbiAgICAgICAgICAgIGRpc3BhdGNoTWlkZGxld2FyZShtc2cpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMucmVlbnRlcmVkKSB7XG4gICAgICAgICAgICB0aGlzLmJ1ZmZlci5wdXNoKG1zZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlZW50ZXJlZCA9IHRydWU7XG5cbiAgICAgICAgICAgIGxldCBuZXh0TXNnOiBUTXNnIHwgdW5kZWZpbmVkID0gbXNnO1xuICAgICAgICAgICAgbGV0IG1vZGlmaWVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIHdoaWxlIChuZXh0TXNnKSB7XG4gICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uaW5mbyhcIkVsbVwiLCBcIm1lc3NhZ2UgZnJvbVwiLCB0aGlzLmNvbXBvbmVudE5hbWUsIG5leHRNc2cubmFtZSk7XG4gICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uZGVidWcoXCJFbG1cIiwgXCJtZXNzYWdlIGZyb21cIiwgdGhpcy5jb21wb25lbnROYW1lLCBuZXh0TXNnKTtcblxuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IFttb2RlbCwgY21kXSA9IHRoaXMudXBkYXRlKHRoaXMuY3VycmVudE1vZGVsLCBuZXh0TXNnLCB0aGlzLnByb3BzKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAobW9kZWxIYXNDaGFuZ2VkKG1vZGVsKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9kZWwgPSB7IC4uLnRoaXMuY3VycmVudE1vZGVsLCAuLi5tb2RlbCB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGNtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5leGVjQ21kKGNtZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgICAgICBMb2dnZXJTZXJ2aWNlPy5lcnJvcihleCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbmV4dE1zZyA9IHRoaXMuYnVmZmVyLnNoaWZ0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnJlZW50ZXJlZCA9IGZhbHNlO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5tb3VudGVkICYmIG1vZGlmaWVkKSB7XG4gICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uZGVidWcoXCJFbG1cIiwgXCJ1cGRhdGUgbW9kZWwgZm9yXCIsIHRoaXMuY29tcG9uZW50TmFtZSwgdGhpcy5jdXJyZW50TW9kZWwpO1xuICAgICAgICAgICAgICAgIHRoaXMuZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBtb2RpZnkgdGhlIG1vZGVsIGJhc2VkIG9uIGEgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0ge1RNb2RlbH0gbW9kZWwgVGhlIGN1cnJlbnQgbW9kZWwuXG4gICAgICogQHBhcmFtIHtUTXNnfSBtc2cgVGhlIG1lc3NhZ2UgdG8gcHJvY2Vzcy5cbiAgICAgKiBAcGFyYW0ge1RQcm9wc30gcHJvcHMgVGhlIHByb3BzIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQHJldHVybnMgVGhlIG5ldyBtb2RlbCAoY2FuIGFsc28gYmUgYW4gZW1wdHkgb2JqZWN0IHt9KSBhbmQgYW4gb3B0aW9uYWwgbmV3IG1lc3NhZ2UgdG8gZGlzcGF0Y2guXG4gICAgICogQGFic3RyYWN0XG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCB1cGRhdGU6IChtb2RlbDogVE1vZGVsLCBtc2c6IFRNc2csIHByb3BzOiBUUHJvcHMpID0+IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTXNnPjtcbn1cblxuLyoqXG4gKiBUeXBlIGZvciB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB1cGRhdGUgZnVuY3Rpb24uXG4gKi9cbmV4cG9ydCB0eXBlIFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTXNnPiA9IFtQYXJ0aWFsPFRNb2RlbD4sIENtZDxUTXNnPj9dOyJdfQ==
|
|
225
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9FbG1Db21wb25lbnQudHMiXSwibmFtZXMiOlsiRWxtQ29tcG9uZW50IiwicHJvcHMiLCJpbml0IiwibmFtZSIsIm1zZyIsIm1vZGVsSGFzQ2hhbmdlZCIsIm1vZGVsIiwiY3VycmVudE1vZGVsIiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsImxlbmd0aCIsImRpc3BhdGNoTWlkZGxld2FyZSIsInJlZW50ZXJlZCIsImJ1ZmZlciIsInB1c2giLCJuZXh0TXNnIiwibW9kaWZpZWQiLCJMb2dnZXJTZXJ2aWNlIiwiaW5mbyIsImNvbXBvbmVudE5hbWUiLCJkZWJ1ZyIsInVwZGF0ZSIsImNtZCIsImV4ZWNDbWQiLCJleCIsImVycm9yIiwic2hpZnQiLCJtb3VudGVkIiwiZm9yY2VVcGRhdGUiLCJpbml0Q21kIiwiZm9yRWFjaCIsImNhbGwiLCJkaXNwYXRjaCIsIlJlYWN0IiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFHQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDc0JBLFk7Ozs7O0FBUWxCO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0ksd0JBQW9CQyxLQUFwQixFQUFtQ0MsSUFBbkMsRUFBNkVDLElBQTdFLEVBQTJGO0FBQUE7O0FBQUE7O0FBQ3ZGLDhCQUFNRixLQUFOOztBQUR1Riw2REFaeEQsRUFZd0Q7O0FBQUEsZ0VBWHZFLEtBV3VFOztBQUFBLDhEQVZ6RSxLQVV5RTs7QUFBQSwrREEwRGhFLFVBQUNHLEdBQUQsRUFBcUI7QUFDNUMsVUFBTUMsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDQyxLQUFEO0FBQUEsZUFBcUNBLEtBQUssS0FBSyxNQUFLQyxZQUFmLElBQStCQyxNQUFNLENBQUNDLG1CQUFQLENBQTJCSCxLQUEzQixFQUFrQ0ksTUFBbEMs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QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OztFQTlIaUYwQixrQkFBTUMsUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRpc3BhdGNoTWlkZGxld2FyZSwgTG9nZ2VyU2VydmljZSwgTWVzc2FnZSB9IGZyb20gXCIuL0luaXRcIjtcbmltcG9ydCB7IENtZCB9IGZyb20gXCIuL0NtZFwiO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tIFwiLi9FbG1VdGlsaXRpZXNcIjtcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcblxuLyoqXG4gKiBBYnN0cmFjdCBjbGFzcyBmb3IgYSByZWFjdCBjbGFzcyBjb21wb25lbnQgdXNpbmcgdGhlIGVsbWlzaCBwYXR0ZXJuLlxuICogQGV4cG9ydFxuICogQGFic3RyYWN0XG4gKiBAY2xhc3MgRWxtQ29tcG9uZW50XG4gKiBAZXh0ZW5kcyB7Q29tcG9uZW50PFRQcm9wcywgVE1vZGVsPn1cbiAqIEB0ZW1wbGF0ZSBUTW9kZWwgVGhlIHR5cGUgb2YgdGhlIG1vZGVsLlxuICogQHRlbXBsYXRlIFRNc2cgVGhlIHR5cGUgb2YgdGhlIG1lc3NhZ2VzLlxuICogQHRlbXBsYXRlIFRQcm9wcyBUaGUgdHlwZSBvZiB0aGUgcHJvcHMuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFbG1Db21wb25lbnQ8VE1vZGVsLCBUTXNnIGV4dGVuZHMgTWVzc2FnZSwgVFByb3BzPiBleHRlbmRzIFJlYWN0LkNvbXBvbmVudDxUUHJvcHM+IHtcbiAgICBwcml2YXRlIGluaXRDbWQ6IE51bGxhYmxlPENtZDxUTXNnPj4gfCB1bmRlZmluZWQ7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjb21wb25lbnROYW1lOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBidWZmZXI6IFRNc2cgW10gPSBbXTtcbiAgICBwcml2YXRlIHJlZW50ZXJlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgbW91bnRlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgY3VycmVudE1vZGVsOiBUTW9kZWw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIEVsbUNvbXBvbmVudC5cbiAgICAgKiBAcGFyYW0ge1RQcm9wc30gcHJvcHMgVGhlIHByb3BzIGZvciB0aGUgY29tcG9uZW50LlxuICAgICAqIEBwYXJhbSB7KCkgPT4gVE1vZGVsfSBpbml0IFRoZSBpbml0aWFsaXplciBmdW5jdGlvbi5cbiAgICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgY29tcG9uZW50LlxuICAgICAqIEBtZW1iZXJvZiBFbG1Db21wb25lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKHByb3BzOiBUUHJvcHMsIGluaXQ6IEluaXRGdW5jdGlvbjxUUHJvcHMsIFRNb2RlbCwgVE1zZz4sIG5hbWU6IHN0cmluZykge1xuICAgICAgICBzdXBlcihwcm9wcyk7XG5cbiAgICAgICAgY29uc3QgW21vZGVsLCBjbWRdID0gaW5pdCh0aGlzLnByb3BzKTtcblxuICAgICAgICB0aGlzLmNvbXBvbmVudE5hbWUgPSBuYW1lO1xuICAgICAgICB0aGlzLmN1cnJlbnRNb2RlbCA9IG1vZGVsO1xuICAgICAgICB0aGlzLmluaXRDbWQgPSBjbWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBsb2FkZWQuXG4gICAgICogV2hlbiBpbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QsIHRoZSBiYXNlIGltcGxlbWVudGF0aW9uIGhhcyB0byBiZSBjYWxsZWQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb21wb25lbnREaWRNb3VudCAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW91bnRlZCA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5pdENtZCkge1xuICAgICAgICAgICAgdGhpcy5leGVjQ21kKHRoaXMuaW5pdENtZCk7XG4gICAgICAgICAgICB0aGlzLmluaXRDbWQgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIGJlZm9yZSB1bmxvYWRpbmcgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBXaGVuIGltcGxlbWVudGluZyB0aGlzIG1ldGhvZCwgdGhlIGJhc2UgaW1wbGVtZW50YXRpb24gaGFzIHRvIGJlIGNhbGxlZC5cbiAgICAgKiBAbWVtYmVyb2YgRWxtQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIGNvbXBvbmVudFdpbGxVbm1vdW50ICgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb3VudGVkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBleGVjQ21kIChjbWQ6IENtZDxUTXNnPik6IHZvaWQge1xuICAgICAgICBjbWQuZm9yRWFjaChjYWxsID0+IHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY2FsbCh0aGlzLmRpc3BhdGNoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uZXJyb3IoZXgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IG1vZGVsLlxuICAgICAqIEByZWFkb25seVxuICAgICAqIEB0eXBlIHtSZWFkb25seTxUTW9kZWw+fVxuICAgICAqIEBtZW1iZXJvZiBFbG1Db21wb25lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IG1vZGVsICgpOiBSZWFkb25seTxUTW9kZWw+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudE1vZGVsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERpc3BhdGNoZXMgYSBtZXNzYWdlLlxuICAgICAqIEBwYXJhbSB7VE1zZ30gbXNnIFRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoLlxuICAgICAqIEBtZW1iZXJvZiBFbG1Db21wb25lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZGlzcGF0Y2ggPSAobXNnOiBUTXNnKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IG1vZGVsSGFzQ2hhbmdlZCA9IChtb2RlbDogUGFydGlhbDxUTW9kZWw+KTogYm9vbGVhbiA9PiBtb2RlbCAhPT0gdGhpcy5jdXJyZW50TW9kZWwgJiYgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMobW9kZWwpLmxlbmd0aCA+IDA7XG5cbiAgICAgICAgaWYgKGRpc3BhdGNoTWlkZGxld2FyZSkge1xuICAgICAgICAgICAgZGlzcGF0Y2hNaWRkbGV3YXJlKG1zZyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5yZWVudGVyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyLnB1c2gobXNnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVlbnRlcmVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgbGV0IG5leHRNc2c6IFRNc2cgfCB1bmRlZmluZWQgPSBtc2c7XG4gICAgICAgICAgICBsZXQgbW9kaWZpZWQgPSBmYWxzZTtcblxuICAgICAgICAgICAgd2hpbGUgKG5leHRNc2cpIHtcbiAgICAgICAgICAgICAgICBMb2dnZXJTZXJ2aWNlPy5pbmZvKFwiRWxtXCIsIFwibWVzc2FnZSBmcm9tXCIsIHRoaXMuY29tcG9uZW50TmFtZSwgbmV4dE1zZy5uYW1lKTtcbiAgICAgICAgICAgICAgICBMb2dnZXJTZXJ2aWNlPy5kZWJ1ZyhcIkVsbVwiLCBcIm1lc3NhZ2UgZnJvbVwiLCB0aGlzLmNvbXBvbmVudE5hbWUsIG5leHRNc2cpO1xuXG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgW21vZGVsLCBjbWRdID0gdGhpcy51cGRhdGUodGhpcy5jdXJyZW50TW9kZWwsIG5leHRNc2csIHRoaXMucHJvcHMpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChtb2RlbEhhc0NoYW5nZWQobW9kZWwpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRNb2RlbCA9IHsgLi4udGhpcy5jdXJyZW50TW9kZWwsIC4uLm1vZGVsIH07XG4gICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmllZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAoY21kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmV4ZWNDbWQoY21kKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIExvZ2dlclNlcnZpY2U/LmVycm9yKGV4KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBuZXh0TXNnID0gdGhpcy5idWZmZXIuc2hpZnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucmVlbnRlcmVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLm1vdW50ZWQgJiYgbW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBMb2dnZXJTZXJ2aWNlPy5kZWJ1ZyhcIkVsbVwiLCBcInVwZGF0ZSBtb2RlbCBmb3JcIiwgdGhpcy5jb21wb25lbnROYW1lLCB0aGlzLmN1cnJlbnRNb2RlbCk7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JjZVVwZGF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9uIHRvIG1vZGlmeSB0aGUgbW9kZWwgYmFzZWQgb24gYSBtZXNzYWdlLlxuICAgICAqIEBwYXJhbSB7VE1vZGVsfSBtb2RlbCBUaGUgY3VycmVudCBtb2RlbC5cbiAgICAgKiBAcGFyYW0ge1RNc2d9IG1zZyBUaGUgbWVzc2FnZSB0byBwcm9jZXNzLlxuICAgICAqIEBwYXJhbSB7VFByb3BzfSBwcm9wcyBUaGUgcHJvcHMgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBAcmV0dXJucyBUaGUgbmV3IG1vZGVsIChjYW4gYWxzbyBiZSBhbiBlbXB0eSBvYmplY3Qge30pIGFuZCBhbiBvcHRpb25hbCBuZXcgbWVzc2FnZSB0byBkaXNwYXRjaC5cbiAgICAgKiBAYWJzdHJhY3RcbiAgICAgKiBAbWVtYmVyb2YgRWxtQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNc2c+O1xufVxuXG5leHBvcnQgdHlwZSBJbml0UmVzdWx0PFRNb2RlbCwgVE1lc3NhZ2U+ID0gW1RNb2RlbCwgQ21kPFRNZXNzYWdlPj9dO1xuXG5leHBvcnQgdHlwZSBJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiA9IChwcm9wczogVFByb3BzKSA9PiBJbml0UmVzdWx0PFRNb2RlbCwgVE1lc3NhZ2U+O1xuXG4vKipcbiAqIFR5cGUgZm9yIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHVwZGF0ZSBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IHR5cGUgVXBkYXRlUmV0dXJuVHlwZTxUTW9kZWwsIFRNc2c+ID0gW1BhcnRpYWw8VE1vZGVsPiwgQ21kPFRNc2c+P107XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUZ1bmN0aW9uPFRQcm9wcywgVE1vZGVsLCBUTXNnPiA9IChtb2RlbDogVE1vZGVsLCBtc2c6IFRNc2csIHByb3BzOiBUUHJvcHMpID0+IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTXNnPjsiXX0=
|
package/dist/ElmUtilities.d.ts
CHANGED
|
@@ -23,3 +23,10 @@ export interface MsgSource<T extends string> {
|
|
|
23
23
|
export declare type UpdateMap<TProps, TModel, TMsg extends MessageBase> = {
|
|
24
24
|
[M in TMsg as M["name"]]: (msg: M, model: TModel, props: TProps) => UpdateReturnType<TModel, TMsg>;
|
|
25
25
|
};
|
|
26
|
+
export interface ErrorMessage {
|
|
27
|
+
name: "error";
|
|
28
|
+
error: Error;
|
|
29
|
+
}
|
|
30
|
+
export declare const errorMsg: {
|
|
31
|
+
error: (error: Error) => ErrorMessage;
|
|
32
|
+
};
|
package/dist/ElmUtilities.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.handleError = void 0;
|
|
6
|
+
exports.handleError = exports.errorMsg = void 0;
|
|
7
7
|
|
|
8
8
|
var _Init = require("./Init");
|
|
9
9
|
|
|
@@ -23,4 +23,13 @@ var handleError = function handleError(error) {
|
|
|
23
23
|
};
|
|
24
24
|
|
|
25
25
|
exports.handleError = handleError;
|
|
26
|
-
|
|
26
|
+
var errorMsg = {
|
|
27
|
+
error: function error(_error) {
|
|
28
|
+
return {
|
|
29
|
+
name: "error",
|
|
30
|
+
error: _error
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
exports.errorMsg = errorMsg;
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9FbG1VdGlsaXRpZXMudHMiXSwibmFtZXMiOlsiaGFuZGxlRXJyb3IiLCJlcnJvciIsImVycm9yTWlkZGxld2FyZSIsIkxvZ2dlclNlcnZpY2UiLCJlcnJvck1zZyIsIm5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxJQUFNQSxXQUFXLEdBQUcsU0FBZEEsV0FBYyxDQUFlQyxLQUFmLEVBQWdFO0FBQ3ZGLE1BQUlDLHFCQUFKLEVBQXFCO0FBQ2pCLCtCQUFnQkQsS0FBaEI7QUFDSDs7QUFDREUsZ0dBQWVGLEtBQWYsQ0FBcUJBLEtBQXJCO0FBRUEsU0FBTyxDQUFDLEVBQUQsQ0FBUDtBQUNILENBUE07OztBQW1DQSxJQUFNRyxRQUFRLEdBQUc7QUFDcEJILEVBQUFBLEtBQUssRUFBRSxlQUFDQSxNQUFEO0FBQUEsV0FBaUM7QUFBRUksTUFBQUEsSUFBSSxFQUFFLE9BQVI7QUFBaUJKLE1BQUFBLEtBQUssRUFBTEE7QUFBakIsS0FBakM7QUFBQTtBQURhLENBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXJyb3JNaWRkbGV3YXJlLCBMb2dnZXJTZXJ2aWNlIH0gZnJvbSBcIi4vSW5pdFwiO1xuaW1wb3J0IHsgVXBkYXRlUmV0dXJuVHlwZSB9IGZyb20gXCIuL0VsbUNvbXBvbmVudFwiO1xuXG4vKipcbiAqIEhhbmRsZXMgYW4gZXJyb3IuXG4gKiBMb2dzIHRoZSBlcnJvciBpZiBhIExvZ2dlciB3YXMgc3BlY2lmaWVkLlxuICogQ2FsbHMgdGhlIGVycm9yIGhhbmRsaW5nIG1pZGRsZXdhcmUgaWYgc3BlY2lmaWVkLlxuICogQHBhcmFtIHtFcnJvcn0gZXJyb3IgVGhlIGVycm9yLlxuICovXG5leHBvcnQgY29uc3QgaGFuZGxlRXJyb3IgPSA8VE1vZGVsLCBUTXNnPihlcnJvcjogRXJyb3IpOiBVcGRhdGVSZXR1cm5UeXBlPFRNb2RlbCwgVE1zZz4gPT4ge1xuICAgIGlmIChlcnJvck1pZGRsZXdhcmUpIHtcbiAgICAgICAgZXJyb3JNaWRkbGV3YXJlKGVycm9yKTtcbiAgICB9XG4gICAgTG9nZ2VyU2VydmljZT8uZXJyb3IoZXJyb3IpO1xuXG4gICAgcmV0dXJuIFt7fV07XG59O1xuXG5leHBvcnQgdHlwZSBOdWxsYWJsZTxUPiA9IFQgfCBudWxsO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lc3NhZ2VCYXNlIHtcbiAgICBuYW1lOiBzdHJpbmcgfCBzeW1ib2wsXG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIE1zZ1NvdXJjZSB0eXBlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1zZ1NvdXJjZTxUIGV4dGVuZHMgc3RyaW5nPiB7XG4gICAgc291cmNlOiBULFxufVxuXG4vKipcbiAqIFR5cGUgZm9yIG1hcHBpbmcgbWVzc2FnZXMgdG8gZnVuY3Rpb25zLlxuICogVXNlIHRoaXMgdHlwZSB0byBjcmVhdGUgeW91ciB1cGRhdGUgbG9naWMgZm9yIHRoZSB1c2VFbG1pc2hNYXAgaG9vay5cbiAqL1xuZXhwb3J0IHR5cGUgVXBkYXRlTWFwPFRQcm9wcywgVE1vZGVsLCBUTXNnIGV4dGVuZHMgTWVzc2FnZUJhc2U+ID0ge1xuICAgIFtNIGluIFRNc2cgYXMgTVtcIm5hbWVcIl1dOiAobXNnOiBNLCBtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKSA9PiBVcGRhdGVSZXR1cm5UeXBlPFRNb2RlbCwgVE1zZz47XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEVycm9yTWVzc2FnZSB7XG4gICAgbmFtZTogXCJlcnJvclwiLFxuICAgIGVycm9yOiBFcnJvcixcbn1cblxuZXhwb3J0IGNvbnN0IGVycm9yTXNnID0ge1xuICAgIGVycm9yOiAoZXJyb3I6IEVycm9yKTogRXJyb3JNZXNzYWdlID0+ICh7IG5hbWU6IFwiZXJyb3JcIiwgZXJyb3IgfSksXG59OyJdfQ==
|
package/dist/Testing/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { MessageBase, Nullable, UpdateMap } from "../ElmUtilities";
|
|
1
2
|
import { Cmd } from "../Cmd";
|
|
2
|
-
import {
|
|
3
|
+
import { UpdateReturnType } from "../ElmComponent";
|
|
3
4
|
/**
|
|
4
5
|
* Executes a single command created by one of the ofPromise functions.
|
|
5
6
|
* @param cmd The command to process.
|
|
@@ -18,3 +19,4 @@ export declare function getOfMsgParams<TMsg>(cmd?: Cmd<TMsg>): TMsg[];
|
|
|
18
19
|
* @returns The array of processed messages.
|
|
19
20
|
*/
|
|
20
21
|
export declare function execCmd<TMsg>(cmd?: Cmd<TMsg>): Promise<Nullable<TMsg>[]>;
|
|
22
|
+
export declare function getUpdateFn<TProps, TModel, TMessage extends MessageBase>(updateMap: UpdateMap<TProps, TModel, TMessage>): (msg: TMessage, model: TModel, props: TProps) => UpdateReturnType<TModel, TMessage>;
|
package/dist/Testing/index.js
CHANGED
|
@@ -5,8 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.execCmd = execCmd;
|
|
7
7
|
exports.getOfMsgParams = getOfMsgParams;
|
|
8
|
+
exports.getUpdateFn = getUpdateFn;
|
|
8
9
|
exports.runSingleOfPromiseCmd = runSingleOfPromiseCmd;
|
|
9
10
|
|
|
11
|
+
var _useElmish = require("../useElmish");
|
|
12
|
+
|
|
10
13
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
11
14
|
|
|
12
15
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
@@ -136,4 +139,10 @@ function _execCmd() {
|
|
|
136
139
|
}));
|
|
137
140
|
return _execCmd.apply(this, arguments);
|
|
138
141
|
}
|
|
139
|
-
|
|
142
|
+
|
|
143
|
+
function getUpdateFn(updateMap) {
|
|
144
|
+
return function (msg, model, props) {
|
|
145
|
+
return (0, _useElmish.callUpdateMap)(updateMap, msg, model, props);
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UZXN0aW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbInJ1blNpbmdsZU9mUHJvbWlzZUNtZCIsImNtZCIsIlByb21pc2UiLCJyZXNvbHZlIiwiZGlzcGF0Y2giLCJnZXRPZk1zZ1BhcmFtcyIsIm1zZ05hbWVzIiwibXNnIiwicHVzaCIsIm1hcCIsImN1cnJlbnRDbWQiLCJleGVjQ21kIiwiY2FsbGVycyIsInJlamVjdCIsImVycm9yIiwiYWxsIiwicmVzdWx0cyIsImdldFVwZGF0ZUZuIiwidXBkYXRlTWFwIiwibW9kZWwiLCJwcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUNBOzs7Ozs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO1NBQ3NCQSxxQjs7O0FBUXRCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7bUZBWk8saUJBQTRDQyxHQUE1QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsNkNBQ0ksSUFBSUMsT0FBSixDQUFrQixVQUFBQyxPQUFPLEVBQUk7QUFDaEMsa0JBQU1DLFFBQVEsR0FBRyxTQUFYQSxRQUFXO0FBQUEsdUJBQVlELE9BQU8sRUFBbkI7QUFBQSxlQUFqQjs7QUFFQUYsY0FBQUEsR0FBRyxDQUFDLENBQUQsQ0FBSCxDQUFPRyxRQUFQO0FBQ0gsYUFKTSxDQURKOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEc7Ozs7QUFhQSxTQUFTQyxjQUFULENBQStCSixHQUEvQixFQUF5RDtBQUM1RCxNQUFNSyxRQUFpQixHQUFHLEVBQTFCOztBQUVBLE1BQU1GLFFBQVEsR0FBRyxTQUFYQSxRQUFXLENBQUNHLEdBQUQsRUFBcUI7QUFDbENELElBQUFBLFFBQVEsQ0FBQ0UsSUFBVCxDQUFjRCxHQUFkO0FBQ0gsR0FGRDs7QUFJQU4sRUFBQUEsR0FBRyxTQUFILElBQUFBLEdBQUcsV0FBSCxZQUFBQSxHQUFHLENBQUVRLEdBQUwsQ0FBUyxVQUFBQyxVQUFVO0FBQUEsV0FBSUEsVUFBVSxDQUFDTixRQUFELENBQWQ7QUFBQSxHQUFuQjtBQUVBLFNBQU9FLFFBQVA7QUFDSDtBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztTQUNzQkssTzs7Ozs7cUVBQWYsa0JBQThCVixHQUE5QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxnQkFDRUEsR0FERjtBQUFBO0FBQUE7QUFBQTs7QUFBQSw4Q0FFUSxFQUZSOztBQUFBO0FBS0dXLFlBQUFBLE9BTEgsR0FLYVgsR0FBRyxDQUFDUSxHQUFKO0FBQUEsaUZBQVEsa0JBQU1DLFVBQU47QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLDBEQUFvQixJQUFJUixPQUFKLENBQTRCLFVBQUNDLE9BQUQsRUFBVVUsTUFBVixFQUFxQjtBQUN6Riw4QkFBTVQsUUFBUSxHQUFHLFNBQVhBLFFBQVcsQ0FBQ0csR0FBRDtBQUFBLG1DQUFxQkosT0FBTyxDQUFDSSxHQUFELENBQTVCO0FBQUEsMkJBQWpCOztBQUVBRywwQkFBQUEsVUFBVSxDQUFDTixRQUFELEVBQVcsVUFBQVUsS0FBSyxFQUFJO0FBQzFCLGdDQUFJQSxLQUFKLEVBQVc7QUFDUEQsOEJBQUFBLE1BQU0sQ0FBQ0MsS0FBRCxDQUFOO0FBQ0gsNkJBRkQsTUFFTztBQUNIWCw4QkFBQUEsT0FBTyxDQUFDLElBQUQsQ0FBUDtBQUNIO0FBQ0osMkJBTlMsQ0FBVjtBQU9ILHlCQVYyQyxDQUFwQjs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxlQUFSOztBQUFBO0FBQUE7QUFBQTtBQUFBLGdCQUxiO0FBQUE7QUFBQSxtQkFpQm1CRCxPQUFPLENBQUNhLEdBQVIsQ0FBWUgsT0FBWixDQWpCbkI7O0FBQUE7QUFpQkdJLFlBQUFBLE9BakJIO0FBQUEsOENBbUJJQSxPQW5CSjs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHOzs7O0FBc0JBLFNBQVNDLFdBQVQsQ0FBb0VDLFNBQXBFLEVBQXlNO0FBQzVNLFNBQU8sVUFBVVgsR0FBVixFQUF5QlksS0FBekIsRUFBd0NDLEtBQXhDLEVBQTJGO0FBQzlGLFdBQU8sOEJBQWNGLFNBQWQsRUFBeUJYLEdBQXpCLEVBQThCWSxLQUE5QixFQUFxQ0MsS0FBckMsQ0FBUDtBQUNILEdBRkQ7QUFHSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lc3NhZ2VCYXNlLCBOdWxsYWJsZSwgVXBkYXRlTWFwIH0gZnJvbSBcIi4uL0VsbVV0aWxpdGllc1wiO1xuaW1wb3J0IHsgY2FsbFVwZGF0ZU1hcCB9IGZyb20gXCIuLi91c2VFbG1pc2hcIjtcbmltcG9ydCB7IENtZCB9IGZyb20gXCIuLi9DbWRcIjtcbmltcG9ydCB7IFVwZGF0ZVJldHVyblR5cGUgfSBmcm9tIFwiLi4vRWxtQ29tcG9uZW50XCI7XG5cbi8qKlxuICogRXhlY3V0ZXMgYSBzaW5nbGUgY29tbWFuZCBjcmVhdGVkIGJ5IG9uZSBvZiB0aGUgb2ZQcm9taXNlIGZ1bmN0aW9ucy5cbiAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgdG8gcHJvY2Vzcy5cbiAqIEBkZXByZWNhdGVkIFVzZSBleGVjQ21kIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5TaW5nbGVPZlByb21pc2VDbWQ8VE1zZz4gKGNtZDogQ21kPFRNc2c+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KHJlc29sdmUgPT4ge1xuICAgICAgICBjb25zdCBkaXNwYXRjaCA9ICgpOiB2b2lkID0+IHJlc29sdmUoKTtcblxuICAgICAgICBjbWRbMF0oZGlzcGF0Y2gpO1xuICAgIH0pO1xufVxuXG4vKipcbiAqIEV4dHJhY3RzIHRoZSBtZXNzYWdlcyBvdXQgb2YgYSBjb21tYW5kLlxuICogQHBhcmFtIGNtZCBUaGUgY29tbWFuZCB0byBwcm9jZXNzLlxuICogQHJldHVybnMgVGhlIGFycmF5IG9mIG1lc3NhZ2VzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0T2ZNc2dQYXJhbXM8VE1zZz4gKGNtZD86IENtZDxUTXNnPik6IFRNc2cgW10ge1xuICAgIGNvbnN0IG1zZ05hbWVzOiBUTXNnIFtdID0gW107XG5cbiAgICBjb25zdCBkaXNwYXRjaCA9IChtc2c6IFRNc2cpOiB2b2lkID0+IHtcbiAgICAgICAgbXNnTmFtZXMucHVzaChtc2cpO1xuICAgIH07XG5cbiAgICBjbWQ/Lm1hcChjdXJyZW50Q21kID0+IGN1cnJlbnRDbWQoZGlzcGF0Y2gpKTtcblxuICAgIHJldHVybiBtc2dOYW1lcztcbn1cblxuLyoqXG4gKiBFeGVjdXRlcyBhbGwgY29tbWFuZHMgYW5kIHJlc29sdmVzIHRoZSBtZXNzYWdlcy5cbiAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgdG8gcHJvY2Vzcy5cbiAqIEByZXR1cm5zIFRoZSBhcnJheSBvZiBwcm9jZXNzZWQgbWVzc2FnZXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleGVjQ21kPFRNc2c+IChjbWQ/OiBDbWQ8VE1zZz4pOiBQcm9taXNlPE51bGxhYmxlPFRNc2c+IFtdPiB7XG4gICAgaWYgKCFjbWQpIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGNvbnN0IGNhbGxlcnMgPSBjbWQubWFwKGFzeW5jIGN1cnJlbnRDbWQgPT4gbmV3IFByb21pc2U8TnVsbGFibGU8VE1zZz4+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3QgZGlzcGF0Y2ggPSAobXNnOiBUTXNnKTogdm9pZCA9PiByZXNvbHZlKG1zZyk7XG5cbiAgICAgICAgY3VycmVudENtZChkaXNwYXRjaCwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSkpO1xuXG4gICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IFByb21pc2UuYWxsKGNhbGxlcnMpO1xuXG4gICAgcmV0dXJuIHJlc3VsdHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVcGRhdGVGbjxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlQmFzZT4gKHVwZGF0ZU1hcDogVXBkYXRlTWFwPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZT4pOiAobXNnOiBUTWVzc2FnZSwgbW9kZWw6IFRNb2RlbCwgcHJvcHM6IFRQcm9wcykgPT4gVXBkYXRlUmV0dXJuVHlwZTxUTW9kZWwsIFRNZXNzYWdlPiB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChtc2c6IFRNZXNzYWdlLCBtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKTogVXBkYXRlUmV0dXJuVHlwZTxUTW9kZWwsIFRNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBjYWxsVXBkYXRlTWFwKHVwZGF0ZU1hcCwgbXNnLCBtb2RlbCwgcHJvcHMpO1xuICAgIH07XG59Il19
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Cmd, createCmd, Dispatch } from "./Cmd";
|
|
2
|
-
import { ElmComponent, UpdateReturnType } from "./ElmComponent";
|
|
3
|
-
import { handleError, MsgSource, UpdateMap } from "./ElmUtilities";
|
|
2
|
+
import { ElmComponent, InitResult, UpdateReturnType } from "./ElmComponent";
|
|
3
|
+
import { ErrorMessage, errorMsg, handleError, MsgSource, UpdateMap } from "./ElmUtilities";
|
|
4
4
|
import { init, Logger, Message } from "./Init";
|
|
5
|
-
import { useElmish } from "./useElmish";
|
|
6
|
-
|
|
7
|
-
export
|
|
8
|
-
export { init, createCmd, ElmComponent, handleError, useElmish, useElmishMap, };
|
|
5
|
+
import { SubscriptionResult, useElmish } from "./useElmish";
|
|
6
|
+
export type { Logger, Message, Cmd, Dispatch, InitResult, UpdateReturnType, SubscriptionResult, MsgSource, UpdateMap, ErrorMessage, };
|
|
7
|
+
export { init, createCmd, ElmComponent, errorMsg, handleError, useElmish, };
|
package/dist/index.js
CHANGED
|
@@ -15,6 +15,12 @@ Object.defineProperty(exports, "createCmd", {
|
|
|
15
15
|
return _Cmd.createCmd;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
+
Object.defineProperty(exports, "errorMsg", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _ElmUtilities.errorMsg;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
18
24
|
Object.defineProperty(exports, "handleError", {
|
|
19
25
|
enumerable: true,
|
|
20
26
|
get: function get() {
|
|
@@ -33,12 +39,6 @@ Object.defineProperty(exports, "useElmish", {
|
|
|
33
39
|
return _useElmish.useElmish;
|
|
34
40
|
}
|
|
35
41
|
});
|
|
36
|
-
Object.defineProperty(exports, "useElmishMap", {
|
|
37
|
-
enumerable: true,
|
|
38
|
-
get: function get() {
|
|
39
|
-
return _useElmishMap.useElmishMap;
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
42
|
|
|
43
43
|
var _Cmd = require("./Cmd");
|
|
44
44
|
|
|
@@ -49,6 +49,4 @@ var _ElmUtilities = require("./ElmUtilities");
|
|
|
49
49
|
var _Init = require("./Init");
|
|
50
50
|
|
|
51
51
|
var _useElmish = require("./useElmish");
|
|
52
|
-
|
|
53
|
-
var _useElmishMap = require("./useElmishMap");
|
|
54
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENtZCwgY3JlYXRlQ21kLCBEaXNwYXRjaCB9IGZyb20gXCIuL0NtZFwiO1xuaW1wb3J0IHsgRWxtQ29tcG9uZW50LCBVcGRhdGVSZXR1cm5UeXBlIH0gZnJvbSBcIi4vRWxtQ29tcG9uZW50XCI7XG5pbXBvcnQgeyBoYW5kbGVFcnJvciwgTXNnU291cmNlLCBVcGRhdGVNYXAgfSBmcm9tIFwiLi9FbG1VdGlsaXRpZXNcIjtcbmltcG9ydCB7IGluaXQsIExvZ2dlciwgTWVzc2FnZSB9IGZyb20gXCIuL0luaXRcIjtcbmltcG9ydCB7IHVzZUVsbWlzaCB9IGZyb20gXCIuL3VzZUVsbWlzaFwiO1xuaW1wb3J0IHsgdXNlRWxtaXNoTWFwIH0gZnJvbSBcIi4vdXNlRWxtaXNoTWFwXCI7XG5cbmV4cG9ydCB0eXBlIHtcbiAgICBMb2dnZXIsXG4gICAgTWVzc2FnZSxcbiAgICBDbWQsXG4gICAgRGlzcGF0Y2gsXG4gICAgVXBkYXRlUmV0dXJuVHlwZSxcbiAgICBNc2dTb3VyY2UsXG4gICAgVXBkYXRlTWFwLFxufTtcblxuZXhwb3J0IHtcbiAgICBpbml0LFxuICAgIGNyZWF0ZUNtZCxcbiAgICBFbG1Db21wb25lbnQsXG4gICAgaGFuZGxlRXJyb3IsXG4gICAgdXNlRWxtaXNoLFxuICAgIHVzZUVsbWlzaE1hcCxcbn07Il19
|
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENtZCwgY3JlYXRlQ21kLCBEaXNwYXRjaCB9IGZyb20gXCIuL0NtZFwiO1xuaW1wb3J0IHsgRWxtQ29tcG9uZW50LCBJbml0UmVzdWx0LCBVcGRhdGVSZXR1cm5UeXBlIH0gZnJvbSBcIi4vRWxtQ29tcG9uZW50XCI7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UsIGVycm9yTXNnLCBoYW5kbGVFcnJvciwgTXNnU291cmNlLCBVcGRhdGVNYXAgfSBmcm9tIFwiLi9FbG1VdGlsaXRpZXNcIjtcbmltcG9ydCB7IGluaXQsIExvZ2dlciwgTWVzc2FnZSB9IGZyb20gXCIuL0luaXRcIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvblJlc3VsdCwgdXNlRWxtaXNoIH0gZnJvbSBcIi4vdXNlRWxtaXNoXCI7XG5cbmV4cG9ydCB0eXBlIHtcbiAgICBMb2dnZXIsXG4gICAgTWVzc2FnZSxcbiAgICBDbWQsXG4gICAgRGlzcGF0Y2gsXG4gICAgSW5pdFJlc3VsdCxcbiAgICBVcGRhdGVSZXR1cm5UeXBlLFxuICAgIFN1YnNjcmlwdGlvblJlc3VsdCxcbiAgICBNc2dTb3VyY2UsXG4gICAgVXBkYXRlTWFwLFxuICAgIEVycm9yTWVzc2FnZSxcbn07XG5cbmV4cG9ydCB7XG4gICAgaW5pdCxcbiAgICBjcmVhdGVDbWQsXG4gICAgRWxtQ29tcG9uZW50LFxuICAgIGVycm9yTXNnLFxuICAgIGhhbmRsZUVycm9yLFxuICAgIHVzZUVsbWlzaCxcbn07Il19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Dispatch } from "../Cmd";
|
|
2
|
+
import { InitFunction, UpdateFunction } from "../ElmComponent";
|
|
3
|
+
import { MessageBase } from "../ElmUtilities";
|
|
4
|
+
/**
|
|
5
|
+
* Hook to use the Elm architecture pattern in a function component.
|
|
6
|
+
* @param props The props of the component.
|
|
7
|
+
* @param init Function to initialize the model.
|
|
8
|
+
* @param update The update function.
|
|
9
|
+
* @param name The name of the component.
|
|
10
|
+
* @returns A tuple containing the current model and the dispatcher.
|
|
11
|
+
* @example
|
|
12
|
+
* const [model, dispatch] = useElmish(props, init, update, "MyComponent");
|
|
13
|
+
* @deprecated Use `useElmish` with an options object instead.
|
|
14
|
+
*/
|
|
15
|
+
export declare function useElmish<TProps, TModel, TMsg extends MessageBase>(props: TProps, init: InitFunction<TProps, TModel, TMsg>, update: UpdateFunction<TProps, TModel, TMsg>, name: string): [TModel, Dispatch<TMsg>];
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useElmish = useElmish;
|
|
7
|
+
|
|
8
|
+
var _Init = require("../Init");
|
|
9
|
+
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
|
|
12
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
13
|
+
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
|
+
|
|
16
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
17
|
+
|
|
18
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
19
|
+
|
|
20
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
21
|
+
|
|
22
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
23
|
+
|
|
24
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
25
|
+
|
|
26
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
27
|
+
|
|
28
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Hook to use the Elm architecture pattern in a function component.
|
|
32
|
+
* @param props The props of the component.
|
|
33
|
+
* @param init Function to initialize the model.
|
|
34
|
+
* @param update The update function.
|
|
35
|
+
* @param name The name of the component.
|
|
36
|
+
* @returns A tuple containing the current model and the dispatcher.
|
|
37
|
+
* @example
|
|
38
|
+
* const [model, dispatch] = useElmish(props, init, update, "MyComponent");
|
|
39
|
+
* @deprecated Use `useElmish` with an options object instead.
|
|
40
|
+
*/
|
|
41
|
+
function useElmish(props, init, update, name) {
|
|
42
|
+
var reentered = false;
|
|
43
|
+
var buffer = [];
|
|
44
|
+
var currentModel = {};
|
|
45
|
+
|
|
46
|
+
var _useState = (0, _react.useState)(null),
|
|
47
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
48
|
+
model = _useState2[0],
|
|
49
|
+
setModel = _useState2[1];
|
|
50
|
+
|
|
51
|
+
var initializedModel = model;
|
|
52
|
+
var execCmd = (0, _react.useCallback)(function (cmd) {
|
|
53
|
+
cmd.forEach(function (call) {
|
|
54
|
+
try {
|
|
55
|
+
call(dispatch);
|
|
56
|
+
} catch (ex) {
|
|
57
|
+
_Init.LoggerService === null || _Init.LoggerService === void 0 ? void 0 : _Init.LoggerService.error(ex);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}, []);
|
|
61
|
+
var dispatch = (0, _react.useCallback)(function (msg) {
|
|
62
|
+
if (!initializedModel) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
var modelHasChanged = function modelHasChanged(updatedModel) {
|
|
67
|
+
return updatedModel !== initializedModel && Object.getOwnPropertyNames(updatedModel).length > 0;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
if (_Init.dispatchMiddleware) {
|
|
71
|
+
(0, _Init.dispatchMiddleware)(msg);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
if (reentered) {
|
|
75
|
+
buffer.push(msg);
|
|
76
|
+
} else {
|
|
77
|
+
reentered = true;
|
|
78
|
+
var nextMsg = msg;
|
|
79
|
+
var modified = false;
|
|
80
|
+
|
|
81
|
+
while (nextMsg) {
|
|
82
|
+
_Init.LoggerService === null || _Init.LoggerService === void 0 ? void 0 : _Init.LoggerService.info("Elm", "message from", name, nextMsg.name);
|
|
83
|
+
_Init.LoggerService === null || _Init.LoggerService === void 0 ? void 0 : _Init.LoggerService.debug("Elm", "message from", name, nextMsg);
|
|
84
|
+
|
|
85
|
+
try {
|
|
86
|
+
var _update = update(_objectSpread(_objectSpread({}, initializedModel), currentModel), nextMsg, props),
|
|
87
|
+
_update2 = _slicedToArray(_update, 2),
|
|
88
|
+
newModel = _update2[0],
|
|
89
|
+
cmd = _update2[1];
|
|
90
|
+
|
|
91
|
+
if (modelHasChanged(newModel)) {
|
|
92
|
+
currentModel = _objectSpread(_objectSpread({}, currentModel), newModel);
|
|
93
|
+
modified = true;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
if (cmd) {
|
|
97
|
+
execCmd(cmd);
|
|
98
|
+
}
|
|
99
|
+
} catch (ex) {
|
|
100
|
+
_Init.LoggerService === null || _Init.LoggerService === void 0 ? void 0 : _Init.LoggerService.error(ex);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
nextMsg = buffer.shift();
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
reentered = false;
|
|
107
|
+
|
|
108
|
+
if (modified) {
|
|
109
|
+
setModel(function (prevModel) {
|
|
110
|
+
var updatedModel = _objectSpread(_objectSpread({}, prevModel), currentModel);
|
|
111
|
+
|
|
112
|
+
_Init.LoggerService === null || _Init.LoggerService === void 0 ? void 0 : _Init.LoggerService.debug("Elm", "update model for", name, updatedModel);
|
|
113
|
+
return updatedModel;
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}, []);
|
|
118
|
+
|
|
119
|
+
if (!initializedModel) {
|
|
120
|
+
var _init = init(props),
|
|
121
|
+
_init2 = _slicedToArray(_init, 2),
|
|
122
|
+
initModel = _init2[0],
|
|
123
|
+
initCmd = _init2[1];
|
|
124
|
+
|
|
125
|
+
initializedModel = initModel;
|
|
126
|
+
setModel(initializedModel);
|
|
127
|
+
|
|
128
|
+
if (initCmd) {
|
|
129
|
+
execCmd(initCmd);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
return [initializedModel, dispatch];
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sZWdhY3kvdXNlRWxtaXNoLnRzIl0sIm5hbWVzIjpbInVzZUVsbWlzaCIsInByb3BzIiwiaW5pdCIsInVwZGF0ZSIsIm5hbWUiLCJyZWVudGVyZWQiLCJidWZmZXIiLCJjdXJyZW50TW9kZWwiLCJtb2RlbCIsInNldE1vZGVsIiwiaW5pdGlhbGl6ZWRNb2RlbCIsImV4ZWNDbWQiLCJjbWQiLCJmb3JFYWNoIiwiY2FsbCIsImRpc3BhdGNoIiwiZXgiLCJMb2dnZXJTZXJ2aWNlIiwiZXJyb3IiLCJtc2ciLCJtb2RlbEhhc0NoYW5nZWQiLCJ1cGRhdGVkTW9kZWwiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwibGVuZ3RoIiwiZGlzcGF0Y2hNaWRkbGV3YXJlIiwicHVzaCIsIm5leHRNc2ciLCJtb2RpZmllZCIsImluZm8iLCJkZWJ1ZyIsIm5ld01vZGVsIiwic2hpZnQiLCJwcmV2TW9kZWwiLCJpbml0TW9kZWwiLCJpbml0Q21kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQ0E7O0FBR0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNBLFNBQVQsQ0FBOERDLEtBQTlELEVBQTZFQyxJQUE3RSxFQUF1SEMsTUFBdkgsRUFBcUtDLElBQXJLLEVBQTZNO0FBQ2hOLE1BQUlDLFNBQVMsR0FBRyxLQUFoQjtBQUNBLE1BQU1DLE1BQWUsR0FBRyxFQUF4QjtBQUNBLE1BQUlDLFlBQTZCLEdBQUcsRUFBcEM7O0FBRUEsa0JBQTBCLHFCQUEyQixJQUEzQixDQUExQjtBQUFBO0FBQUEsTUFBT0MsS0FBUDtBQUFBLE1BQWNDLFFBQWQ7O0FBQ0EsTUFBSUMsZ0JBQWdCLEdBQUdGLEtBQXZCO0FBRUEsTUFBTUcsT0FBTyxHQUFHLHdCQUFZLFVBQUNDLEdBQUQsRUFBMEI7QUFDbERBLElBQUFBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLFVBQUFDLElB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IjpbImltcG9ydCB7IENtZCwgRGlzcGF0Y2ggfSBmcm9tIFwiLi4vQ21kXCI7XG5pbXBvcnQgeyBkaXNwYXRjaE1pZGRsZXdhcmUsIExvZ2dlclNlcnZpY2UgfSBmcm9tIFwiLi4vSW5pdFwiO1xuaW1wb3J0IHsgSW5pdEZ1bmN0aW9uLCBVcGRhdGVGdW5jdGlvbiB9IGZyb20gXCIuLi9FbG1Db21wb25lbnRcIjtcbmltcG9ydCB7IE1lc3NhZ2VCYXNlLCBOdWxsYWJsZSB9IGZyb20gXCIuLi9FbG1VdGlsaXRpZXNcIjtcbmltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG4vKipcbiAqIEhvb2sgdG8gdXNlIHRoZSBFbG0gYXJjaGl0ZWN0dXJlIHBhdHRlcm4gaW4gYSBmdW5jdGlvbiBjb21wb25lbnQuXG4gKiBAcGFyYW0gcHJvcHMgVGhlIHByb3BzIG9mIHRoZSBjb21wb25lbnQuXG4gKiBAcGFyYW0gaW5pdCBGdW5jdGlvbiB0byBpbml0aWFsaXplIHRoZSBtb2RlbC5cbiAqIEBwYXJhbSB1cGRhdGUgVGhlIHVwZGF0ZSBmdW5jdGlvbi5cbiAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBjb21wb25lbnQuXG4gKiBAcmV0dXJucyBBIHR1cGxlIGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgbW9kZWwgYW5kIHRoZSBkaXNwYXRjaGVyLlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IFttb2RlbCwgZGlzcGF0Y2hdID0gdXNlRWxtaXNoKHByb3BzLCBpbml0LCB1cGRhdGUsIFwiTXlDb21wb25lbnRcIik7XG4gKiBAZGVwcmVjYXRlZCBVc2UgYHVzZUVsbWlzaGAgd2l0aCBhbiBvcHRpb25zIG9iamVjdCBpbnN0ZWFkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlRWxtaXNoPFRQcm9wcywgVE1vZGVsLCBUTXNnIGV4dGVuZHMgTWVzc2FnZUJhc2U+IChwcm9wczogVFByb3BzLCBpbml0OiBJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNc2c+LCB1cGRhdGU6IFVwZGF0ZUZ1bmN0aW9uPFRQcm9wcywgVE1vZGVsLCBUTXNnPiwgbmFtZTogc3RyaW5nKTogW1RNb2RlbCwgRGlzcGF0Y2g8VE1zZz5dIHtcbiAgICBsZXQgcmVlbnRlcmVkID0gZmFsc2U7XG4gICAgY29uc3QgYnVmZmVyOiBUTXNnIFtdID0gW107XG4gICAgbGV0IGN1cnJlbnRNb2RlbDogUGFydGlhbDxUTW9kZWw+ID0ge307XG5cbiAgICBjb25zdCBbbW9kZWwsIHNldE1vZGVsXSA9IHVzZVN0YXRlPE51bGxhYmxlPFRNb2RlbD4+KG51bGwpO1xuICAgIGxldCBpbml0aWFsaXplZE1vZGVsID0gbW9kZWw7XG5cbiAgICBjb25zdCBleGVjQ21kID0gdXNlQ2FsbGJhY2soKGNtZDogQ21kPFRNc2c+KTogdm9pZCA9PiB7XG4gICAgICAgIGNtZC5mb3JFYWNoKGNhbGwgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjYWxsKGRpc3BhdGNoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uZXJyb3IoZXgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9LCBbXSk7XG5cbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUNhbGxiYWNrKChtc2c6IFRNc2cpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKCFpbml0aWFsaXplZE1vZGVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb2RlbEhhc0NoYW5nZWQgPSAodXBkYXRlZE1vZGVsOiBQYXJ0aWFsPFRNb2RlbD4pOiBib29sZWFuID0+IHVwZGF0ZWRNb2RlbCAhPT0gaW5pdGlhbGl6ZWRNb2RlbCAmJiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh1cGRhdGVkTW9kZWwpLmxlbmd0aCA+IDA7XG5cbiAgICAgICAgaWYgKGRpc3BhdGNoTWlkZGxld2FyZSkge1xuICAgICAgICAgICAgZGlzcGF0Y2hNaWRkbGV3YXJlKG1zZyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVlbnRlcmVkKSB7XG4gICAgICAgICAgICBidWZmZXIucHVzaChtc2cpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVlbnRlcmVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgbGV0IG5leHRNc2c6IFRNc2cgfCB1bmRlZmluZWQgPSBtc2c7XG4gICAgICAgICAgICBsZXQgbW9kaWZpZWQgPSBmYWxzZTtcblxuICAgICAgICAgICAgd2hpbGUgKG5leHRNc2cpIHtcbiAgICAgICAgICAgICAgICBMb2dnZXJTZXJ2aWNlPy5pbmZvKFwiRWxtXCIsIFwibWVzc2FnZSBmcm9tXCIsIG5hbWUsIG5leHRNc2cubmFtZSk7XG4gICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uZGVidWcoXCJFbG1cIiwgXCJtZXNzYWdlIGZyb21cIiwgbmFtZSwgbmV4dE1zZyk7XG5cbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBbbmV3TW9kZWwsIGNtZF0gPSB1cGRhdGUoeyAuLi5pbml0aWFsaXplZE1vZGVsLCAuLi5jdXJyZW50TW9kZWwgfSwgbmV4dE1zZywgcHJvcHMpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChtb2RlbEhhc0NoYW5nZWQobmV3TW9kZWwpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50TW9kZWwgPSB7IC4uLmN1cnJlbnRNb2RlbCwgLi4ubmV3TW9kZWwgfTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGNtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXhlY0NtZChjbWQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgTG9nZ2VyU2VydmljZT8uZXJyb3IoZXgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIG5leHRNc2cgPSBidWZmZXIuc2hpZnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlZW50ZXJlZCA9IGZhbHNlO1xuXG4gICAgICAgICAgICBpZiAobW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBzZXRNb2RlbChwcmV2TW9kZWwgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkTW9kZWwgPSB7IC4uLnByZXZNb2RlbCBhcyBUTW9kZWwsIC4uLmN1cnJlbnRNb2RlbCB9O1xuXG4gICAgICAgICAgICAgICAgICAgIExvZ2dlclNlcnZpY2U/LmRlYnVnKFwiRWxtXCIsIFwidXBkYXRlIG1vZGVsIGZvclwiLCBuYW1lLCB1cGRhdGVkTW9kZWwpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB1cGRhdGVkTW9kZWw7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LCBbXSk7XG5cbiAgICBpZiAoIWluaXRpYWxpemVkTW9kZWwpIHtcbiAgICAgICAgY29uc3QgW2luaXRNb2RlbCwgaW5pdENtZF0gPSBpbml0KHByb3BzKTtcblxuICAgICAgICBpbml0aWFsaXplZE1vZGVsID0gaW5pdE1vZGVsO1xuICAgICAgICBzZXRNb2RlbChpbml0aWFsaXplZE1vZGVsKTtcblxuICAgICAgICBpZiAoaW5pdENtZCkge1xuICAgICAgICAgICAgZXhlY0NtZChpbml0Q21kKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBbaW5pdGlhbGl6ZWRNb2RlbCwgZGlzcGF0Y2hdO1xufSJdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Dispatch } from "../Cmd";
|
|
2
|
+
import { MessageBase, UpdateMap } from "../ElmUtilities";
|
|
3
|
+
import { InitFunction } from "../ElmComponent";
|
|
4
|
+
/**
|
|
5
|
+
* Hook to use the Elm architecture pattern in a function component.
|
|
6
|
+
* @param props The props of the component.
|
|
7
|
+
* @param init Function to initialize the model.
|
|
8
|
+
* @param updateMap The update map object.
|
|
9
|
+
* @param name The name of the component.
|
|
10
|
+
* @returns A tuple containing the current model and the dispatcher.
|
|
11
|
+
* @example
|
|
12
|
+
* const [model, dispatch] = useElmishMap(props, init, updateMap, "MyComponent");
|
|
13
|
+
* @deprecated Use `useElmish` with an options object instead.
|
|
14
|
+
*/
|
|
15
|
+
export declare function useElmishMap<TProps, TModel, TMessage extends MessageBase>(props: TProps, init: InitFunction<TProps, TModel, TMessage>, updateMap: UpdateMap<TProps, TModel, TMessage>, name: string): [TModel, Dispatch<TMessage>];
|