@lls/store 24.1.59-49f7c5e0 → 24.1.59-5565fe5b
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/lib/index.js +27 -103
- package/package.json +4 -4
package/lib/index.js
CHANGED
|
@@ -742,12 +742,12 @@ import _2 from "lodash/fp.js";
|
|
|
742
742
|
init_define_import_meta();
|
|
743
743
|
import { createSearchSelector, makeGetAllEntities, makeGetEntityById } from "@lls/utils";
|
|
744
744
|
import _ from "lodash/fp.js";
|
|
745
|
-
var crud = (entityName, { search:
|
|
745
|
+
var crud = (entityName, { search: search3 }) => {
|
|
746
746
|
const getElements = makeGetAllEntities(entityName);
|
|
747
747
|
const makeSearchElements = () => createSearchSelector(
|
|
748
748
|
getElements,
|
|
749
749
|
(_state, params) => params,
|
|
750
|
-
(elements, params) =>
|
|
750
|
+
(elements, params) => search3(params)(elements)
|
|
751
751
|
);
|
|
752
752
|
const methodName = _.capitalize(entityName);
|
|
753
753
|
const getElementById = makeGetEntityById(entityName);
|
|
@@ -766,73 +766,23 @@ var { getSchools, getSchool, searchSchools, makeSearchSchools } = crud("schools"
|
|
|
766
766
|
search
|
|
767
767
|
});
|
|
768
768
|
|
|
769
|
-
// src/selectors/book.ts
|
|
770
|
-
init_define_import_meta();
|
|
771
|
-
import {
|
|
772
|
-
createSearchSelector as createSearchSelector2,
|
|
773
|
-
filterEntitiesArrayFieldByValues,
|
|
774
|
-
filterEntitiesSimpleFieldByValue,
|
|
775
|
-
filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues2,
|
|
776
|
-
makeGetEntityById as makeGetEntityById2
|
|
777
|
-
} from "@lls/utils";
|
|
778
|
-
import _3 from "lodash/fp.js";
|
|
779
|
-
var search2 = ({
|
|
780
|
-
ids,
|
|
781
|
-
levelIds,
|
|
782
|
-
subjectIds,
|
|
783
|
-
years,
|
|
784
|
-
isValid,
|
|
785
|
-
isWorkbook,
|
|
786
|
-
isWorkplan,
|
|
787
|
-
hasNoTeacherBook,
|
|
788
|
-
sortByQuery,
|
|
789
|
-
hasNewDesign,
|
|
790
|
-
slugs,
|
|
791
|
-
uris,
|
|
792
|
-
publishers,
|
|
793
|
-
isRenewed,
|
|
794
|
-
isPrimary
|
|
795
|
-
}) => _3.flow(
|
|
796
|
-
filterEntitiesSimpleFieldByValues2("id", ids),
|
|
797
|
-
filterEntitiesSimpleFieldByValues2("year", years),
|
|
798
|
-
filterEntitiesArrayFieldByValues("levels", levelIds),
|
|
799
|
-
filterEntitiesArrayFieldByValues("subjects", subjectIds),
|
|
800
|
-
filterEntitiesSimpleFieldByValues2("valid", _3.isNil(isValid) ? void 0 : [isValid]),
|
|
801
|
-
filterEntitiesSimpleFieldByValues2("publisher", publishers),
|
|
802
|
-
filterEntitiesSimpleFieldByValues2("hasNewDesign", _3.isNil(hasNewDesign) ? void 0 : [hasNewDesign]),
|
|
803
|
-
filterEntitiesSimpleFieldByValues2("isWorkbook", _3.isNil(isWorkbook) ? void 0 : [isWorkbook]),
|
|
804
|
-
filterEntitiesSimpleFieldByValues2("isWorkplan", _3.isNil(isWorkplan) ? void 0 : [isWorkplan]),
|
|
805
|
-
filterEntitiesSimpleFieldByValues2("hasNoTeacherBook", _3.isNil(hasNoTeacherBook) ? void 0 : [hasNoTeacherBook]),
|
|
806
|
-
filterEntitiesSimpleFieldByValues2("slug", slugs),
|
|
807
|
-
filterEntitiesSimpleFieldByValues2("uri", uris),
|
|
808
|
-
filterEntitiesSimpleFieldByValues2("isRenewed", _3.isNil(isRenewed) ? void 0 : [isRenewed]),
|
|
809
|
-
filterEntitiesSimpleFieldByValue("isPrimary", isPrimary),
|
|
810
|
-
_3.isFunction(sortByQuery) ? sortByQuery : sortByQuery ? _3.sortBy(sortByQuery) : _3.identity
|
|
811
|
-
);
|
|
812
|
-
var { getBooks, getBook, searchBooks, makeSearchBooks } = crud("books", {
|
|
813
|
-
search: search2
|
|
814
|
-
});
|
|
815
|
-
var makeSearchValidBooks = () => createSearchSelector2(makeSearchBooks(), (books) => _3.filter({ valid: true, hasNewDesign: true }, books));
|
|
816
|
-
var searchValidBooks = makeSearchValidBooks();
|
|
817
|
-
var makeGetBook = () => makeGetEntityById2("books");
|
|
818
|
-
|
|
819
769
|
// src/selectors/user.ts
|
|
820
770
|
init_define_import_meta();
|
|
821
771
|
var import_reselect = __toESM(require_lib(), 1);
|
|
822
|
-
import { filterEntitiesArrayFieldByValues
|
|
823
|
-
import
|
|
772
|
+
import { filterEntitiesArrayFieldByValues, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues2 } from "@lls/utils";
|
|
773
|
+
import _4 from "lodash/fp.js";
|
|
824
774
|
|
|
825
775
|
// src/selectors/auth.ts
|
|
826
776
|
init_define_import_meta();
|
|
827
|
-
import
|
|
828
|
-
var getAuth =
|
|
829
|
-
var getIsLogged =
|
|
830
|
-
var getToken =
|
|
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");
|
|
831
781
|
|
|
832
782
|
// src/selectors/user.ts
|
|
833
|
-
var
|
|
783
|
+
var search2 = ({ ids, schoolIds }) => _4.flow(filterEntitiesArrayFieldByValues("schools", schoolIds), filterEntitiesSimpleFieldByValues2("id", ids));
|
|
834
784
|
var { getUsers, getUser, searchUsers, makeSearchUsers } = crud("users", {
|
|
835
|
-
search:
|
|
785
|
+
search: search2
|
|
836
786
|
});
|
|
837
787
|
var getCurrentUser = (0, import_reselect.createSelector)(
|
|
838
788
|
getAuth,
|
|
@@ -840,23 +790,10 @@ var getCurrentUser = (0, import_reselect.createSelector)(
|
|
|
840
790
|
(auth2, users) => users?.find((user2) => user2?.id === auth2?.id)
|
|
841
791
|
);
|
|
842
792
|
|
|
843
|
-
// src/selectors/chapter.ts
|
|
844
|
-
init_define_import_meta();
|
|
845
|
-
import { filterEntitiesFieldExists, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues4 } from "@lls/utils";
|
|
846
|
-
import _6 from "lodash/fp.js";
|
|
847
|
-
var search4 = ({ bookIds, ids, hasTeacherBook }) => _6.flow(
|
|
848
|
-
filterEntitiesSimpleFieldByValues4("book", bookIds),
|
|
849
|
-
filterEntitiesSimpleFieldByValues4("id", ids),
|
|
850
|
-
filterEntitiesFieldExists("teacherBook", hasTeacherBook)
|
|
851
|
-
);
|
|
852
|
-
var { getChapters, getChapter, searchChapters, makeSearchChapters } = crud("chapters", {
|
|
853
|
-
search: search4
|
|
854
|
-
});
|
|
855
|
-
|
|
856
793
|
// src/reducers/entities.ts
|
|
857
794
|
init_define_import_meta();
|
|
858
795
|
import { makeReducer } from "@lls/utils";
|
|
859
|
-
import
|
|
796
|
+
import _5 from "lodash/fp.js";
|
|
860
797
|
|
|
861
798
|
// src/actions/index.ts
|
|
862
799
|
init_define_import_meta();
|
|
@@ -879,23 +816,23 @@ var resetAuth = makeActionCreator(actionTypes.RESET_AUTH);
|
|
|
879
816
|
// src/reducers/entities.ts
|
|
880
817
|
var deleteEntityReducer = (state, payload) => {
|
|
881
818
|
const { path } = payload;
|
|
882
|
-
return
|
|
819
|
+
return _5.omit(path, state);
|
|
883
820
|
};
|
|
884
821
|
var updateEntityReducer = (state, payload) => {
|
|
885
822
|
const { path, entity } = payload;
|
|
886
|
-
const currentEntity =
|
|
887
|
-
return
|
|
823
|
+
const currentEntity = _5.get(path, state);
|
|
824
|
+
return _5.set(path, _5.merge(currentEntity, entity), state);
|
|
888
825
|
};
|
|
889
826
|
var setEntityReducer = (state, payload) => {
|
|
890
827
|
const { path, entity } = payload;
|
|
891
|
-
return
|
|
828
|
+
return _5.set(path, entity, state);
|
|
892
829
|
};
|
|
893
830
|
var shallowAssign = (old, next, transform) => {
|
|
894
831
|
let updated = false;
|
|
895
|
-
const merged =
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
if (
|
|
832
|
+
const merged = _5.flow(
|
|
833
|
+
_5.toPairs,
|
|
834
|
+
_5.reduce((memo, [key, val]) => {
|
|
835
|
+
if (_5.isEmpty(val)) return memo;
|
|
899
836
|
if (!old[key]) {
|
|
900
837
|
updated = true;
|
|
901
838
|
memo[key] = val;
|
|
@@ -908,7 +845,7 @@ var shallowAssign = (old, next, transform) => {
|
|
|
908
845
|
return memo;
|
|
909
846
|
}
|
|
910
847
|
return memo;
|
|
911
|
-
},
|
|
848
|
+
}, _5.clone(old))
|
|
912
849
|
)(next);
|
|
913
850
|
return updated ? merged : old;
|
|
914
851
|
};
|
|
@@ -917,7 +854,7 @@ var setEntitiesReducer = (state, payload) => {
|
|
|
917
854
|
return shallowAssign(
|
|
918
855
|
entityKind,
|
|
919
856
|
nextEntityKind,
|
|
920
|
-
(oldEntity, nextEntity) =>
|
|
857
|
+
(oldEntity, nextEntity) => _5.isEqual(oldEntity, nextEntity) ? oldEntity : _5.assign(oldEntity, nextEntity)
|
|
921
858
|
);
|
|
922
859
|
});
|
|
923
860
|
};
|
|
@@ -935,7 +872,7 @@ var entities_default = entities;
|
|
|
935
872
|
// src/reducers/auth.ts
|
|
936
873
|
init_define_import_meta();
|
|
937
874
|
import { makeReducer as makeReducer2 } from "@lls/utils";
|
|
938
|
-
import
|
|
875
|
+
import _6 from "lodash/fp.js";
|
|
939
876
|
var initialState = {
|
|
940
877
|
id: void 0,
|
|
941
878
|
role: null,
|
|
@@ -948,15 +885,15 @@ var initialState = {
|
|
|
948
885
|
llsUserId: null
|
|
949
886
|
};
|
|
950
887
|
var auth = makeReducer2(initialState, {
|
|
951
|
-
[actionTypes.SET_AUTH]:
|
|
952
|
-
[actionTypes.RESET_AUTH]:
|
|
888
|
+
[actionTypes.SET_AUTH]: _6.assign,
|
|
889
|
+
[actionTypes.RESET_AUTH]: _6.constant(initialState)
|
|
953
890
|
});
|
|
954
891
|
var auth_default = auth;
|
|
955
892
|
|
|
956
893
|
// src/schema/index.ts
|
|
957
894
|
init_define_import_meta();
|
|
958
895
|
var import_normalizr = __toESM(require_normalizr(), 1);
|
|
959
|
-
import
|
|
896
|
+
import _7 from "lodash/fp.js";
|
|
960
897
|
var document = new import_normalizr.schema.Entity("documents", {}, { idAttribute: "resourceId" });
|
|
961
898
|
var subject = new import_normalizr.schema.Entity("subjects");
|
|
962
899
|
var level = new import_normalizr.schema.Entity("levels");
|
|
@@ -971,7 +908,6 @@ var teacher = new import_normalizr.schema.Entity("teachers");
|
|
|
971
908
|
var faq = new import_normalizr.schema.Entity("faq");
|
|
972
909
|
var product = new import_normalizr.schema.Entity("products");
|
|
973
910
|
var communityProjects = new import_normalizr.schema.Entity("communityProjects");
|
|
974
|
-
var builderIo = new import_normalizr.schema.Entity("builderIos");
|
|
975
911
|
var grammarRule = new import_normalizr.schema.Entity("grammarRules", {}, { idAttribute: "objectID" });
|
|
976
912
|
var mainNotification = new import_normalizr.schema.Entity("mainNotifications");
|
|
977
913
|
var explorerResult = new import_normalizr.schema.Entity("explorerResults", {}, { idAttribute: "resourceId" });
|
|
@@ -1134,8 +1070,7 @@ var querySchema = {
|
|
|
1134
1070
|
addLikeFaq: faq,
|
|
1135
1071
|
communityProjects: [communityProjects],
|
|
1136
1072
|
createAnalytics: analytic,
|
|
1137
|
-
faq: [faq]
|
|
1138
|
-
builderIos: [builderIo]
|
|
1073
|
+
faq: [faq]
|
|
1139
1074
|
},
|
|
1140
1075
|
static: {
|
|
1141
1076
|
projetVoltaire: {
|
|
@@ -1143,31 +1078,20 @@ var querySchema = {
|
|
|
1143
1078
|
}
|
|
1144
1079
|
}
|
|
1145
1080
|
};
|
|
1146
|
-
var normalizeData =
|
|
1081
|
+
var normalizeData = _7.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
|
|
1147
1082
|
export {
|
|
1148
1083
|
auth_default as authReducer,
|
|
1149
1084
|
entities_default as entitiesReducer,
|
|
1150
|
-
getBook,
|
|
1151
|
-
getBooks,
|
|
1152
|
-
getChapter,
|
|
1153
|
-
getChapters,
|
|
1154
1085
|
getCurrentUser,
|
|
1155
1086
|
getSchool,
|
|
1156
1087
|
getSchools,
|
|
1157
1088
|
getUser,
|
|
1158
1089
|
getUsers,
|
|
1159
|
-
makeGetBook,
|
|
1160
|
-
makeSearchBooks,
|
|
1161
|
-
makeSearchChapters,
|
|
1162
1090
|
makeSearchSchools,
|
|
1163
1091
|
makeSearchUsers,
|
|
1164
|
-
makeSearchValidBooks,
|
|
1165
1092
|
normalizeData,
|
|
1166
1093
|
querySchema,
|
|
1167
|
-
searchBooks,
|
|
1168
|
-
searchChapters,
|
|
1169
1094
|
searchSchools,
|
|
1170
1095
|
searchUsers,
|
|
1171
|
-
searchValidBooks,
|
|
1172
1096
|
setEntitiesReducer
|
|
1173
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.59-
|
|
5
|
+
"version": "24.1.59-5565fe5b",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"types": "./lib/builttypes/store/src/index.d.ts",
|
|
8
8
|
"exports": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"react": "*"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@biomejs/biome": "1.8.4-nightly.
|
|
31
|
+
"@biomejs/biome": "1.8.4-nightly.a579bf7",
|
|
32
32
|
"@types/lodash": "4.17.6",
|
|
33
33
|
"@types/node": "20.14.10",
|
|
34
34
|
"@types/react": "18.3.3",
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
"vite": "5.3.3",
|
|
42
42
|
"vite-tsconfig-paths": "4.3.2",
|
|
43
43
|
"vitest": "2.0.0",
|
|
44
|
-
"@lls/utils": "24.1.59-
|
|
45
|
-
"@lls/vitescripts": "24.1.59-
|
|
44
|
+
"@lls/utils": "24.1.59-5565fe5b",
|
|
45
|
+
"@lls/vitescripts": "24.1.59-5565fe5b"
|
|
46
46
|
},
|
|
47
47
|
"license": "ISC",
|
|
48
48
|
"dependencies": {
|