@communecter/cocolight-api-client 1.0.116 → 1.0.118
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.
- package/dist/cocolight-api-client.browser.js +3 -3
- package/dist/cocolight-api-client.cjs +1 -1
- package/dist/cocolight-api-client.mjs.js +1 -1
- package/dist/cocolight-api-client.vite.mjs.js +1 -1
- package/dist/cocolight-api-client.vite.mjs.js.map +1 -1
- package/package.json +1 -1
- package/src/api/BaseEntity.ts +200 -156
- package/src/api/Event.ts +0 -8
- package/src/api/News.ts +21 -13
- package/src/api/Organization.ts +10 -0
- package/src/api/Project.ts +10 -0
- package/src/api/User.ts +97 -76
- package/types/api/BaseEntity.d.ts +95 -23
- package/types/api/News.d.ts +5 -2
- package/types/api/Organization.d.ts +7 -0
- package/types/api/Project.d.ts +7 -0
- package/types/api/User.d.ts +46 -10
package/src/api/News.ts
CHANGED
|
@@ -457,7 +457,8 @@ export class News extends BaseEntity<NewsItemNormalized> {
|
|
|
457
457
|
* Cette méthode compare l'ID de l'utilisateur connecté avec l'ID de l'auteur
|
|
458
458
|
* de l'actualité. L'auteur peut être soit un objet simple NewsAuthor, soit
|
|
459
459
|
* une instance d'entité User ou Organization.
|
|
460
|
-
*
|
|
460
|
+
* @param options - Options de vérification.
|
|
461
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
461
462
|
* @returns `true` si l'utilisateur connecté est l'auteur, `false` sinon
|
|
462
463
|
* @throws {ApiError} Si l'utilisateur n'est pas connecté (401)
|
|
463
464
|
* @throws {ApiError} Si l'actualité n'a pas d'ID - non enregistrée (404)
|
|
@@ -474,18 +475,25 @@ export class News extends BaseEntity<NewsItemNormalized> {
|
|
|
474
475
|
* }
|
|
475
476
|
* ```
|
|
476
477
|
*/
|
|
477
|
-
override isAuthor(): boolean {
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
478
|
+
override isAuthor(options?: { silent?: boolean }): boolean {
|
|
479
|
+
const silent = options?.silent ?? true;
|
|
480
|
+
|
|
481
|
+
try {
|
|
482
|
+
if (!this.isMe) {
|
|
483
|
+
throw new ApiError("Vous devez être connecté pour vérifier l'auteur.", 401);
|
|
484
|
+
}
|
|
485
|
+
if (!this.id) {
|
|
486
|
+
throw new ApiError(`${this.constructor.name} non enregistrée.`, 404);
|
|
487
|
+
}
|
|
488
|
+
if (!this.serverData) {
|
|
489
|
+
throw new ApiError("Aucune donnée serveur disponible.", 404);
|
|
490
|
+
}
|
|
491
|
+
if (!this.userId) {
|
|
492
|
+
throw new ApiError("Utilisateur non connecté.", 401);
|
|
493
|
+
}
|
|
494
|
+
} catch (e) {
|
|
495
|
+
if (silent) return false;
|
|
496
|
+
throw e;
|
|
489
497
|
}
|
|
490
498
|
|
|
491
499
|
const author = this.serverData.author;
|
package/src/api/Organization.ts
CHANGED
|
@@ -500,6 +500,16 @@ export class Organization extends BaseEntity<OrganizationItemNormalized> {
|
|
|
500
500
|
return super.acceptInvitation();
|
|
501
501
|
}
|
|
502
502
|
|
|
503
|
+
/**
|
|
504
|
+
* {@inheritDoc BaseEntity#requestPromoteToAdmin}
|
|
505
|
+
*
|
|
506
|
+
* Envoie une demande de promotion en tant qu'administrateur de l'organisation.
|
|
507
|
+
* L'utilisateur doit déjà être membre de l'organisation.
|
|
508
|
+
*/
|
|
509
|
+
override requestPromoteToAdmin() {
|
|
510
|
+
return super.requestPromoteToAdmin();
|
|
511
|
+
}
|
|
512
|
+
|
|
503
513
|
/**
|
|
504
514
|
* {@inheritDoc BaseEntity#leave}
|
|
505
515
|
*
|
package/src/api/Project.ts
CHANGED
|
@@ -378,6 +378,16 @@ export class Project extends BaseEntity<ProjectItemNormalized> {
|
|
|
378
378
|
return super.acceptInvitation();
|
|
379
379
|
}
|
|
380
380
|
|
|
381
|
+
/**
|
|
382
|
+
* {@inheritDoc BaseEntity#requestPromoteToAdmin}
|
|
383
|
+
*
|
|
384
|
+
* Envoie une demande de promotion en tant qu'administrateur du projet.
|
|
385
|
+
* L'utilisateur doit déjà être contributeur du projet.
|
|
386
|
+
*/
|
|
387
|
+
override requestPromoteToAdmin() {
|
|
388
|
+
return super.requestPromoteToAdmin();
|
|
389
|
+
}
|
|
390
|
+
|
|
381
391
|
/**
|
|
382
392
|
* {@inheritDoc BaseEntity#leave}
|
|
383
393
|
*
|
package/src/api/User.ts
CHANGED
|
@@ -1033,6 +1033,32 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1033
1033
|
return this.parent?.serverData?.links?.[connectTypeDisconnect]?.[userId] || null;
|
|
1034
1034
|
}
|
|
1035
1035
|
|
|
1036
|
+
/**
|
|
1037
|
+
* Valide les préconditions et retourne le lien parent.
|
|
1038
|
+
*
|
|
1039
|
+
* @param methodName - Nom de la méthode appelante (pour les messages d'erreur).
|
|
1040
|
+
* @param expectedTypes - Types d'entité parent autorisés.
|
|
1041
|
+
* @param options - Options de validation.
|
|
1042
|
+
* @param options.silent - Si `true`, retourne `null` au lieu de lever une exception. Par défaut `true`.
|
|
1043
|
+
* @returns - Le lien parent de l'utilisateur, ou `null` si validation échoue.
|
|
1044
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1045
|
+
* @private
|
|
1046
|
+
*/
|
|
1047
|
+
private _getValidatedParentLink(
|
|
1048
|
+
methodName: string,
|
|
1049
|
+
expectedTypes: string[],
|
|
1050
|
+
options?: { silent?: boolean }
|
|
1051
|
+
): ParentLink | null {
|
|
1052
|
+
const silent = options?.silent ?? true;
|
|
1053
|
+
try {
|
|
1054
|
+
this._validateBasePreconditions(methodName, expectedTypes);
|
|
1055
|
+
} catch (e) {
|
|
1056
|
+
if (silent) return null;
|
|
1057
|
+
throw e;
|
|
1058
|
+
}
|
|
1059
|
+
return this._getParentLinkForUser();
|
|
1060
|
+
}
|
|
1061
|
+
|
|
1036
1062
|
/**
|
|
1037
1063
|
* Rafraîchit l'utilisateur et l'entité parente après une action.
|
|
1038
1064
|
* @private
|
|
@@ -1084,13 +1110,12 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1084
1110
|
* }
|
|
1085
1111
|
* }
|
|
1086
1112
|
*/
|
|
1087
|
-
override isAdmin(): boolean {
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
const parentLink = this._getParentLinkForUser();
|
|
1113
|
+
override isAdmin(options?: { silent?: boolean }): boolean {
|
|
1114
|
+
const parentLink = this._getValidatedParentLink(
|
|
1115
|
+
"isAdmin",
|
|
1116
|
+
["organizations", "projects"],
|
|
1117
|
+
{ silent: options?.silent }
|
|
1118
|
+
);
|
|
1094
1119
|
return this._validateUserLink(parentLink) && parentLink?.isAdmin === true;
|
|
1095
1120
|
}
|
|
1096
1121
|
|
|
@@ -1119,13 +1144,12 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1119
1144
|
* }
|
|
1120
1145
|
* }
|
|
1121
1146
|
*/
|
|
1122
|
-
override isMember(): boolean {
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
const parentLink = this._getParentLinkForUser();
|
|
1147
|
+
override isMember(options?: { silent?: boolean }): boolean {
|
|
1148
|
+
const parentLink = this._getValidatedParentLink(
|
|
1149
|
+
"isMember",
|
|
1150
|
+
["organizations"],
|
|
1151
|
+
{ silent: options?.silent }
|
|
1152
|
+
);
|
|
1129
1153
|
return this._validateUserLink(parentLink);
|
|
1130
1154
|
}
|
|
1131
1155
|
|
|
@@ -1154,13 +1178,12 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1154
1178
|
* }
|
|
1155
1179
|
* }
|
|
1156
1180
|
*/
|
|
1157
|
-
override isContributor(): boolean {
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
const parentLink = this._getParentLinkForUser();
|
|
1181
|
+
override isContributor(options?: { silent?: boolean }): boolean {
|
|
1182
|
+
const parentLink = this._getValidatedParentLink(
|
|
1183
|
+
"isContributor",
|
|
1184
|
+
["projects"],
|
|
1185
|
+
{ silent: options?.silent }
|
|
1186
|
+
);
|
|
1164
1187
|
return this._validateUserLink(parentLink);
|
|
1165
1188
|
}
|
|
1166
1189
|
|
|
@@ -1189,13 +1212,12 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1189
1212
|
* }
|
|
1190
1213
|
* }
|
|
1191
1214
|
*/
|
|
1192
|
-
override isAttendee(): boolean {
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
const parentLink = this._getParentLinkForUser();
|
|
1215
|
+
override isAttendee(options?: { silent?: boolean }): boolean {
|
|
1216
|
+
const parentLink = this._getValidatedParentLink(
|
|
1217
|
+
"isAttendee",
|
|
1218
|
+
["events"],
|
|
1219
|
+
{ silent: options?.silent }
|
|
1220
|
+
);
|
|
1199
1221
|
return this._validateUserLink(parentLink);
|
|
1200
1222
|
}
|
|
1201
1223
|
|
|
@@ -1216,31 +1238,31 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1216
1238
|
* console.log("Invitation en attente:", invitedUser?.data.name);
|
|
1217
1239
|
* ```
|
|
1218
1240
|
*/
|
|
1219
|
-
override isInviting(): boolean {
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
const parentLink = this._getParentLinkForUser();
|
|
1241
|
+
override isInviting(options?: { silent?: boolean }): boolean {
|
|
1242
|
+
const parentLink = this._getValidatedParentLink(
|
|
1243
|
+
"isInviting",
|
|
1244
|
+
["citoyens", "organizations", "projects", "events"],
|
|
1245
|
+
{ silent: options?.silent }
|
|
1246
|
+
);
|
|
1226
1247
|
if (!parentLink) return false;
|
|
1227
|
-
return parentLink
|
|
1248
|
+
return parentLink.isInviting === true;
|
|
1228
1249
|
}
|
|
1229
1250
|
|
|
1230
1251
|
/**
|
|
1231
1252
|
* Vérifie si l'utilisateur connecté a envoyé une invitation d'ami à cet utilisateur.
|
|
1232
1253
|
*
|
|
1254
|
+
* @param options - Options de vérification.
|
|
1255
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1233
1256
|
* @returns - `true` si une invitation d'ami est en attente, `false` sinon.
|
|
1234
1257
|
*/
|
|
1235
|
-
isInvitingFriend(): boolean {
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
const userLink = this._getLinkFromConnectedUser();
|
|
1258
|
+
isInvitingFriend(options?: { silent?: boolean }): boolean {
|
|
1259
|
+
const userLink = this._getValidatedUserLink(
|
|
1260
|
+
"isInvitingFriend",
|
|
1261
|
+
["citoyens", "organizations", "projects", "events"],
|
|
1262
|
+
{ silent: options?.silent }
|
|
1263
|
+
);
|
|
1242
1264
|
if (!userLink) return false;
|
|
1243
|
-
return userLink
|
|
1265
|
+
return userLink.isInviting === true;
|
|
1244
1266
|
}
|
|
1245
1267
|
|
|
1246
1268
|
/**
|
|
@@ -1260,15 +1282,14 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1260
1282
|
* console.log("Invitation admin en attente:", invitedAdmin?.data.name);
|
|
1261
1283
|
* ```
|
|
1262
1284
|
*/
|
|
1263
|
-
override isInvitingAdmin(): boolean {
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
const parentLink = this._getParentLinkForUser();
|
|
1285
|
+
override isInvitingAdmin(options?: { silent?: boolean }): boolean {
|
|
1286
|
+
const parentLink = this._getValidatedParentLink(
|
|
1287
|
+
"isInvitingAdmin",
|
|
1288
|
+
["organizations", "projects"],
|
|
1289
|
+
{ silent: options?.silent }
|
|
1290
|
+
);
|
|
1270
1291
|
if (!parentLink) return false;
|
|
1271
|
-
return (parentLink
|
|
1292
|
+
return (parentLink.isAdminInviting === true || parentLink.isInviting === true) && parentLink.isAdmin === true;
|
|
1272
1293
|
}
|
|
1273
1294
|
|
|
1274
1295
|
/**
|
|
@@ -1290,14 +1311,14 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1290
1311
|
* }
|
|
1291
1312
|
* ```
|
|
1292
1313
|
*/
|
|
1293
|
-
override isAdminPending(): boolean {
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
return parentLink
|
|
1314
|
+
override isAdminPending(options?: { silent?: boolean }): boolean {
|
|
1315
|
+
const parentLink = this._getValidatedParentLink(
|
|
1316
|
+
"isAdminPending",
|
|
1317
|
+
["organizations", "projects"],
|
|
1318
|
+
{ silent: options?.silent }
|
|
1319
|
+
);
|
|
1320
|
+
if (!parentLink) return false;
|
|
1321
|
+
return parentLink.isAdmin === true && parentLink.isAdminPending === true;
|
|
1301
1322
|
}
|
|
1302
1323
|
|
|
1303
1324
|
/**
|
|
@@ -1319,31 +1340,31 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1319
1340
|
* }
|
|
1320
1341
|
* ```
|
|
1321
1342
|
*/
|
|
1322
|
-
override isToBeValidated(): boolean {
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
const parentLink = this._getParentLinkForUser();
|
|
1343
|
+
override isToBeValidated(options?: { silent?: boolean }): boolean {
|
|
1344
|
+
const parentLink = this._getValidatedParentLink(
|
|
1345
|
+
"isToBeValidated",
|
|
1346
|
+
["citoyens", "organizations", "projects", "events"],
|
|
1347
|
+
{ silent: options?.silent }
|
|
1348
|
+
);
|
|
1329
1349
|
if (!parentLink) return false;
|
|
1330
|
-
return parentLink
|
|
1350
|
+
return parentLink.toBeValidated === true;
|
|
1331
1351
|
}
|
|
1332
1352
|
|
|
1333
1353
|
/**
|
|
1334
1354
|
* Vérifie si cet utilisateur a envoyé une demande d'ami en attente de validation.
|
|
1335
1355
|
*
|
|
1356
|
+
* @param options - Options de vérification.
|
|
1357
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1336
1358
|
* @returns - `true` si une demande d'ami est en attente de validation, `false` sinon.
|
|
1337
1359
|
*/
|
|
1338
|
-
isToBeValidatedFriend(): boolean {
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
const userLink = this._getLinkFromConnectedUser();
|
|
1360
|
+
isToBeValidatedFriend(options?: { silent?: boolean }): boolean {
|
|
1361
|
+
const userLink = this._getValidatedUserLink(
|
|
1362
|
+
"isToBeValidatedFriend",
|
|
1363
|
+
["citoyens", "organizations", "projects", "events"],
|
|
1364
|
+
{ silent: options?.silent }
|
|
1365
|
+
);
|
|
1345
1366
|
if (!userLink) return false;
|
|
1346
|
-
return userLink
|
|
1367
|
+
return userLink.toBeValidated === true;
|
|
1347
1368
|
}
|
|
1348
1369
|
|
|
1349
1370
|
/**
|
|
@@ -161,6 +161,7 @@ interface MinimalUserLink {
|
|
|
161
161
|
isInviting?: boolean;
|
|
162
162
|
isAdminInviting?: boolean;
|
|
163
163
|
isAdminPending?: boolean;
|
|
164
|
+
isAdmin?: boolean;
|
|
164
165
|
}
|
|
165
166
|
type EntityFilterValue = string | boolean | RegExp | ((value: any) => boolean);
|
|
166
167
|
type EntityFilters = Record<string, EntityFilterValue>;
|
|
@@ -1273,6 +1274,32 @@ export declare class BaseEntity<TServerData = any> {
|
|
|
1273
1274
|
* @protected
|
|
1274
1275
|
*/
|
|
1275
1276
|
protected _assertEntityType(...types: string[]): void;
|
|
1277
|
+
/**
|
|
1278
|
+
* Vérifie que l'entité N'EST PAS d'un type spécifique.
|
|
1279
|
+
*
|
|
1280
|
+
* @param methodName - Nom de la méthode (pour le message d'erreur).
|
|
1281
|
+
* @param excludedTypes - Types d'entité NON supportés (arguments individuels ou tableau).
|
|
1282
|
+
* @throws {ApiError} - Si l'entité est d'un type exclu.
|
|
1283
|
+
* @protected
|
|
1284
|
+
* @example
|
|
1285
|
+
* this._assertNotEntityType("method", "poi", "badges", "news");
|
|
1286
|
+
* this._assertNotEntityType("method", ["poi", "badges", "news"]);
|
|
1287
|
+
*/
|
|
1288
|
+
protected _assertNotEntityType(methodName: string, ...excludedTypes: (string | string[])[]): void;
|
|
1289
|
+
/**
|
|
1290
|
+
* Valide les préconditions et retourne le lien utilisateur.
|
|
1291
|
+
*
|
|
1292
|
+
* @param methodName - Nom de la méthode appelante (pour les messages d'erreur).
|
|
1293
|
+
* @param expectedTypes - Types d'entité autorisés.
|
|
1294
|
+
* @param options - Options de validation.
|
|
1295
|
+
* @param options.silent - Si `true`, retourne `null` au lieu de lever une exception. Par défaut `true`.
|
|
1296
|
+
* @returns - Le lien de l'utilisateur connecté avec l'entité, ou `null` si validation échoue.
|
|
1297
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1298
|
+
* @protected
|
|
1299
|
+
*/
|
|
1300
|
+
protected _getValidatedUserLink(methodName: string, expectedTypes: string[], options?: {
|
|
1301
|
+
silent?: boolean;
|
|
1302
|
+
}): MinimalUserLink | null;
|
|
1276
1303
|
/**
|
|
1277
1304
|
* Vérifie si l'entité est liée à un type de lien spécifique.
|
|
1278
1305
|
*
|
|
@@ -1283,92 +1310,137 @@ export declare class BaseEntity<TServerData = any> {
|
|
|
1283
1310
|
protected _isLinked(linkType: string): boolean;
|
|
1284
1311
|
/**
|
|
1285
1312
|
* Vérifie si l'utilisateur est l'auteur de l'entité.
|
|
1286
|
-
*
|
|
1313
|
+
* @param options - Options de vérification.
|
|
1314
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1287
1315
|
* @returns - `true` si l'utilisateur est l'auteur, `false` sinon.
|
|
1288
1316
|
* @throws {ApiError} - Si l'utilisateur n'est pas connecté ou si les données du serveur ne sont pas disponibles.
|
|
1289
1317
|
*/
|
|
1290
|
-
isAuthor(
|
|
1318
|
+
isAuthor(options?: {
|
|
1319
|
+
silent?: boolean;
|
|
1320
|
+
}): boolean;
|
|
1291
1321
|
/**
|
|
1292
1322
|
* Vérifie si l'utilisateur est administrateur de l'entité.
|
|
1293
1323
|
*
|
|
1294
1324
|
* @param options - Options de vérification.
|
|
1295
1325
|
* @param options.checkHierarchy - Si `true`, vérifie également si l'utilisateur est admin via la hiérarchie parent. Par défaut `false`.
|
|
1326
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1296
1327
|
* @returns - `true` si l'utilisateur est administrateur, `false` sinon.
|
|
1297
|
-
* @throws {ApiError}
|
|
1328
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1298
1329
|
*/
|
|
1299
1330
|
isAdmin(options?: {
|
|
1300
1331
|
checkHierarchy?: boolean;
|
|
1332
|
+
silent?: boolean;
|
|
1301
1333
|
}): boolean;
|
|
1302
1334
|
/**
|
|
1303
1335
|
* Vérifie si l'utilisateur est soit l'auteur, soit administrateur de l'entité.
|
|
1304
1336
|
*
|
|
1337
|
+
* @param options - Options de vérification.
|
|
1338
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1305
1339
|
* @returns - `true` si l'utilisateur est l'auteur ou administrateur, `false` sinon.
|
|
1306
|
-
* @throws {ApiError}
|
|
1340
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1307
1341
|
*/
|
|
1308
|
-
isAuthorOrAdmin(
|
|
1342
|
+
isAuthorOrAdmin(options?: {
|
|
1343
|
+
silent?: boolean;
|
|
1344
|
+
}): boolean;
|
|
1309
1345
|
/**
|
|
1310
1346
|
* Vérifie si l'utilisateur est membre de l'entité.
|
|
1311
1347
|
*
|
|
1348
|
+
* @param options - Options de vérification.
|
|
1349
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1312
1350
|
* @returns - `true` si l'utilisateur est membre, `false` sinon.
|
|
1313
|
-
* @throws {ApiError}
|
|
1351
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1314
1352
|
*/
|
|
1315
|
-
isMember(
|
|
1353
|
+
isMember(options?: {
|
|
1354
|
+
silent?: boolean;
|
|
1355
|
+
}): boolean;
|
|
1316
1356
|
/**
|
|
1317
1357
|
* Vérifie si l'utilisateur est contributeur de l'entité.
|
|
1318
1358
|
*
|
|
1359
|
+
* @param options - Options de vérification.
|
|
1360
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1319
1361
|
* @returns - `true` si l'utilisateur est contributeur, `false` sinon.
|
|
1320
|
-
* @throws {ApiError}
|
|
1362
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1321
1363
|
*/
|
|
1322
|
-
isContributor(
|
|
1364
|
+
isContributor(options?: {
|
|
1365
|
+
silent?: boolean;
|
|
1366
|
+
}): boolean;
|
|
1323
1367
|
/**
|
|
1324
1368
|
* Vérifie si l'utilisateur est participant de l'entité.
|
|
1325
1369
|
*
|
|
1370
|
+
* @param options - Options de vérification.
|
|
1371
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1326
1372
|
* @returns - `true` si l'utilisateur est participant, `false` sinon.
|
|
1327
|
-
* @throws {ApiError}
|
|
1373
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1328
1374
|
*/
|
|
1329
|
-
isAttendee(
|
|
1375
|
+
isAttendee(options?: {
|
|
1376
|
+
silent?: boolean;
|
|
1377
|
+
}): boolean;
|
|
1330
1378
|
/**
|
|
1331
1379
|
* Vérifie si l'utilisateur suit l'entité.
|
|
1332
1380
|
*
|
|
1381
|
+
* @param options - Options de vérification.
|
|
1382
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1333
1383
|
* @returns - `true` si l'utilisateur suit l'entité, `false` sinon.
|
|
1334
|
-
* @throws {ApiError}
|
|
1384
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1335
1385
|
*/
|
|
1336
|
-
isFollower(
|
|
1386
|
+
isFollower(options?: {
|
|
1387
|
+
silent?: boolean;
|
|
1388
|
+
}): boolean;
|
|
1337
1389
|
/**
|
|
1338
1390
|
* Vérifie si l'utilisateur est abonné à l'entité.
|
|
1339
1391
|
*
|
|
1392
|
+
* @param options - Options de vérification.
|
|
1393
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1340
1394
|
* @returns - `true` si l'utilisateur est abonné, `false` sinon.
|
|
1341
|
-
* @throws {ApiError}
|
|
1395
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1342
1396
|
*/
|
|
1343
|
-
isFollowing(
|
|
1397
|
+
isFollowing(options?: {
|
|
1398
|
+
silent?: boolean;
|
|
1399
|
+
}): boolean;
|
|
1344
1400
|
/**
|
|
1345
1401
|
* Vérifie si le lien de l'utilisateur connecté est en attente de validation.
|
|
1346
1402
|
*
|
|
1403
|
+
* @param options - Options de vérification.
|
|
1404
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1347
1405
|
* @returns - `true` si le lien est à valider, `false` sinon.
|
|
1348
|
-
* @throws {ApiError}
|
|
1406
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1349
1407
|
*/
|
|
1350
|
-
isToBeValidated(
|
|
1408
|
+
isToBeValidated(options?: {
|
|
1409
|
+
silent?: boolean;
|
|
1410
|
+
}): boolean;
|
|
1351
1411
|
/**
|
|
1352
1412
|
* Vérifie si l'utilisateur connecté a été invité à rejoindre l'entité.
|
|
1353
1413
|
*
|
|
1414
|
+
* @param options - Options de vérification.
|
|
1415
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1354
1416
|
* @returns - `true` si l'utilisateur est invité, `false` sinon.
|
|
1355
|
-
* @throws {ApiError}
|
|
1417
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1356
1418
|
*/
|
|
1357
|
-
isInviting(
|
|
1419
|
+
isInviting(options?: {
|
|
1420
|
+
silent?: boolean;
|
|
1421
|
+
}): boolean;
|
|
1358
1422
|
/**
|
|
1359
1423
|
* Vérifie si l'utilisateur connecté a été invité en tant qu'administrateur.
|
|
1360
1424
|
*
|
|
1425
|
+
* @param options - Options de vérification.
|
|
1426
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1361
1427
|
* @returns - `true` si l'utilisateur est invité admin, `false` sinon.
|
|
1362
|
-
* @throws {ApiError}
|
|
1428
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1363
1429
|
*/
|
|
1364
|
-
isInvitingAdmin(
|
|
1430
|
+
isInvitingAdmin(options?: {
|
|
1431
|
+
silent?: boolean;
|
|
1432
|
+
}): boolean;
|
|
1365
1433
|
/**
|
|
1366
1434
|
* Vérifie si l'utilisateur connecté est administrateur en attente de confirmation.
|
|
1367
1435
|
*
|
|
1436
|
+
* @param options - Options de vérification.
|
|
1437
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
1368
1438
|
* @returns - `true` si l'utilisateur est admin en attente, `false` sinon.
|
|
1369
|
-
* @throws {ApiError}
|
|
1439
|
+
* @throws {ApiError} - Si `silent` est `false` et que les préconditions ne sont pas remplies.
|
|
1370
1440
|
*/
|
|
1371
|
-
isAdminPending(
|
|
1441
|
+
isAdminPending(options?: {
|
|
1442
|
+
silent?: boolean;
|
|
1443
|
+
}): boolean;
|
|
1372
1444
|
/**
|
|
1373
1445
|
* Récupère le JSON personnalisé de l'entité
|
|
1374
1446
|
*
|
package/types/api/News.d.ts
CHANGED
|
@@ -120,7 +120,8 @@ export declare class News extends BaseEntity<NewsItemNormalized> {
|
|
|
120
120
|
* Cette méthode compare l'ID de l'utilisateur connecté avec l'ID de l'auteur
|
|
121
121
|
* de l'actualité. L'auteur peut être soit un objet simple NewsAuthor, soit
|
|
122
122
|
* une instance d'entité User ou Organization.
|
|
123
|
-
*
|
|
123
|
+
* @param options - Options de vérification.
|
|
124
|
+
* @param options.silent - Si `true`, retourne `false` au lieu de lever une exception. Par défaut `true`.
|
|
124
125
|
* @returns `true` si l'utilisateur connecté est l'auteur, `false` sinon
|
|
125
126
|
* @throws {ApiError} Si l'utilisateur n'est pas connecté (401)
|
|
126
127
|
* @throws {ApiError} Si l'actualité n'a pas d'ID - non enregistrée (404)
|
|
@@ -137,5 +138,7 @@ export declare class News extends BaseEntity<NewsItemNormalized> {
|
|
|
137
138
|
* }
|
|
138
139
|
* ```
|
|
139
140
|
*/
|
|
140
|
-
isAuthor(
|
|
141
|
+
isAuthor(options?: {
|
|
142
|
+
silent?: boolean;
|
|
143
|
+
}): boolean;
|
|
141
144
|
}
|
|
@@ -246,6 +246,13 @@ export declare class Organization extends BaseEntity<OrganizationItemNormalized>
|
|
|
246
246
|
* Cette action valide un lien en attente avec l'option `isInviting`.
|
|
247
247
|
*/
|
|
248
248
|
acceptInvitation(): Promise<unknown>;
|
|
249
|
+
/**
|
|
250
|
+
* {@inheritDoc BaseEntity#requestPromoteToAdmin}
|
|
251
|
+
*
|
|
252
|
+
* Envoie une demande de promotion en tant qu'administrateur de l'organisation.
|
|
253
|
+
* L'utilisateur doit déjà être membre de l'organisation.
|
|
254
|
+
*/
|
|
255
|
+
requestPromoteToAdmin(): Promise<unknown>;
|
|
249
256
|
/**
|
|
250
257
|
* {@inheritDoc BaseEntity#leave}
|
|
251
258
|
*
|
package/types/api/Project.d.ts
CHANGED
|
@@ -162,6 +162,13 @@ export declare class Project extends BaseEntity<ProjectItemNormalized> {
|
|
|
162
162
|
* Cette action valide un lien en attente avec l'option `isInviting`.
|
|
163
163
|
*/
|
|
164
164
|
acceptInvitation(): Promise<unknown>;
|
|
165
|
+
/**
|
|
166
|
+
* {@inheritDoc BaseEntity#requestPromoteToAdmin}
|
|
167
|
+
*
|
|
168
|
+
* Envoie une demande de promotion en tant qu'administrateur du projet.
|
|
169
|
+
* L'utilisateur doit déjà être contributeur du projet.
|
|
170
|
+
*/
|
|
171
|
+
requestPromoteToAdmin(): Promise<unknown>;
|
|
165
172
|
/**
|
|
166
173
|
* {@inheritDoc BaseEntity#leave}
|
|
167
174
|
*
|