@stenajs-webui/redux 22.7.0 → 22.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.es.js +11 -11
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.es.js
CHANGED
|
@@ -31,12 +31,12 @@ const C = (e) => (t = {}, r) => {
|
|
|
31
31
|
})
|
|
32
32
|
}), B = (e, t) => (r, E) => {
|
|
33
33
|
const T = r ?? t(void 0, {});
|
|
34
|
-
return !
|
|
34
|
+
return !d(E) || e !== E.reducerId || E.type !== "REDUCER_ID_GATE:ACTION" ? T : t(T, E.action);
|
|
35
35
|
}, f = (e, t) => ({
|
|
36
36
|
type: "REDUCER_ID_GATE:ACTION",
|
|
37
37
|
action: t,
|
|
38
38
|
reducerId: e
|
|
39
|
-
}),
|
|
39
|
+
}), d = (e) => !!e.action && e.type === "REDUCER_ID_GATE:ACTION" && typeof e.reducerId == "string", i = (e, t) => (...r) => ({
|
|
40
40
|
type: "REDUCER_ID_GATE:ACTION",
|
|
41
41
|
reducerId: e,
|
|
42
42
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -215,7 +215,7 @@ const C = (e) => (t = {}, r) => {
|
|
|
215
215
|
"No reducer specified, unable to handle 'actionByIndex'."
|
|
216
216
|
);
|
|
217
217
|
return t.map(
|
|
218
|
-
(n,
|
|
218
|
+
(n, o) => E === o ? e(n, T) : n
|
|
219
219
|
);
|
|
220
220
|
}
|
|
221
221
|
case "ENTITY_LIST:ACTION_ON_ALL": {
|
|
@@ -229,7 +229,7 @@ const C = (e) => (t = {}, r) => {
|
|
|
229
229
|
default:
|
|
230
230
|
return t;
|
|
231
231
|
}
|
|
232
|
-
},
|
|
232
|
+
}, v = (e) => ({
|
|
233
233
|
getList: (t) => e(t)
|
|
234
234
|
}), S = { entities: {} }, s = () => (e = S, t) => {
|
|
235
235
|
switch (t.type) {
|
|
@@ -292,7 +292,7 @@ const C = (e) => (t = {}, r) => {
|
|
|
292
292
|
})
|
|
293
293
|
}), _ = (e) => ({
|
|
294
294
|
getState: e
|
|
295
|
-
}),
|
|
295
|
+
}), b = (e) => {
|
|
296
296
|
const t = e;
|
|
297
297
|
return (r = t, E) => {
|
|
298
298
|
switch (E.type) {
|
|
@@ -311,7 +311,7 @@ const C = (e) => (t = {}, r) => {
|
|
|
311
311
|
return r;
|
|
312
312
|
}
|
|
313
313
|
};
|
|
314
|
-
},
|
|
314
|
+
}, F = () => ({
|
|
315
315
|
setEntity: (e) => ({
|
|
316
316
|
type: "ENTITY:SET_ENTITY",
|
|
317
317
|
entity: e
|
|
@@ -320,7 +320,7 @@ const C = (e) => (t = {}, r) => {
|
|
|
320
320
|
type: "ENTITY:SET_ENTITY_FIELDS",
|
|
321
321
|
fields: e
|
|
322
322
|
})
|
|
323
|
-
}),
|
|
323
|
+
}), g = (e) => ({
|
|
324
324
|
getEntity: (t) => e(t)
|
|
325
325
|
}), R = () => s(), u = () => I(), A = (e) => _(e), x = (e) => {
|
|
326
326
|
const t = R(), r = u(), E = A(e);
|
|
@@ -564,7 +564,7 @@ export {
|
|
|
564
564
|
h as createCommitReducerSelectors,
|
|
565
565
|
J as createEditableEntityActions,
|
|
566
566
|
k as createEditableEntityReducer,
|
|
567
|
-
|
|
567
|
+
F as createEntityActions,
|
|
568
568
|
I as createEntityByIdActions,
|
|
569
569
|
s as createEntityByIdReducer,
|
|
570
570
|
_ as createEntityByIdSelectors,
|
|
@@ -574,9 +574,9 @@ export {
|
|
|
574
574
|
A as createEntityCrudStatusSelectors,
|
|
575
575
|
U as createEntityListActions,
|
|
576
576
|
m as createEntityListReducer,
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
577
|
+
v as createEntityListSelectors,
|
|
578
|
+
b as createEntityReducer,
|
|
579
|
+
g as createEntitySelectors,
|
|
580
580
|
G as createModifiedFieldRedux,
|
|
581
581
|
p as createRecordObjectActions,
|
|
582
582
|
C as createRecordObjectReducer,
|
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../src/features/higher-order-reducers/record-object-reducer/record-object-reducer.ts","../src/features/higher-order-reducers/record-object-reducer/record-object-action-creators.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-gate.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-action-wrapper.ts","../src/features/reducer-factories/commit-reducer/commit-action-creators.ts","../src/features/reducer-factories/commit-reducer/commit-reducer.ts","../src/features/reducer-factories/commit-reducer/commit-selectors.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-action-creators.ts","../src/common/util/field-matcher.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-reducer.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-selectors.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-reducer.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-action-creators.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-selectors.ts","../src/features/reducer-factories/entity-reducer/entity-reducer.ts","../src/features/reducer-factories/entity-reducer/entity-action-creators.ts","../src/features/reducer-factories/entity-reducer/entity-selectors.ts","../src/features/reducer-factories/entity-crud-status-reducer/entity-crud-status-redux.ts","../src/features/reducer-factories/modified-field-reducer/modified-field-redux.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-reducer.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-reducer.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-selectors.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-reducer.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-action-creators.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-selectors.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-reducer.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-action-creators.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-selectors.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-reducer.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-action-creators.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-selectors.ts"],"sourcesContent":["import { Reducer } from \"redux\";\nimport {\n RecordObjectAction,\n RecordObjectClearRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport type RecordObjectState<TInnerState> = Record<\n RecordObjectKey,\n TInnerState\n>;\n\nexport const createRecordObjectReducer =\n <TInnerAction extends RecordObjectWrappedAction, TInnerState = unknown>(\n reducer: Reducer<TInnerState, TInnerAction>,\n ): Reducer<\n RecordObjectState<TInnerState>,\n RecordObjectAction<TInnerAction>\n > =>\n (state = {}, action) => {\n switch (action.type) {\n case \"RECORD_OBJECT:CLEAR_RECORD\": {\n const { recordId } = action as RecordObjectClearRecordAction;\n const newState = { ...state };\n delete newState[recordId];\n return newState;\n }\n\n case \"RECORD_OBJECT:CLEAR_ALL_RECORDS\": {\n return {};\n }\n\n case \"RECORD_OBJECT:ACTION\": {\n const { recordId, action: innerAction } = action;\n return {\n ...state,\n [recordId]: reducer(state[recordId], innerAction),\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n RecordObjectClearAllRecordsAction,\n RecordObjectClearRecordAction,\n RecordObjectRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport interface RecordObjectActions<\n TInnerAction extends RecordObjectWrappedAction,\n> {\n recordAction: (\n recordId: RecordObjectKey,\n action: TInnerAction,\n ) => RecordObjectRecordAction<TInnerAction>;\n clearRecord: (recordId: RecordObjectKey) => RecordObjectClearRecordAction;\n clearAllRecords: () => RecordObjectClearAllRecordsAction;\n}\n\nexport const createRecordObjectActions = <\n TInnerAction extends RecordObjectWrappedAction,\n>(): RecordObjectActions<TInnerAction> => ({\n recordAction: (recordId, action) => ({\n type: \"RECORD_OBJECT:ACTION\",\n action,\n recordId,\n }),\n clearRecord: (recordId) => ({\n type: \"RECORD_OBJECT:CLEAR_RECORD\",\n recordId,\n }),\n clearAllRecords: () => ({\n type: \"RECORD_OBJECT:CLEAR_ALL_RECORDS\",\n }),\n});\n","import { Action, AnyAction, Reducer } from \"redux\";\n\nexport interface ReducerIdGateAction<TInnerAction> {\n type: \"REDUCER_ID_GATE:ACTION\";\n reducerId: string;\n action: TInnerAction;\n}\n\nexport type ReducerIdGateReducer<\n TState,\n TInnerAction extends Action = AnyAction,\n> = Reducer<TState, ReducerIdGateAction<TInnerAction>>;\n\nexport const reducerIdGate =\n <TState, TInnerAction extends Action = AnyAction>(\n reducerId: string,\n reducer: Reducer<TState, TInnerAction>,\n ): ReducerIdGateReducer<TState, TInnerAction> =>\n (state, action) => {\n const newState =\n state == null ? reducer(undefined, {} as TInnerAction) : state;\n\n if (!isValidReducerIdGateAction(action)) {\n return newState;\n }\n\n if (\n reducerId !== action.reducerId ||\n action.type !== \"REDUCER_ID_GATE:ACTION\"\n ) {\n return newState;\n }\n return reducer(newState, action.action);\n };\n\nexport const reducerIdGateAction = <TInnerAction>(\n reducerId: string,\n action: TInnerAction,\n): ReducerIdGateAction<TInnerAction> => ({\n type: \"REDUCER_ID_GATE:ACTION\",\n action,\n reducerId,\n});\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nconst isValidReducerIdGateAction = (action: any): boolean =>\n !!action.action &&\n action.type === \"REDUCER_ID_GATE:ACTION\" &&\n typeof action.reducerId === \"string\";\n","import { ReducerIdGateAction } from \"./reducer-id-gate\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype ActionCreator = (...args: any) => any;\n\nexport type ActionCreatorCreator<TActionCreator extends ActionCreator> = (\n ...args: Parameters<TActionCreator>\n) => ReducerIdGateAction<ReturnType<TActionCreator>>;\n\nexport const wrapActionWithReducerIdGate =\n <TActionCreator extends ActionCreator>(\n reducerId: string,\n actionCreator: TActionCreator,\n ): ActionCreatorCreator<TActionCreator> =>\n (...args) => {\n return {\n type: \"REDUCER_ID_GATE:ACTION\",\n reducerId,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n action: actionCreator(...(args as any)),\n };\n };\n\nexport interface ActionCreatorsMapObject {\n [key: string]: ActionCreator;\n}\n\nexport type ReducerIdGatedActionCreator<\n TActionCreators extends ActionCreatorsMapObject,\n> = {\n [K in keyof TActionCreators]: ActionCreatorCreator<TActionCreators[K]>;\n};\n\nexport const wrapActionsWithReducerIdGate = <\n TActionCreators extends ActionCreatorsMapObject,\n>(\n reducerId: string,\n actionCreators: TActionCreators,\n): ReducerIdGatedActionCreator<TActionCreators> => {\n const boundActionCreators =\n {} as ReducerIdGatedActionCreator<TActionCreators>;\n for (const key in actionCreators) {\n const actionCreator = actionCreators[key];\n boundActionCreators[key] = wrapActionWithReducerIdGate(\n reducerId,\n actionCreator,\n );\n }\n return boundActionCreators;\n};\n","import {\n ClearFilterValuesActionCreator,\n CommitFilterValuesActionCreator,\n SetFilterValuesActionCreator,\n} from \"./commit-actions\";\n\nexport interface CommitReducerActions<TState> {\n setValues: SetFilterValuesActionCreator<TState>;\n commitValues: CommitFilterValuesActionCreator;\n clearValues: ClearFilterValuesActionCreator;\n}\n\nexport const createCommitReducerActions = <TState>(\n id: string,\n): CommitReducerActions<TState> => {\n return {\n setValues: (values) => ({\n type: \"COMMIT_REDUCER.SET_VALUES\",\n id,\n values,\n }),\n commitValues: () => ({\n type: \"COMMIT_REDUCER.COMMIT_VALUES\",\n id,\n }),\n clearValues: () => ({\n type: \"COMMIT_REDUCER.CLEAR\",\n id,\n }),\n };\n};\n","import { CommitReducerAction } from \"./commit-actions\";\nimport { CommitReducerState } from \"./commit-state\";\n\nexport const createCommitReducer =\n <TState>(id: string, initialState: CommitReducerState<TState>) =>\n (\n state: CommitReducerState<TState> = initialState,\n action: CommitReducerAction<TState>,\n ): CommitReducerState<TState> => {\n if (action.id !== id) {\n return state;\n }\n switch (action.type) {\n case `COMMIT_REDUCER.SET_VALUES`: {\n const { values } = action;\n return {\n ...state,\n workspace: {\n ...state.workspace,\n ...values,\n },\n };\n }\n\n case `COMMIT_REDUCER.CLEAR`: {\n return {\n ...state,\n workspace: {\n ...initialState.workspace,\n },\n };\n }\n\n case `COMMIT_REDUCER.COMMIT_VALUES`: {\n return {\n ...state,\n committed: {\n ...state.workspace,\n },\n };\n }\n\n default:\n return state;\n }\n };\n","import { CommitReducerState } from \"./commit-state\";\n\nexport type CommitReducerStateSelector<TStoreState, TState> = (\n state: TStoreState,\n id: string,\n) => CommitReducerState<TState>;\n\nexport interface CommitReducerSelectors<TStoreState, TState> {\n getWorkspaceValues: (state: TStoreState) => TState;\n getCommittedValues: (state: TStoreState) => TState;\n}\n\nexport const createCommitReducerSelectors = <TStoreState, TState>(\n id: string,\n stateSelector: CommitReducerStateSelector<TStoreState, TState>,\n): CommitReducerSelectors<TStoreState, TState> => {\n return {\n getWorkspaceValues: (state) => stateSelector(state, id).workspace,\n getCommittedValues: (state) => stateSelector(state, id).committed,\n };\n};\n","import {\n EntityListActionByFieldsMatchAction,\n EntityListActionByIndexAction,\n EntityListActionOnAllAction,\n EntityListAddAtEndAction,\n EntityListAddAtStartAction,\n EntityListClearListAction,\n EntityListRemoveAction,\n EntityListRemoveAtIndexAction,\n EntityListRemoveByFieldMatchAction,\n EntityListRemoveFirstAction,\n EntityListRemoveLastAction,\n EntityListSetListAction,\n EntityListToggleAction,\n} from \"./entity-list-actions\";\n\nexport interface EntityListActions<T, TInnerAction> {\n addAtEnd: (entity: T) => EntityListAddAtEndAction<T>;\n addAtStart: (entity: T) => EntityListAddAtStartAction<T>;\n clearList: () => EntityListClearListAction;\n removeFirst: () => EntityListRemoveFirstAction;\n removeLast: () => EntityListRemoveLastAction;\n removeAtIndex: (index: number) => EntityListRemoveAtIndexAction;\n removeByFieldMatch: (\n fields: Partial<T>,\n ) => EntityListRemoveByFieldMatchAction<T>;\n remove: (entity: T) => EntityListRemoveAction<T>;\n setList: (list: Array<T>) => EntityListSetListAction<T>;\n toggle: (entity: T) => EntityListToggleAction<T>;\n actionByFieldsMatch: (\n fields: Partial<T>,\n action: TInnerAction,\n ) => EntityListActionByFieldsMatchAction<T, TInnerAction>;\n actionByIndex: (\n index: number,\n action: TInnerAction,\n ) => EntityListActionByIndexAction<TInnerAction>;\n actionOnAll: (\n action: TInnerAction,\n ) => EntityListActionOnAllAction<TInnerAction>;\n}\n\nexport const createEntityListActions = <\n T,\n TInnerAction = unknown,\n>(): EntityListActions<T, TInnerAction> => {\n return {\n addAtEnd: (entity) => ({ type: \"ENTITY_LIST:ADD_AT_END\", entity }),\n addAtStart: (entity) => ({\n entity,\n type: \"ENTITY_LIST:ADD_AT_START\",\n }),\n clearList: () => ({ type: \"ENTITY_LIST:CLEAR_LIST\" }),\n removeFirst: () => ({ type: \"ENTITY_LIST:REMOVE_FIRST\" }),\n removeLast: () => ({ type: \"ENTITY_LIST:REMOVE_LAST\" }),\n removeAtIndex: (index) => ({\n type: \"ENTITY_LIST:REMOVE_AT_INDEX\",\n index,\n }),\n removeByFieldMatch: (fields) => ({\n type: \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\",\n fields,\n }),\n remove: (entity) => ({ type: \"ENTITY_LIST:REMOVE\", entity }),\n setList: (list) => ({ type: \"ENTITY_LIST:SET_LIST\", list }),\n toggle: (entity) => ({ type: \"ENTITY_LIST:TOGGLE\", entity }),\n actionByFieldsMatch: (fields, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\",\n fields,\n action,\n }),\n actionByIndex: (index, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_INDEX\",\n index,\n action,\n }),\n actionOnAll: (action) => ({\n type: \"ENTITY_LIST:ACTION_ON_ALL\",\n action,\n }),\n };\n};\n","export const fieldsMatch = <T>(entity: T, fields: Partial<T>): boolean => {\n const keys = Object.keys(fields) as Array<keyof T>;\n if (keys.length === 0) {\n return false;\n }\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (entity[key] !== fields[key]) {\n return false;\n }\n }\n return true;\n};\n","import { EntityListAction } from \"./entity-list-actions\";\nimport { fieldsMatch } from \"../../../common/util/field-matcher\";\nimport { Action, AnyAction, Reducer } from \"redux\";\n\nexport type EntityListState<TListItem> = Array<TListItem>;\n\nexport const createEntityListReducer =\n <TListItem, TListItemAction extends Action = AnyAction>(\n reducer?: Reducer<TListItem, TListItemAction>,\n ) =>\n (\n state: EntityListState<TListItem> = [],\n action: EntityListAction<TListItem, TListItemAction>,\n ): EntityListState<TListItem> => {\n switch (action.type) {\n case \"ENTITY_LIST:SET_LIST\": {\n const { list } = action;\n return list;\n }\n case \"ENTITY_LIST:CLEAR_LIST\": {\n return [];\n }\n case \"ENTITY_LIST:ADD_AT_END\": {\n const { entity } = action;\n return [...state, entity];\n }\n case \"ENTITY_LIST:ADD_AT_START\": {\n const { entity } = action;\n return [entity, ...state];\n }\n case \"ENTITY_LIST:REMOVE_FIRST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const [, ...list] = state;\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_LAST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const list = [...state];\n list.pop();\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_AT_INDEX\": {\n const { index } = action;\n if (index < 0) {\n throw new Error(\"Index is lower than 0.\");\n }\n if (index >= state.length) {\n throw new Error(\"Index is outside of list bounds.\");\n }\n const list = [...state];\n list.splice(index, 1);\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\": {\n const { fields } = action;\n return state.filter((item) => !fieldsMatch(item, fields));\n }\n\n case \"ENTITY_LIST:REMOVE\": {\n const { entity } = action;\n return state.filter((item) => item !== entity);\n }\n\n case \"ENTITY_LIST:TOGGLE\": {\n const { entity } = action;\n const index = state.findIndex(\n (item) => item === entity || fieldsMatch(item, entity),\n );\n\n if (index >= 0) {\n const list = [...state];\n list.splice(index, index);\n\n return list;\n } else {\n return [...state, entity];\n }\n }\n\n case \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\": {\n const { fields, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByFieldsMatch'.\",\n );\n }\n return state.map((item) =>\n fieldsMatch(item, fields) ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_BY_INDEX\": {\n const { index, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item, i) =>\n index === i ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_ON_ALL\": {\n const { action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item) => reducer(item, innerAction));\n }\n\n default:\n return state;\n }\n };\n","import { EntityListState } from \"./entity-list-reducer\";\n\nexport interface EntityListSelectors<TStoreState, TEntity> {\n getList: (store: TStoreState) => Array<TEntity>;\n}\n\nexport type EntityListSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityListState<TEntity>;\n\nexport const createEntityListSelectors = <TStoreState, TEntity>(\n stateSelector: EntityListSelector<TStoreState, TEntity>,\n): EntityListSelectors<TStoreState, TEntity> => ({\n getList: (store) => stateSelector(store),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"./entity-by-id-actions\";\n\nexport interface EntityByIdState<T extends EntityWithId> {\n entities: { [key: string]: T };\n}\n\nexport const entityByIdInitialState = { entities: {} };\n\nexport const createEntityByIdReducer = <T extends EntityWithId>() => {\n return (\n state: EntityByIdState<T> = entityByIdInitialState,\n action: EntityByIdAction<T>,\n ): EntityByIdState<T> => {\n switch (action.type) {\n case \"ENTITY_BY_ID:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [entity.id]: entity,\n },\n };\n }\n\n case \"ENTITY_BY_ID:SET_ENTITY_FIELDS\": {\n const { id, fields } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [id]: {\n ...state.entities[id],\n ...fields,\n },\n },\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\": {\n return {\n ...state,\n entities: {},\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ENTITY\": {\n const { id } = action;\n const entities = {\n ...state.entities,\n };\n delete entities[id];\n return {\n ...state,\n entities,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport {\n EntityByIdClearAllEntitiesAction,\n EntityByIdClearEntityAction,\n EntityByIdSetEntityAction,\n EntityByIdSetEntityFieldsAction,\n} from \"./entity-by-id-actions\";\n\nexport interface EntityByIdActions<T extends EntityWithId> {\n setEntity: (entity: T) => EntityByIdSetEntityAction<T>;\n setEntityFields: (\n id: string,\n fields: Partial<T>,\n ) => EntityByIdSetEntityFieldsAction<T>;\n clearEntity: (id: string) => EntityByIdClearEntityAction;\n clearAllEntities: () => EntityByIdClearAllEntitiesAction;\n}\n\nexport const createEntityByIdActions = <\n T extends EntityWithId,\n>(): EntityByIdActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (id, fields) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY_FIELDS\",\n id,\n fields,\n }),\n clearEntity: (id) => ({\n type: \"ENTITY_BY_ID:CLEAR_ENTITY\",\n id,\n }),\n clearAllEntities: () => ({\n type: \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\",\n }),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdState } from \"./entity-by-id-reducer\";\n\nexport interface EntityByIdSelectors<\n TStoreState,\n TEntity extends EntityWithId,\n> {\n getState: EntityByIdStateSelector<TStoreState, TEntity>;\n}\n\nexport type EntityByIdStateSelector<\n TStoreState,\n TEntity extends EntityWithId,\n> = (state: TStoreState) => EntityByIdState<TEntity>;\n\nexport const createEntityByIdSelectors = <\n TStoreState,\n TEntity extends EntityWithId,\n>(\n stateSelector: EntityByIdStateSelector<TStoreState, TEntity>,\n): EntityByIdSelectors<TStoreState, TEntity> => ({\n getState: stateSelector,\n});\n","import { EntityAction } from \"./entity-actions\";\nimport { Reducer } from \"redux\";\n\nexport type EntityState<T> = T;\n\nexport const createEntityReducer = <T>(\n initialEntity: T,\n): Reducer<EntityState<T>, EntityAction<T>> => {\n const INITIAL_STATE = initialEntity;\n\n return (\n state: EntityState<T> = INITIAL_STATE,\n action: EntityAction<T>,\n ): EntityState<T> => {\n switch (action.type) {\n case \"ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return entity;\n }\n\n case \"ENTITY:SET_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n ...fields,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EntitySetEntityAction,\n EntitySetEntityFieldsAction,\n} from \"./entity-actions\";\n\nexport interface EntityActions<T> {\n setEntity: (entity: T) => EntitySetEntityAction<T>;\n setEntityFields: (fields: Partial<T>) => EntitySetEntityFieldsAction<T>;\n}\n\nexport const createEntityActions = <T>(): EntityActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (fields) => ({\n type: \"ENTITY:SET_ENTITY_FIELDS\",\n fields,\n }),\n});\n","import { EntityState } from \"./entity-reducer\";\n\nexport interface EntitySelectors<TStoreState, TEntity> {\n getEntity: (state: TStoreState) => TEntity;\n}\n\nexport type EntityStateSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityState<TEntity>;\n\nexport const createEntitySelectors = <TStoreState, TEntity>(\n stateSelector: EntityStateSelector<TStoreState, TEntity>,\n): EntitySelectors<TStoreState, TEntity> => ({\n getEntity: (state) => stateSelector(state),\n});\n","import { Reducer } from \"redux\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n EntityByIdStateSelector,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\n\nexport interface EntityCrudStatus extends CrudStatus {\n id: string;\n}\n\nexport interface CrudStatus {\n loading?: boolean;\n creating?: boolean;\n updating?: boolean;\n modified?: boolean;\n deleting?: boolean;\n hasError?: boolean;\n errorMessage?: string;\n}\n\nexport type EntityCrudStatusState = EntityByIdState<EntityCrudStatus>;\nexport type EntityCrudStatusAction = EntityByIdAction<EntityCrudStatus>;\nexport type EntityCrudStatusActions = EntityByIdActions<EntityCrudStatus>;\n\nexport interface EntityCrudStatusRedux<TStoreState> {\n reducer: EntityCrudStatusReducer;\n actions: EntityCrudStatusActions;\n selectors: EntityCrudStatusSelectors<TStoreState>;\n}\n\nexport type EntityCrudStatusReducer = Reducer<\n EntityCrudStatusState,\n EntityByIdAction<EntityCrudStatus>\n>;\n\nexport const createEntityCrudStatusReducer = () =>\n createEntityByIdReducer<EntityCrudStatus>();\n\nexport const createEntityCrudStatusActions = (): EntityCrudStatusActions =>\n createEntityByIdActions<EntityCrudStatus>();\n\nexport type EntityCrudStatusSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n EntityCrudStatus\n>;\n\nexport const createEntityCrudStatusSelectors = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n) => createEntityByIdSelectors<TStoreState, EntityCrudStatus>(stateSelector);\n\nexport const createEntityCrudStatusRedux = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n): EntityCrudStatusRedux<TStoreState> => {\n const reducer = createEntityCrudStatusReducer();\n const actions = createEntityCrudStatusActions();\n const selectors = createEntityCrudStatusSelectors(stateSelector);\n return {\n reducer,\n actions,\n selectors,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\n\nexport interface ModifiedFieldItemState extends EntityWithId {\n modified?: boolean;\n originalValue?: string;\n newValue?: string;\n}\n\nexport type ModifiedFieldState = EntityByIdState<ModifiedFieldItemState>;\nexport type ModifiedFieldAction = EntityByIdAction<ModifiedFieldItemState>;\nexport type ModifiedFieldActions = EntityByIdActions<ModifiedFieldItemState>;\n\nexport type ModifiedFieldsSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n ModifiedFieldItemState\n>;\n\nexport type ModifiedFieldStateSelector<TStoreState> = (\n state: TStoreState,\n) => ModifiedFieldState;\n\nexport type ModifiedStateReducer = Reducer<\n ModifiedFieldState,\n ModifiedFieldAction\n>;\n\nexport interface ModifiedFieldRedux<TStoreState> {\n reducer: ModifiedStateReducer;\n selectors: ModifiedFieldsSelectors<TStoreState>;\n actions: ModifiedFieldActions;\n}\n\nexport const createModifiedFieldRedux = <TStoreState>(\n stateSelector: ModifiedFieldStateSelector<TStoreState>,\n): ModifiedFieldRedux<TStoreState> => {\n const reducer = createEntityByIdReducer<ModifiedFieldItemState>();\n\n const selectors: ModifiedFieldsSelectors<TStoreState> =\n createEntityByIdSelectors<TStoreState, ModifiedFieldItemState>(\n stateSelector,\n );\n\n const actions = createEntityByIdActions<ModifiedFieldItemState>();\n\n return {\n reducer,\n selectors,\n actions,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EditableEntityAction } from \"./editable-entity-actions\";\n\nexport interface EditableEntityState<T> {\n id?: string;\n persisted: T;\n editable: T;\n}\n\nexport const createEditableEntityReducer = <T>(\n initialEntity: T,\n initialId?: string,\n): Reducer<EditableEntityState<T>, EditableEntityAction<T>> => {\n const initialState: EditableEntityState<T> = {\n id: initialId,\n editable: initialEntity,\n persisted: initialEntity,\n };\n\n return (state = initialState, action) => {\n switch (action.type) {\n case \"EDITABLE_ENTITY:SET_ENTITY_ID\": {\n const { id } = action;\n return {\n ...state,\n id,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n editable: {\n ...state.editable,\n ...fields,\n },\n };\n }\n\n case \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\": {\n return {\n ...state,\n editable: state.persisted,\n };\n }\n\n case \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\": {\n return {\n ...state,\n persisted: state.editable,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EditableEntityCommitEditableEntityToPersistedAction,\n EditableEntityRevertEditableEntityAction,\n EditableEntitySetEditableEntityAction,\n EditableEntitySetEditableEntityFieldsAction,\n EditableEntitySetEntityAction,\n EditableEntitySetEntityIdAction,\n EditableEntitySetPersistedEntityAction,\n} from \"./editable-entity-actions\";\n\nexport interface EditableEntityActions<T> {\n setEntityId: (\n entityId: string | undefined,\n ) => EditableEntitySetEntityIdAction;\n setEntity: (entity: T) => EditableEntitySetEntityAction<T>;\n setPersistedEntity: (entity: T) => EditableEntitySetPersistedEntityAction<T>;\n setEditableEntity: (entity: T) => EditableEntitySetEditableEntityAction<T>;\n setEditableEntityFields: (\n fields: Partial<T>,\n ) => EditableEntitySetEditableEntityFieldsAction<T>;\n revertEditableEntity: () => EditableEntityRevertEditableEntityAction;\n commitEditableEntityToPersisted: () => EditableEntityCommitEditableEntityToPersistedAction;\n}\n\nexport const createEditableEntityActions = <T>(): EditableEntityActions<T> => ({\n setEntityId: (id: string | undefined) => ({\n type: \"EDITABLE_ENTITY:SET_ENTITY_ID\",\n id,\n }),\n setEntity: (entity) => ({ type: \"EDITABLE_ENTITY:SET_ENTITY\", entity }),\n setPersistedEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\",\n entity,\n }),\n setEditableEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\",\n entity,\n }),\n setEditableEntityFields: (fields) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\",\n fields,\n }),\n revertEditableEntity: () => ({\n type: \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\",\n }),\n commitEditableEntityToPersisted: () => ({\n type: \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\",\n }),\n});\n","import { Reducer } from \"redux\";\nimport { SelectedIdsAction } from \"./selected-ids-actions\";\n\nexport interface SelectedIdsState {\n selectedIds: Array<string>;\n}\n\nexport const createSelectedIdsReducerInitialState = (\n initialSelection: string[] = [],\n): SelectedIdsState => ({\n selectedIds: initialSelection,\n});\n\nconst INITIAL_STATE = createSelectedIdsReducerInitialState();\n\nexport type SelectedIdsReducer = Reducer<SelectedIdsState, SelectedIdsAction>;\n\nexport const createSelectedIdsReducer =\n (initialState: SelectedIdsState = INITIAL_STATE): SelectedIdsReducer =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SELECTED_IDS:SET_SELECTED_IDS\": {\n const { selectedIds } = action;\n return {\n ...state,\n selectedIds,\n };\n }\n case \"SELECTED_IDS:CLEAR_SELECTED_IDS\": {\n return {\n ...state,\n selectedIds: [],\n };\n }\n default:\n return state;\n }\n };\n\nexport const selectedIdsReducer = createSelectedIdsReducer();\n","import {\n SelectedIdsClearSelectedIdsAction,\n SelectedIdsSetSelectedIdsAction,\n} from \"./selected-ids-actions\";\n\nexport interface SelectedIdsActions {\n setSelectedIds: (ids: Array<string>) => SelectedIdsSetSelectedIdsAction;\n clearSelectedIds: () => SelectedIdsClearSelectedIdsAction;\n}\n\nexport const createSelectedIdsActions = (): SelectedIdsActions => ({\n setSelectedIds: (selectedIds) => ({\n selectedIds,\n type: \"SELECTED_IDS:SET_SELECTED_IDS\",\n }),\n clearSelectedIds: () => ({\n type: \"SELECTED_IDS:CLEAR_SELECTED_IDS\",\n }),\n});\n\nexport const selectedIdsActions = createSelectedIdsActions();\n","import { SelectedIdsState } from \"./selected-ids-reducer\";\n\nexport interface SelectedIdsSelectors<TStoreState> {\n getState: SelectedIdsStateSelector<TStoreState>;\n}\n\nexport type SelectedIdsStateSelector<TStoreState> = (\n state: TStoreState,\n) => SelectedIdsState;\n\nexport const createSelectedIdsSelectors = <TStoreState>(\n stateSelector: SelectedIdsStateSelector<TStoreState>,\n): SelectedIdsSelectors<TStoreState> => ({\n getState: stateSelector,\n});\n","import { SortOrderByIdAction } from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdState {\n ids: Array<string> | undefined;\n}\n\nconst INITIAL_STATE: SortOrderByIdState = {\n ids: undefined,\n};\n\nexport const createSortOrderByIdReducer =\n () =>\n (\n state: SortOrderByIdState = INITIAL_STATE,\n action: SortOrderByIdAction,\n ): SortOrderByIdState => {\n switch (action.type) {\n case \"SORT_ORDER_BY_ID:SET_SORT_ORDER\":\n return {\n ...state,\n ids: action.ids,\n };\n\n case \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\":\n return {\n ...state,\n ids: undefined,\n };\n\n default:\n return state;\n }\n };\n\nexport const sortOrderByIdReducer = createSortOrderByIdReducer();\n","import {\n SortOrderByIdClearSortOrderAction,\n SortOrderByIdSetSortOrderAction,\n} from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdActions {\n setSortOrder: (ids: Array<string>) => SortOrderByIdSetSortOrderAction;\n clearSortOrder: () => SortOrderByIdClearSortOrderAction;\n}\n\nexport const createSortOrderByIdActions = (): SortOrderByIdActions => {\n return {\n setSortOrder: (ids) => ({\n ids,\n type: \"SORT_ORDER_BY_ID:SET_SORT_ORDER\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\",\n }),\n };\n};\n\nexport const sortOrderByIdActions = createSortOrderByIdActions();\n","import { SortOrderByIdState } from \"./sort-order-by-id-reducer\";\n\ninterface SortOrderByIdSelectors<TStoreState> {\n getSortOrderByIdState: (state: TStoreState) => SortOrderByIdState;\n getSortOrder: (state: TStoreState) => Array<string> | undefined;\n}\n\ntype SortOrderByIdStateProvider<TStoreState> = (\n state: TStoreState,\n) => SortOrderByIdState;\n\nexport const createSortOrderByIdSelectors = <TStoreState>(\n rootStateProvider: SortOrderByIdStateProvider<TStoreState>,\n): SortOrderByIdSelectors<TStoreState> => {\n return {\n getSortOrderByIdState: (state) => {\n return rootStateProvider(state);\n },\n getSortOrder: (state) => {\n return rootStateProvider(state).ids;\n },\n };\n};\n","import { Reducer } from \"redux\";\nimport { SortOrderAction } from \"./sort-order-actions\";\n\nexport interface SortOrderState<TSortBy> {\n sortBy: TSortBy | undefined;\n desc: boolean;\n}\n\nexport const createSortOrderReducerInitialState = <TSortBy>(\n sortBy: TSortBy | undefined = undefined,\n desc: boolean = false,\n): SortOrderState<TSortBy> => ({\n sortBy,\n desc,\n});\n\nexport type SortOrderReducer<TSortBy> = Reducer<\n SortOrderState<TSortBy>,\n SortOrderAction<TSortBy>\n>;\n\nexport const createSortOrderReducer =\n <TSortBy>(\n initialState: SortOrderState<TSortBy> = { sortBy: undefined, desc: false },\n ): SortOrderReducer<TSortBy> =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SORT_ORDER:SET_SORT_BY\": {\n const { sortBy, desc } = action;\n return {\n ...state,\n sortBy,\n desc,\n };\n }\n\n case \"SORT_ORDER:CLEAR_SORT_ORDER\": {\n return {\n ...state,\n sortBy: undefined,\n desc: false,\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n SortOrderClearSortOrderAction,\n SortOrderSetSortByAction,\n} from \"./sort-order-actions\";\n\nexport interface SortOrderActions<TSortBy> {\n sortBy: (sortBy: TSortBy, desc: boolean) => SortOrderSetSortByAction<TSortBy>;\n clearSortOrder: () => SortOrderClearSortOrderAction;\n}\n\nexport const createSortOrderActions = <\n TSortBy,\n>(): SortOrderActions<TSortBy> => ({\n sortBy: (sortBy, desc) => ({\n desc,\n sortBy,\n type: \"SORT_ORDER:SET_SORT_BY\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER:CLEAR_SORT_ORDER\",\n }),\n});\n","import { SortOrderState } from \"./sort-order-reducer\";\n\nexport interface SortOrderSelectors<TStoreState, TSortBy> {\n getState: SortOrderStateSelector<TStoreState, TSortBy>;\n}\n\nexport type SortOrderStateSelector<TStoreState, TSortBy> = (\n state: TStoreState,\n) => SortOrderState<TSortBy>;\n\nexport const createSortOrderSelectors = <TStoreState, TSortBy>(\n stateProvider: SortOrderStateSelector<TStoreState, TSortBy>,\n): SortOrderSelectors<TStoreState, TSortBy> => ({\n getState: stateProvider,\n});\n","import { ValueByIdAction } from \"./value-by-id-actions\";\n\nexport interface ValueByIdState<TValue> {\n values: { [key: string]: TValue };\n}\n\nexport const valueByIdInitialState = { values: {} };\n\nexport const createValueByIdReducer = <TValue>(\n initialValue: ValueByIdState<TValue> = valueByIdInitialState,\n) => {\n return (\n state: ValueByIdState<TValue> = initialValue,\n action: ValueByIdAction<TValue>,\n ): ValueByIdState<TValue> => {\n switch (action.type) {\n case \"VALUE_BY_ID:SET_VALUE\": {\n const { id, value } = action;\n return {\n ...state,\n values: {\n ...state.values,\n [id]: value,\n },\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_ALL_VALUES\": {\n return {\n ...state,\n values: {},\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_VALUE\": {\n const { id } = action;\n const values = {\n ...state.values,\n };\n delete values[id];\n return {\n ...state,\n values,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n ValueByIdClearAllValuesAction,\n ValueByIdClearValueAction,\n ValueByIdSetValueAction,\n} from \"./value-by-id-actions\";\n\nexport interface ValueByIdActions<TValue> {\n setValue: (id: string, value: TValue) => ValueByIdSetValueAction<TValue>;\n clearValue: (id: string) => ValueByIdClearValueAction;\n clearAllValues: () => ValueByIdClearAllValuesAction;\n}\n\nexport const createValueByIdActions = <TValue>(): ValueByIdActions<TValue> => ({\n setValue: (id, value) => ({\n type: \"VALUE_BY_ID:SET_VALUE\",\n id,\n value,\n }),\n clearValue: (id) => ({\n type: \"VALUE_BY_ID:CLEAR_VALUE\",\n id,\n }),\n clearAllValues: () => ({\n type: \"VALUE_BY_ID:CLEAR_ALL_VALUES\",\n }),\n});\n","import { ValueByIdState } from \"./value-by-id-reducer\";\n\nexport interface ValueByIdSelectors<TStoreState, TValue> {\n getState: ValueByIdStateSelector<TStoreState, TValue>;\n}\n\nexport type ValueByIdStateSelector<TStoreState, TValue> = (\n state: TStoreState,\n) => ValueByIdState<TValue>;\n\nexport const createValueByIdSelectors = <TStoreState, TValue>(\n stateSelector: ValueByIdStateSelector<TStoreState, TValue>,\n): ValueByIdSelectors<TStoreState, TValue> => ({\n getState: stateSelector,\n});\n"],"names":["createRecordObjectReducer","reducer","state","action","recordId","newState","innerAction","createRecordObjectActions","reducerIdGate","reducerId","isValidReducerIdGateAction","reducerIdGateAction","wrapActionWithReducerIdGate","actionCreator","args","wrapActionsWithReducerIdGate","actionCreators","boundActionCreators","key","createCommitReducerActions","id","values","createCommitReducer","initialState","createCommitReducerSelectors","stateSelector","createEntityListActions","entity","index","fields","list","fieldsMatch","keys","i","createEntityListReducer","item","createEntityListSelectors","store","entityByIdInitialState","createEntityByIdReducer","entities","createEntityByIdActions","createEntityByIdSelectors","createEntityReducer","initialEntity","INITIAL_STATE","createEntityActions","createEntitySelectors","createEntityCrudStatusReducer","createEntityCrudStatusActions","createEntityCrudStatusSelectors","createEntityCrudStatusRedux","actions","selectors","createModifiedFieldRedux","createEditableEntityReducer","initialId","createEditableEntityActions","createSelectedIdsReducerInitialState","initialSelection","createSelectedIdsReducer","selectedIds","selectedIdsReducer","createSelectedIdsActions","selectedIdsActions","createSelectedIdsSelectors","createSortOrderByIdReducer","sortOrderByIdReducer","createSortOrderByIdActions","ids","sortOrderByIdActions","createSortOrderByIdSelectors","rootStateProvider","createSortOrderReducerInitialState","sortBy","desc","createSortOrderReducer","createSortOrderActions","createSortOrderSelectors","stateProvider","valueByIdInitialState","createValueByIdReducer","initialValue","value","createValueByIdActions","createValueByIdSelectors"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/features/higher-order-reducers/record-object-reducer/record-object-reducer.ts","../src/features/higher-order-reducers/record-object-reducer/record-object-action-creators.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-gate.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-action-wrapper.ts","../src/features/reducer-factories/commit-reducer/commit-action-creators.ts","../src/features/reducer-factories/commit-reducer/commit-reducer.ts","../src/features/reducer-factories/commit-reducer/commit-selectors.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-action-creators.ts","../src/common/util/field-matcher.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-reducer.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-selectors.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-reducer.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-action-creators.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-selectors.ts","../src/features/reducer-factories/entity-reducer/entity-reducer.ts","../src/features/reducer-factories/entity-reducer/entity-action-creators.ts","../src/features/reducer-factories/entity-reducer/entity-selectors.ts","../src/features/reducer-factories/entity-crud-status-reducer/entity-crud-status-redux.ts","../src/features/reducer-factories/modified-field-reducer/modified-field-redux.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-reducer.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-reducer.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-selectors.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-reducer.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-action-creators.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-selectors.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-reducer.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-action-creators.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-selectors.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-reducer.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-action-creators.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-selectors.ts"],"sourcesContent":["import { Reducer } from \"redux\";\nimport {\n RecordObjectAction,\n RecordObjectClearRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport type RecordObjectState<TInnerState> = Record<\n RecordObjectKey,\n TInnerState\n>;\n\nexport const createRecordObjectReducer =\n <TInnerAction extends RecordObjectWrappedAction, TInnerState = unknown>(\n reducer: Reducer<TInnerState, TInnerAction>,\n ): Reducer<\n RecordObjectState<TInnerState>,\n RecordObjectAction<TInnerAction>\n > =>\n (state = {}, action) => {\n switch (action.type) {\n case \"RECORD_OBJECT:CLEAR_RECORD\": {\n const { recordId } = action as RecordObjectClearRecordAction;\n const newState = { ...state };\n delete newState[recordId];\n return newState;\n }\n\n case \"RECORD_OBJECT:CLEAR_ALL_RECORDS\": {\n return {};\n }\n\n case \"RECORD_OBJECT:ACTION\": {\n const { recordId, action: innerAction } = action;\n return {\n ...state,\n [recordId]: reducer(state[recordId], innerAction),\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n RecordObjectClearAllRecordsAction,\n RecordObjectClearRecordAction,\n RecordObjectRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport interface RecordObjectActions<\n TInnerAction extends RecordObjectWrappedAction,\n> {\n recordAction: (\n recordId: RecordObjectKey,\n action: TInnerAction,\n ) => RecordObjectRecordAction<TInnerAction>;\n clearRecord: (recordId: RecordObjectKey) => RecordObjectClearRecordAction;\n clearAllRecords: () => RecordObjectClearAllRecordsAction;\n}\n\nexport const createRecordObjectActions = <\n TInnerAction extends RecordObjectWrappedAction,\n>(): RecordObjectActions<TInnerAction> => ({\n recordAction: (recordId, action) => ({\n type: \"RECORD_OBJECT:ACTION\",\n action,\n recordId,\n }),\n clearRecord: (recordId) => ({\n type: \"RECORD_OBJECT:CLEAR_RECORD\",\n recordId,\n }),\n clearAllRecords: () => ({\n type: \"RECORD_OBJECT:CLEAR_ALL_RECORDS\",\n }),\n});\n","import { Action, AnyAction, Reducer } from \"redux\";\n\nexport interface ReducerIdGateAction<TInnerAction> {\n type: \"REDUCER_ID_GATE:ACTION\";\n reducerId: string;\n action: TInnerAction;\n}\n\nexport type ReducerIdGateReducer<\n TState,\n TInnerAction extends Action = AnyAction,\n> = Reducer<TState, ReducerIdGateAction<TInnerAction>>;\n\nexport const reducerIdGate =\n <TState, TInnerAction extends Action = AnyAction>(\n reducerId: string,\n reducer: Reducer<TState, TInnerAction>,\n ): ReducerIdGateReducer<TState, TInnerAction> =>\n (state, action) => {\n const newState =\n state == null ? reducer(undefined, {} as TInnerAction) : state;\n\n if (!isValidReducerIdGateAction(action)) {\n return newState;\n }\n\n if (\n reducerId !== action.reducerId ||\n action.type !== \"REDUCER_ID_GATE:ACTION\"\n ) {\n return newState;\n }\n return reducer(newState, action.action);\n };\n\nexport const reducerIdGateAction = <TInnerAction>(\n reducerId: string,\n action: TInnerAction,\n): ReducerIdGateAction<TInnerAction> => ({\n type: \"REDUCER_ID_GATE:ACTION\",\n action,\n reducerId,\n});\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nconst isValidReducerIdGateAction = (action: any): boolean =>\n !!action.action &&\n action.type === \"REDUCER_ID_GATE:ACTION\" &&\n typeof action.reducerId === \"string\";\n","import { ReducerIdGateAction } from \"./reducer-id-gate\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype ActionCreator = (...args: any) => any;\n\nexport type ActionCreatorCreator<TActionCreator extends ActionCreator> = (\n ...args: Parameters<TActionCreator>\n) => ReducerIdGateAction<ReturnType<TActionCreator>>;\n\nexport const wrapActionWithReducerIdGate =\n <TActionCreator extends ActionCreator>(\n reducerId: string,\n actionCreator: TActionCreator,\n ): ActionCreatorCreator<TActionCreator> =>\n (...args) => {\n return {\n type: \"REDUCER_ID_GATE:ACTION\",\n reducerId,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n action: actionCreator(...(args as any)),\n };\n };\n\nexport interface ActionCreatorsMapObject {\n [key: string]: ActionCreator;\n}\n\nexport type ReducerIdGatedActionCreator<\n TActionCreators extends ActionCreatorsMapObject,\n> = {\n [K in keyof TActionCreators]: ActionCreatorCreator<TActionCreators[K]>;\n};\n\nexport const wrapActionsWithReducerIdGate = <\n TActionCreators extends ActionCreatorsMapObject,\n>(\n reducerId: string,\n actionCreators: TActionCreators,\n): ReducerIdGatedActionCreator<TActionCreators> => {\n const boundActionCreators =\n {} as ReducerIdGatedActionCreator<TActionCreators>;\n for (const key in actionCreators) {\n const actionCreator = actionCreators[key];\n boundActionCreators[key] = wrapActionWithReducerIdGate(\n reducerId,\n actionCreator,\n );\n }\n return boundActionCreators;\n};\n","import {\n ClearFilterValuesActionCreator,\n CommitFilterValuesActionCreator,\n SetFilterValuesActionCreator,\n} from \"./commit-actions\";\n\nexport interface CommitReducerActions<TState> {\n setValues: SetFilterValuesActionCreator<TState>;\n commitValues: CommitFilterValuesActionCreator;\n clearValues: ClearFilterValuesActionCreator;\n}\n\nexport const createCommitReducerActions = <TState>(\n id: string,\n): CommitReducerActions<TState> => {\n return {\n setValues: (values) => ({\n type: \"COMMIT_REDUCER.SET_VALUES\",\n id,\n values,\n }),\n commitValues: () => ({\n type: \"COMMIT_REDUCER.COMMIT_VALUES\",\n id,\n }),\n clearValues: () => ({\n type: \"COMMIT_REDUCER.CLEAR\",\n id,\n }),\n };\n};\n","import { CommitReducerAction } from \"./commit-actions\";\nimport { CommitReducerState } from \"./commit-state\";\n\nexport const createCommitReducer =\n <TState>(id: string, initialState: CommitReducerState<TState>) =>\n (\n state: CommitReducerState<TState> = initialState,\n action: CommitReducerAction<TState>,\n ): CommitReducerState<TState> => {\n if (action.id !== id) {\n return state;\n }\n switch (action.type) {\n case `COMMIT_REDUCER.SET_VALUES`: {\n const { values } = action;\n return {\n ...state,\n workspace: {\n ...state.workspace,\n ...values,\n },\n };\n }\n\n case `COMMIT_REDUCER.CLEAR`: {\n return {\n ...state,\n workspace: {\n ...initialState.workspace,\n },\n };\n }\n\n case `COMMIT_REDUCER.COMMIT_VALUES`: {\n return {\n ...state,\n committed: {\n ...state.workspace,\n },\n };\n }\n\n default:\n return state;\n }\n };\n","import { CommitReducerState } from \"./commit-state\";\n\nexport type CommitReducerStateSelector<TStoreState, TState> = (\n state: TStoreState,\n id: string,\n) => CommitReducerState<TState>;\n\nexport interface CommitReducerSelectors<TStoreState, TState> {\n getWorkspaceValues: (state: TStoreState) => TState;\n getCommittedValues: (state: TStoreState) => TState;\n}\n\nexport const createCommitReducerSelectors = <TStoreState, TState>(\n id: string,\n stateSelector: CommitReducerStateSelector<TStoreState, TState>,\n): CommitReducerSelectors<TStoreState, TState> => {\n return {\n getWorkspaceValues: (state) => stateSelector(state, id).workspace,\n getCommittedValues: (state) => stateSelector(state, id).committed,\n };\n};\n","import {\n EntityListActionByFieldsMatchAction,\n EntityListActionByIndexAction,\n EntityListActionOnAllAction,\n EntityListAddAtEndAction,\n EntityListAddAtStartAction,\n EntityListClearListAction,\n EntityListRemoveAction,\n EntityListRemoveAtIndexAction,\n EntityListRemoveByFieldMatchAction,\n EntityListRemoveFirstAction,\n EntityListRemoveLastAction,\n EntityListSetListAction,\n EntityListToggleAction,\n} from \"./entity-list-actions\";\n\nexport interface EntityListActions<T, TInnerAction> {\n addAtEnd: (entity: T) => EntityListAddAtEndAction<T>;\n addAtStart: (entity: T) => EntityListAddAtStartAction<T>;\n clearList: () => EntityListClearListAction;\n removeFirst: () => EntityListRemoveFirstAction;\n removeLast: () => EntityListRemoveLastAction;\n removeAtIndex: (index: number) => EntityListRemoveAtIndexAction;\n removeByFieldMatch: (\n fields: Partial<T>,\n ) => EntityListRemoveByFieldMatchAction<T>;\n remove: (entity: T) => EntityListRemoveAction<T>;\n setList: (list: Array<T>) => EntityListSetListAction<T>;\n toggle: (entity: T) => EntityListToggleAction<T>;\n actionByFieldsMatch: (\n fields: Partial<T>,\n action: TInnerAction,\n ) => EntityListActionByFieldsMatchAction<T, TInnerAction>;\n actionByIndex: (\n index: number,\n action: TInnerAction,\n ) => EntityListActionByIndexAction<TInnerAction>;\n actionOnAll: (\n action: TInnerAction,\n ) => EntityListActionOnAllAction<TInnerAction>;\n}\n\nexport const createEntityListActions = <\n T,\n TInnerAction = unknown,\n>(): EntityListActions<T, TInnerAction> => {\n return {\n addAtEnd: (entity) => ({ type: \"ENTITY_LIST:ADD_AT_END\", entity }),\n addAtStart: (entity) => ({\n entity,\n type: \"ENTITY_LIST:ADD_AT_START\",\n }),\n clearList: () => ({ type: \"ENTITY_LIST:CLEAR_LIST\" }),\n removeFirst: () => ({ type: \"ENTITY_LIST:REMOVE_FIRST\" }),\n removeLast: () => ({ type: \"ENTITY_LIST:REMOVE_LAST\" }),\n removeAtIndex: (index) => ({\n type: \"ENTITY_LIST:REMOVE_AT_INDEX\",\n index,\n }),\n removeByFieldMatch: (fields) => ({\n type: \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\",\n fields,\n }),\n remove: (entity) => ({ type: \"ENTITY_LIST:REMOVE\", entity }),\n setList: (list) => ({ type: \"ENTITY_LIST:SET_LIST\", list }),\n toggle: (entity) => ({ type: \"ENTITY_LIST:TOGGLE\", entity }),\n actionByFieldsMatch: (fields, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\",\n fields,\n action,\n }),\n actionByIndex: (index, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_INDEX\",\n index,\n action,\n }),\n actionOnAll: (action) => ({\n type: \"ENTITY_LIST:ACTION_ON_ALL\",\n action,\n }),\n };\n};\n","export const fieldsMatch = <T>(entity: T, fields: Partial<T>): boolean => {\n const keys = Object.keys(fields) as Array<keyof T>;\n if (keys.length === 0) {\n return false;\n }\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (entity[key] !== fields[key]) {\n return false;\n }\n }\n return true;\n};\n","import { EntityListAction } from \"./entity-list-actions\";\nimport { fieldsMatch } from \"../../../common/util/field-matcher\";\nimport { Action, AnyAction, Reducer } from \"redux\";\n\nexport type EntityListState<TListItem> = Array<TListItem>;\n\nexport const createEntityListReducer =\n <TListItem, TListItemAction extends Action = AnyAction>(\n reducer?: Reducer<TListItem, TListItemAction>,\n ) =>\n (\n state: EntityListState<TListItem> = [],\n action: EntityListAction<TListItem, TListItemAction>,\n ): EntityListState<TListItem> => {\n switch (action.type) {\n case \"ENTITY_LIST:SET_LIST\": {\n const { list } = action;\n return list;\n }\n case \"ENTITY_LIST:CLEAR_LIST\": {\n return [];\n }\n case \"ENTITY_LIST:ADD_AT_END\": {\n const { entity } = action;\n return [...state, entity];\n }\n case \"ENTITY_LIST:ADD_AT_START\": {\n const { entity } = action;\n return [entity, ...state];\n }\n case \"ENTITY_LIST:REMOVE_FIRST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const [, ...list] = state;\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_LAST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const list = [...state];\n list.pop();\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_AT_INDEX\": {\n const { index } = action;\n if (index < 0) {\n throw new Error(\"Index is lower than 0.\");\n }\n if (index >= state.length) {\n throw new Error(\"Index is outside of list bounds.\");\n }\n const list = [...state];\n list.splice(index, 1);\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\": {\n const { fields } = action;\n return state.filter((item) => !fieldsMatch(item, fields));\n }\n\n case \"ENTITY_LIST:REMOVE\": {\n const { entity } = action;\n return state.filter((item) => item !== entity);\n }\n\n case \"ENTITY_LIST:TOGGLE\": {\n const { entity } = action;\n const index = state.findIndex(\n (item) => item === entity || fieldsMatch(item, entity),\n );\n\n if (index >= 0) {\n const list = [...state];\n list.splice(index, index);\n\n return list;\n } else {\n return [...state, entity];\n }\n }\n\n case \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\": {\n const { fields, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByFieldsMatch'.\",\n );\n }\n return state.map((item) =>\n fieldsMatch(item, fields) ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_BY_INDEX\": {\n const { index, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item, i) =>\n index === i ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_ON_ALL\": {\n const { action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item) => reducer(item, innerAction));\n }\n\n default:\n return state;\n }\n };\n","import { EntityListState } from \"./entity-list-reducer\";\n\nexport interface EntityListSelectors<TStoreState, TEntity> {\n getList: (store: TStoreState) => Array<TEntity>;\n}\n\nexport type EntityListSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityListState<TEntity>;\n\nexport const createEntityListSelectors = <TStoreState, TEntity>(\n stateSelector: EntityListSelector<TStoreState, TEntity>,\n): EntityListSelectors<TStoreState, TEntity> => ({\n getList: (store) => stateSelector(store),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"./entity-by-id-actions\";\n\nexport interface EntityByIdState<T extends EntityWithId> {\n entities: { [key: string]: T };\n}\n\nexport const entityByIdInitialState = { entities: {} };\n\nexport const createEntityByIdReducer = <T extends EntityWithId>() => {\n return (\n state: EntityByIdState<T> = entityByIdInitialState,\n action: EntityByIdAction<T>,\n ): EntityByIdState<T> => {\n switch (action.type) {\n case \"ENTITY_BY_ID:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [entity.id]: entity,\n },\n };\n }\n\n case \"ENTITY_BY_ID:SET_ENTITY_FIELDS\": {\n const { id, fields } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [id]: {\n ...state.entities[id],\n ...fields,\n },\n },\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\": {\n return {\n ...state,\n entities: {},\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ENTITY\": {\n const { id } = action;\n const entities = {\n ...state.entities,\n };\n delete entities[id];\n return {\n ...state,\n entities,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport {\n EntityByIdClearAllEntitiesAction,\n EntityByIdClearEntityAction,\n EntityByIdSetEntityAction,\n EntityByIdSetEntityFieldsAction,\n} from \"./entity-by-id-actions\";\n\nexport interface EntityByIdActions<T extends EntityWithId> {\n setEntity: (entity: T) => EntityByIdSetEntityAction<T>;\n setEntityFields: (\n id: string,\n fields: Partial<T>,\n ) => EntityByIdSetEntityFieldsAction<T>;\n clearEntity: (id: string) => EntityByIdClearEntityAction;\n clearAllEntities: () => EntityByIdClearAllEntitiesAction;\n}\n\nexport const createEntityByIdActions = <\n T extends EntityWithId,\n>(): EntityByIdActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (id, fields) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY_FIELDS\",\n id,\n fields,\n }),\n clearEntity: (id) => ({\n type: \"ENTITY_BY_ID:CLEAR_ENTITY\",\n id,\n }),\n clearAllEntities: () => ({\n type: \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\",\n }),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdState } from \"./entity-by-id-reducer\";\n\nexport interface EntityByIdSelectors<\n TStoreState,\n TEntity extends EntityWithId,\n> {\n getState: EntityByIdStateSelector<TStoreState, TEntity>;\n}\n\nexport type EntityByIdStateSelector<\n TStoreState,\n TEntity extends EntityWithId,\n> = (state: TStoreState) => EntityByIdState<TEntity>;\n\nexport const createEntityByIdSelectors = <\n TStoreState,\n TEntity extends EntityWithId,\n>(\n stateSelector: EntityByIdStateSelector<TStoreState, TEntity>,\n): EntityByIdSelectors<TStoreState, TEntity> => ({\n getState: stateSelector,\n});\n","import { EntityAction } from \"./entity-actions\";\nimport { Reducer } from \"redux\";\n\nexport type EntityState<T> = T;\n\nexport const createEntityReducer = <T>(\n initialEntity: T,\n): Reducer<EntityState<T>, EntityAction<T>> => {\n const INITIAL_STATE = initialEntity;\n\n return (\n state: EntityState<T> = INITIAL_STATE,\n action: EntityAction<T>,\n ): EntityState<T> => {\n switch (action.type) {\n case \"ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return entity;\n }\n\n case \"ENTITY:SET_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n ...fields,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EntitySetEntityAction,\n EntitySetEntityFieldsAction,\n} from \"./entity-actions\";\n\nexport interface EntityActions<T> {\n setEntity: (entity: T) => EntitySetEntityAction<T>;\n setEntityFields: (fields: Partial<T>) => EntitySetEntityFieldsAction<T>;\n}\n\nexport const createEntityActions = <T>(): EntityActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (fields) => ({\n type: \"ENTITY:SET_ENTITY_FIELDS\",\n fields,\n }),\n});\n","import { EntityState } from \"./entity-reducer\";\n\nexport interface EntitySelectors<TStoreState, TEntity> {\n getEntity: (state: TStoreState) => TEntity;\n}\n\nexport type EntityStateSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityState<TEntity>;\n\nexport const createEntitySelectors = <TStoreState, TEntity>(\n stateSelector: EntityStateSelector<TStoreState, TEntity>,\n): EntitySelectors<TStoreState, TEntity> => ({\n getEntity: (state) => stateSelector(state),\n});\n","import { Reducer } from \"redux\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n EntityByIdStateSelector,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\n\nexport interface EntityCrudStatus extends CrudStatus {\n id: string;\n}\n\nexport interface CrudStatus {\n loading?: boolean;\n creating?: boolean;\n updating?: boolean;\n modified?: boolean;\n deleting?: boolean;\n hasError?: boolean;\n errorMessage?: string;\n}\n\nexport type EntityCrudStatusState = EntityByIdState<EntityCrudStatus>;\nexport type EntityCrudStatusAction = EntityByIdAction<EntityCrudStatus>;\nexport type EntityCrudStatusActions = EntityByIdActions<EntityCrudStatus>;\n\nexport interface EntityCrudStatusRedux<TStoreState> {\n reducer: EntityCrudStatusReducer;\n actions: EntityCrudStatusActions;\n selectors: EntityCrudStatusSelectors<TStoreState>;\n}\n\nexport type EntityCrudStatusReducer = Reducer<\n EntityCrudStatusState,\n EntityByIdAction<EntityCrudStatus>\n>;\n\nexport const createEntityCrudStatusReducer = () =>\n createEntityByIdReducer<EntityCrudStatus>();\n\nexport const createEntityCrudStatusActions = (): EntityCrudStatusActions =>\n createEntityByIdActions<EntityCrudStatus>();\n\nexport type EntityCrudStatusSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n EntityCrudStatus\n>;\n\nexport const createEntityCrudStatusSelectors = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n) => createEntityByIdSelectors<TStoreState, EntityCrudStatus>(stateSelector);\n\nexport const createEntityCrudStatusRedux = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n): EntityCrudStatusRedux<TStoreState> => {\n const reducer = createEntityCrudStatusReducer();\n const actions = createEntityCrudStatusActions();\n const selectors = createEntityCrudStatusSelectors(stateSelector);\n return {\n reducer,\n actions,\n selectors,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\n\nexport interface ModifiedFieldItemState extends EntityWithId {\n modified?: boolean;\n originalValue?: string;\n newValue?: string;\n}\n\nexport type ModifiedFieldState = EntityByIdState<ModifiedFieldItemState>;\nexport type ModifiedFieldAction = EntityByIdAction<ModifiedFieldItemState>;\nexport type ModifiedFieldActions = EntityByIdActions<ModifiedFieldItemState>;\n\nexport type ModifiedFieldsSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n ModifiedFieldItemState\n>;\n\nexport type ModifiedFieldStateSelector<TStoreState> = (\n state: TStoreState,\n) => ModifiedFieldState;\n\nexport type ModifiedStateReducer = Reducer<\n ModifiedFieldState,\n ModifiedFieldAction\n>;\n\nexport interface ModifiedFieldRedux<TStoreState> {\n reducer: ModifiedStateReducer;\n selectors: ModifiedFieldsSelectors<TStoreState>;\n actions: ModifiedFieldActions;\n}\n\nexport const createModifiedFieldRedux = <TStoreState>(\n stateSelector: ModifiedFieldStateSelector<TStoreState>,\n): ModifiedFieldRedux<TStoreState> => {\n const reducer = createEntityByIdReducer<ModifiedFieldItemState>();\n\n const selectors: ModifiedFieldsSelectors<TStoreState> =\n createEntityByIdSelectors<TStoreState, ModifiedFieldItemState>(\n stateSelector,\n );\n\n const actions = createEntityByIdActions<ModifiedFieldItemState>();\n\n return {\n reducer,\n selectors,\n actions,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EditableEntityAction } from \"./editable-entity-actions\";\n\nexport interface EditableEntityState<T> {\n id?: string;\n persisted: T;\n editable: T;\n}\n\nexport const createEditableEntityReducer = <T>(\n initialEntity: T,\n initialId?: string,\n): Reducer<EditableEntityState<T>, EditableEntityAction<T>> => {\n const initialState: EditableEntityState<T> = {\n id: initialId,\n editable: initialEntity,\n persisted: initialEntity,\n };\n\n return (state = initialState, action) => {\n switch (action.type) {\n case \"EDITABLE_ENTITY:SET_ENTITY_ID\": {\n const { id } = action;\n return {\n ...state,\n id,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n editable: {\n ...state.editable,\n ...fields,\n },\n };\n }\n\n case \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\": {\n return {\n ...state,\n editable: state.persisted,\n };\n }\n\n case \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\": {\n return {\n ...state,\n persisted: state.editable,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EditableEntityCommitEditableEntityToPersistedAction,\n EditableEntityRevertEditableEntityAction,\n EditableEntitySetEditableEntityAction,\n EditableEntitySetEditableEntityFieldsAction,\n EditableEntitySetEntityAction,\n EditableEntitySetEntityIdAction,\n EditableEntitySetPersistedEntityAction,\n} from \"./editable-entity-actions\";\n\nexport interface EditableEntityActions<T> {\n setEntityId: (\n entityId: string | undefined,\n ) => EditableEntitySetEntityIdAction;\n setEntity: (entity: T) => EditableEntitySetEntityAction<T>;\n setPersistedEntity: (entity: T) => EditableEntitySetPersistedEntityAction<T>;\n setEditableEntity: (entity: T) => EditableEntitySetEditableEntityAction<T>;\n setEditableEntityFields: (\n fields: Partial<T>,\n ) => EditableEntitySetEditableEntityFieldsAction<T>;\n revertEditableEntity: () => EditableEntityRevertEditableEntityAction;\n commitEditableEntityToPersisted: () => EditableEntityCommitEditableEntityToPersistedAction;\n}\n\nexport const createEditableEntityActions = <T>(): EditableEntityActions<T> => ({\n setEntityId: (id: string | undefined) => ({\n type: \"EDITABLE_ENTITY:SET_ENTITY_ID\",\n id,\n }),\n setEntity: (entity) => ({ type: \"EDITABLE_ENTITY:SET_ENTITY\", entity }),\n setPersistedEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\",\n entity,\n }),\n setEditableEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\",\n entity,\n }),\n setEditableEntityFields: (fields) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\",\n fields,\n }),\n revertEditableEntity: () => ({\n type: \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\",\n }),\n commitEditableEntityToPersisted: () => ({\n type: \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\",\n }),\n});\n","import { Reducer } from \"redux\";\nimport { SelectedIdsAction } from \"./selected-ids-actions\";\n\nexport interface SelectedIdsState {\n selectedIds: Array<string>;\n}\n\nexport const createSelectedIdsReducerInitialState = (\n initialSelection: string[] = [],\n): SelectedIdsState => ({\n selectedIds: initialSelection,\n});\n\nconst INITIAL_STATE = createSelectedIdsReducerInitialState();\n\nexport type SelectedIdsReducer = Reducer<SelectedIdsState, SelectedIdsAction>;\n\nexport const createSelectedIdsReducer =\n (initialState: SelectedIdsState = INITIAL_STATE): SelectedIdsReducer =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SELECTED_IDS:SET_SELECTED_IDS\": {\n const { selectedIds } = action;\n return {\n ...state,\n selectedIds,\n };\n }\n case \"SELECTED_IDS:CLEAR_SELECTED_IDS\": {\n return {\n ...state,\n selectedIds: [],\n };\n }\n default:\n return state;\n }\n };\n\nexport const selectedIdsReducer = createSelectedIdsReducer();\n","import {\n SelectedIdsClearSelectedIdsAction,\n SelectedIdsSetSelectedIdsAction,\n} from \"./selected-ids-actions\";\n\nexport interface SelectedIdsActions {\n setSelectedIds: (ids: Array<string>) => SelectedIdsSetSelectedIdsAction;\n clearSelectedIds: () => SelectedIdsClearSelectedIdsAction;\n}\n\nexport const createSelectedIdsActions = (): SelectedIdsActions => ({\n setSelectedIds: (selectedIds) => ({\n selectedIds,\n type: \"SELECTED_IDS:SET_SELECTED_IDS\",\n }),\n clearSelectedIds: () => ({\n type: \"SELECTED_IDS:CLEAR_SELECTED_IDS\",\n }),\n});\n\nexport const selectedIdsActions = createSelectedIdsActions();\n","import { SelectedIdsState } from \"./selected-ids-reducer\";\n\nexport interface SelectedIdsSelectors<TStoreState> {\n getState: SelectedIdsStateSelector<TStoreState>;\n}\n\nexport type SelectedIdsStateSelector<TStoreState> = (\n state: TStoreState,\n) => SelectedIdsState;\n\nexport const createSelectedIdsSelectors = <TStoreState>(\n stateSelector: SelectedIdsStateSelector<TStoreState>,\n): SelectedIdsSelectors<TStoreState> => ({\n getState: stateSelector,\n});\n","import { SortOrderByIdAction } from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdState {\n ids: Array<string> | undefined;\n}\n\nconst INITIAL_STATE: SortOrderByIdState = {\n ids: undefined,\n};\n\nexport const createSortOrderByIdReducer =\n () =>\n (\n state: SortOrderByIdState = INITIAL_STATE,\n action: SortOrderByIdAction,\n ): SortOrderByIdState => {\n switch (action.type) {\n case \"SORT_ORDER_BY_ID:SET_SORT_ORDER\":\n return {\n ...state,\n ids: action.ids,\n };\n\n case \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\":\n return {\n ...state,\n ids: undefined,\n };\n\n default:\n return state;\n }\n };\n\nexport const sortOrderByIdReducer = createSortOrderByIdReducer();\n","import {\n SortOrderByIdClearSortOrderAction,\n SortOrderByIdSetSortOrderAction,\n} from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdActions {\n setSortOrder: (ids: Array<string>) => SortOrderByIdSetSortOrderAction;\n clearSortOrder: () => SortOrderByIdClearSortOrderAction;\n}\n\nexport const createSortOrderByIdActions = (): SortOrderByIdActions => {\n return {\n setSortOrder: (ids) => ({\n ids,\n type: \"SORT_ORDER_BY_ID:SET_SORT_ORDER\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\",\n }),\n };\n};\n\nexport const sortOrderByIdActions = createSortOrderByIdActions();\n","import { SortOrderByIdState } from \"./sort-order-by-id-reducer\";\n\ninterface SortOrderByIdSelectors<TStoreState> {\n getSortOrderByIdState: (state: TStoreState) => SortOrderByIdState;\n getSortOrder: (state: TStoreState) => Array<string> | undefined;\n}\n\ntype SortOrderByIdStateProvider<TStoreState> = (\n state: TStoreState,\n) => SortOrderByIdState;\n\nexport const createSortOrderByIdSelectors = <TStoreState>(\n rootStateProvider: SortOrderByIdStateProvider<TStoreState>,\n): SortOrderByIdSelectors<TStoreState> => {\n return {\n getSortOrderByIdState: (state) => {\n return rootStateProvider(state);\n },\n getSortOrder: (state) => {\n return rootStateProvider(state).ids;\n },\n };\n};\n","import { Reducer } from \"redux\";\nimport { SortOrderAction } from \"./sort-order-actions\";\n\nexport interface SortOrderState<TSortBy> {\n sortBy: TSortBy | undefined;\n desc: boolean;\n}\n\nexport const createSortOrderReducerInitialState = <TSortBy>(\n sortBy: TSortBy | undefined = undefined,\n desc: boolean = false,\n): SortOrderState<TSortBy> => ({\n sortBy,\n desc,\n});\n\nexport type SortOrderReducer<TSortBy> = Reducer<\n SortOrderState<TSortBy>,\n SortOrderAction<TSortBy>\n>;\n\nexport const createSortOrderReducer =\n <TSortBy>(\n initialState: SortOrderState<TSortBy> = { sortBy: undefined, desc: false },\n ): SortOrderReducer<TSortBy> =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SORT_ORDER:SET_SORT_BY\": {\n const { sortBy, desc } = action;\n return {\n ...state,\n sortBy,\n desc,\n };\n }\n\n case \"SORT_ORDER:CLEAR_SORT_ORDER\": {\n return {\n ...state,\n sortBy: undefined,\n desc: false,\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n SortOrderClearSortOrderAction,\n SortOrderSetSortByAction,\n} from \"./sort-order-actions\";\n\nexport interface SortOrderActions<TSortBy> {\n sortBy: (sortBy: TSortBy, desc: boolean) => SortOrderSetSortByAction<TSortBy>;\n clearSortOrder: () => SortOrderClearSortOrderAction;\n}\n\nexport const createSortOrderActions = <\n TSortBy,\n>(): SortOrderActions<TSortBy> => ({\n sortBy: (sortBy, desc) => ({\n desc,\n sortBy,\n type: \"SORT_ORDER:SET_SORT_BY\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER:CLEAR_SORT_ORDER\",\n }),\n});\n","import { SortOrderState } from \"./sort-order-reducer\";\n\nexport interface SortOrderSelectors<TStoreState, TSortBy> {\n getState: SortOrderStateSelector<TStoreState, TSortBy>;\n}\n\nexport type SortOrderStateSelector<TStoreState, TSortBy> = (\n state: TStoreState,\n) => SortOrderState<TSortBy>;\n\nexport const createSortOrderSelectors = <TStoreState, TSortBy>(\n stateProvider: SortOrderStateSelector<TStoreState, TSortBy>,\n): SortOrderSelectors<TStoreState, TSortBy> => ({\n getState: stateProvider,\n});\n","import { ValueByIdAction } from \"./value-by-id-actions\";\n\nexport interface ValueByIdState<TValue> {\n values: { [key: string]: TValue };\n}\n\nexport const valueByIdInitialState = { values: {} };\n\nexport const createValueByIdReducer = <TValue>(\n initialValue: ValueByIdState<TValue> = valueByIdInitialState,\n) => {\n return (\n state: ValueByIdState<TValue> = initialValue,\n action: ValueByIdAction<TValue>,\n ): ValueByIdState<TValue> => {\n switch (action.type) {\n case \"VALUE_BY_ID:SET_VALUE\": {\n const { id, value } = action;\n return {\n ...state,\n values: {\n ...state.values,\n [id]: value,\n },\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_ALL_VALUES\": {\n return {\n ...state,\n values: {},\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_VALUE\": {\n const { id } = action;\n const values = {\n ...state.values,\n };\n delete values[id];\n return {\n ...state,\n values,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n ValueByIdClearAllValuesAction,\n ValueByIdClearValueAction,\n ValueByIdSetValueAction,\n} from \"./value-by-id-actions\";\n\nexport interface ValueByIdActions<TValue> {\n setValue: (id: string, value: TValue) => ValueByIdSetValueAction<TValue>;\n clearValue: (id: string) => ValueByIdClearValueAction;\n clearAllValues: () => ValueByIdClearAllValuesAction;\n}\n\nexport const createValueByIdActions = <TValue>(): ValueByIdActions<TValue> => ({\n setValue: (id, value) => ({\n type: \"VALUE_BY_ID:SET_VALUE\",\n id,\n value,\n }),\n clearValue: (id) => ({\n type: \"VALUE_BY_ID:CLEAR_VALUE\",\n id,\n }),\n clearAllValues: () => ({\n type: \"VALUE_BY_ID:CLEAR_ALL_VALUES\",\n }),\n});\n","import { ValueByIdState } from \"./value-by-id-reducer\";\n\nexport interface ValueByIdSelectors<TStoreState, TValue> {\n getState: ValueByIdStateSelector<TStoreState, TValue>;\n}\n\nexport type ValueByIdStateSelector<TStoreState, TValue> = (\n state: TStoreState,\n) => ValueByIdState<TValue>;\n\nexport const createValueByIdSelectors = <TStoreState, TValue>(\n stateSelector: ValueByIdStateSelector<TStoreState, TValue>,\n): ValueByIdSelectors<TStoreState, TValue> => ({\n getState: stateSelector,\n});\n"],"names":["createRecordObjectReducer","reducer","state","action","recordId","newState","innerAction","createRecordObjectActions","reducerIdGate","reducerId","isValidReducerIdGateAction","reducerIdGateAction","wrapActionWithReducerIdGate","actionCreator","args","wrapActionsWithReducerIdGate","actionCreators","boundActionCreators","key","createCommitReducerActions","id","values","createCommitReducer","initialState","createCommitReducerSelectors","stateSelector","createEntityListActions","entity","index","fields","list","fieldsMatch","keys","i","createEntityListReducer","item","createEntityListSelectors","store","entityByIdInitialState","createEntityByIdReducer","entities","createEntityByIdActions","createEntityByIdSelectors","createEntityReducer","initialEntity","INITIAL_STATE","createEntityActions","createEntitySelectors","createEntityCrudStatusReducer","createEntityCrudStatusActions","createEntityCrudStatusSelectors","createEntityCrudStatusRedux","actions","selectors","createModifiedFieldRedux","createEditableEntityReducer","initialId","createEditableEntityActions","createSelectedIdsReducerInitialState","initialSelection","createSelectedIdsReducer","selectedIds","selectedIdsReducer","createSelectedIdsActions","selectedIdsActions","createSelectedIdsSelectors","createSortOrderByIdReducer","sortOrderByIdReducer","createSortOrderByIdActions","ids","sortOrderByIdActions","createSortOrderByIdSelectors","rootStateProvider","createSortOrderReducerInitialState","sortBy","desc","createSortOrderReducer","createSortOrderActions","createSortOrderSelectors","stateProvider","valueByIdInitialState","createValueByIdReducer","initialValue","value","createValueByIdActions","createValueByIdSelectors"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=e=>(t={},E)=>{switch(E.type){case"RECORD_OBJECT:CLEAR_RECORD":{const{recordId:r}=E,c={...t};return delete c[r],c}case"RECORD_OBJECT:CLEAR_ALL_RECORDS":return{};case"RECORD_OBJECT:ACTION":{const{recordId:r,action:c}=E;return{...t,[r]:e(t[r],c)}}default:return t}},N=()=>({recordAction:(e,t)=>({type:"RECORD_OBJECT:ACTION",action:t,recordId:e}),clearRecord:e=>({type:"RECORD_OBJECT:CLEAR_RECORD",recordId:e}),clearAllRecords:()=>({type:"RECORD_OBJECT:CLEAR_ALL_RECORDS"})}),Y=(e,t)=>(E,r)=>{const c=E??t(void 0,{});return!B(r)||e!==r.reducerId||r.type!=="REDUCER_ID_GATE:ACTION"?c:t(c,r.action)},C=(e,t)=>({type:"REDUCER_ID_GATE:ACTION",action:t,reducerId:e}),B=e=>!!e.action&&e.type==="REDUCER_ID_GATE:ACTION"&&typeof e.reducerId=="string",i=(e,t)=>(...E)=>({type:"REDUCER_ID_GATE:ACTION",reducerId:e,action:t(...E)}),p=(e,t)=>{const E={};for(const r in t){const c=t[r];E[r]=i(e,c)}return E},f=e=>({setValues:t=>({type:"COMMIT_REDUCER.SET_VALUES",id:e,values:t}),commitValues:()=>({type:"COMMIT_REDUCER.COMMIT_VALUES",id:e}),clearValues:()=>({type:"COMMIT_REDUCER.CLEAR",id:e})}),V=(e,t)=>(E=t,r)=>{if(r.id!==e)return E;switch(r.type){case"COMMIT_REDUCER.SET_VALUES":{const{values:c}=r;return{...E,workspace:{...E.workspace,...c}}}case"COMMIT_REDUCER.CLEAR":return{...E,workspace:{...t.workspace}};case"COMMIT_REDUCER.COMMIT_VALUES":return{...E,committed:{...E.workspace}};default:return E}},M=(e,t)=>({getWorkspaceValues:E=>t(E,e).workspace,getCommittedValues:E=>t(E,e).committed}),w=()=>({addAtEnd:e=>({type:"ENTITY_LIST:ADD_AT_END",entity:e}),addAtStart:e=>({entity:e,type:"ENTITY_LIST:ADD_AT_START"}),clearList:()=>({type:"ENTITY_LIST:CLEAR_LIST"}),removeFirst:()=>({type:"ENTITY_LIST:REMOVE_FIRST"}),removeLast:()=>({type:"ENTITY_LIST:REMOVE_LAST"}),removeAtIndex:e=>({type:"ENTITY_LIST:REMOVE_AT_INDEX",index:e}),removeByFieldMatch:e=>({type:"ENTITY_LIST:REMOVE_BY_FIELD_MATCH",fields:e}),remove:e=>({type:"ENTITY_LIST:REMOVE",entity:e}),setList:e=>({type:"ENTITY_LIST:SET_LIST",list:e}),toggle:e=>({type:"ENTITY_LIST:TOGGLE",entity:e}),actionByFieldsMatch:(e,t)=>({type:"ENTITY_LIST:ACTION_BY_FIELDS_MATCH",fields:e,action:t}),actionByIndex:(e,t)=>({type:"ENTITY_LIST:ACTION_BY_INDEX",index:e,action:t}),actionOnAll:e=>({type:"ENTITY_LIST:ACTION_ON_ALL",action:e})}),n=(e,t)=>{const E=Object.keys(t);if(E.length===0)return!1;for(let r=0;r<E.length;r++){const c=E[r];if(e[c]!==t[c])return!1}return!0},h=e=>(t=[],E)=>{switch(E.type){case"ENTITY_LIST:SET_LIST":{const{list:r}=E;return r}case"ENTITY_LIST:CLEAR_LIST":return[];case"ENTITY_LIST:ADD_AT_END":{const{entity:r}=E;return[...t,r]}case"ENTITY_LIST:ADD_AT_START":{const{entity:r}=E;return[r,...t]}case"ENTITY_LIST:REMOVE_FIRST":{if(t.length===0)throw new Error("Cannot remove, list is empty.");const[,...r]=t;return r}case"ENTITY_LIST:REMOVE_LAST":{if(t.length===0)throw new Error("Cannot remove, list is empty.");const r=[...t];return r.pop(),r}case"ENTITY_LIST:REMOVE_AT_INDEX":{const{index:r}=E;if(r<0)throw new Error("Index is lower than 0.");if(r>=t.length)throw new Error("Index is outside of list bounds.");const c=[...t];return c.splice(r,1),c}case"ENTITY_LIST:REMOVE_BY_FIELD_MATCH":{const{fields:r}=E;return t.filter(c=>!n(c,r))}case"ENTITY_LIST:REMOVE":{const{entity:r}=E;return t.filter(c=>c!==r)}case"ENTITY_LIST:TOGGLE":{const{entity:r}=E,c=t.findIndex(T=>T===r||n(T,r));if(c>=0){const T=[...t];return T.splice(c,c),T}else return[...t,r]}case"ENTITY_LIST:ACTION_BY_FIELDS_MATCH":{const{fields:r,action:c}=E;if(!e)throw new Error("No reducer specified, unable to handle 'actionByFieldsMatch'.");return t.map(T=>n(T,r)?e(T,c):T)}case"ENTITY_LIST:ACTION_BY_INDEX":{const{index:r,action:c}=E;if(!e)throw new Error("No reducer specified, unable to handle 'actionByIndex'.");return t.map((T,D)=>r===D?e(T,c):T)}case"ENTITY_LIST:ACTION_ON_ALL":{const{action:r}=E;if(!e)throw new Error("No reducer specified, unable to handle 'actionByIndex'.");return t.map(c=>e(c,r))}default:return t}},m=e=>({getList:t=>e(t)}),_={entities:{}},s=()=>(e=_,t)=>{switch(t.type){case"ENTITY_BY_ID:SET_ENTITY":{const{entity:E}=t;return{...e,entities:{...e.entities,[E.id]:E}}}case"ENTITY_BY_ID:SET_ENTITY_FIELDS":{const{id:E,fields:r}=t;return{...e,entities:{...e.entities,[E]:{...e.entities[E],...r}}}}case"ENTITY_BY_ID:CLEAR_ALL_ENTITIES":return{...e,entities:{}};case"ENTITY_BY_ID:CLEAR_ENTITY":{const{id:E}=t,r={...e.entities};return delete r[E],{...e,entities:r}}default:return e}},I=()=>({setEntity:e=>({type:"ENTITY_BY_ID:SET_ENTITY",entity:e}),setEntityFields:(e,t)=>({type:"ENTITY_BY_ID:SET_ENTITY_FIELDS",id:e,fields:t}),clearEntity:e=>({type:"ENTITY_BY_ID:CLEAR_ENTITY",id:e}),clearAllEntities:()=>({type:"ENTITY_BY_ID:CLEAR_ALL_ENTITIES"})}),d=e=>({getState:e}),b=e=>{const t=e;return(E=t,r)=>{switch(r.type){case"ENTITY:SET_ENTITY":{const{entity:c}=r;return c}case"ENTITY:SET_ENTITY_FIELDS":{const{fields:c}=r;return{...E,...c}}default:return E}}},U=()=>({setEntity:e=>({type:"ENTITY:SET_ENTITY",entity:e}),setEntityFields:e=>({type:"ENTITY:SET_ENTITY_FIELDS",fields:e})}),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=e=>(t={},E)=>{switch(E.type){case"RECORD_OBJECT:CLEAR_RECORD":{const{recordId:r}=E,c={...t};return delete c[r],c}case"RECORD_OBJECT:CLEAR_ALL_RECORDS":return{};case"RECORD_OBJECT:ACTION":{const{recordId:r,action:c}=E;return{...t,[r]:e(t[r],c)}}default:return t}},N=()=>({recordAction:(e,t)=>({type:"RECORD_OBJECT:ACTION",action:t,recordId:e}),clearRecord:e=>({type:"RECORD_OBJECT:CLEAR_RECORD",recordId:e}),clearAllRecords:()=>({type:"RECORD_OBJECT:CLEAR_ALL_RECORDS"})}),Y=(e,t)=>(E,r)=>{const c=E??t(void 0,{});return!B(r)||e!==r.reducerId||r.type!=="REDUCER_ID_GATE:ACTION"?c:t(c,r.action)},C=(e,t)=>({type:"REDUCER_ID_GATE:ACTION",action:t,reducerId:e}),B=e=>!!e.action&&e.type==="REDUCER_ID_GATE:ACTION"&&typeof e.reducerId=="string",i=(e,t)=>(...E)=>({type:"REDUCER_ID_GATE:ACTION",reducerId:e,action:t(...E)}),p=(e,t)=>{const E={};for(const r in t){const c=t[r];E[r]=i(e,c)}return E},f=e=>({setValues:t=>({type:"COMMIT_REDUCER.SET_VALUES",id:e,values:t}),commitValues:()=>({type:"COMMIT_REDUCER.COMMIT_VALUES",id:e}),clearValues:()=>({type:"COMMIT_REDUCER.CLEAR",id:e})}),V=(e,t)=>(E=t,r)=>{if(r.id!==e)return E;switch(r.type){case"COMMIT_REDUCER.SET_VALUES":{const{values:c}=r;return{...E,workspace:{...E.workspace,...c}}}case"COMMIT_REDUCER.CLEAR":return{...E,workspace:{...t.workspace}};case"COMMIT_REDUCER.COMMIT_VALUES":return{...E,committed:{...E.workspace}};default:return E}},M=(e,t)=>({getWorkspaceValues:E=>t(E,e).workspace,getCommittedValues:E=>t(E,e).committed}),w=()=>({addAtEnd:e=>({type:"ENTITY_LIST:ADD_AT_END",entity:e}),addAtStart:e=>({entity:e,type:"ENTITY_LIST:ADD_AT_START"}),clearList:()=>({type:"ENTITY_LIST:CLEAR_LIST"}),removeFirst:()=>({type:"ENTITY_LIST:REMOVE_FIRST"}),removeLast:()=>({type:"ENTITY_LIST:REMOVE_LAST"}),removeAtIndex:e=>({type:"ENTITY_LIST:REMOVE_AT_INDEX",index:e}),removeByFieldMatch:e=>({type:"ENTITY_LIST:REMOVE_BY_FIELD_MATCH",fields:e}),remove:e=>({type:"ENTITY_LIST:REMOVE",entity:e}),setList:e=>({type:"ENTITY_LIST:SET_LIST",list:e}),toggle:e=>({type:"ENTITY_LIST:TOGGLE",entity:e}),actionByFieldsMatch:(e,t)=>({type:"ENTITY_LIST:ACTION_BY_FIELDS_MATCH",fields:e,action:t}),actionByIndex:(e,t)=>({type:"ENTITY_LIST:ACTION_BY_INDEX",index:e,action:t}),actionOnAll:e=>({type:"ENTITY_LIST:ACTION_ON_ALL",action:e})}),n=(e,t)=>{const E=Object.keys(t);if(E.length===0)return!1;for(let r=0;r<E.length;r++){const c=E[r];if(e[c]!==t[c])return!1}return!0},h=e=>(t=[],E)=>{switch(E.type){case"ENTITY_LIST:SET_LIST":{const{list:r}=E;return r}case"ENTITY_LIST:CLEAR_LIST":return[];case"ENTITY_LIST:ADD_AT_END":{const{entity:r}=E;return[...t,r]}case"ENTITY_LIST:ADD_AT_START":{const{entity:r}=E;return[r,...t]}case"ENTITY_LIST:REMOVE_FIRST":{if(t.length===0)throw new Error("Cannot remove, list is empty.");const[,...r]=t;return r}case"ENTITY_LIST:REMOVE_LAST":{if(t.length===0)throw new Error("Cannot remove, list is empty.");const r=[...t];return r.pop(),r}case"ENTITY_LIST:REMOVE_AT_INDEX":{const{index:r}=E;if(r<0)throw new Error("Index is lower than 0.");if(r>=t.length)throw new Error("Index is outside of list bounds.");const c=[...t];return c.splice(r,1),c}case"ENTITY_LIST:REMOVE_BY_FIELD_MATCH":{const{fields:r}=E;return t.filter(c=>!n(c,r))}case"ENTITY_LIST:REMOVE":{const{entity:r}=E;return t.filter(c=>c!==r)}case"ENTITY_LIST:TOGGLE":{const{entity:r}=E,c=t.findIndex(T=>T===r||n(T,r));if(c>=0){const T=[...t];return T.splice(c,c),T}else return[...t,r]}case"ENTITY_LIST:ACTION_BY_FIELDS_MATCH":{const{fields:r,action:c}=E;if(!e)throw new Error("No reducer specified, unable to handle 'actionByFieldsMatch'.");return t.map(T=>n(T,r)?e(T,c):T)}case"ENTITY_LIST:ACTION_BY_INDEX":{const{index:r,action:c}=E;if(!e)throw new Error("No reducer specified, unable to handle 'actionByIndex'.");return t.map((T,D)=>r===D?e(T,c):T)}case"ENTITY_LIST:ACTION_ON_ALL":{const{action:r}=E;if(!e)throw new Error("No reducer specified, unable to handle 'actionByIndex'.");return t.map(c=>e(c,r))}default:return t}},m=e=>({getList:t=>e(t)}),_={entities:{}},s=()=>(e=_,t)=>{switch(t.type){case"ENTITY_BY_ID:SET_ENTITY":{const{entity:E}=t;return{...e,entities:{...e.entities,[E.id]:E}}}case"ENTITY_BY_ID:SET_ENTITY_FIELDS":{const{id:E,fields:r}=t;return{...e,entities:{...e.entities,[E]:{...e.entities[E],...r}}}}case"ENTITY_BY_ID:CLEAR_ALL_ENTITIES":return{...e,entities:{}};case"ENTITY_BY_ID:CLEAR_ENTITY":{const{id:E}=t,r={...e.entities};return delete r[E],{...e,entities:r}}default:return e}},I=()=>({setEntity:e=>({type:"ENTITY_BY_ID:SET_ENTITY",entity:e}),setEntityFields:(e,t)=>({type:"ENTITY_BY_ID:SET_ENTITY_FIELDS",id:e,fields:t}),clearEntity:e=>({type:"ENTITY_BY_ID:CLEAR_ENTITY",id:e}),clearAllEntities:()=>({type:"ENTITY_BY_ID:CLEAR_ALL_ENTITIES"})}),d=e=>({getState:e}),b=e=>{const t=e;return(E=t,r)=>{switch(r.type){case"ENTITY:SET_ENTITY":{const{entity:c}=r;return c}case"ENTITY:SET_ENTITY_FIELDS":{const{fields:c}=r;return{...E,...c}}default:return E}}},U=()=>({setEntity:e=>({type:"ENTITY:SET_ENTITY",entity:e}),setEntityFields:e=>({type:"ENTITY:SET_ENTITY_FIELDS",fields:e})}),v=e=>({getEntity:t=>e(t)}),o=()=>s(),S=()=>I(),u=e=>d(e),F=e=>{const t=o(),E=S(),r=u(e);return{reducer:t,actions:E,selectors:r}},g=e=>{const t=s(),E=d(e),r=I();return{reducer:t,selectors:E,actions:r}},G=(e,t)=>{const E={id:t,editable:e,persisted:e};return(r=E,c)=>{switch(c.type){case"EDITABLE_ENTITY:SET_ENTITY_ID":{const{id:T}=c;return{...r,id:T}}case"EDITABLE_ENTITY:SET_ENTITY":{const{entity:T}=c;return{...r,persisted:T,editable:T}}case"EDITABLE_ENTITY:SET_PERSISTED_ENTITY":{const{entity:T}=c;return{...r,persisted:T}}case"EDITABLE_ENTITY:SET_EDITABLE_ENTITY":{const{entity:T}=c;return{...r,editable:T}}case"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS":{const{fields:T}=c;return{...r,editable:{...r.editable,...T}}}case"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY":return{...r,editable:r.persisted};case"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED":return{...r,persisted:r.editable};default:return r}}},x=()=>({setEntityId:e=>({type:"EDITABLE_ENTITY:SET_ENTITY_ID",id:e}),setEntity:e=>({type:"EDITABLE_ENTITY:SET_ENTITY",entity:e}),setPersistedEntity:e=>({type:"EDITABLE_ENTITY:SET_PERSISTED_ENTITY",entity:e}),setEditableEntity:e=>({type:"EDITABLE_ENTITY:SET_EDITABLE_ENTITY",entity:e}),setEditableEntityFields:e=>({type:"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS",fields:e}),revertEditableEntity:()=>({type:"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY"}),commitEditableEntityToPersisted:()=>({type:"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED"})}),R=(e=[])=>({selectedIds:e}),k=R(),a=(e=k)=>(t=e,E)=>{switch(E.type){case"SELECTED_IDS:SET_SELECTED_IDS":{const{selectedIds:r}=E;return{...t,selectedIds:r}}case"SELECTED_IDS:CLEAR_SELECTED_IDS":return{...t,selectedIds:[]};default:return t}},j=a(),l=()=>({setSelectedIds:e=>({selectedIds:e,type:"SELECTED_IDS:SET_SELECTED_IDS"}),clearSelectedIds:()=>({type:"SELECTED_IDS:CLEAR_SELECTED_IDS"})}),J=l(),P=e=>({getState:e}),W={ids:void 0},y=()=>(e=W,t)=>{switch(t.type){case"SORT_ORDER_BY_ID:SET_SORT_ORDER":return{...e,ids:t.ids};case"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER":return{...e,ids:void 0};default:return e}},H=y(),A=()=>({setSortOrder:e=>({ids:e,type:"SORT_ORDER_BY_ID:SET_SORT_ORDER"}),clearSortOrder:()=>({type:"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER"})}),X=A(),$=e=>({getSortOrderByIdState:t=>e(t),getSortOrder:t=>e(t).ids}),q=(e=void 0,t=!1)=>({sortBy:e,desc:t}),z=(e={sortBy:void 0,desc:!1})=>(t=e,E)=>{switch(E.type){case"SORT_ORDER:SET_SORT_BY":{const{sortBy:r,desc:c}=E;return{...t,sortBy:r,desc:c}}case"SORT_ORDER:CLEAR_SORT_ORDER":return{...t,sortBy:void 0,desc:!1};default:return t}},K=()=>({sortBy:(e,t)=>({desc:t,sortBy:e,type:"SORT_ORDER:SET_SORT_BY"}),clearSortOrder:()=>({type:"SORT_ORDER:CLEAR_SORT_ORDER"})}),Q=e=>({getState:e}),L={values:{}},Z=(e=L)=>(t=e,E)=>{switch(E.type){case"VALUE_BY_ID:SET_VALUE":{const{id:r,value:c}=E;return{...t,values:{...t.values,[r]:c}}}case"VALUE_BY_ID:CLEAR_ALL_VALUES":return{...t,values:{}};case"VALUE_BY_ID:CLEAR_VALUE":{const{id:r}=E,c={...t.values};return delete c[r],{...t,values:c}}default:return t}},ee=()=>({setValue:(e,t)=>({type:"VALUE_BY_ID:SET_VALUE",id:e,value:t}),clearValue:e=>({type:"VALUE_BY_ID:CLEAR_VALUE",id:e}),clearAllValues:()=>({type:"VALUE_BY_ID:CLEAR_ALL_VALUES"})}),te=e=>({getState:e});exports.createCommitReducer=V;exports.createCommitReducerActions=f;exports.createCommitReducerSelectors=M;exports.createEditableEntityActions=x;exports.createEditableEntityReducer=G;exports.createEntityActions=U;exports.createEntityByIdActions=I;exports.createEntityByIdReducer=s;exports.createEntityByIdSelectors=d;exports.createEntityCrudStatusActions=S;exports.createEntityCrudStatusReducer=o;exports.createEntityCrudStatusRedux=F;exports.createEntityCrudStatusSelectors=u;exports.createEntityListActions=w;exports.createEntityListReducer=h;exports.createEntityListSelectors=m;exports.createEntityReducer=b;exports.createEntitySelectors=v;exports.createModifiedFieldRedux=g;exports.createRecordObjectActions=N;exports.createRecordObjectReducer=O;exports.createSelectedIdsActions=l;exports.createSelectedIdsReducer=a;exports.createSelectedIdsReducerInitialState=R;exports.createSelectedIdsSelectors=P;exports.createSortOrderActions=K;exports.createSortOrderByIdActions=A;exports.createSortOrderByIdReducer=y;exports.createSortOrderByIdSelectors=$;exports.createSortOrderReducer=z;exports.createSortOrderReducerInitialState=q;exports.createSortOrderSelectors=Q;exports.createValueByIdActions=ee;exports.createValueByIdReducer=Z;exports.createValueByIdSelectors=te;exports.entityByIdInitialState=_;exports.reducerIdGate=Y;exports.reducerIdGateAction=C;exports.selectedIdsActions=J;exports.selectedIdsReducer=j;exports.sortOrderByIdActions=X;exports.sortOrderByIdReducer=H;exports.valueByIdInitialState=L;exports.wrapActionWithReducerIdGate=i;exports.wrapActionsWithReducerIdGate=p;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/features/higher-order-reducers/record-object-reducer/record-object-reducer.ts","../src/features/higher-order-reducers/record-object-reducer/record-object-action-creators.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-gate.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-action-wrapper.ts","../src/features/reducer-factories/commit-reducer/commit-action-creators.ts","../src/features/reducer-factories/commit-reducer/commit-reducer.ts","../src/features/reducer-factories/commit-reducer/commit-selectors.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-action-creators.ts","../src/common/util/field-matcher.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-reducer.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-selectors.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-reducer.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-action-creators.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-selectors.ts","../src/features/reducer-factories/entity-reducer/entity-reducer.ts","../src/features/reducer-factories/entity-reducer/entity-action-creators.ts","../src/features/reducer-factories/entity-reducer/entity-selectors.ts","../src/features/reducer-factories/entity-crud-status-reducer/entity-crud-status-redux.ts","../src/features/reducer-factories/modified-field-reducer/modified-field-redux.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-reducer.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-reducer.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-selectors.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-reducer.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-action-creators.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-selectors.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-reducer.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-action-creators.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-selectors.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-reducer.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-action-creators.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-selectors.ts"],"sourcesContent":["import { Reducer } from \"redux\";\nimport {\n RecordObjectAction,\n RecordObjectClearRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport type RecordObjectState<TInnerState> = Record<\n RecordObjectKey,\n TInnerState\n>;\n\nexport const createRecordObjectReducer =\n <TInnerAction extends RecordObjectWrappedAction, TInnerState = unknown>(\n reducer: Reducer<TInnerState, TInnerAction>,\n ): Reducer<\n RecordObjectState<TInnerState>,\n RecordObjectAction<TInnerAction>\n > =>\n (state = {}, action) => {\n switch (action.type) {\n case \"RECORD_OBJECT:CLEAR_RECORD\": {\n const { recordId } = action as RecordObjectClearRecordAction;\n const newState = { ...state };\n delete newState[recordId];\n return newState;\n }\n\n case \"RECORD_OBJECT:CLEAR_ALL_RECORDS\": {\n return {};\n }\n\n case \"RECORD_OBJECT:ACTION\": {\n const { recordId, action: innerAction } = action;\n return {\n ...state,\n [recordId]: reducer(state[recordId], innerAction),\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n RecordObjectClearAllRecordsAction,\n RecordObjectClearRecordAction,\n RecordObjectRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport interface RecordObjectActions<\n TInnerAction extends RecordObjectWrappedAction,\n> {\n recordAction: (\n recordId: RecordObjectKey,\n action: TInnerAction,\n ) => RecordObjectRecordAction<TInnerAction>;\n clearRecord: (recordId: RecordObjectKey) => RecordObjectClearRecordAction;\n clearAllRecords: () => RecordObjectClearAllRecordsAction;\n}\n\nexport const createRecordObjectActions = <\n TInnerAction extends RecordObjectWrappedAction,\n>(): RecordObjectActions<TInnerAction> => ({\n recordAction: (recordId, action) => ({\n type: \"RECORD_OBJECT:ACTION\",\n action,\n recordId,\n }),\n clearRecord: (recordId) => ({\n type: \"RECORD_OBJECT:CLEAR_RECORD\",\n recordId,\n }),\n clearAllRecords: () => ({\n type: \"RECORD_OBJECT:CLEAR_ALL_RECORDS\",\n }),\n});\n","import { Action, AnyAction, Reducer } from \"redux\";\n\nexport interface ReducerIdGateAction<TInnerAction> {\n type: \"REDUCER_ID_GATE:ACTION\";\n reducerId: string;\n action: TInnerAction;\n}\n\nexport type ReducerIdGateReducer<\n TState,\n TInnerAction extends Action = AnyAction,\n> = Reducer<TState, ReducerIdGateAction<TInnerAction>>;\n\nexport const reducerIdGate =\n <TState, TInnerAction extends Action = AnyAction>(\n reducerId: string,\n reducer: Reducer<TState, TInnerAction>,\n ): ReducerIdGateReducer<TState, TInnerAction> =>\n (state, action) => {\n const newState =\n state == null ? reducer(undefined, {} as TInnerAction) : state;\n\n if (!isValidReducerIdGateAction(action)) {\n return newState;\n }\n\n if (\n reducerId !== action.reducerId ||\n action.type !== \"REDUCER_ID_GATE:ACTION\"\n ) {\n return newState;\n }\n return reducer(newState, action.action);\n };\n\nexport const reducerIdGateAction = <TInnerAction>(\n reducerId: string,\n action: TInnerAction,\n): ReducerIdGateAction<TInnerAction> => ({\n type: \"REDUCER_ID_GATE:ACTION\",\n action,\n reducerId,\n});\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nconst isValidReducerIdGateAction = (action: any): boolean =>\n !!action.action &&\n action.type === \"REDUCER_ID_GATE:ACTION\" &&\n typeof action.reducerId === \"string\";\n","import { ReducerIdGateAction } from \"./reducer-id-gate\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype ActionCreator = (...args: any) => any;\n\nexport type ActionCreatorCreator<TActionCreator extends ActionCreator> = (\n ...args: Parameters<TActionCreator>\n) => ReducerIdGateAction<ReturnType<TActionCreator>>;\n\nexport const wrapActionWithReducerIdGate =\n <TActionCreator extends ActionCreator>(\n reducerId: string,\n actionCreator: TActionCreator,\n ): ActionCreatorCreator<TActionCreator> =>\n (...args) => {\n return {\n type: \"REDUCER_ID_GATE:ACTION\",\n reducerId,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n action: actionCreator(...(args as any)),\n };\n };\n\nexport interface ActionCreatorsMapObject {\n [key: string]: ActionCreator;\n}\n\nexport type ReducerIdGatedActionCreator<\n TActionCreators extends ActionCreatorsMapObject,\n> = {\n [K in keyof TActionCreators]: ActionCreatorCreator<TActionCreators[K]>;\n};\n\nexport const wrapActionsWithReducerIdGate = <\n TActionCreators extends ActionCreatorsMapObject,\n>(\n reducerId: string,\n actionCreators: TActionCreators,\n): ReducerIdGatedActionCreator<TActionCreators> => {\n const boundActionCreators =\n {} as ReducerIdGatedActionCreator<TActionCreators>;\n for (const key in actionCreators) {\n const actionCreator = actionCreators[key];\n boundActionCreators[key] = wrapActionWithReducerIdGate(\n reducerId,\n actionCreator,\n );\n }\n return boundActionCreators;\n};\n","import {\n ClearFilterValuesActionCreator,\n CommitFilterValuesActionCreator,\n SetFilterValuesActionCreator,\n} from \"./commit-actions\";\n\nexport interface CommitReducerActions<TState> {\n setValues: SetFilterValuesActionCreator<TState>;\n commitValues: CommitFilterValuesActionCreator;\n clearValues: ClearFilterValuesActionCreator;\n}\n\nexport const createCommitReducerActions = <TState>(\n id: string,\n): CommitReducerActions<TState> => {\n return {\n setValues: (values) => ({\n type: \"COMMIT_REDUCER.SET_VALUES\",\n id,\n values,\n }),\n commitValues: () => ({\n type: \"COMMIT_REDUCER.COMMIT_VALUES\",\n id,\n }),\n clearValues: () => ({\n type: \"COMMIT_REDUCER.CLEAR\",\n id,\n }),\n };\n};\n","import { CommitReducerAction } from \"./commit-actions\";\nimport { CommitReducerState } from \"./commit-state\";\n\nexport const createCommitReducer =\n <TState>(id: string, initialState: CommitReducerState<TState>) =>\n (\n state: CommitReducerState<TState> = initialState,\n action: CommitReducerAction<TState>,\n ): CommitReducerState<TState> => {\n if (action.id !== id) {\n return state;\n }\n switch (action.type) {\n case `COMMIT_REDUCER.SET_VALUES`: {\n const { values } = action;\n return {\n ...state,\n workspace: {\n ...state.workspace,\n ...values,\n },\n };\n }\n\n case `COMMIT_REDUCER.CLEAR`: {\n return {\n ...state,\n workspace: {\n ...initialState.workspace,\n },\n };\n }\n\n case `COMMIT_REDUCER.COMMIT_VALUES`: {\n return {\n ...state,\n committed: {\n ...state.workspace,\n },\n };\n }\n\n default:\n return state;\n }\n };\n","import { CommitReducerState } from \"./commit-state\";\n\nexport type CommitReducerStateSelector<TStoreState, TState> = (\n state: TStoreState,\n id: string,\n) => CommitReducerState<TState>;\n\nexport interface CommitReducerSelectors<TStoreState, TState> {\n getWorkspaceValues: (state: TStoreState) => TState;\n getCommittedValues: (state: TStoreState) => TState;\n}\n\nexport const createCommitReducerSelectors = <TStoreState, TState>(\n id: string,\n stateSelector: CommitReducerStateSelector<TStoreState, TState>,\n): CommitReducerSelectors<TStoreState, TState> => {\n return {\n getWorkspaceValues: (state) => stateSelector(state, id).workspace,\n getCommittedValues: (state) => stateSelector(state, id).committed,\n };\n};\n","import {\n EntityListActionByFieldsMatchAction,\n EntityListActionByIndexAction,\n EntityListActionOnAllAction,\n EntityListAddAtEndAction,\n EntityListAddAtStartAction,\n EntityListClearListAction,\n EntityListRemoveAction,\n EntityListRemoveAtIndexAction,\n EntityListRemoveByFieldMatchAction,\n EntityListRemoveFirstAction,\n EntityListRemoveLastAction,\n EntityListSetListAction,\n EntityListToggleAction,\n} from \"./entity-list-actions\";\n\nexport interface EntityListActions<T, TInnerAction> {\n addAtEnd: (entity: T) => EntityListAddAtEndAction<T>;\n addAtStart: (entity: T) => EntityListAddAtStartAction<T>;\n clearList: () => EntityListClearListAction;\n removeFirst: () => EntityListRemoveFirstAction;\n removeLast: () => EntityListRemoveLastAction;\n removeAtIndex: (index: number) => EntityListRemoveAtIndexAction;\n removeByFieldMatch: (\n fields: Partial<T>,\n ) => EntityListRemoveByFieldMatchAction<T>;\n remove: (entity: T) => EntityListRemoveAction<T>;\n setList: (list: Array<T>) => EntityListSetListAction<T>;\n toggle: (entity: T) => EntityListToggleAction<T>;\n actionByFieldsMatch: (\n fields: Partial<T>,\n action: TInnerAction,\n ) => EntityListActionByFieldsMatchAction<T, TInnerAction>;\n actionByIndex: (\n index: number,\n action: TInnerAction,\n ) => EntityListActionByIndexAction<TInnerAction>;\n actionOnAll: (\n action: TInnerAction,\n ) => EntityListActionOnAllAction<TInnerAction>;\n}\n\nexport const createEntityListActions = <\n T,\n TInnerAction = unknown,\n>(): EntityListActions<T, TInnerAction> => {\n return {\n addAtEnd: (entity) => ({ type: \"ENTITY_LIST:ADD_AT_END\", entity }),\n addAtStart: (entity) => ({\n entity,\n type: \"ENTITY_LIST:ADD_AT_START\",\n }),\n clearList: () => ({ type: \"ENTITY_LIST:CLEAR_LIST\" }),\n removeFirst: () => ({ type: \"ENTITY_LIST:REMOVE_FIRST\" }),\n removeLast: () => ({ type: \"ENTITY_LIST:REMOVE_LAST\" }),\n removeAtIndex: (index) => ({\n type: \"ENTITY_LIST:REMOVE_AT_INDEX\",\n index,\n }),\n removeByFieldMatch: (fields) => ({\n type: \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\",\n fields,\n }),\n remove: (entity) => ({ type: \"ENTITY_LIST:REMOVE\", entity }),\n setList: (list) => ({ type: \"ENTITY_LIST:SET_LIST\", list }),\n toggle: (entity) => ({ type: \"ENTITY_LIST:TOGGLE\", entity }),\n actionByFieldsMatch: (fields, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\",\n fields,\n action,\n }),\n actionByIndex: (index, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_INDEX\",\n index,\n action,\n }),\n actionOnAll: (action) => ({\n type: \"ENTITY_LIST:ACTION_ON_ALL\",\n action,\n }),\n };\n};\n","export const fieldsMatch = <T>(entity: T, fields: Partial<T>): boolean => {\n const keys = Object.keys(fields) as Array<keyof T>;\n if (keys.length === 0) {\n return false;\n }\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (entity[key] !== fields[key]) {\n return false;\n }\n }\n return true;\n};\n","import { EntityListAction } from \"./entity-list-actions\";\nimport { fieldsMatch } from \"../../../common/util/field-matcher\";\nimport { Action, AnyAction, Reducer } from \"redux\";\n\nexport type EntityListState<TListItem> = Array<TListItem>;\n\nexport const createEntityListReducer =\n <TListItem, TListItemAction extends Action = AnyAction>(\n reducer?: Reducer<TListItem, TListItemAction>,\n ) =>\n (\n state: EntityListState<TListItem> = [],\n action: EntityListAction<TListItem, TListItemAction>,\n ): EntityListState<TListItem> => {\n switch (action.type) {\n case \"ENTITY_LIST:SET_LIST\": {\n const { list } = action;\n return list;\n }\n case \"ENTITY_LIST:CLEAR_LIST\": {\n return [];\n }\n case \"ENTITY_LIST:ADD_AT_END\": {\n const { entity } = action;\n return [...state, entity];\n }\n case \"ENTITY_LIST:ADD_AT_START\": {\n const { entity } = action;\n return [entity, ...state];\n }\n case \"ENTITY_LIST:REMOVE_FIRST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const [, ...list] = state;\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_LAST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const list = [...state];\n list.pop();\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_AT_INDEX\": {\n const { index } = action;\n if (index < 0) {\n throw new Error(\"Index is lower than 0.\");\n }\n if (index >= state.length) {\n throw new Error(\"Index is outside of list bounds.\");\n }\n const list = [...state];\n list.splice(index, 1);\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\": {\n const { fields } = action;\n return state.filter((item) => !fieldsMatch(item, fields));\n }\n\n case \"ENTITY_LIST:REMOVE\": {\n const { entity } = action;\n return state.filter((item) => item !== entity);\n }\n\n case \"ENTITY_LIST:TOGGLE\": {\n const { entity } = action;\n const index = state.findIndex(\n (item) => item === entity || fieldsMatch(item, entity),\n );\n\n if (index >= 0) {\n const list = [...state];\n list.splice(index, index);\n\n return list;\n } else {\n return [...state, entity];\n }\n }\n\n case \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\": {\n const { fields, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByFieldsMatch'.\",\n );\n }\n return state.map((item) =>\n fieldsMatch(item, fields) ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_BY_INDEX\": {\n const { index, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item, i) =>\n index === i ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_ON_ALL\": {\n const { action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item) => reducer(item, innerAction));\n }\n\n default:\n return state;\n }\n };\n","import { EntityListState } from \"./entity-list-reducer\";\n\nexport interface EntityListSelectors<TStoreState, TEntity> {\n getList: (store: TStoreState) => Array<TEntity>;\n}\n\nexport type EntityListSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityListState<TEntity>;\n\nexport const createEntityListSelectors = <TStoreState, TEntity>(\n stateSelector: EntityListSelector<TStoreState, TEntity>,\n): EntityListSelectors<TStoreState, TEntity> => ({\n getList: (store) => stateSelector(store),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"./entity-by-id-actions\";\n\nexport interface EntityByIdState<T extends EntityWithId> {\n entities: { [key: string]: T };\n}\n\nexport const entityByIdInitialState = { entities: {} };\n\nexport const createEntityByIdReducer = <T extends EntityWithId>() => {\n return (\n state: EntityByIdState<T> = entityByIdInitialState,\n action: EntityByIdAction<T>,\n ): EntityByIdState<T> => {\n switch (action.type) {\n case \"ENTITY_BY_ID:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [entity.id]: entity,\n },\n };\n }\n\n case \"ENTITY_BY_ID:SET_ENTITY_FIELDS\": {\n const { id, fields } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [id]: {\n ...state.entities[id],\n ...fields,\n },\n },\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\": {\n return {\n ...state,\n entities: {},\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ENTITY\": {\n const { id } = action;\n const entities = {\n ...state.entities,\n };\n delete entities[id];\n return {\n ...state,\n entities,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport {\n EntityByIdClearAllEntitiesAction,\n EntityByIdClearEntityAction,\n EntityByIdSetEntityAction,\n EntityByIdSetEntityFieldsAction,\n} from \"./entity-by-id-actions\";\n\nexport interface EntityByIdActions<T extends EntityWithId> {\n setEntity: (entity: T) => EntityByIdSetEntityAction<T>;\n setEntityFields: (\n id: string,\n fields: Partial<T>,\n ) => EntityByIdSetEntityFieldsAction<T>;\n clearEntity: (id: string) => EntityByIdClearEntityAction;\n clearAllEntities: () => EntityByIdClearAllEntitiesAction;\n}\n\nexport const createEntityByIdActions = <\n T extends EntityWithId,\n>(): EntityByIdActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (id, fields) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY_FIELDS\",\n id,\n fields,\n }),\n clearEntity: (id) => ({\n type: \"ENTITY_BY_ID:CLEAR_ENTITY\",\n id,\n }),\n clearAllEntities: () => ({\n type: \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\",\n }),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdState } from \"./entity-by-id-reducer\";\n\nexport interface EntityByIdSelectors<\n TStoreState,\n TEntity extends EntityWithId,\n> {\n getState: EntityByIdStateSelector<TStoreState, TEntity>;\n}\n\nexport type EntityByIdStateSelector<\n TStoreState,\n TEntity extends EntityWithId,\n> = (state: TStoreState) => EntityByIdState<TEntity>;\n\nexport const createEntityByIdSelectors = <\n TStoreState,\n TEntity extends EntityWithId,\n>(\n stateSelector: EntityByIdStateSelector<TStoreState, TEntity>,\n): EntityByIdSelectors<TStoreState, TEntity> => ({\n getState: stateSelector,\n});\n","import { EntityAction } from \"./entity-actions\";\nimport { Reducer } from \"redux\";\n\nexport type EntityState<T> = T;\n\nexport const createEntityReducer = <T>(\n initialEntity: T,\n): Reducer<EntityState<T>, EntityAction<T>> => {\n const INITIAL_STATE = initialEntity;\n\n return (\n state: EntityState<T> = INITIAL_STATE,\n action: EntityAction<T>,\n ): EntityState<T> => {\n switch (action.type) {\n case \"ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return entity;\n }\n\n case \"ENTITY:SET_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n ...fields,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EntitySetEntityAction,\n EntitySetEntityFieldsAction,\n} from \"./entity-actions\";\n\nexport interface EntityActions<T> {\n setEntity: (entity: T) => EntitySetEntityAction<T>;\n setEntityFields: (fields: Partial<T>) => EntitySetEntityFieldsAction<T>;\n}\n\nexport const createEntityActions = <T>(): EntityActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (fields) => ({\n type: \"ENTITY:SET_ENTITY_FIELDS\",\n fields,\n }),\n});\n","import { EntityState } from \"./entity-reducer\";\n\nexport interface EntitySelectors<TStoreState, TEntity> {\n getEntity: (state: TStoreState) => TEntity;\n}\n\nexport type EntityStateSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityState<TEntity>;\n\nexport const createEntitySelectors = <TStoreState, TEntity>(\n stateSelector: EntityStateSelector<TStoreState, TEntity>,\n): EntitySelectors<TStoreState, TEntity> => ({\n getEntity: (state) => stateSelector(state),\n});\n","import { Reducer } from \"redux\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n EntityByIdStateSelector,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\n\nexport interface EntityCrudStatus extends CrudStatus {\n id: string;\n}\n\nexport interface CrudStatus {\n loading?: boolean;\n creating?: boolean;\n updating?: boolean;\n modified?: boolean;\n deleting?: boolean;\n hasError?: boolean;\n errorMessage?: string;\n}\n\nexport type EntityCrudStatusState = EntityByIdState<EntityCrudStatus>;\nexport type EntityCrudStatusAction = EntityByIdAction<EntityCrudStatus>;\nexport type EntityCrudStatusActions = EntityByIdActions<EntityCrudStatus>;\n\nexport interface EntityCrudStatusRedux<TStoreState> {\n reducer: EntityCrudStatusReducer;\n actions: EntityCrudStatusActions;\n selectors: EntityCrudStatusSelectors<TStoreState>;\n}\n\nexport type EntityCrudStatusReducer = Reducer<\n EntityCrudStatusState,\n EntityByIdAction<EntityCrudStatus>\n>;\n\nexport const createEntityCrudStatusReducer = () =>\n createEntityByIdReducer<EntityCrudStatus>();\n\nexport const createEntityCrudStatusActions = (): EntityCrudStatusActions =>\n createEntityByIdActions<EntityCrudStatus>();\n\nexport type EntityCrudStatusSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n EntityCrudStatus\n>;\n\nexport const createEntityCrudStatusSelectors = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n) => createEntityByIdSelectors<TStoreState, EntityCrudStatus>(stateSelector);\n\nexport const createEntityCrudStatusRedux = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n): EntityCrudStatusRedux<TStoreState> => {\n const reducer = createEntityCrudStatusReducer();\n const actions = createEntityCrudStatusActions();\n const selectors = createEntityCrudStatusSelectors(stateSelector);\n return {\n reducer,\n actions,\n selectors,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\n\nexport interface ModifiedFieldItemState extends EntityWithId {\n modified?: boolean;\n originalValue?: string;\n newValue?: string;\n}\n\nexport type ModifiedFieldState = EntityByIdState<ModifiedFieldItemState>;\nexport type ModifiedFieldAction = EntityByIdAction<ModifiedFieldItemState>;\nexport type ModifiedFieldActions = EntityByIdActions<ModifiedFieldItemState>;\n\nexport type ModifiedFieldsSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n ModifiedFieldItemState\n>;\n\nexport type ModifiedFieldStateSelector<TStoreState> = (\n state: TStoreState,\n) => ModifiedFieldState;\n\nexport type ModifiedStateReducer = Reducer<\n ModifiedFieldState,\n ModifiedFieldAction\n>;\n\nexport interface ModifiedFieldRedux<TStoreState> {\n reducer: ModifiedStateReducer;\n selectors: ModifiedFieldsSelectors<TStoreState>;\n actions: ModifiedFieldActions;\n}\n\nexport const createModifiedFieldRedux = <TStoreState>(\n stateSelector: ModifiedFieldStateSelector<TStoreState>,\n): ModifiedFieldRedux<TStoreState> => {\n const reducer = createEntityByIdReducer<ModifiedFieldItemState>();\n\n const selectors: ModifiedFieldsSelectors<TStoreState> =\n createEntityByIdSelectors<TStoreState, ModifiedFieldItemState>(\n stateSelector,\n );\n\n const actions = createEntityByIdActions<ModifiedFieldItemState>();\n\n return {\n reducer,\n selectors,\n actions,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EditableEntityAction } from \"./editable-entity-actions\";\n\nexport interface EditableEntityState<T> {\n id?: string;\n persisted: T;\n editable: T;\n}\n\nexport const createEditableEntityReducer = <T>(\n initialEntity: T,\n initialId?: string,\n): Reducer<EditableEntityState<T>, EditableEntityAction<T>> => {\n const initialState: EditableEntityState<T> = {\n id: initialId,\n editable: initialEntity,\n persisted: initialEntity,\n };\n\n return (state = initialState, action) => {\n switch (action.type) {\n case \"EDITABLE_ENTITY:SET_ENTITY_ID\": {\n const { id } = action;\n return {\n ...state,\n id,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n editable: {\n ...state.editable,\n ...fields,\n },\n };\n }\n\n case \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\": {\n return {\n ...state,\n editable: state.persisted,\n };\n }\n\n case \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\": {\n return {\n ...state,\n persisted: state.editable,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EditableEntityCommitEditableEntityToPersistedAction,\n EditableEntityRevertEditableEntityAction,\n EditableEntitySetEditableEntityAction,\n EditableEntitySetEditableEntityFieldsAction,\n EditableEntitySetEntityAction,\n EditableEntitySetEntityIdAction,\n EditableEntitySetPersistedEntityAction,\n} from \"./editable-entity-actions\";\n\nexport interface EditableEntityActions<T> {\n setEntityId: (\n entityId: string | undefined,\n ) => EditableEntitySetEntityIdAction;\n setEntity: (entity: T) => EditableEntitySetEntityAction<T>;\n setPersistedEntity: (entity: T) => EditableEntitySetPersistedEntityAction<T>;\n setEditableEntity: (entity: T) => EditableEntitySetEditableEntityAction<T>;\n setEditableEntityFields: (\n fields: Partial<T>,\n ) => EditableEntitySetEditableEntityFieldsAction<T>;\n revertEditableEntity: () => EditableEntityRevertEditableEntityAction;\n commitEditableEntityToPersisted: () => EditableEntityCommitEditableEntityToPersistedAction;\n}\n\nexport const createEditableEntityActions = <T>(): EditableEntityActions<T> => ({\n setEntityId: (id: string | undefined) => ({\n type: \"EDITABLE_ENTITY:SET_ENTITY_ID\",\n id,\n }),\n setEntity: (entity) => ({ type: \"EDITABLE_ENTITY:SET_ENTITY\", entity }),\n setPersistedEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\",\n entity,\n }),\n setEditableEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\",\n entity,\n }),\n setEditableEntityFields: (fields) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\",\n fields,\n }),\n revertEditableEntity: () => ({\n type: \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\",\n }),\n commitEditableEntityToPersisted: () => ({\n type: \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\",\n }),\n});\n","import { Reducer } from \"redux\";\nimport { SelectedIdsAction } from \"./selected-ids-actions\";\n\nexport interface SelectedIdsState {\n selectedIds: Array<string>;\n}\n\nexport const createSelectedIdsReducerInitialState = (\n initialSelection: string[] = [],\n): SelectedIdsState => ({\n selectedIds: initialSelection,\n});\n\nconst INITIAL_STATE = createSelectedIdsReducerInitialState();\n\nexport type SelectedIdsReducer = Reducer<SelectedIdsState, SelectedIdsAction>;\n\nexport const createSelectedIdsReducer =\n (initialState: SelectedIdsState = INITIAL_STATE): SelectedIdsReducer =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SELECTED_IDS:SET_SELECTED_IDS\": {\n const { selectedIds } = action;\n return {\n ...state,\n selectedIds,\n };\n }\n case \"SELECTED_IDS:CLEAR_SELECTED_IDS\": {\n return {\n ...state,\n selectedIds: [],\n };\n }\n default:\n return state;\n }\n };\n\nexport const selectedIdsReducer = createSelectedIdsReducer();\n","import {\n SelectedIdsClearSelectedIdsAction,\n SelectedIdsSetSelectedIdsAction,\n} from \"./selected-ids-actions\";\n\nexport interface SelectedIdsActions {\n setSelectedIds: (ids: Array<string>) => SelectedIdsSetSelectedIdsAction;\n clearSelectedIds: () => SelectedIdsClearSelectedIdsAction;\n}\n\nexport const createSelectedIdsActions = (): SelectedIdsActions => ({\n setSelectedIds: (selectedIds) => ({\n selectedIds,\n type: \"SELECTED_IDS:SET_SELECTED_IDS\",\n }),\n clearSelectedIds: () => ({\n type: \"SELECTED_IDS:CLEAR_SELECTED_IDS\",\n }),\n});\n\nexport const selectedIdsActions = createSelectedIdsActions();\n","import { SelectedIdsState } from \"./selected-ids-reducer\";\n\nexport interface SelectedIdsSelectors<TStoreState> {\n getState: SelectedIdsStateSelector<TStoreState>;\n}\n\nexport type SelectedIdsStateSelector<TStoreState> = (\n state: TStoreState,\n) => SelectedIdsState;\n\nexport const createSelectedIdsSelectors = <TStoreState>(\n stateSelector: SelectedIdsStateSelector<TStoreState>,\n): SelectedIdsSelectors<TStoreState> => ({\n getState: stateSelector,\n});\n","import { SortOrderByIdAction } from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdState {\n ids: Array<string> | undefined;\n}\n\nconst INITIAL_STATE: SortOrderByIdState = {\n ids: undefined,\n};\n\nexport const createSortOrderByIdReducer =\n () =>\n (\n state: SortOrderByIdState = INITIAL_STATE,\n action: SortOrderByIdAction,\n ): SortOrderByIdState => {\n switch (action.type) {\n case \"SORT_ORDER_BY_ID:SET_SORT_ORDER\":\n return {\n ...state,\n ids: action.ids,\n };\n\n case \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\":\n return {\n ...state,\n ids: undefined,\n };\n\n default:\n return state;\n }\n };\n\nexport const sortOrderByIdReducer = createSortOrderByIdReducer();\n","import {\n SortOrderByIdClearSortOrderAction,\n SortOrderByIdSetSortOrderAction,\n} from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdActions {\n setSortOrder: (ids: Array<string>) => SortOrderByIdSetSortOrderAction;\n clearSortOrder: () => SortOrderByIdClearSortOrderAction;\n}\n\nexport const createSortOrderByIdActions = (): SortOrderByIdActions => {\n return {\n setSortOrder: (ids) => ({\n ids,\n type: \"SORT_ORDER_BY_ID:SET_SORT_ORDER\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\",\n }),\n };\n};\n\nexport const sortOrderByIdActions = createSortOrderByIdActions();\n","import { SortOrderByIdState } from \"./sort-order-by-id-reducer\";\n\ninterface SortOrderByIdSelectors<TStoreState> {\n getSortOrderByIdState: (state: TStoreState) => SortOrderByIdState;\n getSortOrder: (state: TStoreState) => Array<string> | undefined;\n}\n\ntype SortOrderByIdStateProvider<TStoreState> = (\n state: TStoreState,\n) => SortOrderByIdState;\n\nexport const createSortOrderByIdSelectors = <TStoreState>(\n rootStateProvider: SortOrderByIdStateProvider<TStoreState>,\n): SortOrderByIdSelectors<TStoreState> => {\n return {\n getSortOrderByIdState: (state) => {\n return rootStateProvider(state);\n },\n getSortOrder: (state) => {\n return rootStateProvider(state).ids;\n },\n };\n};\n","import { Reducer } from \"redux\";\nimport { SortOrderAction } from \"./sort-order-actions\";\n\nexport interface SortOrderState<TSortBy> {\n sortBy: TSortBy | undefined;\n desc: boolean;\n}\n\nexport const createSortOrderReducerInitialState = <TSortBy>(\n sortBy: TSortBy | undefined = undefined,\n desc: boolean = false,\n): SortOrderState<TSortBy> => ({\n sortBy,\n desc,\n});\n\nexport type SortOrderReducer<TSortBy> = Reducer<\n SortOrderState<TSortBy>,\n SortOrderAction<TSortBy>\n>;\n\nexport const createSortOrderReducer =\n <TSortBy>(\n initialState: SortOrderState<TSortBy> = { sortBy: undefined, desc: false },\n ): SortOrderReducer<TSortBy> =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SORT_ORDER:SET_SORT_BY\": {\n const { sortBy, desc } = action;\n return {\n ...state,\n sortBy,\n desc,\n };\n }\n\n case \"SORT_ORDER:CLEAR_SORT_ORDER\": {\n return {\n ...state,\n sortBy: undefined,\n desc: false,\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n SortOrderClearSortOrderAction,\n SortOrderSetSortByAction,\n} from \"./sort-order-actions\";\n\nexport interface SortOrderActions<TSortBy> {\n sortBy: (sortBy: TSortBy, desc: boolean) => SortOrderSetSortByAction<TSortBy>;\n clearSortOrder: () => SortOrderClearSortOrderAction;\n}\n\nexport const createSortOrderActions = <\n TSortBy,\n>(): SortOrderActions<TSortBy> => ({\n sortBy: (sortBy, desc) => ({\n desc,\n sortBy,\n type: \"SORT_ORDER:SET_SORT_BY\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER:CLEAR_SORT_ORDER\",\n }),\n});\n","import { SortOrderState } from \"./sort-order-reducer\";\n\nexport interface SortOrderSelectors<TStoreState, TSortBy> {\n getState: SortOrderStateSelector<TStoreState, TSortBy>;\n}\n\nexport type SortOrderStateSelector<TStoreState, TSortBy> = (\n state: TStoreState,\n) => SortOrderState<TSortBy>;\n\nexport const createSortOrderSelectors = <TStoreState, TSortBy>(\n stateProvider: SortOrderStateSelector<TStoreState, TSortBy>,\n): SortOrderSelectors<TStoreState, TSortBy> => ({\n getState: stateProvider,\n});\n","import { ValueByIdAction } from \"./value-by-id-actions\";\n\nexport interface ValueByIdState<TValue> {\n values: { [key: string]: TValue };\n}\n\nexport const valueByIdInitialState = { values: {} };\n\nexport const createValueByIdReducer = <TValue>(\n initialValue: ValueByIdState<TValue> = valueByIdInitialState,\n) => {\n return (\n state: ValueByIdState<TValue> = initialValue,\n action: ValueByIdAction<TValue>,\n ): ValueByIdState<TValue> => {\n switch (action.type) {\n case \"VALUE_BY_ID:SET_VALUE\": {\n const { id, value } = action;\n return {\n ...state,\n values: {\n ...state.values,\n [id]: value,\n },\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_ALL_VALUES\": {\n return {\n ...state,\n values: {},\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_VALUE\": {\n const { id } = action;\n const values = {\n ...state.values,\n };\n delete values[id];\n return {\n ...state,\n values,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n ValueByIdClearAllValuesAction,\n ValueByIdClearValueAction,\n ValueByIdSetValueAction,\n} from \"./value-by-id-actions\";\n\nexport interface ValueByIdActions<TValue> {\n setValue: (id: string, value: TValue) => ValueByIdSetValueAction<TValue>;\n clearValue: (id: string) => ValueByIdClearValueAction;\n clearAllValues: () => ValueByIdClearAllValuesAction;\n}\n\nexport const createValueByIdActions = <TValue>(): ValueByIdActions<TValue> => ({\n setValue: (id, value) => ({\n type: \"VALUE_BY_ID:SET_VALUE\",\n id,\n value,\n }),\n clearValue: (id) => ({\n type: \"VALUE_BY_ID:CLEAR_VALUE\",\n id,\n }),\n clearAllValues: () => ({\n type: \"VALUE_BY_ID:CLEAR_ALL_VALUES\",\n }),\n});\n","import { ValueByIdState } from \"./value-by-id-reducer\";\n\nexport interface ValueByIdSelectors<TStoreState, TValue> {\n getState: ValueByIdStateSelector<TStoreState, TValue>;\n}\n\nexport type ValueByIdStateSelector<TStoreState, TValue> = (\n state: TStoreState,\n) => ValueByIdState<TValue>;\n\nexport const createValueByIdSelectors = <TStoreState, TValue>(\n stateSelector: ValueByIdStateSelector<TStoreState, TValue>,\n): ValueByIdSelectors<TStoreState, TValue> => ({\n getState: stateSelector,\n});\n"],"names":["createRecordObjectReducer","reducer","state","action","recordId","newState","innerAction","createRecordObjectActions","reducerIdGate","reducerId","isValidReducerIdGateAction","reducerIdGateAction","wrapActionWithReducerIdGate","actionCreator","args","wrapActionsWithReducerIdGate","actionCreators","boundActionCreators","key","createCommitReducerActions","id","values","createCommitReducer","initialState","createCommitReducerSelectors","stateSelector","createEntityListActions","entity","index","fields","list","fieldsMatch","keys","i","createEntityListReducer","item","createEntityListSelectors","store","entityByIdInitialState","createEntityByIdReducer","entities","createEntityByIdActions","createEntityByIdSelectors","createEntityReducer","initialEntity","INITIAL_STATE","createEntityActions","createEntitySelectors","createEntityCrudStatusReducer","createEntityCrudStatusActions","createEntityCrudStatusSelectors","createEntityCrudStatusRedux","actions","selectors","createModifiedFieldRedux","createEditableEntityReducer","initialId","createEditableEntityActions","createSelectedIdsReducerInitialState","initialSelection","createSelectedIdsReducer","selectedIds","selectedIdsReducer","createSelectedIdsActions","selectedIdsActions","createSelectedIdsSelectors","createSortOrderByIdReducer","sortOrderByIdReducer","createSortOrderByIdActions","ids","sortOrderByIdActions","createSortOrderByIdSelectors","rootStateProvider","createSortOrderReducerInitialState","sortBy","desc","createSortOrderReducer","createSortOrderActions","createSortOrderSelectors","stateProvider","valueByIdInitialState","createValueByIdReducer","initialValue","value","createValueByIdActions","createValueByIdSelectors"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/features/higher-order-reducers/record-object-reducer/record-object-reducer.ts","../src/features/higher-order-reducers/record-object-reducer/record-object-action-creators.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-gate.ts","../src/features/higher-order-reducers/reducer-id-gate/reducer-id-action-wrapper.ts","../src/features/reducer-factories/commit-reducer/commit-action-creators.ts","../src/features/reducer-factories/commit-reducer/commit-reducer.ts","../src/features/reducer-factories/commit-reducer/commit-selectors.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-action-creators.ts","../src/common/util/field-matcher.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-reducer.ts","../src/features/higher-order-reducers/entity-list-reducer/entity-list-selectors.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-reducer.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-action-creators.ts","../src/features/reducer-factories/entity-by-id-reducer/entity-by-id-selectors.ts","../src/features/reducer-factories/entity-reducer/entity-reducer.ts","../src/features/reducer-factories/entity-reducer/entity-action-creators.ts","../src/features/reducer-factories/entity-reducer/entity-selectors.ts","../src/features/reducer-factories/entity-crud-status-reducer/entity-crud-status-redux.ts","../src/features/reducer-factories/modified-field-reducer/modified-field-redux.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-reducer.ts","../src/features/reducer-factories/editable-entity-reducer/editable-entity-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-reducer.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-action-creators.ts","../src/features/reducer-factories/selected-ids-reducer/selected-ids-selectors.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-reducer.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-action-creators.ts","../src/features/reducer-factories/sort-order-by-id-reducer/sort-order-by-id-selectors.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-reducer.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-action-creators.ts","../src/features/reducer-factories/sort-order-reducer/sort-order-selectors.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-reducer.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-action-creators.ts","../src/features/reducer-factories/value-by-id-reducer/value-by-id-selectors.ts"],"sourcesContent":["import { Reducer } from \"redux\";\nimport {\n RecordObjectAction,\n RecordObjectClearRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport type RecordObjectState<TInnerState> = Record<\n RecordObjectKey,\n TInnerState\n>;\n\nexport const createRecordObjectReducer =\n <TInnerAction extends RecordObjectWrappedAction, TInnerState = unknown>(\n reducer: Reducer<TInnerState, TInnerAction>,\n ): Reducer<\n RecordObjectState<TInnerState>,\n RecordObjectAction<TInnerAction>\n > =>\n (state = {}, action) => {\n switch (action.type) {\n case \"RECORD_OBJECT:CLEAR_RECORD\": {\n const { recordId } = action as RecordObjectClearRecordAction;\n const newState = { ...state };\n delete newState[recordId];\n return newState;\n }\n\n case \"RECORD_OBJECT:CLEAR_ALL_RECORDS\": {\n return {};\n }\n\n case \"RECORD_OBJECT:ACTION\": {\n const { recordId, action: innerAction } = action;\n return {\n ...state,\n [recordId]: reducer(state[recordId], innerAction),\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n RecordObjectClearAllRecordsAction,\n RecordObjectClearRecordAction,\n RecordObjectRecordAction,\n RecordObjectKey,\n RecordObjectWrappedAction,\n} from \"./record-object-actions\";\n\nexport interface RecordObjectActions<\n TInnerAction extends RecordObjectWrappedAction,\n> {\n recordAction: (\n recordId: RecordObjectKey,\n action: TInnerAction,\n ) => RecordObjectRecordAction<TInnerAction>;\n clearRecord: (recordId: RecordObjectKey) => RecordObjectClearRecordAction;\n clearAllRecords: () => RecordObjectClearAllRecordsAction;\n}\n\nexport const createRecordObjectActions = <\n TInnerAction extends RecordObjectWrappedAction,\n>(): RecordObjectActions<TInnerAction> => ({\n recordAction: (recordId, action) => ({\n type: \"RECORD_OBJECT:ACTION\",\n action,\n recordId,\n }),\n clearRecord: (recordId) => ({\n type: \"RECORD_OBJECT:CLEAR_RECORD\",\n recordId,\n }),\n clearAllRecords: () => ({\n type: \"RECORD_OBJECT:CLEAR_ALL_RECORDS\",\n }),\n});\n","import { Action, AnyAction, Reducer } from \"redux\";\n\nexport interface ReducerIdGateAction<TInnerAction> {\n type: \"REDUCER_ID_GATE:ACTION\";\n reducerId: string;\n action: TInnerAction;\n}\n\nexport type ReducerIdGateReducer<\n TState,\n TInnerAction extends Action = AnyAction,\n> = Reducer<TState, ReducerIdGateAction<TInnerAction>>;\n\nexport const reducerIdGate =\n <TState, TInnerAction extends Action = AnyAction>(\n reducerId: string,\n reducer: Reducer<TState, TInnerAction>,\n ): ReducerIdGateReducer<TState, TInnerAction> =>\n (state, action) => {\n const newState =\n state == null ? reducer(undefined, {} as TInnerAction) : state;\n\n if (!isValidReducerIdGateAction(action)) {\n return newState;\n }\n\n if (\n reducerId !== action.reducerId ||\n action.type !== \"REDUCER_ID_GATE:ACTION\"\n ) {\n return newState;\n }\n return reducer(newState, action.action);\n };\n\nexport const reducerIdGateAction = <TInnerAction>(\n reducerId: string,\n action: TInnerAction,\n): ReducerIdGateAction<TInnerAction> => ({\n type: \"REDUCER_ID_GATE:ACTION\",\n action,\n reducerId,\n});\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nconst isValidReducerIdGateAction = (action: any): boolean =>\n !!action.action &&\n action.type === \"REDUCER_ID_GATE:ACTION\" &&\n typeof action.reducerId === \"string\";\n","import { ReducerIdGateAction } from \"./reducer-id-gate\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype ActionCreator = (...args: any) => any;\n\nexport type ActionCreatorCreator<TActionCreator extends ActionCreator> = (\n ...args: Parameters<TActionCreator>\n) => ReducerIdGateAction<ReturnType<TActionCreator>>;\n\nexport const wrapActionWithReducerIdGate =\n <TActionCreator extends ActionCreator>(\n reducerId: string,\n actionCreator: TActionCreator,\n ): ActionCreatorCreator<TActionCreator> =>\n (...args) => {\n return {\n type: \"REDUCER_ID_GATE:ACTION\",\n reducerId,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n action: actionCreator(...(args as any)),\n };\n };\n\nexport interface ActionCreatorsMapObject {\n [key: string]: ActionCreator;\n}\n\nexport type ReducerIdGatedActionCreator<\n TActionCreators extends ActionCreatorsMapObject,\n> = {\n [K in keyof TActionCreators]: ActionCreatorCreator<TActionCreators[K]>;\n};\n\nexport const wrapActionsWithReducerIdGate = <\n TActionCreators extends ActionCreatorsMapObject,\n>(\n reducerId: string,\n actionCreators: TActionCreators,\n): ReducerIdGatedActionCreator<TActionCreators> => {\n const boundActionCreators =\n {} as ReducerIdGatedActionCreator<TActionCreators>;\n for (const key in actionCreators) {\n const actionCreator = actionCreators[key];\n boundActionCreators[key] = wrapActionWithReducerIdGate(\n reducerId,\n actionCreator,\n );\n }\n return boundActionCreators;\n};\n","import {\n ClearFilterValuesActionCreator,\n CommitFilterValuesActionCreator,\n SetFilterValuesActionCreator,\n} from \"./commit-actions\";\n\nexport interface CommitReducerActions<TState> {\n setValues: SetFilterValuesActionCreator<TState>;\n commitValues: CommitFilterValuesActionCreator;\n clearValues: ClearFilterValuesActionCreator;\n}\n\nexport const createCommitReducerActions = <TState>(\n id: string,\n): CommitReducerActions<TState> => {\n return {\n setValues: (values) => ({\n type: \"COMMIT_REDUCER.SET_VALUES\",\n id,\n values,\n }),\n commitValues: () => ({\n type: \"COMMIT_REDUCER.COMMIT_VALUES\",\n id,\n }),\n clearValues: () => ({\n type: \"COMMIT_REDUCER.CLEAR\",\n id,\n }),\n };\n};\n","import { CommitReducerAction } from \"./commit-actions\";\nimport { CommitReducerState } from \"./commit-state\";\n\nexport const createCommitReducer =\n <TState>(id: string, initialState: CommitReducerState<TState>) =>\n (\n state: CommitReducerState<TState> = initialState,\n action: CommitReducerAction<TState>,\n ): CommitReducerState<TState> => {\n if (action.id !== id) {\n return state;\n }\n switch (action.type) {\n case `COMMIT_REDUCER.SET_VALUES`: {\n const { values } = action;\n return {\n ...state,\n workspace: {\n ...state.workspace,\n ...values,\n },\n };\n }\n\n case `COMMIT_REDUCER.CLEAR`: {\n return {\n ...state,\n workspace: {\n ...initialState.workspace,\n },\n };\n }\n\n case `COMMIT_REDUCER.COMMIT_VALUES`: {\n return {\n ...state,\n committed: {\n ...state.workspace,\n },\n };\n }\n\n default:\n return state;\n }\n };\n","import { CommitReducerState } from \"./commit-state\";\n\nexport type CommitReducerStateSelector<TStoreState, TState> = (\n state: TStoreState,\n id: string,\n) => CommitReducerState<TState>;\n\nexport interface CommitReducerSelectors<TStoreState, TState> {\n getWorkspaceValues: (state: TStoreState) => TState;\n getCommittedValues: (state: TStoreState) => TState;\n}\n\nexport const createCommitReducerSelectors = <TStoreState, TState>(\n id: string,\n stateSelector: CommitReducerStateSelector<TStoreState, TState>,\n): CommitReducerSelectors<TStoreState, TState> => {\n return {\n getWorkspaceValues: (state) => stateSelector(state, id).workspace,\n getCommittedValues: (state) => stateSelector(state, id).committed,\n };\n};\n","import {\n EntityListActionByFieldsMatchAction,\n EntityListActionByIndexAction,\n EntityListActionOnAllAction,\n EntityListAddAtEndAction,\n EntityListAddAtStartAction,\n EntityListClearListAction,\n EntityListRemoveAction,\n EntityListRemoveAtIndexAction,\n EntityListRemoveByFieldMatchAction,\n EntityListRemoveFirstAction,\n EntityListRemoveLastAction,\n EntityListSetListAction,\n EntityListToggleAction,\n} from \"./entity-list-actions\";\n\nexport interface EntityListActions<T, TInnerAction> {\n addAtEnd: (entity: T) => EntityListAddAtEndAction<T>;\n addAtStart: (entity: T) => EntityListAddAtStartAction<T>;\n clearList: () => EntityListClearListAction;\n removeFirst: () => EntityListRemoveFirstAction;\n removeLast: () => EntityListRemoveLastAction;\n removeAtIndex: (index: number) => EntityListRemoveAtIndexAction;\n removeByFieldMatch: (\n fields: Partial<T>,\n ) => EntityListRemoveByFieldMatchAction<T>;\n remove: (entity: T) => EntityListRemoveAction<T>;\n setList: (list: Array<T>) => EntityListSetListAction<T>;\n toggle: (entity: T) => EntityListToggleAction<T>;\n actionByFieldsMatch: (\n fields: Partial<T>,\n action: TInnerAction,\n ) => EntityListActionByFieldsMatchAction<T, TInnerAction>;\n actionByIndex: (\n index: number,\n action: TInnerAction,\n ) => EntityListActionByIndexAction<TInnerAction>;\n actionOnAll: (\n action: TInnerAction,\n ) => EntityListActionOnAllAction<TInnerAction>;\n}\n\nexport const createEntityListActions = <\n T,\n TInnerAction = unknown,\n>(): EntityListActions<T, TInnerAction> => {\n return {\n addAtEnd: (entity) => ({ type: \"ENTITY_LIST:ADD_AT_END\", entity }),\n addAtStart: (entity) => ({\n entity,\n type: \"ENTITY_LIST:ADD_AT_START\",\n }),\n clearList: () => ({ type: \"ENTITY_LIST:CLEAR_LIST\" }),\n removeFirst: () => ({ type: \"ENTITY_LIST:REMOVE_FIRST\" }),\n removeLast: () => ({ type: \"ENTITY_LIST:REMOVE_LAST\" }),\n removeAtIndex: (index) => ({\n type: \"ENTITY_LIST:REMOVE_AT_INDEX\",\n index,\n }),\n removeByFieldMatch: (fields) => ({\n type: \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\",\n fields,\n }),\n remove: (entity) => ({ type: \"ENTITY_LIST:REMOVE\", entity }),\n setList: (list) => ({ type: \"ENTITY_LIST:SET_LIST\", list }),\n toggle: (entity) => ({ type: \"ENTITY_LIST:TOGGLE\", entity }),\n actionByFieldsMatch: (fields, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\",\n fields,\n action,\n }),\n actionByIndex: (index, action) => ({\n type: \"ENTITY_LIST:ACTION_BY_INDEX\",\n index,\n action,\n }),\n actionOnAll: (action) => ({\n type: \"ENTITY_LIST:ACTION_ON_ALL\",\n action,\n }),\n };\n};\n","export const fieldsMatch = <T>(entity: T, fields: Partial<T>): boolean => {\n const keys = Object.keys(fields) as Array<keyof T>;\n if (keys.length === 0) {\n return false;\n }\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (entity[key] !== fields[key]) {\n return false;\n }\n }\n return true;\n};\n","import { EntityListAction } from \"./entity-list-actions\";\nimport { fieldsMatch } from \"../../../common/util/field-matcher\";\nimport { Action, AnyAction, Reducer } from \"redux\";\n\nexport type EntityListState<TListItem> = Array<TListItem>;\n\nexport const createEntityListReducer =\n <TListItem, TListItemAction extends Action = AnyAction>(\n reducer?: Reducer<TListItem, TListItemAction>,\n ) =>\n (\n state: EntityListState<TListItem> = [],\n action: EntityListAction<TListItem, TListItemAction>,\n ): EntityListState<TListItem> => {\n switch (action.type) {\n case \"ENTITY_LIST:SET_LIST\": {\n const { list } = action;\n return list;\n }\n case \"ENTITY_LIST:CLEAR_LIST\": {\n return [];\n }\n case \"ENTITY_LIST:ADD_AT_END\": {\n const { entity } = action;\n return [...state, entity];\n }\n case \"ENTITY_LIST:ADD_AT_START\": {\n const { entity } = action;\n return [entity, ...state];\n }\n case \"ENTITY_LIST:REMOVE_FIRST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const [, ...list] = state;\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_LAST\": {\n if (state.length === 0) {\n throw new Error(\"Cannot remove, list is empty.\");\n }\n const list = [...state];\n list.pop();\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_AT_INDEX\": {\n const { index } = action;\n if (index < 0) {\n throw new Error(\"Index is lower than 0.\");\n }\n if (index >= state.length) {\n throw new Error(\"Index is outside of list bounds.\");\n }\n const list = [...state];\n list.splice(index, 1);\n return list;\n }\n\n case \"ENTITY_LIST:REMOVE_BY_FIELD_MATCH\": {\n const { fields } = action;\n return state.filter((item) => !fieldsMatch(item, fields));\n }\n\n case \"ENTITY_LIST:REMOVE\": {\n const { entity } = action;\n return state.filter((item) => item !== entity);\n }\n\n case \"ENTITY_LIST:TOGGLE\": {\n const { entity } = action;\n const index = state.findIndex(\n (item) => item === entity || fieldsMatch(item, entity),\n );\n\n if (index >= 0) {\n const list = [...state];\n list.splice(index, index);\n\n return list;\n } else {\n return [...state, entity];\n }\n }\n\n case \"ENTITY_LIST:ACTION_BY_FIELDS_MATCH\": {\n const { fields, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByFieldsMatch'.\",\n );\n }\n return state.map((item) =>\n fieldsMatch(item, fields) ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_BY_INDEX\": {\n const { index, action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item, i) =>\n index === i ? reducer(item, innerAction) : item,\n );\n }\n\n case \"ENTITY_LIST:ACTION_ON_ALL\": {\n const { action: innerAction } = action;\n if (!reducer) {\n throw new Error(\n \"No reducer specified, unable to handle 'actionByIndex'.\",\n );\n }\n return state.map((item) => reducer(item, innerAction));\n }\n\n default:\n return state;\n }\n };\n","import { EntityListState } from \"./entity-list-reducer\";\n\nexport interface EntityListSelectors<TStoreState, TEntity> {\n getList: (store: TStoreState) => Array<TEntity>;\n}\n\nexport type EntityListSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityListState<TEntity>;\n\nexport const createEntityListSelectors = <TStoreState, TEntity>(\n stateSelector: EntityListSelector<TStoreState, TEntity>,\n): EntityListSelectors<TStoreState, TEntity> => ({\n getList: (store) => stateSelector(store),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"./entity-by-id-actions\";\n\nexport interface EntityByIdState<T extends EntityWithId> {\n entities: { [key: string]: T };\n}\n\nexport const entityByIdInitialState = { entities: {} };\n\nexport const createEntityByIdReducer = <T extends EntityWithId>() => {\n return (\n state: EntityByIdState<T> = entityByIdInitialState,\n action: EntityByIdAction<T>,\n ): EntityByIdState<T> => {\n switch (action.type) {\n case \"ENTITY_BY_ID:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [entity.id]: entity,\n },\n };\n }\n\n case \"ENTITY_BY_ID:SET_ENTITY_FIELDS\": {\n const { id, fields } = action;\n return {\n ...state,\n entities: {\n ...state.entities,\n [id]: {\n ...state.entities[id],\n ...fields,\n },\n },\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\": {\n return {\n ...state,\n entities: {},\n };\n }\n\n case \"ENTITY_BY_ID:CLEAR_ENTITY\": {\n const { id } = action;\n const entities = {\n ...state.entities,\n };\n delete entities[id];\n return {\n ...state,\n entities,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport {\n EntityByIdClearAllEntitiesAction,\n EntityByIdClearEntityAction,\n EntityByIdSetEntityAction,\n EntityByIdSetEntityFieldsAction,\n} from \"./entity-by-id-actions\";\n\nexport interface EntityByIdActions<T extends EntityWithId> {\n setEntity: (entity: T) => EntityByIdSetEntityAction<T>;\n setEntityFields: (\n id: string,\n fields: Partial<T>,\n ) => EntityByIdSetEntityFieldsAction<T>;\n clearEntity: (id: string) => EntityByIdClearEntityAction;\n clearAllEntities: () => EntityByIdClearAllEntitiesAction;\n}\n\nexport const createEntityByIdActions = <\n T extends EntityWithId,\n>(): EntityByIdActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (id, fields) => ({\n type: \"ENTITY_BY_ID:SET_ENTITY_FIELDS\",\n id,\n fields,\n }),\n clearEntity: (id) => ({\n type: \"ENTITY_BY_ID:CLEAR_ENTITY\",\n id,\n }),\n clearAllEntities: () => ({\n type: \"ENTITY_BY_ID:CLEAR_ALL_ENTITIES\",\n }),\n});\n","import { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdState } from \"./entity-by-id-reducer\";\n\nexport interface EntityByIdSelectors<\n TStoreState,\n TEntity extends EntityWithId,\n> {\n getState: EntityByIdStateSelector<TStoreState, TEntity>;\n}\n\nexport type EntityByIdStateSelector<\n TStoreState,\n TEntity extends EntityWithId,\n> = (state: TStoreState) => EntityByIdState<TEntity>;\n\nexport const createEntityByIdSelectors = <\n TStoreState,\n TEntity extends EntityWithId,\n>(\n stateSelector: EntityByIdStateSelector<TStoreState, TEntity>,\n): EntityByIdSelectors<TStoreState, TEntity> => ({\n getState: stateSelector,\n});\n","import { EntityAction } from \"./entity-actions\";\nimport { Reducer } from \"redux\";\n\nexport type EntityState<T> = T;\n\nexport const createEntityReducer = <T>(\n initialEntity: T,\n): Reducer<EntityState<T>, EntityAction<T>> => {\n const INITIAL_STATE = initialEntity;\n\n return (\n state: EntityState<T> = INITIAL_STATE,\n action: EntityAction<T>,\n ): EntityState<T> => {\n switch (action.type) {\n case \"ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return entity;\n }\n\n case \"ENTITY:SET_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n ...fields,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EntitySetEntityAction,\n EntitySetEntityFieldsAction,\n} from \"./entity-actions\";\n\nexport interface EntityActions<T> {\n setEntity: (entity: T) => EntitySetEntityAction<T>;\n setEntityFields: (fields: Partial<T>) => EntitySetEntityFieldsAction<T>;\n}\n\nexport const createEntityActions = <T>(): EntityActions<T> => ({\n setEntity: (entity) => ({\n type: \"ENTITY:SET_ENTITY\",\n entity,\n }),\n setEntityFields: (fields) => ({\n type: \"ENTITY:SET_ENTITY_FIELDS\",\n fields,\n }),\n});\n","import { EntityState } from \"./entity-reducer\";\n\nexport interface EntitySelectors<TStoreState, TEntity> {\n getEntity: (state: TStoreState) => TEntity;\n}\n\nexport type EntityStateSelector<TStoreState, TEntity> = (\n state: TStoreState,\n) => EntityState<TEntity>;\n\nexport const createEntitySelectors = <TStoreState, TEntity>(\n stateSelector: EntityStateSelector<TStoreState, TEntity>,\n): EntitySelectors<TStoreState, TEntity> => ({\n getEntity: (state) => stateSelector(state),\n});\n","import { Reducer } from \"redux\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n EntityByIdStateSelector,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\n\nexport interface EntityCrudStatus extends CrudStatus {\n id: string;\n}\n\nexport interface CrudStatus {\n loading?: boolean;\n creating?: boolean;\n updating?: boolean;\n modified?: boolean;\n deleting?: boolean;\n hasError?: boolean;\n errorMessage?: string;\n}\n\nexport type EntityCrudStatusState = EntityByIdState<EntityCrudStatus>;\nexport type EntityCrudStatusAction = EntityByIdAction<EntityCrudStatus>;\nexport type EntityCrudStatusActions = EntityByIdActions<EntityCrudStatus>;\n\nexport interface EntityCrudStatusRedux<TStoreState> {\n reducer: EntityCrudStatusReducer;\n actions: EntityCrudStatusActions;\n selectors: EntityCrudStatusSelectors<TStoreState>;\n}\n\nexport type EntityCrudStatusReducer = Reducer<\n EntityCrudStatusState,\n EntityByIdAction<EntityCrudStatus>\n>;\n\nexport const createEntityCrudStatusReducer = () =>\n createEntityByIdReducer<EntityCrudStatus>();\n\nexport const createEntityCrudStatusActions = (): EntityCrudStatusActions =>\n createEntityByIdActions<EntityCrudStatus>();\n\nexport type EntityCrudStatusSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n EntityCrudStatus\n>;\n\nexport const createEntityCrudStatusSelectors = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n) => createEntityByIdSelectors<TStoreState, EntityCrudStatus>(stateSelector);\n\nexport const createEntityCrudStatusRedux = <TStoreState>(\n stateSelector: EntityByIdStateSelector<TStoreState, EntityCrudStatus>,\n): EntityCrudStatusRedux<TStoreState> => {\n const reducer = createEntityCrudStatusReducer();\n const actions = createEntityCrudStatusActions();\n const selectors = createEntityCrudStatusSelectors(stateSelector);\n return {\n reducer,\n actions,\n selectors,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EntityWithId } from \"../../../common/EntityWithId\";\nimport { EntityByIdAction } from \"../entity-by-id-reducer/entity-by-id-actions\";\nimport {\n createEntityByIdActions,\n EntityByIdActions,\n} from \"../entity-by-id-reducer/entity-by-id-action-creators\";\nimport {\n createEntityByIdReducer,\n EntityByIdState,\n} from \"../entity-by-id-reducer/entity-by-id-reducer\";\nimport {\n createEntityByIdSelectors,\n EntityByIdSelectors,\n} from \"../entity-by-id-reducer/entity-by-id-selectors\";\n\nexport interface ModifiedFieldItemState extends EntityWithId {\n modified?: boolean;\n originalValue?: string;\n newValue?: string;\n}\n\nexport type ModifiedFieldState = EntityByIdState<ModifiedFieldItemState>;\nexport type ModifiedFieldAction = EntityByIdAction<ModifiedFieldItemState>;\nexport type ModifiedFieldActions = EntityByIdActions<ModifiedFieldItemState>;\n\nexport type ModifiedFieldsSelectors<TStoreState> = EntityByIdSelectors<\n TStoreState,\n ModifiedFieldItemState\n>;\n\nexport type ModifiedFieldStateSelector<TStoreState> = (\n state: TStoreState,\n) => ModifiedFieldState;\n\nexport type ModifiedStateReducer = Reducer<\n ModifiedFieldState,\n ModifiedFieldAction\n>;\n\nexport interface ModifiedFieldRedux<TStoreState> {\n reducer: ModifiedStateReducer;\n selectors: ModifiedFieldsSelectors<TStoreState>;\n actions: ModifiedFieldActions;\n}\n\nexport const createModifiedFieldRedux = <TStoreState>(\n stateSelector: ModifiedFieldStateSelector<TStoreState>,\n): ModifiedFieldRedux<TStoreState> => {\n const reducer = createEntityByIdReducer<ModifiedFieldItemState>();\n\n const selectors: ModifiedFieldsSelectors<TStoreState> =\n createEntityByIdSelectors<TStoreState, ModifiedFieldItemState>(\n stateSelector,\n );\n\n const actions = createEntityByIdActions<ModifiedFieldItemState>();\n\n return {\n reducer,\n selectors,\n actions,\n };\n};\n","import { Reducer } from \"redux\";\nimport { EditableEntityAction } from \"./editable-entity-actions\";\n\nexport interface EditableEntityState<T> {\n id?: string;\n persisted: T;\n editable: T;\n}\n\nexport const createEditableEntityReducer = <T>(\n initialEntity: T,\n initialId?: string,\n): Reducer<EditableEntityState<T>, EditableEntityAction<T>> => {\n const initialState: EditableEntityState<T> = {\n id: initialId,\n editable: initialEntity,\n persisted: initialEntity,\n };\n\n return (state = initialState, action) => {\n switch (action.type) {\n case \"EDITABLE_ENTITY:SET_ENTITY_ID\": {\n const { id } = action;\n return {\n ...state,\n id,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n persisted: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\": {\n const { entity } = action;\n return {\n ...state,\n editable: entity,\n };\n }\n\n case \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\": {\n const { fields } = action;\n return {\n ...state,\n editable: {\n ...state.editable,\n ...fields,\n },\n };\n }\n\n case \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\": {\n return {\n ...state,\n editable: state.persisted,\n };\n }\n\n case \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\": {\n return {\n ...state,\n persisted: state.editable,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n EditableEntityCommitEditableEntityToPersistedAction,\n EditableEntityRevertEditableEntityAction,\n EditableEntitySetEditableEntityAction,\n EditableEntitySetEditableEntityFieldsAction,\n EditableEntitySetEntityAction,\n EditableEntitySetEntityIdAction,\n EditableEntitySetPersistedEntityAction,\n} from \"./editable-entity-actions\";\n\nexport interface EditableEntityActions<T> {\n setEntityId: (\n entityId: string | undefined,\n ) => EditableEntitySetEntityIdAction;\n setEntity: (entity: T) => EditableEntitySetEntityAction<T>;\n setPersistedEntity: (entity: T) => EditableEntitySetPersistedEntityAction<T>;\n setEditableEntity: (entity: T) => EditableEntitySetEditableEntityAction<T>;\n setEditableEntityFields: (\n fields: Partial<T>,\n ) => EditableEntitySetEditableEntityFieldsAction<T>;\n revertEditableEntity: () => EditableEntityRevertEditableEntityAction;\n commitEditableEntityToPersisted: () => EditableEntityCommitEditableEntityToPersistedAction;\n}\n\nexport const createEditableEntityActions = <T>(): EditableEntityActions<T> => ({\n setEntityId: (id: string | undefined) => ({\n type: \"EDITABLE_ENTITY:SET_ENTITY_ID\",\n id,\n }),\n setEntity: (entity) => ({ type: \"EDITABLE_ENTITY:SET_ENTITY\", entity }),\n setPersistedEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_PERSISTED_ENTITY\",\n entity,\n }),\n setEditableEntity: (entity) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY\",\n entity,\n }),\n setEditableEntityFields: (fields) => ({\n type: \"EDITABLE_ENTITY:SET_EDITABLE_ENTITY_FIELDS\",\n fields,\n }),\n revertEditableEntity: () => ({\n type: \"EDITABLE_ENTITY:REVERT_EDITABLE_ENTITY\",\n }),\n commitEditableEntityToPersisted: () => ({\n type: \"EDITABLE_ENTITY:COMMIT_EDITABLE_ENTITY_TO_PERSISTED\",\n }),\n});\n","import { Reducer } from \"redux\";\nimport { SelectedIdsAction } from \"./selected-ids-actions\";\n\nexport interface SelectedIdsState {\n selectedIds: Array<string>;\n}\n\nexport const createSelectedIdsReducerInitialState = (\n initialSelection: string[] = [],\n): SelectedIdsState => ({\n selectedIds: initialSelection,\n});\n\nconst INITIAL_STATE = createSelectedIdsReducerInitialState();\n\nexport type SelectedIdsReducer = Reducer<SelectedIdsState, SelectedIdsAction>;\n\nexport const createSelectedIdsReducer =\n (initialState: SelectedIdsState = INITIAL_STATE): SelectedIdsReducer =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SELECTED_IDS:SET_SELECTED_IDS\": {\n const { selectedIds } = action;\n return {\n ...state,\n selectedIds,\n };\n }\n case \"SELECTED_IDS:CLEAR_SELECTED_IDS\": {\n return {\n ...state,\n selectedIds: [],\n };\n }\n default:\n return state;\n }\n };\n\nexport const selectedIdsReducer = createSelectedIdsReducer();\n","import {\n SelectedIdsClearSelectedIdsAction,\n SelectedIdsSetSelectedIdsAction,\n} from \"./selected-ids-actions\";\n\nexport interface SelectedIdsActions {\n setSelectedIds: (ids: Array<string>) => SelectedIdsSetSelectedIdsAction;\n clearSelectedIds: () => SelectedIdsClearSelectedIdsAction;\n}\n\nexport const createSelectedIdsActions = (): SelectedIdsActions => ({\n setSelectedIds: (selectedIds) => ({\n selectedIds,\n type: \"SELECTED_IDS:SET_SELECTED_IDS\",\n }),\n clearSelectedIds: () => ({\n type: \"SELECTED_IDS:CLEAR_SELECTED_IDS\",\n }),\n});\n\nexport const selectedIdsActions = createSelectedIdsActions();\n","import { SelectedIdsState } from \"./selected-ids-reducer\";\n\nexport interface SelectedIdsSelectors<TStoreState> {\n getState: SelectedIdsStateSelector<TStoreState>;\n}\n\nexport type SelectedIdsStateSelector<TStoreState> = (\n state: TStoreState,\n) => SelectedIdsState;\n\nexport const createSelectedIdsSelectors = <TStoreState>(\n stateSelector: SelectedIdsStateSelector<TStoreState>,\n): SelectedIdsSelectors<TStoreState> => ({\n getState: stateSelector,\n});\n","import { SortOrderByIdAction } from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdState {\n ids: Array<string> | undefined;\n}\n\nconst INITIAL_STATE: SortOrderByIdState = {\n ids: undefined,\n};\n\nexport const createSortOrderByIdReducer =\n () =>\n (\n state: SortOrderByIdState = INITIAL_STATE,\n action: SortOrderByIdAction,\n ): SortOrderByIdState => {\n switch (action.type) {\n case \"SORT_ORDER_BY_ID:SET_SORT_ORDER\":\n return {\n ...state,\n ids: action.ids,\n };\n\n case \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\":\n return {\n ...state,\n ids: undefined,\n };\n\n default:\n return state;\n }\n };\n\nexport const sortOrderByIdReducer = createSortOrderByIdReducer();\n","import {\n SortOrderByIdClearSortOrderAction,\n SortOrderByIdSetSortOrderAction,\n} from \"./sort-order-by-id-actions\";\n\nexport interface SortOrderByIdActions {\n setSortOrder: (ids: Array<string>) => SortOrderByIdSetSortOrderAction;\n clearSortOrder: () => SortOrderByIdClearSortOrderAction;\n}\n\nexport const createSortOrderByIdActions = (): SortOrderByIdActions => {\n return {\n setSortOrder: (ids) => ({\n ids,\n type: \"SORT_ORDER_BY_ID:SET_SORT_ORDER\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER_BY_ID:CLEAR_SORT_ORDER\",\n }),\n };\n};\n\nexport const sortOrderByIdActions = createSortOrderByIdActions();\n","import { SortOrderByIdState } from \"./sort-order-by-id-reducer\";\n\ninterface SortOrderByIdSelectors<TStoreState> {\n getSortOrderByIdState: (state: TStoreState) => SortOrderByIdState;\n getSortOrder: (state: TStoreState) => Array<string> | undefined;\n}\n\ntype SortOrderByIdStateProvider<TStoreState> = (\n state: TStoreState,\n) => SortOrderByIdState;\n\nexport const createSortOrderByIdSelectors = <TStoreState>(\n rootStateProvider: SortOrderByIdStateProvider<TStoreState>,\n): SortOrderByIdSelectors<TStoreState> => {\n return {\n getSortOrderByIdState: (state) => {\n return rootStateProvider(state);\n },\n getSortOrder: (state) => {\n return rootStateProvider(state).ids;\n },\n };\n};\n","import { Reducer } from \"redux\";\nimport { SortOrderAction } from \"./sort-order-actions\";\n\nexport interface SortOrderState<TSortBy> {\n sortBy: TSortBy | undefined;\n desc: boolean;\n}\n\nexport const createSortOrderReducerInitialState = <TSortBy>(\n sortBy: TSortBy | undefined = undefined,\n desc: boolean = false,\n): SortOrderState<TSortBy> => ({\n sortBy,\n desc,\n});\n\nexport type SortOrderReducer<TSortBy> = Reducer<\n SortOrderState<TSortBy>,\n SortOrderAction<TSortBy>\n>;\n\nexport const createSortOrderReducer =\n <TSortBy>(\n initialState: SortOrderState<TSortBy> = { sortBy: undefined, desc: false },\n ): SortOrderReducer<TSortBy> =>\n (state = initialState, action) => {\n switch (action.type) {\n case \"SORT_ORDER:SET_SORT_BY\": {\n const { sortBy, desc } = action;\n return {\n ...state,\n sortBy,\n desc,\n };\n }\n\n case \"SORT_ORDER:CLEAR_SORT_ORDER\": {\n return {\n ...state,\n sortBy: undefined,\n desc: false,\n };\n }\n\n default:\n return state;\n }\n };\n","import {\n SortOrderClearSortOrderAction,\n SortOrderSetSortByAction,\n} from \"./sort-order-actions\";\n\nexport interface SortOrderActions<TSortBy> {\n sortBy: (sortBy: TSortBy, desc: boolean) => SortOrderSetSortByAction<TSortBy>;\n clearSortOrder: () => SortOrderClearSortOrderAction;\n}\n\nexport const createSortOrderActions = <\n TSortBy,\n>(): SortOrderActions<TSortBy> => ({\n sortBy: (sortBy, desc) => ({\n desc,\n sortBy,\n type: \"SORT_ORDER:SET_SORT_BY\",\n }),\n clearSortOrder: () => ({\n type: \"SORT_ORDER:CLEAR_SORT_ORDER\",\n }),\n});\n","import { SortOrderState } from \"./sort-order-reducer\";\n\nexport interface SortOrderSelectors<TStoreState, TSortBy> {\n getState: SortOrderStateSelector<TStoreState, TSortBy>;\n}\n\nexport type SortOrderStateSelector<TStoreState, TSortBy> = (\n state: TStoreState,\n) => SortOrderState<TSortBy>;\n\nexport const createSortOrderSelectors = <TStoreState, TSortBy>(\n stateProvider: SortOrderStateSelector<TStoreState, TSortBy>,\n): SortOrderSelectors<TStoreState, TSortBy> => ({\n getState: stateProvider,\n});\n","import { ValueByIdAction } from \"./value-by-id-actions\";\n\nexport interface ValueByIdState<TValue> {\n values: { [key: string]: TValue };\n}\n\nexport const valueByIdInitialState = { values: {} };\n\nexport const createValueByIdReducer = <TValue>(\n initialValue: ValueByIdState<TValue> = valueByIdInitialState,\n) => {\n return (\n state: ValueByIdState<TValue> = initialValue,\n action: ValueByIdAction<TValue>,\n ): ValueByIdState<TValue> => {\n switch (action.type) {\n case \"VALUE_BY_ID:SET_VALUE\": {\n const { id, value } = action;\n return {\n ...state,\n values: {\n ...state.values,\n [id]: value,\n },\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_ALL_VALUES\": {\n return {\n ...state,\n values: {},\n };\n }\n\n case \"VALUE_BY_ID:CLEAR_VALUE\": {\n const { id } = action;\n const values = {\n ...state.values,\n };\n delete values[id];\n return {\n ...state,\n values,\n };\n }\n\n default:\n return state;\n }\n };\n};\n","import {\n ValueByIdClearAllValuesAction,\n ValueByIdClearValueAction,\n ValueByIdSetValueAction,\n} from \"./value-by-id-actions\";\n\nexport interface ValueByIdActions<TValue> {\n setValue: (id: string, value: TValue) => ValueByIdSetValueAction<TValue>;\n clearValue: (id: string) => ValueByIdClearValueAction;\n clearAllValues: () => ValueByIdClearAllValuesAction;\n}\n\nexport const createValueByIdActions = <TValue>(): ValueByIdActions<TValue> => ({\n setValue: (id, value) => ({\n type: \"VALUE_BY_ID:SET_VALUE\",\n id,\n value,\n }),\n clearValue: (id) => ({\n type: \"VALUE_BY_ID:CLEAR_VALUE\",\n id,\n }),\n clearAllValues: () => ({\n type: \"VALUE_BY_ID:CLEAR_ALL_VALUES\",\n }),\n});\n","import { ValueByIdState } from \"./value-by-id-reducer\";\n\nexport interface ValueByIdSelectors<TStoreState, TValue> {\n getState: ValueByIdStateSelector<TStoreState, TValue>;\n}\n\nexport type ValueByIdStateSelector<TStoreState, TValue> = (\n state: TStoreState,\n) => ValueByIdState<TValue>;\n\nexport const createValueByIdSelectors = <TStoreState, TValue>(\n stateSelector: ValueByIdStateSelector<TStoreState, TValue>,\n): ValueByIdSelectors<TStoreState, TValue> => ({\n getState: stateSelector,\n});\n"],"names":["createRecordObjectReducer","reducer","state","action","recordId","newState","innerAction","createRecordObjectActions","reducerIdGate","reducerId","isValidReducerIdGateAction","reducerIdGateAction","wrapActionWithReducerIdGate","actionCreator","args","wrapActionsWithReducerIdGate","actionCreators","boundActionCreators","key","createCommitReducerActions","id","values","createCommitReducer","initialState","createCommitReducerSelectors","stateSelector","createEntityListActions","entity","index","fields","list","fieldsMatch","keys","i","createEntityListReducer","item","createEntityListSelectors","store","entityByIdInitialState","createEntityByIdReducer","entities","createEntityByIdActions","createEntityByIdSelectors","createEntityReducer","initialEntity","INITIAL_STATE","createEntityActions","createEntitySelectors","createEntityCrudStatusReducer","createEntityCrudStatusActions","createEntityCrudStatusSelectors","createEntityCrudStatusRedux","actions","selectors","createModifiedFieldRedux","createEditableEntityReducer","initialId","createEditableEntityActions","createSelectedIdsReducerInitialState","initialSelection","createSelectedIdsReducer","selectedIds","selectedIdsReducer","createSelectedIdsActions","selectedIdsActions","createSelectedIdsSelectors","createSortOrderByIdReducer","sortOrderByIdReducer","createSortOrderByIdActions","ids","sortOrderByIdActions","createSortOrderByIdSelectors","rootStateProvider","createSortOrderReducerInitialState","sortBy","desc","createSortOrderReducer","createSortOrderActions","createSortOrderSelectors","stateProvider","valueByIdInitialState","createValueByIdReducer","initialValue","value","createValueByIdActions","createValueByIdSelectors"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stenajs-webui/redux",
|
|
3
|
-
"version": "22.7.
|
|
3
|
+
"version": "22.7.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "",
|
|
6
6
|
"author": "mattias800",
|
|
@@ -53,5 +53,5 @@
|
|
|
53
53
|
"files": [
|
|
54
54
|
"dist"
|
|
55
55
|
],
|
|
56
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "5b1d9a504d0e6c97dc6415bba20da1c14304b87f"
|
|
57
57
|
}
|