@communecter/cocolight-api-client 1.0.54 → 1.0.56

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 (179) hide show
  1. package/dist/401.cocolight-api-client.browser.js +1 -0
  2. package/dist/401.cocolight-api-client.cjs +1 -0
  3. package/dist/401.cocolight-api-client.mjs.js +1 -0
  4. package/dist/588.cocolight-api-client.browser.js +1 -0
  5. package/dist/588.cocolight-api-client.cjs +1 -0
  6. package/dist/588.cocolight-api-client.mjs.js +1 -0
  7. package/dist/593.cocolight-api-client.browser.js +1 -0
  8. package/dist/593.cocolight-api-client.cjs +1 -0
  9. package/dist/593.cocolight-api-client.mjs.js +1 -0
  10. package/dist/839.cocolight-api-client.browser.js +1 -0
  11. package/dist/839.cocolight-api-client.cjs +1 -0
  12. package/dist/839.cocolight-api-client.mjs.js +1 -0
  13. package/dist/cocolight-api-client.browser.js +3 -3
  14. package/dist/cocolight-api-client.cjs +1 -1
  15. package/dist/cocolight-api-client.mjs.js +1 -1
  16. package/dist/cocolight-api-client.vite.mjs.js +1 -1
  17. package/dist/cocolight-api-client.vite.mjs.js.map +1 -1
  18. package/package.json +29 -17
  19. package/src/{Api.js → Api.ts} +85 -95
  20. package/src/{ApiClient.js → ApiClient.ts} +436 -247
  21. package/src/EJSONType.ts +103 -0
  22. package/src/api/{Badge.js → Badge.ts} +56 -45
  23. package/src/api/BaseEntity.ts +3890 -0
  24. package/src/api/Comment.ts +200 -0
  25. package/src/api/{EndpointApi.js → EndpointApi.ts} +363 -297
  26. package/src/api/EndpointApi.types.ts +4609 -0
  27. package/src/api/EntityRegistry.ts +203 -0
  28. package/src/api/Event.ts +332 -0
  29. package/src/api/News.ts +331 -0
  30. package/src/api/{Organization.js → Organization.ts} +155 -119
  31. package/src/api/{Poi.js → Poi.ts} +68 -60
  32. package/src/api/{Project.js → Project.ts} +150 -127
  33. package/src/api/{User.js → User.ts} +321 -256
  34. package/src/api/UserApi.ts +148 -0
  35. package/src/api/serverDataType/Comment.ts +88 -0
  36. package/src/api/serverDataType/Event.ts +80 -0
  37. package/src/api/serverDataType/News.ts +138 -0
  38. package/src/api/serverDataType/Organization.ts +80 -0
  39. package/src/api/serverDataType/Project.ts +71 -0
  40. package/src/api/serverDataType/User.ts +103 -0
  41. package/src/api/serverDataType/common.ts +80 -0
  42. package/src/endpoints.module.ts +2621 -0
  43. package/src/error.ts +86 -0
  44. package/src/index.ts +86 -0
  45. package/src/mixin/UserMixin.ts +4 -0
  46. package/src/types/api-responses.ts +217 -0
  47. package/src/types/entities.ts +22 -0
  48. package/src/types/error-guards.ts +230 -0
  49. package/src/types/index.ts +39 -0
  50. package/src/types/payloads.ts +21 -0
  51. package/src/types/transforms.ts +110 -0
  52. package/src/utils/{FileOfflineStorageStrategy.node.js → FileOfflineStorageStrategy.node.ts} +15 -12
  53. package/src/utils/{FileStorageStrategy.node.js → FileStorageStrategy.node.ts} +16 -39
  54. package/src/utils/MultiServerFileStorageStrategy.node.ts +67 -0
  55. package/src/utils/MultiServerTokenStorageStrategy.ts +139 -0
  56. package/src/utils/{OfflineClientManager.js → OfflineClientManager.ts} +82 -86
  57. package/src/utils/OfflineQueueStorageStrategy.ts +47 -0
  58. package/src/utils/TokenStorage.ts +77 -0
  59. package/src/utils/compat.ts +12 -0
  60. package/src/utils/createDefaultMultiServerTokenStorageStrategy.ts +35 -0
  61. package/src/utils/{createDefaultOfflineStrategy.js → createDefaultOfflineStrategy.ts} +8 -3
  62. package/src/utils/createDefaultTokenStorageStrategy.ts +33 -0
  63. package/src/utils/{reactive.js → reactive.ts} +49 -40
  64. package/src/utils/stream-utils.node.ts +12 -0
  65. package/types/Api.d.ts +38 -82
  66. package/types/Api.d.ts.map +1 -0
  67. package/types/ApiClient.d.ts +244 -184
  68. package/types/ApiClient.d.ts.map +1 -0
  69. package/types/EJSONType.d.ts +48 -22
  70. package/types/EJSONType.d.ts.map +1 -0
  71. package/types/api/Badge.d.ts +20 -20
  72. package/types/api/Badge.d.ts.map +1 -0
  73. package/types/api/BaseEntity.d.ts +751 -446
  74. package/types/api/BaseEntity.d.ts.map +1 -0
  75. package/types/api/Comment.d.ts +36 -0
  76. package/types/api/EndpointApi.d.ts +347 -295
  77. package/types/api/EndpointApi.d.ts.map +1 -0
  78. package/types/api/EndpointApi.types.d.ts +3914 -4133
  79. package/types/api/EntityRegistry.d.ts +18 -16
  80. package/types/api/EntityRegistry.d.ts.map +1 -0
  81. package/types/api/Event.d.ts +119 -35
  82. package/types/api/Event.d.ts.map +1 -0
  83. package/types/api/News.d.ts +52 -20
  84. package/types/api/News.d.ts.map +1 -0
  85. package/types/api/Organization.d.ts +165 -49
  86. package/types/api/Organization.d.ts.map +1 -0
  87. package/types/api/Poi.d.ts +51 -22
  88. package/types/api/Poi.d.ts.map +1 -0
  89. package/types/api/Project.d.ts +151 -52
  90. package/types/api/Project.d.ts.map +1 -0
  91. package/types/api/User.d.ts +222 -93
  92. package/types/api/User.d.ts.map +1 -0
  93. package/types/api/UserApi.d.ts +60 -9
  94. package/types/api/UserApi.d.ts.map +1 -0
  95. package/types/api/serverDataType/Comment.d.ts +83 -0
  96. package/types/api/serverDataType/Event.d.ts +67 -0
  97. package/types/api/serverDataType/News.d.ts +130 -0
  98. package/types/api/serverDataType/Organization.d.ts +65 -0
  99. package/types/api/serverDataType/Organization.d.ts.map +1 -0
  100. package/types/api/serverDataType/Project.d.ts +58 -0
  101. package/types/api/serverDataType/Project.d.ts.map +1 -0
  102. package/types/api/serverDataType/User.d.ts +86 -0
  103. package/types/api/serverDataType/User.d.ts.map +1 -0
  104. package/types/api/serverDataType/common.d.ts +71 -0
  105. package/types/api/serverDataType/common.d.ts.map +1 -0
  106. package/types/endpoints.module.d.ts +6922 -1215
  107. package/types/endpoints.module.d.ts.map +1 -0
  108. package/types/error.d.ts +25 -51
  109. package/types/error.d.ts.map +1 -0
  110. package/types/index.d.ts +55 -48
  111. package/types/index.d.ts.map +1 -0
  112. package/types/mixin/UserMixin.d.ts +1 -1
  113. package/types/mixin/UserMixin.d.ts.map +1 -0
  114. package/types/types/api-responses.d.ts +190 -0
  115. package/types/types/api-responses.d.ts.map +1 -0
  116. package/types/types/entities.d.ts +17 -0
  117. package/types/types/entities.d.ts.map +1 -0
  118. package/types/types/error-guards.d.ts +99 -0
  119. package/types/types/error-guards.d.ts.map +1 -0
  120. package/types/types/index.d.ts +7 -0
  121. package/types/types/payloads.d.ts +17 -0
  122. package/types/types/payloads.d.ts.map +1 -0
  123. package/types/types/transforms.d.ts +79 -0
  124. package/types/types/transforms.d.ts.map +1 -0
  125. package/types/utils/FileOfflineStorageStrategy.node.d.ts +10 -9
  126. package/types/utils/FileOfflineStorageStrategy.node.d.ts.map +1 -0
  127. package/types/utils/FileStorageStrategy.node.d.ts +9 -20
  128. package/types/utils/FileStorageStrategy.node.d.ts.map +1 -0
  129. package/types/utils/MultiServerFileStorageStrategy.node.d.ts +13 -18
  130. package/types/utils/MultiServerFileStorageStrategy.node.d.ts.map +1 -0
  131. package/types/utils/MultiServerTokenStorageStrategy.d.ts +30 -51
  132. package/types/utils/MultiServerTokenStorageStrategy.d.ts.map +1 -0
  133. package/types/utils/OfflineClientManager.d.ts +52 -88
  134. package/types/utils/OfflineClientManager.d.ts.map +1 -0
  135. package/types/utils/OfflineQueueStorageStrategy.d.ts +12 -9
  136. package/types/utils/OfflineQueueStorageStrategy.d.ts.map +1 -0
  137. package/types/utils/TokenStorage.d.ts +20 -70
  138. package/types/utils/TokenStorage.d.ts.map +1 -0
  139. package/types/utils/compat.d.ts +4 -0
  140. package/types/utils/compat.d.ts.map +1 -0
  141. package/types/utils/createDefaultMultiServerTokenStorageStrategy.d.ts +2 -11
  142. package/types/utils/createDefaultMultiServerTokenStorageStrategy.d.ts.map +1 -0
  143. package/types/utils/createDefaultOfflineStrategy.d.ts +2 -3
  144. package/types/utils/createDefaultOfflineStrategy.d.ts.map +1 -0
  145. package/types/utils/createDefaultTokenStorageStrategy.d.ts +2 -12
  146. package/types/utils/createDefaultTokenStorageStrategy.d.ts.map +1 -0
  147. package/types/utils/reactive.d.ts +10 -16
  148. package/types/utils/reactive.d.ts.map +1 -0
  149. package/types/utils/stream-utils.node.d.ts +3 -2
  150. package/types/utils/stream-utils.node.d.ts.map +1 -0
  151. package/dist/123.cocolight-api-client.browser.js +0 -1
  152. package/dist/123.cocolight-api-client.cjs +0 -1
  153. package/dist/22.cocolight-api-client.mjs.js +0 -1
  154. package/dist/339.cocolight-api-client.mjs.js +0 -1
  155. package/dist/394.cocolight-api-client.browser.js +0 -1
  156. package/dist/394.cocolight-api-client.cjs +0 -1
  157. package/dist/405.cocolight-api-client.browser.js +0 -1
  158. package/dist/405.cocolight-api-client.cjs +0 -1
  159. package/dist/774.cocolight-api-client.mjs.js +0 -1
  160. package/dist/790.cocolight-api-client.mjs.js +0 -1
  161. package/dist/931.cocolight-api-client.browser.js +0 -1
  162. package/dist/931.cocolight-api-client.cjs +0 -1
  163. package/src/EJSONType.js +0 -53
  164. package/src/api/BaseEntity.js +0 -2828
  165. package/src/api/EntityRegistry.js +0 -152
  166. package/src/api/Event.js +0 -226
  167. package/src/api/News.js +0 -244
  168. package/src/api/UserApi.js +0 -81
  169. package/src/endpoints.module.js +0 -5
  170. package/src/error.js +0 -121
  171. package/src/index.js +0 -97
  172. package/src/mixin/UserMixin.js +0 -8
  173. package/src/utils/MultiServerFileStorageStrategy.node.js +0 -87
  174. package/src/utils/MultiServerTokenStorageStrategy.js +0 -188
  175. package/src/utils/OfflineQueueStorageStrategy.js +0 -51
  176. package/src/utils/TokenStorage.js +0 -153
  177. package/src/utils/createDefaultMultiServerTokenStorageStrategy.js +0 -51
  178. package/src/utils/createDefaultTokenStorageStrategy.js +0 -49
  179. package/src/utils/stream-utils.node.js +0 -10
