@beam3_dev/api_module 0.0.3 → 0.0.4

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 (32) hide show
  1. package/dist/wb3Api.js +2000 -0
  2. package/dist/wb3Api.umd.cjs +78 -0
  3. package/package.json +8 -5
  4. package/index.html +0 -13
  5. package/src/index.js +0 -164
  6. package/src/lib/add/index.js +0 -12
  7. package/src/lib/api/index.js +0 -9
  8. package/src/lib/gouv/colors.js +0 -31
  9. package/src/lib/gouv/gouv_api.js +0 -139
  10. package/src/lib/plateform/Compass/index.js +0 -51
  11. package/src/lib/plateform/Swym/3dswym_api.js +0 -141
  12. package/src/lib/plateform/Swym/communaute/index.js +0 -443
  13. package/src/lib/plateform/Swym/idea/index.js +0 -333
  14. package/src/lib/plateform/Swym/media/index.js +0 -0
  15. package/src/lib/plateform/Swym/post/index.js +0 -0
  16. package/src/lib/plateform/Swym/question/index.js +0 -0
  17. package/src/lib/plateform/Swym/user/index.js +0 -87
  18. package/src/lib/plateform/Swym/wiki/index.js +0 -0
  19. package/src/lib/plateform/Tag/index.js +0 -384
  20. package/src/lib/plateform/Usersgroup/index.js +0 -449
  21. package/src/lib/plateform/main/3dcompass_api.js +0 -78
  22. package/src/lib/plateform/main/3dexperience_api.js +0 -143
  23. package/src/lib/plateform/main/3dspace_api.js +0 -1310
  24. package/src/lib/plateform/main/getActiveServices.js +0 -92
  25. package/src/lib/plateform/main/getCSRFToken.js +0 -30
  26. package/src/lib/plateform/main/getCTX.js +0 -46
  27. package/src/lib/plateform/main/getDataFrom3DSpace.js +0 -47
  28. package/src/lib/plateform/main/getDownloadDocument.js +0 -40
  29. package/src/lib/plateform/main/loadDatas.js +0 -189
  30. package/src/lib/plateform/main/pushDataIn3DSpace.js +0 -61
  31. package/src/lib/utils/updateEvent.js +0 -27
  32. package/vite.config.js +0 -23
