@signalwire/js 3.7.1-dev.202201131750.6d234cc.0 → 3.8.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/core/src/BaseComponent.d.ts +29 -31
- package/dist/core/src/BaseComponent.d.ts.map +1 -1
- package/dist/core/src/BaseJWTSession.d.ts +1 -0
- package/dist/core/src/BaseJWTSession.d.ts.map +1 -1
- package/dist/core/src/BaseSession.d.ts +1 -1
- package/dist/core/src/BaseSession.d.ts.map +1 -1
- package/dist/core/src/chat/BaseChat.d.ts +4 -3
- package/dist/core/src/chat/BaseChat.d.ts.map +1 -1
- package/dist/core/src/chat/ChatMember.d.ts +6 -0
- package/dist/core/src/chat/ChatMember.d.ts.map +1 -1
- package/dist/core/src/chat/ChatMessage.d.ts +9 -0
- package/dist/core/src/chat/ChatMessage.d.ts.map +1 -1
- package/dist/core/src/chat/index.d.ts +1 -0
- package/dist/core/src/chat/index.d.ts.map +1 -1
- package/dist/core/src/chat/methods.d.ts +18 -15
- package/dist/core/src/chat/methods.d.ts.map +1 -1
- package/dist/core/src/chat/workers.d.ts +2 -1
- package/dist/core/src/chat/workers.d.ts.map +1 -1
- package/dist/core/src/index.d.ts +3 -3
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/internal/BaseBackendSession.d.ts.map +1 -1
- package/dist/core/src/redux/actions.d.ts +17 -14
- package/dist/core/src/redux/actions.d.ts.map +1 -1
- package/dist/core/src/redux/features/component/componentSlice.d.ts +3952 -10
- package/dist/core/src/redux/features/component/componentSlice.d.ts.map +1 -1
- package/dist/core/src/redux/features/executeQueue/executeQueueSlice.d.ts +44 -7
- package/dist/core/src/redux/features/executeQueue/executeQueueSlice.d.ts.map +1 -1
- package/dist/core/src/redux/features/pubSub/pubSubSaga.d.ts.map +1 -1
- package/dist/core/src/redux/features/session/sessionSlice.d.ts +74 -8
- package/dist/core/src/redux/features/session/sessionSlice.d.ts.map +1 -1
- package/dist/core/src/redux/index.d.ts +9 -25
- package/dist/core/src/redux/index.d.ts.map +1 -1
- package/dist/core/src/redux/interfaces.d.ts +5 -4
- package/dist/core/src/redux/interfaces.d.ts.map +1 -1
- package/dist/core/src/redux/rootReducer.d.ts +417 -3
- package/dist/core/src/redux/rootReducer.d.ts.map +1 -1
- package/dist/core/src/redux/rootSaga.d.ts +23 -5
- package/dist/core/src/redux/rootSaga.d.ts.map +1 -1
- package/dist/core/src/redux/toolkit/configureStore.d.ts +77 -0
- package/dist/core/src/redux/toolkit/configureStore.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/createAction.d.ts +180 -0
- package/dist/core/src/redux/toolkit/createAction.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/createReducer.d.ts +42 -0
- package/dist/core/src/redux/toolkit/createReducer.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/createSlice.d.ts +142 -0
- package/dist/core/src/redux/toolkit/createSlice.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/devtoolsExtension.d.ts +185 -0
- package/dist/core/src/redux/toolkit/devtoolsExtension.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/getDefaultMiddleware.d.ts +12 -0
- package/dist/core/src/redux/toolkit/getDefaultMiddleware.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/index.d.ts +13 -0
- package/dist/core/src/redux/toolkit/index.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/isPlainObject.d.ts +12 -0
- package/dist/core/src/redux/toolkit/isPlainObject.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/mapBuilders.d.ts +38 -0
- package/dist/core/src/redux/toolkit/mapBuilders.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/tsHelpers.d.ts +51 -0
- package/dist/core/src/redux/toolkit/tsHelpers.d.ts.map +1 -0
- package/dist/core/src/redux/toolkit/utils.d.ts +11 -0
- package/dist/core/src/redux/toolkit/utils.d.ts.map +1 -0
- package/dist/core/src/redux/utils/createDestroyableSlice.d.ts +3 -2
- package/dist/core/src/redux/utils/createDestroyableSlice.d.ts.map +1 -1
- package/dist/core/src/rooms/methods.d.ts +31 -21
- package/dist/core/src/rooms/methods.d.ts.map +1 -1
- package/dist/core/src/testUtils.d.ts +8 -25
- package/dist/core/src/testUtils.d.ts.map +1 -1
- package/dist/core/src/types/chat.d.ts +12 -12
- package/dist/core/src/types/chat.d.ts.map +1 -1
- package/dist/core/src/types/utils.d.ts +7 -0
- package/dist/core/src/types/utils.d.ts.map +1 -1
- package/dist/core/src/types/videoMember.d.ts +10 -1
- package/dist/core/src/types/videoMember.d.ts.map +1 -1
- package/dist/core/src/utils/constants.d.ts +1 -0
- package/dist/core/src/utils/constants.d.ts.map +1 -1
- package/dist/core/src/utils/index.d.ts +4 -1
- package/dist/core/src/utils/index.d.ts.map +1 -1
- package/dist/core/src/utils/interfaces.d.ts +19 -6
- package/dist/core/src/utils/interfaces.d.ts.map +1 -1
- package/dist/index.esm.js +179 -49
- package/dist/index.esm.js.map +3 -3
- package/dist/index.js +223 -100
- package/dist/index.js.map +3 -3
- package/dist/index.umd.js +2 -2
- package/dist/index.umd.js.map +1 -1
- package/dist/js/src/BaseRoomSession.d.ts +7 -0
- package/dist/js/src/BaseRoomSession.d.ts.map +1 -1
- package/dist/js/src/JWTSession.d.ts.map +1 -1
- package/dist/js/src/RoomSession.d.ts.map +1 -1
- package/dist/js/src/RoomSession.docs.d.ts +9 -1
- package/dist/js/src/RoomSession.docs.d.ts.map +1 -1
- package/dist/js/src/chat/Client.d.ts +37 -3
- package/dist/js/src/chat/Client.d.ts.map +1 -1
- package/dist/js/src/chat/Client.docs.d.ts +238 -0
- package/dist/js/src/chat/Client.docs.d.ts.map +1 -0
- package/dist/js/src/chat/index.d.ts +5 -0
- package/dist/js/src/chat/index.d.ts.map +1 -1
- package/dist/js/src/features/actions.d.ts +1 -1
- package/dist/js/src/features/actions.d.ts.map +1 -1
- package/dist/js/src/index.d.ts +5 -2
- package/dist/js/src/index.d.ts.map +1 -1
- package/dist/js/src/testUtils.d.ts +16 -50
- package/dist/js/src/testUtils.d.ts.map +1 -1
- package/dist/js/src/utils/interfaces.d.ts +16 -2
- package/dist/js/src/utils/interfaces.d.ts.map +1 -1
- package/dist/js/src/video/memberListUpdatedWorker.d.ts +14 -0
- package/dist/js/src/video/memberListUpdatedWorker.d.ts.map +1 -0
- package/dist/js/src/video/workers.d.ts +2 -0
- package/dist/js/src/video/workers.d.ts.map +1 -0
- package/dist/js/tsconfig.build.tsbuildinfo +1 -1
- package/dist/webrtc/src/BaseConnection.d.ts +7 -0
- package/dist/webrtc/src/BaseConnection.d.ts.map +1 -1
- package/dist/webrtc/src/RTCPeer.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/BaseRoomSession.test.ts +2 -2
- package/src/BaseRoomSession.ts +15 -0
- package/src/RoomSession.docs.ts +10 -1
- package/src/RoomSession.ts +16 -4
- package/src/chat/Client.docs.ts +259 -0
- package/src/chat/Client.test.ts +4 -4
- package/src/chat/Client.ts +39 -3
- package/src/chat/index.ts +10 -0
- package/src/index.ts +6 -3
- package/src/utils/interfaces.ts +22 -2
- package/src/video/memberListUpdatedWorker.ts +217 -0
- package/src/video/workers.ts +1 -0
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import type { Action } from 'redux';
|
|
2
|
+
import type { IsUnknownOrNonInferrable, IfMaybeUndefined, IfVoid, IsAny } from './tsHelpers';
|
|
3
|
+
/**
|
|
4
|
+
* An action with a string type and an associated payload. This is the
|
|
5
|
+
* type of action returned by `createAction()` action creators.
|
|
6
|
+
*
|
|
7
|
+
* @template P The type of the action's payload.
|
|
8
|
+
* @template T the type used for the action type.
|
|
9
|
+
* @template M The type of the action's meta (optional)
|
|
10
|
+
* @template E The type of the action's error (optional)
|
|
11
|
+
*
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
export declare type PayloadAction<P = void, T extends string = string, M = never, E = never> = {
|
|
15
|
+
payload: P;
|
|
16
|
+
type: T;
|
|
17
|
+
} & ([M] extends [never] ? {} : {
|
|
18
|
+
meta: M;
|
|
19
|
+
}) & ([E] extends [never] ? {} : {
|
|
20
|
+
error: E;
|
|
21
|
+
});
|
|
22
|
+
/**
|
|
23
|
+
* A "prepare" method to be used as the second parameter of `createAction`.
|
|
24
|
+
* Takes any number of arguments and returns a Flux Standard Action without
|
|
25
|
+
* type (will be added later) that *must* contain a payload (might be undefined).
|
|
26
|
+
*
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
export declare type PrepareAction<P> = ((...args: any[]) => {
|
|
30
|
+
payload: P;
|
|
31
|
+
}) | ((...args: any[]) => {
|
|
32
|
+
payload: P;
|
|
33
|
+
meta: any;
|
|
34
|
+
}) | ((...args: any[]) => {
|
|
35
|
+
payload: P;
|
|
36
|
+
error: any;
|
|
37
|
+
}) | ((...args: any[]) => {
|
|
38
|
+
payload: P;
|
|
39
|
+
meta: any;
|
|
40
|
+
error: any;
|
|
41
|
+
});
|
|
42
|
+
/**
|
|
43
|
+
* Internal version of `ActionCreatorWithPreparedPayload`. Not to be used externally.
|
|
44
|
+
*
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
export declare type _ActionCreatorWithPreparedPayload<PA extends PrepareAction<any> | void, T extends string = string> = PA extends PrepareAction<infer P> ? ActionCreatorWithPreparedPayload<Parameters<PA>, P, T, ReturnType<PA> extends {
|
|
48
|
+
error: infer E;
|
|
49
|
+
} ? E : never, ReturnType<PA> extends {
|
|
50
|
+
meta: infer M;
|
|
51
|
+
} ? M : never> : void;
|
|
52
|
+
/**
|
|
53
|
+
* Basic type for all action creators.
|
|
54
|
+
*
|
|
55
|
+
* @inheritdoc {redux#ActionCreator}
|
|
56
|
+
*/
|
|
57
|
+
interface BaseActionCreator<P, T extends string, M = never, E = never> {
|
|
58
|
+
type: T;
|
|
59
|
+
match: (action: Action<unknown>) => action is PayloadAction<P, T, M, E>;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* An action creator that takes multiple arguments that are passed
|
|
63
|
+
* to a `PrepareAction` method to create the final Action.
|
|
64
|
+
* @typeParam Args arguments for the action creator function
|
|
65
|
+
* @typeParam P `payload` type
|
|
66
|
+
* @typeParam T `type` name
|
|
67
|
+
* @typeParam E optional `error` type
|
|
68
|
+
* @typeParam M optional `meta` type
|
|
69
|
+
*
|
|
70
|
+
* @inheritdoc {redux#ActionCreator}
|
|
71
|
+
*
|
|
72
|
+
* @public
|
|
73
|
+
*/
|
|
74
|
+
export interface ActionCreatorWithPreparedPayload<Args extends unknown[], P, T extends string = string, E = never, M = never> extends BaseActionCreator<P, T, M, E> {
|
|
75
|
+
/**
|
|
76
|
+
* Calling this {@link redux#ActionCreator} with `Args` will return
|
|
77
|
+
* an Action with a payload of type `P` and (depending on the `PrepareAction`
|
|
78
|
+
* method used) a `meta`- and `error` property of types `M` and `E` respectively.
|
|
79
|
+
*/
|
|
80
|
+
(...args: Args): PayloadAction<P, T, M, E>;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* An action creator of type `T` that takes an optional payload of type `P`.
|
|
84
|
+
*
|
|
85
|
+
* @inheritdoc {redux#ActionCreator}
|
|
86
|
+
*
|
|
87
|
+
* @public
|
|
88
|
+
*/
|
|
89
|
+
export interface ActionCreatorWithOptionalPayload<P, T extends string = string> extends BaseActionCreator<P, T> {
|
|
90
|
+
/**
|
|
91
|
+
* Calling this {@link redux#ActionCreator} with an argument will
|
|
92
|
+
* return a {@link PayloadAction} of type `T` with a payload of `P`.
|
|
93
|
+
* Calling it without an argument will return a PayloadAction with a payload of `undefined`.
|
|
94
|
+
*/
|
|
95
|
+
(payload?: P): PayloadAction<P, T>;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* An action creator of type `T` that takes no payload.
|
|
99
|
+
*
|
|
100
|
+
* @inheritdoc {redux#ActionCreator}
|
|
101
|
+
*
|
|
102
|
+
* @public
|
|
103
|
+
*/
|
|
104
|
+
export interface ActionCreatorWithoutPayload<T extends string = string> extends BaseActionCreator<undefined, T> {
|
|
105
|
+
/**
|
|
106
|
+
* Calling this {@link redux#ActionCreator} will
|
|
107
|
+
* return a {@link PayloadAction} of type `T` with a payload of `undefined`
|
|
108
|
+
*/
|
|
109
|
+
(): PayloadAction<undefined, T>;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* An action creator of type `T` that requires a payload of type P.
|
|
113
|
+
*
|
|
114
|
+
* @inheritdoc {redux#ActionCreator}
|
|
115
|
+
*
|
|
116
|
+
* @public
|
|
117
|
+
*/
|
|
118
|
+
export interface ActionCreatorWithPayload<P, T extends string = string> extends BaseActionCreator<P, T> {
|
|
119
|
+
/**
|
|
120
|
+
* Calling this {@link redux#ActionCreator} with an argument will
|
|
121
|
+
* return a {@link PayloadAction} of type `T` with a payload of `P`
|
|
122
|
+
*/
|
|
123
|
+
(payload: P): PayloadAction<P, T>;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* An action creator of type `T` whose `payload` type could not be inferred. Accepts everything as `payload`.
|
|
127
|
+
*
|
|
128
|
+
* @inheritdoc {redux#ActionCreator}
|
|
129
|
+
*
|
|
130
|
+
* @public
|
|
131
|
+
*/
|
|
132
|
+
export interface ActionCreatorWithNonInferrablePayload<T extends string = string> extends BaseActionCreator<unknown, T> {
|
|
133
|
+
/**
|
|
134
|
+
* Calling this {@link redux#ActionCreator} with an argument will
|
|
135
|
+
* return a {@link PayloadAction} of type `T` with a payload
|
|
136
|
+
* of exactly the type of the argument.
|
|
137
|
+
*/
|
|
138
|
+
<PT extends unknown>(payload: PT): PayloadAction<PT, T>;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* An action creator that produces actions with a `payload` attribute.
|
|
142
|
+
*
|
|
143
|
+
* @typeParam P the `payload` type
|
|
144
|
+
* @typeParam T the `type` of the resulting action
|
|
145
|
+
* @typeParam PA if the resulting action is preprocessed by a `prepare` method, the signature of said method.
|
|
146
|
+
*
|
|
147
|
+
* @public
|
|
148
|
+
*/
|
|
149
|
+
export declare type PayloadActionCreator<P = void, T extends string = string, PA extends PrepareAction<P> | void = void> = IfPrepareActionMethodProvided<PA, _ActionCreatorWithPreparedPayload<PA, T>, IsAny<P, ActionCreatorWithPayload<any, T>, IsUnknownOrNonInferrable<P, ActionCreatorWithNonInferrablePayload<T>, IfVoid<P, ActionCreatorWithoutPayload<T>, IfMaybeUndefined<P, ActionCreatorWithOptionalPayload<P, T>, ActionCreatorWithPayload<P, T>>>>>>;
|
|
150
|
+
/**
|
|
151
|
+
* A utility function to create an action creator for the given action type
|
|
152
|
+
* string. The action creator accepts a single argument, which will be included
|
|
153
|
+
* in the action object as a field called payload. The action creator function
|
|
154
|
+
* will also have its toString() overriden so that it returns the action type,
|
|
155
|
+
* allowing it to be used in reducer logic that is looking for that action type.
|
|
156
|
+
*
|
|
157
|
+
* @param type The action type to use for created actions.
|
|
158
|
+
* @param prepare (optional) a method that takes any number of arguments and returns { payload } or { payload, meta }.
|
|
159
|
+
* If this is given, the resulting action creator will pass its arguments to this method to calculate payload & meta.
|
|
160
|
+
*
|
|
161
|
+
* @public
|
|
162
|
+
*/
|
|
163
|
+
export declare function createAction<P = void, T extends string = string>(type: T): PayloadActionCreator<P, T>;
|
|
164
|
+
/**
|
|
165
|
+
* A utility function to create an action creator for the given action type
|
|
166
|
+
* string. The action creator accepts a single argument, which will be included
|
|
167
|
+
* in the action object as a field called payload. The action creator function
|
|
168
|
+
* will also have its toString() overriden so that it returns the action type,
|
|
169
|
+
* allowing it to be used in reducer logic that is looking for that action type.
|
|
170
|
+
*
|
|
171
|
+
* @param type The action type to use for created actions.
|
|
172
|
+
* @param prepare (optional) a method that takes any number of arguments and returns { payload } or { payload, meta }.
|
|
173
|
+
* If this is given, the resulting action creator will pass its arguments to this method to calculate payload & meta.
|
|
174
|
+
*
|
|
175
|
+
* @public
|
|
176
|
+
*/
|
|
177
|
+
export declare function createAction<PA extends PrepareAction<any>, T extends string = string>(type: T, prepareAction: PA): PayloadActionCreator<ReturnType<PA>['payload'], T, PA>;
|
|
178
|
+
declare type IfPrepareActionMethodProvided<PA extends PrepareAction<any> | void, True, False> = PA extends (...args: any[]) => any ? True : False;
|
|
179
|
+
export {};
|
|
180
|
+
//# sourceMappingURL=createAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createAction.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/createAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Action, AnyAction, Reducer } from 'redux';
|
|
2
|
+
import { DeepReadonly } from '../../types';
|
|
3
|
+
import { ActionReducerMapBuilder } from './mapBuilders';
|
|
4
|
+
import { NoInfer } from './tsHelpers';
|
|
5
|
+
export declare type CaseReducer<S = any, A extends Action = AnyAction> = (state: S, action: A) => S | void;
|
|
6
|
+
export interface ActionMatcher<A extends AnyAction> {
|
|
7
|
+
(action: AnyAction): action is A;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Defines a mapping from action types to corresponding action object shapes.
|
|
11
|
+
*
|
|
12
|
+
* @deprecated This should not be used manually - it is only used for internal
|
|
13
|
+
* inference purposes and should not have any further value.
|
|
14
|
+
* It might be removed in the future.
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export declare type Actions<T extends keyof any = string> = Record<T, Action>;
|
|
18
|
+
/**
|
|
19
|
+
* A mapping from action types to case reducers for `createReducer()`.
|
|
20
|
+
*
|
|
21
|
+
* @deprecated This should not be used manually - it is only used
|
|
22
|
+
* for internal inference purposes and using it manually
|
|
23
|
+
* would lead to type erasure.
|
|
24
|
+
* It might be removed in the future.
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export declare type CaseReducers<S, AS extends Actions> = {
|
|
28
|
+
[T in keyof AS]: AS[T] extends Action ? CaseReducer<S, AS[T]> : void;
|
|
29
|
+
};
|
|
30
|
+
export declare type ActionMatcherDescription<S, A extends AnyAction> = {
|
|
31
|
+
matcher: ActionMatcher<A>;
|
|
32
|
+
reducer: CaseReducer<S, NoInfer<A>>;
|
|
33
|
+
};
|
|
34
|
+
export declare type ActionMatcherDescriptionCollection<S> = Array<ActionMatcherDescription<S, any>>;
|
|
35
|
+
export declare type NotFunction<T> = T extends Function ? never : T;
|
|
36
|
+
export declare type ReducerWithInitialState<S extends NotFunction<any>> = Reducer<DeepReadonly<S>> & {
|
|
37
|
+
getInitialState: () => DeepReadonly<S>;
|
|
38
|
+
};
|
|
39
|
+
export declare type ReadonlyActionMatcherDescriptionCollection<S> = ReadonlyArray<ActionMatcherDescription<S, any>>;
|
|
40
|
+
export declare function createReducer<S extends NotFunction<any>>(initialState: S | (() => S), builderCallback: (builder: ActionReducerMapBuilder<S>) => void): ReducerWithInitialState<S>;
|
|
41
|
+
export declare function createReducer<S extends NotFunction<any>, CR extends CaseReducers<S, any> = CaseReducers<S, any>>(initialState: S | (() => S), actionsMap: CR, actionMatchers?: ActionMatcherDescriptionCollection<S>, defaultCaseReducer?: CaseReducer<S>): ReducerWithInitialState<S>;
|
|
42
|
+
//# sourceMappingURL=createReducer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createReducer.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/createReducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,uBAAuB,EAAiC,MAAM,eAAe,CAAA;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,oBAAY,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,SAAS,MAAM,GAAG,SAAS,IAAI,CAC/D,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,CAAC,KACN,CAAC,GAAG,IAAI,CAAA;AAEb,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,SAAS;IAChD,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,IAAI,CAAC,CAAA;CACjC;AAED;;;;;;;GAOG;AACH,oBAAY,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;AAErE;;;;;;;;GAQG;AACH,oBAAY,YAAY,CAAC,CAAC,EAAE,EAAE,SAAS,OAAO,IAAI;KAC/C,CAAC,IAAI,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;CACrE,CAAA;AAED,oBAAY,wBAAwB,CAAC,CAAC,EAAE,CAAC,SAAS,SAAS,IAAI;IAC7D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACzB,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;CACpC,CAAA;AAED,oBAAY,kCAAkC,CAAC,CAAC,IAAI,KAAK,CACvD,wBAAwB,CAAC,CAAC,EAAE,GAAG,CAAC,CACjC,CAAA;AAGD,oBAAY,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAA;AAE3D,oBAAY,uBAAuB,CAAC,CAAC,SAAS,WAAW,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG;IAC3F,eAAe,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,CAAA;CACvC,CAAA;AAED,oBAAY,0CAA0C,CAAC,CAAC,IAAI,aAAa,CACvE,wBAAwB,CAAC,CAAC,EAAE,GAAG,CAAC,CACjC,CAAA;AAMD,wBAAgB,aAAa,CAAC,CAAC,SAAS,WAAW,CAAC,GAAG,CAAC,EACtD,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC3B,eAAe,EAAE,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC,KAAK,IAAI,GAC7D,uBAAuB,CAAC,CAAC,CAAC,CAAA;AAE7B,wBAAgB,aAAa,CAC3B,CAAC,SAAS,WAAW,CAAC,GAAG,CAAC,EAC1B,EAAE,SAAS,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,EAEtD,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC3B,UAAU,EAAE,EAAE,EACd,cAAc,CAAC,EAAE,kCAAkC,CAAC,CAAC,CAAC,EACtD,kBAAkB,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAClC,uBAAuB,CAAC,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import type { Reducer } from 'redux';
|
|
2
|
+
import { ActionCreatorWithoutPayload, PayloadAction, PrepareAction, _ActionCreatorWithPreparedPayload } from '.';
|
|
3
|
+
import { DeepReadonly } from '../../types';
|
|
4
|
+
import { PayloadActionCreator } from './createAction';
|
|
5
|
+
import { CaseReducer, CaseReducers } from './createReducer';
|
|
6
|
+
import { ActionReducerMapBuilder } from './mapBuilders';
|
|
7
|
+
import { NoInfer } from './tsHelpers';
|
|
8
|
+
/**
|
|
9
|
+
* An action creator attached to a slice.
|
|
10
|
+
*
|
|
11
|
+
* @deprecated please use PayloadActionCreator directly
|
|
12
|
+
*
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
export declare type SliceActionCreator<P> = PayloadActionCreator<P>;
|
|
16
|
+
/**
|
|
17
|
+
* The return value of `createSlice`
|
|
18
|
+
*
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
export interface Slice<State = any, CaseReducers extends SliceCaseReducers<State> = SliceCaseReducers<State>, Name extends string = string> {
|
|
22
|
+
/**
|
|
23
|
+
* The slice name.
|
|
24
|
+
*/
|
|
25
|
+
name: Name;
|
|
26
|
+
/**
|
|
27
|
+
* The slice's reducer.
|
|
28
|
+
*/
|
|
29
|
+
reducer: Reducer<DeepReadonly<State>>;
|
|
30
|
+
/**
|
|
31
|
+
* Action creators for the types of actions that are handled by the slice
|
|
32
|
+
* reducer.
|
|
33
|
+
*/
|
|
34
|
+
actions: CaseReducerActions<CaseReducers>;
|
|
35
|
+
/**
|
|
36
|
+
* The individual case reducer functions that were passed in the `reducers` parameter.
|
|
37
|
+
* This enables reuse and testing if they were defined inline when calling `createSlice`.
|
|
38
|
+
*/
|
|
39
|
+
caseReducers: SliceDefinedCaseReducers<CaseReducers>;
|
|
40
|
+
/**
|
|
41
|
+
* Provides access to the initial state value given to the slice.
|
|
42
|
+
* If a lazy state initializer was provided, it will be called and a fresh value returned.
|
|
43
|
+
*/
|
|
44
|
+
getInitialState: () => DeepReadonly<State>;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Options for `createSlice()`.
|
|
48
|
+
*
|
|
49
|
+
* @public
|
|
50
|
+
*/
|
|
51
|
+
export interface CreateSliceOptions<State = any, CR extends SliceCaseReducers<State> = SliceCaseReducers<State>, Name extends string = string> {
|
|
52
|
+
name: Name;
|
|
53
|
+
initialState: State | (() => State);
|
|
54
|
+
reducers: ValidateSliceCaseReducers<State, CR>;
|
|
55
|
+
extraReducers?: CaseReducers<NoInfer<State>, any> | ((builder: ActionReducerMapBuilder<NoInfer<State>>) => void);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* A CaseReducer with a `prepare` method.
|
|
59
|
+
*
|
|
60
|
+
* @public
|
|
61
|
+
*/
|
|
62
|
+
export declare type CaseReducerWithPrepare<State, Action extends PayloadAction> = {
|
|
63
|
+
reducer: CaseReducer<State, Action>;
|
|
64
|
+
prepare: PrepareAction<Action['payload']>;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* The type describing a slice's `reducers` option.
|
|
68
|
+
*
|
|
69
|
+
* @public
|
|
70
|
+
*/
|
|
71
|
+
export declare type SliceCaseReducers<State> = {
|
|
72
|
+
[K: string]: CaseReducer<DeepReadonly<State>, PayloadAction<any>> | CaseReducerWithPrepare<DeepReadonly<State>, PayloadAction<any, string, any, any>>;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Derives the slice's `actions` property from the `reducers` options
|
|
76
|
+
*
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
export declare type CaseReducerActions<CaseReducers extends SliceCaseReducers<any>> = {
|
|
80
|
+
[Type in keyof CaseReducers]: CaseReducers[Type] extends {
|
|
81
|
+
prepare: any;
|
|
82
|
+
} ? ActionCreatorForCaseReducerWithPrepare<CaseReducers[Type]> : ActionCreatorForCaseReducer<CaseReducers[Type]>;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Get a `PayloadActionCreator` type for a passed `CaseReducerWithPrepare`
|
|
86
|
+
*
|
|
87
|
+
* @internal
|
|
88
|
+
*/
|
|
89
|
+
declare type ActionCreatorForCaseReducerWithPrepare<CR extends {
|
|
90
|
+
prepare: any;
|
|
91
|
+
}> = _ActionCreatorWithPreparedPayload<CR['prepare'], string>;
|
|
92
|
+
/**
|
|
93
|
+
* Get a `PayloadActionCreator` type for a passed `CaseReducer`
|
|
94
|
+
*
|
|
95
|
+
* @internal
|
|
96
|
+
*/
|
|
97
|
+
declare type ActionCreatorForCaseReducer<CR> = CR extends (state: any, action: infer Action) => any ? Action extends {
|
|
98
|
+
payload: infer P;
|
|
99
|
+
} ? PayloadActionCreator<P> : ActionCreatorWithoutPayload : ActionCreatorWithoutPayload;
|
|
100
|
+
/**
|
|
101
|
+
* Extracts the CaseReducers out of a `reducers` object, even if they are
|
|
102
|
+
* tested into a `CaseReducerWithPrepare`.
|
|
103
|
+
*
|
|
104
|
+
* @internal
|
|
105
|
+
*/
|
|
106
|
+
declare type SliceDefinedCaseReducers<CaseReducers extends SliceCaseReducers<any>> = {
|
|
107
|
+
[Type in keyof CaseReducers]: CaseReducers[Type] extends {
|
|
108
|
+
reducer: infer Reducer;
|
|
109
|
+
} ? Reducer : CaseReducers[Type];
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Used on a SliceCaseReducers object.
|
|
113
|
+
* Ensures that if a CaseReducer is a `CaseReducerWithPrepare`, that
|
|
114
|
+
* the `reducer` and the `prepare` function use the same type of `payload`.
|
|
115
|
+
*
|
|
116
|
+
* Might do additional such checks in the future.
|
|
117
|
+
*
|
|
118
|
+
* This type is only ever useful if you want to write your own wrapper around
|
|
119
|
+
* `createSlice`. Please don't use it otherwise!
|
|
120
|
+
*
|
|
121
|
+
* @public
|
|
122
|
+
*/
|
|
123
|
+
export declare type ValidateSliceCaseReducers<S, ACR extends SliceCaseReducers<S>> = ACR & {
|
|
124
|
+
[T in keyof ACR]: ACR[T] extends {
|
|
125
|
+
reducer(s: S, action?: infer A): any;
|
|
126
|
+
} ? {
|
|
127
|
+
prepare(...a: never[]): Omit<A, 'type'>;
|
|
128
|
+
} : {};
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* A function that accepts an initial state, an object full of reducer
|
|
132
|
+
* functions, and a "slice name", and automatically generates
|
|
133
|
+
* action creators and action types that correspond to the
|
|
134
|
+
* reducers and state.
|
|
135
|
+
*
|
|
136
|
+
* The `reducer` argument is passed to `createReducer()`.
|
|
137
|
+
*
|
|
138
|
+
* @public
|
|
139
|
+
*/
|
|
140
|
+
export declare function createSlice<State, CaseReducers extends SliceCaseReducers<State>, Name extends string = string>(options: CreateSliceOptions<State, CaseReducers, Name>): Slice<State, CaseReducers, Name>;
|
|
141
|
+
export {};
|
|
142
|
+
//# sourceMappingURL=createSlice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createSlice.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/createSlice.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import type { Action, ActionCreator, StoreEnhancer } from 'redux';
|
|
2
|
+
import { compose } from 'redux';
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export interface EnhancerOptions {
|
|
7
|
+
/**
|
|
8
|
+
* the instance name to be showed on the monitor page. Default value is `document.title`.
|
|
9
|
+
* If not specified and there's no document title, it will consist of `tabId` and `instanceId`.
|
|
10
|
+
*/
|
|
11
|
+
name?: string;
|
|
12
|
+
/**
|
|
13
|
+
* action creators functions to be available in the Dispatcher.
|
|
14
|
+
*/
|
|
15
|
+
actionCreators?: ActionCreator<any>[] | {
|
|
16
|
+
[key: string]: ActionCreator<any>;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* if more than one action is dispatched in the indicated interval, all new actions will be collected and sent at once.
|
|
20
|
+
* It is the joint between performance and speed. When set to `0`, all actions will be sent instantly.
|
|
21
|
+
* Set it to a higher value when experiencing perf issues (also `maxAge` to a lower value).
|
|
22
|
+
*
|
|
23
|
+
* @default 500 ms.
|
|
24
|
+
*/
|
|
25
|
+
latency?: number;
|
|
26
|
+
/**
|
|
27
|
+
* (> 1) - maximum allowed actions to be stored in the history tree. The oldest actions are removed once maxAge is reached. It's critical for performance.
|
|
28
|
+
*
|
|
29
|
+
* @default 50
|
|
30
|
+
*/
|
|
31
|
+
maxAge?: number;
|
|
32
|
+
/**
|
|
33
|
+
* See detailed documentation at http://extension.remotedev.io/docs/API/Arguments.html#serialize
|
|
34
|
+
*/
|
|
35
|
+
serialize?: boolean | {
|
|
36
|
+
options?: boolean | {
|
|
37
|
+
date?: boolean;
|
|
38
|
+
regex?: boolean;
|
|
39
|
+
undefined?: boolean;
|
|
40
|
+
error?: boolean;
|
|
41
|
+
symbol?: boolean;
|
|
42
|
+
map?: boolean;
|
|
43
|
+
set?: boolean;
|
|
44
|
+
function?: boolean | Function;
|
|
45
|
+
};
|
|
46
|
+
replacer?: (key: string, value: unknown) => unknown;
|
|
47
|
+
reviver?: (key: string, value: unknown) => unknown;
|
|
48
|
+
immutable?: unknown;
|
|
49
|
+
refs?: unknown[];
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* function which takes `action` object and id number as arguments, and should return `action` object back.
|
|
53
|
+
*/
|
|
54
|
+
actionSanitizer?: <A extends Action>(action: A, id: number) => A;
|
|
55
|
+
/**
|
|
56
|
+
* function which takes `state` object and index as arguments, and should return `state` object back.
|
|
57
|
+
*/
|
|
58
|
+
stateSanitizer?: <S>(state: S, index: number) => S;
|
|
59
|
+
/**
|
|
60
|
+
* *string or array of strings as regex* - actions types to be hidden / shown in the monitors (while passed to the reducers).
|
|
61
|
+
* If `actionsWhitelist` specified, `actionsBlacklist` is ignored.
|
|
62
|
+
*/
|
|
63
|
+
actionsBlacklist?: string | string[];
|
|
64
|
+
/**
|
|
65
|
+
* *string or array of strings as regex* - actions types to be hidden / shown in the monitors (while passed to the reducers).
|
|
66
|
+
* If `actionsWhitelist` specified, `actionsBlacklist` is ignored.
|
|
67
|
+
*/
|
|
68
|
+
actionsWhitelist?: string | string[];
|
|
69
|
+
/**
|
|
70
|
+
* called for every action before sending, takes `state` and `action` object, and returns `true` in case it allows sending the current data to the monitor.
|
|
71
|
+
* Use it as a more advanced version of `actionsBlacklist`/`actionsWhitelist` parameters.
|
|
72
|
+
*/
|
|
73
|
+
predicate?: <S, A extends Action>(state: S, action: A) => boolean;
|
|
74
|
+
/**
|
|
75
|
+
* if specified as `false`, it will not record the changes till clicking on `Start recording` button.
|
|
76
|
+
* Available only for Redux enhancer, for others use `autoPause`.
|
|
77
|
+
*
|
|
78
|
+
* @default true
|
|
79
|
+
*/
|
|
80
|
+
shouldRecordChanges?: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* if specified, whenever clicking on `Pause recording` button and there are actions in the history log, will add this action type.
|
|
83
|
+
* If not specified, will commit when paused. Available only for Redux enhancer.
|
|
84
|
+
*
|
|
85
|
+
* @default "@@PAUSED""
|
|
86
|
+
*/
|
|
87
|
+
pauseActionType?: string;
|
|
88
|
+
/**
|
|
89
|
+
* auto pauses when the extension’s window is not opened, and so has zero impact on your app when not in use.
|
|
90
|
+
* Not available for Redux enhancer (as it already does it but storing the data to be sent).
|
|
91
|
+
*
|
|
92
|
+
* @default false
|
|
93
|
+
*/
|
|
94
|
+
autoPause?: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* if specified as `true`, it will not allow any non-monitor actions to be dispatched till clicking on `Unlock changes` button.
|
|
97
|
+
* Available only for Redux enhancer.
|
|
98
|
+
*
|
|
99
|
+
* @default false
|
|
100
|
+
*/
|
|
101
|
+
shouldStartLocked?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* if set to `false`, will not recompute the states on hot reloading (or on replacing the reducers). Available only for Redux enhancer.
|
|
104
|
+
*
|
|
105
|
+
* @default true
|
|
106
|
+
*/
|
|
107
|
+
shouldHotReload?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* if specified as `true`, whenever there's an exception in reducers, the monitors will show the error message, and next actions will not be dispatched.
|
|
110
|
+
*
|
|
111
|
+
* @default false
|
|
112
|
+
*/
|
|
113
|
+
shouldCatchErrors?: boolean;
|
|
114
|
+
/**
|
|
115
|
+
* If you want to restrict the extension, specify the features you allow.
|
|
116
|
+
* If not specified, all of the features are enabled. When set as an object, only those included as `true` will be allowed.
|
|
117
|
+
* Note that except `true`/`false`, `import` and `export` can be set as `custom` (which is by default for Redux enhancer), meaning that the importing/exporting occurs on the client side.
|
|
118
|
+
* Otherwise, you'll get/set the data right from the monitor part.
|
|
119
|
+
*/
|
|
120
|
+
features?: {
|
|
121
|
+
/**
|
|
122
|
+
* start/pause recording of dispatched actions
|
|
123
|
+
*/
|
|
124
|
+
pause?: boolean;
|
|
125
|
+
/**
|
|
126
|
+
* lock/unlock dispatching actions and side effects
|
|
127
|
+
*/
|
|
128
|
+
lock?: boolean;
|
|
129
|
+
/**
|
|
130
|
+
* persist states on page reloading
|
|
131
|
+
*/
|
|
132
|
+
persist?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* export history of actions in a file
|
|
135
|
+
*/
|
|
136
|
+
export?: boolean | 'custom';
|
|
137
|
+
/**
|
|
138
|
+
* import history of actions from a file
|
|
139
|
+
*/
|
|
140
|
+
import?: boolean | 'custom';
|
|
141
|
+
/**
|
|
142
|
+
* jump back and forth (time travelling)
|
|
143
|
+
*/
|
|
144
|
+
jump?: boolean;
|
|
145
|
+
/**
|
|
146
|
+
* skip (cancel) actions
|
|
147
|
+
*/
|
|
148
|
+
skip?: boolean;
|
|
149
|
+
/**
|
|
150
|
+
* drag and drop actions in the history list
|
|
151
|
+
*/
|
|
152
|
+
reorder?: boolean;
|
|
153
|
+
/**
|
|
154
|
+
* dispatch custom actions or action creators
|
|
155
|
+
*/
|
|
156
|
+
dispatch?: boolean;
|
|
157
|
+
/**
|
|
158
|
+
* generate tests for the selected actions
|
|
159
|
+
*/
|
|
160
|
+
test?: boolean;
|
|
161
|
+
};
|
|
162
|
+
/**
|
|
163
|
+
* Set to true or a stacktrace-returning function to record call stack traces for dispatched actions.
|
|
164
|
+
* Defaults to false.
|
|
165
|
+
*/
|
|
166
|
+
trace?: boolean | (<A extends Action>(action: A) => string);
|
|
167
|
+
/**
|
|
168
|
+
* The maximum number of stack trace entries to record per action. Defaults to 10.
|
|
169
|
+
*/
|
|
170
|
+
traceLimit?: number;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* @public
|
|
174
|
+
*/
|
|
175
|
+
export declare const composeWithDevTools: {
|
|
176
|
+
(options: EnhancerOptions): typeof compose;
|
|
177
|
+
<StoreExt>(...funcs: Array<StoreEnhancer<StoreExt>>): StoreEnhancer<StoreExt>;
|
|
178
|
+
};
|
|
179
|
+
/**
|
|
180
|
+
* @public
|
|
181
|
+
*/
|
|
182
|
+
export declare const devToolsEnhancer: {
|
|
183
|
+
(options: EnhancerOptions): StoreEnhancer<any>;
|
|
184
|
+
};
|
|
185
|
+
//# sourceMappingURL=devtoolsExtension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devtoolsExtension.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/devtoolsExtension.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Middleware } from 'redux';
|
|
2
|
+
import { MiddlewareArray } from './utils';
|
|
3
|
+
interface GetDefaultMiddlewareOptions {
|
|
4
|
+
}
|
|
5
|
+
export declare type CurriedGetDefaultMiddleware<S = any> = <O extends Partial<GetDefaultMiddlewareOptions> = {
|
|
6
|
+
thunk: true;
|
|
7
|
+
immutableCheck: true;
|
|
8
|
+
serializableCheck: true;
|
|
9
|
+
}>(options?: O) => MiddlewareArray<Middleware<{}, S>>;
|
|
10
|
+
export declare function curryGetDefaultMiddleware<S = any>(): CurriedGetDefaultMiddleware<S>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=getDefaultMiddleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDefaultMiddleware.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/getDefaultMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,UAAU,2BAA2B;CAAG;AAExC,oBAAY,2BAA2B,CAAC,CAAC,GAAG,GAAG,IAAI,CACjD,CAAC,SAAS,OAAO,CAAC,2BAA2B,CAAC,GAAG;IAC/C,KAAK,EAAE,IAAI,CAAA;IACX,cAAc,EAAE,IAAI,CAAA;IACpB,iBAAiB,EAAE,IAAI,CAAA;CACxB,EAED,OAAO,CAAC,EAAE,CAAC,KACR,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AAEvC,wBAAgB,yBAAyB,CACvC,CAAC,GAAG,GAAG,KACJ,2BAA2B,CAAC,CAAC,CAAC,CAIlC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cherry-picked (and adapted) version of Redux Toolkit. API
|
|
3
|
+
* wise it remains fully compatible but we changed a couple
|
|
4
|
+
* of things to reduce the overall bundle size. Most
|
|
5
|
+
* important is that our version doesn't depend on Immer and
|
|
6
|
+
* we don't include any of the default middleares included
|
|
7
|
+
* by RTK like thunks or inmutable state (we do this through
|
|
8
|
+
* TS).
|
|
9
|
+
*/
|
|
10
|
+
export * from 'redux';
|
|
11
|
+
export * from './createAction';
|
|
12
|
+
export * from './configureStore';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,cAAc,OAAO,CAAA;AACrB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns true if the passed value is "plain" object, i.e. an object whose
|
|
3
|
+
* prototype is the root `Object.prototype`. This includes objects created
|
|
4
|
+
* using object literals, but not for instance for class instances.
|
|
5
|
+
*
|
|
6
|
+
* @param {any} value The value to inspect.
|
|
7
|
+
* @returns {boolean} True if the argument appears to be a plain object.
|
|
8
|
+
*
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
export default function isPlainObject(value: unknown): value is object;
|
|
12
|
+
//# sourceMappingURL=isPlainObject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isPlainObject.d.ts","sourceRoot":"","sources":["../../../../../../core/src/redux/toolkit/isPlainObject.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAYrE"}
|