react-elmish 9.2.0 → 9.3.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/dist/Types.d.ts +7 -4
- package/dist/Types.js +1 -1
- package/dist/createCallBase.d.ts +2 -2
- package/dist/createCallBase.js +7 -4
- package/package.json +2 -2
package/dist/Types.d.ts
CHANGED
|
@@ -28,12 +28,13 @@ type InitFunction<TProps, TModel, TMessage> = (props: TProps) => InitResult<TMod
|
|
|
28
28
|
*/
|
|
29
29
|
type UpdateReturnType<TModel, TMessage> = [Partial<TModel>, ...(Cmd<TMessage> | undefined)[]];
|
|
30
30
|
type DeferFunction<TModel, TMessage> = (model: Partial<TModel>, ...commands: (Cmd<TMessage> | undefined)[]) => void;
|
|
31
|
+
type CallBaseFunction<TModel, TProps, TMessage> = (fn: (msg: TMessage, model: TModel, props: TProps, options: UpdateFunctionOptions<TProps, TModel, TMessage>) => UpdateReturnType<TModel, Message>) => UpdateReturnType<TModel, TMessage>;
|
|
31
32
|
type UpdateMapFunction<TProps, TModel, TMessage> = (msg: TMessage, model: TModel, props: TProps, options: UpdateFunctionOptions<TProps, TModel, TMessage>) => UpdateReturnType<TModel, TMessage>;
|
|
32
33
|
interface UpdateFunctionOptions<TProps, TModel, TMessage> {
|
|
33
34
|
defer: DeferFunction<TModel, TMessage>;
|
|
34
|
-
callBase:
|
|
35
|
+
callBase: CallBaseFunction<TModel, TProps, TMessage>;
|
|
35
36
|
}
|
|
36
|
-
type UpdateFunction<TProps, TModel, TMessage> = (model: TModel, msg: TMessage, props: TProps, options: UpdateFunctionOptions<TProps, TModel, TMessage>) => UpdateReturnType<TModel, TMessage>;
|
|
37
|
+
type UpdateFunction<TProps, TModel, TMessage extends Message> = (model: TModel, msg: TMessage, props: TProps, options: UpdateFunctionOptions<TProps, TModel, TMessage>) => UpdateReturnType<TModel, TMessage>;
|
|
37
38
|
/**
|
|
38
39
|
* Type for mapping messages to functions.
|
|
39
40
|
* Use this type to create your update logic for the useElmish hook.
|
|
@@ -41,6 +42,8 @@ type UpdateFunction<TProps, TModel, TMessage> = (model: TModel, msg: TMessage, p
|
|
|
41
42
|
type UpdateMap<TProps, TModel, TMessage extends Message> = {
|
|
42
43
|
[TMessageName in TMessage["name"]]: (msg: TMessage & {
|
|
43
44
|
name: TMessageName;
|
|
44
|
-
}, model: TModel, props: TProps, options: UpdateFunctionOptions<TProps, TModel, TMessage
|
|
45
|
+
}, model: TModel, props: TProps, options: UpdateFunctionOptions<TProps, TModel, TMessage & {
|
|
46
|
+
name: TMessageName;
|
|
47
|
+
}>) => UpdateReturnType<TModel, TMessage>;
|
|
45
48
|
};
|
|
46
|
-
export type { Cmd, DeferFunction, Dispatch, FallbackHandler, InitFunction, InitResult, Message, MsgSource, Nullable, Sub, UpdateFunction, UpdateFunctionOptions, UpdateMap, UpdateMapFunction, UpdateReturnType, };
|
|
49
|
+
export type { CallBaseFunction, Cmd, DeferFunction, Dispatch, FallbackHandler, InitFunction, InitResult, Message, MsgSource, Nullable, Sub, UpdateFunction, UpdateFunctionOptions, UpdateMap, UpdateMapFunction, UpdateReturnType, };
|
package/dist/Types.js
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL1R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbInR5cGUgTnVsbGFibGU8VFR5cGU+ID0gVFR5cGUgfCBudWxsO1xuXG5pbnRlcmZhY2UgTWVzc2FnZSB7XG5cdG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUeXBlIG9mIHRoZSBkaXNwYXRjaCBmdW5jdGlvbi5cbiAqL1xudHlwZSBEaXNwYXRjaDxUTWVzc2FnZT4gPSAobXNnOiBUTWVzc2FnZSkgPT4gdm9pZDtcblxudHlwZSBGYWxsYmFja0hhbmRsZXIgPSAoZXJyb3I/OiBFcnJvcikgPT4gdm9pZDtcbnR5cGUgU3ViPFRNc2c+ID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTXNnPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpID0+IHZvaWQ7XG5cbi8qKlxuICogVHlwZSBvZiBhIGNvbW1hbmQuXG4gKi9cbnR5cGUgQ21kPFRNZXNzYWdlPiA9IFN1YjxUTWVzc2FnZT5bXTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgTXNnU291cmNlIHR5cGUuXG4gKi9cbmludGVyZmFjZSBNc2dTb3VyY2U8VFNvdXJjZSBleHRlbmRzIHN0cmluZz4ge1xuXHRzb3VyY2U6IFRTb3VyY2U7XG59XG5cbi8qKlxuICogVGhlIHJldHVybiB0eXBlIG9mIHRoZSBgaW5pdGAgZnVuY3Rpb24uXG4gKi9cbnR5cGUgSW5pdFJlc3VsdDxUTW9kZWwsIFRNZXNzYWdlPiA9IFtUTW9kZWwsIC4uLihDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkKVtdXTtcblxudHlwZSBJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiA9IChwcm9wczogVFByb3BzKSA9PiBJbml0UmVzdWx0PFRNb2RlbCwgVE1lc3NhZ2U+O1xuXG4vKipcbiAqIFR5cGUgZm9yIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGB1cGRhdGVgIGZ1bmN0aW9uLlxuICovXG50eXBlIFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT4gPSBbUGFydGlhbDxUTW9kZWw+LCAuLi4oQ21kPFRNZXNzYWdlPiB8IHVuZGVmaW5lZClbXV07XG5cbnR5cGUgRGVmZXJGdW5jdGlvbjxUTW9kZWwsIFRNZXNzYWdlPiA9IChtb2RlbDogUGFydGlhbDxUTW9kZWw+LCAuLi5jb21tYW5kczogKENtZDxUTWVzc2FnZT4gfCB1bmRlZmluZWQpW10pID0+
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL1R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbInR5cGUgTnVsbGFibGU8VFR5cGU+ID0gVFR5cGUgfCBudWxsO1xuXG5pbnRlcmZhY2UgTWVzc2FnZSB7XG5cdG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUeXBlIG9mIHRoZSBkaXNwYXRjaCBmdW5jdGlvbi5cbiAqL1xudHlwZSBEaXNwYXRjaDxUTWVzc2FnZT4gPSAobXNnOiBUTWVzc2FnZSkgPT4gdm9pZDtcblxudHlwZSBGYWxsYmFja0hhbmRsZXIgPSAoZXJyb3I/OiBFcnJvcikgPT4gdm9pZDtcbnR5cGUgU3ViPFRNc2c+ID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTXNnPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpID0+IHZvaWQ7XG5cbi8qKlxuICogVHlwZSBvZiBhIGNvbW1hbmQuXG4gKi9cbnR5cGUgQ21kPFRNZXNzYWdlPiA9IFN1YjxUTWVzc2FnZT5bXTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgTXNnU291cmNlIHR5cGUuXG4gKi9cbmludGVyZmFjZSBNc2dTb3VyY2U8VFNvdXJjZSBleHRlbmRzIHN0cmluZz4ge1xuXHRzb3VyY2U6IFRTb3VyY2U7XG59XG5cbi8qKlxuICogVGhlIHJldHVybiB0eXBlIG9mIHRoZSBgaW5pdGAgZnVuY3Rpb24uXG4gKi9cbnR5cGUgSW5pdFJlc3VsdDxUTW9kZWwsIFRNZXNzYWdlPiA9IFtUTW9kZWwsIC4uLihDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkKVtdXTtcblxudHlwZSBJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiA9IChwcm9wczogVFByb3BzKSA9PiBJbml0UmVzdWx0PFRNb2RlbCwgVE1lc3NhZ2U+O1xuXG4vKipcbiAqIFR5cGUgZm9yIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGB1cGRhdGVgIGZ1bmN0aW9uLlxuICovXG50eXBlIFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT4gPSBbUGFydGlhbDxUTW9kZWw+LCAuLi4oQ21kPFRNZXNzYWdlPiB8IHVuZGVmaW5lZClbXV07XG5cbnR5cGUgRGVmZXJGdW5jdGlvbjxUTW9kZWwsIFRNZXNzYWdlPiA9IChtb2RlbDogUGFydGlhbDxUTW9kZWw+LCAuLi5jb21tYW5kczogKENtZDxUTWVzc2FnZT4gfCB1bmRlZmluZWQpW10pID0+IHZvaWQ7XG50eXBlIENhbGxCYXNlRnVuY3Rpb248VE1vZGVsLCBUUHJvcHMsIFRNZXNzYWdlPiA9IChcblx0Zm46IChcblx0XHRtc2c6IFRNZXNzYWdlLFxuXHRcdG1vZGVsOiBUTW9kZWwsXG5cdFx0cHJvcHM6IFRQcm9wcyxcblx0XHRvcHRpb25zOiBVcGRhdGVGdW5jdGlvbk9wdGlvbnM8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPixcblx0KSA9PiBVcGRhdGVSZXR1cm5UeXBlPFRNb2RlbCwgTWVzc2FnZT4sXG4pID0+IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT47XG5cbnR5cGUgVXBkYXRlTWFwRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiA9IChcblx0bXNnOiBUTWVzc2FnZSxcblx0bW9kZWw6IFRNb2RlbCxcblx0cHJvcHM6IFRQcm9wcyxcblx0b3B0aW9uczogVXBkYXRlRnVuY3Rpb25PcHRpb25zPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZT4sXG4pID0+IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT47XG5cbmludGVyZmFjZSBVcGRhdGVGdW5jdGlvbk9wdGlvbnM8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB7XG5cdGRlZmVyOiBEZWZlckZ1bmN0aW9uPFRNb2RlbCwgVE1lc3NhZ2U+O1xuXHRjYWxsQmFzZTogQ2FsbEJhc2VGdW5jdGlvbjxUTW9kZWwsIFRQcm9wcywgVE1lc3NhZ2U+O1xufVxuXG50eXBlIFVwZGF0ZUZ1bmN0aW9uPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+ID0gKFxuXHRtb2RlbDogVE1vZGVsLFxuXHRtc2c6IFRNZXNzYWdlLFxuXHRwcm9wczogVFByb3BzLFxuXHRvcHRpb25zOiBVcGRhdGVGdW5jdGlvbk9wdGlvbnM8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPixcbikgPT4gVXBkYXRlUmV0dXJuVHlwZTxUTW9kZWwsIFRNZXNzYWdlPjtcblxuLyoqXG4gKiBUeXBlIGZvciBtYXBwaW5nIG1lc3NhZ2VzIHRvIGZ1bmN0aW9ucy5cbiAqIFVzZSB0aGlzIHR5cGUgdG8gY3JlYXRlIHlvdXIgdXBkYXRlIGxvZ2ljIGZvciB0aGUgdXNlRWxtaXNoIGhvb2suXG4gKi9cbnR5cGUgVXBkYXRlTWFwPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+ID0ge1xuXHRbVE1lc3NhZ2VOYW1lIGluIFRNZXNzYWdlW1wibmFtZVwiXV06IChcblx0XHRtc2c6IFRNZXNzYWdlICYgeyBuYW1lOiBUTWVzc2FnZU5hbWUgfSxcblx0XHRtb2RlbDogVE1vZGVsLFxuXHRcdHByb3BzOiBUUHJvcHMsXG5cdFx0b3B0aW9uczogVXBkYXRlRnVuY3Rpb25PcHRpb25zPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZSAmIHsgbmFtZTogVE1lc3NhZ2VOYW1lIH0+LFxuXHQpID0+IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT47XG59O1xuXG5leHBvcnQgdHlwZSB7XG5cdENhbGxCYXNlRnVuY3Rpb24sXG5cdENtZCxcblx0RGVmZXJGdW5jdGlvbixcblx0RGlzcGF0Y2gsXG5cdEZhbGxiYWNrSGFuZGxlcixcblx0SW5pdEZ1bmN0aW9uLFxuXHRJbml0UmVzdWx0LFxuXHRNZXNzYWdlLFxuXHRNc2dTb3VyY2UsXG5cdE51bGxhYmxlLFxuXHRTdWIsXG5cdFVwZGF0ZUZ1bmN0aW9uLFxuXHRVcGRhdGVGdW5jdGlvbk9wdGlvbnMsXG5cdFVwZGF0ZU1hcCxcblx0VXBkYXRlTWFwRnVuY3Rpb24sXG5cdFVwZGF0ZVJldHVyblR5cGUsXG59O1xuIl0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119
|
package/dist/createCallBase.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { Message, UpdateFunctionOptions
|
|
2
|
-
declare function createCallBase<TProps, TModel, TMessage extends Message>(msg: TMessage, model: TModel, props: TProps, options: Omit<UpdateFunctionOptions<TProps, TModel, TMessage>, "callBase">):
|
|
1
|
+
import type { CallBaseFunction, Message, UpdateFunctionOptions } from "./Types";
|
|
2
|
+
declare function createCallBase<TProps, TModel, TMessage extends Message>(msg: TMessage, model: TModel, props: TProps, options: Omit<UpdateFunctionOptions<TProps, TModel, TMessage>, "callBase">): CallBaseFunction<TModel, TProps, TMessage>;
|
|
3
3
|
export { createCallBase };
|
package/dist/createCallBase.js
CHANGED
|
@@ -12,10 +12,13 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
|
|
|
12
12
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
13
13
|
function createCallBase(msg, model, props, options) {
|
|
14
14
|
var _callBase = function callBase(fn) {
|
|
15
|
-
return
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
return (
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- The current TMessage must be extended from Message
|
|
17
|
+
fn(msg, model, props, _objectSpread(_objectSpread({}, options), {}, {
|
|
18
|
+
callBase: _callBase
|
|
19
|
+
}))
|
|
20
|
+
);
|
|
18
21
|
};
|
|
19
22
|
return _callBase;
|
|
20
23
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDYWxsQmFzZSIsIm1zZyIsIm1vZGVsIiwicHJvcHMiLCJvcHRpb25zIiwiY2FsbEJhc2UiLCJmbiIsIl9vYmplY3RTcHJlYWQiXSwic291cmNlcyI6WyIuLi9zcmMvY3JlYXRlQ2FsbEJhc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDYWxsQmFzZUZ1bmN0aW9uLCBNZXNzYWdlLCBVcGRhdGVGdW5jdGlvbk9wdGlvbnMsIFVwZGF0ZVJldHVyblR5cGUgfSBmcm9tIFwiLi9UeXBlc1wiO1xuXG5mdW5jdGlvbiBjcmVhdGVDYWxsQmFzZTxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPihcblx0bXNnOiBUTWVzc2FnZSxcblx0bW9kZWw6IFRNb2RlbCxcblx0cHJvcHM6IFRQcm9wcyxcblx0b3B0aW9uczogT21pdDxVcGRhdGVGdW5jdGlvbk9wdGlvbnM8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiwgXCJjYWxsQmFzZVwiPixcbik6IENhbGxCYXNlRnVuY3Rpb248VE1vZGVsLCBUUHJvcHMsIFRNZXNzYWdlPiB7XG5cdGNvbnN0IGNhbGxCYXNlOiBDYWxsQmFzZUZ1bmN0aW9uPFRNb2RlbCwgVFByb3BzLCBUTWVzc2FnZT4gPSAoZm4pID0+XG5cdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtdHlwZS1hc3NlcnRpb24gLS0gVGhlIGN1cnJlbnQgVE1lc3NhZ2UgbXVzdCBiZSBleHRlbmRlZCBmcm9tIE1lc3NhZ2Vcblx0XHRmbihtc2csIG1vZGVsLCBwcm9wcywgeyAuLi5vcHRpb25zLCBjYWxsQmFzZSB9KSBhcyBVcGRhdGVSZXR1cm5UeXBlPFRNb2RlbCwgVE1lc3NhZ2U+O1xuXG5cdHJldHVybiBjYWxsQmFzZTtcbn1cblxuZXhwb3J0IHsgY3JlYXRlQ2FsbEJhc2UgfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRUEsU0FBU0EsY0FBY0EsQ0FDdEJDLEdBQWEsRUFDYkMsS0FBYSxFQUNiQyxLQUFhLEVBQ2JDLE9BQTBFLEVBQzdCO0VBQzdDLElBQU1DLFNBQW9ELEdBQUcsU0FBdkRBLFFBQW9EQSxDQUFJQyxFQUFFO0lBQUE7TUFDL0Q7TUFDQUEsRUFBRSxDQUFDTCxHQUFHLEVBQUVDLEtBQUssRUFBRUMsS0FBSyxFQUFBSSxhQUFBLENBQUFBLGFBQUEsS0FBT0gsT0FBTztRQUFFQyxRQUFRLEVBQVJBO01BQVEsRUFBRTtJQUFDO0VBQUEsQ0FBc0M7RUFFdEYsT0FBT0EsU0FBUTtBQUNoQiIsImlnbm9yZUxpc3QiOltdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-elmish",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.3.0",
|
|
4
4
|
"description": "Elmish for React using Typescript",
|
|
5
5
|
"author": "atheck",
|
|
6
6
|
"license": "MIT",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"semantic-release": "semantic-release"
|
|
16
16
|
},
|
|
17
17
|
"peerDependencies": {
|
|
18
|
-
"react": ">=16.8.0 <
|
|
18
|
+
"react": ">=16.8.0 <20"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"@babel/cli": "7.26.4",
|