@@ -1,449 +0,0 @@
1
- import { _httpCallAuthenticated } from "../main/3dexperience_api";
2
-
3
- //LINK - https://media.3ds.com/support/documentation/developer/Cloud/en/English/CAAi3DXUGREST/UsersGroup_v1.htm#
4
- //!SECTION, Pour faire des modification de UG il faut être OWNER
5
-
6
- // URI de test sur le tenant PIVETEAU_TEST:
7
- const _uri = "uuid:3fcb61f2-6417-476d-8a9c-a16fb888771e";
8
-
9
- const topHeader = {
10
- "Content-Type": "application/json",
11
- Accept: "application/json,text/javascript,*/*",
12
- };
13
-
14
- /**
15
- * @description La fonction `createUserGroups` crée un nouveau groupe d'utilisateurs avec les détails et les membres
16
- * spécifiés. Attention, l'indexation du UserGroup met du temps.
17
-
18
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
19
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
20
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
21
- * @param {Object} credentials.currentUser.email - Le paramètre `currentUser` est un qui contient les informations de l'utilisateur qui envoie le message(appeler depuis la fonction `_3DSwym_get_currentuser`).
22
- *
23
- * @param {Object} datas - Les informations du groupe d'utilisateurs.
24
- * @param {String} datas.title - Le titre du groupe d'utilisateurs. Entre 3 et 128 caractères, obligatoire.
25
- * @param {String} datas.description - La description du groupe d'utilisateurs. 512 caractères max.
26
- * @param {Array} datas.members - Un tableau d'emails des membres du groupe d'utilisateurs. 100 max email par groupe.
27
- * @param {String} datas.sharing - Le droit de partage du groupe d'utilisateurs. owner/manager/viewer
28
- * @param {String} datas.visibility - La visibilité du groupe d'utilisateurs. public/private
29
- * @param {Function} [onDone] - Une fonction de rappel qui sera appelée lorsque l'appel d'API réussit et que les
30
- * groupes d'utilisateurs sont créés. Il recevra les données de réponse comme argument.
31
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
32
- * erreur lors de l'exécution de la fonction `createUserGroups`. Il vous permet de gérer et de traiter
33
- * l'erreur de manière personnalisée.
34
- */
35
- export function createUserGroups(
36
- credentials,
37
- datas,
38
- onDone = undefined,
39
- onError = undefined,
40
- ) {
41
- const { space, currentUser } = credentials;
42
- const URL = {
43
- URIUGr: "/3drdfpersist/resources/v1/usersgroup",
44
- };
45
- const url = `${space}${URL.URIUGr}`;
46
-
47
- const templateData = {
48
- groups: [
49
- {
50
- title: datas.title,
51
- description: datas.description,
52
- members: datas.members || [currentUser.email, "samuel.mureau@beam3.fr"],
53
- pending_members: [],
54
- sharing: datas.sharing,
55
- visibility: datas.visibility,
56
- },
57
- ],
58
- };
59
-
60
- _httpCallAuthenticated(url, {
61
- method: "POST",
62
- headers: topHeader,
63
- data: JSON.stringify(templateData),
64
- onComplete(response) {
65
- if (onDone) onDone(JSON.parse(response));
66
- },
67
- onFailure(err, headers) {
68
- console.log(err);
69
- const info = err;
70
- info["msg"] = headers.errormsg;
71
- info["errCode"] = headers.errorcode;
72
- console.log("❌ sendDirectMessage => ", info);
73
- if (onError) onError(info);
74
- },
75
- });
76
- }
77
-
78
- /**
79
- * @description La fonction `getComplementUG` effectue une requête GET vers un URI spécifié avec les informations
80
- * d'authentification et renvoie la réponse.
81
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
82
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
83
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
84
- * @param {String} credentials.tenant - L'identifiant du tenant sur lequel l'API est déployée.(ex: 1132100968447)
85
- * @param {String} [uri] - Le paramètre `uri` est l'identifiant de la ressource dont vous souhaitez récupérer le
86
- * complément. (ex: uuid:dcad14cc-5bcd-45fd-a54d-246b95047d45)
87
- * @param {Function} [onDone] - Le paramètre `onDone` est une fonction de rappel qui sera appelée lorsque la
88
- * requête HTTP sera terminée avec succès. Il prend un argument, qui correspond aux données de réponse
89
- * de la requête.
90
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
91
- * erreur lors de l'exécution de la fonction `getComplementUG`. Il vous permet de gérer et de traiter
92
- * les informations d'erreur.
93
- */
94
- export function getComplementUG(
95
- credentials,
96
- uri,
97
- onDone = undefined,
98
- onError = undefined,
99
- ) {
100
- const { space, tenant } = credentials;
101
- const baseURL = space;
102
- const URI = `/3drdfpersist/v1/resources/${uri}`;
103
- const OPTs = `?$mask=dsaccess:Mask.GroupUI.Properties&tenant=dstenant:${tenant}`;
104
- const URL = `${baseURL}${URI}${OPTs}`;
105
-
106
- const headers = {
107
- "Content-Type": "application/json",
108
- Accept: "application/json,text/javascript,*/*",
109
- };
110
- const opts = {
111
- method: "GET",
112
- headers: headers,
113
- };
114
-
115
- _httpCallAuthenticated(URL, {
116
- opts,
117
- onComplete(response) {
118
- if (onDone) onDone(JSON.parse(response));
119
- },
120
- onFailure(err, headers) {
121
- const info = err;
122
- info["msg"] = headers.errormsg;
123
- info["errCode"] = headers.errorcode;
124
-
125
- if (onError) onError(info);
126
- },
127
- });
128
- }
129
-
130
- /**
131
- * @description La fonction `getUsersGroupRules` effectue une requête HTTP GET pour récupérer une liste de
132
- * responsabilités de groupe pour un groupe d'utilisateurs.
133
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
134
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
135
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
136
- * @param {String} credentials.tenant - L'identifiant du tenant sur lequel l'API est déployée.(ex: 1132100968447)
137
- * @param {Function} [onDone] - Le paramètre `onDone` est une fonction de rappel qui sera appelée lorsque la
138
- * requête HTTP sera terminée avec succès. Il faut un argument, qui correspond aux données de réponse
139
- * analysées au format JSON.
140
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
141
- * erreur lors de l'exécution de la fonction `getUsersGroupRules`. C'est un paramètre facultatif, donc
142
- * s'il n'est pas fourni, la fonction ne fera rien en cas d'erreur.
143
- */
144
- export function getUsersGroupRules(
145
- credentials,
146
- onDone = undefined,
147
- onError = undefined,
148
- ) {
149
- const { space, tenant } = credentials;
150
- const baseURL = space;
151
- const URI =
152
- "/3drdfpersist/resources/v1/option-sets/dsusergroup:ListOfGroupResponsibilities/options";
153
- const OPTS = `?tenant=dstenant:${tenant}`;
154
- const OPTsH = {
155
- method: "GET",
156
- Accept: "application/json,*/*,test/javascript",
157
- };
158
- const URL = `${baseURL}${URI}${OPTS}`;
159
-
160
- _httpCallAuthenticated(URL, {
161
- OPTsH,
162
- onComplete(response) {
163
- if (onDone) onDone(JSON.parse(response));
164
- },
165
- onFailure(err, headers) {
166
- const info = err;
167
- info["msg"] = headers.errormsg;
168
- info["errCode"] = headers.errorcode;
169
-
170
- if (onError) onError(info);
171
- },
172
- });
173
- }
174
-
175
- /**
176
- * @description La fonction « getUserGroupsList » récupère une liste de groupes d'utilisateurs d'un serveur en
177
- * utilisant les informations d'identification fournies et appelle la fonction de rappel « onDone »
178
- * avec la réponse.
179
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
180
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
181
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
182
- * @param {String} credentials.tenant - L'identifiant du tenant sur lequel l'API est déployée.(ex: 1132100968447)
183
- * @param {Object} credentials.currentUser.email - Le paramètre `currentUser` est un qui contient les informations de l'utilisateur qui envoie le message(appeler depuis la fonction `_3DSwym_get_currentuser`)
184
- * @param {Function} [onDone] - Une fonction de rappel qui sera appelée lorsque l'opération sera terminée avec
185
- * succès. Il recevra la réponse en paramètre.
186
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
187
- * erreur lors de l'exécution de la fonction `getUserGroupsList`. Il vous permet de gérer et de
188
- * répondre à toute erreur qui se produit.
189
- */
190
- export function getUserGroupsList(
191
- credentials,
192
- onDone = undefined,
193
- onError = undefined,
194
- ) {
195
- const { space, currentUser } = credentials;
196
- const URI = "/3drdfpersist/resources/v1/usersgroup";
197
- const opt =
198
- "?select=uri,title,description,owner,members,pending_members,creation_date,modification_date,visibility";
199
- const url = `${space}${URI}${opt}`;
200
- const header = {
201
- "Content-Type": "application/json",
202
- Accept: "application/json,text/javascript,*/*",
203
- };
204
- const opts = { method: "GET", headers: header };
205
- try {
206
- _httpCallAuthenticated(url, {
207
- opts,
208
- onComplete(response) {
209
- const repUG = JSON.parse(response);
210
- const reponse = {};
211
- const UG = repUG.groups.filter((element) => {
212
- return element.uri.startsWith("uuid:");
213
- });
214
-
215
- if (currentUser && Object.keys(currentUser).length > 0) {
216
- const iamOwner = UG.filter((element) => {
217
- return element.owner === currentUser.email;
218
- });
219
- const iamMember = UG.filter((element) => {
220
- return element.members.includes(currentUser.email);
221
- });
222
- const iam = iamOwner.concat(iamMember);
223
- reponse["iam"] = iam;
224
- reponse["UG"] = UG;
225
- reponse["iamMember"] = iamMember;
226
-
227
- getUsersGroupRules(
228
- credentials,
229
- (rules) => {
230
- reponse["rules"] = rules;
231
- if (onDone) onDone(reponse);
232
- },
233
- (err) => {
234
- if (onError) onError(err);
235
- },
236
- );
237
- }
238
- },
239
- onFailure(err) {
240
- if (onError) onError(err);
241
- },
242
- });
243
- } catch (error) {
244
- console.log(error);
245
- }
246
- }
247
-
248
- /**
249
- * @description La fonction deleteUserGroups est utilisée pour supprimer des groupes d'utilisateurs à l'aide des
250
- * informations d'identification et de l'URI fournis.
251
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
252
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
253
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
254
- * @param {String} [uri] - Le paramètre `uri` est l'identifiant du groupe d'utilisateurs que vous souhaitez
255
- * supprimer. Il est utilisé pour construire l'URL de la requête DELETE.(ex: uuid:dcad14cc-5bcd-45fd-a54d-246b95047d45)
256
- */
257
-
258
- export function deleteUserGroups(credentials, uri) {
259
- const { space } = credentials;
260
- const URI = "/3drdfpersist/resources/v1/usersgroup";
261
- const url = `${space}${URI}/${uri}`;
262
-
263
- const opts = {
264
- method: "DELETE",
265
- };
266
- _httpCallAuthenticated(url, opts);
267
- }
268
-
269
- /**
270
- * @description La fonction `patchUserGroups` est utilisée pour mettre à jour les groupes d'utilisateurs en envoyant
271
- * une requête PATCH à un URI spécifié avec les données fournies.
272
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
273
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
274
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
275
- * @param {String} credentials.tenant - L'identifiant du tenant sur lequel l'API est déployée.(ex: 1132100968447)
276
- * @param uri - Le paramètre `uri` est une chaîne qui représente l'identifiant du groupe d'utilisateurs
277
- * que vous souhaitez corriger. Il est utilisé pour construire l'URL de la requête PATCH.(ex: uuid:dcad14cc-5bcd-45fd-a54d-246b95047d45)
278
- * @param {ArrayOfObjects} datas - Le paramètre `datas` est un tableau d'objets qui spécifient les modifications à
279
- * apporter aux groupes d'utilisateurs.(ex: datas[0].op, datas[0].field, datas[0].value)
280
- * @param {String} datas[0].op - l'opération à réaliser. (ex: "add", "remove", "replace")
281
- * @param {String} datas[0].field - Ce sur quoi agir (ex: members[], title, description, owner, visibility)
282
- * @param {StringOrArray} datas[0].value - La nouvelle valeur impactée. Si ce sont des membres value sera un Tableau de String.
283
-
284
- * @param {Function} [onDone] - Une fonction de rappel qui sera appelée lorsque la requête PATCH sera terminée
285
- * avec succès. Il recevra la réponse en paramètre.
286
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
287
- * erreur lors de l'exécution de la fonction `patchUserGroups`. Il vous permet de gérer toutes les
288
- * erreurs qui se produisent et d’effectuer toute gestion ou journalisation des erreurs nécessaire.
289
- */
290
- export function patchUserGroups(
291
- credentials,
292
- uri,
293
- datas,
294
- onDone = undefined,
295
- onError = undefined,
296
- ) {
297
- const { space, tenant } = credentials;
298
- const URL = {
299
- URITI: "/3drdfpersist/resources/v1/template-instances",
300
- URIUGr: "/3drdfpersist/resources/v1/usersgroup",
301
- nextURICh: "/characteristics",
302
- nextURIGr: "/group",
303
- nexURImem: "/members",
304
- OPTsTI: `?$mask=dsaccess:Mask.GroupUI.Properties`,
305
- OPTsTenant: `tenant=dstenant:${tenant}`,
306
- };
307
-
308
- // Le format des datas est obligatoire : [{}]
309
- // op : add, replace, remove
310
- // field : members[], pending_members[], title, description, owner, visibility
311
- // value : string ou array
312
-
313
- const dataMembers = datas;
314
- // [
315
- // {
316
- // op: "add",
317
- // field: "members",
318
- // value: ["samuel.mureau@beam3.fr"],
319
- // },
320
- // {
321
- // op: "replace",
322
- // field: "title",
323
- // value: "BEAM³ R&D - DEV",
324
- // },
325
- // ];
326
-
327
- const baseURL = `${space}${URL.URIUGr}/${uri}`; // route de base pour le PATCH (DOC)
328
-
329
- const dataMembersSTR = JSON.stringify(dataMembers);
330
-
331
- _httpCallAuthenticated(baseURL, {
332
- headers: topHeader,
333
- method: "PATCH",
334
- data: dataMembersSTR,
335
- type: "json",
336
- onComplete(response) {
337
- if (onDone) onDone(response);
338
- },
339
- onFailure(err) {
340
- if (onError) onError(err);
341
- },
342
- });
343
- }
344
-
345
- //ANCHOR - CONTROL (Gestion des propriétaires du groupe)
346
-
347
- /**
348
- * @description La fonction `patchUserGroupsControl` est utilisée pour mettre à jour le contrôle des groupes
349
- * d'utilisateurs en envoyant une requête PATCH à un URI spécifié avec les informations
350
- * d'identification et les données fournies.
351
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
352
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
353
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
354
- * @param {String} uri - Le paramètre `uri` est une chaîne qui représente l'identifiant du groupe d'utilisateurs
355
- * que vous souhaitez corriger. Il est utilisé pour construire l'URL de la requête PATCH.(ex: uuid:dcad14cc-5bcd-45fd-a54d-246b95047d45)
356
- * @param {ArrayOfObject} _datas - Le paramètre `datas` est un tableau d'objets qui contient les informations
357
- * nécessaires pour patcher le contrôle des groupes d'utilisateurs. (ex : datas[0].op, datas[0].value)
358
- * @param {String} op - L'opération de correctif. Il peut être 'add', 'replace', 'remove'.
359
- * @param {Object} value -
360
- * @param {Array} value.agents - Un tableau d’utilisateurs. Le 1er index doit être à vide. (ex : ["","Bob.Dylan@beam3.fr"]). 100 utilisateurs maximums.
361
- * @param {Array} value.responsibilities - Un tableau de responsibilités. (ex: ["dsaccess:Responsibility.Group.MainOwner", "dsaccess:Responsibility.Group.Owner", "dsaccess:Responsibility.Group.Viewer", "dsaccess:Responsibility.Group.Author", "dsaccess:Responsibility.GroupService.Administrator"])
362
- * @param {Function} [onDone] - Le paramètre `onDone` est une fonction de rappel qui sera appelée lorsque
363
- * l'opération de patch sera terminée avec succès. Il faut un argument, qui est la réponse du serveur.
364
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
365
- * erreur lors de l'exécution de la fonction `patchUserGroupsControl`. Il vous permet de gérer toutes
366
- * les erreurs qui se produisent et d’effectuer toute gestion ou journalisation des erreurs nécessaire.
367
- */
368
- export function patchUserGroupsControl(
369
- credentials,
370
- uri,
371
- _datas,
372
- onDone = undefined,
373
- onError = undefined,
374
- ) {
375
- const { space } = credentials;
376
- const URI = "/3drdfpersist/resources/v1/usersgroup";
377
-
378
- const url = `${space}${URI}/${uri}/sharing`;
379
- //liste des responsabilités : ["dsaccess:Responsibility.Group.MainOwner", "dsaccess:Responsibility.Group.Owner", "dsaccess:Responsibility.Group.Viewer", "dsaccess:Responsibility.Group.Author", "dsaccess:Responsibility.GroupService.Administrator"]
380
- const datas = _datas;
381
- // [
382
- // {
383
- // op: "add", // add, replace, remove
384
- // path: "/sharing",
385
- // value: {
386
- // agents: ["", "samuel.mureau@beam3.fr", "yan.coquoz@beam3.fr"],
387
- // responsibilities: ["dsaccess:Responsibility.Group.Owner"],
388
- // },
389
- // },
390
- // ];
391
-
392
- _httpCallAuthenticated(url, {
393
- method: "PATCH",
394
- headers: topHeader,
395
- data: JSON.stringify(datas),
396
- type: "json",
397
- onComplete(response) {
398
- if (onDone) onDone(response);
399
- },
400
- onFailure(err) {
401
- if (onError) onError(err);
402
- },
403
- });
404
- }
405
-
406
- /**
407
- * @description La fonction « readUserGroupControl » est utilisée pour récupérer les informations de contrôle de
408
- * groupe d'utilisateurs à partir d'un URI spécifié à l'aide d'une requête HTTP GET.
409
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
410
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
411
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
412
- * @param {String} uri - Le paramètre `uri` est une chaîne qui représente l'identifiant du groupe d'utilisateurs
413
- * pour lequel vous souhaitez récupérer les informations de contrôle. (ex: uuid:dcad14cc-5bcd-45fd-a54d-246b95047d45)
414
- * @param {Function} [onDone] - Le paramètre `onDone` est une fonction de rappel qui sera appelée lorsque la
415
- * requête HTTP sera terminée avec succès. Il prend un argument, qui correspond aux données de réponse
416
- * de la requête.
417
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
418
- * erreur lors de l'exécution de la fonction `readUserGroupControl`. Il vous permet de gérer et de
419
- * répondre à toute erreur qui se produit.
420
- */
421
- export function readUserGroupControl(
422
- credentials,
423
- uri,
424
- onDone = undefined,
425
- onError = undefined,
426
- ) {
427
- const { space } = credentials;
428
- const URI = "/3drdfpersist/resources/v1/usersgroup";
429
-
430
- const url = `${space}${URI}/${uri}/sharing`;
431
-
432
- const header = {
433
- "Content-Type": "application/json",
434
- Accept: "application/json,text/javascript,*/*",
435
- };
436
- const opts = {
437
- method: "GET",
438
- headers: header,
439
- };
440
- _httpCallAuthenticated(url, {
441
- opts,
442
- onComplete(_rep) {
443
- if (onDone) onDone(JSON.parse(_rep));
444
- },
445
- onFailure(err) {
446
- if (onError) onError(err);
447
- },
448
- });
449
- }
@@ -1,78 +0,0 @@
1
- import { _httpCallAuthenticated } from "./3dexperience_api.js";
2
-
3
- /**
4
- * @description La fonction `_AppMngt_get_users` effectue un appel HTTP authentifié pour récupérer une liste
5
- * d'utilisateurs d'une plateforme spécifiée.
6
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
7
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
8
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
9
- * @param {String} credentials.tenant - L'identifiant du tenant sur lequel l'API est déployée.(ex: 1132100968447)
10
- * @param {Function} [onDone] - Le paramètre `onDone` est une fonction de rappel qui sera appelée lorsque l'appel
11
- * API sera terminé avec succès. Il prend un argument, « info », qui correspond aux données de réponse
12
- * de l'API.
13
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
14
- * erreur lors de la requête HTTP. Il est facultatif et peut être indéfini. S'il est fourni, il sera
15
- * appelé avec l'objet de réponse comme argument.
16
- */
17
- export function _AppMngt_get_users(
18
- credentials,
19
- onDone = undefined,
20
- onError = undefined,
21
- ) {
22
- let url = `${credentials.space}/resources/AppsMngt/user?platform=${credentials.tenant}&limit=-1`;
23
-
24
- _httpCallAuthenticated(url, {
25
- onComplete(response, headers, xhr) {
26
- const info = JSON.parse(response);
27
- console.log("_AppMngt_get_users => ", info);
28
- if (onDone) onDone(info);
29
- },
30
- onFailure(response, headers) {
31
- const info = response;
32
- info["msg"] = headers.errormsg;
33
- info["errCode"] = headers.errorcode;
34
-
35
- if (onError) onError(info);
36
- },
37
- });
38
- }
39
-
40
- /**
41
- * @description La fonction `_AppMngt_get_info_user` effectue un appel HTTP authentifié pour récupérer des
42
- * informations sur un utilisateur à partir d'une plateforme spécifique.
43
- * @param {Object} credentials - Un objet contenant les informations d'identification requises pour authentifier
44
- * la demande. Il inclut généralement des propriétés telles que « token », « space », « tenant » et « ctx ».
45
- * @param {String} credentials.space - L'URL du serveur sur lequel l'API est déployée.(ex: 3DSpace =>(https://r1132100968447-eu1-space.3dexperience.3ds.com/enovia), 3DSwym, usersgroup, 3DCompass...)
46
- * @param {String} id - Le paramètre `id` est l'identifiant unique de l'utilisateur pour lequel vous souhaitez
47
- * récupérer des informations.
48
- * @param {Function} [onDone] - Le paramètre `onDone` est une fonction de rappel qui sera appelée lorsque la
49
- * requête sera terminée avec succès. Il prend un argument, «info», qui correspond aux données de réponse du serveur.
50
- *
51
- * @param {Function} [onError] - Le paramètre `onError` est une fonction de rappel qui sera appelée s'il y a une
52
- * erreur lors de la requête HTTP. Il est facultatif et peut être indéfini. S'il est fourni, il sera
53
- * appelé avec le paramètre `response`, qui contient la réponse d'erreur du serveur.
54
- */
55
- export function _AppMngt_get_info_user(
56
- credentials,
57
- id,
58
- onDone = undefined,
59
- onError = undefined,
60
- ) {
61
- let url = `${credentials.space}/resources/AppsMngt/user?platform=${credentials.tenant}&id=${id}`;
62
-
63
- _httpCallAuthenticated(url, {
64
- onComplete(response, headers, xhr) {
65
- const info = JSON.parse(response);
66
- //console.log("_AppMngt_get_info_user => ", info);
67
- if (onDone) onDone(info);
68
- },
69
-
70
- onFailure(response, headers) {
71
- const info = response;
72
- info["msg"] = headers.errormsg;
73
- info["errCode"] = headers.errorcode;
74
-
75
- if (onError) onError(info);
76
- },
77
- });
78
- }
@@ -1,143 +0,0 @@
1
- import { widget, requirejs } from "@widget-lab/3ddashboard-utils";
2
-
3
- /**
4
- * @description Cette fonction effectue un appel HTTP authentifié à l'aide de la bibliothèque WAFData en de la plateforme.
5
- * @param {String} url - L'URL du point de terminaison de l'API que la fonction appellera.
6
- * @param {object} options - Le paramètre `options` est un objet qui contient diverses options pour la requête
7
- * HTTP, telles que la méthode de requête (GET, POST, etc.), les en-têtes, le corps, etc. Ces options
8
- * sont généralement transmises à l'API `fetch` ou `XMLHttpRequest` pour effectuer la requête HTTP
9
- * réelle.
10
- */
11
- export function _httpCallAuthenticated(url, options) {
12
- requirejs(["DS/WAFData/WAFData"], (WAFData) => {
13
- WAFData.authenticatedRequest(url, options);
14
- });
15
- }
16
-
17
- /**
18
- * @description Cette fonction définit un élément comme étant déplaçable et transmet des données et une fonction de
19
- * rappel à exécuter lorsque le glissement commence (drag and drop).
20
- * @param elem - L'élément HTML qui doit être rendu déplaçable.
21
- * @param strData - strData est une chaîne qui représente les données associées à l'élément déplaçable.
22
- * Ces données sont accessibles lors des opérations de glisser-déposer pour fournir des informations
23
- * supplémentaires sur l'élément déplacé.
24
- * @param onDrag - onDrag est une fonction de rappel qui sera exécutée au début de l'opération de
25
- * glissement. Il peut être utilisé pour effectuer toutes les actions nécessaires avant le début de
26
- * l'opération de glissement, telles que la configuration des données à transférer ou la mise à jour de
27
- * l'apparence de l'élément déplaçable.
28
- */
29
- export function _setDraggable(elem, strData, onDrag) {
30
- requirejs(["DS/DataDragAndDrop/DataDragAndDrop"], (DataDragAndDrop) => {
31
- DataDragAndDrop.draggable(elem, { data: strData, start: onDrag });
32
- });
33
- }
34
-
35
- /**
36
- * @description Cette fonction configure un proxy de navigateur de balises avec des balises spécifiées et un événement de filtre facultatif.
37
- *
38
- * @param tags - Le paramètre tags est un tableau de chaînes représentant les balises qui seront
39
- * utilisées pour filtrer les sujets dans le widget TagNavigatorProxy.
40
- * @param [onTaggerFilter] - Le paramètre onTaggerFilter est une fonction de rappel qui sera exécutée
41
- * lorsque l'utilisateur filtrera les sujets dans le tagger. Il recevra les sujets filtrés en argument.
42
- */
43
- export function _setupTagger(tags, onTaggerFilter = undefined) {
44
- requirejs(["DS/TagNavigatorProxy/TagNavigatorProxy"], (TagNavigatorProxy) => {
45
- let taggerProxy;
46
- if (taggerProxy === undefined) {
47
- taggerProxy = TagNavigatorProxy.createProxy({
48
- widgetId: widget.id,
49
- filteringMode: "WithFilteringServices",
50
- });
51
-
52
- if (onTaggerFilter !== undefined)
53
- taggerProxy.addEvent("onFilterSubjectsChange", onTaggerFilter);
54
- }
55
- taggerProxy.setSubjectsTags(tags);
56
- });
57
- }
58
-
59
- /**
60
- * Cette fonction définit un élément comme pouvant être déposé à l'aide de la bibliothèque
61
- * DataDragAndDrop.
62
- * @param elem - L'élément HTML qui doit être rendu déposable.
63
- * @param drop - Le paramètre `drop` est une fonction qui sera appelée lorsqu'un élément déplaçable est
64
- * déposé sur l'élément déplaçable. Il prend généralement l'élément supprimé comme argument et exécute
65
- * une action basée sur celui-ci.
66
- */
67
- export function _setDroppable(elem, drop) {
68
- requirejs(["DS/DataDragAndDrop/DataDragAndDrop"], (DataDragAndDrop) => {
69
- DataDragAndDrop.droppable(elem, { drop });
70
- });
71
- }
72
-
73
- /**
74
- * @description Cette fonction obtient les services de la plateforme à l'aide de la bibliothèque i3DXCompassServices
75
- * et appelle les fonctions onComplete ou onFailure en fonction du résultat.
76
- * @param platformId - ID de la plate-forme pour laquelle les services sont demandés. Si aucun ID de
77
- * plate-forme n'est fourni, la fonction tentera de récupérer l'ID à partir d'une valeur de widget. Si
78
- * aucun ID n'est trouvé, il sera défini sur non défini.
79
- * @param onComplete - Une fonction de rappel qui sera exécutée lorsque les services de la plateforme
80
- * seront récupérés avec succès. Il prend les services de plateforme récupérés comme argument.
81
- * @param onFailure - Le paramètre onFailure est une fonction de rappel qui sera exécutée en cas
82
- * d'erreur ou d'échec dans l'exécution de la fonction getPlatformServices. Il permet de gérer les
83
- * erreurs et de fournir un retour d'information approprié à l'utilisateur.
84
- */
85
- export function _getPlatformServices(
86
- platformId,
87
- onComplete = undefined,
88
- onFailure = undefined,
89
- ) {
90
- requirejs(
91
- ["DS/i3DXCompassServices/i3DXCompassServices"],
92
- (i3DXCompassServices) => {
93
- if (!platformId || platformId === "") {
94
- platformId = widget.getValue("PlatFormInstanceId");
95
- }
96
- if (!platformId || platformId === "") {
97
- platformId = undefined;
98
- }
99
-
100
- i3DXCompassServices.getPlatformServices({
101
- platformId,
102
- onComplete,
103
- onFailure,
104
- });
105
- },
106
- );
107
- _getPlateformInfos();
108
- if (onComplete) onComplete(_getPlateformInfos());
109
- }
110
-
111
- /**
112
- * @description
113
- * La fonction `_getPlateformInfos` récupère les informations sur la plateforme à l'aide du module
114
- * PlatformAPI et renvoie les informations dans un objet.
115
- * @returns un objet appelé "retourAPI" qui contient les propriétés suivantes :
116
- * - {String} tenant, Le tenant de la plateforme sur lequel on travaille.
117
- * - {Object} user, L'utilisateur connecté à la plateforme...
118
- * - {ArrayOfObject} appsConfiguration, liste d'app auquel on accès.
119
- * - {String} appConf
120
- * - {String} widgetTenant, Le tenant de la plateforme sur lequel on travaille.
121
- */
122
- export function _getPlateformInfos() {
123
- const retourAPI = {};
124
-
125
- requirejs(["DS/PlatformAPI/PlatformAPI"], (plAPI) => {
126
- const tenant = plAPI.getTenant();
127
- const user = plAPI.getUser();
128
- const appsConfiguration = plAPI.getAllApplicationConfigurations();
129
- const widgetTenant = plAPI.getWidgetTenant();
130
- const appConf = plAPI.getApplicationConfiguration(
131
- "com.3ds.wp.passport.cors",
132
- );
133
- retourAPI = {
134
- tenant,
135
- user,
136
- appsConfiguration,
137
- widgetTenant,
138
- appConf,
139
- };
140
- });
141
- console.log("%cRETOUR API :", "color:blue", retourAPI);
142
- return retourAPI;
143
- }