@lls/store 24.1.59-8e1a3cff → 24.1.59-a0007626

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.
Files changed (2) hide show
  1. package/lib/index.js +233 -207
  2. package/package.json +11 -11
package/lib/index.js CHANGED
@@ -742,7 +742,8 @@ var getToken = _.get("auth.token");
742
742
 
743
743
  // src/selectors/school.ts
744
744
  init_define_import_meta();
745
- import { makeEntitiesFilter } from "@lls/utils";
745
+ import { filterEntitiesSimpleFieldByValues } from "@lls/utils";
746
+ import _2 from "lodash/fp.js";
746
747
 
747
748
  // src/selectors/crud.ts
748
749
  init_define_import_meta();
@@ -767,15 +768,21 @@ var crud = (entityName, { search: search24 }) => {
767
768
  };
768
769
 
769
770
  // src/selectors/school.ts
770
- var search = ({ ids }) => makeEntitiesFilter({ id: ids });
771
+ var search = ({ ids }) => _2.flow(filterEntitiesSimpleFieldByValues("id", ids));
771
772
  var { getSchools, getSchool, searchSchools, makeSearchSchools } = crud("schools", {
772
773
  search
773
774
  });
774
775
 
775
776
  // src/selectors/book.ts
776
777
  init_define_import_meta();
777
- import { createSearchSelector as createSearchSelector2, makeEntitiesFilter as makeEntitiesFilter2, makeGetEntityById as makeGetEntityById2, pipe } from "@lls/utils";
778
- import _2 from "lodash/fp.js";
778
+ import {
779
+ createSearchSelector as createSearchSelector2,
780
+ filterEntitiesArrayFieldByValues,
781
+ filterEntitiesSimpleFieldByValue,
782
+ filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues2,
783
+ makeGetEntityById as makeGetEntityById2
784
+ } from "@lls/utils";
785
+ import _3 from "lodash/fp.js";
779
786
  var search2 = ({
780
787
  ids,
781
788
  levelIds,
@@ -792,43 +799,36 @@ var search2 = ({
792
799
  publishers,
793
800
  isRenewed,
794
801
  isPrimary
795
- }) => {
796
- return (books) => pipe(
797
- books,
798
- makeEntitiesFilter2({
799
- id: ids,
800
- year: years,
801
- levels: levelIds,
802
- subjects: subjectIds,
803
- valid: isValid,
804
- publishers,
805
- hasNewDesign,
806
- isWorkbook,
807
- isWorkplan,
808
- hasNoTeacherBook,
809
- slug: slugs,
810
- uri: uris,
811
- isRenewed,
812
- isPrimary
813
- }),
814
- _2.isFunction(sortByQuery) ? sortByQuery : sortByQuery ? _2.sortBy(sortByQuery) : _2.identity
815
- );
816
- };
802
+ }) => _3.flow(
803
+ filterEntitiesSimpleFieldByValues2("id", ids),
804
+ filterEntitiesSimpleFieldByValues2("year", years),
805
+ filterEntitiesArrayFieldByValues("levels", levelIds),
806
+ filterEntitiesArrayFieldByValues("subjects", subjectIds),
807
+ filterEntitiesSimpleFieldByValues2("valid", _3.isNil(isValid) ? void 0 : [isValid]),
808
+ filterEntitiesSimpleFieldByValues2("publisher", publishers),
809
+ filterEntitiesSimpleFieldByValues2("hasNewDesign", _3.isNil(hasNewDesign) ? void 0 : [hasNewDesign]),
810
+ filterEntitiesSimpleFieldByValues2("isWorkbook", _3.isNil(isWorkbook) ? void 0 : [isWorkbook]),
811
+ filterEntitiesSimpleFieldByValues2("isWorkplan", _3.isNil(isWorkplan) ? void 0 : [isWorkplan]),
812
+ filterEntitiesSimpleFieldByValues2("hasNoTeacherBook", _3.isNil(hasNoTeacherBook) ? void 0 : [hasNoTeacherBook]),
813
+ filterEntitiesSimpleFieldByValues2("slug", slugs),
814
+ filterEntitiesSimpleFieldByValues2("uri", uris),
815
+ filterEntitiesSimpleFieldByValues2("isRenewed", _3.isNil(isRenewed) ? void 0 : [isRenewed]),
816
+ filterEntitiesSimpleFieldByValue("isPrimary", isPrimary),
817
+ _3.isFunction(sortByQuery) ? sortByQuery : sortByQuery ? _3.sortBy(sortByQuery) : _3.identity
818
+ );
817
819
  var { getBooks, getBook, searchBooks, makeSearchBooks } = crud("books", {
818
820
  search: search2
819
821
  });
820
- var makeSearchValidBooks = () => createSearchSelector2(makeSearchBooks(), (books) => _2.filter({ valid: true, hasNewDesign: true }, books));
822
+ var makeSearchValidBooks = () => createSearchSelector2(makeSearchBooks(), (books) => _3.filter({ valid: true, hasNewDesign: true }, books));
821
823
  var searchValidBooks = makeSearchValidBooks();
822
824
  var makeGetBook = () => makeGetEntityById2("books");
823
825
 
824
826
  // src/selectors/user.ts
825
827
  init_define_import_meta();
826
828
  var import_reselect = __toESM(require_lib(), 1);
