@lls/store 24.8.0-1c89fb2d → 24.8.0-1fcbd934

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 +125 -59
  2. package/package.json +3 -3
package/lib/index.js CHANGED
@@ -979,7 +979,7 @@ var search9 = ({ ids, read, pageIds }) => {
979
979
  return makeEntitiesFilter7({ read, id: ids, page: pageIds });
980
980
  };
981
981
  var makeSearchCopyNotifications = () => createSearchSelector3(
982
- [makeGetCurrentUser(), makeGetAllEntities2("copyNotifications"), (_20, params) => params],
982
+ [makeGetCurrentUser(), makeGetAllEntities2("copyNotifications"), (_19, params) => params],
983
983
  (currentUser, copyNotifications, { pageIds, read }) => {
984
984
  const ids = currentUser?.copyNotifications;
985
985
  return search9({ ids, read, pageIds })(copyNotifications);
@@ -990,10 +990,23 @@ var useSearchCopyNotifications = makeUseSearch(makeSearchCopyNotifications);
990
990
  // src/selectors/document.ts
991
991
  init_define_import_meta();
992
992
  import { makeEntitiesFilter as makeEntitiesFilter8 } from "@lls/utils";
993
- var search10 = ({ ids, resourceIds }) => {
993
+ var search10 = ({
994
+ ids,
995
+ uuids,
996
+ resourceIds,
997
+ levelIds,
998
+ formats,
999
+ documentTypes,
1000
+ subDocumentTypes
1001
+ }) => {
994
1002
  return makeEntitiesFilter8({
995
1003
  id: ids,
996
- resourceId: resourceIds
1004
+ resourceId: resourceIds,
1005
+ levels: levelIds,
1006
+ uuidV2: uuids,
1007
+ format: formats,
1008
+ documentType: documentTypes,
1009
+ subDocumentType: subDocumentTypes
997
1010
  });
998
1011
  };
999
1012
  var { useSearchDocuments } = crud("documents", {
@@ -1007,7 +1020,7 @@ var search11 = ({ ids, read, pageIds }) => {
1007
1020
  return makeEntitiesFilter9({ read, id: ids, page: pageIds });
1008
1021
  };
1009
1022
  var makeSearchDrawerNotifications = () => createSearchSelector4(
1010
- [makeGetCurrentUser(), makeGetAllEntities3("drawerNotifications"), (_20, params) => params],
1023
+ [makeGetCurrentUser(), makeGetAllEntities3("drawerNotifications"), (_19, params) => params],
1011
1024
  (currentUser, drawerNotifications, { read, pageIds }) => {
1012
1025
  const ids = currentUser?.drawerNotifications;
1013
1026
  return search11({ ids, read, pageIds })(drawerNotifications);
@@ -1045,9 +1058,22 @@ var getUserGroups = (0, import_reselect2.createSelector)(
1045
1058
  // src/selectors/level.ts
1046
1059
  init_define_import_meta();
1047
1060
  var import_reselect3 = __toESM(require_lib(), 1);
1048
- import { makeEntitiesFilter as makeEntitiesFilter11 } from "@lls/utils";
1061
+ import { createSearchSelector as createSearchSelector5, makeEntitiesFilter as makeEntitiesFilter12, makeGetAllEntities as makeGetAllEntities5 } from "@lls/utils";
1049
1062
  import _10 from "lodash/fp.js";
1050
- var search14 = ({
1063
+
1064
+ // src/selectors/schoolType.ts
1065
+ init_define_import_meta();
1066
+ import { makeEntitiesFilter as makeEntitiesFilter11 } from "@lls/utils";
1067
+ var search14 = ({ slugs }) => makeEntitiesFilter11({ slug: slugs });
1068
+ var { getSchoolTypes, getSchoolType, useSearchSchoolTypes, makeSearchSchoolTypes, searchSchoolTypes } = crud(
1069
+ "schoolTypes",
1070
+ {
1071
+ search: search14
1072
+ }
1073
+ );
1074
+
1075
+ // src/selectors/level.ts
1076
+ var search15 = ({
1051
1077
  ids,
1052
1078
  slugs,
1053
1079
  isPreSchool,
@@ -1055,9 +1081,10 @@ var search14 = ({
1055
1081
  isHighSchool,
1056
1082
  isProHighSchool,
1057
1083
  isGenHighSchool,
1058
- isElementarySchool
1084
+ isElementarySchool,
1085
+ schoolTypes
1059
1086
  }) => _10.flow(
1060
- makeEntitiesFilter11({
1087
+ makeEntitiesFilter12({
1061
1088
  id: ids,
1062
1089
  slug: slugs,
1063
1090
  isPreSchool,
@@ -1065,35 +1092,49 @@ var search14 = ({
1065
1092
  isHighSchool,
1066
1093
  isProHighSchool,
1067
1094
  isGenHighSchool,
1068
- isElementarySchool
1095
+ isElementarySchool,
1096
+ schoolTypes
1069
1097
  }),
1070
1098
  _10.orderBy("order", "desc")
1071
1099
  );
1072
- var crudLevels = crud("levels", { search: search14 });
1073
- var { getLevel, useSearchLevels } = crudLevels;
1074
- var getLevels = (0, import_reselect3.createSelector)(crudLevels.getLevels, _10.orderBy("order", "desc"));
1100
+ var makeSearchLevels = () => {
1101
+ const searchSchoolTypes2 = makeSearchSchoolTypes();
1102
+ return createSearchSelector5(
1103
+ makeGetAllEntities5("levels"),
1104
+ (state, { schoolTypes }) => schoolTypes ? searchSchoolTypes2(state, { slugs: schoolTypes }) : void 0,
1105
+ (_state, params) => params,
1106
+ (levels, schoolTypes, params) => search15({ ...params, schoolTypes: schoolTypes?.length ? schoolTypes?.map(({ id }) => id) : void 0 })(levels)
1107
+ );
1108
+ };
1109
+ var crudLevels = crud("levels", { search: search15 });
1110
+ var { getLevel, searchLevels } = crudLevels;
1111
+ var getLevels = (0, import_reselect3.createSelector)(
1112
+ crudLevels.getLevels,
1113
+ _10.orderBy("order", "desc")
1114
+ );
1115
+ var useSearchLevels = makeUseSearch(makeSearchLevels);
1075
1116
 
1076
1117
  // src/selectors/mainNotification.ts
1077
1118
  init_define_import_meta();
1078
1119
  var import_reselect4 = __toESM(require_lib(), 1);
1079
- import { makeEntitiesFilter as makeEntitiesFilter12, makeGetAllEntities as makeGetAllEntities5 } from "@lls/utils";
1120
+ import { makeEntitiesFilter as makeEntitiesFilter13, makeGetAllEntities as makeGetAllEntities6 } from "@lls/utils";
1080
1121
  import _11 from "lodash/fp.js";
1081
- var search15 = ({ ids }) => makeEntitiesFilter12({ id: ids });
1122
+ var search16 = ({ ids }) => makeEntitiesFilter13({ id: ids });
1082
1123
  var getMainNotifications = (0, import_reselect4.createSelector)(
1083
- [_11.flow(makeGetCurrentUser(), _11.get("mainNotifications")), makeGetAllEntities5("mainNotifications")],
1084
- (userNotifications, notifications) => search15({ ids: userNotifications })(notifications)
1124
+ [_11.flow(makeGetCurrentUser(), _11.get("mainNotifications")), makeGetAllEntities6("mainNotifications")],
1125
+ (userNotifications, notifications) => search16({ ids: userNotifications })(notifications)
1085
1126
  );
1086
1127
 
1087
1128
  // src/selectors/news.ts
1088
1129
  init_define_import_meta();
1089
- import { makeEntitiesFilter as makeEntitiesFilter13 } from "@lls/utils";
1090
- var search16 = ({ ids }) => makeEntitiesFilter13({ id: ids });
1130
+ import { makeEntitiesFilter as makeEntitiesFilter14 } from "@lls/utils";
1131
+ var search17 = ({ ids }) => makeEntitiesFilter14({ id: ids });
1091
1132
  var {
1092
1133
  getNews: getAllNews,
1093
1134
  getNew: getNews,
1094
1135
  useSearchNews
1095
1136
  } = crud("news", {
1096
- search: search16
1137
+ search: search17
1097
1138
  });
1098
1139
 
1099
1140
  // src/selectors/panorama.ts
@@ -1103,26 +1144,26 @@ var getPanorama = makeGetEntityById3("panoramas");
1103
1144
 
1104
1145
  // src/selectors/premiumResource.ts
1105
1146
  init_define_import_meta();
1106
- import { makeEntitiesFilter as makeEntitiesFilter14 } from "@lls/utils";
1107
- var search17 = ({ bookIds }) => makeEntitiesFilter14({ book: bookIds });
1147
+ import { makeEntitiesFilter as makeEntitiesFilter15 } from "@lls/utils";
1148
+ var search18 = ({ bookIds }) => makeEntitiesFilter15({ book: bookIds });
1108
1149
  var { getPremiumResources, getPremiumResource, useSearchPremiumResources } = crud("premiumResources", {
1109
- search: search17
1150
+ search: search18
1110
1151
  });
1111
1152
 
1112
1153
  // src/selectors/lexicalFlower.ts
1113
1154
  init_define_import_meta();
1114
- import { makeEntitiesFilter as makeEntitiesFilter15 } from "@lls/utils";
1115
- var search18 = ({ ids }) => makeEntitiesFilter15({ id: ids });
1155
+ import { makeEntitiesFilter as makeEntitiesFilter16 } from "@lls/utils";
1156
+ var search19 = ({ ids }) => makeEntitiesFilter16({ id: ids });
1116
1157
  var { getLexicalFlowers, useSearchLexicalFlowers } = crud("lexicalFlowers", {
1117
- search: search18
1158
+ search: search19
1118
1159
  });
1119
1160
 
1120
1161
  // src/selectors/product.ts
1121
1162
  init_define_import_meta();
1122
1163
  import _12 from "lodash/fp.js";
1123
- import { createSearchSelector as createSearchSelector5, makeEntitiesFilter as makeEntitiesFilter16, makeGetAllEntities as makeGetAllEntities6 } from "@lls/utils";
1124
- var getProducts = makeGetAllEntities6("products");
1125
- var search19 = ({
1164
+ import { createSearchSelector as createSearchSelector6, makeEntitiesFilter as makeEntitiesFilter17, makeGetAllEntities as makeGetAllEntities7 } from "@lls/utils";
1165
+ var getProducts = makeGetAllEntities7("products");
1166
+ var search20 = ({
1126
1167
  ids,
1127
1168
  eans,
1128
1169
  isAdoptant,
@@ -1132,7 +1173,7 @@ var search19 = ({
1132
1173
  productTypes
1133
1174
  }) => {
1134
1175
  let bookIds;
1135
- const filter = makeEntitiesFilter16(
1176
+ const filter = makeEntitiesFilter17(
1136
1177
  {
1137
1178
  id: ids,
1138
1179
  ean: eans,
@@ -1149,36 +1190,28 @@ var search19 = ({
1149
1190
  };
1150
1191
  var makeSearchProducts = () => {
1151
1192
  const searchBooks = makeSearchBooks();
1152
- return createSearchSelector5(
1153
- makeGetAllEntities6("products"),
1193
+ return createSearchSelector6(
1194
+ makeGetAllEntities7("products"),
1154
1195
  (state, { levelIds, subjectIds }) => searchBooks(state, { levelIds, subjectIds }),
1155
1196
  (_state, params) => params,
1156
- (products, books, params) => search19(params)(products, books)
1197
+ (products, books, params) => search20(params)(products, books)
1157
1198
  );
1158
1199
  };
1159
1200
  var useSearchProducts = makeUseSearch(makeSearchProducts);
1160
1201
 
1161
1202
  // src/selectors/resource.ts
1162
1203
  init_define_import_meta();
1163
- import { makeEntitiesFilter as makeEntitiesFilter17 } from "@lls/utils";
1164
- var search20 = ({ chapterIds }) => makeEntitiesFilter17({
1204
+ import { makeEntitiesFilter as makeEntitiesFilter18 } from "@lls/utils";
1205
+ var search21 = ({ chapterIds }) => makeEntitiesFilter18({
1165
1206
  chapter: chapterIds
1166
1207
  });
1167
1208
  var { getResources, getResource, useSearchResources } = crud("resources", {
1168
- search: search20
1169
- });
1170
-
1171
- // src/selectors/schoolType.ts
1172
- init_define_import_meta();
1173
- import { makeEntitiesFilter as makeEntitiesFilter18 } from "@lls/utils";
1174
- var search21 = ({ slugs }) => makeEntitiesFilter18({ slug: slugs });
1175
- var { getSchoolTypes, getSchoolType, useSearchSchoolTypes, makeSearchSchoolTypes } = crud("schoolTypes", {
1176
1209
  search: search21
1177
1210
  });
1178
1211
 
1179
1212
  // src/selectors/sharedPage.ts
1180
1213
  init_define_import_meta();
1181
- import { createSearchSelector as createSearchSelector6, makeEntitiesFilter as makeEntitiesFilter19 } from "@lls/utils";
1214
+ import { createSearchSelector as createSearchSelector7, makeEntitiesFilter as makeEntitiesFilter19 } from "@lls/utils";
1182
1215
  import _13 from "lodash/fp.js";
1183
1216
  var search22 = ({
1184
1217
  parentIds,
@@ -1198,7 +1231,7 @@ var search22 = ({
1198
1231
  var { getSharedPages, getSharedPage, useSearchSharedPages } = crud("sharedPages", {
1199
1232
  search: search22
1200
1233
  });
1201
- var makeSearchCurrentUserSharedPages = () => createSearchSelector6(
1234
+ var makeSearchCurrentUserSharedPages = () => createSearchSelector7(
1202
1235
  getCurrentUser,
1203
1236
  getSharedPages,
1204
1237
  (__, params) => params,
@@ -1304,16 +1337,30 @@ var { getCirconscriptions } = crud("circonscriptions", {
1304
1337
 
1305
1338
  // src/selectors/documentType.ts
1306
1339
  init_define_import_meta();
1307
- import _16 from "lodash/fp.js";
1308
- var search30 = (_params) => _16.identity;
1309
- var { getDocumentTypes, getDocumentType } = crud("documentTypes", {
1340
+ import { makeEntitiesFilter as makeEntitiesFilter26 } from "@lls/utils";
1341
+ var search30 = ({ ids }) => {
1342
+ return makeEntitiesFilter26({
1343
+ id: ids
1344
+ });
1345
+ };
1346
+ var searchSubDocumentType = ({
1347
+ ids
1348
+ }) => {
1349
+ return makeEntitiesFilter26({
1350
+ id: ids
1351
+ });
1352
+ };
1353
+ var { getSubDocumentTypes, useSearchSubDocumentTypes } = crud("subDocumentTypes", {
1354
+ search: searchSubDocumentType
1355
+ });
1356
+ var { getDocumentTypes, getDocumentType, useSearchDocumentTypes } = crud("documentTypes", {
1310
1357
  search: search30
1311
1358
  });
1312
1359
 
1313
1360
  // src/reducers/entities.ts
1314
1361
  init_define_import_meta();
1315
1362
  import { makeReducer } from "@lls/utils";
1316
- import _17 from "lodash/fp.js";
1363
+ import _16 from "lodash/fp.js";
1317
1364
 
1318
1365
  // src/actions/index.ts
1319
1366
  init_define_import_meta();
@@ -1336,16 +1383,16 @@ var resetAuth = makeActionCreator(actionTypes.RESET_AUTH);
1336
1383
  // src/reducers/entities.ts
1337
1384
  var deleteEntityReducer = (state, payload) => {
1338
1385
  const { path } = payload;
1339
- return _17.omit(path, state);
1386
+ return _16.omit(path, state);
1340
1387
  };
1341
1388
  var updateEntityReducer = (state, payload) => {
1342
1389
  const { path, entity } = payload;
1343
- const currentEntity = _17.get(path, state);
1344
- return _17.set(path, _17.merge(currentEntity, entity), state);
1390
+ const currentEntity = _16.get(path, state);
1391
+ return _16.set(path, _16.merge(currentEntity, entity), state);
1345
1392
  };
1346
1393
  var setEntityReducer = (state, payload) => {
1347
1394
  const { path, entity } = payload;
1348
- return _17.set(path, entity, state);
1395
+ return _16.set(path, entity, state);
1349
1396
  };
1350
1397
  var setEntitiesReducer = (state, payload) => {
1351
1398
  if (typeof payload !== "object") return state;
@@ -1366,7 +1413,7 @@ var setEntitiesReducer = (state, payload) => {
1366
1413
  }
1367
1414
  const diff = Object.keys(entity).some((prop) => {
1368
1415
  const value = entity[prop];
1369
- if (!_17.isEqual(state[entityName]?.[id]?.[prop], value)) {
1416
+ if (!_16.isEqual(state[entityName]?.[id]?.[prop], value)) {
1370
1417
  return true;
1371
1418
  }
1372
1419
  });
@@ -1398,7 +1445,7 @@ var entities_default = entities;
1398
1445
  // src/reducers/auth.ts
1399
1446
  init_define_import_meta();
1400
1447
  import { makeReducer as makeReducer2 } from "@lls/utils";
1401
- import _18 from "lodash/fp.js";
1448
+ import _17 from "lodash/fp.js";
1402
1449
  var initialState = {
1403
1450
  id: void 0,
1404
1451
  role: null,
@@ -1411,16 +1458,18 @@ var initialState = {
1411
1458
  llsUserId: null
1412
1459
  };
1413
1460
  var auth = makeReducer2(initialState, {
1414
- [actionTypes.SET_AUTH]: _18.assign,
1415
- [actionTypes.RESET_AUTH]: _18.constant(initialState)
1461
+ [actionTypes.SET_AUTH]: _17.assign,
1462
+ [actionTypes.RESET_AUTH]: _17.constant(initialState)
1416
1463
  });
1417
1464
  var auth_default = auth;
1418
1465
 
1419
1466
  // src/schema/index.ts
1420
1467
  init_define_import_meta();
1421
1468
  var import_normalizr = __toESM(require_normalizr(), 1);
1422
- import _19 from "lodash/fp.js";
1469
+ import _18 from "lodash/fp.js";
1423
1470
  var document = new import_normalizr.schema.Entity("documents");
1471
+ var documentType = new import_normalizr.schema.Entity("documentTypes");
1472
+ var subDocumentType = new import_normalizr.schema.Entity("subDocumentTypes");
1424
1473
  var subject = new import_normalizr.schema.Entity("subjects");
1425
1474
  var level = new import_normalizr.schema.Entity("levels");
1426
1475
  var book = new import_normalizr.schema.Entity("books");
@@ -1479,8 +1528,14 @@ var garDivisionSchema = define(garDivision, {
1479
1528
  students: [user],
1480
1529
  school
1481
1530
  });
1531
+ var documentTypeSchema = define(documentType, {
1532
+ subTypes: [subDocumentType]
1533
+ });
1482
1534
  var documentSchema = define(document, {
1483
- page
1535
+ page,
1536
+ levels: [level],
1537
+ documentType,
1538
+ subDocumentType
1484
1539
  });
1485
1540
  var chapterSchema = define(chapter, {
1486
1541
  book,
@@ -1570,6 +1625,9 @@ var newsSchema = define(news, {
1570
1625
  var premiumResourceSchema = define(premiumResource, {
1571
1626
  book
1572
1627
  });
1628
+ var levelSchema = define(level, {
1629
+ schoolTypes: [schoolType]
1630
+ });
1573
1631
  var querySchema = {
1574
1632
  viewer: {
1575
1633
  addCorrectionsToGroup: group,
@@ -1585,6 +1643,8 @@ var querySchema = {
1585
1643
  createUser: user,
1586
1644
  createLexicalFlower: lexicalFlower,
1587
1645
  documents: { hits: [document] },
1646
+ documentTypes: { hits: [documentType] },
1647
+ subDocumentTypes: { hits: [subDocumentType] },
1588
1648
  explorerResults: [explorerResult],
1589
1649
  levels: [level],
1590
1650
  me: user,
@@ -1625,7 +1685,7 @@ var querySchema = {
1625
1685
  }
1626
1686
  }
1627
1687
  };
1628
- var normalizeData = _19.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
1688
+ var normalizeData = _18.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
1629
1689
  export {
1630
1690
  auth_default as authReducer,
1631
1691
  entities_default as entitiesReducer,
@@ -1679,6 +1739,7 @@ export {
1679
1739
  getSharedPages,
1680
1740
  getStudent,
1681
1741
  getStudents,
1742
+ getSubDocumentTypes,
1682
1743
  getSubject,
1683
1744
  getSubjects,
1684
1745
  getTeacher,
@@ -1693,6 +1754,7 @@ export {
1693
1754
  makeGetCurrentUser,
1694
1755
  makeSearchBooks,
1695
1756
  makeSearchDrawerNotifications,
1757
+ makeSearchLevels,
1696
1758
  makeSearchPages,
1697
1759
  makeSearchSchoolTypes,
1698
1760
  makeSearchSubjects,
@@ -1700,6 +1762,8 @@ export {
1700
1762
  makeUseSearch,
1701
1763
  normalizeData,
1702
1764
  querySchema,
1765
+ searchLevels,
1766
+ searchSchoolTypes,
1703
1767
  setEntitiesReducer,
1704
1768
  useSearchBooks,
1705
1769
  useSearchBuilderIos,
@@ -1709,6 +1773,7 @@ export {
1709
1773
  useSearchContacts,
1710
1774
  useSearchCopyNotifications,
1711
1775
  useSearchCurrentUserSharedPages,
1776
+ useSearchDocumentTypes,
1712
1777
  useSearchDocuments,
1713
1778
  useSearchDrafts,
1714
1779
  useSearchDrawerNotifications,
@@ -1727,6 +1792,7 @@ export {
1727
1792
  useSearchSchools,
1728
1793
  useSearchSharedPages,
1729
1794
  useSearchStudents,
1795
+ useSearchSubDocumentTypes,
1730
1796
  useSearchSubjects,
1731
1797
  useSearchTeachers,
1732
1798
  useSearchTools,
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.8.0-1c89fb2d",
5
+ "version": "24.8.0-1fcbd934",
6
6
  "type": "module",
7
7
  "types": "./lib/builttypes/store/src/index.d.ts",
8
8
  "exports": {
@@ -48,8 +48,8 @@
48
48
  "typescript": "5.6.3",
49
49
  "vite": "5.4.11",
50
50
  "vite-tsconfig-paths": "5.1.3",
51
- "@lls/utils": "24.8.0-1c89fb2d",
52
- "@lls/vitescripts": "24.8.0-1c89fb2d"
51
+ "@lls/utils": "24.8.0-1fcbd934",
52
+ "@lls/vitescripts": "24.8.0-1fcbd934"
53
53
  },
54
54
  "license": "ISC",
55
55
  "dependencies": {