@@ -1,13 +1,64 @@
1
- export class UserApi {
2
- constructor(clientOrOptions: any);
1
+ import ApiClient from "../ApiClient.js";
2
+ import { User } from "./User.js";
3
+ /**
4
+ * API orientée utilisateur pour gérer l'authentification et
5
+ * récupérer l'utilisateur connecté.
6
+ */
7
+ export declare class UserApi {
3
8
  client: ApiClient;
4
- loggedUser: User;
9
+ loggedUser: User | null;
10
+ /**
11
+ * @param clientOrOptions - Soit une instance ApiClient, soit des options pour en créer une
12
+ */
13
+ constructor(clientOrOptions: ApiClient | ConstructorParameters<typeof ApiClient>[0]);
14
+ /**
15
+ * Indique si un utilisateur est connecté.
16
+ */
5
17
  get isConnected(): boolean;
6
- get userId(): any;
7
- login(email: any, password: any): Promise<any>;
18
+ /**
19
+ * Retourne l'ID de l'utilisateur connecté ou `null` s'il n'y a pas de session.
20
+ */
21
+ get userId(): string | null;
22
+ /**
23
+ * Authentifie un utilisateur et retourne l'instance `User` correspondante.
24
+ *
25
+ * @param email - Adresse email de l'utilisateur.
26
+ * @param password - Mot de passe de l'utilisateur.
27
+ * @returns {Promise<User>}
28
+ * @throws {ApiError} En cas d'échec de connexion réseau ou de problème interne.
29
+ * @throws {ApiResponseError} Si l'API retourne une erreur d'authentification.
30
+ */
31
+ login(email: string, password: string): Promise<User>;
32
+ /**
33
+ * Récupère l'instance `User` correspondant à l'utilisateur actuellement connecté.
34
+ *
35
+ * @returns {Promise<User>}
36
+ * @throws {ApiError} Si aucun utilisateur n'est connecté (`isConnected` faux ou `userId` absent).
37
+ */
8
38
  meIsconnected(): Promise<User>;
9
- register({ name, username, email, pwd, }?: {}): Promise<any>;
10
- recoverPassword(email: any): Promise<any>;
39
+ /**
40
+ * Enregistre un nouvel utilisateur.
41
+ *
42
+ * @param params
43
+ * @param params.name - Nom complet.
44
+ * @param params.username - Nom d'utilisateur.
45
+ * @param params.email - Adresse email.
46
+ * @param params.pwd - Mot de passe.
47
+ * @returns Réponse brute de l'API.
48
+ * @throws {ApiResponseError} Si l'API retourne un échec (`result === false`).
49
+ */
50
+ register({ name, username, email, pwd }: {
51
+ name: string;
52
+ username: string;
53
+ email: string;
54
+ pwd: string;
55
+ }): Promise<any>;
56
+ /**
57
+ * Lance une procédure de récupération de mot de passe.
58
+ *
59
+ * @param email - Adresse email de l'utilisateur.
60
+ * @returns Réponse brute de l'API.
61
+ * @throws {ApiResponseError} Si l'API retourne un échec (`result === false`).
62
+ */
63
+ recoverPassword(email: string): Promise<any>;
11
64
  }
12
- import ApiClient from "../ApiClient.js";
13
- import { User } from "./User.js";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserApi.d.ts","sourceRoot":"","sources":["../../src/api/UserApi.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,iBAAiB,CAAC;AASxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAQjC;;;GAGG;AACH,qBAAa,OAAO;IAClB,MAAM,EAAE,SAAS,CAAC;IAClB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE/B;;OAEG;gBACS,eAAe,EAAE,SAAS,GAAG,qBAAqB,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;IASnF;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,GAAG,IAAI,CAE1B;IAED;;;;;;;;OAQG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa3D;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBpC;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAkB5H;;;;;;OAMG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAenD"}
@@ -0,0 +1,83 @@
1
+ import type { IdObject, DateValue } from "./common.js";
2
+ import type EJSONType from "../../EJSONType.js";
3
+ import type { Organization } from "../Organization.js";
4
+ import type { User } from "../User.js";
5
+ type ObjectIDCtor = typeof EJSONType["ObjectID"];
6
+ type ObjectID = InstanceType<ObjectIDCtor>;
7
+ /**
8
+ * Auteur d'un commentaire (version brute de l'API)
9
+ */
10
+ export interface CommentAuthorJson {
11
+ id: string;
12
+ name: string;
13
+ username?: string;
14
+ email?: string;
15
+ profilImageUrl?: string;
16
+ profilThumbImageUrl?: string;
17
+ typeSig?: string;
18
+ [k: string]: unknown;
19
+ }
20
+ /**
21
+ * Auteur d'un commentaire (version normalisée côté client)
22
+ */
23
+ export interface CommentAuthor extends CommentAuthorJson {
24
+ type?: string;
25
+ }
26
+ /**
27
+ * Vues d'un commentaire (qui a vu et quand)
28
+ */
29
+ export interface CommentViews {
30
+ [userId: string]: {
31
+ date: DateValue;
32
+ [k: string]: unknown;
33
+ };
34
+ }
35
+ /**
36
+ * Structure JSON brute retournée par l'API
37
+ */
38
+ export interface CommentItemJson {
39
+ _id: IdObject;
40
+ collection: "comments";
41
+ contextId: string;
42
+ contextType: string;
43
+ parentId: string;
44
+ text: string;
45
+ created: DateValue;
46
+ author: CommentAuthorJson;
47
+ tags?: string[] | null;
48
+ status: string;
49
+ views?: CommentViews;
50
+ postedDate: number;
51
+ markdownActive: boolean;
52
+ argval?: string;
53
+ replies?: CommentItemJson[];
54
+ [key: string]: unknown;
55
+ }
56
+ /**
57
+ * Structure normalisée utilisée côté client
58
+ * Les dates sont converties en objets Date
59
+ * Le champ author peut être une instance d'entité (User ou Organization)
60
+ */
61
+ export interface CommentItemNormalized {
62
+ id: string;
63
+ _id: ObjectID;
64
+ collection: "comments";
65
+ contextId: string;
66
+ contextType: string;
67
+ parentId: string;
68
+ text: string;
69
+ created: Date;
70
+ author: CommentAuthor | User | Organization;
71
+ tags?: string[] | null;
72
+ status: string;
73
+ views?: Record<string, {
74
+ date: Date;
75
+ [k: string]: unknown;
76
+ }>;
77
+ postedDate: number;
78
+ markdownActive: boolean;
79
+ argval?: string;
80
+ replies?: CommentItemNormalized[];
81
+ [key: string]: unknown;
82
+ }
83
+ export {};
@@ -0,0 +1,67 @@
1
+ import type { GeoCoordinates, GeoPosition, IdObject, LinkAttendeesRef, LinkOrganizerRef, ParentsMap, OrganizerMap, PostalAddress, DateValue } from "./common.js";
2
+ import type EJSONType from "../../EJSONType.js";
3
+ type ObjectIDCtor = typeof EJSONType["ObjectID"];
4
+ type ObjectID = InstanceType<ObjectIDCtor>;
5
+ export interface EventLinksBlock {
6
+ attendees?: Record<string, LinkAttendeesRef>;
7
+ organizer?: Record<string, LinkOrganizerRef>;
8
+ [k: string]: unknown;
9
+ }
10
+ export interface EventItemJson {
11
+ _id: IdObject;
12
+ collection: "events";
13
+ name: string;
14
+ type: string;
15
+ startDate: DateValue;
16
+ endDate: DateValue;
17
+ created?: DateValue;
18
+ updated?: DateValue;
19
+ modified?: DateValue;
20
+ parent?: ParentsMap;
21
+ description?: string;
22
+ shortDescription?: string;
23
+ slug?: string;
24
+ address?: PostalAddress;
25
+ geo?: GeoCoordinates;
26
+ geoPosition?: GeoPosition;
27
+ tags?: string[];
28
+ links?: EventLinksBlock;
29
+ organizer?: OrganizerMap;
30
+ creator?: string;
31
+ profilImageUrl?: string;
32
+ profilMediumImageUrl?: string;
33
+ profilThumbImageUrl?: string;
34
+ profilMarkerImageUrl?: string;
35
+ timeZone?: string;
36
+ [key: string]: unknown;
37
+ }
38
+ export interface EventItemNormalized {
39
+ id: string;
40
+ _id: ObjectID;
41
+ collection: "events";
42
+ name: string;
43
+ type: string;
44
+ startDate: Date;
45
+ endDate: Date;
46
+ created?: Date;
47
+ updated?: Date;
48
+ modified?: Date;
49
+ parent?: ParentsMap;
50
+ description?: string;
51
+ shortDescription?: string;
52
+ slug?: string;
53
+ address?: PostalAddress;
54
+ geo?: GeoCoordinates;
55
+ geoPosition?: GeoPosition;
56
+ tags?: string[];
57
+ links?: EventLinksBlock;
58
+ organizer?: OrganizerMap;
59
+ creator?: string;
60
+ profilImageUrl?: string;
61
+ profilMediumImageUrl?: string;
62
+ profilThumbImageUrl?: string;
63
+ profilMarkerImageUrl?: string;
64
+ timeZone?: string;
65
+ [key: string]: unknown;
66
+ }
67
+ export {};
@@ -0,0 +1,130 @@
1
+ import type { IdObject, DateValue } from "./common.js";
2
+ import type EJSONType from "../../EJSONType.js";
3
+ import type { Organization } from "../Organization.js";
4
+ import type { Project } from "../Project.js";
5
+ import type { User } from "../User.js";
6
+ type ObjectIDCtor = typeof EJSONType["ObjectID"];
7
+ type ObjectID = InstanceType<ObjectIDCtor>;
8
+ /**
9
+ * Auteur d'une actualité
10
+ */
11
+ export interface NewsAuthor {
12
+ id: string;
13
+ name: string;
14
+ type: string;
15
+ profilThumbImageUrl?: string;
16
+ [k: string]: unknown;
17
+ }
18
+ /**
19
+ * Personne ayant partagé l'actualité
20
+ */
21
+ export interface NewsSharedBy {
22
+ id: string;
23
+ name: string;
24
+ type: string;
25
+ updated: DateValue;
26
+ comment: string | null;
27
+ profilThumbImageUrl?: string;
28
+ [k: string]: unknown;
29
+ }
30
+ /**
31
+ * Cible de l'actualité
32
+ */
33
+ export interface NewsTarget {
34
+ id: string;
35
+ name: string;
36
+ type: string;
37
+ profilThumbImageUrl?: string;
38
+ [k: string]: unknown;
39
+ }
40
+ /**
41
+ * Mention dans une actualité
42
+ */
43
+ export interface NewsMention {
44
+ id: string;
45
+ slug: string;
46
+ type: string;
47
+ name: string;
48
+ value: string;
49
+ count: string;
50
+ [k: string]: unknown;
51
+ }
52
+ /**
53
+ * Médias fichiers
54
+ */
55
+ export interface NewsMediaFile {
56
+ countFiles: string;
57
+ files: any[];
58
+ }
59
+ /**
60
+ * Médias images
61
+ */
62
+ export interface NewsMediaImg {
63
+ countImages: string;
64
+ images: any[];
65
+ }
66
+ /**
67
+ * Scope de l'actualité
68
+ */
69
+ export interface NewsScope {
70
+ type: string;
71
+ [k: string]: unknown;
72
+ }
73
+ /**
74
+ * Structure JSON brute retournée par l'API
75
+ */
76
+ export interface NewsItemJson {
77
+ _id: IdObject;
78
+ id: string;
79
+ type: "news";
80
+ collection: "news";
81
+ text: string;
82
+ date: DateValue;
83
+ created: DateValue;
84
+ updated: DateValue;
85
+ markdownActive: boolean;
86
+ scope: NewsScope;
87
+ comment: string | null;
88
+ typeSig: "news";
89
+ author: NewsAuthor;
90
+ sharedBy: NewsSharedBy[];
91
+ lastAuthorShare: NewsSharedBy;
92
+ target: NewsTarget;
93
+ mediaFile: NewsMediaFile;
94
+ mediaImg: NewsMediaImg;
95
+ mentions?: NewsMention[];
96
+ [key: string]: unknown;
97
+ }
98
+ /**
99
+ * Structure normalisée utilisée côté client
100
+ * Les dates sont converties en objets Date
101
+ * Les counts sont convertis en numbers
102
+ * Les champs author, target, sharedBy peuvent être des instances d'entités
103
+ */
104
+ export interface NewsItemNormalized {
105
+ _id: ObjectID;
106
+ id: string;
107
+ type: "news";
108
+ collection: "news";
109
+ text: string;
110
+ date: Date;
111
+ created: Date;
112
+ updated: Date;
113
+ markdownActive: boolean;
114
+ scope: NewsScope;
115
+ comment: string | null;
116
+ typeSig: "news";
117
+ author: NewsAuthor | User | Organization;
118
+ sharedBy: Array<(Omit<NewsSharedBy, "updated"> & {
119
+ updated: Date;
120
+ }) | User | Organization>;
121
+ lastAuthorShare: (Omit<NewsSharedBy, "updated"> & {
122
+ updated: Date;
123
+ }) | User | Organization;
124
+ target: NewsTarget | User | Organization | Project;
125
+ mediaFile: NewsMediaFile;
126
+ mediaImg: NewsMediaImg;
127
+ mentions?: NewsMention[];
128
+ [key: string]: unknown;
129
+ }
130
+ export {};
@@ -0,0 +1,65 @@
1
+ import type { GeoCoordinates, GeoPosition, IdObject, LinkMemberOfRef, LinkMemberRef, LinkProjectRef, LinkEventsRef, OpeningHoursEntry, ParentsMap, PostalAddress, DateValue } from "./common.js";
2
+ import type EJSONType from "../../EJSONType.js";
3
+ type ObjectIDCtor = typeof EJSONType["ObjectID"];
4
+ type ObjectID = InstanceType<ObjectIDCtor>;
5
+ export interface OrganizationLinksBlock {
6
+ members?: Record<string, LinkMemberRef>;
7
+ projects?: Record<string, LinkProjectRef>;
8
+ memberOf?: Record<string, LinkMemberOfRef>;
9
+ events?: Record<string, LinkEventsRef>;
10
+ [k: string]: unknown;
11
+ }
12
+ export interface OrganizationItemJson {
13
+ _id: IdObject;
14
+ collection: "organizations";
15
+ name: string;
16
+ created?: DateValue;
17
+ updated?: DateValue;
18
+ modified?: DateValue;
19
+ parent?: ParentsMap;
20
+ description?: string;
21
+ shortDescription?: string;
22
+ slug?: string;
23
+ type?: "NGO" | "LocalBusiness" | "Group" | "GovernmentOrganization" | "Cooperative";
24
+ address?: PostalAddress;
25
+ geo?: GeoCoordinates;
26
+ geoPosition?: GeoPosition;
27
+ tags?: string[];
28
+ links?: OrganizationLinksBlock;
29
+ creator?: string;
30
+ openingHours?: OpeningHoursEntry[];
31
+ profilImageUrl?: string;
32
+ profilMediumImageUrl?: string;
33
+ profilThumbImageUrl?: string;
34
+ profilMarkerImageUrl?: string;
35
+ email?: string;
36
+ [key: string]: unknown;
37
+ }
38
+ export interface OrganizationItemNormalized {
39
+ id: string;
40
+ _id: ObjectID;
41
+ collection: "organizations";
42
+ name: string;
43
+ created?: Date;
44
+ updated?: Date;
45
+ modified?: Date;
46
+ parent?: ParentsMap;
47
+ description?: string;
48
+ shortDescription?: string;
49
+ slug?: string;
50
+ type?: "NGO" | "LocalBusiness" | "Group" | "GovernmentOrganization" | "Cooperative";
51
+ address?: PostalAddress;
52
+ geo?: GeoCoordinates;
53
+ geoPosition?: GeoPosition;
54
+ tags?: string[];
55
+ links?: OrganizationLinksBlock;
56
+ creator?: string;
57
+ openingHours?: OpeningHoursEntry[];
58
+ profilImageUrl?: string;
59
+ profilMediumImageUrl?: string;
60
+ profilThumbImageUrl?: string;
61
+ profilMarkerImageUrl?: string;
62
+ email?: string;
63
+ [key: string]: unknown;
64
+ }
65
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Organization.d.ts","sourceRoot":"","sources":["../../../src/api/serverDataType/Organization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { GeoCoordinates, GeoPosition, IdObject, LinkContributorsRef, LinkProjectRef, LinkEventsRef, ParentsMap, PostalAddress, DateValue } from "./common.js";
2
+ import type EJSONType from "../../EJSONType.js";
3
+ type ObjectIDCtor = typeof EJSONType["ObjectID"];
4
+ type ObjectID = InstanceType<ObjectIDCtor>;
5
+ export interface ProjectLinksBlock {
6
+ contributors?: Record<string, LinkContributorsRef>;
7
+ projects?: Record<string, LinkProjectRef>;
8
+ events?: Record<string, LinkEventsRef>;
9
+ [k: string]: unknown;
10
+ }
11
+ export interface ProjectItemJson {
12
+ _id: IdObject;
13
+ collection: "projects";
14
+ name: string;
15
+ created?: DateValue;
16
+ updated?: DateValue;
17
+ modified?: DateValue;
18
+ parent?: ParentsMap;
19
+ description?: string;
20
+ shortDescription?: string;
21
+ slug?: string;
22
+ address?: PostalAddress;
23
+ geo?: GeoCoordinates;
24
+ geoPosition?: GeoPosition;
25
+ tags?: string[];
26
+ links?: ProjectLinksBlock;
27
+ creator?: string;
28
+ profilImageUrl?: string;
29
+ profilMediumImageUrl?: string;
30
+ profilThumbImageUrl?: string;
31
+ profilMarkerImageUrl?: string;
32
+ [key: string]: unknown;
33
+ }
34
+ export interface ProjectItemNormalized {
35
+ id: string;
36
+ _id: ObjectID;
37
+ collection: "projects";
38
+ name: string;
39
+ created?: Date;
40
+ updated?: Date;
41
+ modified?: Date;
42
+ parent?: ParentsMap;
43
+ description?: string;
44
+ shortDescription?: string;
45
+ slug?: string;
46
+ address?: PostalAddress;
47
+ geo?: GeoCoordinates;
48
+ geoPosition?: GeoPosition;
49
+ tags?: string[];
50
+ links?: ProjectLinksBlock;
51
+ creator?: string;
52
+ profilImageUrl?: string;
53
+ profilMediumImageUrl?: string;
54
+ profilThumbImageUrl?: string;
55
+ profilMarkerImageUrl?: string;
56
+ [key: string]: unknown;
57
+ }
58
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Project.d.ts","sourceRoot":"","sources":["../../../src/api/serverDataType/Project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,QAAQ,EACR,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,UAAU,EACV,aAAa,EACb,SAAS,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAC;AAEhD,KAAK,YAAY,GAAG,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC;AACjD,KAAK,QAAQ,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,QAAQ,CAAC;IACd,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,QAAQ,CAAC;IACd,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -0,0 +1,86 @@
1
+ import type { GeoCoordinates, GeoPosition, IdObject, LinkMemberOfUserRef, LinkProjectRef, LinkEventsRef, LinkfriendsRef, LinkFollowsUserRef, LinkFollowersUserRef, PostalAddress, DateValue } from "./common.js";
2
+ import type EJSONType from "../../EJSONType.js";
3
+ type ObjectIDCtor = typeof EJSONType["ObjectID"];
4
+ type ObjectID = InstanceType<ObjectIDCtor>;
5
+ export interface UserLinksBlock {
6
+ projects?: Record<string, LinkProjectRef>;
7
+ memberOf?: Record<string, LinkMemberOfUserRef>;
8
+ events?: Record<string, LinkEventsRef>;
9
+ friends?: Record<string, LinkfriendsRef>;
10
+ followers?: Record<string, LinkFollowersUserRef>;
11
+ follows?: Record<string, LinkFollowsUserRef>;
12
+ [k: string]: unknown;
13
+ }
14
+ export interface UserRoles {
15
+ superAdmin?: boolean;
16
+ betaTester?: boolean;
17
+ standalonePageAccess?: boolean;
18
+ toBeValidated?: boolean;
19
+ [k: string]: unknown;
20
+ }
21
+ export interface UserPreferences {
22
+ isOpenData?: boolean;
23
+ badge?: boolean;
24
+ activitypub?: boolean;
25
+ [k: string]: unknown;
26
+ }
27
+ export interface UserItemJson {
28
+ _id: IdObject;
29
+ collection: "citoyens";
30
+ name: string;
31
+ username: string;
32
+ email: string;
33
+ roles: UserRoles;
34
+ created?: DateValue;
35
+ updated?: DateValue;
36
+ modified?: DateValue;
37
+ birthDate?: DateValue;
38
+ language?: string;
39
+ description?: string;
40
+ shortDescription?: string;
41
+ slug?: string;
42
+ address?: PostalAddress;
43
+ geo?: GeoCoordinates;
44
+ geoPosition?: GeoPosition;
45
+ tags?: string[];
46
+ links?: UserLinksBlock;
47
+ profilImageUrl?: string;
48
+ profilMediumImageUrl?: string;
49
+ profilThumbImageUrl?: string;
50
+ profilMarkerImageUrl?: string;
51
+ profilBannerUrl?: string;
52
+ profilRealBannerUrl?: string;
53
+ preferences?: UserPreferences;
54
+ [key: string]: unknown;
55
+ }
56
+ export interface UserItemNormalized {
57
+ id: string;
58
+ _id: ObjectID;
59
+ collection: "citoyens";
60
+ name: string;
61
+ username: string;
62
+ email: string;
63
+ roles: UserRoles;
64
+ created?: Date;
65
+ updated?: Date;
66
+ modified?: Date;
67
+ birthDate?: Date;
68
+ language?: string;
69
+ description?: string;
70
+ shortDescription?: string;
71
+ slug?: string;
72
+ address?: PostalAddress;
73
+ geo?: GeoCoordinates;
74
+ geoPosition?: GeoPosition;
75
+ tags?: string[];
76
+ links?: UserLinksBlock;
77
+ profilImageUrl?: string;
78
+ profilMediumImageUrl?: string;
79
+ profilThumbImageUrl?: string;
80
+ profilMarkerImageUrl?: string;
81
+ profilBannerUrl?: string;
82
+ profilRealBannerUrl?: string;
83
+ preferences?: UserPreferences;
84
+ [key: string]: unknown;
85
+ }
86
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/api/serverDataType/User.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ export type DateValue = number | {
2
+ sec: number;
3
+ usec: number;
4
+ };
5
+ export interface IdObject {
6
+ $id: string;
7
+ }
8
+ export interface ParentRef {
9
+ type: string;
10
+ name?: string;
11
+ }
12
+ export type ParentsMap = Record<string, ParentRef>;
13
+ export type OrganizerMap = Record<string, ParentRef>;
14
+ export interface LinkRef<TType extends string = string> {
15
+ type: TType;
16
+ date?: DateValue | Date;
17
+ isAdmin?: boolean;
18
+ isAdminPending?: boolean;
19
+ isInviting?: boolean;
20
+ invitorId?: string;
21
+ invitorName?: string;
22
+ toBeValidated?: boolean;
23
+ roles?: string[];
24
+ }
25
+ export type LinkMemberRef = LinkRef<"citoyens" | "organizations">;
26
+ export type LinkProjectRef = LinkRef<"projects">;
27
+ export type LinkMemberOfRef = LinkRef<"organizations" | "citoyens">;
28
+ export type LinkContributorsRef = LinkRef<"citoyens" | "organizations">;
29
+ export type LinkEventsRef = LinkRef<"events">;
30
+ export type LinkfriendsRef = LinkRef<"citoyens">;
31
+ export type LinkMemberOfUserRef = LinkRef<"organizations">;
32
+ export type LinkFollowersUserRef = LinkfriendsRef;
33
+ export type LinkFollowsUserRef = LinkfriendsRef;
34
+ export type LinkAttendeesRef = LinkRef<"citoyens">;
35
+ export type LinkOrganizerRef = LinkRef<"citoyens" | "organizations" | "projects">;
36
+ export interface PostalAddress {
37
+ "@type"?: "PostalAddress" | string;
38
+ codeInsee?: string;
39
+ streetAddress?: string;
40
+ postalCode?: string;
41
+ addressLocality?: string;
42
+ level1?: string;
43
+ level1Name?: string;
44
+ level2?: string;
45
+ level2Name?: string;
46
+ level3?: string;
47
+ level3Name?: string;
48
+ level4?: string;
49
+ level4Name?: string;
50
+ addressCountry?: string;
51
+ localityId?: string;
52
+ inseeDensity?: number;
53
+ }
54
+ export interface GeoCoordinates {
55
+ "@type"?: "GeoCoordinates" | string;
56
+ latitude: string;
57
+ longitude: string;
58
+ }
59
+ export interface GeoPosition {
60
+ type: "Point" | string;
61
+ coordinates: [number, number];
62
+ }
63
+ export type DayOfWeek = "Mo" | "Tu" | "We" | "Th" | "Fr" | "Sa" | "Su";
64
+ export interface OpeningHourSpan {
65
+ opens: string;
66
+ closes: string;
67
+ }
68
+ export interface OpeningHoursEntry {
69
+ dayOfWeek: DayOfWeek;
70
+ hours: OpeningHourSpan[];
71
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/api/serverDataType/common.ts"],"names":[],"mappings":"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"}