@lls/store 24.8.0-f5442923 → 24.8.0

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 (40) hide show
  1. package/lib/builttypes/store/src/actions/index.d.ts +47 -0
  2. package/lib/builttypes/store/src/index.d.ts +37 -0
  3. package/lib/builttypes/store/src/reducers/auth.d.ts +28 -0
  4. package/lib/builttypes/store/src/reducers/entities.d.ts +16 -0
  5. package/lib/builttypes/store/src/schema/index.d.ts +249 -0
  6. package/lib/builttypes/store/src/selectors/auth.d.ts +4 -0
  7. package/lib/builttypes/store/src/selectors/book.d.ts +108 -0
  8. package/lib/builttypes/store/src/selectors/builderIo.d.ts +5 -0
  9. package/lib/builttypes/store/src/selectors/chapter.d.ts +7 -0
  10. package/lib/builttypes/store/src/selectors/circonscription.d.ts +1 -0
  11. package/lib/builttypes/store/src/selectors/collection.d.ts +1 -0
  12. package/lib/builttypes/store/src/selectors/communityProject.d.ts +6 -0
  13. package/lib/builttypes/store/src/selectors/contact.d.ts +2 -0
  14. package/lib/builttypes/store/src/selectors/copyNotification.d.ts +6 -0
  15. package/lib/builttypes/store/src/selectors/crud.d.ts +16 -0
  16. package/lib/builttypes/store/src/selectors/document.d.ts +5 -0
  17. package/lib/builttypes/store/src/selectors/drawerNotification.d.ts +9 -0
  18. package/lib/builttypes/store/src/selectors/faq.d.ts +1 -0
  19. package/lib/builttypes/store/src/selectors/garDivision.d.ts +2 -0
  20. package/lib/builttypes/store/src/selectors/group.d.ts +9 -0
  21. package/lib/builttypes/store/src/selectors/level.d.ts +15 -0
  22. package/lib/builttypes/store/src/selectors/lexicalFlower.d.ts +4 -0
  23. package/lib/builttypes/store/src/selectors/mainNotification.d.ts +4 -0
  24. package/lib/builttypes/store/src/selectors/method.d.ts +5 -0
  25. package/lib/builttypes/store/src/selectors/news.d.ts +4 -0
  26. package/lib/builttypes/store/src/selectors/page.d.ts +91 -0
  27. package/lib/builttypes/store/src/selectors/panorama.d.ts +1 -0
  28. package/lib/builttypes/store/src/selectors/premiumResource.d.ts +4 -0
  29. package/lib/builttypes/store/src/selectors/product.d.ts +11 -0
  30. package/lib/builttypes/store/src/selectors/resource.d.ts +4 -0
  31. package/lib/builttypes/store/src/selectors/school.d.ts +6 -0
  32. package/lib/builttypes/store/src/selectors/schoolType.d.ts +12 -0
  33. package/lib/builttypes/store/src/selectors/sharedPage.d.ts +17 -0
  34. package/lib/builttypes/store/src/selectors/student.d.ts +4 -0
  35. package/lib/builttypes/store/src/selectors/subject.d.ts +33 -0
  36. package/lib/builttypes/store/src/selectors/teacher.d.ts +5 -0
  37. package/lib/builttypes/store/src/selectors/tool.d.ts +6 -0
  38. package/lib/builttypes/store/src/selectors/user.d.ts +21 -0
  39. package/lib/index.js +84 -43
  40. package/package.json +3 -3
