@communecter/cocolight-api-client 1.0.81 → 1.0.82
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 +1 -1
- 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/User.ts +15 -6
- package/types/api/User.d.ts +9 -2
package/package.json
CHANGED
package/src/api/User.ts
CHANGED
|
@@ -1121,7 +1121,7 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1121
1121
|
this._validateRoleCheckPreconditions("isInvitingAdmin", ["organizations", "projects"]);
|
|
1122
1122
|
const parentLink = this._getParentLinkForUser();
|
|
1123
1123
|
if (!parentLink) return false;
|
|
1124
|
-
return parentLink?.isAdminInviting === true && parentLink?.isAdmin === true;
|
|
1124
|
+
return (parentLink?.isAdminInviting === true || parentLink?.isInviting === true) && parentLink?.isAdmin === true;
|
|
1125
1125
|
}
|
|
1126
1126
|
|
|
1127
1127
|
/**
|
|
@@ -1186,6 +1186,8 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1186
1186
|
* vers l'organisation ou le projet parent. Si l'utilisateur n'a pas encore de lien,
|
|
1187
1187
|
* une demande de connexion est créée.
|
|
1188
1188
|
*
|
|
1189
|
+
* @param {Object} [options] - Options de la méthode
|
|
1190
|
+
* @param {boolean} [options.admin=false] - Si true, utilise "admin" comme connectType au lieu du type par défaut (connectTypeConnect)
|
|
1189
1191
|
* @returns {Promise<unknown>} La réponse de l'API après création de la demande
|
|
1190
1192
|
* @throws {ApiError} Si l'utilisateur n'est pas connecté, pas admin, ou si le parent n'est pas défini
|
|
1191
1193
|
* @throws {ApiError} Si l'utilisateur est déjà en attente de validation
|
|
@@ -1193,14 +1195,17 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1193
1195
|
*
|
|
1194
1196
|
* @example
|
|
1195
1197
|
* ```typescript
|
|
1196
|
-
* // Un admin récupère les membres et envoie une invitation
|
|
1198
|
+
* // Un admin récupère les membres et envoie une invitation (type par défaut)
|
|
1197
1199
|
* const org = await me.organization({ slug: "myOrg" });
|
|
1198
1200
|
* const users = await org.getMembers();
|
|
1199
1201
|
* const user = users.results[0];
|
|
1200
1202
|
* await user.sendRequestToJoinParent();
|
|
1203
|
+
*
|
|
1204
|
+
* // Avec le type admin explicite
|
|
1205
|
+
* await user.sendRequestToJoinParent({ admin: true });
|
|
1201
1206
|
* ```
|
|
1202
1207
|
*/
|
|
1203
|
-
async sendRequestToJoinParent(): Promise<unknown> {
|
|
1208
|
+
async sendRequestToJoinParent({ admin }: { admin: boolean } = { admin: false }): Promise<unknown> {
|
|
1204
1209
|
this._validateRoleCheckPreconditions("sendRequestToJoinParent", ["organizations", "projects"]);
|
|
1205
1210
|
|
|
1206
1211
|
const { connectTypeConnect } = this.parent!._getLinkMeta();
|
|
@@ -1220,7 +1225,7 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1220
1225
|
childType: "citoyens",
|
|
1221
1226
|
parentType,
|
|
1222
1227
|
parentId: this.parent!.id!,
|
|
1223
|
-
connectType: connectTypeConnect
|
|
1228
|
+
connectType: admin ? "admin" : connectTypeConnect
|
|
1224
1229
|
};
|
|
1225
1230
|
|
|
1226
1231
|
const retour = await this.callIsConnected(() => this.endpointApi.connect(data));
|
|
@@ -1233,7 +1238,7 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1233
1238
|
}
|
|
1234
1239
|
|
|
1235
1240
|
// Cas : déjà en attente
|
|
1236
|
-
if (parentLink.
|
|
1241
|
+
if (parentLink.isInviting || parentLink?.isAdminInviting) {
|
|
1237
1242
|
throw new ApiError("Vous êtes déjà en attente de validation.", 400);
|
|
1238
1243
|
}
|
|
1239
1244
|
|
|
@@ -1471,7 +1476,11 @@ export class User extends BaseEntity<UserItemNormalized> {
|
|
|
1471
1476
|
throw new ApiError("Cet utilisateur n'est pas membre de cette entité.", 400);
|
|
1472
1477
|
}
|
|
1473
1478
|
|
|
1474
|
-
if (parentLink
|
|
1479
|
+
if (parentLink?.isAdmin && (parentLink?.isInviting || parentLink?.isAdminInviting)) {
|
|
1480
|
+
throw new ApiError("Cet utilisateur est déjà en cours d'invitation en tant qu'admin.", 400);
|
|
1481
|
+
}
|
|
1482
|
+
|
|
1483
|
+
if (parentLink?.isAdmin && !parentLink?.isInviting && !parentLink?.isAdminInviting) {
|
|
1475
1484
|
throw new ApiError("Cet utilisateur est déjà admin.", 400);
|
|
1476
1485
|
}
|
|
1477
1486
|
|
package/types/api/User.d.ts
CHANGED
|
@@ -562,6 +562,8 @@ export declare class User extends BaseEntity<UserItemNormalized> {
|
|
|
562
562
|
* vers l'organisation ou le projet parent. Si l'utilisateur n'a pas encore de lien,
|
|
563
563
|
* une demande de connexion est créée.
|
|
564
564
|
*
|
|
565
|
+
* @param {Object} [options] - Options de la méthode
|
|
566
|
+
* @param {boolean} [options.admin=false] - Si true, utilise "admin" comme connectType au lieu du type par défaut (connectTypeConnect)
|
|
565
567
|
* @returns {Promise<unknown>} La réponse de l'API après création de la demande
|
|
566
568
|
* @throws {ApiError} Si l'utilisateur n'est pas connecté, pas admin, ou si le parent n'est pas défini
|
|
567
569
|
* @throws {ApiError} Si l'utilisateur est déjà en attente de validation
|
|
@@ -569,14 +571,19 @@ export declare class User extends BaseEntity<UserItemNormalized> {
|
|
|
569
571
|
*
|
|
570
572
|
* @example
|
|
571
573
|
* ```typescript
|
|
572
|
-
* // Un admin récupère les membres et envoie une invitation
|
|
574
|
+
* // Un admin récupère les membres et envoie une invitation (type par défaut)
|
|
573
575
|
* const org = await me.organization({ slug: "myOrg" });
|
|
574
576
|
* const users = await org.getMembers();
|
|
575
577
|
* const user = users.results[0];
|
|
576
578
|
* await user.sendRequestToJoinParent();
|
|
579
|
+
*
|
|
580
|
+
* // Avec le type admin explicite
|
|
581
|
+
* await user.sendRequestToJoinParent({ admin: true });
|
|
577
582
|
* ```
|
|
578
583
|
*/
|
|
579
|
-
sendRequestToJoinParent(
|
|
584
|
+
sendRequestToJoinParent({ admin }?: {
|
|
585
|
+
admin: boolean;
|
|
586
|
+
}): Promise<unknown>;
|
|
580
587
|
/**
|
|
581
588
|
* Valide une demande de membre en attente de validation.
|
|
582
589
|
*
|