@lls/store 24.1.59-2d1a9e44 → 24.1.59-36292a9f
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 +209 -27
- package/package.json +3 -3
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: search6 }) => {
|
|
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) => search6(params)(elements)
|
|
751
751
|
);
|
|
752
752
|
const methodName = _.capitalize(entityName);
|
|
753
753
|
const getElementById = makeGetEntityById(entityName);
|
|
@@ -766,23 +766,73 @@ 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
|
+
|
|
769
819
|
// src/selectors/user.ts
|
|
770
820
|
init_define_import_meta();
|
|
771
821
|
var import_reselect = __toESM(require_lib(), 1);
|
|
772
|
-
import { filterEntitiesArrayFieldByValues, filterEntitiesSimpleFieldByValues as
|
|
773
|
-
import
|
|
822
|
+
import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues2, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues3 } from "@lls/utils";
|
|
823
|
+
import _5 from "lodash/fp.js";
|
|
774
824
|
|
|
775
825
|
// src/selectors/auth.ts
|
|
776
826
|
init_define_import_meta();
|
|
777
|
-
import
|
|
778
|
-
var getAuth =
|
|
779
|
-
var getIsLogged =
|
|
780
|
-
var getToken =
|
|
827
|
+
import _4 from "lodash/fp.js";
|
|
828
|
+
var getAuth = _4.get("auth");
|
|
829
|
+
var getIsLogged = _4.flow(_4.get("auth.id"), _4.negate(_4.isNil));
|
|
830
|
+
var getToken = _4.get("auth.token");
|
|
781
831
|
|
|
782
832
|
// src/selectors/user.ts
|
|
783
|
-
var
|
|
833
|
+
var search3 = ({ ids, schoolIds }) => _5.flow(filterEntitiesArrayFieldByValues2("schools", schoolIds), filterEntitiesSimpleFieldByValues3("id", ids));
|
|
784
834
|
var { getUsers, getUser, searchUsers, makeSearchUsers } = crud("users", {
|
|
785
|
-
search:
|
|
835
|
+
search: search3
|
|
786
836
|
});
|
|
787
837
|
var getCurrentUser = (0, import_reselect.createSelector)(
|
|
788
838
|
getAuth,
|
|
@@ -790,10 +840,118 @@ var getCurrentUser = (0, import_reselect.createSelector)(
|
|
|
790
840
|
(auth2, users) => users?.find((user2) => user2?.id === auth2?.id)
|
|
791
841
|
);
|
|
792
842
|
|
|
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
|
+
// src/selectors/page.ts
|
|
857
|
+
init_define_import_meta();
|
|
858
|
+
import {
|
|
859
|
+
createSearchSelector as createSearchSelector3,
|
|
860
|
+
filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues3,
|
|
861
|
+
filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues5,
|
|
862
|
+
makeGetAllEntities as makeGetAllEntities2,
|
|
863
|
+
makeGetEntityById as makeGetEntityById3
|
|
864
|
+
} from "@lls/utils";
|
|
865
|
+
import _7 from "lodash/fp.js";
|
|
866
|
+
var search5 = ({
|
|
867
|
+
ids,
|
|
868
|
+
chapterIds,
|
|
869
|
+
isValid,
|
|
870
|
+
oldLessonIds,
|
|
871
|
+
premium,
|
|
872
|
+
thematicNames,
|
|
873
|
+
bookIds,
|
|
874
|
+
isOriginal,
|
|
875
|
+
hasNewDesign,
|
|
876
|
+
slugs,
|
|
877
|
+
isLearningAssessment,
|
|
878
|
+
isCreatedFromScratch
|
|
879
|
+
}) => _7.flow(
|
|
880
|
+
filterEntitiesSimpleFieldByValues5("id", ids),
|
|
881
|
+
filterEntitiesSimpleFieldByValues5("chapter", chapterIds),
|
|
882
|
+
filterEntitiesSimpleFieldByValues5("valid", _7.isNil(isValid) ? void 0 : [isValid]),
|
|
883
|
+
filterEntitiesSimpleFieldByValues5("isOriginal", _7.isNil(isOriginal) ? void 0 : [isOriginal]),
|
|
884
|
+
filterEntitiesSimpleFieldByValues5("hasNewDesign", _7.isNil(hasNewDesign) ? void 0 : [hasNewDesign]),
|
|
885
|
+
filterEntitiesSimpleFieldByValues5("slug", slugs),
|
|
886
|
+
filterEntitiesSimpleFieldByValues5("oldLesson", oldLessonIds),
|
|
887
|
+
filterEntitiesSimpleFieldByValues5(
|
|
888
|
+
"isLearningAssessment",
|
|
889
|
+
_7.isNil(isLearningAssessment) ? void 0 : [isLearningAssessment]
|
|
890
|
+
),
|
|
891
|
+
filterEntitiesSimpleFieldByValues5(
|
|
892
|
+
"isCreatedFromScratch",
|
|
893
|
+
_7.isNil(isCreatedFromScratch) ? void 0 : [isCreatedFromScratch]
|
|
894
|
+
),
|
|
895
|
+
filterEntitiesSimpleFieldByValues5("premium", _7.isNil(premium) ? void 0 : [premium]),
|
|
896
|
+
filterEntitiesSimpleFieldByValues5("thematicName", thematicNames),
|
|
897
|
+
filterEntitiesSimpleFieldByValues5("book", bookIds)
|
|
898
|
+
);
|
|
899
|
+
var { getPages, getPage, searchPages, makeSearchPages } = crud("pages", {
|
|
900
|
+
search: search5
|
|
901
|
+
});
|
|
902
|
+
var getDraftPages = makeGetAllEntities2("drafts");
|
|
903
|
+
var makeGetDraftPage = () => makeGetEntityById3("drafts");
|
|
904
|
+
var getDraftPage = makeGetDraftPage();
|
|
905
|
+
var makeSearchDraftPages = () => createSearchSelector3(
|
|
906
|
+
getDraftPages,
|
|
907
|
+
(_state, params) => params,
|
|
908
|
+
(pages, params) => search5(params)(pages)
|
|
909
|
+
);
|
|
910
|
+
var searchDraftPages = makeSearchDraftPages();
|
|
911
|
+
var makeSearchModifiedPages = () => createSearchSelector3(
|
|
912
|
+
getPages,
|
|
913
|
+
(_state, params) => params,
|
|
914
|
+
(pages, {
|
|
915
|
+
chapterIds,
|
|
916
|
+
userIds,
|
|
917
|
+
originalPageIds,
|
|
918
|
+
parentIds,
|
|
919
|
+
bookIds,
|
|
920
|
+
sharedUserIds,
|
|
921
|
+
updatedAfter,
|
|
922
|
+
isLearningAssessment,
|
|
923
|
+
thematicNames,
|
|
924
|
+
isDraft,
|
|
925
|
+
isCreatedFromScratch,
|
|
926
|
+
isParentCreatedFromScratch,
|
|
927
|
+
sharedGroups
|
|
928
|
+
}) => _7.flow(
|
|
929
|
+
filterEntitiesSimpleFieldByValues5("parent", parentIds),
|
|
930
|
+
filterEntitiesSimpleFieldByValues5("chapter", chapterIds),
|
|
931
|
+
filterEntitiesSimpleFieldByValues5("book", bookIds),
|
|
932
|
+
filterEntitiesSimpleFieldByValues5("user", userIds),
|
|
933
|
+
filterEntitiesSimpleFieldByValues5("originalPage", originalPageIds),
|
|
934
|
+
filterEntitiesArrayFieldByValues3("sharedUsers", sharedUserIds),
|
|
935
|
+
filterEntitiesArrayFieldByValues3("sharedGroups", sharedGroups),
|
|
936
|
+
filterEntitiesSimpleFieldByValues5("isOriginal", [false]),
|
|
937
|
+
filterEntitiesSimpleFieldByValues5("thematicName", thematicNames),
|
|
938
|
+
!_7.isNil(isLearningAssessment) ? filterEntitiesSimpleFieldByValues5("isLearningAssessment", [isLearningAssessment]) : _7.identity,
|
|
939
|
+
!_7.isNil(isCreatedFromScratch) ? filterEntitiesSimpleFieldByValues5("isCreatedFromScratch", [isCreatedFromScratch]) : _7.identity,
|
|
940
|
+
!_7.isNil(isDraft) ? filterEntitiesSimpleFieldByValues5("isDraft", [isDraft]) : _7.identity,
|
|
941
|
+
isParentCreatedFromScratch ? _7.filter(
|
|
942
|
+
(entity) => _7.flow(_7.find({ id: entity?.originalPage }), _7.get("isCreatedFromScratch"))(pages)
|
|
943
|
+
) : _7.identity,
|
|
944
|
+
updatedAfter ? _7.filter(
|
|
945
|
+
_7.flow(_7.get("updatedAt"), (date) => new Date(date) - updatedAfter >= 0)
|
|
946
|
+
) : _7.identity
|
|
947
|
+
)(pages)
|
|
948
|
+
);
|
|
949
|
+
var searchModifiedPages = makeSearchModifiedPages();
|
|
950
|
+
|
|
793
951
|
// src/reducers/entities.ts
|
|
794
952
|
init_define_import_meta();
|
|
795
953
|
import { makeReducer } from "@lls/utils";
|
|
796
|
-
import
|
|
954
|
+
import _8 from "lodash/fp.js";
|
|
797
955
|
|
|
798
956
|
// src/actions/index.ts
|
|
799
957
|
init_define_import_meta();
|
|
@@ -816,23 +974,23 @@ var resetAuth = makeActionCreator(actionTypes.RESET_AUTH);
|
|
|
816
974
|
// src/reducers/entities.ts
|
|
817
975
|
var deleteEntityReducer = (state, payload) => {
|
|
818
976
|
const { path } = payload;
|
|
819
|
-
return
|
|
977
|
+
return _8.omit(path, state);
|
|
820
978
|
};
|
|
821
979
|
var updateEntityReducer = (state, payload) => {
|
|
822
980
|
const { path, entity } = payload;
|
|
823
|
-
const currentEntity =
|
|
824
|
-
return
|
|
981
|
+
const currentEntity = _8.get(path, state);
|
|
982
|
+
return _8.set(path, _8.merge(currentEntity, entity), state);
|
|
825
983
|
};
|
|
826
984
|
var setEntityReducer = (state, payload) => {
|
|
827
985
|
const { path, entity } = payload;
|
|
828
|
-
return
|
|
986
|
+
return _8.set(path, entity, state);
|
|
829
987
|
};
|
|
830
988
|
var shallowAssign = (old, next, transform) => {
|
|
831
989
|
let updated = false;
|
|
832
|
-
const merged =
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
if (
|
|
990
|
+
const merged = _8.flow(
|
|
991
|
+
_8.toPairs,
|
|
992
|
+
_8.reduce((memo, [key, val]) => {
|
|
993
|
+
if (_8.isEmpty(val)) return memo;
|
|
836
994
|
if (!old[key]) {
|
|
837
995
|
updated = true;
|
|
838
996
|
memo[key] = val;
|
|
@@ -845,7 +1003,7 @@ var shallowAssign = (old, next, transform) => {
|
|
|
845
1003
|
return memo;
|
|
846
1004
|
}
|
|
847
1005
|
return memo;
|
|
848
|
-
},
|
|
1006
|
+
}, _8.clone(old))
|
|
849
1007
|
)(next);
|
|
850
1008
|
return updated ? merged : old;
|
|
851
1009
|
};
|
|
@@ -854,7 +1012,7 @@ var setEntitiesReducer = (state, payload) => {
|
|
|
854
1012
|
return shallowAssign(
|
|
855
1013
|
entityKind,
|
|
856
1014
|
nextEntityKind,
|
|
857
|
-
(oldEntity, nextEntity) =>
|
|
1015
|
+
(oldEntity, nextEntity) => _8.isEqual(oldEntity, nextEntity) ? oldEntity : _8.assign(oldEntity, nextEntity)
|
|
858
1016
|
);
|
|
859
1017
|
});
|
|
860
1018
|
};
|
|
@@ -872,7 +1030,7 @@ var entities_default = entities;
|
|
|
872
1030
|
// src/reducers/auth.ts
|
|
873
1031
|
init_define_import_meta();
|
|
874
1032
|
import { makeReducer as makeReducer2 } from "@lls/utils";
|
|
875
|
-
import
|
|
1033
|
+
import _9 from "lodash/fp.js";
|
|
876
1034
|
var initialState = {
|
|
877
1035
|
id: void 0,
|
|
878
1036
|
role: null,
|
|
@@ -885,15 +1043,15 @@ var initialState = {
|
|
|
885
1043
|
llsUserId: null
|
|
886
1044
|
};
|
|
887
1045
|
var auth = makeReducer2(initialState, {
|
|
888
|
-
[actionTypes.SET_AUTH]:
|
|
889
|
-
[actionTypes.RESET_AUTH]:
|
|
1046
|
+
[actionTypes.SET_AUTH]: _9.assign,
|
|
1047
|
+
[actionTypes.RESET_AUTH]: _9.constant(initialState)
|
|
890
1048
|
});
|
|
891
1049
|
var auth_default = auth;
|
|
892
1050
|
|
|
893
1051
|
// src/schema/index.ts
|
|
894
1052
|
init_define_import_meta();
|
|
895
1053
|
var import_normalizr = __toESM(require_normalizr(), 1);
|
|
896
|
-
import
|
|
1054
|
+
import _10 from "lodash/fp.js";
|
|
897
1055
|
var document = new import_normalizr.schema.Entity("documents", {}, { idAttribute: "resourceId" });
|
|
898
1056
|
var subject = new import_normalizr.schema.Entity("subjects");
|
|
899
1057
|
var level = new import_normalizr.schema.Entity("levels");
|
|
@@ -908,6 +1066,7 @@ var teacher = new import_normalizr.schema.Entity("teachers");
|
|
|
908
1066
|
var faq = new import_normalizr.schema.Entity("faq");
|
|
909
1067
|
var product = new import_normalizr.schema.Entity("products");
|
|
910
1068
|
var communityProjects = new import_normalizr.schema.Entity("communityProjects");
|
|
1069
|
+
var builderIo = new import_normalizr.schema.Entity("builderIos");
|
|
911
1070
|
var grammarRule = new import_normalizr.schema.Entity("grammarRules", {}, { idAttribute: "objectID" });
|
|
912
1071
|
var mainNotification = new import_normalizr.schema.Entity("mainNotifications");
|
|
913
1072
|
var explorerResult = new import_normalizr.schema.Entity("explorerResults", {}, { idAttribute: "resourceId" });
|
|
@@ -1070,7 +1229,8 @@ var querySchema = {
|
|
|
1070
1229
|
addLikeFaq: faq,
|
|
1071
1230
|
communityProjects: [communityProjects],
|
|
1072
1231
|
createAnalytics: analytic,
|
|
1073
|
-
faq: [faq]
|
|
1232
|
+
faq: [faq],
|
|
1233
|
+
builderIos: [builderIo]
|
|
1074
1234
|
},
|
|
1075
1235
|
static: {
|
|
1076
1236
|
projetVoltaire: {
|
|
@@ -1078,20 +1238,42 @@ var querySchema = {
|
|
|
1078
1238
|
}
|
|
1079
1239
|
}
|
|
1080
1240
|
};
|
|
1081
|
-
var normalizeData =
|
|
1241
|
+
var normalizeData = _10.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
|
|
1082
1242
|
export {
|
|
1083
1243
|
auth_default as authReducer,
|
|
1084
1244
|
entities_default as entitiesReducer,
|
|
1245
|
+
getBook,
|
|
1246
|
+
getBooks,
|
|
1247
|
+
getChapter,
|
|
1248
|
+
getChapters,
|
|
1085
1249
|
getCurrentUser,
|
|
1250
|
+
getDraftPage,
|
|
1251
|
+
getDraftPages,
|
|
1252
|
+
getPage,
|
|
1253
|
+
getPages,
|
|
1086
1254
|
getSchool,
|
|
1087
1255
|
getSchools,
|
|
1088
1256
|
getUser,
|
|
1089
1257
|
getUsers,
|
|
1258
|
+
makeGetBook,
|
|
1259
|
+
makeGetDraftPage,
|
|
1260
|
+
makeSearchBooks,
|
|
1261
|
+
makeSearchChapters,
|
|
1262
|
+
makeSearchDraftPages,
|
|
1263
|
+
makeSearchModifiedPages,
|
|
1264
|
+
makeSearchPages,
|
|
1090
1265
|
makeSearchSchools,
|
|
1091
1266
|
makeSearchUsers,
|
|
1267
|
+
makeSearchValidBooks,
|
|
1092
1268
|
normalizeData,
|
|
1093
1269
|
querySchema,
|
|
1270
|
+
searchBooks,
|
|
1271
|
+
searchChapters,
|
|
1272
|
+
searchDraftPages,
|
|
1273
|
+
searchModifiedPages,
|
|
1274
|
+
searchPages,
|
|
1094
1275
|
searchSchools,
|
|
1095
1276
|
searchUsers,
|
|
1277
|
+
searchValidBooks,
|
|
1096
1278
|
setEntitiesReducer
|
|
1097
1279
|
};
|
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-36292a9f",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"types": "./lib/builttypes/store/src/index.d.ts",
|
|
8
8
|
"exports": {
|
|
@@ -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-36292a9f",
|
|
45
|
+
"@lls/vitescripts": "24.1.59-36292a9f"
|
|
46
46
|
},
|
|
47
47
|
"license": "ISC",
|
|
48
48
|
"dependencies": {
|