sunuid-sdk 1.0.37 → 1.0.40

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.
@@ -914,26 +914,51 @@ function _unsupportedIterableToArray(r, a) {
914
914
  _context3.n = 8;
915
915
  return this.makeRequest('/qr-generate', _objectSpread2({
916
916
  type: this.config.type,
917
- content: qrContent,
918
- // Contenu personnalisé pour le QR
917
+ data: qrContent,
918
+ // Essayer data au lieu de content
919
919
  label: "".concat(this.getTypeName(this.config.type), " ").concat(partnerName)
920
920
  }, options));
921
921
  case 8:
922
922
  response = _context3.v;
923
923
  if (!response.success) {
924
- _context3.n = 9;
924
+ _context3.n = 11;
925
925
  break;
926
926
  }
927
+ // Debug: Afficher la structure complète de la réponse
928
+ console.log('📋 Réponse QR API complète:', response);
929
+ console.log('📋 Structure response.data:', response.data);
930
+
927
931
  // Construire l'URL complète du QR code
928
932
  qrImageUrl = response.data.qrCodeUrl; // Si l'URL est relative, la rendre absolue
929
- if (qrImageUrl.startsWith('/')) {
933
+ if (qrImageUrl && qrImageUrl.startsWith('/')) {
930
934
  qrImageUrl = "".concat(this.config.apiUrl).concat(qrImageUrl);
931
935
  }
936
+
937
+ // Vérifier si l'URL du QR code existe
938
+ if (qrImageUrl) {
939
+ _context3.n = 10;
940
+ break;
941
+ }
942
+ console.warn('⚠️ qrCodeUrl non trouvé dans la réponse, recherche d\'alternatives...');
943
+
944
+ // Essayer d'autres champs possibles
945
+ qrImageUrl = response.data.qr_url || response.data.qrUrl || response.data.url || response.data.image_url || response.data.imageUrl;
946
+ if (!qrImageUrl) {
947
+ _context3.n = 9;
948
+ break;
949
+ }
950
+ console.log('✅ URL QR trouvée dans un champ alternatif:', qrImageUrl);
951
+ _context3.n = 10;
952
+ break;
953
+ case 9:
954
+ console.error('❌ Aucune URL QR trouvée dans la réponse');
955
+ throw new Error('URL du QR code non trouvée dans la réponse API');
956
+ case 10:
932
957
  this.currentQRUrl = qrImageUrl;
933
958
  console.log('✅ QR code généré par API principale:', qrImageUrl);
934
959
  console.log('📄 Contenu QR final:', qrContent);
935
- console.log('🏷️ Label QR:', response.data.label);
936
- console.log('🆔 Session ID:', response.data.sessionId);
960
+ console.log('🏷️ Label QR:', response.data.label || 'N/A');
961
+ console.log('🆔 Session ID:', response.data.sessionId || 'N/A');
937
962
 
938
963
  // Afficher le QR code
939
964
  this.displayQRCode(containerId, qrImageUrl, this.config.type, options);
@@ -955,13 +980,13 @@ function _unsupportedIterableToArray(r, a) {
955
980
  label: response.data.label,
956
981
  sessionId: response.data.sessionId
957
982
  }));
958
- case 9:
983
+ case 11:
959
984
  throw new Error(response.message || 'Erreur lors de la génération du QR code');
960
- case 10:
961
- _context3.n = 12;
985
+ case 12:
986
+ _context3.n = 14;
962
987
  break;
963
- case 11:
964
- _context3.p = 11;
988
+ case 13:
989
+ _context3.p = 13;
965
990
  _t4 = _context3.v;
966
991
  console.error('Erreur API détectée:', _t4.message);
967
992
  console.error('Stack trace complet:', _t4.stack);
@@ -993,10 +1018,10 @@ function _unsupportedIterableToArray(r, a) {
993
1018
  console.log('Affichage du message "Service non disponible" pour type ' + this.config.type);
994
1019
  this.displayServiceUnavailable(containerId, this.config.type);
995
1020
  throw new Error('Service non disponible');
996
- case 12:
1021
+ case 14:
997
1022
  return _context3.a(2);
998
1023
  }
999
- }, _callee3, this, [[7, 11], [4, 6]]);
1024
+ }, _callee3, this, [[7, 13], [4, 6]]);
1000
1025
  }));