827
- import { makeEntitiesFilter as makeEntitiesFilter3 } from "@lls/utils";
828
- var search3 = ({ ids, schoolIds }) => makeEntitiesFilter3({
829
- schools: schoolIds,
830
- id: ids
831
- });
829
+ import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues2, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues3 } from "@lls/utils";
830
+ import _4 from "lodash/fp.js";
831
+ var search3 = ({ ids, schoolIds }) => _4.flow(filterEntitiesArrayFieldByValues2("schools", schoolIds), filterEntitiesSimpleFieldByValues3("id", ids));
832
832
  var { getUsers, getUser, searchUsers, makeSearchUsers } = crud("users", {
833
833
  search: search3
834
834
  });
@@ -840,14 +840,12 @@ var getCurrentUser = (0, import_reselect.createSelector)(
840
840
 
841
841
  // src/selectors/chapter.ts
842
842
  init_define_import_meta();
843
- import { makeEntitiesFilter as makeEntitiesFilter4 } from "@lls/utils";
844
- import _3 from "lodash/fp.js";
845
- var search4 = ({ bookIds, ids, hasTeacherBook }) => makeEntitiesFilter4(
846
- {
847
- book: bookIds,
848
- id: ids
849
- },
850
- !_3.isNil(hasTeacherBook) && ((chapter2) => !!chapter2?.teacherBook === hasTeacherBook)
843
+ import { filterEntitiesFieldExists, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues4 } from "@lls/utils";
844
+ import _5 from "lodash/fp.js";
845
+ var search4 = ({ bookIds, ids, hasTeacherBook }) => _5.flow(
846
+ filterEntitiesSimpleFieldByValues4("book", bookIds),
847
+ filterEntitiesSimpleFieldByValues4("id", ids),
848
+ filterEntitiesFieldExists("teacherBook", hasTeacherBook)
851
849
  );
852
850
  var { getChapters, getChapter, searchChapters, makeSearchChapters } = crud("chapters", {
853
851
  search: search4
@@ -855,8 +853,14 @@ var { getChapters, getChapter, searchChapters, makeSearchChapters } = crud("chap
855
853
 
856
854
  // src/selectors/page.ts
857
855
  init_define_import_meta();
858
- import { createSearchSelector as createSearchSelector3, makeEntitiesFilter as makeEntitiesFilter5, makeGetAllEntities as makeGetAllEntities2, makeGetEntityById as makeGetEntityById3 } from "@lls/utils";
859
- import _4 from "lodash/fp.js";
856
+ import {
857
+ createSearchSelector as createSearchSelector3,
858
+ filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues3,
859
+ filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues5,
860
+ makeGetAllEntities as makeGetAllEntities2,
861
+ makeGetEntityById as makeGetEntityById3
862
+ } from "@lls/utils";
863
+ import _6 from "lodash/fp.js";
860
864
  var search5 = ({
861
865
  ids,
862
866
  chapterIds,
@@ -869,45 +873,27 @@ var search5 = ({
869
873
  hasNewDesign,
870
874
  slugs,
871
875
  isLearningAssessment,
872
- isCreatedFromScratch,
873
- userIds,
874
- parentIds,
875
- originalPageIds,
876
- sharedUserIds,
877
- sharedGroups,
878
- isDraft,
879
- isParentCreatedFromScratch,
880
- updatedAfter
881
- }) => {
882
- let pageById = false;
883
- return makeEntitiesFilter5(
884
- {
885
- id: ids,
886
- chapter: chapterIds,
887
- valid: isValid,
888
- isOriginal,
889
- hasNewDesign,
890
- slug: slugs,
891
- oldLesson: oldLessonIds,
892
- isLearningAssessment,
893
- isCreatedFromScratch,
894
- premium,
895
- thematicName: thematicNames,
896
- book: bookIds,
897
- parent: parentIds,
898
- user: userIds,
899
- originalPage: originalPageIds,
900
- sharedUsers: sharedUserIds,
901
- sharedGroups,
902
- isDraft
903
- },
904
- isParentCreatedFromScratch && ((page2, pages) => {
905
- pageById = pageById || _4.keyBy("id", pages);
906
- return !!_4.get([page2?.originalPage, "isCreatedFromScratch"], pageById);
907
- }),
908
- updatedAfter && _4.flow(_4.get("updatedAt"), (date) => new Date(date) - updatedAfter >= 0)
909
- );
910
- };
876
+ isCreatedFromScratch
877
+ }) => _6.flow(
878
+ filterEntitiesSimpleFieldByValues5("id", ids),
879
+ filterEntitiesSimpleFieldByValues5("chapter", chapterIds),
880
+ filterEntitiesSimpleFieldByValues5("valid", _6.isNil(isValid) ? void 0 : [isValid]),
881
+ filterEntitiesSimpleFieldByValues5("isOriginal", _6.isNil(isOriginal) ? void 0 : [isOriginal]),
882
+ filterEntitiesSimpleFieldByValues5("hasNewDesign", _6.isNil(hasNewDesign) ? void 0 : [hasNewDesign]),
883
+ filterEntitiesSimpleFieldByValues5("slug", slugs),
884
+ filterEntitiesSimpleFieldByValues5("oldLesson", oldLessonIds),
885
+ filterEntitiesSimpleFieldByValues5(
886
+ "isLearningAssessment",
887
+ _6.isNil(isLearningAssessment) ? void 0 : [isLearningAssessment]
888
+ ),
889
+ filterEntitiesSimpleFieldByValues5(
890
+ "isCreatedFromScratch",
891
+ _6.isNil(isCreatedFromScratch) ? void 0 : [isCreatedFromScratch]
892
+ ),
893
+ filterEntitiesSimpleFieldByValues5("premium", _6.isNil(premium) ? void 0 : [premium]),
894
+ filterEntitiesSimpleFieldByValues5("thematicName", thematicNames),
895
+ filterEntitiesSimpleFieldByValues5("book", bookIds)
896
+ );
911
897
  var { getPages, getPage, searchPages, makeSearchPages, filterPages } = crud("pages", {
912
898
  search: search5
913
899
  });
@@ -923,30 +909,64 @@ var searchDraftPages = makeSearchDraftPages();
923
909
  var makeSearchModifiedPages = () => createSearchSelector3(
924
910
  getPages,
925
911
  (_state, params) => params,
926
- (pages, params) => search5({ ...params, isOriginal: false })(pages)
912
+ (pages, {
913
+ chapterIds,
914
+ userIds,
915
+ originalPageIds,
916
+ parentIds,
917
+ bookIds,
918
+ sharedUserIds,
919
+ updatedAfter,
920
+ isLearningAssessment,
921
+ thematicNames,
922
+ isDraft,
923
+ isCreatedFromScratch,
924
+ isParentCreatedFromScratch,
925
+ sharedGroups
926
+ }) => _6.flow(
927
+ filterEntitiesSimpleFieldByValues5("parent", parentIds),
928
+ filterEntitiesSimpleFieldByValues5("chapter", chapterIds),
929
+ filterEntitiesSimpleFieldByValues5("book", bookIds),
930
+ filterEntitiesSimpleFieldByValues5("user", userIds),
931
+ filterEntitiesSimpleFieldByValues5("originalPage", originalPageIds),
932
+ filterEntitiesArrayFieldByValues3("sharedUsers", sharedUserIds),
933
+ filterEntitiesArrayFieldByValues3("sharedGroups", sharedGroups),
934
+ filterEntitiesSimpleFieldByValues5("isOriginal", [false]),
935
+ filterEntitiesSimpleFieldByValues5("thematicName", thematicNames),
936
+ !_6.isNil(isLearningAssessment) ? filterEntitiesSimpleFieldByValues5("isLearningAssessment", [isLearningAssessment]) : _6.identity,
937
+ !_6.isNil(isCreatedFromScratch) ? filterEntitiesSimpleFieldByValues5("isCreatedFromScratch", [isCreatedFromScratch]) : _6.identity,
938
+ !_6.isNil(isDraft) ? filterEntitiesSimpleFieldByValues5("isDraft", [isDraft]) : _6.identity,
939
+ isParentCreatedFromScratch ? _6.filter(
940
+ (entity) => _6.flow(_6.find({ id: entity?.originalPage }), _6.get("isCreatedFromScratch"))(pages)
941
+ ) : _6.identity,
942
+ updatedAfter ? _6.filter(
943
+ _6.flow(_6.get("updatedAt"), (date) => new Date(date) - updatedAfter >= 0)
944
+ ) : _6.identity
945
+ )(pages)
927
946
  );
928
947
  var searchModifiedPages = makeSearchModifiedPages();
929
948
 
930
949
  // src/selectors/collection.ts
931
950
  init_define_import_meta();
932
- import _5 from "lodash/fp.js";
933
- var search6 = (_params) => _5.identity;
951
+ import _7 from "lodash/fp.js";
952
+ var search6 = (_params) => _7.identity;
934
953
  var { getCollections, getCollection, searchCollections, makeSearchCollections } = crud("collections", {
935
954
  search: search6
936
955
  });
937
956
 
938
957
  // src/selectors/communityProject.ts
939
958
  init_define_import_meta();
940
- import { makeEntitiesFilter as makeEntitiesFilter6 } from "@lls/utils";
959
+ import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues4, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues6 } from "@lls/utils";
960
+ import _8 from "lodash/fp.js";
941
961
  var search7 = ({
942
962
  slugs,
943
963
  isFeatured,
944
964
  projectTypes
945
- }) => makeEntitiesFilter6({
946
- slug: slugs,
947
- isFeatured,
948
- projectTypes
949
- });
965
+ }) => _8.flow(
966
+ filterEntitiesSimpleFieldByValues6("slug", slugs),
967
+ filterEntitiesSimpleFieldByValues6("isFeatured", _8.isNil(isFeatured) ? void 0 : [isFeatured]),
968
+ filterEntitiesArrayFieldByValues4("projectTypes", projectTypes)
969
+ );
950
970
  var { getCommunityProjects, getCommunityProject, searchCommunityProjects, makeSearchCommunityProjects } = crud(
951
971
  "communityProjects",
952
972
  {
@@ -956,35 +976,45 @@ var { getCommunityProjects, getCommunityProject, searchCommunityProjects, makeSe
956
976
 
957
977
  // src/selectors/contact.ts
958
978
  init_define_import_meta();
959
- import _6 from "lodash/fp.js";
960
- var search8 = (_params) => _6.identity;
979
+ import _9 from "lodash/fp.js";
980
+ var search8 = (_params) => _9.identity;
961
981
  var { getContacts, getContact, searchContacts, makeSearchContacts } = crud("contacts", {
962
982
  search: search8
963
983
  });
964
984
 
965
985
  // src/selectors/copyNotification.ts
966
986
  init_define_import_meta();
967
- import { createSearchSelector as createSearchSelector4, makeEntitiesFilter as makeEntitiesFilter7, makeGetAllEntities as makeGetAllEntities3 } from "@lls/utils";
987
+ import { createSearchSelector as createSearchSelector4, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues7, makeGetAllEntities as makeGetAllEntities3 } from "@lls/utils";
988
+ import _10 from "lodash/fp.js";
968
989
  var getCopyNotifications = makeGetAllEntities3("copyNotifications");
969
990
  var makeSearchCopyNotifications = () => createSearchSelector4(
970
- [getCurrentUser, getCopyNotifications, (_17, params) => params],
971
- (currentUser, copyNotifications, { pageIds, read }) => {
972
- const ids = currentUser?.copyNotifications;
973
- return makeEntitiesFilter7({ id: ids, read, page: pageIds })(copyNotifications);
974
- }
991
+ [getCurrentUser, getCopyNotifications, (_26, params) => params],
992
+ (currentUser, copyNotifications, { pageIds, read }) => _10.flow(
993
+ _10.get("copyNotifications"),
994
+ (ids) => _10.flow(
995
+ filterEntitiesSimpleFieldByValues7("id", ids),
996
+ filterEntitiesSimpleFieldByValues7("page", pageIds),
997
+ filterEntitiesSimpleFieldByValues7("read", _10.isNil(read) ? void 0 : [read])
998
+ )(copyNotifications)
999
+ )(currentUser)
975
1000
  );
976
1001
  var searchCopyNotifications = makeSearchCopyNotifications();
977
1002
 
978
1003
  // src/selectors/drawerNotification.ts
979
1004
  init_define_import_meta();
980
- import { createSearchSelector as createSearchSelector5, makeEntitiesFilter as makeEntitiesFilter8, makeGetAllEntities as makeGetAllEntities4 } from "@lls/utils";
1005
+ import { createSearchSelector as createSearchSelector5, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues8, makeGetAllEntities as makeGetAllEntities4 } from "@lls/utils";
1006
+ import _11 from "lodash/fp.js";
981
1007
  var getDrawerNotifications = makeGetAllEntities4("drawerNotifications");
982
1008
  var makeSearchDrawerNotifications = () => createSearchSelector5(
983
- [getCurrentUser, getDrawerNotifications, (_17, params) => params],
984
- (currentUser, drawerNotifications, { read, pageIds }) => {
985
- const ids = currentUser?.drawerNotifications;
986
- return makeEntitiesFilter8({ id: ids, read, page: pageIds })(drawerNotifications);
987
- }
1009
+ [getCurrentUser, getDrawerNotifications, (_26, params) => params],
1010
+ (currentUser, drawerNotifications, { read, pageIds }) => _11.flow(
1011
+ _11.get("drawerNotifications"),
1012
+ (ids) => _11.flow(
1013
+ filterEntitiesSimpleFieldByValues8("id", ids),
1014
+ filterEntitiesSimpleFieldByValues8("read", _11.isNil(read) ? void 0 : [read]),
1015
+ filterEntitiesSimpleFieldByValues8("page", pageIds)
1016
+ )(drawerNotifications)
1017
+ )(currentUser)
988
1018
  );
989
1019
  var searchDrawerNotifications = makeSearchDrawerNotifications();
990
1020
 
@@ -995,8 +1025,8 @@ var getFaqs = makeGetAllEntities5("faq");
995
1025
 
996
1026
  // src/selectors/garDivision.ts
997
1027
  init_define_import_meta();
998
- import _7 from "lodash/fp.js";
999
- var search9 = (_params) => _7.identity;
1028
+ import _12 from "lodash/fp.js";
1029
+ var search9 = (_params) => _12.identity;
1000
1030
  var { getGarDivisions, getGarDivision, searchGarDivisions, makeSearchGarDivisions } = crud("garDivisions", {
1001
1031
  search: search9
1002
1032
  });
@@ -1004,9 +1034,9 @@ var { getGarDivisions, getGarDivision, searchGarDivisions, makeSearchGarDivision
1004
1034
  // src/selectors/group.ts
1005
1035
  init_define_import_meta();
1006
1036
  var import_reselect2 = __toESM(require_lib(), 1);
1007
- import { makeEntitiesFilter as makeEntitiesFilter9 } from "@lls/utils";
1008
- import _8 from "lodash/fp.js";
1009
- var search10 = ({ ownerIds }) => _8.flow(makeEntitiesFilter9({ owner: ownerIds }), _8.orderBy("createdAt", ["desc"]));
1037
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues9 } from "@lls/utils";
1038
+ import _13 from "lodash/fp.js";
1039
+ var search10 = ({ ownerIds }) => _13.flow(filterEntitiesSimpleFieldByValues9("owner", ownerIds), _13.orderBy("createdAt", ["desc"]));
1010
1040
  var { getGroups, getGroup, searchGroups, makeSearchGroups } = crud("groups", {
1011
1041
  search: search10
1012
1042
  });
@@ -1018,8 +1048,8 @@ var getUserGroups = (0, import_reselect2.createSelector)(
1018
1048
  // src/selectors/level.ts
1019
1049
  init_define_import_meta();
1020
1050
  var import_reselect3 = __toESM(require_lib(), 1);
1021
- import { makeEntitiesFilter as makeEntitiesFilter10 } from "@lls/utils";
1022
- import _9 from "lodash/fp.js";
1051
+ import { filterEntitiesSimpleFieldByValue as filterEntitiesSimpleFieldByValue2, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues10 } from "@lls/utils";
1052
+ import _14 from "lodash/fp.js";
1023
1053
  var search11 = ({
1024
1054
  ids,
1025
1055
  slugs,
@@ -1029,39 +1059,37 @@ var search11 = ({
1029
1059
  isProHighSchool,
1030
1060
  isGenHighSchool,
1031
1061
  isElementarySchool
1032
- }) => _9.flow(
1033
- makeEntitiesFilter10({
1034
- id: ids,
1035
- slug: slugs,
1036
- isPreSchool,
1037
- isMiddleSchool,
1038
- isHighSchool,
1039
- isProHighSchool,
1040
- isGenHighSchool,
1041
- isElementarySchool
1042
- }),
1043
- _9.orderBy("order", "desc")
1062
+ }) => _14.flow(
1063
+ filterEntitiesSimpleFieldByValues10("id", ids),
1064
+ filterEntitiesSimpleFieldByValues10("slug", slugs),
1065
+ filterEntitiesSimpleFieldByValue2("isPreSchool", isPreSchool),
1066
+ filterEntitiesSimpleFieldByValue2("isMiddleSchool", isMiddleSchool),
1067
+ filterEntitiesSimpleFieldByValue2("isHighSchool", isHighSchool),
1068
+ filterEntitiesSimpleFieldByValue2("isProHighSchool", isProHighSchool),
1069
+ filterEntitiesSimpleFieldByValue2("isGenHighSchool", isGenHighSchool),
1070
+ filterEntitiesSimpleFieldByValue2("isElementarySchool", isElementarySchool),
1071
+ _14.orderBy("order", "desc")
1044
1072
  );
1045
1073
  var crudLevels = crud("levels", { search: search11 });
1046
1074
  var { getLevel, searchLevels, makeSearchLevels } = crudLevels;
1047
- var getLevels = (0, import_reselect3.createSelector)(crudLevels.getLevels, _9.orderBy("order", "desc"));
1075
+ var getLevels = (0, import_reselect3.createSelector)(crudLevels.getLevels, _14.orderBy("order", "desc"));
1048
1076
 
1049
1077
  // src/selectors/mainNotification.ts
1050
1078
  init_define_import_meta();
1051
1079
  var import_reselect4 = __toESM(require_lib(), 1);
1052
- import { makeEntitiesFilter as makeEntitiesFilter11, makeGetAllEntities as makeGetAllEntities6 } from "@lls/utils";
1053
- import _10 from "lodash/fp.js";
1080
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues11, makeGetAllEntities as makeGetAllEntities6 } from "@lls/utils";
1081
+ import _15 from "lodash/fp.js";
1054
1082
  var getAllMainNotifications = makeGetAllEntities6("mainNotifications");
1055
- var search12 = ({ ids }) => makeEntitiesFilter11({ id: ids });
1083
+ var search12 = ({ ids }) => _15.flow(filterEntitiesSimpleFieldByValues11("id", ids));
1056
1084
  var getMainNotifications = (0, import_reselect4.createSelector)(
1057
- [_10.flow(getCurrentUser, _10.get("mainNotifications")), getAllMainNotifications],
1085
+ [_15.flow(getCurrentUser, _15.get("mainNotifications")), getAllMainNotifications],
1058
1086
  (userNotifications, notifications) => search12({ ids: userNotifications })(notifications)
1059
1087
  );
1060
1088
 
1061
1089
  // src/selectors/news.ts
1062
1090
  init_define_import_meta();
1063
- import { makeEntitiesFilter as makeEntitiesFilter12 } from "@lls/utils";
1064
- var search13 = ({ ids }) => makeEntitiesFilter12({ id: ids });
1091
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues12 } from "@lls/utils";
1092
+ var search13 = ({ ids }) => filterEntitiesSimpleFieldByValues12("id", ids);
1065
1093
  var {
1066
1094
  getNews: getAllNews,
1067
1095
  getNew: getNews,
@@ -1078,8 +1106,8 @@ var getPanorama = makeGetEntityById4("panoramas");
1078
1106
 
1079
1107
  // src/selectors/premiumResource.ts
1080
1108
  init_define_import_meta();
1081
- import { makeEntitiesFilter as makeEntitiesFilter13 } from "@lls/utils";
1082
- var search14 = ({ bookIds }) => makeEntitiesFilter13({ book: bookIds });
1109
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues13 } from "@lls/utils";
1110
+ var search14 = ({ bookIds }) => filterEntitiesSimpleFieldByValues13("book", bookIds);
1083
1111
  var { getPremiumResources, getPremiumResource, searchPremiumResources, makeSearchPremiumResources } = crud(
1084
1112
  "premiumResources",
1085
1113
  {
@@ -1089,16 +1117,22 @@ var { getPremiumResources, getPremiumResource, searchPremiumResources, makeSearc
1089
1117
 
1090
1118
  // src/selectors/lexicalFlower.ts
1091
1119
  init_define_import_meta();
1092
- import { makeEntitiesFilter as makeEntitiesFilter14 } from "@lls/utils";
1093
- var search15 = ({ ids }) => makeEntitiesFilter14({ id: ids });
1120
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues14 } from "@lls/utils";
1121
+ import _16 from "lodash/fp.js";
1122
+ var search15 = ({ ids }) => _16.flow(filterEntitiesSimpleFieldByValues14("id", ids));
1094
1123
  var { getLexicalFlowers, searchLexicalFlowers } = crud("lexicalFlowers", {
1095
1124
  search: search15
1096
1125
  });
1097
1126
 
1098
1127
  // src/selectors/product.ts
1099
1128
  init_define_import_meta();
1100
- import _11 from "lodash/fp.js";
1101
- import { createSearchSelector as createSearchSelector6, makeEntitiesFilter as makeEntitiesFilter15, makeGetAllEntities as makeGetAllEntities7 } from "@lls/utils";
1129
+ import _17 from "lodash/fp.js";
1130
+ import {
1131
+ createSearchSelector as createSearchSelector6,
1132
+ filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues5,
1133
+ filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues15,
1134
+ makeGetAllEntities as makeGetAllEntities7
1135
+ } from "@lls/utils";
1102
1136
  var getProducts = makeGetAllEntities7("products");
1103
1137
  var search16 = ({
1104
1138
  ids,
@@ -1109,21 +1143,14 @@ var search16 = ({
1109
1143
  subjectIds,
1110
1144
  productTypes
1111
1145
  }) => {
1112
- let bookIds;
1113
- const filter = makeEntitiesFilter15(
1114
- {
1115
- id: ids,
1116
- ean: eans,
1117
- isAdoptant,
1118
- isSupportPlus,
1119
- productType: productTypes
1120
- },
1121
- levelIds || subjectIds ? (product2) => !!product2?.books?.some((bookId) => bookIds.has(bookId)) : false
1146
+ return _17.flow(
1147
+ (products, books) => levelIds || subjectIds ? filterEntitiesArrayFieldByValues5("books", _17.map("id", books))(products) : products,
1148
+ filterEntitiesSimpleFieldByValues15("id", ids),
1149
+ filterEntitiesSimpleFieldByValues15("ean", eans),
1150
+ filterEntitiesSimpleFieldByValues15("isAdoptant", _17.isBoolean(isAdoptant) ? [isAdoptant] : void 0),
1151
+ filterEntitiesSimpleFieldByValues15("isSupportPlus", _17.isBoolean(isSupportPlus) ? [isSupportPlus] : void 0),
1152
+ filterEntitiesSimpleFieldByValues15("productType", productTypes)
1122
1153
  );
1123
- return (products, books) => {
1124
- bookIds = new Set(_11.map("id", books));
1125
- return filter(products);
1126
- };
1127
1154
  };
1128
1155
  var searchBooks2 = makeSearchBooks();
1129
1156
  var searchProducts = createSearchSelector6(
@@ -1135,26 +1162,25 @@ var searchProducts = createSearchSelector6(
1135
1162
 
1136
1163
  // src/selectors/resource.ts
1137
1164
  init_define_import_meta();
1138
- import { makeEntitiesFilter as makeEntitiesFilter16 } from "@lls/utils";
1139
- var search17 = ({ chapterIds }) => makeEntitiesFilter16({
1140
- chapter: chapterIds
1141
- });
1165
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues16 } from "@lls/utils";
1166
+ import _18 from "lodash/fp.js";
1167
+ var search17 = ({ chapterIds }) => _18.flow(filterEntitiesSimpleFieldByValues16("chapter", chapterIds));
1142
1168
  var { getResources, getResource, searchResources, makeSearchResources } = crud("resources", {
1143
1169
  search: search17
1144
1170
  });
1145
1171
 
1146
1172
  // src/selectors/schoolType.ts
1147
1173
  init_define_import_meta();
1148
- import { makeEntitiesFilter as makeEntitiesFilter17 } from "@lls/utils";
1149
- var search18 = ({ slugs }) => makeEntitiesFilter17({ slug: slugs });
1174
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues17 } from "@lls/utils";
1175
+ var search18 = ({ slugs }) => filterEntitiesSimpleFieldByValues17("slug", slugs);
1150
1176
  var { getSchoolTypes, getSchoolType, searchSchoolTypes, makeSearchSchoolTypes } = crud("schoolTypes", {
1151
1177
  search: search18
1152
1178
  });
1153
1179
 
1154
1180
  // src/selectors/sharedPage.ts
1155
1181
  init_define_import_meta();
1156
- import { createSearchSelector as createSearchSelector7, makeEntitiesFilter as makeEntitiesFilter18 } from "@lls/utils";
1157
- import _12 from "lodash/fp.js";
1182
+ import { createSearchSelector as createSearchSelector7, filterEntitiesSimpleFieldByValue as filterEntitiesSimpleFieldByValue3, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues18 } from "@lls/utils";
1183
+ import _19 from "lodash/fp.js";
1158
1184
  var search19 = ({
1159
1185
  parentIds,
1160
1186
  userIds,
@@ -1162,39 +1188,45 @@ var search19 = ({
1162
1188
  isCreatedFromScratch,
1163
1189
  isLearningAssessment,
1164
1190
  ids
1165
- }) => makeEntitiesFilter18({
1166
- id: ids,
1167
- parent: parentIds,
1168
- user: userIds,
1169
- book: bookIds,
1170
- isLearningAssessment,
1171
- isCreatedFromScratch
1172
- });
1191
+ }) => _19.flow(
1192
+ filterEntitiesSimpleFieldByValues18("id", ids),
1193
+ filterEntitiesSimpleFieldByValues18("parent", parentIds),
1194
+ filterEntitiesSimpleFieldByValues18("user", userIds),
1195
+ filterEntitiesSimpleFieldByValues18("book", bookIds),
1196
+ filterEntitiesSimpleFieldByValue3("isLearningAssessment", isLearningAssessment),
1197
+ filterEntitiesSimpleFieldByValue3("isCreatedFromScratch", isCreatedFromScratch)
1198
+ );
1173
1199
  var { getSharedPages, getSharedPage, searchSharedPages, makeSearchSharedPages } = crud("sharedPages", {
1174
1200
  search: search19
1175
1201
  });
1176
1202
  var searchCurrentUserSharedPages = createSearchSelector7(
1177
1203
  getCurrentUser,
1178
1204
  getSharedPages,
1179
- (_17, params) => params,
1205
+ (_26, params) => params,
1180
1206
  (user2, sharedPages, params) => {
1181
1207
  const sharedUserPageIds = user2?.sharedPages ?? [];
1182
- return search19({ ...params, ids: _12.intersection(sharedUserPageIds, params.ids || sharedUserPageIds) })(sharedPages);
1208
+ return search19({ ...params, ids: _19.intersection(sharedUserPageIds, params.ids || sharedUserPageIds) })(sharedPages);
1183
1209
  }
1184
1210
  );
1185
1211
 
1186
1212
  // src/selectors/student.ts
1187
1213
  init_define_import_meta();
1188
- import { makeEntitiesFilter as makeEntitiesFilter19 } from "@lls/utils";
1189
- var search20 = ({ ids }) => makeEntitiesFilter19({ id: ids });
1214
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues19 } from "@lls/utils";
1215
+ var search20 = ({ ids }) => filterEntitiesSimpleFieldByValues19("id", ids);
1190
1216
  var { getStudents, getStudent, searchStudents, makeSearchStudents } = crud("students", {
1191
1217
  search: search20
1192
1218
  });
1193
1219
 
1194
1220
  // src/selectors/subject.ts
1195
1221
  init_define_import_meta();
1196
- import { limitToTeacherSubjects, makeEntitiesFilter as makeEntitiesFilter20, pipe as pipe2 } from "@lls/utils";
1197
- import _13 from "lodash/fp.js";
1222
+ import {
1223
+ filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues6,
1224
+ filterEntitiesFieldExists as filterEntitiesFieldExists2,
1225
+ filterEntitiesSimpleFieldByValue as filterEntitiesSimpleFieldByValue4,
1226
+ filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues20,
1227
+ limitToTeacherSubjects
1228
+ } from "@lls/utils";
1229
+ import _20 from "lodash/fp.js";
1198
1230
  var search21 = ({
1199
1231
  ids,
1200
1232
  slugs,
@@ -1203,19 +1235,14 @@ var search21 = ({
1203
1235
  schoolTypes,
1204
1236
  hasBooks,
1205
1237
  names
1206
- }) => (subjects) => pipe2(
1207
- subjects,
1208
- makeEntitiesFilter20(
1209
- {
1210
- id: ids,
1211
- slug: slugs,
1212
- name: names,
1213
- hasBooks,
1214
- schoolTypes
1215
- },
1216
- !_13.isNil(hasNewsletterUrl) && ((subject2) => Boolean(subject2?.newsletterUrl) === hasNewsletterUrl)
1217
- ),
1218
- (subjects2) => _13.isNil(isTeacherSubject) ? subjects2 : limitToTeacherSubjects(subjects2)
1238
+ }) => _20.flow(
1239
+ filterEntitiesSimpleFieldByValues20("id", ids),
1240
+ filterEntitiesSimpleFieldByValues20("slug", slugs),
1241
+ filterEntitiesSimpleFieldByValues20("name", names),
1242
+ filterEntitiesSimpleFieldByValue4("hasBooks", hasBooks),
1243
+ filterEntitiesArrayFieldByValues6("schoolTypes", schoolTypes),
1244
+ (subjects) => _20.isNil(isTeacherSubject) ? subjects : limitToTeacherSubjects(subjects),
1245
+ filterEntitiesFieldExists2("newsletterUrl", hasNewsletterUrl)
1219
1246
  );
1220
1247
  var { getSubjects, getSubject, searchSubjects, makeSearchSubjects } = crud("subjects", {
1221
1248
  search: search21
@@ -1223,23 +1250,22 @@ var { getSubjects, getSubject, searchSubjects, makeSearchSubjects } = crud("subj
1223
1250
 
1224
1251
  // src/selectors/teacher.ts
1225
1252
  init_define_import_meta();
1226
- import { makeEntitiesFilter as makeEntitiesFilter21 } from "@lls/utils";
1227
- var search22 = ({ ids, schoolIds }) => makeEntitiesFilter21({
1228
- id: ids,
1229
- schools: schoolIds
1230
- });
1253
+ import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues7, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues21 } from "@lls/utils";
1254
+ import _21 from "lodash/fp.js";
1255
+ var search22 = ({ ids, schoolIds }) => _21.flow(filterEntitiesSimpleFieldByValues21("id", ids), filterEntitiesArrayFieldByValues7("schools", schoolIds));
1231
1256
  var { getTeachers, getTeacher, searchTeachers, makeSearchTeachers } = crud("teachers", {
1232
1257
  search: search22
1233
1258
  });
1234
1259
 
1235
1260
  // src/selectors/tool.ts
1236
1261
  init_define_import_meta();
1237
- import { makeEntitiesFilter as makeEntitiesFilter22 } from "@lls/utils";
1238
- var search23 = ({ ids, locked, bookIds }) => makeEntitiesFilter22({
1239
- id: ids,
1240
- locked,
1241
- books: bookIds
1242
- });
1262
+ import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues8, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues22 } from "@lls/utils";
1263
+ import _22 from "lodash/fp.js";
1264
+ var search23 = ({ ids, locked, bookIds }) => _22.flow(
1265
+ filterEntitiesSimpleFieldByValues22("id", ids),
1266
+ filterEntitiesSimpleFieldByValues22("locked", _22.isNil(locked) ? void 0 : [locked]),
1267
+ filterEntitiesArrayFieldByValues8("books", bookIds)
1268
+ );
1243
1269
  var { getTools, getTool, searchTools, makeSearchTools } = crud("tools", {
1244
1270
  search: search23
1245
1271
  });
@@ -1247,7 +1273,7 @@ var { getTools, getTool, searchTools, makeSearchTools } = crud("tools", {
1247
1273
  // src/reducers/entities.ts
1248
1274
  init_define_import_meta();
1249
1275
  import { makeReducer } from "@lls/utils";
1250
- import _14 from "lodash/fp.js";
1276
+ import _23 from "lodash/fp.js";
1251
1277
 
1252
1278
  // src/actions/index.ts
1253
1279
  init_define_import_meta();
@@ -1270,16 +1296,16 @@ var resetAuth = makeActionCreator(actionTypes.RESET_AUTH);
1270
1296
  // src/reducers/entities.ts
1271
1297
  var deleteEntityReducer = (state, payload) => {
1272
1298
  const { path } = payload;
1273
- return _14.omit(path, state);
1299
+ return _23.omit(path, state);
1274
1300
  };
1275
1301
  var updateEntityReducer = (state, payload) => {
1276
1302
  const { path, entity } = payload;
1277
- const currentEntity = _14.get(path, state);
1278
- return _14.set(path, _14.merge(currentEntity, entity), state);
1303
+ const currentEntity = _23.get(path, state);
1304
+ return _23.set(path, _23.merge(currentEntity, entity), state);
1279
1305
  };
1280
1306
  var setEntityReducer = (state, payload) => {
1281
1307
  const { path, entity } = payload;
1282
- return _14.set(path, entity, state);
1308
+ return _23.set(path, entity, state);
1283
1309
  };
1284
1310
  var setEntitiesReducer = (state, payload) => {
1285
1311
  if (typeof payload !== "object") return state;
@@ -1300,7 +1326,7 @@ var setEntitiesReducer = (state, payload) => {
1300
1326
  }
1301
1327
  const diff = Object.keys(entity).some((prop) => {
1302
1328
  const value = entity[prop];
1303
- if (!_14.isEqual(state[entityName]?.[id]?.[prop], value)) {
1329
+ if (!_23.isEqual(state[entityName]?.[id]?.[prop], value)) {
1304
1330
  return true;
1305
1331
  }
1306
1332
  });
@@ -1332,7 +1358,7 @@ var entities_default = entities;
1332
1358
  // src/reducers/auth.ts
1333
1359
  init_define_import_meta();
1334
1360
  import { makeReducer as makeReducer2 } from "@lls/utils";
1335
- import _15 from "lodash/fp.js";
1361
+ import _24 from "lodash/fp.js";
1336
1362
  var initialState = {
1337
1363
  id: void 0,
1338
1364
  role: null,
@@ -1345,15 +1371,15 @@ var initialState = {
1345
1371
  llsUserId: null
1346
1372
  };
1347
1373
  var auth = makeReducer2(initialState, {
1348
- [actionTypes.SET_AUTH]: _15.assign,
1349
- [actionTypes.RESET_AUTH]: _15.constant(initialState)
1374
+ [actionTypes.SET_AUTH]: _24.assign,
1375
+ [actionTypes.RESET_AUTH]: _24.constant(initialState)
1350
1376
  });
1351
1377
  var auth_default = auth;
1352
1378
 
1353
1379
  // src/schema/index.ts
1354
1380
  init_define_import_meta();
1355
1381
  var import_normalizr = __toESM(require_normalizr(), 1);
1356
- import _16 from "lodash/fp.js";
1382
+ import _25 from "lodash/fp.js";
1357
1383
  var document = new import_normalizr.schema.Entity("documents", {}, { idAttribute: "resourceId" });
1358
1384
  var subject = new import_normalizr.schema.Entity("subjects");
1359
1385
  var level = new import_normalizr.schema.Entity("levels");
@@ -1544,7 +1570,7 @@ var querySchema = {
1544
1570
  }
1545
1571
  }
1546
1572
  };
1547
- var normalizeData = _16.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
1573
+ var normalizeData = _25.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
1548
1574
  export {
1549
1575
  auth_default as authReducer,
1550
1576
  entities_default as entitiesReducer,
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-8e1a3cff",
5
+ "version": "24.1.59-a0007626",
6
6
  "type": "module",
7
7
  "types": "./lib/builttypes/store/src/index.d.ts",
8
8
  "exports": {
@@ -28,21 +28,21 @@
28
28
  "react": "*"
29
29
  },
30
30
  "devDependencies": {
31
- "@biomejs/biome": "1.9.1",
32
- "@types/lodash": "4.17.7",
33
- "@types/node": "22.5.5",
34
- "@types/react": "18.3.6",
31
+ "@biomejs/biome": "1.8.4-nightly.7aaf0ce",
32
+ "@types/lodash": "4.17.6",
33
+ "@types/node": "20.14.10",
34
+ "@types/react": "18.3.3",
35
35
  "@vitejs/plugin-react-swc": "3.7.0",
36
- "esbuild": "0.23.1",
36
+ "esbuild": "0.23.0",
37
37
  "lodash": "4.17.21",
38
38
  "react": "18.3.1",
39
39
  "reselect": "4.1.8",
40
- "typescript": "5.6.2",
41
- "vite": "5.4.6",
40
+ "typescript": "5.5.4",
41
+ "vite": "5.3.3",
42
42
  "vite-tsconfig-paths": "4.3.2",
43
- "vitest": "2.1.1",
44
- "@lls/utils": "24.1.59-8e1a3cff",
45
- "@lls/vitescripts": "24.1.59-8e1a3cff"
43
+ "vitest": "2.0.0",
44
+ "@lls/utils": "24.1.59-a0007626",
45
+ "@lls/vitescripts": "24.1.59-a0007626"
46
46
  },
47
47
  "license": "ISC",
48
48
  "dependencies": {