@@ -0,0 +1,47 @@
1
+ import type { User } from '@lls/store/schema';
2
+ export declare const actionTypes: {
3
+ readonly DELETE_ENTITY: "DELETE_ENTITY";
4
+ readonly UPDATE_ENTITY: "UPDATE_ENTITY";
5
+ readonly SET_ENTITY: "SET_ENTITY";
6
+ readonly SET_ENTITIES: "SET_ENTITIES";
7
+ readonly RESET_AUTH: "RESET_AUTH";
8
+ readonly SET_AUTH: "SET_AUTH";
9
+ };
10
+ export type DeleteEntityPayload = {
11
+ path: string;
12
+ };
13
+ export declare const deleteEntity: (payload?: DeleteEntityPayload | undefined) => {
14
+ type: string;
15
+ payload?: DeleteEntityPayload | undefined;
16
+ };
17
+ export type UpdateEntityPayload = {
18
+ path: string;
19
+ entity: unknown;
20
+ };
21
+ export declare const updateEntity: (payload?: UpdateEntityPayload | undefined) => {
22
+ type: string;
23
+ payload?: UpdateEntityPayload | undefined;
24
+ };
25
+ export type SetEntityPayload = {
26
+ path: string;
27
+ entity: unknown;
28
+ };
29
+ export declare const setEntity: (payload?: unknown) => {
30
+ type: string;
31
+ payload?: unknown;
32
+ };
33
+ export type SetEntitiesPayload = {
34
+ [K: string]: {};
35
+ };
36
+ export declare const setEntities: (payload?: unknown) => {
37
+ type: string;
38
+ payload?: unknown;
39
+ };
40
+ export declare const setAuth: (payload?: User | undefined) => {
41
+ type: string;
42
+ payload?: User | undefined;
43
+ };
44
+ export declare const resetAuth: (payload?: void | undefined) => {
45
+ type: string;
46
+ payload?: void | undefined;
47
+ };
@@ -0,0 +1,37 @@
1
+ export * from '@lls/store/selectors/auth';
2
+ export * from '@lls/store/selectors/school';
3
+ export * from '@lls/store/selectors/book';
4
+ export * from '@lls/store/selectors/user';
5
+ export * from '@lls/store/selectors/chapter';
6
+ export * from '@lls/store/selectors/page';
7
+ export * from '@lls/store/selectors/collection';
8
+ export * from '@lls/store/selectors/communityProject';
9
+ export * from '@lls/store/selectors/contact';
10
+ export * from '@lls/store/selectors/copyNotification';
11
+ export * from '@lls/store/selectors/document';
12
+ export * from '@lls/store/selectors/drawerNotification';
13
+ export * from '@lls/store/selectors/faq';
14
+ export * from '@lls/store/selectors/garDivision';
15
+ export * from '@lls/store/selectors/group';
16
+ export * from '@lls/store/selectors/level';
17
+ export * from '@lls/store/selectors/mainNotification';
18
+ export * from '@lls/store/selectors/news';
19
+ export * from '@lls/store/selectors/panorama';
20
+ export * from '@lls/store/selectors/premiumResource';
21
+ export * from '@lls/store/selectors/lexicalFlower';
22
+ export * from '@lls/store/selectors/product';
23
+ export * from '@lls/store/selectors/resource';
24
+ export * from '@lls/store/selectors/schoolType';
25
+ export * from '@lls/store/selectors/sharedPage';
26
+ export * from '@lls/store/selectors/student';
27
+ export * from '@lls/store/selectors/subject';
28
+ export * from '@lls/store/selectors/teacher';
29
+ export * from '@lls/store/selectors/method';
30
+ export * from '@lls/store/selectors/tool';
31
+ export * from '@lls/store/selectors/builderIo';
32
+ export * from '@lls/store/selectors/circonscription';
33
+ export { makeUseSearch } from '@lls/store/selectors/crud';
34
+ export { default as entitiesReducer, setEntitiesReducer } from '@lls/store/reducers/entities';
35
+ export { default as authReducer } from '@lls/store/reducers/auth';
36
+ export * from '@lls/store/schema';
37
+ export type * from '@lls/store/types/models';
@@ -0,0 +1,28 @@
1
+ declare const auth: (s: {
2
+ id: undefined;
3
+ role: null;
4
+ token: null;
5
+ isStudent: null;
6
+ isTeacher: null;
7
+ isPremium: null;
8
+ userPages: null;
9
+ username: null;
10
+ llsUserId: null;
11
+ }, a: {
12
+ type: "RESET_AUTH";
13
+ payload: undefined;
14
+ } | {
15
+ type: "SET_AUTH";
16
+ payload: unknown;
17
+ }) => {
18
+ id: undefined;
19
+ role: null;
20
+ token: null;
21
+ isStudent: null;
22
+ isTeacher: null;
23
+ isPremium: null;
24
+ userPages: null;
25
+ username: null;
26
+ llsUserId: null;
27
+ };
28
+ export default auth;
@@ -0,0 +1,16 @@
1
+ import type { DeleteEntityPayload, SetEntitiesPayload, SetEntityPayload, UpdateEntityPayload } from '@lls/core/actions/index';
2
+ export declare const setEntitiesReducer: (state: Record<string, any>, payload: SetEntitiesPayload) => Record<string, any>;
3
+ declare const entities: (s: {}, a: {
4
+ type: "DELETE_ENTITY";
5
+ payload: DeleteEntityPayload;
6
+ } | {
7
+ type: "UPDATE_ENTITY";
8
+ payload: UpdateEntityPayload;
9
+ } | {
10
+ type: "SET_ENTITY";
11
+ payload: SetEntityPayload;
12
+ } | {
13
+ type: "SET_ENTITIES";
14
+ payload: SetEntitiesPayload;
15
+ }) => {};
16
+ export default entities;
@@ -0,0 +1,249 @@
1
+ import type { Book as BookModel, BuilderIo as BuilderIoModel, Chapter as ChapterModel, Circonscription as CirconscriptionModel, Collection as CollectionModel, CommunityProject as CommunityProjectModel, DocJson as DocJsonModel, Faq as FaqModel, GarDivision as GarDivisionModel, Group as GroupModel, Level as LevelModel, LexicalFlower as LexicalFlowerModel, Method as MethodModel, News as NewsModel, Notification as NotificationModel, Page as PageModel, Panorama as PanoramaModel, PremiumResource as PremiumResourceModel, Product as ProductModel, Resource as ResourceModel, School as SchoolModel, SchoolType as SchoolTypeModel, Subject as SubjectModel, Tool as ToolModel, User as UserModel } from '@lls/store/types/models';
2
+ import { schema } from 'normalizr';
3
+ type Norm<M, S> = {
4
+ [K in Exclude<keyof M, keyof S>]?: M[K];
5
+ } & {
6
+ [K in keyof S]?: S[K] extends schema.Entity<infer U> ? U extends {
7
+ id?: any;
8
+ } ? Exclude<U['id'], undefined> : number : S[K] extends schema.Entity<infer U>[] ? U extends {
9
+ id?: any;
10
+ } ? Exclude<U['id'], undefined>[] : number[] : never;
11
+ };
12
+ declare const bookSchema: {
13
+ chapters: schema.Entity<any>[];
14
+ collection: schema.Entity<any>;
15
+ firstValidPage: schema.Entity<any>;
16
+ levels: schema.Entity<any>[];
17
+ news: schema.Entity<any>[];
18
+ oldBook: schema.Entity<any>;
19
+ premiumResources: schema.Entity<any>[];
20
+ revisionPages: schema.Entity<any>[];
21
+ subjects: schema.Entity<any>[];
22
+ textbooks: schema.Entity<any>[];
23
+ educationalGuides: schema.Entity<any>[];
24
+ tools: schema.Entity<any>[];
25
+ workbooks: schema.Entity<any>[];
26
+ workplans: schema.Entity<any>[];
27
+ };
28
+ export type Book = Norm<BookModel, typeof bookSchema>;
29
+ declare const garDivisionSchema: {
30
+ students: schema.Entity<any>[];
31
+ school: schema.Entity<any>;
32
+ };
33
+ export type GarDivision = Norm<GarDivisionModel, typeof garDivisionSchema>;
34
+ declare const documentSchema: {
35
+ page: schema.Entity<any>;
36
+ };
37
+ export type Document = Norm<DocJsonModel, typeof documentSchema>;
38
+ export type ExplorerDocument = Document & {
39
+ score: number;
40
+ };
41
+ declare const chapterSchema: {
42
+ book: schema.Entity<any>;
43
+ oldBook: schema.Entity<any>;
44
+ oldChapter: schema.Entity<any>;
45
+ pages: schema.Entity<any>[];
46
+ resources: schema.Entity<any>[];
47
+ };
48
+ export type Chapter = Norm<ChapterModel, typeof chapterSchema>;
49
+ declare const pageSchema: {
50
+ book: schema.Entity<any>;
51
+ chapter: schema.Entity<any>;
52
+ oldBook: schema.Entity<any>;
53
+ oldChapter: schema.Entity<any>;
54
+ oldLesson: schema.Entity<any>;
55
+ originalPage: schema.Entity<any>;
56
+ parent: schema.Entity<any>;
57
+ sharedGroups: schema.Entity<any>[];
58
+ sharedTeacher: schema.Entity<any>;
59
+ sharedUsers: schema.Entity<any>[];
60
+ user: schema.Entity<any>;
61
+ };
62
+ export type Page = Norm<PageModel, typeof pageSchema>;
63
+ declare const userSchema: {
64
+ books: schema.Entity<any>[];
65
+ booksV2: schema.Entity<any>[];
66
+ contacts: schema.Entity<any>[];
67
+ copies: schema.Entity<any>[];
68
+ copyNotifications: schema.Entity<NotificationModel>[];
69
+ drawerNotifications: schema.Entity<NotificationModel>[];
70
+ garDivisions: schema.Entity<any>[];
71
+ groups: schema.Entity<any>[];
72
+ lastBooksViewed: schema.Entity<any>[];
73
+ lastPagesViewed: schema.Entity<any>[];
74
+ levels: schema.Entity<any>[];
75
+ mainNotifications: schema.Entity<NotificationModel>[];
76
+ pages: schema.Entity<any>[];
77
+ schools: schema.Entity<any>[];
78
+ sharedPages: schema.Entity<any>[];
79
+ students: schema.Entity<any>[];
80
+ subjects: schema.Entity<any>[];
81
+ teachers: schema.Entity<any>[];
82
+ userPages: schema.Entity<any>[];
83
+ userBookPages: schema.Entity<any>[];
84
+ lexicalFlowers: {
85
+ hits: schema.Entity<any>[];
86
+ };
87
+ };
88
+ export type User = Norm<UserModel, typeof userSchema>;
89
+ declare const notificationSchema: {
90
+ page: schema.Entity<any>;
91
+ };
92
+ export type Notification = Norm<NotificationModel, typeof notificationSchema>;
93
+ declare const resourceSchema: {
94
+ chapter: schema.Entity<any>;
95
+ page: schema.Entity<any>;
96
+ };
97
+ export type Resource = Norm<ResourceModel, typeof resourceSchema>;
98
+ declare const toolSchema: {
99
+ books: schema.Entity<any>[];
100
+ };
101
+ export type Tool = Norm<ToolModel, typeof toolSchema>;
102
+ declare const sharedPageSchema: {
103
+ user: schema.Entity<any>;
104
+ chapter: schema.Entity<any>;
105
+ parent: schema.Entity<any>;
106
+ book: schema.Entity<any>;
107
+ originalPage: schema.Entity<any>;
108
+ };
109
+ export type SharedPage = Norm<PageModel, typeof sharedPageSchema>;
110
+ declare const studentSchema: {
111
+ levels: schema.Entity<any>[];
112
+ };
113
+ export type Student = Norm<UserModel, typeof studentSchema>;
114
+ declare const teacherSchema: {
115
+ schools: schema.Entity<any>[];
116
+ subjects: schema.Entity<any>[];
117
+ };
118
+ export type Teacher = Norm<UserModel, typeof teacherSchema>;
119
+ declare const productSchema: {
120
+ books: schema.Entity<any>[];
121
+ };
122
+ export type Product = Norm<ProductModel, typeof productSchema>;
123
+ declare const groupSchema: {
124
+ owner: schema.Entity<any>;
125
+ students: schema.Entity<any>[];
126
+ };
127
+ export type Group = Norm<GroupModel, typeof groupSchema>;
128
+ declare const schoolSchema: {
129
+ groups: schema.Entity<any>[];
130
+ };
131
+ export type School = Norm<SchoolModel, typeof schoolSchema>;
132
+ declare const methodSchema: {
133
+ book: schema.Entity<any>;
134
+ };
135
+ export type Method = Norm<MethodModel, typeof methodSchema>;
136
+ declare const newsSchema: {
137
+ books: schema.Entity<any>[];
138
+ subjects: schema.Entity<any>[];
139
+ levels: schema.Entity<any>[];
140
+ };
141
+ export type News = Norm<NewsModel, typeof newsSchema>;
142
+ declare const premiumResourceSchema: {
143
+ book: schema.Entity<any>;
144
+ };
145
+ export type PremiumResource = Norm<PremiumResourceModel, typeof premiumResourceSchema>;
146
+ export declare const querySchema: {
147
+ viewer: {
148
+ addCorrectionsToGroup: schema.Entity<any>;
149
+ addCorrectionsToStudents: schema.Entity<any>;
150
+ addPageAppreciation: schema.Entity<any>;
151
+ addStudentToGroup: schema.Entity<any>;
152
+ books: {
153
+ hits: schema.Entity<any>[];
154
+ };
155
+ methods: {
156
+ hits: schema.Entity<any>[];
157
+ };
158
+ chapters: {
159
+ hits: schema.Entity<any>[];
160
+ };
161
+ createEstimate: schema.Entity<any>;
162
+ createGroup: schema.Entity<any>;
163
+ createPage: schema.Entity<any>;
164
+ createUser: schema.Entity<any>;
165
+ createLexicalFlower: schema.Entity<any>;
166
+ documents: {
167
+ hits: schema.Entity<any>[];
168
+ };
169
+ explorerResults: schema.Entity<any>[];
170
+ levels: schema.Entity<any>[];
171
+ me: schema.Entity<any>;
172
+ pages: {
173
+ hits: schema.Entity<any>[];
174
+ };
175
+ panoramas: schema.Entity<any>[];
176
+ parents: {
177
+ hits: schema.Entity<any>[];
178
+ };
179
+ product: {
180
+ hits: schema.Entity<any>[];
181
+ };
182
+ schoolTypes: {
183
+ hits: schema.Entity<any>[];
184
+ };
185
+ sharePageToGroup: schema.Entity<any>;
186
+ sharePageToUsers: schema.Entity<any>;
187
+ subjects: {
188
+ hits: schema.Entity<any>[];
189
+ };
190
+ updateCopyNotification: schema.Entity<NotificationModel>;
191
+ updateDrawerNotification: schema.Entity<NotificationModel>;
192
+ updateGroup: schema.Entity<any>;
193
+ updateMainNotification: schema.Entity<NotificationModel>;
194
+ updatePage: schema.Entity<any>;
195
+ updateTrialUser: schema.Entity<any>;
196
+ updateUserLastActivitySeenAt: schema.Entity<any>;
197
+ updateUser: schema.Entity<any>;
198
+ updateLexicalFlower: schema.Entity<any>;
199
+ };
200
+ auth: {
201
+ user: schema.Entity<any>;
202
+ };
203
+ marketing: {
204
+ addLikeFaq: schema.Entity<any>;
205
+ communityProjects: schema.Entity<any>[];
206
+ createAnalytics: schema.Entity<any>;
207
+ faq: schema.Entity<any>[];
208
+ builderIos: schema.Entity<any>[];
209
+ circonscriptions: schema.Entity<any>[];
210
+ };
211
+ static: {
212
+ projetVoltaire: {
213
+ grammarRules: schema.Entity<any>[];
214
+ };
215
+ };
216
+ };
217
+ export type CommunityProject = CommunityProjectModel;
218
+ export type Level = LevelModel;
219
+ export type Collection = CollectionModel;
220
+ export type Subject = SubjectModel;
221
+ export type Panorama = PanoramaModel;
222
+ export type Faq = FaqModel;
223
+ export type LexicalFlower = LexicalFlowerModel;
224
+ export type SchoolType = Norm<SchoolTypeModel, {}>;
225
+ export type BuilderIo = BuilderIoModel;
226
+ export type Circonscription = CirconscriptionModel;
227
+ export declare const normalizeData: (...args: any[]) => any;
228
+ export type AdminUser = User & {
229
+ isAdmin: true;
230
+ };
231
+ export type EditorLLSUser = User & {
232
+ isEditorLLS: true;
233
+ };
234
+ export type PremiumUser = User & {
235
+ isPremium: true;
236
+ };
237
+ export type TrialUser = User & {
238
+ isTrial: true;
239
+ };
240
+ export type StudentUser = User & {
241
+ isStudent: true;
242
+ };
243
+ export type TeacherUser = User & {
244
+ isTeacher: true;
245
+ };
246
+ export type AcademicEnabledUser = TeacherUser & {
247
+ academicEnabled: true;
248
+ };
249
+ export {};
@@ -0,0 +1,4 @@
1
+ import type { AuthState } from '@lls/store/types/store';
2
+ export declare const getAuth: (s: AuthState) => AuthState['auth'];
3
+ export declare const getIsLogged: (s: AuthState) => boolean;
4
+ export declare const getToken: (s: AuthState) => string | undefined;
@@ -0,0 +1,108 @@
1
+ import type { Book } from '@lls/store/schema';
2
+ import type { Publisher } from '@lls/store/types/models';
3
+ import type { AllowUndefined } from '@typings/utils';
4
+ type SearchParams = AllowUndefined<Pick<Book, 'isWorkbook' | 'isWorkplan' | 'hasNewDesign' | 'isRenewed' | 'isPrimary'> & {
5
+ ids: Book['id'][];
6
+ levelIds?: Book['levels'];
7
+ subjectIds?: Book['subjects'];
8
+ years?: Book['year'][];
9
+ slugs?: Book['slug'][];
10
+ uris?: Book['uri'][];
11
+ isValid?: Book['valid'];
12
+ hasNoTeacherBook?: boolean;
13
+ sortByQuery?: ((a: Book[]) => Book[]) | keyof Book;
14
+ publishers?: Publisher[];
15
+ }>;
16
+ declare const getBooks: (state: import("@lls/utils").TState<Book>) => Book[], getBook: (state: import("@lls/utils").TState<Book>, entityId: number | string | undefined | null) => Book | undefined, filterBooks: ({ ids, levelIds, subjectIds, years, isValid, isWorkbook, isWorkplan, hasNoTeacherBook, sortByQuery, hasNewDesign, slugs, uris, publishers, isRenewed, isPrimary }: SearchParams) => ((books: Book[]) => Book[]), useSearchBooks: (params: {
17
+ isWorkplan?: boolean | undefined;
18
+ isWorkbook?: boolean | undefined;
19
+ hasNewDesign?: boolean | undefined;
20
+ isRenewed?: boolean | undefined;
21
+ isPrimary?: boolean | undefined;
22
+ ids?: (number | undefined)[] | undefined;
23
+ levelIds?: any[] | (number | undefined)[] | undefined;
24
+ subjectIds?: any[] | (number | undefined)[] | undefined;
25
+ years?: Book["year"][] | undefined;
26
+ slugs?: Book["slug"][] | undefined;
27
+ uris?: Book["uri"][] | undefined;
28
+ isValid?: Book["valid"];
29
+ hasNoTeacherBook?: boolean | undefined;
30
+ sortByQuery?: "filters" | "id" | "subjects" | "levels" | "tools" | "chapters" | "news" | "premiumResources" | "collection" | "firstValidPage" | "oldBook" | "revisionPages" | "textbooks" | "educationalGuides" | "workbooks" | "workplans" | "uri" | "valid" | "year" | "displayTitle" | "renderer" | "resourcesMenu" | "renewalLabel" | "urlLite" | "isWorkplan" | "isWorkbook" | "isEducationalGuide" | "hasNewDesign" | "slug" | "publisher" | "isRenewed" | "isPrimary" | "isClassic" | "nbContributors" | "teaser" | "summary" | "teacherBook" | "url" | "hasNoTeacherBook" | {} | undefined;
31
+ publishers?: (string | undefined)[] | undefined;
32
+ }) => Book[], makeSearchBooks: () => ((state: import("../types/store").EntitiesState, params: {
33
+ isWorkplan?: boolean | undefined;
34
+ isWorkbook?: boolean | undefined;
35
+ hasNewDesign?: boolean | undefined;
36
+ isRenewed?: boolean | undefined;
37
+ isPrimary?: boolean | undefined;
38
+ ids?: (number | undefined)[] | undefined;
39
+ levelIds?: any[] | (number | undefined)[] | undefined;
40
+ subjectIds?: any[] | (number | undefined)[] | undefined;
41
+ years?: Book["year"][] | undefined;
42
+ slugs?: Book["slug"][] | undefined;
43
+ uris?: Book["uri"][] | undefined;
44
+ isValid?: Book["valid"];
45
+ hasNoTeacherBook?: boolean | undefined;
46
+ sortByQuery?: "filters" | "id" | "subjects" | "levels" | "tools" | "chapters" | "news" | "premiumResources" | "collection" | "firstValidPage" | "oldBook" | "revisionPages" | "textbooks" | "educationalGuides" | "workbooks" | "workplans" | "uri" | "valid" | "year" | "displayTitle" | "renderer" | "resourcesMenu" | "renewalLabel" | "urlLite" | "isWorkplan" | "isWorkbook" | "isEducationalGuide" | "hasNewDesign" | "slug" | "publisher" | "isRenewed" | "isPrimary" | "isClassic" | "nbContributors" | "teaser" | "summary" | "teacherBook" | "url" | "hasNoTeacherBook" | {} | undefined;
47
+ publishers?: (string | undefined)[] | undefined;
48
+ }) => Book[]) & import("reselect").OutputSelectorFields<(args_0: Book[], args_1: {
49
+ isWorkplan?: boolean | undefined;
50
+ isWorkbook?: boolean | undefined;
51
+ hasNewDesign?: boolean | undefined;
52
+ isRenewed?: boolean | undefined;
53
+ isPrimary?: boolean | undefined;
54
+ ids?: (number | undefined)[] | undefined;
55
+ levelIds?: any[] | (number | undefined)[] | undefined;
56
+ subjectIds?: any[] | (number | undefined)[] | undefined;
57
+ years?: Book["year"][] | undefined;
58
+ slugs?: Book["slug"][] | undefined;
59
+ uris?: Book["uri"][] | undefined;
60
+ isValid?: Book["valid"];
61
+ hasNoTeacherBook?: boolean | undefined;
62
+ sortByQuery?: "filters" | "id" | "subjects" | "levels" | "tools" | "chapters" | "news" | "premiumResources" | "collection" | "firstValidPage" | "oldBook" | "revisionPages" | "textbooks" | "educationalGuides" | "workbooks" | "workplans" | "uri" | "valid" | "year" | "displayTitle" | "renderer" | "resourcesMenu" | "renewalLabel" | "urlLite" | "isWorkplan" | "isWorkbook" | "isEducationalGuide" | "hasNewDesign" | "slug" | "publisher" | "isRenewed" | "isPrimary" | "isClassic" | "nbContributors" | "teaser" | "summary" | "teacherBook" | "url" | "hasNoTeacherBook" | {} | undefined;
63
+ publishers?: (string | undefined)[] | undefined;
64
+ }) => Book[], {
65
+ clearCache: () => void;
66
+ }> & {
67
+ clearCache: () => void;
68
+ };
69
+ export { getBooks, getBook, filterBooks, useSearchBooks, makeSearchBooks };
70
+ export declare const makeSearchValidBooks: () => ((state: import("../types/store").EntitiesState, params: {
71
+ isWorkplan?: boolean | undefined;
72
+ isWorkbook?: boolean | undefined;
73
+ hasNewDesign?: boolean | undefined;
74
+ isRenewed?: boolean | undefined;
75
+ isPrimary?: boolean | undefined;
76
+ ids?: (number | undefined)[] | undefined;
77
+ levelIds?: any[] | (number | undefined)[] | undefined;
78
+ subjectIds?: any[] | (number | undefined)[] | undefined;
79
+ years?: Book["year"][] | undefined;
80
+ slugs?: Book["slug"][] | undefined;
81
+ uris?: Book["uri"][] | undefined;
82
+ isValid?: Book["valid"];
83
+ hasNoTeacherBook?: boolean | undefined;
84
+ sortByQuery?: "filters" | "id" | "subjects" | "levels" | "tools" | "chapters" | "news" | "premiumResources" | "collection" | "firstValidPage" | "oldBook" | "revisionPages" | "textbooks" | "educationalGuides" | "workbooks" | "workplans" | "uri" | "valid" | "year" | "displayTitle" | "renderer" | "resourcesMenu" | "renewalLabel" | "urlLite" | "isWorkplan" | "isWorkbook" | "isEducationalGuide" | "hasNewDesign" | "slug" | "publisher" | "isRenewed" | "isPrimary" | "isClassic" | "nbContributors" | "teaser" | "summary" | "teacherBook" | "url" | "hasNoTeacherBook" | {} | undefined;
85
+ publishers?: (string | undefined)[] | undefined;
86
+ }) => Book[]) & import("reselect").OutputSelectorFields<(args_0: Book[]) => Book[], {
87
+ clearCache: () => void;
88
+ }> & {
89
+ clearCache: () => void;
90
+ };
91
+ export declare const useSearchValidBooks: (params: {
92
+ isWorkplan?: boolean | undefined;
93
+ isWorkbook?: boolean | undefined;
94
+ hasNewDesign?: boolean | undefined;
95
+ isRenewed?: boolean | undefined;
96
+ isPrimary?: boolean | undefined;
97
+ ids?: (number | undefined)[] | undefined;
98
+ levelIds?: any[] | (number | undefined)[] | undefined;
99
+ subjectIds?: any[] | (number | undefined)[] | undefined;
100
+ years?: Book["year"][] | undefined;
101
+ slugs?: Book["slug"][] | undefined;
102
+ uris?: Book["uri"][] | undefined;
103
+ isValid?: Book["valid"];
104
+ hasNoTeacherBook?: boolean | undefined;
105
+ sortByQuery?: "filters" | "id" | "subjects" | "levels" | "tools" | "chapters" | "news" | "premiumResources" | "collection" | "firstValidPage" | "oldBook" | "revisionPages" | "textbooks" | "educationalGuides" | "workbooks" | "workplans" | "uri" | "valid" | "year" | "displayTitle" | "renderer" | "resourcesMenu" | "renewalLabel" | "urlLite" | "isWorkplan" | "isWorkbook" | "isEducationalGuide" | "hasNewDesign" | "slug" | "publisher" | "isRenewed" | "isPrimary" | "isClassic" | "nbContributors" | "teaser" | "summary" | "teacherBook" | "url" | "hasNoTeacherBook" | {} | undefined;
106
+ publishers?: (string | undefined)[] | undefined;
107
+ }) => Book[];
108
+ export declare const makeGetBook: () => (state: import("@lls/utils").TState<Book>, entityId: number | string | undefined | null) => Book | undefined;
@@ -0,0 +1,5 @@
1
+ export declare const getBuilderIos: (state: import("@lls/utils").TState<import("../types/models").BuilderIo>) => import("../types/models").BuilderIo[], getBuilderIo: (state: import("@lls/utils").TState<import("../types/models").BuilderIo>, entityId: number | string | undefined | null) => import("../types/models").BuilderIo | undefined, useSearchBuilderIos: (params: {
2
+ modelIds?: (string | undefined)[] | undefined;
3
+ subjects?: ("Design et métiers d'art" | "Langues et cultures de l'Antiquité" | "Littérature, langues et cultures de l'Antiquité" | "Sciences de l'ingénieur" | "Support à l'action managériale" | "Allemand" | "Anglais" | "Arts appliqués et culture artistique" | "Arts plastiques" | "Arts" | "Autre enseignement professionnel" | "Autre" | "Biochimie-Biologie" | "Biologie et physiopathologie humaines" | "Biologie-Écologie" | "Biotechnologies" | "Bâtiment" | "CEJM" | "Chinois" | "Commerce international" | "Communication" | "Comptabilité" | "Conjugaison" | "Culture générale et expression" | "Documentation" | "Droit" | "Economie et Gestion" | "Enseignement Scientifique" | "Enseignement scientifique" | "Enseignements spécifiques STL" | "Espagnol" | "Français" | "Gestion administrative" | "Gestion commerciale" | "Gestion de la PME" | "Gestion" | "Grammaire" | "Géographie" | "Histoire des Arts" | "Histoire" | "Histoire-Géographie, géopolitique et sciences politiques" | "Histoire-Géographie-EMC" | "Humanités, littérature et philosophie" | "Hôtellerie restauration" | "Informatique" | "Ingénierie et développement durable" | "Innovation technologique" | "Italien" | "Langue vivante rare" | "Langues, littératures et cultures étrangères et régionales" | "Logistique" | "Maintenance" | "Management commercial opérationnel" | "Management" | "Mathématiques" | "Mercatique" | "Mécanique" | "Numérique et sciences informatiques" | "Négociation et relation client" | "Orthographe" | "Outils et langages numériques" | "PSE" | "Philosophie" | "Physique-Chimie pour la santé" | "Physique-Chimie" | "Prévention Santé Environnement" | "Relation client" | "SES" | "SNT" | "SVT" | "Sciences appliquées" | "Sciences de gestion et numérique" | "Sciences de la vie et de la Terre" | "Sciences et Technologie" | "Sciences et techniques sanitaires et sociales" | "Sciences numériques et technologie" | "Sciences physiques et chimiques en laboratoire" | "Sciences physiques" | "Sciences économiques et sociales" | "Sciences" | "Technologie" | "Transport" | "Économie et gestion hôtellière" | "Économie" | "Économie-Droit" | "Économie-Gestion" | "Éducation civique" | "Éducation musicale" | "All" | null | undefined)[] | undefined;
4
+ schoolTypes?: (string | undefined)[] | undefined;
5
+ }) => import("../types/models").BuilderIo[];
@@ -0,0 +1,7 @@
1
+ import type { Chapter } from '@lls/store/schema';
2
+ export declare const getChapters: (state: import("@lls/utils").TState<Chapter>) => Chapter[], getChapter: (state: import("@lls/utils").TState<Chapter>, entityId: number | string | undefined | null) => Chapter | undefined, useSearchChapters: (params: {
3
+ ids?: Chapter["id"][] | undefined;
4
+ bookIds?: Chapter["book"][] | undefined;
5
+ hasTeacherBook?: boolean | undefined;
6
+ sortByQuery?: "id" | "pages" | "resources" | "oldBook" | "valid" | "teaser" | "teacherBook" | "book" | "oldChapter" | "numShow" | "releaseVersion" | "title" | "teacherDoc" | "audios" | {} | undefined;
7
+ }) => Chapter[];
@@ -0,0 +1 @@
1
+ export declare const getCirconscriptions: (state: import("@lls/utils/index").TState<import("../types/models").Circonscription>) => import("../types/models").Circonscription[];
@@ -0,0 +1 @@
1
+ export declare const getCollections: (state: import("@lls/utils/index").TState<import("../types/models").Collection>) => import("../types/models").Collection[], getCollection: (state: import("@lls/utils/index").TState<import("../types/models").Collection>, entityId: number | string | undefined | null) => import("../types/models").Collection | undefined, useSearchCollections: (params: {}) => import("../types/models").Collection[];
@@ -0,0 +1,6 @@
1
+ import type { CommunityProject } from '@lls/store/types/models';
2
+ export declare const getCommunityProjects: (state: import("@lls/utils").TState<CommunityProject>) => CommunityProject[], getCommunityProject: (state: import("@lls/utils").TState<CommunityProject>, entityId: number | string | undefined | null) => CommunityProject | undefined, useSearchCommunityProjects: (params: {
3
+ slugs?: (string | undefined)[] | undefined;
4
+ isFeatured?: boolean | undefined;
5
+ projectTypes?: ("Communauté" | "Numérique" | "Editorial" | undefined)[] | undefined;
6
+ }) => CommunityProject[];
@@ -0,0 +1,2 @@
1
+ import type { Contact } from '@lls/store/types/models';
2
+ export declare const getContacts: (state: import("@lls/utils/index").TState<Contact>) => Contact[], getContact: (state: import("@lls/utils/index").TState<Contact>, entityId: number | string | undefined | null) => Contact | undefined, useSearchContacts: (params: {}) => Contact[];
@@ -0,0 +1,6 @@
1
+ import type { Notification, Page } from '@lls/store/schema';
2
+ export declare const useSearchCopyNotifications: (params: {
3
+ read?: boolean | undefined;
4
+ ids?: (string | undefined)[] | undefined;
5
+ pageIds?: Page["id"][] | undefined;
6
+ }) => Notification[];
@@ -0,0 +1,16 @@
1
+ import type { EntitiesState } from '@lls/store/types/store';
2
+ import type { OutputSelectorFields } from 'reselect';
3
+ type GetMethodName<T> = T extends `${infer U}s` ? Capitalize<U> : never;
4
+ export declare const crud: <EntityName extends string, Search extends (...args: any) => any>(entityName: EntityName, { search }: {
5
+ search: Search;
6
+ }) => Record<`get${GetMethodName<EntityName>}s`, (state: import("@lls/utils").TState<ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never>) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[]> & Record<`get${GetMethodName<EntityName>}`, (state: import("@lls/utils").TState<ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never>, entityId: number | string | undefined | null) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never) | undefined> & Record<`makeSearch${GetMethodName<EntityName>}s`, () => ((state: EntitiesState, params: Parameters<Search>[0]) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[]) & OutputSelectorFields<(args_0: (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[], args_1: Parameters<Search>[0]) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[], {
7
+ clearCache: () => void;
8
+ }> & {
9
+ clearCache: () => void;
10
+ }> & Record<`search${GetMethodName<EntityName>}s`, ((state: EntitiesState, params: Parameters<Search>[0]) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[]) & OutputSelectorFields<(args_0: (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[], args_1: Parameters<Search>[0]) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[], {
11
+ clearCache: () => void;
12
+ }> & {
13
+ clearCache: () => void;
14
+ }> & Record<`filter${GetMethodName<EntityName>}s`, Search> & Record<`useSearch${GetMethodName<EntityName>}s`, (params: Parameters<Search>[0]) => (ReturnType<ReturnType<Search>> extends (infer U)[] ? U : never)[]>;
15
+ export declare const makeUseSearch: <SearchParams, T, State = EntitiesState>(makeSearchElements: () => (state: State, params: SearchParams) => T[]) => ((params: SearchParams) => T[]);
16
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { ExplorerDocument } from '@lls/store/schema';
2
+ export declare const useSearchDocuments: (params: {
3
+ ids?: ExplorerDocument["id"];
4
+ resourceIds?: (string | undefined)[] | undefined;
5
+ }) => ExplorerDocument[];
@@ -0,0 +1,9 @@
1
+ import type { Notification, Page } from '@lls/store/schema';
2
+ import type { EntitiesState } from '@lls/store/types/store';
3
+ import type { Selector } from 'reselect';
4
+ export declare const makeSearchDrawerNotifications: () => Selector<EntitiesState, Notification[]>;
5
+ export declare const useSearchDrawerNotifications: (params: {
6
+ read?: boolean | undefined;
7
+ ids?: (string | undefined)[] | undefined;
8
+ pageIds?: Page["id"][] | undefined;
9
+ }) => Notification[];
@@ -0,0 +1 @@
1
+ export declare const getFaqs: (state: import("@lls/utils").TState<import("../types/models").Faq>) => import("../types/models").Faq[];
@@ -0,0 +1,2 @@
1
+ import type { GarDivision } from '@lls/store/types/models';
2
+ export declare const getGarDivisions: (state: import("@lls/utils/index").TState<GarDivision>) => GarDivision[], getGarDivision: (state: import("@lls/utils/index").TState<GarDivision>, entityId: number | string | undefined | null) => GarDivision | undefined, useSearchGarDivisions: (params: {}) => GarDivision[];
@@ -0,0 +1,9 @@
1
+ import type { Group, User } from '@lls/store/schema';
2
+ export declare const getGroups: (state: import("@lls/utils").TState<Group>) => Group[], getGroup: (state: import("@lls/utils").TState<Group>, entityId: number | string | undefined | null) => Group | undefined, useSearchGroups: (params: {
3
+ ownerIds?: Group["owner"][] | undefined;
4
+ }) => Group[];
5
+ export declare const getUserGroups: ((state: import("@lls/utils").TState<Group> & import("../types/store").AuthState & import("@lls/utils").TState<User>) => Group[]) & import("reselect").OutputSelectorFields<(args_0: Group[], args_1: User | undefined) => Group[], {
6
+ clearCache: () => void;
7
+ }> & {
8
+ clearCache: () => void;
9
+ };
@@ -0,0 +1,15 @@
1
+ export declare const getLevel: (state: import("@lls/utils").TState<import("../types/models").Level>, entityId: number | string | undefined | null) => import("../types/models").Level | undefined, useSearchLevels: (params: {
2
+ ids?: (number | undefined)[] | undefined;
3
+ slugs?: (string | undefined)[] | undefined;
4
+ isPreSchool?: boolean | undefined;
5
+ isMiddleSchool?: boolean | undefined;
6
+ isHighSchool?: boolean | undefined;
7
+ isProHighSchool?: boolean | undefined;
8
+ isGenHighSchool?: boolean | undefined;
9
+ isElementarySchool?: boolean | undefined;
10
+ }) => import("../types/models").Level[];
11
+ export declare const getLevels: ((state: import("@lls/utils").TState<import("../types/models").Level>) => object[]) & import("reselect").OutputSelectorFields<(args_0: import("../types/models").Level[]) => object[], {
12
+ clearCache: () => void;
13
+ }> & {
14
+ clearCache: () => void;
15
+ };
@@ -0,0 +1,4 @@
1
+ import type { LexicalFlower } from '@lls/store/schema';
2
+ export declare const getLexicalFlowers: (state: import("@lls/utils").TState<import("../types/models").LexicalFlower>) => import("../types/models").LexicalFlower[], useSearchLexicalFlowers: (params: {
3
+ ids?: LexicalFlower["id"][] | undefined;
4
+ }) => import("../types/models").LexicalFlower[];
@@ -0,0 +1,4 @@
1
+ import type { Notification } from '@lls/store/schema';
2
+ import type { AuthState, EntitiesState } from '@lls/store/types/store';
3
+ import type { Selector } from 'reselect';
4
+ export declare const getMainNotifications: Selector<EntitiesState & AuthState, Notification[]>;
@@ -0,0 +1,5 @@
1
+ import type { Method } from '@lls/store/types/models';
2
+ export declare const getMethods: (state: import("@lls/utils").TState<Method>) => Method[], useSearchMethods: (params: {
3
+ ids?: (number | undefined)[] | undefined;
4
+ uris?: (string | undefined)[] | undefined;
5
+ }) => Method[];
@@ -0,0 +1,4 @@
1
+ import type { News } from '@lls/store/types/models';
2
+ export declare const getAllNews: (state: import("@lls/utils").TState<News>) => News[], getNews: (state: import("@lls/utils").TState<News>, entityId: number | string | undefined | null) => News | undefined, useSearchNews: (params: {
3
+ ids?: (number | undefined)[] | undefined;
4
+ }) => News[];
@@ -0,0 +1,91 @@
1
+ import type { Page } from '@lls/store/schema';
2
+ import type { AllowUndefined } from '@lls/store/types/utils';
3
+ type SearchParams = AllowUndefined<Pick<Page, 'isOriginal' | 'hasNewDesign' | 'premium' | 'isCreatedFromScratch' | 'isLearningAssessment'> & {
4
+ ids: Page['id'][];
5
+ chapterIds?: Page['chapter'][];
6
+ isValid: Page['valid'];
7
+ slugs: Page['slug'][];
8
+ oldLessonIds?: Page['oldLesson'][];
9
+ bookIds?: Page['book'][];
10
+ thematicNames: Page['thematicName'][];
11
+ sortByQuery?: (a: Page[]) => Page[] | keyof Page;
12
+ }>;
13
+ export declare const getPages: (state: import("@lls/utils").TState<Page>) => Page[], getPage: (state: import("@lls/utils").TState<Page>, entityId: number | string | undefined | null) => Page | undefined, filterPages: ({ ids, chapterIds, isValid, oldLessonIds, premium, thematicNames, bookIds, isOriginal, hasNewDesign, slugs, isLearningAssessment, isCreatedFromScratch, userIds, parentIds, originalPageIds, sharedUserIds, sharedGroups, isDraft, isParentCreatedFromScratch, updatedAfter, sortByQuery }: SearchParams & SearchModifiedPagesParams) => ((pages: Page[]) => Page[]), useSearchPages: (params: {
14
+ hasNewDesign?: boolean | undefined;
15
+ premium?: boolean | null | undefined;
16
+ isOriginal?: boolean | undefined;
17
+ isCreatedFromScratch?: boolean | undefined;
18
+ isLearningAssessment?: boolean | undefined;
19
+ ids?: (number | undefined)[] | undefined;
20
+ chapterIds?: Page["chapter"][] | undefined;
21
+ isValid?: Page["valid"];
22
+ slugs?: (string | undefined)[] | undefined;
23
+ oldLessonIds?: Page["oldLesson"][] | undefined;
24
+ bookIds?: Page["book"][] | undefined;
25
+ thematicNames?: (string | undefined)[] | undefined;
26
+ sortByQuery?: {} | undefined;
27
+ } & SearchModifiedPagesParams) => Page[], makeSearchPages: () => ((state: import("../types/store").EntitiesState, params: {
28
+ hasNewDesign?: boolean | undefined;
29
+ premium?: boolean | null | undefined;
30
+ isOriginal?: boolean | undefined;
31
+ isCreatedFromScratch?: boolean | undefined;
32
+ isLearningAssessment?: boolean | undefined;
33
+ ids?: (number | undefined)[] | undefined;
34
+ chapterIds?: Page["chapter"][] | undefined;
35
+ isValid?: Page["valid"];
36
+ slugs?: (string | undefined)[] | undefined;
37
+ oldLessonIds?: Page["oldLesson"][] | undefined;
38
+ bookIds?: Page["book"][] | undefined;
39
+ thematicNames?: (string | undefined)[] | undefined;
40
+ sortByQuery?: {} | undefined;
41
+ } & SearchModifiedPagesParams) => Page[]) & import("reselect").OutputSelectorFields<(args_0: Page[], args_1: {
42
+ hasNewDesign?: boolean | undefined;
43
+ premium?: boolean | null | undefined;
44
+ isOriginal?: boolean | undefined;
45
+ isCreatedFromScratch?: boolean | undefined;
46
+ isLearningAssessment?: boolean | undefined;
47
+ ids?: (number | undefined)[] | undefined;
48
+ chapterIds?: Page["chapter"][] | undefined;
49
+ isValid?: Page["valid"];
50
+ slugs?: (string | undefined)[] | undefined;
51
+ oldLessonIds?: Page["oldLesson"][] | undefined;
52
+ bookIds?: Page["book"][] | undefined;
53
+ thematicNames?: (string | undefined)[] | undefined;
54
+ sortByQuery?: {} | undefined;
55
+ } & SearchModifiedPagesParams) => Page[], {
56
+ clearCache: () => void;
57
+ }> & {
58
+ clearCache: () => void;
59
+ };
60
+ export declare const getDrafts: (state: import("@lls/utils").TState<Page>) => Page[], getDraft: (state: import("@lls/utils").TState<Page>, entityId: number | string | undefined | null) => Page | undefined, useSearchDrafts: (params: {
61
+ hasNewDesign?: boolean | undefined;
62
+ premium?: boolean | null | undefined;
63
+ isOriginal?: boolean | undefined;
64
+ isCreatedFromScratch?: boolean | undefined;
65
+ isLearningAssessment?: boolean | undefined;
66
+ ids?: (number | undefined)[] | undefined;
67
+ chapterIds?: Page["chapter"][] | undefined;
68
+ isValid?: Page["valid"];
69
+ slugs?: (string | undefined)[] | undefined;
70
+ oldLessonIds?: Page["oldLesson"][] | undefined;
71
+ bookIds?: Page["book"][] | undefined;
72
+ thematicNames?: (string | undefined)[] | undefined;
73
+ sortByQuery?: {} | undefined;
74
+ } & SearchModifiedPagesParams) => Page[];
75
+ type SearchModifiedPagesParams = {
76
+ chapterIds?: Page['chapter'][];
77
+ userIds?: Page['user'][];
78
+ originalPageIds?: Page['originalPage'][];
79
+ parentIds?: Page['parent'][];
80
+ bookIds?: Page['book'][];
81
+ sharedUserIds?: Page['sharedUsers'];
82
+ updatedAfter?: Date;
83
+ isLearningAssessment?: Page['isLearningAssessment'];
84
+ thematicNames?: Page['thematicName'][];
85
+ isDraft?: Page['isDraft'];
86
+ isCreatedFromScratch?: Page['isCreatedFromScratch'];
87
+ isParentCreatedFromScratch?: Page['isCreatedFromScratch'];
88
+ sharedGroups?: Page['sharedGroups'];
89
+ };
90
+ export declare const useSearchModifiedPages: (params: SearchModifiedPagesParams) => Page[];
91
+ export {};
@@ -0,0 +1 @@
1
+ export declare const getPanorama: (state: import("@lls/utils").TState<import("../types/models").Panorama>, entityId: number | string | undefined | null) => import("../types/models").Panorama | undefined;
@@ -0,0 +1,4 @@
1
+ import type { PremiumResource } from '@lls/store/schema';
2
+ export declare const getPremiumResources: (state: import("@lls/utils").TState<PremiumResource>) => PremiumResource[], getPremiumResource: (state: import("@lls/utils").TState<PremiumResource>, entityId: number | string | undefined | null) => PremiumResource | undefined, useSearchPremiumResources: (params: {
3
+ bookIds?: PremiumResource["id"][] | undefined;
4
+ }) => PremiumResource[];
@@ -0,0 +1,11 @@
1
+ import type { Product } from '@lls/store/schema';
2
+ export declare const getProducts: (state: import("@lls/utils").TState<Product>) => Product[];
3
+ export declare const useSearchProducts: (params: {
4
+ ids?: (string | undefined)[] | undefined;
5
+ eans?: (string | undefined)[] | undefined;
6
+ isAdoptant?: Product["isAdoptant"];
7
+ isSupportPlus?: Product["isSupportPlus"];
8
+ levelIds?: (number | undefined)[] | undefined;
9
+ subjectIds?: (number | undefined)[] | undefined;
10
+ productTypes?: (string | undefined)[] | undefined;
11
+ }) => Product[];
@@ -0,0 +1,4 @@
1
+ import type { Resource } from '@lls/store/schema';
2
+ export declare const getResources: (state: import("@lls/utils").TState<Resource>) => Resource[], getResource: (state: import("@lls/utils").TState<Resource>, entityId: number | string | undefined | null) => Resource | undefined, useSearchResources: (params: {
3
+ chapterIds?: (number | undefined)[] | undefined;
4
+ }) => Resource[];
@@ -0,0 +1,6 @@
1
+ import type { School } from '@lls/store/schema';
2
+ export declare const getSchools: (state: import("@lls/utils").TState<School>) => School[], getSchool: (state: import("@lls/utils").TState<School>, entityId: number | string | undefined | null) => School | undefined, useSearchSchools: (params: {
3
+ ids?: School["id"][] | undefined;
4
+ academyIds?: (number | undefined)[] | undefined;
5
+ sortByQuery?: "id" | "groups" | "name" | "city" | "prefix" | "rne" | "department" | "academy" | {} | undefined;
6
+ }) => School[];
@@ -0,0 +1,12 @@
1
+ import type { SchoolType } from '@lls/store/types/models';
2
+ export declare const getSchoolTypes: (state: import("@lls/utils").TState<SchoolType>) => SchoolType[], getSchoolType: (state: import("@lls/utils").TState<SchoolType>, entityId: number | string | undefined | null) => SchoolType | undefined, useSearchSchoolTypes: (params: {
3
+ slugs?: SchoolType["slug"][] | undefined;
4
+ }) => SchoolType[], makeSearchSchoolTypes: () => ((state: import("../types/store").EntitiesState, params: {
5
+ slugs?: SchoolType["slug"][] | undefined;
6
+ }) => SchoolType[]) & import("reselect").OutputSelectorFields<(args_0: SchoolType[], args_1: {
7
+ slugs?: SchoolType["slug"][] | undefined;
8
+ }) => SchoolType[], {
9
+ clearCache: () => void;
10
+ }> & {
11
+ clearCache: () => void;
12
+ };
@@ -0,0 +1,17 @@
1
+ import type { Book, Page, SharedPage, User } from '@lls/store/schema';
2
+ export declare const getSharedPages: (state: import("@lls/utils").TState<SharedPage>) => SharedPage[], getSharedPage: (state: import("@lls/utils").TState<SharedPage>, entityId: number | string | undefined | null) => SharedPage | undefined, useSearchSharedPages: (params: {
3
+ ids?: (number | undefined)[] | undefined;
4
+ parentIds?: Page["id"][] | undefined;
5
+ userIds?: User["id"][] | undefined;
6
+ bookIds?: Book["id"][] | undefined;
7
+ isCreatedFromScratch?: boolean | undefined;
8
+ isLearningAssessment?: boolean | undefined;
9
+ }) => SharedPage[];
10
+ export declare const useSearchCurrentUserSharedPages: (params: {
11
+ ids?: (number | undefined)[] | undefined;
12
+ parentIds?: Page["id"][] | undefined;
13
+ userIds?: User["id"][] | undefined;
14
+ bookIds?: Book["id"][] | undefined;
15
+ isCreatedFromScratch?: boolean | undefined;
16
+ isLearningAssessment?: boolean | undefined;
17
+ }) => SharedPage[];
@@ -0,0 +1,4 @@
1
+ import type { Student } from '@lls/store/schema';
2
+ export declare const getStudents: (state: import("@lls/utils").TState<Student>) => Student[], getStudent: (state: import("@lls/utils").TState<Student>, entityId: number | string | undefined | null) => Student | undefined, useSearchStudents: (params: {
3
+ ids?: (number | undefined)[] | undefined;
4
+ }) => Student[];
@@ -0,0 +1,33 @@
1
+ import type { Subject } from '@lls/store/types/models';
2
+ export declare const getSubjects: (state: import("@lls/utils").TState<Subject>) => Subject[], getSubject: (state: import("@lls/utils").TState<Subject>, entityId: number | string | undefined | null) => Subject | undefined, useSearchSubjects: (params: {
3
+ ids?: Subject["id"][] | undefined;
4
+ slugs?: Subject["slug"][] | undefined;
5
+ isTeacherSubject?: boolean | undefined;
6
+ hasNewsletterUrl?: boolean | undefined;
7
+ schoolTypes?: (string | undefined)[] | undefined;
8
+ hasBooks?: Subject["hasBooks"];
9
+ names?: ("Design et métiers d'art" | "Langues et cultures de l'Antiquité" | "Littérature, langues et cultures de l'Antiquité" | "Sciences de l'ingénieur" | "Support à l'action managériale" | "Allemand" | "Anglais" | "Arts appliqués et culture artistique" | "Arts plastiques" | "Arts" | "Autre enseignement professionnel" | "Autre" | "Biochimie-Biologie" | "Biologie et physiopathologie humaines" | "Biologie-Écologie" | "Biotechnologies" | "Bâtiment" | "CEJM" | "Chinois" | "Commerce international" | "Communication" | "Comptabilité" | "Conjugaison" | "Culture générale et expression" | "Documentation" | "Droit" | "Economie et Gestion" | "Enseignement Scientifique" | "Enseignement scientifique" | "Enseignements spécifiques STL" | "Espagnol" | "Français" | "Gestion administrative" | "Gestion commerciale" | "Gestion de la PME" | "Gestion" | "Grammaire" | "Géographie" | "Histoire des Arts" | "Histoire" | "Histoire-Géographie, géopolitique et sciences politiques" | "Histoire-Géographie-EMC" | "Humanités, littérature et philosophie" | "Hôtellerie restauration" | "Informatique" | "Ingénierie et développement durable" | "Innovation technologique" | "Italien" | "Langue vivante rare" | "Langues, littératures et cultures étrangères et régionales" | "Logistique" | "Maintenance" | "Management commercial opérationnel" | "Management" | "Mathématiques" | "Mercatique" | "Mécanique" | "Numérique et sciences informatiques" | "Négociation et relation client" | "Orthographe" | "Outils et langages numériques" | "PSE" | "Philosophie" | "Physique-Chimie pour la santé" | "Physique-Chimie" | "Prévention Santé Environnement" | "Relation client" | "SES" | "SNT" | "SVT" | "Sciences appliquées" | "Sciences de gestion et numérique" | "Sciences de la vie et de la Terre" | "Sciences et Technologie" | "Sciences et techniques sanitaires et sociales" | "Sciences numériques et technologie" | "Sciences physiques et chimiques en laboratoire" | "Sciences physiques" | "Sciences économiques et sociales" | "Sciences" | "Technologie" | "Transport" | "Économie et gestion hôtellière" | "Économie" | "Économie-Droit" | "Économie-Gestion" | "Éducation civique" | "Éducation musicale" | null | undefined)[] | undefined;
10
+ sortByQuery?: "id" | "schoolTypes" | "slug" | "url" | "code" | "name" | "hasBooks" | "newsletterUrl" | "tags" | {} | undefined;
11
+ }) => Subject[], makeSearchSubjects: () => ((state: import("../types/store").EntitiesState, params: {
12
+ ids?: Subject["id"][] | undefined;
13
+ slugs?: Subject["slug"][] | undefined;
14
+ isTeacherSubject?: boolean | undefined;
15
+ hasNewsletterUrl?: boolean | undefined;
16
+ schoolTypes?: (string | undefined)[] | undefined;
17
+ hasBooks?: Subject["hasBooks"];
18
+ names?: ("Design et métiers d'art" | "Langues et cultures de l'Antiquité" | "Littérature, langues et cultures de l'Antiquité" | "Sciences de l'ingénieur" | "Support à l'action managériale" | "Allemand" | "Anglais" | "Arts appliqués et culture artistique" | "Arts plastiques" | "Arts" | "Autre enseignement professionnel" | "Autre" | "Biochimie-Biologie" | "Biologie et physiopathologie humaines" | "Biologie-Écologie" | "Biotechnologies" | "Bâtiment" | "CEJM" | "Chinois" | "Commerce international" | "Communication" | "Comptabilité" | "Conjugaison" | "Culture générale et expression" | "Documentation" | "Droit" | "Economie et Gestion" | "Enseignement Scientifique" | "Enseignement scientifique" | "Enseignements spécifiques STL" | "Espagnol" | "Français" | "Gestion administrative" | "Gestion commerciale" | "Gestion de la PME" | "Gestion" | "Grammaire" | "Géographie" | "Histoire des Arts" | "Histoire" | "Histoire-Géographie, géopolitique et sciences politiques" | "Histoire-Géographie-EMC" | "Humanités, littérature et philosophie" | "Hôtellerie restauration" | "Informatique" | "Ingénierie et développement durable" | "Innovation technologique" | "Italien" | "Langue vivante rare" | "Langues, littératures et cultures étrangères et régionales" | "Logistique" | "Maintenance" | "Management commercial opérationnel" | "Management" | "Mathématiques" | "Mercatique" | "Mécanique" | "Numérique et sciences informatiques" | "Négociation et relation client" | "Orthographe" | "Outils et langages numériques" | "PSE" | "Philosophie" | "Physique-Chimie pour la santé" | "Physique-Chimie" | "Prévention Santé Environnement" | "Relation client" | "SES" | "SNT" | "SVT" | "Sciences appliquées" | "Sciences de gestion et numérique" | "Sciences de la vie et de la Terre" | "Sciences et Technologie" | "Sciences et techniques sanitaires et sociales" | "Sciences numériques et technologie" | "Sciences physiques et chimiques en laboratoire" | "Sciences physiques" | "Sciences économiques et sociales" | "Sciences" | "Technologie" | "Transport" | "Économie et gestion hôtellière" | "Économie" | "Économie-Droit" | "Économie-Gestion" | "Éducation civique" | "Éducation musicale" | null | undefined)[] | undefined;
19
+ sortByQuery?: "id" | "schoolTypes" | "slug" | "url" | "code" | "name" | "hasBooks" | "newsletterUrl" | "tags" | {} | undefined;
20
+ }) => Subject[]) & import("reselect").OutputSelectorFields<(args_0: Subject[], args_1: {
21
+ ids?: Subject["id"][] | undefined;
22
+ slugs?: Subject["slug"][] | undefined;
23
+ isTeacherSubject?: boolean | undefined;
24
+ hasNewsletterUrl?: boolean | undefined;
25
+ schoolTypes?: (string | undefined)[] | undefined;
26
+ hasBooks?: Subject["hasBooks"];
27
+ names?: ("Design et métiers d'art" | "Langues et cultures de l'Antiquité" | "Littérature, langues et cultures de l'Antiquité" | "Sciences de l'ingénieur" | "Support à l'action managériale" | "Allemand" | "Anglais" | "Arts appliqués et culture artistique" | "Arts plastiques" | "Arts" | "Autre enseignement professionnel" | "Autre" | "Biochimie-Biologie" | "Biologie et physiopathologie humaines" | "Biologie-Écologie" | "Biotechnologies" | "Bâtiment" | "CEJM" | "Chinois" | "Commerce international" | "Communication" | "Comptabilité" | "Conjugaison" | "Culture générale et expression" | "Documentation" | "Droit" | "Economie et Gestion" | "Enseignement Scientifique" | "Enseignement scientifique" | "Enseignements spécifiques STL" | "Espagnol" | "Français" | "Gestion administrative" | "Gestion commerciale" | "Gestion de la PME" | "Gestion" | "Grammaire" | "Géographie" | "Histoire des Arts" | "Histoire" | "Histoire-Géographie, géopolitique et sciences politiques" | "Histoire-Géographie-EMC" | "Humanités, littérature et philosophie" | "Hôtellerie restauration" | "Informatique" | "Ingénierie et développement durable" | "Innovation technologique" | "Italien" | "Langue vivante rare" | "Langues, littératures et cultures étrangères et régionales" | "Logistique" | "Maintenance" | "Management commercial opérationnel" | "Management" | "Mathématiques" | "Mercatique" | "Mécanique" | "Numérique et sciences informatiques" | "Négociation et relation client" | "Orthographe" | "Outils et langages numériques" | "PSE" | "Philosophie" | "Physique-Chimie pour la santé" | "Physique-Chimie" | "Prévention Santé Environnement" | "Relation client" | "SES" | "SNT" | "SVT" | "Sciences appliquées" | "Sciences de gestion et numérique" | "Sciences de la vie et de la Terre" | "Sciences et Technologie" | "Sciences et techniques sanitaires et sociales" | "Sciences numériques et technologie" | "Sciences physiques et chimiques en laboratoire" | "Sciences physiques" | "Sciences économiques et sociales" | "Sciences" | "Technologie" | "Transport" | "Économie et gestion hôtellière" | "Économie" | "Économie-Droit" | "Économie-Gestion" | "Éducation civique" | "Éducation musicale" | null | undefined)[] | undefined;
28
+ sortByQuery?: "id" | "schoolTypes" | "slug" | "url" | "code" | "name" | "hasBooks" | "newsletterUrl" | "tags" | {} | undefined;
29
+ }) => Subject[], {
30
+ clearCache: () => void;
31
+ }> & {
32
+ clearCache: () => void;
33
+ };
@@ -0,0 +1,5 @@
1
+ import type { Teacher, User } from '@lls/store/schema';
2
+ export declare const getTeachers: (state: import("@lls/utils").TState<Teacher>) => Teacher[], getTeacher: (state: import("@lls/utils").TState<Teacher>, entityId: number | string | undefined | null) => Teacher | undefined, useSearchTeachers: (params: {
3
+ ids?: User["id"][] | undefined;
4
+ schoolIds?: any[] | (number | undefined)[] | undefined;
5
+ }) => Teacher[];
@@ -0,0 +1,6 @@
1
+ import type { Tool } from '@lls/store/schema';
2
+ export declare const getTools: (state: import("@lls/utils").TState<Tool>) => Tool[], getTool: (state: import("@lls/utils").TState<Tool>, entityId: number | string | undefined | null) => Tool | undefined, useSearchTools: (params: {
3
+ ids?: (number | undefined)[] | undefined;
4
+ bookIds?: any[] | (number | undefined)[] | undefined;
5
+ locked?: Tool["locked"];
6
+ }) => Tool[];
@@ -0,0 +1,21 @@
1
+ import type { User } from '@lls/store/schema';
2
+ export declare const getUsers: (state: import("@lls/utils").TState<User>) => User[], getUser: (state: import("@lls/utils").TState<User>, entityId: number | string | undefined | null) => User | undefined, useSearchUsers: (params: {
3
+ ids?: User["id"][] | undefined;
4
+ schoolIds?: any[] | (number | undefined)[] | undefined;
5
+ }) => User[];
6
+ export declare const makeGetCurrentUser: () => ((state: import("../types/store").AuthState & import("@lls/utils").TState<User>) => User | undefined) & import("reselect").OutputSelectorFields<(args_0: {
7
+ id?: number;
8
+ token?: string | null;
9
+ }, args_1: User[]) => User | undefined, {
10
+ clearCache: () => void;
11
+ }> & {
12
+ clearCache: () => void;
13
+ };
14
+ export declare const getCurrentUser: ((state: import("../types/store").AuthState & import("@lls/utils").TState<User>) => User | undefined) & import("reselect").OutputSelectorFields<(args_0: {
15
+ id?: number;
16
+ token?: string | null;
17
+ }, args_1: User[]) => User | undefined, {
18
+ clearCache: () => void;
19
+ }> & {
20
+ clearCache: () => void;
21
+ };
package/lib/index.js CHANGED
@@ -992,13 +992,19 @@ init_define_import_meta();
992
992
  import { makeEntitiesFilter as makeEntitiesFilter8 } from "@lls/utils";
993
993
  var search10 = ({
994
994
  ids,
995
+ uuids,
995
996
  resourceIds,
996
- levelIds
997
+ levelIds,
998
+ formats,
999
+ documentTypes
997
1000
  }) => {
998
1001
  return makeEntitiesFilter8({
999
1002
  id: ids,
1000
1003
  resourceId: resourceIds,
1001
- levels: levelIds
1004
+ levels: levelIds,
1005
+ uuidV2: uuids,
1006
+ format: formats,
1007
+ documentType: documentTypes
1002
1008
  });
1003
1009
  };
1004
1010
  var { useSearchDocuments } = crud("documents", {
@@ -1050,9 +1056,22 @@ var getUserGroups = (0, import_reselect2.createSelector)(
1050
1056
  // src/selectors/level.ts
1051
1057
  init_define_import_meta();
1052
1058
  var import_reselect3 = __toESM(require_lib(), 1);
1053
- import { makeEntitiesFilter as makeEntitiesFilter11 } from "@lls/utils";
1059
+ import { createSearchSelector as createSearchSelector5, makeEntitiesFilter as makeEntitiesFilter12, makeGetAllEntities as makeGetAllEntities5 } from "@lls/utils";
1054
1060
  import _10 from "lodash/fp.js";
1055
- var search14 = ({
1061
+
1062
+ // src/selectors/schoolType.ts
1063
+ init_define_import_meta();
1064
+ import { makeEntitiesFilter as makeEntitiesFilter11 } from "@lls/utils";
1065
+ var search14 = ({ slugs }) => makeEntitiesFilter11({ slug: slugs });
1066
+ var { getSchoolTypes, getSchoolType, useSearchSchoolTypes, makeSearchSchoolTypes, searchSchoolTypes } = crud(
1067
+ "schoolTypes",
1068
+ {
1069
+ search: search14
1070
+ }
1071
+ );
1072
+
1073
+ // src/selectors/level.ts
1074
+ var search15 = ({
1056
1075
  ids,
1057
1076
  slugs,
1058
1077
  isPreSchool,
@@ -1060,9 +1079,10 @@ var search14 = ({
1060
1079
  isHighSchool,
1061
1080
  isProHighSchool,
1062
1081
  isGenHighSchool,
1063
- isElementarySchool
1082
+ isElementarySchool,
1083
+ schoolTypes
1064
1084
  }) => _10.flow(
1065
- makeEntitiesFilter11({
1085
+ makeEntitiesFilter12({
1066
1086
  id: ids,
1067
1087
  slug: slugs,
1068
1088
  isPreSchool,
@@ -1070,35 +1090,49 @@ var search14 = ({
1070
1090
  isHighSchool,
1071
1091
  isProHighSchool,
1072
1092
  isGenHighSchool,
1073
- isElementarySchool
1093
+ isElementarySchool,
1094
+ schoolTypes
1074
1095
  }),
1075
1096
  _10.orderBy("order", "desc")
1076
1097
  );
1077
- var crudLevels = crud("levels", { search: search14 });
1078
- var { getLevel, useSearchLevels } = crudLevels;
1079
- var getLevels = (0, import_reselect3.createSelector)(crudLevels.getLevels, _10.orderBy("order", "desc"));
1098
+ var makeSearchLevels = () => {
1099
+ const searchSchoolTypes2 = makeSearchSchoolTypes();
1100
+ return createSearchSelector5(
1101
+ makeGetAllEntities5("levels"),
1102
+ (state, { schoolTypes }) => schoolTypes ? searchSchoolTypes2(state, { slugs: schoolTypes }) : void 0,
1103
+ (_state, params) => params,
1104
+ (levels, schoolTypes, params) => search15({ ...params, schoolTypes: schoolTypes?.length ? schoolTypes?.map(({ id }) => id) : void 0 })(levels)
1105
+ );
1106
+ };
1107
+ var crudLevels = crud("levels", { search: search15 });
1108
+ var { getLevel, searchLevels } = crudLevels;
1109
+ var getLevels = (0, import_reselect3.createSelector)(
1110
+ crudLevels.getLevels,
1111
+ _10.orderBy("order", "desc")
1112
+ );
1113
+ var useSearchLevels = makeUseSearch(makeSearchLevels);
1080
1114
 
1081
1115
  // src/selectors/mainNotification.ts
1082
1116
  init_define_import_meta();
1083
1117
  var import_reselect4 = __toESM(require_lib(), 1);
1084
- import { makeEntitiesFilter as makeEntitiesFilter12, makeGetAllEntities as makeGetAllEntities5 } from "@lls/utils";
1118
+ import { makeEntitiesFilter as makeEntitiesFilter13, makeGetAllEntities as makeGetAllEntities6 } from "@lls/utils";
1085
1119
  import _11 from "lodash/fp.js";
1086
- var search15 = ({ ids }) => makeEntitiesFilter12({ id: ids });
1120
+ var search16 = ({ ids }) => makeEntitiesFilter13({ id: ids });
1087
1121
  var getMainNotifications = (0, import_reselect4.createSelector)(
1088
- [_11.flow(makeGetCurrentUser(), _11.get("mainNotifications")), makeGetAllEntities5("mainNotifications")],
1089
- (userNotifications, notifications) => search15({ ids: userNotifications })(notifications)
1122
+ [_11.flow(makeGetCurrentUser(), _11.get("mainNotifications")), makeGetAllEntities6("mainNotifications")],
1123
+ (userNotifications, notifications) => search16({ ids: userNotifications })(notifications)
1090
1124
  );
1091
1125
 
1092
1126
  // src/selectors/news.ts
1093
1127
  init_define_import_meta();
1094
- import { makeEntitiesFilter as makeEntitiesFilter13 } from "@lls/utils";
1095
- var search16 = ({ ids }) => makeEntitiesFilter13({ id: ids });
1128
+ import { makeEntitiesFilter as makeEntitiesFilter14 } from "@lls/utils";
1129
+ var search17 = ({ ids }) => makeEntitiesFilter14({ id: ids });
1096
1130
  var {
1097
1131
  getNews: getAllNews,
1098
1132
  getNew: getNews,
1099
1133
  useSearchNews
1100
1134
  } = crud("news", {
1101
- search: search16
1135
+ search: search17
1102
1136
  });
1103
1137
 
1104
1138
  // src/selectors/panorama.ts
@@ -1108,26 +1142,26 @@ var getPanorama = makeGetEntityById3("panoramas");
1108
1142
 
1109
1143
  // src/selectors/premiumResource.ts
1110
1144
  init_define_import_meta();
1111
- import { makeEntitiesFilter as makeEntitiesFilter14 } from "@lls/utils";
1112
- var search17 = ({ bookIds }) => makeEntitiesFilter14({ book: bookIds });
1145
+ import { makeEntitiesFilter as makeEntitiesFilter15 } from "@lls/utils";
1146
+ var search18 = ({ bookIds }) => makeEntitiesFilter15({ book: bookIds });
1113
1147
  var { getPremiumResources, getPremiumResource, useSearchPremiumResources } = crud("premiumResources", {
1114
- search: search17
1148
+ search: search18
1115
1149
  });
1116
1150
 
1117
1151
  // src/selectors/lexicalFlower.ts
1118
1152
  init_define_import_meta();
1119
- import { makeEntitiesFilter as makeEntitiesFilter15 } from "@lls/utils";
1120
- var search18 = ({ ids }) => makeEntitiesFilter15({ id: ids });
1153
+ import { makeEntitiesFilter as makeEntitiesFilter16 } from "@lls/utils";
1154
+ var search19 = ({ ids }) => makeEntitiesFilter16({ id: ids });
1121
1155
  var { getLexicalFlowers, useSearchLexicalFlowers } = crud("lexicalFlowers", {
1122
- search: search18
1156
+ search: search19
1123
1157
  });
1124
1158
 
1125
1159
  // src/selectors/product.ts
1126
1160
  init_define_import_meta();
1127
1161
  import _12 from "lodash/fp.js";
1128
- import { createSearchSelector as createSearchSelector5, makeEntitiesFilter as makeEntitiesFilter16, makeGetAllEntities as makeGetAllEntities6 } from "@lls/utils";
1129
- var getProducts = makeGetAllEntities6("products");
1130
- var search19 = ({
1162
+ import { createSearchSelector as createSearchSelector6, makeEntitiesFilter as makeEntitiesFilter17, makeGetAllEntities as makeGetAllEntities7 } from "@lls/utils";
1163
+ var getProducts = makeGetAllEntities7("products");
1164
+ var search20 = ({
1131
1165
  ids,
1132
1166
  eans,
1133
1167
  isAdoptant,
@@ -1137,7 +1171,7 @@ var search19 = ({
1137
1171
  productTypes
1138
1172
  }) => {
1139
1173
  let bookIds;
1140
- const filter = makeEntitiesFilter16(
1174
+ const filter = makeEntitiesFilter17(
1141
1175
  {
1142
1176
  id: ids,
1143
1177
  ean: eans,
@@ -1154,36 +1188,28 @@ var search19 = ({
1154
1188
  };
1155
1189
  var makeSearchProducts = () => {
1156
1190
  const searchBooks = makeSearchBooks();
1157
- return createSearchSelector5(
1158
- makeGetAllEntities6("products"),
1191
+ return createSearchSelector6(
1192
+ makeGetAllEntities7("products"),
1159
1193
  (state, { levelIds, subjectIds }) => searchBooks(state, { levelIds, subjectIds }),
1160
1194
  (_state, params) => params,
1161
- (products, books, params) => search19(params)(products, books)
1195
+ (products, books, params) => search20(params)(products, books)
1162
1196
  );
1163
1197
  };
1164
1198
  var useSearchProducts = makeUseSearch(makeSearchProducts);
1165
1199
 
1166
1200
  // src/selectors/resource.ts
1167
1201
  init_define_import_meta();
1168
- import { makeEntitiesFilter as makeEntitiesFilter17 } from "@lls/utils";
1169
- var search20 = ({ chapterIds }) => makeEntitiesFilter17({
1202
+ import { makeEntitiesFilter as makeEntitiesFilter18 } from "@lls/utils";
1203
+ var search21 = ({ chapterIds }) => makeEntitiesFilter18({
1170
1204
  chapter: chapterIds
1171
1205
  });
1172
1206
  var { getResources, getResource, useSearchResources } = crud("resources", {
1173
- search: search20
1174
- });
1175
-
1176
- // src/selectors/schoolType.ts
1177
- init_define_import_meta();
1178
- import { makeEntitiesFilter as makeEntitiesFilter18 } from "@lls/utils";
1179
- var search21 = ({ slugs }) => makeEntitiesFilter18({ slug: slugs });
1180
- var { getSchoolTypes, getSchoolType, useSearchSchoolTypes, makeSearchSchoolTypes } = crud("schoolTypes", {
1181
1207
  search: search21
1182
1208
  });
1183
1209
 
1184
1210
  // src/selectors/sharedPage.ts
1185
1211
  init_define_import_meta();
1186
- import { createSearchSelector as createSearchSelector6, makeEntitiesFilter as makeEntitiesFilter19 } from "@lls/utils";
1212
+ import { createSearchSelector as createSearchSelector7, makeEntitiesFilter as makeEntitiesFilter19 } from "@lls/utils";
1187
1213
  import _13 from "lodash/fp.js";
1188
1214
  var search22 = ({
1189
1215
  parentIds,
@@ -1203,7 +1229,7 @@ var search22 = ({
1203
1229
  var { getSharedPages, getSharedPage, useSearchSharedPages } = crud("sharedPages", {
1204
1230
  search: search22
1205
1231
  });
1206
- var makeSearchCurrentUserSharedPages = () => createSearchSelector6(
1232
+ var makeSearchCurrentUserSharedPages = () => createSearchSelector7(
1207
1233
  getCurrentUser,
1208
1234
  getSharedPages,
1209
1235
  (__, params) => params,
@@ -1426,6 +1452,8 @@ init_define_import_meta();
1426
1452
  var import_normalizr = __toESM(require_normalizr(), 1);
1427
1453
  import _19 from "lodash/fp.js";
1428
1454
  var document = new import_normalizr.schema.Entity("documents");
1455
+ var documentType = new import_normalizr.schema.Entity("documentTypes");
1456
+ var subDocumentType = new import_normalizr.schema.Entity("subDocumentTypes");
1429
1457
  var subject = new import_normalizr.schema.Entity("subjects");
1430
1458
  var level = new import_normalizr.schema.Entity("levels");
1431
1459
  var book = new import_normalizr.schema.Entity("books");
@@ -1484,9 +1512,14 @@ var garDivisionSchema = define(garDivision, {
1484
1512
  students: [user],
1485
1513
  school
1486
1514
  });
1515
+ var documentTypeSchema = define(documentType, {
1516
+ subDocumentType
1517
+ });
1487
1518
  var documentSchema = define(document, {
1488
1519
  page,
1489
- levels: [level]
1520
+ levels: [level],
1521
+ documentType,
1522
+ subDocumentType
1490
1523
  });
1491
1524
  var chapterSchema = define(chapter, {
1492
1525
  book,
@@ -1576,6 +1609,9 @@ var newsSchema = define(news, {
1576
1609
  var premiumResourceSchema = define(premiumResource, {
1577
1610
  book
1578
1611
  });
1612
+ var levelSchema = define(level, {
1613
+ schoolTypes: [schoolType]
1614
+ });
1579
1615
  var querySchema = {
1580
1616
  viewer: {
1581
1617
  addCorrectionsToGroup: group,
@@ -1591,6 +1627,8 @@ var querySchema = {
1591
1627
  createUser: user,
1592
1628
  createLexicalFlower: lexicalFlower,
1593
1629
  documents: { hits: [document] },
1630
+ documentTypes: { hits: [documentType] },
1631
+ subDocumentTypes: { hits: [subDocumentType] },
1594
1632
  explorerResults: [explorerResult],
1595
1633
  levels: [level],
1596
1634
  me: user,
@@ -1699,6 +1737,7 @@ export {
1699
1737
  makeGetCurrentUser,
1700
1738
  makeSearchBooks,
1701
1739
  makeSearchDrawerNotifications,
1740
+ makeSearchLevels,
1702
1741
  makeSearchPages,
1703
1742
  makeSearchSchoolTypes,
1704
1743
  makeSearchSubjects,
@@ -1706,6 +1745,8 @@ export {
1706
1745
  makeUseSearch,
1707
1746
  normalizeData,
1708
1747
  querySchema,
1748
+ searchLevels,
1749
+ searchSchoolTypes,
1709
1750
  setEntitiesReducer,
1710
1751
  useSearchBooks,
1711
1752
  useSearchBuilderIos,
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-f5442923",
5
+ "version": "24.8.0",
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-f5442923",
52
- "@lls/vitescripts": "24.8.0-f5442923"
51
+ "@lls/utils": "24.8.0",
52
+ "@lls/vitescripts": "24.8.0"
53
53
  },
54
54
  "license": "ISC",
55
55
  "dependencies": {