1001
1026
  function generateQR() {
1002
1027
  return _generateQR.apply(this, arguments);
@@ -2114,6 +2139,8 @@ function _unsupportedIterableToArray(r, a) {
2114
2139
  key: "sanitizeRequestData",
2115
2140
  value: function sanitizeRequestData(data) {
2116
2141
  var sanitized = {};
2142
+
2143
+ // D'abord, copier tous les champs de data
2117
2144
  for (var _i = 0, _Object$entries = Object.entries(data); _i < _Object$entries.length; _i++) {
2118
2145
  var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
2119
2146
  key = _Object$entries$_i[0],
@@ -2127,19 +2154,12 @@ function _unsupportedIterableToArray(r, a) {
2127
2154
  }
2128
2155
  }
2129
2156
 
2130
- // Ajouter les credentials dans le body (API SunuID les attend ici)
2157
+ // Ensuite, ajouter/écraser les credentials (API SunuID les attend ici)
2131
2158
  // Utiliser les vraies valeurs (originales) si disponibles, sinon les valeurs directes
2132
2159
  sanitized.client_id = this.config.originalClientId || this.config.clientId;
2133
2160
  sanitized.secret_id = this.config.originalSecretId || this.config.secretId;
2134
2161
 
2135
- // Debug: Vérifier les credentials
2136
- console.log('🔍 Credentials dans sanitizeRequestData - clientId:', this.config.clientId);
2137
- console.log('🔍 Credentials dans sanitizeRequestData - secretId:', this.config.secretId ? '***' + this.config.secretId.slice(-4) : 'null');
2138
- console.log('🔍 Credentials dans sanitizeRequestData - sanitizedClientId:', sanitized.client_id);
2139
- console.log('🔍 Credentials dans sanitizeRequestData - sanitizedSecretId:', sanitized.secret_id ? '***' + sanitized.secret_id.slice(-4) : 'null');
2140
- console.log('🔍 Credentials dans sanitizeRequestData - data complet:', JSON.stringify(sanitized, null, 2));
2141
-
2142
- // Debug: Vérifier les credentials
2162
+ // Debug: Vérifier les credentials et les données
2143
2163
  console.log('🔍 Credentials dans sanitizeRequestData - clientId:', this.config.clientId);
2144
2164
  console.log('🔍 Credentials dans sanitizeRequestData - secretId:', this.config.secretId ? '***' + this.config.secretId.slice(-4) : 'null');
2145
2165
  console.log('🔍 Credentials dans sanitizeRequestData - sanitizedClientId:', sanitized.client_id);
@@ -2176,7 +2196,7 @@ function _unsupportedIterableToArray(r, a) {
2176
2196
  key: "fetchPartnerInfo",
2177
2197
  value: (function () {
2178
2198
  var _fetchPartnerInfo = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17() {
2179
- var response, authTest, _t12;
2199
+ var response, data, partnerId, _t12;
2180
2200
  return _regenerator().w(function (_context18) {
2181
2201
  while (1) switch (_context18.p = _context18.n) {
2182
2202
  case 0:
@@ -2190,32 +2210,46 @@ function _unsupportedIterableToArray(r, a) {
2190
2210
  case 1:
2191
2211
  response = _context18.v;
2192
2212
  console.log('📋 Réponse debug API:', response);
2193
- if (response.success && response.authentication && response.authentication.auth_test) {
2194
- authTest = response.authentication.auth_test;
2195
- this.config.partnerId = authTest.partner_id;
2196
2213
 
2197
- // Récupérer le service_id depuis la réponse
2198
- if (response.service_id) {
2199
- this.config.serviceId = response.service_id;
2200
- } else {
2201
- // Fallback: utiliser le partner_id comme service_id
2202
- this.config.serviceId = authTest.partner_id;
2214
+ // Vérifier la structure de la réponse
2215
+ if (response.success && response.data) {
2216
+ data = response.data; // Essayer de récupérer le partner_id depuis différentes structures possibles
2217
+ partnerId = null;
2218
+ if (data.partner_id) {
2219
+ partnerId = data.partner_id;
2220
+ } else if (data.authentication && data.authentication.auth_test && data.authentication.auth_test.partner_id) {
2221
+ partnerId = data.authentication.auth_test.partner_id;
2222
+ } else if (data.auth_test && data.auth_test.partner_id) {
2223
+ partnerId = data.auth_test.partner_id;
2203
2224
  }
2225
+ if (partnerId) {
2226
+ this.config.partnerId = partnerId;
2227
+
2228
+ // Récupérer le service_id depuis la réponse
2229
+ if (data.service_id) {
2230
+ this.config.serviceId = data.service_id;
2231
+ } else {
2232
+ // Fallback: utiliser le partner_id comme service_id
2233
+ this.config.serviceId = partnerId;
2234
+ }
2204
2235
 
2205
- // Utiliser le partner_id pour déterminer le nom du partenaire
2206
- // Pour l'instant, on utilise une logique simple basée sur l'ID
2207
- if (authTest.partner_id === 21) {
2208
- this.config.partnerName = 'Fayma';
2236
+ // Utiliser le partner_id pour déterminer le nom du partenaire
2237
+ if (partnerId === 21) {
2238
+ this.config.partnerName = 'Fayma';
2239
+ } else {
2240
+ this.config.partnerName = "Partner_".concat(partnerId);
2241
+ }
2242
+ console.log('✅ Informations partenaire récupérées:', {
2243
+ partnerName: this.config.partnerName,
2244
+ partnerId: this.config.partnerId,
2245
+ serviceId: this.config.serviceId
2246
+ });
2209
2247
  } else {
2210
- this.config.partnerName = "Partner_".concat(authTest.partner_id);
2248
+ console.warn('⚠️ Partner ID non trouvé dans la réponse, utilisation du partner_id par défaut');
2249
+ this.config.partnerName = "Partner_".concat(this.config.partnerId || 'unknown');
2211
2250
  }
2212
- console.log('✅ Informations partenaire récupérées:', {
2213
- partnerName: this.config.partnerName,
2214
- partnerId: this.config.partnerId,
2215
- serviceId: this.config.serviceId
2216
- });
2217
2251
  } else {
2218
- console.warn('⚠️ Impossible de récupérer les informations du partenaire, utilisation du partner_id');
2252
+ console.warn('⚠️ Structure de réponse invalide, utilisation du partner_id par défaut');
2219
2253
  this.config.partnerName = "Partner_".concat(this.config.partnerId || 'unknown');
2220
2254
  }
2221
2255
  _context18.n = 3;