@lls/store 24.1.59-bf92ba76 → 24.1.59-d1bfe110

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 +194 -20
  2. package/package.json +3 -3
package/lib/index.js CHANGED
@@ -741,12 +741,12 @@ import _ from "lodash/fp.js";
741
741
  // src/selectors/crud.ts
742
742
  init_define_import_meta();
743
743
  import { createSearchSelector, makeGetAllEntities, makeGetEntityById } from "@lls/utils";
744
- var crud = (entityName, { search: search15 }) => {
744
+ var crud = (entityName, { search: search23 }) => {
745
745
  const getElements = makeGetAllEntities(entityName);
746
746
  const makeSearchElements = () => createSearchSelector(
747
747
  getElements,
748
748
  (_state, params) => params,
749
- (elements, params) => search15(params)(elements)
749
+ (elements, params) => search23(params)(elements)
750
750
  );
751
751
  const methodName = `${entityName.charAt(0).toUpperCase()}${entityName.slice(1)}`;
752
752
  const getElementById = makeGetEntityById(entityName);
@@ -989,7 +989,7 @@ import { createSearchSelector as createSearchSelector4, filterEntitiesSimpleFiel
989
989
  import _10 from "lodash/fp.js";
990
990
  var getCopyNotifications = makeGetAllEntities3("copyNotifications");
991
991
  var makeSearchCopyNotifications = () => createSearchSelector4(
992
- [getCurrentUser, getCopyNotifications, (_19, params) => params],
992
+ [getCurrentUser, getCopyNotifications, (_25, params) => params],
993
993
  (currentUser, copyNotifications, { pageIds, read }) => _10.flow(
994
994
  _10.get("copyNotifications"),
995
995
  (ids) => _10.flow(
@@ -1007,7 +1007,7 @@ import { createSearchSelector as createSearchSelector5, filterEntitiesSimpleFiel
1007
1007
  import _11 from "lodash/fp.js";
1008
1008
  var getDrawerNotifications = makeGetAllEntities4("drawerNotifications");
1009
1009
  var makeSearchDrawerNotifications = () => createSearchSelector5(
1010
- [getCurrentUser, getDrawerNotifications, (_19, params) => params],
1010
+ [getCurrentUser, getDrawerNotifications, (_25, params) => params],
1011
1011
  (currentUser, drawerNotifications, { read, pageIds }) => _11.flow(
1012
1012
  _11.get("drawerNotifications"),
1013
1013
  (ids) => _11.flow(
@@ -1116,10 +1116,153 @@ var { getPremiumResources, getPremiumResource, searchPremiumResources, makeSearc
1116
1116
  }
1117
1117
  );
1118
1118
 
1119
+ // src/selectors/product.ts
1120
+ init_define_import_meta();
1121
+ import _16 from "lodash/fp.js";
1122
+ import {
1123
+ createSearchSelector as createSearchSelector6,
1124
+ filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues5,
1125
+ filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues14,
1126
+ makeGetAllEntities as makeGetAllEntities7
1127
+ } from "@lls/utils";
1128
+ var getProducts = makeGetAllEntities7("products");
1129
+ var search15 = ({
1130
+ ids,
1131
+ eans,
1132
+ isAdoptant,
1133
+ isSupportPlus,
1134
+ levelIds,
1135
+ subjectIds,
1136
+ productTypes
1137
+ }) => {
1138
+ return _16.flow(
1139
+ (products, books) => levelIds || subjectIds ? filterEntitiesArrayFieldByValues5("books", _16.map("id", books))(products) : products,
1140
+ filterEntitiesSimpleFieldByValues14("id", ids),
1141
+ filterEntitiesSimpleFieldByValues14("ean", eans),
1142
+ filterEntitiesSimpleFieldByValues14("isAdoptant", _16.isBoolean(isAdoptant) ? [isAdoptant] : void 0),
1143
+ filterEntitiesSimpleFieldByValues14("isSupportPlus", _16.isBoolean(isSupportPlus) ? [isSupportPlus] : void 0),
1144
+ filterEntitiesSimpleFieldByValues14("productType", productTypes)
1145
+ );
1146
+ };
1147
+ var searchBooks2 = makeSearchBooks();
1148
+ var searchProducts = createSearchSelector6(
1149
+ getProducts,
1150
+ (state, { levelIds, subjectIds }) => searchBooks2(state, { levelIds, subjectIds }),
1151
+ (_state, params) => params,
1152
+ (products, books, params) => search15(params)(products, books)
1153
+ );
1154
+
1155
+ // src/selectors/resource.ts
1156
+ init_define_import_meta();
1157
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues15 } from "@lls/utils";
1158
+ import _17 from "lodash/fp.js";
1159
+ var search16 = ({ chapterIds }) => _17.flow(filterEntitiesSimpleFieldByValues15("chapter", chapterIds));
1160
+ var { getResources, getResource, searchResources, makeSearchResources } = crud("resources", {
1161
+ search: search16
1162
+ });
1163
+
1164
+ // src/selectors/schoolType.ts
1165
+ init_define_import_meta();
1166
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues16 } from "@lls/utils";
1167
+ var search17 = ({ slugs }) => filterEntitiesSimpleFieldByValues16("slug", slugs);
1168
+ var { getSchoolTypes, getSchoolType, searchSchoolTypes, makeSearchSchoolTypes } = crud("schoolTypes", {
1169
+ search: search17
1170
+ });
1171
+
1172
+ // src/selectors/sharedPage.ts
1173
+ init_define_import_meta();
1174
+ import { createSearchSelector as createSearchSelector7, filterEntitiesSimpleFieldByValue as filterEntitiesSimpleFieldByValue3, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues17 } from "@lls/utils";
1175
+ import _18 from "lodash/fp.js";
1176
+ var search18 = ({
1177
+ parentIds,
1178
+ userIds,
1179
+ bookIds,
1180
+ isCreatedFromScratch,
1181
+ isLearningAssessment,
1182
+ ids
1183
+ }) => _18.flow(
1184
+ filterEntitiesSimpleFieldByValues17("id", ids),
1185
+ filterEntitiesSimpleFieldByValues17("parent", parentIds),
1186
+ filterEntitiesSimpleFieldByValues17("user", userIds),
1187
+ filterEntitiesSimpleFieldByValues17("book", bookIds),
1188
+ filterEntitiesSimpleFieldByValue3("isLearningAssessment", isLearningAssessment),
1189
+ filterEntitiesSimpleFieldByValue3("isCreatedFromScratch", isCreatedFromScratch)
1190
+ );
1191
+ var { getSharedPages, getSharedPage, searchSharedPages, makeSearchSharedPages } = crud("sharedPages", {
1192
+ search: search18
1193
+ });
1194
+ var searchCurrentUserSharedPages = createSearchSelector7(
1195
+ (state) => _18.flow(getCurrentUser, _18.getOr([], "sharedPages"))(state),
1196
+ getSharedPages,
1197
+ (_25, params) => params,
1198
+ (sharedUserPageIds, sharedPages, params) => search18({ ...params, ids: _18.intersection(sharedUserPageIds, params.ids || sharedUserPageIds) })(sharedPages)
1199
+ );
1200
+
1201
+ // src/selectors/student.ts
1202
+ init_define_import_meta();
1203
+ import { filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues18 } from "@lls/utils";
1204
+ var search19 = ({ ids }) => filterEntitiesSimpleFieldByValues18("id", ids);
1205
+ var { getStudents, getStudent, searchStudents, makeSearchStudents } = crud("students", {
1206
+ search: search19
1207
+ });
1208
+
1209
+ // src/selectors/subject.ts
1210
+ init_define_import_meta();
1211
+ import {
1212
+ filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues6,
1213
+ filterEntitiesFieldExists as filterEntitiesFieldExists2,
1214
+ filterEntitiesSimpleFieldByValue as filterEntitiesSimpleFieldByValue4,
1215
+ filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues19,
1216
+ limitToTeacherSubjects
1217
+ } from "@lls/utils";
1218
+ import _19 from "lodash/fp.js";
1219
+ var search20 = ({
1220
+ ids,
1221
+ slugs,
1222
+ isTeacherSubject,
1223
+ hasNewsletterUrl,
1224
+ schoolTypes,
1225
+ hasBooks,
1226
+ names
1227
+ }) => _19.flow(
1228
+ filterEntitiesSimpleFieldByValues19("id", ids),
1229
+ filterEntitiesSimpleFieldByValues19("slug", slugs),
1230
+ filterEntitiesSimpleFieldByValues19("name", names),
1231
+ filterEntitiesSimpleFieldByValue4("hasBooks", hasBooks),
1232
+ filterEntitiesArrayFieldByValues6("schoolTypes", schoolTypes),
1233
+ (subjects) => _19.isNil(isTeacherSubject) ? subjects : limitToTeacherSubjects(subjects),
1234
+ filterEntitiesFieldExists2("newsletterUrl", hasNewsletterUrl)
1235
+ );
1236
+ var { getSubjects, getSubject, searchSubjects, makeSearchSubjects } = crud("subjects", {
1237
+ search: search20
1238
+ });
1239
+
1240
+ // src/selectors/teacher.ts
1241
+ init_define_import_meta();
1242
+ import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues7, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues20 } from "@lls/utils";
1243
+ import _20 from "lodash/fp.js";
1244
+ var search21 = ({ ids, schoolIds }) => _20.flow(filterEntitiesSimpleFieldByValues20("id", ids), filterEntitiesArrayFieldByValues7("schools", schoolIds));
1245
+ var { getTeachers, getTeacher, searchTeachers, makeSearchTeachers } = crud("teachers", {
1246
+ search: search21
1247
+ });
1248
+
1249
+ // src/selectors/tool.ts
1250
+ init_define_import_meta();
1251
+ import { filterEntitiesArrayFieldByValues as filterEntitiesArrayFieldByValues8, filterEntitiesSimpleFieldByValues as filterEntitiesSimpleFieldByValues21 } from "@lls/utils";
1252
+ import _21 from "lodash/fp.js";
1253
+ var search22 = ({ ids, locked, bookIds }) => _21.flow(
1254
+ filterEntitiesSimpleFieldByValues21("id", ids),
1255
+ filterEntitiesSimpleFieldByValues21("locked", _21.isNil(locked) ? void 0 : [locked]),
1256
+ filterEntitiesArrayFieldByValues8("books", bookIds)
1257
+ );
1258
+ var { getTools, getTool, searchTools, makeSearchTools } = crud("tools", {
1259
+ search: search22
1260
+ });
1261
+
1119
1262
  // src/reducers/entities.ts
1120
1263
  init_define_import_meta();
1121
1264
  import { makeReducer } from "@lls/utils";
1122
- import _16 from "lodash/fp.js";
1265
+ import _22 from "lodash/fp.js";
1123
1266
 
1124
1267
  // src/actions/index.ts
1125
1268
  init_define_import_meta();
@@ -1142,23 +1285,23 @@ var resetAuth = makeActionCreator(actionTypes.RESET_AUTH);
1142
1285
  // src/reducers/entities.ts
1143
1286
  var deleteEntityReducer = (state, payload) => {
1144
1287
  const { path } = payload;
1145
- return _16.omit(path, state);
1288
+ return _22.omit(path, state);
1146
1289
  };
1147
1290
  var updateEntityReducer = (state, payload) => {
1148
1291
  const { path, entity } = payload;
1149
- const currentEntity = _16.get(path, state);
1150
- return _16.set(path, _16.merge(currentEntity, entity), state);
1292
+ const currentEntity = _22.get(path, state);
1293
+ return _22.set(path, _22.merge(currentEntity, entity), state);
1151
1294
  };
1152
1295
  var setEntityReducer = (state, payload) => {
1153
1296
  const { path, entity } = payload;
1154
- return _16.set(path, entity, state);
1297
+ return _22.set(path, entity, state);
1155
1298
  };
1156
1299
  var shallowAssign = (old, next, transform) => {
1157
1300
  let updated = false;
1158
- const merged = _16.flow(
1159
- _16.toPairs,
1160
- _16.reduce((memo, [key, val]) => {
1161
- if (_16.isEmpty(val)) return memo;
1301
+ const merged = _22.flow(
1302
+ _22.toPairs,
1303
+ _22.reduce((memo, [key, val]) => {
1304
+ if (_22.isEmpty(val)) return memo;
1162
1305
  if (!old[key]) {
1163
1306
  updated = true;
1164
1307
  memo[key] = val;
@@ -1171,7 +1314,7 @@ var shallowAssign = (old, next, transform) => {
1171
1314
  return memo;
1172
1315
  }
1173
1316
  return memo;
1174
- }, _16.clone(old))
1317
+ }, _22.clone(old))
1175
1318
  )(next);
1176
1319
  return updated ? merged : old;
1177
1320
  };
@@ -1180,7 +1323,7 @@ var setEntitiesReducer = (state, payload) => {
1180
1323
  return shallowAssign(
1181
1324
  entityKind,
1182
1325
  nextEntityKind,
1183
- (oldEntity, nextEntity) => _16.isEqual(oldEntity, nextEntity) ? oldEntity : _16.assign(oldEntity, nextEntity)
1326
+ (oldEntity, nextEntity) => _22.isEqual(oldEntity, nextEntity) ? oldEntity : _22.assign(oldEntity, nextEntity)
1184
1327
  );
1185
1328
  });
1186
1329
  };
@@ -1198,7 +1341,7 @@ var entities_default = entities;
1198
1341
  // src/reducers/auth.ts
1199
1342
  init_define_import_meta();
1200
1343
  import { makeReducer as makeReducer2 } from "@lls/utils";
1201
- import _17 from "lodash/fp.js";
1344
+ import _23 from "lodash/fp.js";
1202
1345
  var initialState = {
1203
1346
  id: void 0,
1204
1347
  role: null,
@@ -1211,15 +1354,15 @@ var initialState = {
1211
1354
  llsUserId: null
1212
1355
  };
1213
1356
  var auth = makeReducer2(initialState, {
1214
- [actionTypes.SET_AUTH]: _17.assign,
1215
- [actionTypes.RESET_AUTH]: _17.constant(initialState)
1357
+ [actionTypes.SET_AUTH]: _23.assign,
1358
+ [actionTypes.RESET_AUTH]: _23.constant(initialState)
1216
1359
  });
1217
1360
  var auth_default = auth;
1218
1361
 
1219
1362
  // src/schema/index.ts
1220
1363
  init_define_import_meta();
1221
1364
  var import_normalizr = __toESM(require_normalizr(), 1);
1222
- import _18 from "lodash/fp.js";
1365
+ import _24 from "lodash/fp.js";
1223
1366
  var document = new import_normalizr.schema.Entity("documents", {}, { idAttribute: "resourceId" });
1224
1367
  var subject = new import_normalizr.schema.Entity("subjects");
1225
1368
  var level = new import_normalizr.schema.Entity("levels");
@@ -1406,7 +1549,7 @@ var querySchema = {
1406
1549
  }
1407
1550
  }
1408
1551
  };
1409
- var normalizeData = _18.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
1552
+ var normalizeData = _24.flow((data) => (0, import_normalizr.normalize)(data, querySchema));
1410
1553
  export {
1411
1554
  auth_default as authReducer,
1412
1555
  entities_default as entitiesReducer,
@@ -1438,8 +1581,23 @@ export {
1438
1581
  getPanorama,
1439
1582
  getPremiumResource,
1440
1583
  getPremiumResources,
1584
+ getProducts,
1585
+ getResource,
1586
+ getResources,
1441
1587
  getSchool,
1588
+ getSchoolType,
1589
+ getSchoolTypes,
1442
1590
  getSchools,
1591
+ getSharedPage,
1592
+ getSharedPages,
1593
+ getStudent,
1594
+ getStudents,
1595
+ getSubject,
1596
+ getSubjects,
1597
+ getTeacher,
1598
+ getTeachers,
1599
+ getTool,
1600
+ getTools,
1443
1601
  getUser,
1444
1602
  getUserGroups,
1445
1603
  getUsers,
@@ -1460,7 +1618,14 @@ export {
1460
1618
  makeSearchNews,
1461
1619
  makeSearchPages,
1462
1620
  makeSearchPremiumResources,
1621
+ makeSearchResources,
1622
+ makeSearchSchoolTypes,
1463
1623
  makeSearchSchools,
1624
+ makeSearchSharedPages,
1625
+ makeSearchStudents,
1626
+ makeSearchSubjects,
1627
+ makeSearchTeachers,
1628
+ makeSearchTools,
1464
1629
  makeSearchUsers,
1465
1630
  makeSearchValidBooks,
1466
1631
  normalizeData,
@@ -1471,6 +1636,7 @@ export {
1471
1636
  searchCommunityProjects,
1472
1637
  searchContacts,
1473
1638
  searchCopyNotifications,
1639
+ searchCurrentUserSharedPages,
1474
1640
  searchDraftPages,
1475
1641
  searchDrawerNotifications,
1476
1642
  searchGarDivisions,
@@ -1480,7 +1646,15 @@ export {
1480
1646
  searchNews,
1481
1647
  searchPages,
1482
1648
  searchPremiumResources,
1649
+ searchProducts,
1650
+ searchResources,
1651
+ searchSchoolTypes,
1483
1652
  searchSchools,
1653
+ searchSharedPages,
1654
+ searchStudents,
1655
+ searchSubjects,
1656
+ searchTeachers,
1657
+ searchTools,
1484
1658
  searchUsers,
1485
1659
  searchValidBooks,
1486
1660
  setEntitiesReducer
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-bf92ba76",
5
+ "version": "24.1.59-d1bfe110",
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-bf92ba76",
45
- "@lls/vitescripts": "24.1.59-bf92ba76"
44
+ "@lls/utils": "24.1.59-d1bfe110",
45
+ "@lls/vitescripts": "24.1.59-d1bfe110"
46
46
  },
47
47
  "license": "ISC",
48
48
  "dependencies": {