@lls/store 24.1.57-dcb5abee → 24.1.57-e3568fa0
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/README.md +6 -0
- package/lib/index.js +344 -64
- package/package.json +4 -4
package/README.md
CHANGED
package/lib/index.js
CHANGED
|
@@ -33,6 +33,253 @@ var init_define_import_meta = __esm({
|
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
35
|
|
|
36
|
+
// ../../node_modules/.pnpm/reselect@4.1.8/node_modules/reselect/lib/defaultMemoize.js
|
|
37
|
+
var require_defaultMemoize = __commonJS({
|
|
38
|
+
"../../node_modules/.pnpm/reselect@4.1.8/node_modules/reselect/lib/defaultMemoize.js"(exports) {
|
|
39
|
+
"use strict";
|
|
40
|
+
init_define_import_meta();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", {
|
|
42
|
+
value: true
|
|
43
|
+
});
|
|
44
|
+
exports.createCacheKeyComparator = createCacheKeyComparator;
|
|
45
|
+
exports.defaultEqualityCheck = void 0;
|
|
46
|
+
exports.defaultMemoize = defaultMemoize;
|
|
47
|
+
var NOT_FOUND = "NOT_FOUND";
|
|
48
|
+
function createSingletonCache(equals) {
|
|
49
|
+
var entry;
|
|
50
|
+
return {
|
|
51
|
+
get: function get(key) {
|
|
52
|
+
if (entry && equals(entry.key, key)) {
|
|
53
|
+
return entry.value;
|
|
54
|
+
}
|
|
55
|
+
return NOT_FOUND;
|
|
56
|
+
},
|
|
57
|
+
put: function put(key, value) {
|
|
58
|
+
entry = {
|
|
59
|
+
key,
|
|
60
|
+
value
|
|
61
|
+
};
|
|
62
|
+
},
|
|
63
|
+
getEntries: function getEntries() {
|
|
64
|
+
return entry ? [entry] : [];
|
|
65
|
+
},
|
|
66
|
+
clear: function clear() {
|
|
67
|
+
entry = void 0;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
function createLruCache(maxSize, equals) {
|
|
72
|
+
var entries = [];
|
|
73
|
+
function get(key) {
|
|
74
|
+
var cacheIndex = entries.findIndex(function(entry2) {
|
|
75
|
+
return equals(key, entry2.key);
|
|
76
|
+
});
|
|
77
|
+
if (cacheIndex > -1) {
|
|
78
|
+
var entry = entries[cacheIndex];
|
|
79
|
+
if (cacheIndex > 0) {
|
|
80
|
+
entries.splice(cacheIndex, 1);
|
|
81
|
+
entries.unshift(entry);
|
|
82
|
+
}
|
|
83
|
+
return entry.value;
|
|
84
|
+
}
|
|
85
|
+
return NOT_FOUND;
|
|
86
|
+
}
|
|
87
|
+
function put(key, value) {
|
|
88
|
+
if (get(key) === NOT_FOUND) {
|
|
89
|
+
entries.unshift({
|
|
90
|
+
key,
|
|
91
|
+
value
|
|
92
|
+
});
|
|
93
|
+
if (entries.length > maxSize) {
|
|
94
|
+
entries.pop();
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
function getEntries() {
|
|
99
|
+
return entries;
|
|
100
|
+
}
|
|
101
|
+
function clear() {
|
|
102
|
+
entries = [];
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
get,
|
|
106
|
+
put,
|
|
107
|
+
getEntries,
|
|
108
|
+
clear
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
var defaultEqualityCheck = function defaultEqualityCheck2(a, b) {
|
|
112
|
+
return a === b;
|
|
113
|
+
};
|
|
114
|
+
exports.defaultEqualityCheck = defaultEqualityCheck;
|
|
115
|
+
function createCacheKeyComparator(equalityCheck) {
|
|
116
|
+
return function areArgumentsShallowlyEqual(prev, next) {
|
|
117
|
+
if (prev === null || next === null || prev.length !== next.length) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
var length = prev.length;
|
|
121
|
+
for (var i = 0; i < length; i++) {
|
|
122
|
+
if (!equalityCheck(prev[i], next[i])) {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return true;
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
function defaultMemoize(func, equalityCheckOrOptions) {
|
|
130
|
+
var providedOptions = typeof equalityCheckOrOptions === "object" ? equalityCheckOrOptions : {
|
|
131
|
+
equalityCheck: equalityCheckOrOptions
|
|
132
|
+
};
|
|
133
|
+
var _providedOptions$equa = providedOptions.equalityCheck, equalityCheck = _providedOptions$equa === void 0 ? defaultEqualityCheck : _providedOptions$equa, _providedOptions$maxS = providedOptions.maxSize, maxSize = _providedOptions$maxS === void 0 ? 1 : _providedOptions$maxS, resultEqualityCheck = providedOptions.resultEqualityCheck;
|
|
134
|
+
var comparator = createCacheKeyComparator(equalityCheck);
|
|
135
|
+
var cache = maxSize === 1 ? createSingletonCache(comparator) : createLruCache(maxSize, comparator);
|
|
136
|
+
function memoized() {
|
|
137
|
+
var value = cache.get(arguments);
|
|
138
|
+
if (value === NOT_FOUND) {
|
|
139
|
+
value = func.apply(null, arguments);
|
|
140
|
+
if (resultEqualityCheck) {
|
|
141
|
+
var entries = cache.getEntries();
|
|
142
|
+
var matchingEntry = entries.find(function(entry) {
|
|
143
|
+
return resultEqualityCheck(entry.value, value);
|
|
144
|
+
});
|
|
145
|
+
if (matchingEntry) {
|
|
146
|
+
value = matchingEntry.value;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
cache.put(arguments, value);
|
|
150
|
+
}
|
|
151
|
+
return value;
|
|
152
|
+
}
|
|
153
|
+
memoized.clearCache = function() {
|
|
154
|
+
return cache.clear();
|
|
155
|
+
};
|
|
156
|
+
return memoized;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
|
|
161
|
+
// ../../node_modules/.pnpm/reselect@4.1.8/node_modules/reselect/lib/index.js
|
|
162
|
+
var require_lib = __commonJS({
|
|
163
|
+
"../../node_modules/.pnpm/reselect@4.1.8/node_modules/reselect/lib/index.js"(exports) {
|
|
164
|
+
"use strict";
|
|
165
|
+
init_define_import_meta();
|
|
166
|
+
Object.defineProperty(exports, "__esModule", {
|
|
167
|
+
value: true
|
|
168
|
+
});
|
|
169
|
+
exports.createSelector = void 0;
|
|
170
|
+
exports.createSelectorCreator = createSelectorCreator;
|
|
171
|
+
exports.createStructuredSelector = void 0;
|
|
172
|
+
Object.defineProperty(exports, "defaultEqualityCheck", {
|
|
173
|
+
enumerable: true,
|
|
174
|
+
get: function get() {
|
|
175
|
+
return _defaultMemoize.defaultEqualityCheck;
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
Object.defineProperty(exports, "defaultMemoize", {
|
|
179
|
+
enumerable: true,
|
|
180
|
+
get: function get() {
|
|
181
|
+
return _defaultMemoize.defaultMemoize;
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
var _defaultMemoize = require_defaultMemoize();
|
|
185
|
+
function getDependencies(funcs) {
|
|
186
|
+
var dependencies = Array.isArray(funcs[0]) ? funcs[0] : funcs;
|
|
187
|
+
if (!dependencies.every(function(dep) {
|
|
188
|
+
return typeof dep === "function";
|
|
189
|
+
})) {
|
|
190
|
+
var dependencyTypes = dependencies.map(function(dep) {
|
|
191
|
+
return typeof dep === "function" ? "function " + (dep.name || "unnamed") + "()" : typeof dep;
|
|
192
|
+
}).join(", ");
|
|
193
|
+
throw new Error("createSelector expects all input-selectors to be functions, but received the following types: [" + dependencyTypes + "]");
|
|
194
|
+
}
|
|
195
|
+
return dependencies;
|
|
196
|
+
}
|
|
197
|
+
function createSelectorCreator(memoize) {
|
|
198
|
+
for (var _len = arguments.length, memoizeOptionsFromArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
199
|
+
memoizeOptionsFromArgs[_key - 1] = arguments[_key];
|
|
200
|
+
}
|
|
201
|
+
var createSelector3 = function createSelector4() {
|
|
202
|
+
for (var _len2 = arguments.length, funcs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
203
|
+
funcs[_key2] = arguments[_key2];
|
|
204
|
+
}
|
|
205
|
+
var _recomputations = 0;
|
|
206
|
+
var _lastResult;
|
|
207
|
+
var directlyPassedOptions = {
|
|
208
|
+
memoizeOptions: void 0
|
|
209
|
+
};
|
|
210
|
+
var resultFunc = funcs.pop();
|
|
211
|
+
if (typeof resultFunc === "object") {
|
|
212
|
+
directlyPassedOptions = resultFunc;
|
|
213
|
+
resultFunc = funcs.pop();
|
|
214
|
+
}
|
|
215
|
+
if (typeof resultFunc !== "function") {
|
|
216
|
+
throw new Error("createSelector expects an output function after the inputs, but received: [" + typeof resultFunc + "]");
|
|
217
|
+
}
|
|
218
|
+
var _directlyPassedOption = directlyPassedOptions, _directlyPassedOption2 = _directlyPassedOption.memoizeOptions, memoizeOptions = _directlyPassedOption2 === void 0 ? memoizeOptionsFromArgs : _directlyPassedOption2;
|
|
219
|
+
var finalMemoizeOptions = Array.isArray(memoizeOptions) ? memoizeOptions : [memoizeOptions];
|
|
220
|
+
var dependencies = getDependencies(funcs);
|
|
221
|
+
var memoizedResultFunc = memoize.apply(void 0, [function recomputationWrapper() {
|
|
222
|
+
_recomputations++;
|
|
223
|
+
return resultFunc.apply(null, arguments);
|
|
224
|
+
}].concat(finalMemoizeOptions));
|
|
225
|
+
var selector = memoize(function dependenciesChecker() {
|
|
226
|
+
var params = [];
|
|
227
|
+
var length = dependencies.length;
|
|
228
|
+
for (var i = 0; i < length; i++) {
|
|
229
|
+
params.push(dependencies[i].apply(null, arguments));
|
|
230
|
+
}
|
|
231
|
+
_lastResult = memoizedResultFunc.apply(null, params);
|
|
232
|
+
return _lastResult;
|
|
233
|
+
});
|
|
234
|
+
Object.assign(selector, {
|
|
235
|
+
resultFunc,
|
|
236
|
+
memoizedResultFunc,
|
|
237
|
+
dependencies,
|
|
238
|
+
lastResult: function lastResult() {
|
|
239
|
+
return _lastResult;
|
|
240
|
+
},
|
|
241
|
+
recomputations: function recomputations() {
|
|
242
|
+
return _recomputations;
|
|
243
|
+
},
|
|
244
|
+
resetRecomputations: function resetRecomputations() {
|
|
245
|
+
return _recomputations = 0;
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
return selector;
|
|
249
|
+
};
|
|
250
|
+
return createSelector3;
|
|
251
|
+
}
|
|
252
|
+
var createSelector2 = /* @__PURE__ */ createSelectorCreator(_defaultMemoize.defaultMemoize);
|
|
253
|
+
exports.createSelector = createSelector2;
|
|
254
|
+
var createStructuredSelector = function createStructuredSelector2(selectors, selectorCreator) {
|
|
255
|
+
if (selectorCreator === void 0) {
|
|
256
|
+
selectorCreator = createSelector2;
|
|
257
|
+
}
|
|
258
|
+
if (typeof selectors !== "object") {
|
|
259
|
+
throw new Error("createStructuredSelector expects first argument to be an object " + ("where each property is a selector, instead received a " + typeof selectors));
|
|
260
|
+
}
|
|
261
|
+
var objectKeys = Object.keys(selectors);
|
|
262
|
+
var resultSelector = selectorCreator(
|
|
263
|
+
// @ts-ignore
|
|
264
|
+
objectKeys.map(function(key) {
|
|
265
|
+
return selectors[key];
|
|
266
|
+
}),
|
|
267
|
+
function() {
|
|
268
|
+
for (var _len3 = arguments.length, values = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
|
269
|
+
values[_key3] = arguments[_key3];
|
|
270
|
+
}
|
|
271
|
+
return values.reduce(function(composition, value, index) {
|
|
272
|
+
composition[objectKeys[index]] = value;
|
|
273
|
+
return composition;
|
|
274
|
+
}, {});
|
|
275
|
+
}
|
|
276
|
+
);
|
|
277
|
+
return resultSelector;
|
|
278
|
+
};
|
|
279
|
+
exports.createStructuredSelector = createStructuredSelector;
|
|
280
|
+
}
|
|
281
|
+
});
|
|
282
|
+
|
|
36
283
|
// ../../node_modules/.pnpm/normalizr@3.6.2/node_modules/normalizr/dist/normalizr.js
|
|
37
284
|
var require_normalizr = __commonJS({
|
|
38
285
|
"../../node_modules/.pnpm/normalizr@3.6.2/node_modules/normalizr/dist/normalizr.js"(exports) {
|
|
@@ -488,29 +735,67 @@ init_define_import_meta();
|
|
|
488
735
|
|
|
489
736
|
// src/selectors/school.ts
|
|
490
737
|
init_define_import_meta();
|
|
491
|
-
import {
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
} from "@lls/utils";
|
|
738
|
+
import { filterEntitiesSimpleFieldByValues } from "@lls/utils";
|
|
739
|
+
import _2 from "lodash/fp.js";
|
|
740
|
+
|
|
741
|
+
// src/selectors/crud.ts
|
|
742
|
+
init_define_import_meta();
|
|
743
|
+
import { createSearchSelector, makeGetAllEntities, makeGetEntityById } from "@lls/utils";
|
|
497
744
|
import _ from "lodash/fp.js";
|
|
498
|
-
var
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
745
|
+
var crud = (entityName, { search: search3 }) => {
|
|
746
|
+
const getElements = makeGetAllEntities(entityName);
|
|
747
|
+
const makeSearchElements = () => createSearchSelector(
|
|
748
|
+
getElements,
|
|
749
|
+
(_state, params) => params,
|
|
750
|
+
(elements, params) => search3(params)(elements)
|
|
751
|
+
);
|
|
752
|
+
const methodName = _.capitalize(entityName);
|
|
753
|
+
const getElementById = makeGetEntityById(entityName);
|
|
754
|
+
const back = {
|
|
755
|
+
[`get${methodName}`]: getElements,
|
|
756
|
+
[`search${methodName}`]: makeSearchElements(),
|
|
757
|
+
[`get${methodName.replace(/s$/, "")}`]: getElementById,
|
|
758
|
+
[`makeSearch${methodName}`]: makeSearchElements
|
|
759
|
+
};
|
|
760
|
+
return back;
|
|
761
|
+
};
|
|
762
|
+
|
|
763
|
+
// src/selectors/school.ts
|
|
764
|
+
var search = ({ ids }) => _2.flow(filterEntitiesSimpleFieldByValues("id", ids));
|
|
765
|
+
var { getSchools, getSchool, searchSchools, makeSearchSchools } = crud("schools", {
|
|
766
|
+
search
|
|
767
|
+
});
|
|
768
|
+
|
|
769
|
+
// src/selectors/user.ts
|
|
770
|
+
init_define_import_meta();
|
|
771
|
+
var import_reselect = __toESM(require_lib(), 1);
|
|
772
|
+
import { filterEntitiesArrayFieldByValues, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues2 } from "@lls/utils";
|
|
773
|
+
import _4 from "lodash/fp.js";
|
|
774
|
+
|
|
775
|
+
// src/selectors/auth.ts
|
|
776
|
+
init_define_import_meta();
|
|
777
|
+
import _3 from "lodash/fp.js";
|
|
778
|
+
var getAuth = _3.get("auth");
|
|
779
|
+
var getIsLogged = _3.flow(_3.get("auth.id"), _3.negate(_3.isNil));
|
|
780
|
+
var getToken = _3.get("auth.token");
|
|
781
|
+
|
|
782
|
+
// src/selectors/user.ts
|
|
783
|
+
var search2 = ({ ids, schoolIds }) => _4.flow(filterEntitiesArrayFieldByValues("schools", schoolIds), filterEntitiesSimpleFieldByValues2("id", ids));
|
|
784
|
+
var { getUsers, getUser, searchUsers, makeSearchUsers } = crud("users", {
|
|
785
|
+
search: search2
|
|
786
|
+
});
|
|
787
|
+
var getCurrentUser = (0, import_reselect.createSelector)(
|
|
788
|
+
getAuth,
|
|
789
|
+
getUsers,
|
|
790
|
+
(auth2, users) => users?.find((user2) => user2?.id === auth2?.id)
|
|
506
791
|
);
|
|
507
792
|
|
|
508
793
|
// src/reducers/entities.ts
|
|
509
794
|
init_define_import_meta();
|
|
510
795
|
import { makeReducer } from "@lls/utils";
|
|
511
|
-
import
|
|
796
|
+
import _5 from "lodash/fp.js";
|
|
512
797
|
|
|
513
|
-
//
|
|
798
|
+
// src/actions/index.ts
|
|
514
799
|
init_define_import_meta();
|
|
515
800
|
import { makeActionCreator } from "@lls/utils";
|
|
516
801
|
var actionTypes = {
|
|
@@ -519,24 +804,7 @@ var actionTypes = {
|
|
|
519
804
|
SET_ENTITY: "SET_ENTITY",
|
|
520
805
|
SET_ENTITIES: "SET_ENTITIES",
|
|
521
806
|
RESET_AUTH: "RESET_AUTH",
|
|
522
|
-
SET_AUTH: "SET_AUTH"
|
|
523
|
-
SET_LOADING_SCREEN: "SET_LOADING_SCREEN",
|
|
524
|
-
SET_MODAL: "SET_MODAL",
|
|
525
|
-
ADD_NOTIFICATION: "ADD_NOTIFICATION",
|
|
526
|
-
REMOVE_NOTIFICATION: "REMOVE_NOTIFICATION",
|
|
527
|
-
SET_SHOWN_CONTEXTUAL_ACTIONS: "SET_SHOW_CONTEXTUAL_ACTIONS",
|
|
528
|
-
SET_IS_DRAWER_OPEN: "SET_IS_DRAWER_OPEN",
|
|
529
|
-
SET_DRAWER_EXPANDED_ID: "SET_DRAWER_EXPANDED_ID",
|
|
530
|
-
SET_IS_OPEN_SAVE_MODAL: "SET_IS_OPEN_SAVE_MODAL",
|
|
531
|
-
SET_IS_VIEWER_READY: "SET_IS_VIEWER_READY",
|
|
532
|
-
SET_CURRENT_TOUR_ID: "SET_CURRENT_TOUR_ID",
|
|
533
|
-
SET_CURRENT_TOUR_STEP: "SET_CURRENT_TOUR_STEP",
|
|
534
|
-
RESET_TOUR: "RESET_TOUR",
|
|
535
|
-
SET_IS_TOUR_PANEL_OPEN: "SET_IS_TOUR_PANEL_OPEN",
|
|
536
|
-
SET_TOUR_PANEL_MODE: "SET_TOUR_PANEL_MODE",
|
|
537
|
-
SET_IS_STUDENT_VIEW_ACTIVATED: "SET_IS_STUDENT_VIEW_ACTIVATED",
|
|
538
|
-
SET_SCENARIO_ID: "SET_SCENARIO_ID",
|
|
539
|
-
SET_SSR_FAKE_PAGE_ID: "SET_SSR_FAKE_PAGE_ID"
|
|
807
|
+
SET_AUTH: "SET_AUTH"
|
|
540
808
|
};
|
|
541
809
|
var deleteEntity = makeActionCreator(actionTypes.DELETE_ENTITY);
|
|
542
810
|
var updateEntity = makeActionCreator(actionTypes.UPDATE_ENTITY);
|
|
@@ -544,44 +812,27 @@ var setEntity = makeActionCreator(actionTypes.SET_ENTITY);
|
|
|
544
812
|
var setEntities = makeActionCreator(actionTypes.SET_ENTITIES);
|
|
545
813
|
var setAuth = makeActionCreator(actionTypes.SET_AUTH);
|
|
546
814
|
var resetAuth = makeActionCreator(actionTypes.RESET_AUTH);
|
|
547
|
-
var setLoadingScreen = makeActionCreator(actionTypes.SET_LOADING_SCREEN);
|
|
548
|
-
var setModal = makeActionCreator(actionTypes.SET_MODAL);
|
|
549
|
-
var addNotification = makeActionCreator(actionTypes.ADD_NOTIFICATION);
|
|
550
|
-
var removeNotification = makeActionCreator(actionTypes.REMOVE_NOTIFICATION);
|
|
551
|
-
var setShownContextualActions = makeActionCreator(actionTypes.SET_SHOWN_CONTEXTUAL_ACTIONS);
|
|
552
|
-
var setIsDrawerOpen = makeActionCreator(actionTypes.SET_IS_DRAWER_OPEN);
|
|
553
|
-
var setIsViewerReady = makeActionCreator(actionTypes.SET_IS_VIEWER_READY);
|
|
554
|
-
var setDrawerExpandedId = makeActionCreator(actionTypes.SET_DRAWER_EXPANDED_ID);
|
|
555
|
-
var setIsOpenSaveModal = makeActionCreator(actionTypes.SET_IS_OPEN_SAVE_MODAL);
|
|
556
|
-
var setCurrentTourId = makeActionCreator(actionTypes.SET_CURRENT_TOUR_ID);
|
|
557
|
-
var setCurrentTourStep = makeActionCreator(actionTypes.SET_CURRENT_TOUR_STEP);
|
|
558
|
-
var resetTour = makeActionCreator(actionTypes.RESET_TOUR);
|
|
559
|
-
var setIsTourPanelOpen = makeActionCreator(actionTypes.SET_IS_TOUR_PANEL_OPEN);
|
|
560
|
-
var setTourPanelMode = makeActionCreator(actionTypes.SET_TOUR_PANEL_MODE);
|
|
561
|
-
var setScenarioId = makeActionCreator(actionTypes.SET_SCENARIO_ID);
|
|
562
|
-
var setIsStudentViewActivated = makeActionCreator(actionTypes.SET_IS_STUDENT_VIEW_ACTIVATED);
|
|
563
|
-
var setSsrFakePageId = makeActionCreator(actionTypes.SET_SSR_FAKE_PAGE_ID);
|
|
564
815
|
|
|
565
816
|
// src/reducers/entities.ts
|
|
566
817
|
var deleteEntityReducer = (state, payload) => {
|
|
567
818
|
const { path } = payload;
|
|
568
|
-
return
|
|
819
|
+
return _5.omit(path, state);
|
|
569
820
|
};
|
|
570
821
|
var updateEntityReducer = (state, payload) => {
|
|
571
822
|
const { path, entity } = payload;
|
|
572
|
-
const currentEntity =
|
|
573
|
-
return
|
|
823
|
+
const currentEntity = _5.get(path, state);
|
|
824
|
+
return _5.set(path, _5.merge(currentEntity, entity), state);
|
|
574
825
|
};
|
|
575
826
|
var setEntityReducer = (state, payload) => {
|
|
576
827
|
const { path, entity } = payload;
|
|
577
|
-
return
|
|
828
|
+
return _5.set(path, entity, state);
|
|
578
829
|
};
|
|
579
830
|
var shallowAssign = (old, next, transform) => {
|
|
580
831
|
let updated = false;
|
|
581
|
-
const merged =
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
if (
|
|
832
|
+
const merged = _5.flow(
|
|
833
|
+
_5.toPairs,
|
|
834
|
+
_5.reduce((memo, [key, val]) => {
|
|
835
|
+
if (_5.isEmpty(val)) return memo;
|
|
585
836
|
if (!old[key]) {
|
|
586
837
|
updated = true;
|
|
587
838
|
memo[key] = val;
|
|
@@ -594,7 +845,7 @@ var shallowAssign = (old, next, transform) => {
|
|
|
594
845
|
return memo;
|
|
595
846
|
}
|
|
596
847
|
return memo;
|
|
597
|
-
},
|
|
848
|
+
}, _5.clone(old))
|
|
598
849
|
)(next);
|
|
599
850
|
return updated ? merged : old;
|
|
600
851
|
};
|
|
@@ -603,7 +854,7 @@ var setEntitiesReducer = (state, payload) => {
|
|
|
603
854
|
return shallowAssign(
|
|
604
855
|
entityKind,
|
|
605
856
|
nextEntityKind,
|
|
606
|
-
(oldEntity, nextEntity) =>
|
|
857
|
+
(oldEntity, nextEntity) => _5.isEqual(oldEntity, nextEntity) ? oldEntity : _5.assign(oldEntity, nextEntity)
|
|
607
858
|
);
|
|
608
859
|
});
|
|
609
860
|
};
|
|
@@ -618,10 +869,31 @@ var entities = makeReducer(
|
|
|
618
869
|
);
|
|
619
870
|
var entities_default = entities;
|
|
620
871
|
|
|
872
|
+
// src/reducers/auth.ts
|
|
873
|
+
init_define_import_meta();
|
|
874
|
+
import { makeReducer as makeReducer2 } from "@lls/utils";
|
|
875
|
+
import _6 from "lodash/fp.js";
|
|
876
|
+
var initialState = {
|
|
877
|
+
id: void 0,
|
|
878
|
+
role: null,
|
|
879
|
+
token: null,
|
|
880
|
+
isStudent: null,
|
|
881
|
+
isTeacher: null,
|
|
882
|
+
isPremium: null,
|
|
883
|
+
userPages: null,
|
|
884
|
+
username: null,
|
|
885
|
+
llsUserId: null
|
|
886
|
+
};
|
|
887
|
+
var auth = makeReducer2(initialState, {
|
|
888
|
+
[actionTypes.SET_AUTH]: _6.assign,
|
|
889
|
+
[actionTypes.RESET_AUTH]: _6.constant(initialState)
|
|
890
|
+
});
|
|
891
|
+
var auth_default = auth;
|
|
892
|
+
|
|
621
893
|
// src/schema/index.ts
|
|
622
894
|
init_define_import_meta();
|
|
623
895
|
var import_normalizr = __toESM(require_normalizr(), 1);
|
|
624
|
-
import
|
|
896
|
+
import _7 from "lodash/fp.js";
|
|
625
897
|
var document = new import_normalizr.schema.Entity("documents", {}, { idAttribute: "resourceId" });
|
|
626
898
|
var subject = new import_normalizr.schema.Entity("subjects");
|
|
627
899
|
var level = new import_normalizr.schema.Entity("levels");
|
|
@@ -806,12 +1078,20 @@ var querySchema = {
|
|
|
806
1078
|
}
|
|
807
1079
|
}
|
|
808
1080
|
};
|
|
809
|
-
var normalizeData =
|
|
1081
|
+
var normalizeData = _7.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
|
|
810
1082
|
export {
|
|
1083
|
+
auth_default as authReducer,
|
|
811
1084
|
entities_default as entitiesReducer,
|
|
1085
|
+
getCurrentUser,
|
|
812
1086
|
getSchool,
|
|
813
1087
|
getSchools,
|
|
1088
|
+
getUser,
|
|
1089
|
+
getUsers,
|
|
1090
|
+
makeSearchSchools,
|
|
1091
|
+
makeSearchUsers,
|
|
814
1092
|
normalizeData,
|
|
815
1093
|
querySchema,
|
|
816
|
-
searchSchools
|
|
1094
|
+
searchSchools,
|
|
1095
|
+
searchUsers,
|
|
1096
|
+
setEntitiesReducer
|
|
817
1097
|
};
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@lls/store",
|
|
3
3
|
"description": "model de donnée et selecteurs",
|
|
4
4
|
"homepage": "https://github.com/lelivrescolaire/monorepo/tree/dev/libs/store",
|
|
5
|
-
"version": "24.1.57-
|
|
5
|
+
"version": "24.1.57-e3568fa0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"types": "./lib/builttypes/store/src/index.d.ts",
|
|
8
8
|
"exports": {
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
"lodash": "4.17.21",
|
|
38
38
|
"react": "18.3.1",
|
|
39
39
|
"reselect": "4.1.8",
|
|
40
|
-
"typescript": "5.5.
|
|
40
|
+
"typescript": "5.5.4",
|
|
41
41
|
"vite": "5.3.3",
|
|
42
42
|
"vite-tsconfig-paths": "4.3.2",
|
|
43
43
|
"vitest": "2.0.0",
|
|
44
|
-
"@lls/
|
|
45
|
-
"@lls/
|
|
44
|
+
"@lls/utils": "24.1.57-e3568fa0",
|
|
45
|
+
"@lls/vitescripts": "24.1.57-e3568fa0"
|
|
46
46
|
},
|
|
47
47
|
"license": "ISC",
|
|
48
48
|
"dependencies": {
|