sunuid-sdk 1.0.3 → 1.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.
package/dist/sunuid-sdk.esm.js
CHANGED
|
@@ -202,7 +202,6 @@ function _toPropertyKey(t) {
|
|
|
202
202
|
// Configuration par défaut
|
|
203
203
|
var DEFAULT_CONFIG = {
|
|
204
204
|
apiUrl: 'https://sunuid.fayma.sn/api',
|
|
205
|
-
partnerId: null,
|
|
206
205
|
clientId: null,
|
|
207
206
|
secretId: null,
|
|
208
207
|
theme: 'light',
|
|
@@ -235,8 +234,8 @@ function _toPropertyKey(t) {
|
|
|
235
234
|
return _createClass(SunuID, [{
|
|
236
235
|
key: "init",
|
|
237
236
|
value: function init() {
|
|
238
|
-
if (!this.config.
|
|
239
|
-
throw new Error('SunuID:
|
|
237
|
+
if (!this.config.clientId || !this.config.secretId) {
|
|
238
|
+
throw new Error('SunuID: clientId et secretId sont requis');
|
|
240
239
|
}
|
|
241
240
|
this.isInitialized = true;
|
|
242
241
|
console.log('SunuID SDK initialisé avec succès');
|
|
@@ -556,7 +555,6 @@ function _toPropertyKey(t) {
|
|
|
556
555
|
'Content-Type': 'application/json',
|
|
557
556
|
'X-SunuID-Client-ID': this.config.clientId,
|
|
558
557
|
'X-SunuID-Secret-ID': this.config.secretId,
|
|
559
|
-
'X-SunuID-Partner-ID': this.config.partnerId,
|
|
560
558
|
'Accept': 'application/json'
|
|
561
559
|
},
|
|
562
560
|
body: JSON.stringify(data)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sunuid-sdk.esm.js","sources":["../src/sunuid-sdk.js"],"sourcesContent":["/**\n * SunuID SDK - Package d'intégration pour partenaires\n * \n * @version 1.0.0\n * @author SunuID Team\n * @license MIT\n */\n\n(function(window) {\n 'use strict';\n\n // Configuration par défaut\n const DEFAULT_CONFIG = {\n apiUrl: 'https://sunuid.fayma.sn/api',\n partnerId: null,\n clientId: null,\n secretId: null,\n theme: 'light',\n language: 'fr',\n autoRefresh: true,\n refreshInterval: 30000, // 30 secondes\n onSuccess: null,\n onError: null,\n onExpired: null\n };\n\n /**\n * Classe principale SunuID\n */\n class SunuID {\n constructor(config = {}) {\n this.config = { ...DEFAULT_CONFIG, ...config };\n this.qrCode = null;\n this.refreshTimer = null;\n this.isInitialized = false;\n \n this.init();\n }\n\n /**\n * Initialisation du SDK\n */\n init() {\n if (!this.config.partnerId || !this.config.clientId || !this.config.secretId) {\n throw new Error('SunuID: partnerId, clientId et secretId sont requis');\n }\n\n this.isInitialized = true;\n console.log('SunuID SDK initialisé avec succès');\n }\n\n /**\n * Générer un QR code d'authentification\n */\n async generateAuthQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'auth',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'auth', options);\n this.startAutoRefresh(containerId, 'auth', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Générer un QR code KYC\n */\n async generateKYCQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'kyc',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'kyc', options);\n this.startAutoRefresh(containerId, 'kyc', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code KYC');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Vérifier le statut d'un QR code\n */\n async checkQRStatus(sessionId) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-status.php', {\n sessionId: sessionId\n });\n\n if (response.success) {\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la vérification du statut');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Afficher un QR code dans un conteneur\n */\n displayQRCode(containerId, qrUrl, type, options = {}) {\n const container = document.getElementById(containerId);\n if (!container) {\n throw new Error(`Conteneur avec l'ID \"${containerId}\" non trouvé`);\n }\n\n // Nettoyer le conteneur\n container.innerHTML = '';\n\n // Créer l'élément QR code\n const qrElement = document.createElement('div');\n qrElement.className = 'sunuid-qr-code';\n qrElement.innerHTML = `\n <div class=\"sunuid-qr-header\">\n <h3>${type === 'auth' ? 'Authentification' : 'Vérification KYC'}</h3>\n <div class=\"sunuid-timer\">\n <span>Expire dans: </span>\n <span id=\"sunuid-timer\">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class=\"sunuid-qr-image\">\n <img src=\"${qrUrl}\" alt=\"QR Code SunuID\" style=\"max-width: 300px; height: auto;\">\n </div>\n <div class=\"sunuid-qr-instructions\">\n <p>Scannez ce QR code avec l'application SunuID pour vous connecter</p>\n </div>\n <div class=\"sunuid-qr-status\" id=\"sunuid-status\">\n <p>En attente de scan...</p>\n </div>\n `;\n\n container.appendChild(qrElement);\n\n // Démarrer le timer\n this.startTimer();\n\n // Appliquer le thème\n this.applyTheme(options.theme || this.config.theme);\n }\n\n /**\n * Rafraîchir un QR code\n */\n async refreshQR(containerId, type, options = {}) {\n try {\n const result = type === 'auth' \n ? await this.generateAuthQR(containerId, options)\n : await this.generateKYCQR(containerId, options);\n \n return result;\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Démarrer le rafraîchissement automatique\n */\n startAutoRefresh(containerId, type, options) {\n if (!this.config.autoRefresh) return;\n\n this.refreshTimer = setInterval(async () => {\n try {\n await this.refreshQR(containerId, type, options);\n } catch (error) {\n console.warn('Erreur lors du rafraîchissement automatique:', error);\n }\n }, this.config.refreshInterval);\n }\n\n /**\n * Démarrer le timer de compte à rebours\n */\n startTimer() {\n let timeLeft = 30;\n const timerElement = document.getElementById('sunuid-timer');\n \n const timer = setInterval(() => {\n timeLeft--;\n if (timerElement) {\n timerElement.textContent = timeLeft;\n }\n \n if (timeLeft <= 0) {\n clearInterval(timer);\n if (this.config.onExpired) {\n this.config.onExpired();\n }\n }\n }, 1000);\n }\n\n /**\n * Effectuer une requête API\n */\n async makeRequest(endpoint, data) {\n const url = `${this.config.apiUrl}${endpoint}`;\n \n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'X-SunuID-Client-ID': this.config.clientId,\n 'X-SunuID-Secret-ID': this.config.secretId,\n 'X-SunuID-Partner-ID': this.config.partnerId,\n 'Accept': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let errorData;\n try {\n errorData = JSON.parse(errorText);\n } catch (e) {\n errorData = { message: errorText };\n }\n \n throw new Error(errorData.message || `Erreur HTTP: ${response.status}`);\n }\n\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Erreur API SunuID:', error);\n throw error;\n }\n }\n\n /**\n * Appliquer le thème\n */\n applyTheme(theme) {\n const container = document.querySelector('.sunuid-qr-code');\n if (container) {\n container.className = `sunuid-qr-code sunuid-theme-${theme}`;\n }\n }\n\n /**\n * Gérer les erreurs\n */\n handleError(error) {\n console.error('SunuID SDK Error:', error);\n \n if (this.config.onError) {\n this.config.onError(error);\n }\n }\n\n /**\n * Nettoyer les ressources\n */\n destroy() {\n if (this.refreshTimer) {\n clearInterval(this.refreshTimer);\n }\n \n this.isInitialized = false;\n console.log('SunuID SDK détruit');\n }\n }\n\n // Exposer la classe globalement\n window.SunuID = SunuID;\n window.sunuidInstance = null;\n\n // Fonction d'initialisation globale\n window.initSunuID = function(config) {\n try {\n window.sunuidInstance = new SunuID(config);\n return window.sunuidInstance;\n } catch (error) {\n console.error('Erreur lors de l\\'initialisation de SunuID:', error);\n throw error;\n }\n };\n\n})(window); "],"names":["window","DEFAULT_CONFIG","apiUrl","partnerId","clientId","secretId","theme","language","autoRefresh","refreshInterval","onSuccess","onError","onExpired","SunuID","config","arguments","length","undefined","_classCallCheck","_objectSpread","qrCode","refreshTimer","isInitialized","init","_createClass","key","value","Error","console","log","_generateAuthQR","_asyncToGenerator","_regenerator","m","_callee","containerId","options","response","_args","_t","w","_context","p","n","makeRequest","type","v","success","displayQRCode","data","qrCodeUrl","startAutoRefresh","a","message","handleError","generateAuthQR","_x","apply","_generateKYCQR","_callee2","_args2","_t2","_context2","generateKYCQR","_x2","_checkQRStatus","_callee3","sessionId","_t3","_context3","checkQRStatus","_x3","qrUrl","container","document","getElementById","concat","innerHTML","qrElement","createElement","className","appendChild","startTimer","applyTheme","_refreshQR","_callee4","result","_args4","_t4","_t5","_context4","refreshQR","_x4","_x5","_this","setInterval","_callee5","_t6","_context5","warn","_this2","timeLeft","timerElement","timer","textContent","clearInterval","_makeRequest","_callee6","endpoint","url","errorText","errorData","_t7","_context6","fetch","method","headers","body","JSON","stringify","ok","text","parse","e","status","json","error","_x6","_x7","querySelector","destroy","sunuidInstance","initSunuID"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC,UAASA,MAAM,EAAE;;AAGd;AACA,EAAA,IAAMC,cAAc,GAAG;AACnBC,IAAAA,MAAM,EAAE,6BAA6B;AACrCC,IAAAA,SAAS,EAAE,IAAI;AACfC,IAAAA,QAAQ,EAAE,IAAI;AACdC,IAAAA,QAAQ,EAAE,IAAI;AACdC,IAAAA,KAAK,EAAE,OAAO;AACdC,IAAAA,QAAQ,EAAE,IAAI;AACdC,IAAAA,WAAW,EAAE,IAAI;AACjBC,IAAAA,eAAe,EAAE,KAAK;AAAE;AACxBC,IAAAA,SAAS,EAAE,IAAI;AACfC,IAAAA,OAAO,EAAE,IAAI;AACbC,IAAAA,SAAS,EAAE,IAAA;GACd,CAAA;;AAED;AACJ;AACA;AAFI,EAAA,IAGMC,MAAM,gBAAA,YAAA;AACR,IAAA,SAAAA,SAAyB;AAAA,MAAA,IAAbC,MAAM,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE,CAAA;AAAAG,MAAAA,eAAA,OAAAL,MAAA,CAAA,CAAA;MACnB,IAAI,CAACC,MAAM,GAAAK,cAAA,CAAAA,cAAA,CAAQlB,EAAAA,EAAAA,cAAc,CAAKa,EAAAA,MAAM,CAAE,CAAA;MAC9C,IAAI,CAACM,MAAM,GAAG,IAAI,CAAA;MAClB,IAAI,CAACC,YAAY,GAAG,IAAI,CAAA;MACxB,IAAI,CAACC,aAAa,GAAG,KAAK,CAAA;MAE1B,IAAI,CAACC,IAAI,EAAE,CAAA;AACf,KAAA;;AAEA;AACR;AACA;IAFQ,OAAAC,YAAA,CAAAX,MAAA,EAAA,CAAA;MAAAY,GAAA,EAAA,MAAA;AAAAC,MAAAA,KAAA,EAGA,SAAAH,IAAIA,GAAG;QACH,IAAI,CAAC,IAAI,CAACT,MAAM,CAACX,SAAS,IAAI,CAAC,IAAI,CAACW,MAAM,CAACV,QAAQ,IAAI,CAAC,IAAI,CAACU,MAAM,CAACT,QAAQ,EAAE;AAC1E,UAAA,MAAM,IAAIsB,KAAK,CAAC,qDAAqD,CAAC,CAAA;AAC1E,SAAA;QAEA,IAAI,CAACL,aAAa,GAAG,IAAI,CAAA;AACzBM,QAAAA,OAAO,CAACC,GAAG,CAAC,mCAAmC,CAAC,CAAA;AACpD,OAAA;;AAEA;AACR;AACA;AAFQ,KAAA,EAAA;MAAAJ,GAAA,EAAA,gBAAA;MAAAC,KAAA,GAAA,YAAA;QAAA,IAAAI,eAAA,GAAAC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAGA,SAAAC,OAAAA,CAAqBC,WAAW,EAAA;AAAA,UAAA,IAAAC,OAAA;YAAAC,QAAA;AAAAC,YAAAA,KAAA,GAAAvB,SAAA;YAAAwB,EAAA,CAAA;AAAA,UAAA,OAAAP,YAAA,EAAA,CAAAQ,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,YAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,cAAA,KAAA,CAAA;AAAEP,gBAAAA,OAAO,GAAAE,KAAA,CAAAtB,MAAA,GAAAsB,CAAAA,IAAAA,KAAA,CAAArB,CAAAA,CAAAA,KAAAA,SAAA,GAAAqB,KAAA,CAAG,CAAA,CAAA,GAAA,EAAE,CAAA;gBAAA,IACrC,IAAI,CAAChB,aAAa,EAAA;AAAAmB,kBAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAAA,gBAAA,MACb,IAAIhB,KAAK,CAAC,4BAA4B,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAc,gBAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA,CAAA;AAAAD,gBAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OAItB,IAAI,CAACC,WAAW,CAAC,uBAAuB,EAAAzB,cAAA,CAAA;AAC3D0B,kBAAAA,IAAI,EAAE,MAAA;iBACHT,EAAAA,OAAO,CACb,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;gBAHIC,QAAQ,GAAAI,QAAA,CAAAK,CAAA,CAAA;gBAAA,IAKVT,CAAAA,QAAQ,CAACU,OAAO,EAAA;AAAAN,kBAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAChB,gBAAA,IAAI,CAACK,aAAa,CAACb,WAAW,EAAEE,QAAQ,CAACY,IAAI,CAACC,SAAS,EAAE,MAAM,EAAEd,OAAO,CAAC,CAAA;gBACzE,IAAI,CAACe,gBAAgB,CAAChB,WAAW,EAAE,MAAM,EAAEC,OAAO,CAAC,CAAA;AAAC,gBAAA,OAAAK,QAAA,CAAAW,CAAA,CAC7Cf,CAAAA,EAAAA,QAAQ,CAACY,IAAI,CAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,MAEd,IAAItB,KAAK,CAACU,QAAQ,CAACgB,OAAO,IAAI,yCAAyC,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAZ,gBAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,MAAA;AAAA,cAAA,KAAA,CAAA;AAAAF,gBAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA,CAAA;gBAAAH,EAAA,GAAAE,QAAA,CAAAK,CAAA,CAAA;AAGlF,gBAAA,IAAI,CAACQ,WAAW,CAAAf,EAAM,CAAC,CAAA;AAAC,gBAAA,MAAAA,EAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,OAAAE,QAAA,CAAAW,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,EAAAlB,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;SAG/B,CAAA,CAAA,CAAA;QAAA,SAtBKqB,cAAcA,CAAAC,EAAA,EAAA;AAAA,UAAA,OAAA1B,eAAA,CAAA2B,KAAA,CAAA,IAAA,EAAA1C,SAAA,CAAA,CAAA;AAAA,SAAA;AAAA,QAAA,OAAdwC,cAAc,CAAA;AAAA,OAAA,EAAA;AAwBpB;AACR;AACA;AAFQ,OAAA;AAAA,KAAA,EAAA;MAAA9B,GAAA,EAAA,eAAA;MAAAC,KAAA,GAAA,YAAA;QAAA,IAAAgC,cAAA,GAAA3B,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAGA,SAAA0B,QAAAA,CAAoBxB,WAAW,EAAA;AAAA,UAAA,IAAAC,OAAA;YAAAC,QAAA;AAAAuB,YAAAA,MAAA,GAAA7C,SAAA;YAAA8C,GAAA,CAAA;AAAA,UAAA,OAAA7B,YAAA,EAAA,CAAAQ,CAAA,CAAA,UAAAsB,SAAA,EAAA;AAAA,YAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAApB,CAAA,GAAAoB,SAAA,CAAAnB,CAAA;AAAA,cAAA,KAAA,CAAA;AAAEP,gBAAAA,OAAO,GAAAwB,MAAA,CAAA5C,MAAA,GAAA4C,CAAAA,IAAAA,MAAA,CAAA3C,CAAAA,CAAAA,KAAAA,SAAA,GAAA2C,MAAA,CAAG,CAAA,CAAA,GAAA,EAAE,CAAA;gBAAA,IACpC,IAAI,CAACtC,aAAa,EAAA;AAAAwC,kBAAAA,SAAA,CAAAnB,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAAA,gBAAA,MACb,IAAIhB,KAAK,CAAC,4BAA4B,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAmC,gBAAAA,SAAA,CAAApB,CAAA,GAAA,CAAA,CAAA;AAAAoB,gBAAAA,SAAA,CAAAnB,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OAItB,IAAI,CAACC,WAAW,CAAC,uBAAuB,EAAAzB,cAAA,CAAA;AAC3D0B,kBAAAA,IAAI,EAAE,KAAA;iBACHT,EAAAA,OAAO,CACb,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;gBAHIC,QAAQ,GAAAyB,SAAA,CAAAhB,CAAA,CAAA;gBAAA,IAKVT,CAAAA,QAAQ,CAACU,OAAO,EAAA;AAAAe,kBAAAA,SAAA,CAAAnB,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAChB,gBAAA,IAAI,CAACK,aAAa,CAACb,WAAW,EAAEE,QAAQ,CAACY,IAAI,CAACC,SAAS,EAAE,KAAK,EAAEd,OAAO,CAAC,CAAA;gBACxE,IAAI,CAACe,gBAAgB,CAAChB,WAAW,EAAE,KAAK,EAAEC,OAAO,CAAC,CAAA;AAAC,gBAAA,OAAA0B,SAAA,CAAAV,CAAA,CAC5Cf,CAAAA,EAAAA,QAAQ,CAACY,IAAI,CAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,MAEd,IAAItB,KAAK,CAACU,QAAQ,CAACgB,OAAO,IAAI,6CAA6C,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAS,gBAAAA,SAAA,CAAAnB,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,MAAA;AAAA,cAAA,KAAA,CAAA;AAAAmB,gBAAAA,SAAA,CAAApB,CAAA,GAAA,CAAA,CAAA;gBAAAmB,GAAA,GAAAC,SAAA,CAAAhB,CAAA,CAAA;AAGtF,gBAAA,IAAI,CAACQ,WAAW,CAAAO,GAAM,CAAC,CAAA;AAAC,gBAAA,MAAAA,GAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,OAAAC,SAAA,CAAAV,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,EAAAO,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;SAG/B,CAAA,CAAA,CAAA;QAAA,SAtBKI,aAAaA,CAAAC,GAAA,EAAA;AAAA,UAAA,OAAAN,cAAA,CAAAD,KAAA,CAAA,IAAA,EAAA1C,SAAA,CAAA,CAAA;AAAA,SAAA;AAAA,QAAA,OAAbgD,aAAa,CAAA;AAAA,OAAA,EAAA;AAwBnB;AACR;AACA;AAFQ,OAAA;AAAA,KAAA,EAAA;MAAAtC,GAAA,EAAA,eAAA;MAAAC,KAAA,GAAA,YAAA;QAAA,IAAAuC,cAAA,GAAAlC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAGA,SAAAiC,QAAAA,CAAoBC,SAAS,EAAA;UAAA,IAAA9B,QAAA,EAAA+B,GAAA,CAAA;AAAA,UAAA,OAAApC,YAAA,EAAA,CAAAQ,CAAA,CAAA,UAAA6B,SAAA,EAAA;AAAA,YAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA3B,CAAA,GAAA2B,SAAA,CAAA1B,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,IACpB,IAAI,CAACrB,aAAa,EAAA;AAAA+C,kBAAAA,SAAA,CAAA1B,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAAA,gBAAA,MACb,IAAIhB,KAAK,CAAC,4BAA4B,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAA0C,gBAAAA,SAAA,CAAA3B,CAAA,GAAA,CAAA,CAAA;AAAA2B,gBAAAA,SAAA,CAAA1B,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OAItB,IAAI,CAACC,WAAW,CAAC,qBAAqB,EAAE;AAC3DuB,kBAAAA,SAAS,EAAEA,SAAAA;AACf,iBAAC,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;gBAFI9B,QAAQ,GAAAgC,SAAA,CAAAvB,CAAA,CAAA;gBAAA,IAIVT,CAAAA,QAAQ,CAACU,OAAO,EAAA;AAAAsB,kBAAAA,SAAA,CAAA1B,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAAA,gBAAA,OAAA0B,SAAA,CAAAjB,CAAA,CACTf,CAAAA,EAAAA,QAAQ,CAACY,IAAI,CAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,MAEd,IAAItB,KAAK,CAACU,QAAQ,CAACgB,OAAO,IAAI,0CAA0C,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAgB,gBAAAA,SAAA,CAAA1B,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,MAAA;AAAA,cAAA,KAAA,CAAA;AAAA0B,gBAAAA,SAAA,CAAA3B,CAAA,GAAA,CAAA,CAAA;gBAAA0B,GAAA,GAAAC,SAAA,CAAAvB,CAAA,CAAA;AAGnF,gBAAA,IAAI,CAACQ,WAAW,CAAAc,GAAM,CAAC,CAAA;AAAC,gBAAA,MAAAA,GAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,OAAAC,SAAA,CAAAjB,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,EAAAc,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;SAG/B,CAAA,CAAA,CAAA;QAAA,SAnBKI,aAAaA,CAAAC,GAAA,EAAA;AAAA,UAAA,OAAAN,cAAA,CAAAR,KAAA,CAAA,IAAA,EAAA1C,SAAA,CAAA,CAAA;AAAA,SAAA;AAAA,QAAA,OAAbuD,aAAa,CAAA;AAAA,OAAA,EAAA;AAqBnB;AACR;AACA;AAFQ,OAAA;AAAA,KAAA,EAAA;MAAA7C,GAAA,EAAA,eAAA;MAAAC,KAAA,EAGA,SAAAsB,aAAaA,CAACb,WAAW,EAAEqC,KAAK,EAAE3B,IAAI,EAAgB;AAAA,QAAA,IAAdT,OAAO,GAAArB,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE,CAAA;AAChD,QAAA,IAAM0D,SAAS,GAAGC,QAAQ,CAACC,cAAc,CAACxC,WAAW,CAAC,CAAA;QACtD,IAAI,CAACsC,SAAS,EAAE;AACZ,UAAA,MAAM,IAAI9C,KAAK,CAAA,wBAAA,CAAAiD,MAAA,CAAyBzC,WAAW,qBAAc,CAAC,CAAA;AACtE,SAAA;;AAEA;QACAsC,SAAS,CAACI,SAAS,GAAG,EAAE,CAAA;;AAExB;AACA,QAAA,IAAMC,SAAS,GAAGJ,QAAQ,CAACK,aAAa,CAAC,KAAK,CAAC,CAAA;QAC/CD,SAAS,CAACE,SAAS,GAAG,gBAAgB,CAAA;AACtCF,QAAAA,SAAS,CAACD,SAAS,GAAA,8EAAA,CAAAD,MAAA,CAEL/B,IAAI,KAAK,MAAM,GAAG,kBAAkB,GAAG,kBAAkB,EAAA,gWAAA,CAAA,CAAA+B,MAAA,CAQnDJ,KAAK,EAQxB,0aAAA,CAAA,CAAA;AAEDC,QAAAA,SAAS,CAACQ,WAAW,CAACH,SAAS,CAAC,CAAA;;AAEhC;QACA,IAAI,CAACI,UAAU,EAAE,CAAA;;AAEjB;AACA,QAAA,IAAI,CAACC,UAAU,CAAC/C,OAAO,CAAC9B,KAAK,IAAI,IAAI,CAACQ,MAAM,CAACR,KAAK,CAAC,CAAA;AACvD,OAAA;;AAEA;AACR;AACA;AAFQ,KAAA,EAAA;MAAAmB,GAAA,EAAA,WAAA;MAAAC,KAAA,GAAA,YAAA;AAAA,QAAA,IAAA0D,UAAA,GAAArD,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAGA,SAAAoD,QAAAA,CAAgBlD,WAAW,EAAEU,IAAI,EAAA;AAAA,UAAA,IAAAT,OAAA;YAAAkD,MAAA;AAAAC,YAAAA,MAAA,GAAAxE,SAAA;YAAAyE,GAAA;YAAAC,GAAA,CAAA;AAAA,UAAA,OAAAzD,YAAA,EAAA,CAAAQ,CAAA,CAAA,UAAAkD,SAAA,EAAA;AAAA,YAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAhD,CAAA,GAAAgD,SAAA,CAAA/C,CAAA;AAAA,cAAA,KAAA,CAAA;AAAEP,gBAAAA,OAAO,GAAAmD,MAAA,CAAAvE,MAAA,GAAAuE,CAAAA,IAAAA,MAAA,CAAAtE,CAAAA,CAAAA,KAAAA,SAAA,GAAAsE,MAAA,CAAG,CAAA,CAAA,GAAA,EAAE,CAAA;AAAAG,gBAAAA,SAAA,CAAAhD,CAAA,GAAA,CAAA,CAAA;gBAAA,IAExBG,EAAAA,IAAI,KAAK,MAAM,CAAA,EAAA;AAAA6C,kBAAAA,SAAA,CAAA/C,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAAA+C,gBAAAA,SAAA,CAAA/C,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OAClB,IAAI,CAACY,cAAc,CAACpB,WAAW,EAAEC,OAAO,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAAoD,GAAA,GAAAE,SAAA,CAAA5C,CAAA,CAAA;AAAA4C,gBAAAA,SAAA,CAAA/C,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,MAAA;AAAA,cAAA,KAAA,CAAA;AAAA+C,gBAAAA,SAAA,CAAA/C,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OACzC,IAAI,CAACoB,aAAa,CAAC5B,WAAW,EAAEC,OAAO,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAAoD,GAAA,GAAAE,SAAA,CAAA5C,CAAA,CAAA;AAAA,cAAA,KAAA,CAAA;AAF9CwC,gBAAAA,MAAM,GAAAE,GAAA,CAAA;AAAA,gBAAA,OAAAE,SAAA,CAAAtC,CAAA,CAAA,CAAA,EAILkC,MAAM,CAAA,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAI,gBAAAA,SAAA,CAAAhD,CAAA,GAAA,CAAA,CAAA;gBAAA+C,GAAA,GAAAC,SAAA,CAAA5C,CAAA,CAAA;AAEb,gBAAA,IAAI,CAACQ,WAAW,CAAAmC,GAAM,CAAC,CAAA;AAAC,gBAAA,MAAAA,GAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,OAAAC,SAAA,CAAAtC,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,EAAAiC,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;SAG/B,CAAA,CAAA,CAAA;AAAA,QAAA,SAXKM,SAASA,CAAAC,GAAA,EAAAC,GAAA,EAAA;AAAA,UAAA,OAAAT,UAAA,CAAA3B,KAAA,CAAA,IAAA,EAAA1C,SAAA,CAAA,CAAA;AAAA,SAAA;AAAA,QAAA,OAAT4E,SAAS,CAAA;AAAA,OAAA,EAAA;AAaf;AACR;AACA;AAFQ,OAAA;AAAA,KAAA,EAAA;MAAAlE,GAAA,EAAA,kBAAA;MAAAC,KAAA,EAGA,SAAAyB,gBAAgBA,CAAChB,WAAW,EAAEU,IAAI,EAAET,OAAO,EAAE;AAAA,QAAA,IAAA0D,KAAA,GAAA,IAAA,CAAA;AACzC,QAAA,IAAI,CAAC,IAAI,CAAChF,MAAM,CAACN,WAAW,EAAE,OAAA;AAE9B,QAAA,IAAI,CAACa,YAAY,GAAG0E,WAAW,cAAAhE,iBAAA,cAAAC,YAAA,EAAAC,CAAAA,CAAA,CAAC,SAAA+D,QAAA,GAAA;AAAA,UAAA,IAAAC,GAAA,CAAA;AAAA,UAAA,OAAAjE,YAAA,EAAA,CAAAQ,CAAA,CAAA,UAAA0D,SAAA,EAAA;AAAA,YAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAxD,CAAA,GAAAwD,SAAA,CAAAvD,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAuD,gBAAAA,SAAA,CAAAxD,CAAA,GAAA,CAAA,CAAA;AAAAwD,gBAAAA,SAAA,CAAAvD,CAAA,GAAA,CAAA,CAAA;gBAAA,OAElBmD,KAAI,CAACH,SAAS,CAACxD,WAAW,EAAEU,IAAI,EAAET,OAAO,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAA8D,gBAAAA,SAAA,CAAAvD,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,MAAA;AAAA,cAAA,KAAA,CAAA;AAAAuD,gBAAAA,SAAA,CAAAxD,CAAA,GAAA,CAAA,CAAA;gBAAAuD,GAAA,GAAAC,SAAA,CAAApD,CAAA,CAAA;AAEhDlB,gBAAAA,OAAO,CAACuE,IAAI,CAAC,8CAA8C,EAAAF,GAAO,CAAC,CAAA;AAAC,cAAA,KAAA,CAAA;gBAAA,OAAAC,SAAA,CAAA9C,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,EAAA4C,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,SAE3E,IAAE,IAAI,CAAClF,MAAM,CAACL,eAAe,CAAC,CAAA;AACnC,OAAA;;AAEA;AACR;AACA;AAFQ,KAAA,EAAA;MAAAgB,GAAA,EAAA,YAAA;AAAAC,MAAAA,KAAA,EAGA,SAAAwD,UAAUA,GAAG;AAAA,QAAA,IAAAkB,MAAA,GAAA,IAAA,CAAA;QACT,IAAIC,QAAQ,GAAG,EAAE,CAAA;AACjB,QAAA,IAAMC,YAAY,GAAG5B,QAAQ,CAACC,cAAc,CAAC,cAAc,CAAC,CAAA;AAE5D,QAAA,IAAM4B,KAAK,GAAGR,WAAW,CAAC,YAAM;AAC5BM,UAAAA,QAAQ,EAAE,CAAA;AACV,UAAA,IAAIC,YAAY,EAAE;YACdA,YAAY,CAACE,WAAW,GAAGH,QAAQ,CAAA;AACvC,WAAA;UAEA,IAAIA,QAAQ,IAAI,CAAC,EAAE;YACfI,aAAa,CAACF,KAAK,CAAC,CAAA;AACpB,YAAA,IAAIH,MAAI,CAACtF,MAAM,CAACF,SAAS,EAAE;AACvBwF,cAAAA,MAAI,CAACtF,MAAM,CAACF,SAAS,EAAE,CAAA;AAC3B,aAAA;AACJ,WAAA;SACH,EAAE,IAAI,CAAC,CAAA;AACZ,OAAA;;AAEA;AACR;AACA;AAFQ,KAAA,EAAA;MAAAa,GAAA,EAAA,aAAA;MAAAC,KAAA,GAAA,YAAA;AAAA,QAAA,IAAAgF,YAAA,GAAA3E,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAGA,SAAA0E,QAAAA,CAAkBC,QAAQ,EAAE3D,IAAI,EAAA;UAAA,IAAA4D,GAAA,EAAAxE,QAAA,EAAAyE,SAAA,EAAAC,SAAA,EAAAzB,MAAA,EAAA0B,GAAA,CAAA;AAAA,UAAA,OAAAhF,YAAA,EAAA,CAAAQ,CAAA,CAAA,UAAAyE,SAAA,EAAA;AAAA,YAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAvE,CAAA,GAAAuE,SAAA,CAAAtE,CAAA;AAAA,cAAA,KAAA,CAAA;gBACtBkE,GAAG,GAAA,EAAA,CAAAjC,MAAA,CAAM,IAAI,CAAC9D,MAAM,CAACZ,MAAM,CAAA,CAAA0E,MAAA,CAAGgC,QAAQ,CAAA,CAAA;AAAAK,gBAAAA,SAAA,CAAAvE,CAAA,GAAA,CAAA,CAAA;AAAAuE,gBAAAA,SAAA,CAAAtE,CAAA,GAAA,CAAA,CAAA;gBAAA,OAGjBuE,KAAK,CAACL,GAAG,EAAE;AAC9BM,kBAAAA,MAAM,EAAE,MAAM;AACdC,kBAAAA,OAAO,EAAE;AACL,oBAAA,cAAc,EAAE,kBAAkB;AAClC,oBAAA,oBAAoB,EAAE,IAAI,CAACtG,MAAM,CAACV,QAAQ;AAC1C,oBAAA,oBAAoB,EAAE,IAAI,CAACU,MAAM,CAACT,QAAQ;AAC1C,oBAAA,qBAAqB,EAAE,IAAI,CAACS,MAAM,CAACX,SAAS;AAC5C,oBAAA,QAAQ,EAAE,kBAAA;mBACb;AACDkH,kBAAAA,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACtE,IAAI,CAAA;AAC7B,iBAAC,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;gBAVIZ,QAAQ,GAAA4E,SAAA,CAAAnE,CAAA,CAAA;gBAAA,IAYTT,QAAQ,CAACmF,EAAE,EAAA;AAAAP,kBAAAA,SAAA,CAAAtE,CAAA,GAAA,CAAA,CAAA;AAAA,kBAAA,MAAA;AAAA,iBAAA;AAAAsE,gBAAAA,SAAA,CAAAtE,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OACYN,QAAQ,CAACoF,IAAI,EAAE,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAjCX,SAAS,GAAAG,SAAA,CAAAnE,CAAA,CAAA;gBAEf,IAAI;AACAiE,kBAAAA,SAAS,GAAGO,IAAI,CAACI,KAAK,CAACZ,SAAS,CAAC,CAAA;iBACpC,CAAC,OAAOa,CAAC,EAAE;AACRZ,kBAAAA,SAAS,GAAG;AAAE1D,oBAAAA,OAAO,EAAEyD,SAAAA;mBAAW,CAAA;AACtC,iBAAA;AAAC,gBAAA,MAEK,IAAInF,KAAK,CAACoF,SAAS,CAAC1D,OAAO,IAAAuB,eAAAA,CAAAA,MAAA,CAAoBvC,QAAQ,CAACuF,MAAM,CAAE,CAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAX,gBAAAA,SAAA,CAAAtE,CAAA,GAAA,CAAA,CAAA;AAAA,gBAAA,OAGtDN,QAAQ,CAACwF,IAAI,EAAE,CAAA;AAAA,cAAA,KAAA,CAAA;gBAA9BvC,MAAM,GAAA2B,SAAA,CAAAnE,CAAA,CAAA;AAAA,gBAAA,OAAAmE,SAAA,CAAA7D,CAAA,CAAA,CAAA,EACLkC,MAAM,CAAA,CAAA;AAAA,cAAA,KAAA,CAAA;AAAA2B,gBAAAA,SAAA,CAAAvE,CAAA,GAAA,CAAA,CAAA;gBAAAsE,GAAA,GAAAC,SAAA,CAAAnE,CAAA,CAAA;AAEblB,gBAAAA,OAAO,CAACkG,KAAK,CAAC,oBAAoB,EAAAd,GAAO,CAAC,CAAA;AAAC,gBAAA,MAAAA,GAAA,CAAA;AAAA,cAAA,KAAA,CAAA;gBAAA,OAAAC,SAAA,CAAA7D,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,EAAAuD,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;SAGlD,CAAA,CAAA,CAAA;AAAA,QAAA,SAlCK/D,WAAWA,CAAAmF,GAAA,EAAAC,GAAA,EAAA;AAAA,UAAA,OAAAtB,YAAA,CAAAjD,KAAA,CAAA,IAAA,EAAA1C,SAAA,CAAA,CAAA;AAAA,SAAA;AAAA,QAAA,OAAX6B,WAAW,CAAA;AAAA,OAAA,EAAA;AAoCjB;AACR;AACA;AAFQ,OAAA;AAAA,KAAA,EAAA;MAAAnB,GAAA,EAAA,YAAA;AAAAC,MAAAA,KAAA,EAGA,SAAAyD,UAAUA,CAAC7E,KAAK,EAAE;AACd,QAAA,IAAMmE,SAAS,GAAGC,QAAQ,CAACuD,aAAa,CAAC,iBAAiB,CAAC,CAAA;AAC3D,QAAA,IAAIxD,SAAS,EAAE;AACXA,UAAAA,SAAS,CAACO,SAAS,GAAA,8BAAA,CAAAJ,MAAA,CAAkCtE,KAAK,CAAE,CAAA;AAChE,SAAA;AACJ,OAAA;;AAEA;AACR;AACA;AAFQ,KAAA,EAAA;MAAAmB,GAAA,EAAA,aAAA;AAAAC,MAAAA,KAAA,EAGA,SAAA4B,WAAWA,CAACwE,KAAK,EAAE;AACflG,QAAAA,OAAO,CAACkG,KAAK,CAAC,mBAAmB,EAAEA,KAAK,CAAC,CAAA;AAEzC,QAAA,IAAI,IAAI,CAAChH,MAAM,CAACH,OAAO,EAAE;AACrB,UAAA,IAAI,CAACG,MAAM,CAACH,OAAO,CAACmH,KAAK,CAAC,CAAA;AAC9B,SAAA;AACJ,OAAA;;AAEA;AACR;AACA;AAFQ,KAAA,EAAA;MAAArG,GAAA,EAAA,SAAA;AAAAC,MAAAA,KAAA,EAGA,SAAAwG,OAAOA,GAAG;QACN,IAAI,IAAI,CAAC7G,YAAY,EAAE;AACnBoF,UAAAA,aAAa,CAAC,IAAI,CAACpF,YAAY,CAAC,CAAA;AACpC,SAAA;QAEA,IAAI,CAACC,aAAa,GAAG,KAAK,CAAA;AAC1BM,QAAAA,OAAO,CAACC,GAAG,CAAC,oBAAoB,CAAC,CAAA;AACrC,OAAA;AAAC,KAAA,CAAA,CAAA,CAAA;GAGL,EAAA,CAAA;EACA7B,MAAM,CAACa,MAAM,GAAGA,MAAM,CAAA;EACtBb,MAAM,CAACmI,cAAc,GAAG,IAAI,CAAA;;AAE5B;AACAnI,EAAAA,MAAM,CAACoI,UAAU,GAAG,UAAStH,MAAM,EAAE;IACjC,IAAI;AACAd,MAAAA,MAAM,CAACmI,cAAc,GAAG,IAAItH,MAAM,CAACC,MAAM,CAAC,CAAA;MAC1C,OAAOd,MAAM,CAACmI,cAAc,CAAA;KAC/B,CAAC,OAAOL,KAAK,EAAE;AACZlG,MAAAA,OAAO,CAACkG,KAAK,CAAC,6CAA6C,EAAEA,KAAK,CAAC,CAAA;AACnE,MAAA,MAAMA,KAAK,CAAA;AACf,KAAA;GACH,CAAA;AAEL,CAAC,EAAE9H,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"sunuid-sdk.esm.js","sources":["../src/sunuid-sdk.js"],"sourcesContent":["/**\n * SunuID SDK - Package d'intégration pour partenaires\n * \n * @version 1.0.0\n * @author SunuID Team\n * @license MIT\n */\n\n(function(window) {\n 'use strict';\n\n // Configuration par défaut\n const DEFAULT_CONFIG = {\n apiUrl: 'https://sunuid.fayma.sn/api',\n clientId: null,\n secretId: null,\n theme: 'light',\n language: 'fr',\n autoRefresh: true,\n refreshInterval: 30000, // 30 secondes\n onSuccess: null,\n onError: null,\n onExpired: null\n };\n\n /**\n * Classe principale SunuID\n */\n class SunuID {\n constructor(config = {}) {\n this.config = { ...DEFAULT_CONFIG, ...config };\n this.qrCode = null;\n this.refreshTimer = null;\n this.isInitialized = false;\n \n this.init();\n }\n\n /**\n * Initialisation du SDK\n */\n init() {\n if (!this.config.clientId || !this.config.secretId) {\n throw new Error('SunuID: clientId et secretId sont requis');\n }\n\n this.isInitialized = true;\n console.log('SunuID SDK initialisé avec succès');\n }\n\n /**\n * Générer un QR code d'authentification\n */\n async generateAuthQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'auth',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'auth', options);\n this.startAutoRefresh(containerId, 'auth', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Générer un QR code KYC\n */\n async generateKYCQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'kyc',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'kyc', options);\n this.startAutoRefresh(containerId, 'kyc', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code KYC');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Vérifier le statut d'un QR code\n */\n async checkQRStatus(sessionId) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-status.php', {\n sessionId: sessionId\n });\n\n if (response.success) {\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la vérification du statut');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Afficher un QR code dans un conteneur\n */\n displayQRCode(containerId, qrUrl, type, options = {}) {\n const container = document.getElementById(containerId);\n if (!container) {\n throw new Error(`Conteneur avec l'ID \"${containerId}\" non trouvé`);\n }\n\n // Nettoyer le conteneur\n container.innerHTML = '';\n\n // Créer l'élément QR code\n const qrElement = document.createElement('div');\n qrElement.className = 'sunuid-qr-code';\n qrElement.innerHTML = `\n <div class=\"sunuid-qr-header\">\n <h3>${type === 'auth' ? 'Authentification' : 'Vérification KYC'}</h3>\n <div class=\"sunuid-timer\">\n <span>Expire dans: </span>\n <span id=\"sunuid-timer\">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class=\"sunuid-qr-image\">\n <img src=\"${qrUrl}\" alt=\"QR Code SunuID\" style=\"max-width: 300px; height: auto;\">\n </div>\n <div class=\"sunuid-qr-instructions\">\n <p>Scannez ce QR code avec l'application SunuID pour vous connecter</p>\n </div>\n <div class=\"sunuid-qr-status\" id=\"sunuid-status\">\n <p>En attente de scan...</p>\n </div>\n `;\n\n container.appendChild(qrElement);\n\n // Démarrer le timer\n this.startTimer();\n\n // Appliquer le thème\n this.applyTheme(options.theme || this.config.theme);\n }\n\n /**\n * Rafraîchir un QR code\n */\n async refreshQR(containerId, type, options = {}) {\n try {\n const result = type === 'auth' \n ? await this.generateAuthQR(containerId, options)\n : await this.generateKYCQR(containerId, options);\n \n return result;\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Démarrer le rafraîchissement automatique\n */\n startAutoRefresh(containerId, type, options) {\n if (!this.config.autoRefresh) return;\n\n this.refreshTimer = setInterval(async () => {\n try {\n await this.refreshQR(containerId, type, options);\n } catch (error) {\n console.warn('Erreur lors du rafraîchissement automatique:', error);\n }\n }, this.config.refreshInterval);\n }\n\n /**\n * Démarrer le timer de compte à rebours\n */\n startTimer() {\n let timeLeft = 30;\n const timerElement = document.getElementById('sunuid-timer');\n \n const timer = setInterval(() => {\n timeLeft--;\n if (timerElement) {\n timerElement.textContent = timeLeft;\n }\n \n if (timeLeft <= 0) {\n clearInterval(timer);\n if (this.config.onExpired) {\n this.config.onExpired();\n }\n }\n }, 1000);\n }\n\n /**\n * Effectuer une requête API\n */\n async makeRequest(endpoint, data) {\n const url = `${this.config.apiUrl}${endpoint}`;\n \n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'X-SunuID-Client-ID': this.config.clientId,\n 'X-SunuID-Secret-ID': this.config.secretId,\n 'Accept': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let errorData;\n try {\n errorData = JSON.parse(errorText);\n } catch (e) {\n errorData = { message: errorText };\n }\n \n throw new Error(errorData.message || `Erreur HTTP: ${response.status}`);\n }\n\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Erreur API SunuID:', error);\n throw error;\n }\n }\n\n /**\n * Appliquer le thème\n */\n applyTheme(theme) {\n const container = document.querySelector('.sunuid-qr-code');\n if (container) {\n container.className = `sunuid-qr-code sunuid-theme-${theme}`;\n }\n }\n\n /**\n * Gérer les erreurs\n */\n handleError(error) {\n console.error('SunuID SDK Error:', error);\n \n if (this.config.onError) {\n this.config.onError(error);\n }\n }\n\n /**\n * Nettoyer les ressources\n */\n destroy() {\n if (this.refreshTimer) {\n clearInterval(this.refreshTimer);\n }\n \n this.isInitialized = false;\n console.log('SunuID SDK détruit');\n }\n }\n\n // Exposer la classe globalement\n window.SunuID = SunuID;\n window.sunuidInstance = null;\n\n // Fonction d'initialisation globale\n window.initSunuID = function(config) {\n try {\n window.sunuidInstance = new SunuID(config);\n return window.sunuidInstance;\n } catch (error) {\n console.error('Erreur lors de l\\'initialisation de SunuID:', error);\n throw error;\n }\n };\n\n})(window); "],"names":["window","DEFAULT_CONFIG","apiUrl","clientId","secretId","theme","language","autoRefresh","refreshInterval","onSuccess","onError","onExpired","SunuID","config","arguments","length","undefined","_classCallCheck","_objectSpread","qrCode","refreshTimer","isInitialized","init","_createClass","key","value","Error","console","log","_generateAuthQR","_asyncToGenerator","_regenerator","m","_callee","containerId","options","response","_args","_t","w","_context","p","n","makeRequest","type","v","success","displayQRCode","data","qrCodeUrl","startAutoRefresh","a","message","handleError","generateAuthQR","_x","apply","_generateKYCQR","_callee2","_args2","_t2","_context2","generateKYCQR","_x2","_checkQRStatus","_callee3","sessionId","_t3","_context3","checkQRStatus","_x3","qrUrl","container","document","getElementById","concat","innerHTML","qrElement","createElement","className","appendChild","startTimer","applyTheme","_refreshQR","_callee4","result","_args4","_t4","_t5","_context4","refreshQR","_x4","_x5","_this","setInterval","_callee5","_t6","_context5","warn","_this2","timeLeft","timerElement","timer","textContent","clearInterval","_makeRequest","_callee6","endpoint","url","errorText","errorData","_t7","_context6","fetch","method","headers","body","JSON","stringify","ok","text","parse","e","status","json","error","_x6","_x7","querySelector","destroy","sunuidInstance","initSunuID"],"mappings":"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"}
|
package/dist/sunuid-sdk.js
CHANGED
|
@@ -205,7 +205,6 @@
|
|
|
205
205
|
// Configuration par défaut
|
|
206
206
|
var DEFAULT_CONFIG = {
|
|
207
207
|
apiUrl: 'https://sunuid.fayma.sn/api',
|
|
208
|
-
partnerId: null,
|
|
209
208
|
clientId: null,
|
|
210
209
|
secretId: null,
|
|
211
210
|
theme: 'light',
|
|
@@ -238,8 +237,8 @@
|
|
|
238
237
|
return _createClass(SunuID, [{
|
|
239
238
|
key: "init",
|
|
240
239
|
value: function init() {
|
|
241
|
-
if (!this.config.
|
|
242
|
-
throw new Error('SunuID:
|
|
240
|
+
if (!this.config.clientId || !this.config.secretId) {
|
|
241
|
+
throw new Error('SunuID: clientId et secretId sont requis');
|
|
243
242
|
}
|
|
244
243
|
this.isInitialized = true;
|
|
245
244
|
console.log('SunuID SDK initialisé avec succès');
|
|
@@ -559,7 +558,6 @@
|
|
|
559
558
|
'Content-Type': 'application/json',
|
|
560
559
|
'X-SunuID-Client-ID': this.config.clientId,
|
|
561
560
|
'X-SunuID-Secret-ID': this.config.secretId,
|
|
562
|
-
'X-SunuID-Partner-ID': this.config.partnerId,
|
|
563
561
|
'Accept': 'application/json'
|
|
564
562
|
},
|
|
565
563
|
body: JSON.stringify(data)
|
package/dist/sunuid-sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sunuid-sdk.js","sources":["../src/sunuid-sdk.js"],"sourcesContent":["/**\n * SunuID SDK - Package d'intégration pour partenaires\n * \n * @version 1.0.0\n * @author SunuID Team\n * @license MIT\n */\n\n(function(window) {\n 'use strict';\n\n // Configuration par défaut\n const DEFAULT_CONFIG = {\n apiUrl: 'https://sunuid.fayma.sn/api',\n partnerId: null,\n clientId: null,\n secretId: null,\n theme: 'light',\n language: 'fr',\n autoRefresh: true,\n refreshInterval: 30000, // 30 secondes\n onSuccess: null,\n onError: null,\n onExpired: null\n };\n\n /**\n * Classe principale SunuID\n */\n class SunuID {\n constructor(config = {}) {\n this.config = { ...DEFAULT_CONFIG, ...config };\n this.qrCode = null;\n this.refreshTimer = null;\n this.isInitialized = false;\n \n this.init();\n }\n\n /**\n * Initialisation du SDK\n */\n init() {\n if (!this.config.partnerId || !this.config.clientId || !this.config.secretId) {\n throw new Error('SunuID: partnerId, clientId et secretId sont requis');\n }\n\n this.isInitialized = true;\n console.log('SunuID SDK initialisé avec succès');\n }\n\n /**\n * Générer un QR code d'authentification\n */\n async generateAuthQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'auth',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'auth', options);\n this.startAutoRefresh(containerId, 'auth', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Générer un QR code KYC\n */\n async generateKYCQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'kyc',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'kyc', options);\n this.startAutoRefresh(containerId, 'kyc', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code KYC');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Vérifier le statut d'un QR code\n */\n async checkQRStatus(sessionId) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-status.php', {\n sessionId: sessionId\n });\n\n if (response.success) {\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la vérification du statut');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Afficher un QR code dans un conteneur\n */\n displayQRCode(containerId, qrUrl, type, options = {}) {\n const container = document.getElementById(containerId);\n if (!container) {\n throw new Error(`Conteneur avec l'ID \"${containerId}\" non trouvé`);\n }\n\n // Nettoyer le conteneur\n container.innerHTML = '';\n\n // Créer l'élément QR code\n const qrElement = document.createElement('div');\n qrElement.className = 'sunuid-qr-code';\n qrElement.innerHTML = `\n <div class=\"sunuid-qr-header\">\n <h3>${type === 'auth' ? 'Authentification' : 'Vérification KYC'}</h3>\n <div class=\"sunuid-timer\">\n <span>Expire dans: </span>\n <span id=\"sunuid-timer\">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class=\"sunuid-qr-image\">\n <img src=\"${qrUrl}\" alt=\"QR Code SunuID\" style=\"max-width: 300px; height: auto;\">\n </div>\n <div class=\"sunuid-qr-instructions\">\n <p>Scannez ce QR code avec l'application SunuID pour vous connecter</p>\n </div>\n <div class=\"sunuid-qr-status\" id=\"sunuid-status\">\n <p>En attente de scan...</p>\n </div>\n `;\n\n container.appendChild(qrElement);\n\n // Démarrer le timer\n this.startTimer();\n\n // Appliquer le thème\n this.applyTheme(options.theme || this.config.theme);\n }\n\n /**\n * Rafraîchir un QR code\n */\n async refreshQR(containerId, type, options = {}) {\n try {\n const result = type === 'auth' \n ? await this.generateAuthQR(containerId, options)\n : await this.generateKYCQR(containerId, options);\n \n return result;\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Démarrer le rafraîchissement automatique\n */\n startAutoRefresh(containerId, type, options) {\n if (!this.config.autoRefresh) return;\n\n this.refreshTimer = setInterval(async () => {\n try {\n await this.refreshQR(containerId, type, options);\n } catch (error) {\n console.warn('Erreur lors du rafraîchissement automatique:', error);\n }\n }, this.config.refreshInterval);\n }\n\n /**\n * Démarrer le timer de compte à rebours\n */\n startTimer() {\n let timeLeft = 30;\n const timerElement = document.getElementById('sunuid-timer');\n \n const timer = setInterval(() => {\n timeLeft--;\n if (timerElement) {\n timerElement.textContent = timeLeft;\n }\n \n if (timeLeft <= 0) {\n clearInterval(timer);\n if (this.config.onExpired) {\n this.config.onExpired();\n }\n }\n }, 1000);\n }\n\n /**\n * Effectuer une requête API\n */\n async makeRequest(endpoint, data) {\n const url = `${this.config.apiUrl}${endpoint}`;\n \n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'X-SunuID-Client-ID': this.config.clientId,\n 'X-SunuID-Secret-ID': this.config.secretId,\n 'X-SunuID-Partner-ID': this.config.partnerId,\n 'Accept': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let errorData;\n try {\n errorData = JSON.parse(errorText);\n } catch (e) {\n errorData = { message: errorText };\n }\n \n throw new Error(errorData.message || `Erreur HTTP: ${response.status}`);\n }\n\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Erreur API SunuID:', error);\n throw error;\n }\n }\n\n /**\n * Appliquer le thème\n */\n applyTheme(theme) {\n const container = document.querySelector('.sunuid-qr-code');\n if (container) {\n container.className = `sunuid-qr-code sunuid-theme-${theme}`;\n }\n }\n\n /**\n * Gérer les erreurs\n */\n handleError(error) {\n console.error('SunuID SDK Error:', error);\n \n if (this.config.onError) {\n this.config.onError(error);\n }\n }\n\n /**\n * Nettoyer les ressources\n */\n destroy() {\n if (this.refreshTimer) {\n clearInterval(this.refreshTimer);\n }\n \n this.isInitialized = false;\n console.log('SunuID SDK détruit');\n }\n }\n\n // Exposer la classe globalement\n window.SunuID = SunuID;\n window.sunuidInstance = null;\n\n // Fonction d'initialisation globale\n window.initSunuID = function(config) {\n try {\n window.sunuidInstance = new SunuID(config);\n return window.sunuidInstance;\n } catch (error) {\n console.error('Erreur lors de l\\'initialisation de SunuID:', error);\n throw error;\n }\n };\n\n})(window); "],"names":["window","DEFAULT_CONFIG","apiUrl","partnerId","clientId","secretId","theme","language","autoRefresh","refreshInterval","onSuccess","onError","onExpired","SunuID","config","arguments","length","undefined","_classCallCheck","_objectSpread","qrCode","refreshTimer","isInitialized","init","_createClass","key","value","Error","console","log","_generateAuthQR","_asyncToGenerator","_regenerator","m","_callee","containerId","options","response","_args","_t","w","_context","p","n","makeRequest","type","v","success","displayQRCode","data","qrCodeUrl","startAutoRefresh","a","message","handleError","generateAuthQR","_x","apply","_generateKYCQR","_callee2","_args2","_t2","_context2","generateKYCQR","_x2","_checkQRStatus","_callee3","sessionId","_t3","_context3","checkQRStatus","_x3","qrUrl","container","document","getElementById","concat","innerHTML","qrElement","createElement","className","appendChild","startTimer","applyTheme","_refreshQR","_callee4","result","_args4","_t4","_t5","_context4","refreshQR","_x4","_x5","_this","setInterval","_callee5","_t6","_context5","warn","_this2","timeLeft","timerElement","timer","textContent","clearInterval","_makeRequest","_callee6","endpoint","url","errorText","errorData","_t7","_context6","fetch","method","headers","body","JSON","stringify","ok","text","parse","e","status","json","error","_x6","_x7","querySelector","destroy","sunuidInstance","initSunuID"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sunuid-sdk.js","sources":["../src/sunuid-sdk.js"],"sourcesContent":["/**\n * SunuID SDK - Package d'intégration pour partenaires\n * \n * @version 1.0.0\n * @author SunuID Team\n * @license MIT\n */\n\n(function(window) {\n 'use strict';\n\n // Configuration par défaut\n const DEFAULT_CONFIG = {\n apiUrl: 'https://sunuid.fayma.sn/api',\n clientId: null,\n secretId: null,\n theme: 'light',\n language: 'fr',\n autoRefresh: true,\n refreshInterval: 30000, // 30 secondes\n onSuccess: null,\n onError: null,\n onExpired: null\n };\n\n /**\n * Classe principale SunuID\n */\n class SunuID {\n constructor(config = {}) {\n this.config = { ...DEFAULT_CONFIG, ...config };\n this.qrCode = null;\n this.refreshTimer = null;\n this.isInitialized = false;\n \n this.init();\n }\n\n /**\n * Initialisation du SDK\n */\n init() {\n if (!this.config.clientId || !this.config.secretId) {\n throw new Error('SunuID: clientId et secretId sont requis');\n }\n\n this.isInitialized = true;\n console.log('SunuID SDK initialisé avec succès');\n }\n\n /**\n * Générer un QR code d'authentification\n */\n async generateAuthQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'auth',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'auth', options);\n this.startAutoRefresh(containerId, 'auth', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Générer un QR code KYC\n */\n async generateKYCQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'kyc',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'kyc', options);\n this.startAutoRefresh(containerId, 'kyc', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code KYC');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Vérifier le statut d'un QR code\n */\n async checkQRStatus(sessionId) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-status.php', {\n sessionId: sessionId\n });\n\n if (response.success) {\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la vérification du statut');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Afficher un QR code dans un conteneur\n */\n displayQRCode(containerId, qrUrl, type, options = {}) {\n const container = document.getElementById(containerId);\n if (!container) {\n throw new Error(`Conteneur avec l'ID \"${containerId}\" non trouvé`);\n }\n\n // Nettoyer le conteneur\n container.innerHTML = '';\n\n // Créer l'élément QR code\n const qrElement = document.createElement('div');\n qrElement.className = 'sunuid-qr-code';\n qrElement.innerHTML = `\n <div class=\"sunuid-qr-header\">\n <h3>${type === 'auth' ? 'Authentification' : 'Vérification KYC'}</h3>\n <div class=\"sunuid-timer\">\n <span>Expire dans: </span>\n <span id=\"sunuid-timer\">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class=\"sunuid-qr-image\">\n <img src=\"${qrUrl}\" alt=\"QR Code SunuID\" style=\"max-width: 300px; height: auto;\">\n </div>\n <div class=\"sunuid-qr-instructions\">\n <p>Scannez ce QR code avec l'application SunuID pour vous connecter</p>\n </div>\n <div class=\"sunuid-qr-status\" id=\"sunuid-status\">\n <p>En attente de scan...</p>\n </div>\n `;\n\n container.appendChild(qrElement);\n\n // Démarrer le timer\n this.startTimer();\n\n // Appliquer le thème\n this.applyTheme(options.theme || this.config.theme);\n }\n\n /**\n * Rafraîchir un QR code\n */\n async refreshQR(containerId, type, options = {}) {\n try {\n const result = type === 'auth' \n ? await this.generateAuthQR(containerId, options)\n : await this.generateKYCQR(containerId, options);\n \n return result;\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Démarrer le rafraîchissement automatique\n */\n startAutoRefresh(containerId, type, options) {\n if (!this.config.autoRefresh) return;\n\n this.refreshTimer = setInterval(async () => {\n try {\n await this.refreshQR(containerId, type, options);\n } catch (error) {\n console.warn('Erreur lors du rafraîchissement automatique:', error);\n }\n }, this.config.refreshInterval);\n }\n\n /**\n * Démarrer le timer de compte à rebours\n */\n startTimer() {\n let timeLeft = 30;\n const timerElement = document.getElementById('sunuid-timer');\n \n const timer = setInterval(() => {\n timeLeft--;\n if (timerElement) {\n timerElement.textContent = timeLeft;\n }\n \n if (timeLeft <= 0) {\n clearInterval(timer);\n if (this.config.onExpired) {\n this.config.onExpired();\n }\n }\n }, 1000);\n }\n\n /**\n * Effectuer une requête API\n */\n async makeRequest(endpoint, data) {\n const url = `${this.config.apiUrl}${endpoint}`;\n \n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'X-SunuID-Client-ID': this.config.clientId,\n 'X-SunuID-Secret-ID': this.config.secretId,\n 'Accept': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let errorData;\n try {\n errorData = JSON.parse(errorText);\n } catch (e) {\n errorData = { message: errorText };\n }\n \n throw new Error(errorData.message || `Erreur HTTP: ${response.status}`);\n }\n\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Erreur API SunuID:', error);\n throw error;\n }\n }\n\n /**\n * Appliquer le thème\n */\n applyTheme(theme) {\n const container = document.querySelector('.sunuid-qr-code');\n if (container) {\n container.className = `sunuid-qr-code sunuid-theme-${theme}`;\n }\n }\n\n /**\n * Gérer les erreurs\n */\n handleError(error) {\n console.error('SunuID SDK Error:', error);\n \n if (this.config.onError) {\n this.config.onError(error);\n }\n }\n\n /**\n * Nettoyer les ressources\n */\n destroy() {\n if (this.refreshTimer) {\n clearInterval(this.refreshTimer);\n }\n \n this.isInitialized = false;\n console.log('SunuID SDK détruit');\n }\n }\n\n // Exposer la classe globalement\n window.SunuID = SunuID;\n window.sunuidInstance = null;\n\n // Fonction d'initialisation globale\n window.initSunuID = function(config) {\n try {\n window.sunuidInstance = new SunuID(config);\n return window.sunuidInstance;\n } catch (error) {\n console.error('Erreur lors de l\\'initialisation de SunuID:', error);\n throw error;\n }\n };\n\n})(window); "],"names":["window","DEFAULT_CONFIG","apiUrl","clientId","secretId","theme","language","autoRefresh","refreshInterval","onSuccess","onError","onExpired","SunuID","config","arguments","length","undefined","_classCallCheck","_objectSpread","qrCode","refreshTimer","isInitialized","init","_createClass","key","value","Error","console","log","_generateAuthQR","_asyncToGenerator","_regenerator","m","_callee","containerId","options","response","_args","_t","w","_context","p","n","makeRequest","type","v","success","displayQRCode","data","qrCodeUrl","startAutoRefresh","a","message","handleError","generateAuthQR","_x","apply","_generateKYCQR","_callee2","_args2","_t2","_context2","generateKYCQR","_x2","_checkQRStatus","_callee3","sessionId","_t3","_context3","checkQRStatus","_x3","qrUrl","container","document","getElementById","concat","innerHTML","qrElement","createElement","className","appendChild","startTimer","applyTheme","_refreshQR","_callee4","result","_args4","_t4","_t5","_context4","refreshQR","_x4","_x5","_this","setInterval","_callee5","_t6","_context5","warn","_this2","timeLeft","timerElement","timer","textContent","clearInterval","_makeRequest","_callee6","endpoint","url","errorText","errorData","_t7","_context6","fetch","method","headers","body","JSON","stringify","ok","text","parse","e","status","json","error","_x6","_x7","querySelector","destroy","sunuidInstance","initSunuID"],"mappings":"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"}
|
package/dist/sunuid-sdk.min.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
!function(){"use strict";function e(e,t,r,
|
|
1
|
+
!function(){"use strict";function e(e,t,n,r,i,o,a){try{var u=e[o](a),s=u.value}catch(e){return void n(e)}u.done?t(s):Promise.resolve(s).then(r,i)}function t(t){return function(){var n=this,r=arguments;return new Promise(function(i,o){var a=t.apply(n,r);function u(t){e(a,i,o,u,s,"next",t)}function s(t){e(a,i,o,u,s,"throw",t)}u(void 0)})}}function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,s(r.key),r)}}function r(e,t,n){return(t=s(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach(function(t){r(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function a(){
|
|
2
2
|
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
|
|
3
|
-
var e,t,
|
|
3
|
+
var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var a=r&&r.prototype instanceof c?r:c,l=Object.create(a.prototype);return u(l,"_invoke",function(n,r,i){var o,a,u,c=0,l=i||[],f=!1,h={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return o=t,a=0,u=e,h.n=n,s}};function p(n,r){for(a=n,u=r,t=0;!f&&c&&!i&&t<l.length;t++){var i,o=l[t],p=h.p,d=o[2];n>3?(i=d===r)&&(u=o[(a=o[4])?5:(a=3,3)],o[4]=o[5]=e):o[0]<=p&&((i=n<2&&p<o[1])?(a=0,h.v=r,h.n=o[1]):p<d&&(i=n<3||o[0]>r||r>d)&&(o[4]=n,o[5]=r,h.n=d,a=0))}if(i||n>1)return s;throw f=!0,r}return function(i,l,d){if(c>1)throw TypeError("Generator is already running");for(f&&1===l&&p(l,d),a=l,u=d;(t=a<2?e:u)||!f;){o||(a?a<3?(a>1&&(h.n=-1),p(a,u)):h.n=u:h.v=u);try{if(c=2,o){if(a||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,a<2&&(a=0)}else 1===a&&(t=o.return)&&t.call(o),a<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),a=1);o=e}else if((t=(f=h.n<0)?u:n.call(r,h))!==s)break}catch(t){o=e,a=1,u=t}finally{c=1}}return{value:t,done:f}}}(n,i,o),!0),l}var s={};function c(){}function l(){}function f(){}t=Object.getPrototypeOf;var h=[][r]?t(t([][r]())):(u(t={},r,function(){return this}),t),p=f.prototype=c.prototype=Object.create(h);function d(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,u(e,i,"GeneratorFunction")),e.prototype=Object.create(p),e}return l.prototype=f,u(p,"constructor",f),u(f,"constructor",l),l.displayName="GeneratorFunction",u(f,i,"GeneratorFunction"),u(p),u(p,i,"Generator"),u(p,r,function(){return this}),u(p,"toString",function(){return"[object Generator]"}),(a=function(){return{w:o,m:d}})()}function u(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}u=function(e,t,n,r){function o(t,n){u(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},u(e,t,n,r)}function s(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}
|
|
4
4
|
/**
|
|
5
5
|
* SunuID SDK - Package d'intégration pour partenaires
|
|
6
6
|
*
|
|
7
7
|
* @version 1.0.0
|
|
8
8
|
* @author SunuID Team
|
|
9
9
|
* @license MIT
|
|
10
|
-
*/!function(e){var
|
|
10
|
+
*/!function(e){var r={apiUrl:"https://sunuid.fayma.sn/api",clientId:null,secretId:null,theme:"light",language:"fr",autoRefresh:!0,refreshInterval:3e4,onSuccess:null,onError:null,onExpired:null},i=function(){return e=function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.config=o(o({},r),t),this.qrCode=null,this.refreshTimer=null,this.isInitialized=!1,this.init()},i=[{key:"init",value:function(){if(!this.config.clientId||!this.config.secretId)throw new Error("SunuID: clientId et secretId sont requis");this.isInitialized=!0,console.log("SunuID SDK initialisé avec succès")}},{key:"generateAuthQR",value:(h=t(a().m(function e(t){var n,r,i,u=arguments;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if(n=u.length>1&&void 0!==u[1]?u[1]:{},this.isInitialized){e.n=1;break}throw new Error("SunuID: SDK non initialisé");case 1:return e.p=1,e.n=2,this.makeRequest("/auth/qr-generate.php",o({type:"auth"},n));case 2:if(!(r=e.v).success){e.n=3;break}return this.displayQRCode(t,r.data.qrCodeUrl,"auth",n),this.startAutoRefresh(t,"auth",n),e.a(2,r.data);case 3:throw new Error(r.message||"Erreur lors de la génération du QR code");case 4:e.n=6;break;case 5:throw e.p=5,i=e.v,this.handleError(i),i;case 6:return e.a(2)}},e,this,[[1,5]])})),function(e){return h.apply(this,arguments)})},{key:"generateKYCQR",value:(f=t(a().m(function e(t){var n,r,i,u=arguments;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if(n=u.length>1&&void 0!==u[1]?u[1]:{},this.isInitialized){e.n=1;break}throw new Error("SunuID: SDK non initialisé");case 1:return e.p=1,e.n=2,this.makeRequest("/auth/qr-generate.php",o({type:"kyc"},n));case 2:if(!(r=e.v).success){e.n=3;break}return this.displayQRCode(t,r.data.qrCodeUrl,"kyc",n),this.startAutoRefresh(t,"kyc",n),e.a(2,r.data);case 3:throw new Error(r.message||"Erreur lors de la génération du QR code KYC");case 4:e.n=6;break;case 5:throw e.p=5,i=e.v,this.handleError(i),i;case 6:return e.a(2)}},e,this,[[1,5]])})),function(e){return f.apply(this,arguments)})},{key:"checkQRStatus",value:(l=t(a().m(function e(t){var n,r;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if(this.isInitialized){e.n=1;break}throw new Error("SunuID: SDK non initialisé");case 1:return e.p=1,e.n=2,this.makeRequest("/auth/qr-status.php",{sessionId:t});case 2:if(!(n=e.v).success){e.n=3;break}return e.a(2,n.data);case 3:throw new Error(n.message||"Erreur lors de la vérification du statut");case 4:e.n=6;break;case 5:throw e.p=5,r=e.v,this.handleError(r),r;case 6:return e.a(2)}},e,this,[[1,5]])})),function(e){return l.apply(this,arguments)})},{key:"displayQRCode",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=document.getElementById(e);if(!i)throw new Error("Conteneur avec l'ID \"".concat(e,'" non trouvé'));i.innerHTML="";var o=document.createElement("div");o.className="sunuid-qr-code",o.innerHTML='\n <div class="sunuid-qr-header">\n <h3>'.concat("auth"===n?"Authentification":"Vérification KYC",'</h3>\n <div class="sunuid-timer">\n <span>Expire dans: </span>\n <span id="sunuid-timer">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class="sunuid-qr-image">\n <img src="').concat(t,'" alt="QR Code SunuID" style="max-width: 300px; height: auto;">\n </div>\n <div class="sunuid-qr-instructions">\n <p>Scannez ce QR code avec l\'application SunuID pour vous connecter</p>\n </div>\n <div class="sunuid-qr-status" id="sunuid-status">\n <p>En attente de scan...</p>\n </div>\n '),i.appendChild(o),this.startTimer(),this.applyTheme(r.theme||this.config.theme)}},{key:"refreshQR",value:(c=t(a().m(function e(t,n){var r,i,o,u,s=arguments;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=s.length>2&&void 0!==s[2]?s[2]:{},e.p=1,"auth"!==n){e.n=3;break}return e.n=2,this.generateAuthQR(t,r);case 2:o=e.v,e.n=5;break;case 3:return e.n=4,this.generateKYCQR(t,r);case 4:o=e.v;case 5:return i=o,e.a(2,i);case 6:throw e.p=6,u=e.v,this.handleError(u),u;case 7:return e.a(2)}},e,this,[[1,6]])})),function(e,t){return c.apply(this,arguments)})},{key:"startAutoRefresh",value:function(e,n,r){var i=this;this.config.autoRefresh&&(this.refreshTimer=setInterval(t(a().m(function t(){var o;return a().w(function(t){for(;;)switch(t.p=t.n){case 0:return t.p=0,t.n=1,i.refreshQR(e,n,r);case 1:t.n=3;break;case 2:t.p=2,o=t.v,console.warn("Erreur lors du rafraîchissement automatique:",o);case 3:return t.a(2)}},t,null,[[0,2]])})),this.config.refreshInterval))}},{key:"startTimer",value:function(){var e=this,t=30,n=document.getElementById("sunuid-timer"),r=setInterval(function(){t--,n&&(n.textContent=t),t<=0&&(clearInterval(r),e.config.onExpired&&e.config.onExpired())},1e3)}},{key:"makeRequest",value:(s=t(a().m(function e(t,n){var r,i,o,u,s,c;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:return r="".concat(this.config.apiUrl).concat(t),e.p=1,e.n=2,fetch(r,{method:"POST",headers:{"Content-Type":"application/json","X-SunuID-Client-ID":this.config.clientId,"X-SunuID-Secret-ID":this.config.secretId,Accept:"application/json"},body:JSON.stringify(n)});case 2:if((i=e.v).ok){e.n=4;break}return e.n=3,i.text();case 3:o=e.v;try{u=JSON.parse(o)}catch(e){u={message:o}}throw new Error(u.message||"Erreur HTTP: ".concat(i.status));case 4:return e.n=5,i.json();case 5:return s=e.v,e.a(2,s);case 6:throw e.p=6,c=e.v,console.error("Erreur API SunuID:",c),c;case 7:return e.a(2)}},e,this,[[1,6]])})),function(e,t){return s.apply(this,arguments)})},{key:"applyTheme",value:function(e){var t=document.querySelector(".sunuid-qr-code");t&&(t.className="sunuid-qr-code sunuid-theme-".concat(e))}},{key:"handleError",value:function(e){console.error("SunuID SDK Error:",e),this.config.onError&&this.config.onError(e)}},{key:"destroy",value:function(){this.refreshTimer&&clearInterval(this.refreshTimer),this.isInitialized=!1,console.log("SunuID SDK détruit")}}],i&&n(e.prototype,i),u&&n(e,u),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,i,u,s,c,l,f,h}();e.SunuID=i,e.sunuidInstance=null,e.initSunuID=function(t){try{return e.sunuidInstance=new i(t),e.sunuidInstance}catch(e){throw console.error("Erreur lors de l'initialisation de SunuID:",e),e}}}(window)}();
|
|
11
11
|
//# sourceMappingURL=sunuid-sdk.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sunuid-sdk.min.js","sources":["../src/sunuid-sdk.js"],"sourcesContent":["/**\n * SunuID SDK - Package d'intégration pour partenaires\n * \n * @version 1.0.0\n * @author SunuID Team\n * @license MIT\n */\n\n(function(window) {\n 'use strict';\n\n // Configuration par défaut\n const DEFAULT_CONFIG = {\n apiUrl: 'https://sunuid.fayma.sn/api',\n partnerId: null,\n clientId: null,\n secretId: null,\n theme: 'light',\n language: 'fr',\n autoRefresh: true,\n refreshInterval: 30000, // 30 secondes\n onSuccess: null,\n onError: null,\n onExpired: null\n };\n\n /**\n * Classe principale SunuID\n */\n class SunuID {\n constructor(config = {}) {\n this.config = { ...DEFAULT_CONFIG, ...config };\n this.qrCode = null;\n this.refreshTimer = null;\n this.isInitialized = false;\n \n this.init();\n }\n\n /**\n * Initialisation du SDK\n */\n init() {\n if (!this.config.partnerId || !this.config.clientId || !this.config.secretId) {\n throw new Error('SunuID: partnerId, clientId et secretId sont requis');\n }\n\n this.isInitialized = true;\n console.log('SunuID SDK initialisé avec succès');\n }\n\n /**\n * Générer un QR code d'authentification\n */\n async generateAuthQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'auth',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'auth', options);\n this.startAutoRefresh(containerId, 'auth', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Générer un QR code KYC\n */\n async generateKYCQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'kyc',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'kyc', options);\n this.startAutoRefresh(containerId, 'kyc', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code KYC');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Vérifier le statut d'un QR code\n */\n async checkQRStatus(sessionId) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-status.php', {\n sessionId: sessionId\n });\n\n if (response.success) {\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la vérification du statut');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Afficher un QR code dans un conteneur\n */\n displayQRCode(containerId, qrUrl, type, options = {}) {\n const container = document.getElementById(containerId);\n if (!container) {\n throw new Error(`Conteneur avec l'ID \"${containerId}\" non trouvé`);\n }\n\n // Nettoyer le conteneur\n container.innerHTML = '';\n\n // Créer l'élément QR code\n const qrElement = document.createElement('div');\n qrElement.className = 'sunuid-qr-code';\n qrElement.innerHTML = `\n <div class=\"sunuid-qr-header\">\n <h3>${type === 'auth' ? 'Authentification' : 'Vérification KYC'}</h3>\n <div class=\"sunuid-timer\">\n <span>Expire dans: </span>\n <span id=\"sunuid-timer\">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class=\"sunuid-qr-image\">\n <img src=\"${qrUrl}\" alt=\"QR Code SunuID\" style=\"max-width: 300px; height: auto;\">\n </div>\n <div class=\"sunuid-qr-instructions\">\n <p>Scannez ce QR code avec l'application SunuID pour vous connecter</p>\n </div>\n <div class=\"sunuid-qr-status\" id=\"sunuid-status\">\n <p>En attente de scan...</p>\n </div>\n `;\n\n container.appendChild(qrElement);\n\n // Démarrer le timer\n this.startTimer();\n\n // Appliquer le thème\n this.applyTheme(options.theme || this.config.theme);\n }\n\n /**\n * Rafraîchir un QR code\n */\n async refreshQR(containerId, type, options = {}) {\n try {\n const result = type === 'auth' \n ? await this.generateAuthQR(containerId, options)\n : await this.generateKYCQR(containerId, options);\n \n return result;\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Démarrer le rafraîchissement automatique\n */\n startAutoRefresh(containerId, type, options) {\n if (!this.config.autoRefresh) return;\n\n this.refreshTimer = setInterval(async () => {\n try {\n await this.refreshQR(containerId, type, options);\n } catch (error) {\n console.warn('Erreur lors du rafraîchissement automatique:', error);\n }\n }, this.config.refreshInterval);\n }\n\n /**\n * Démarrer le timer de compte à rebours\n */\n startTimer() {\n let timeLeft = 30;\n const timerElement = document.getElementById('sunuid-timer');\n \n const timer = setInterval(() => {\n timeLeft--;\n if (timerElement) {\n timerElement.textContent = timeLeft;\n }\n \n if (timeLeft <= 0) {\n clearInterval(timer);\n if (this.config.onExpired) {\n this.config.onExpired();\n }\n }\n }, 1000);\n }\n\n /**\n * Effectuer une requête API\n */\n async makeRequest(endpoint, data) {\n const url = `${this.config.apiUrl}${endpoint}`;\n \n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'X-SunuID-Client-ID': this.config.clientId,\n 'X-SunuID-Secret-ID': this.config.secretId,\n 'X-SunuID-Partner-ID': this.config.partnerId,\n 'Accept': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let errorData;\n try {\n errorData = JSON.parse(errorText);\n } catch (e) {\n errorData = { message: errorText };\n }\n \n throw new Error(errorData.message || `Erreur HTTP: ${response.status}`);\n }\n\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Erreur API SunuID:', error);\n throw error;\n }\n }\n\n /**\n * Appliquer le thème\n */\n applyTheme(theme) {\n const container = document.querySelector('.sunuid-qr-code');\n if (container) {\n container.className = `sunuid-qr-code sunuid-theme-${theme}`;\n }\n }\n\n /**\n * Gérer les erreurs\n */\n handleError(error) {\n console.error('SunuID SDK Error:', error);\n \n if (this.config.onError) {\n this.config.onError(error);\n }\n }\n\n /**\n * Nettoyer les ressources\n */\n destroy() {\n if (this.refreshTimer) {\n clearInterval(this.refreshTimer);\n }\n \n this.isInitialized = false;\n console.log('SunuID SDK détruit');\n }\n }\n\n // Exposer la classe globalement\n window.SunuID = SunuID;\n window.sunuidInstance = null;\n\n // Fonction d'initialisation globale\n window.initSunuID = function(config) {\n try {\n window.sunuidInstance = new SunuID(config);\n return window.sunuidInstance;\n } catch (error) {\n console.error('Erreur lors de l\\'initialisation de SunuID:', error);\n throw error;\n }\n };\n\n})(window); "],"names":["window","DEFAULT_CONFIG","apiUrl","partnerId","clientId","secretId","theme","language","autoRefresh","refreshInterval","onSuccess","onError","onExpired","SunuID","config","arguments","length","undefined","_classCallCheck","this","_objectSpread","qrCode","refreshTimer","isInitialized","init","key","value","Error","console","log","_generateAuthQR","_asyncToGenerator","_regenerator","m","_callee","containerId","options","response","_t","_args","w","_context","p","n","makeRequest","type","v","success","displayQRCode","data","qrCodeUrl","startAutoRefresh","a","message","handleError","_x","apply","_generateKYCQR","_callee2","_t2","_args2","_context2","_x2","_checkQRStatus","_callee3","sessionId","_t3","_context3","_x3","qrUrl","container","document","getElementById","concat","innerHTML","qrElement","createElement","className","appendChild","startTimer","applyTheme","_refreshQR","_callee4","result","_t4","_t5","_args4","_context4","generateAuthQR","generateKYCQR","_x4","_x5","_this","setInterval","_callee5","_t6","_context5","refreshQR","warn","_this2","timeLeft","timerElement","timer","textContent","clearInterval","_makeRequest","_callee6","endpoint","url","errorText","errorData","_t7","_context6","fetch","method","headers","Accept","body","JSON","stringify","ok","text","parse","e","status","json","error","_x6","_x7","querySelector","sunuidInstance","initSunuID"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sunuid-sdk.min.js","sources":["../src/sunuid-sdk.js"],"sourcesContent":["/**\n * SunuID SDK - Package d'intégration pour partenaires\n * \n * @version 1.0.0\n * @author SunuID Team\n * @license MIT\n */\n\n(function(window) {\n 'use strict';\n\n // Configuration par défaut\n const DEFAULT_CONFIG = {\n apiUrl: 'https://sunuid.fayma.sn/api',\n clientId: null,\n secretId: null,\n theme: 'light',\n language: 'fr',\n autoRefresh: true,\n refreshInterval: 30000, // 30 secondes\n onSuccess: null,\n onError: null,\n onExpired: null\n };\n\n /**\n * Classe principale SunuID\n */\n class SunuID {\n constructor(config = {}) {\n this.config = { ...DEFAULT_CONFIG, ...config };\n this.qrCode = null;\n this.refreshTimer = null;\n this.isInitialized = false;\n \n this.init();\n }\n\n /**\n * Initialisation du SDK\n */\n init() {\n if (!this.config.clientId || !this.config.secretId) {\n throw new Error('SunuID: clientId et secretId sont requis');\n }\n\n this.isInitialized = true;\n console.log('SunuID SDK initialisé avec succès');\n }\n\n /**\n * Générer un QR code d'authentification\n */\n async generateAuthQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'auth',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'auth', options);\n this.startAutoRefresh(containerId, 'auth', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Générer un QR code KYC\n */\n async generateKYCQR(containerId, options = {}) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-generate.php', {\n type: 'kyc',\n ...options\n });\n\n if (response.success) {\n this.displayQRCode(containerId, response.data.qrCodeUrl, 'kyc', options);\n this.startAutoRefresh(containerId, 'kyc', options);\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la génération du QR code KYC');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Vérifier le statut d'un QR code\n */\n async checkQRStatus(sessionId) {\n if (!this.isInitialized) {\n throw new Error('SunuID: SDK non initialisé');\n }\n\n try {\n const response = await this.makeRequest('/auth/qr-status.php', {\n sessionId: sessionId\n });\n\n if (response.success) {\n return response.data;\n } else {\n throw new Error(response.message || 'Erreur lors de la vérification du statut');\n }\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Afficher un QR code dans un conteneur\n */\n displayQRCode(containerId, qrUrl, type, options = {}) {\n const container = document.getElementById(containerId);\n if (!container) {\n throw new Error(`Conteneur avec l'ID \"${containerId}\" non trouvé`);\n }\n\n // Nettoyer le conteneur\n container.innerHTML = '';\n\n // Créer l'élément QR code\n const qrElement = document.createElement('div');\n qrElement.className = 'sunuid-qr-code';\n qrElement.innerHTML = `\n <div class=\"sunuid-qr-header\">\n <h3>${type === 'auth' ? 'Authentification' : 'Vérification KYC'}</h3>\n <div class=\"sunuid-timer\">\n <span>Expire dans: </span>\n <span id=\"sunuid-timer\">30</span>\n <span> secondes</span>\n </div>\n </div>\n <div class=\"sunuid-qr-image\">\n <img src=\"${qrUrl}\" alt=\"QR Code SunuID\" style=\"max-width: 300px; height: auto;\">\n </div>\n <div class=\"sunuid-qr-instructions\">\n <p>Scannez ce QR code avec l'application SunuID pour vous connecter</p>\n </div>\n <div class=\"sunuid-qr-status\" id=\"sunuid-status\">\n <p>En attente de scan...</p>\n </div>\n `;\n\n container.appendChild(qrElement);\n\n // Démarrer le timer\n this.startTimer();\n\n // Appliquer le thème\n this.applyTheme(options.theme || this.config.theme);\n }\n\n /**\n * Rafraîchir un QR code\n */\n async refreshQR(containerId, type, options = {}) {\n try {\n const result = type === 'auth' \n ? await this.generateAuthQR(containerId, options)\n : await this.generateKYCQR(containerId, options);\n \n return result;\n } catch (error) {\n this.handleError(error);\n throw error;\n }\n }\n\n /**\n * Démarrer le rafraîchissement automatique\n */\n startAutoRefresh(containerId, type, options) {\n if (!this.config.autoRefresh) return;\n\n this.refreshTimer = setInterval(async () => {\n try {\n await this.refreshQR(containerId, type, options);\n } catch (error) {\n console.warn('Erreur lors du rafraîchissement automatique:', error);\n }\n }, this.config.refreshInterval);\n }\n\n /**\n * Démarrer le timer de compte à rebours\n */\n startTimer() {\n let timeLeft = 30;\n const timerElement = document.getElementById('sunuid-timer');\n \n const timer = setInterval(() => {\n timeLeft--;\n if (timerElement) {\n timerElement.textContent = timeLeft;\n }\n \n if (timeLeft <= 0) {\n clearInterval(timer);\n if (this.config.onExpired) {\n this.config.onExpired();\n }\n }\n }, 1000);\n }\n\n /**\n * Effectuer une requête API\n */\n async makeRequest(endpoint, data) {\n const url = `${this.config.apiUrl}${endpoint}`;\n \n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'X-SunuID-Client-ID': this.config.clientId,\n 'X-SunuID-Secret-ID': this.config.secretId,\n 'Accept': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let errorData;\n try {\n errorData = JSON.parse(errorText);\n } catch (e) {\n errorData = { message: errorText };\n }\n \n throw new Error(errorData.message || `Erreur HTTP: ${response.status}`);\n }\n\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Erreur API SunuID:', error);\n throw error;\n }\n }\n\n /**\n * Appliquer le thème\n */\n applyTheme(theme) {\n const container = document.querySelector('.sunuid-qr-code');\n if (container) {\n container.className = `sunuid-qr-code sunuid-theme-${theme}`;\n }\n }\n\n /**\n * Gérer les erreurs\n */\n handleError(error) {\n console.error('SunuID SDK Error:', error);\n \n if (this.config.onError) {\n this.config.onError(error);\n }\n }\n\n /**\n * Nettoyer les ressources\n */\n destroy() {\n if (this.refreshTimer) {\n clearInterval(this.refreshTimer);\n }\n \n this.isInitialized = false;\n console.log('SunuID SDK détruit');\n }\n }\n\n // Exposer la classe globalement\n window.SunuID = SunuID;\n window.sunuidInstance = null;\n\n // Fonction d'initialisation globale\n window.initSunuID = function(config) {\n try {\n window.sunuidInstance = new SunuID(config);\n return window.sunuidInstance;\n } catch (error) {\n console.error('Erreur lors de l\\'initialisation de SunuID:', error);\n throw error;\n }\n };\n\n})(window); "],"names":["window","DEFAULT_CONFIG","apiUrl","clientId","secretId","theme","language","autoRefresh","refreshInterval","onSuccess","onError","onExpired","SunuID","config","arguments","length","undefined","_classCallCheck","this","_objectSpread","qrCode","refreshTimer","isInitialized","init","key","value","Error","console","log","_generateAuthQR","_asyncToGenerator","_regenerator","m","_callee","containerId","options","response","_t","_args","w","_context","p","n","makeRequest","type","v","success","displayQRCode","data","qrCodeUrl","startAutoRefresh","a","message","handleError","_x","apply","_generateKYCQR","_callee2","_t2","_args2","_context2","_x2","_checkQRStatus","_callee3","sessionId","_t3","_context3","_x3","qrUrl","container","document","getElementById","concat","innerHTML","qrElement","createElement","className","appendChild","startTimer","applyTheme","_refreshQR","_callee4","result","_t4","_t5","_args4","_context4","generateAuthQR","generateKYCQR","_x4","_x5","_this","setInterval","_callee5","_t6","_context5","refreshQR","warn","_this2","timeLeft","timerElement","timer","textContent","clearInterval","_makeRequest","_callee6","endpoint","url","errorText","errorData","_t7","_context6","fetch","method","headers","Accept","body","JSON","stringify","ok","text","parse","e","status","json","error","_x6","_x7","querySelector","sunuidInstance","initSunuID"],"mappings":";;;;;;;;;MAQA,SAAUA,GAIN,IAAMC,EAAiB,CACnBC,OAAQ,8BACRC,SAAU,KACVC,SAAU,KACVC,MAAO,QACPC,SAAU,KACVC,aAAa,EACbC,gBAAiB,IACjBC,UAAW,KACXC,QAAS,KACTC,UAAW,MAMTC,EAAM,WAUR,SATA,SAAAA,IAAyB,IAAbC,EAAMC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,CAAA,+FAAEG,MAAAL,GACnBM,KAAKL,OAAMM,EAAAA,EAAQlB,CAAAA,EAAAA,GAAmBY,GACtCK,KAAKE,OAAS,KACdF,KAAKG,aAAe,KACpBH,KAAKI,eAAgB,EAErBJ,KAAKK,MACT,IAEA,CAAA,CAAAC,IAAA,OAAAC,MAGA,WACI,IAAKP,KAAKL,OAAOV,WAAae,KAAKL,OAAOT,SACtC,MAAM,IAAIsB,MAAM,4CAGpBR,KAAKI,eAAgB,EACrBK,QAAQC,IAAI,oCAChB,GAEA,CAAAJ,IAAA,iBAAAC,OAAAI,EAAAC,EAAAC,IAAAC,EAGA,SAAAC,EAAqBC,GAAW,IAAAC,EAAAC,EAAAC,EAAAC,EAAAxB,UAAA,OAAAiB,IAAAQ,EAAA,SAAAC,GAAA,cAAAA,EAAAC,EAAAD,EAAAE,GAAA,KAAA,EAAc,GAAZP,EAAOG,EAAAvB,OAAAuB,QAAAtB,IAAAsB,EAAAtB,GAAAsB,EAAG,GAAA,CAAA,EACnCpB,KAAKI,cAAa,CAAAkB,EAAAE,EAAA,EAAA,KAAA,CAAA,MACb,IAAIhB,MAAM,8BAA6B,KAAA,EAAA,OAAAc,EAAAC,EAAA,EAAAD,EAAAE,EAAA,EAItBxB,KAAKyB,YAAY,wBAAuBxB,EAAA,CAC3DyB,KAAM,QACHT,IACL,KAAA,EAHY,KAARC,EAAQI,EAAAK,GAKDC,QAAO,CAAAN,EAAAE,EAAA,EAAA,KAAA,CAEoC,OADpDxB,KAAK6B,cAAcb,EAAaE,EAASY,KAAKC,UAAW,OAAQd,GACjEjB,KAAKgC,iBAAiBhB,EAAa,OAAQC,GAASK,EAAAW,EAC7Cf,EAAAA,EAASY,MAAI,KAAA,EAAA,MAEd,IAAItB,MAAMU,EAASgB,SAAW,2CAA0C,KAAA,EAAAZ,EAAAE,EAAA,EAAA,MAAA,KAAA,EAG1D,MAH0DF,EAAAC,EAAA,EAAAJ,EAAAG,EAAAK,EAGlF3B,KAAKmC,YAAWhB,GAAQA,EAAA,KAAA,EAAA,OAAAG,EAAAW,EAAA,GAAA,EAAAlB,EAAAf,KAAA,CAAA,CAAA,EAAA,IAG/B,IAAA,SAtBmBoC,GAAA,OAAAzB,EAAA0B,MAAArC,KAAAJ,UAAA,IAwBpB,CAAAU,IAAA,gBAAAC,OAAA+B,EAAA1B,EAAAC,IAAAC,EAGA,SAAAyB,EAAoBvB,GAAW,IAAAC,EAAAC,EAAAsB,EAAAC,EAAA7C,UAAA,OAAAiB,IAAAQ,EAAA,SAAAqB,GAAA,cAAAA,EAAAnB,EAAAmB,EAAAlB,GAAA,KAAA,EAAc,GAAZP,EAAOwB,EAAA5C,OAAA4C,QAAA3C,IAAA2C,EAAA3C,GAAA2C,EAAG,GAAA,CAAA,EAClCzC,KAAKI,cAAa,CAAAsC,EAAAlB,EAAA,EAAA,KAAA,CAAA,MACb,IAAIhB,MAAM,8BAA6B,KAAA,EAAA,OAAAkC,EAAAnB,EAAA,EAAAmB,EAAAlB,EAAA,EAItBxB,KAAKyB,YAAY,wBAAuBxB,EAAA,CAC3DyB,KAAM,OACHT,IACL,KAAA,EAHY,KAARC,EAAQwB,EAAAf,GAKDC,QAAO,CAAAc,EAAAlB,EAAA,EAAA,KAAA,CAEmC,OADnDxB,KAAK6B,cAAcb,EAAaE,EAASY,KAAKC,UAAW,MAAOd,GAChEjB,KAAKgC,iBAAiBhB,EAAa,MAAOC,GAASyB,EAAAT,EAC5Cf,EAAAA,EAASY,MAAI,KAAA,EAAA,MAEd,IAAItB,MAAMU,EAASgB,SAAW,+CAA8C,KAAA,EAAAQ,EAAAlB,EAAA,EAAA,MAAA,KAAA,EAG9D,MAH8DkB,EAAAnB,EAAA,EAAAiB,EAAAE,EAAAf,EAGtF3B,KAAKmC,YAAWK,GAAQA,EAAA,KAAA,EAAA,OAAAE,EAAAT,EAAA,GAAA,EAAAM,EAAAvC,KAAA,CAAA,CAAA,EAAA,IAG/B,IAAA,SAtBkB2C,GAAA,OAAAL,EAAAD,MAAArC,KAAAJ,UAAA,IAwBnB,CAAAU,IAAA,gBAAAC,OAAAqC,EAAAhC,EAAAC,IAAAC,EAGA,SAAA+B,EAAoBC,GAAS,IAAA5B,EAAA6B,EAAA,OAAAlC,IAAAQ,EAAA,SAAA2B,GAAA,cAAAA,EAAAzB,EAAAyB,EAAAxB,GAAA,KAAA,EAAA,GACpBxB,KAAKI,cAAa,CAAA4C,EAAAxB,EAAA,EAAA,KAAA,CAAA,MACb,IAAIhB,MAAM,8BAA6B,KAAA,EAAA,OAAAwC,EAAAzB,EAAA,EAAAyB,EAAAxB,EAAA,EAItBxB,KAAKyB,YAAY,sBAAuB,CAC3DqB,UAAWA,IACb,KAAA,EAFY,KAAR5B,EAAQ8B,EAAArB,GAIDC,QAAO,CAAAoB,EAAAxB,EAAA,EAAA,KAAA,CAAA,OAAAwB,EAAAf,EACTf,EAAAA,EAASY,MAAI,KAAA,EAAA,MAEd,IAAItB,MAAMU,EAASgB,SAAW,4CAA2C,KAAA,EAAAc,EAAAxB,EAAA,EAAA,MAAA,KAAA,EAG3D,MAH2DwB,EAAAzB,EAAA,EAAAwB,EAAAC,EAAArB,EAGnF3B,KAAKmC,YAAWY,GAAQA,EAAA,KAAA,EAAA,OAAAC,EAAAf,EAAA,GAAA,EAAAY,EAAA7C,KAAA,CAAA,CAAA,EAAA,IAG/B,IAAA,SAnBkBiD,GAAA,OAAAL,EAAAP,MAAArC,KAAAJ,UAAA,IAqBnB,CAAAU,IAAA,gBAAAC,MAGA,SAAcS,EAAakC,EAAOxB,GAAoB,IAAdT,EAAOrB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,CAAA,EACxCuD,EAAYC,SAASC,eAAerC,GAC1C,IAAKmC,EACD,MAAM,IAAI3C,MAAK,yBAAA8C,OAAyBtC,mBAI5CmC,EAAUI,UAAY,GAGtB,IAAMC,EAAYJ,SAASK,cAAc,OACzCD,EAAUE,UAAY,iBACtBF,EAAUD,UAAS,6EAAAD,OAEI,SAAT5B,EAAkB,mBAAqB,mBAAkB,2VAAA4B,OAQnDJ,EAQnB,kaAEDC,EAAUQ,YAAYH,GAGtBxD,KAAK4D,aAGL5D,KAAK6D,WAAW5C,EAAQ9B,OAASa,KAAKL,OAAOR,MACjD,GAEA,CAAAmB,IAAA,YAAAC,OAAAuD,EAAAlD,EAAAC,IAAAC,EAGA,SAAAiD,EAAgB/C,EAAaU,GAAI,IAAAT,EAAA+C,EAAAC,EAAAC,EAAAC,EAAAvE,UAAA,OAAAiB,IAAAQ,EAAA,SAAA+C,GAAA,cAAAA,EAAA7C,EAAA6C,EAAA5C,GAAA,KAAA,EAAc,GAAZP,EAAOkD,EAAAtE,OAAAsE,QAAArE,IAAAqE,EAAArE,GAAAqE,EAAG,GAAA,CAAA,EAAEC,EAAA7C,EAAA,EAEf,SAATG,EAAe,CAAA0C,EAAA5C,EAAA,EAAA,KAAA,CAAA,OAAA4C,EAAA5C,EAAA,EAClBxB,KAAKqE,eAAerD,EAAaC,GAAQ,KAAA,EAAAgD,EAAAG,EAAAzC,EAAAyC,EAAA5C,EAAA,EAAA,MAAA,KAAA,EAAA,OAAA4C,EAAA5C,EAAA,EACzCxB,KAAKsE,cAActD,EAAaC,GAAQ,KAAA,EAAAgD,EAAAG,EAAAzC,EAAA,KAAA,EAFxC,OAANqC,EAAMC,EAAAG,EAAAnC,EAAA,EAIL+B,GAAM,KAAA,EAEW,MAFXI,EAAA7C,EAAA,EAAA2C,EAAAE,EAAAzC,EAEb3B,KAAKmC,YAAW+B,GAAQA,EAAA,KAAA,EAAA,OAAAE,EAAAnC,EAAA,GAAA,EAAA8B,EAAA/D,KAAA,CAAA,CAAA,EAAA,IAG/B,IAAA,SAXcuE,EAAAC,GAAA,OAAAV,EAAAzB,MAAArC,KAAAJ,UAAA,IAaf,CAAAU,IAAA,mBAAAC,MAGA,SAAiBS,EAAaU,EAAMT,GAAS,IAAAwD,EAAAzE,KACpCA,KAAKL,OAAON,cAEjBW,KAAKG,aAAeuE,YAAW9D,EAAAC,IAAAC,EAAC,SAAA6D,IAAA,IAAAC,EAAA,OAAA/D,IAAAQ,EAAA,SAAAwD,GAAA,cAAAA,EAAAtD,EAAAsD,EAAArD,GAAA,KAAA,EAAA,OAAAqD,EAAAtD,EAAA,EAAAsD,EAAArD,EAAA,EAElBiD,EAAKK,UAAU9D,EAAaU,EAAMT,GAAQ,KAAA,EAAA4D,EAAArD,EAAA,EAAA,MAAA,KAAA,EAAAqD,EAAAtD,EAAA,EAAAqD,EAAAC,EAAAlD,EAEhDlB,QAAQsE,KAAK,+CAA8CH,GAAS,KAAA,EAAA,OAAAC,EAAA5C,EAAA,GAAA,EAAA0C,EAAA,KAAA,CAAA,CAAA,EAAA,IAE3E,IAAE3E,KAAKL,OAAOL,iBACnB,GAEA,CAAAgB,IAAA,aAAAC,MAGA,WAAa,IAAAyE,EAAAhF,KACLiF,EAAW,GACTC,EAAe9B,SAASC,eAAe,gBAEvC8B,EAAQT,YAAY,WACtBO,IACIC,IACAA,EAAaE,YAAcH,GAG3BA,GAAY,IACZI,cAAcF,GACVH,EAAKrF,OAAOF,WACZuF,EAAKrF,OAAOF,YAGvB,EAAE,IACP,GAEA,CAAAa,IAAA,cAAAC,OAAA+E,EAAA1E,EAAAC,IAAAC,EAGA,SAAAyE,EAAkBC,EAAU1D,GAAI,IAAA2D,EAAAvE,EAAAwE,EAAAC,EAAA3B,EAAA4B,EAAA,OAAA/E,IAAAQ,EAAA,SAAAwE,GAAA,cAAAA,EAAAtE,EAAAsE,EAAArE,GAAA,KAAA,EACgB,OAAtCiE,EAAG,GAAAnC,OAAMtD,KAAKL,OAAOX,QAAMsE,OAAGkC,GAAQK,EAAAtE,EAAA,EAAAsE,EAAArE,EAAA,EAGjBsE,MAAML,EAAK,CAC9BM,OAAQ,OACRC,QAAS,CACL,eAAgB,mBAChB,qBAAsBhG,KAAKL,OAAOV,SAClC,qBAAsBe,KAAKL,OAAOT,SAClC+G,OAAU,oBAEdC,KAAMC,KAAKC,UAAUtE,KACvB,KAAA,EATY,IAARZ,EAAQ2E,EAAAlE,GAWA0E,GAAE,CAAAR,EAAArE,EAAA,EAAA,KAAA,CAAA,OAAAqE,EAAArE,EAAA,EACYN,EAASoF,OAAM,KAAA,EAAjCZ,EAASG,EAAAlE,EAEf,IACIgE,EAAYQ,KAAKI,MAAMb,EAC1B,CAAC,MAAOc,GACLb,EAAY,CAAEzD,QAASwD,EAC3B,CAAC,MAEK,IAAIlF,MAAMmF,EAAUzD,SAAOoB,gBAAAA,OAAoBpC,EAASuF,SAAS,KAAA,EAAA,OAAAZ,EAAArE,EAAA,EAGtDN,EAASwF,OAAM,KAAA,EAAxB,OAAN1C,EAAM6B,EAAAlE,EAAAkE,EAAA5D,EAAA,EACL+B,GAAM,KAAA,EAE8B,MAF9B6B,EAAAtE,EAAA,EAAAqE,EAAAC,EAAAlE,EAEblB,QAAQkG,MAAM,qBAAoBf,GAASA,EAAA,KAAA,EAAA,OAAAC,EAAA5D,EAAA,GAAA,EAAAsD,EAAAvF,KAAA,CAAA,CAAA,EAAA,IAGlD,IAAA,SAjCgB4G,EAAAC,GAAA,OAAAvB,EAAAjD,MAAArC,KAAAJ,UAAA,IAmCjB,CAAAU,IAAA,aAAAC,MAGA,SAAWpB,GACP,IAAMgE,EAAYC,SAAS0D,cAAc,mBACrC3D,IACAA,EAAUO,UAAS,+BAAAJ,OAAkCnE,GAE7D,GAEA,CAAAmB,IAAA,cAAAC,MAGA,SAAYoG,GACRlG,QAAQkG,MAAM,oBAAqBA,GAE/B3G,KAAKL,OAAOH,SACZQ,KAAKL,OAAOH,QAAQmH,EAE5B,GAEA,CAAArG,IAAA,UAAAC,MAGA,WACQP,KAAKG,cACLkF,cAAcrF,KAAKG,cAGvBH,KAAKI,eAAgB,EACrBK,QAAQC,IAAI,qBAChB,iGArEA4E,EArDAxB,EApEAlB,EA3BAN,EA3BA3B,EAtBQ,GA8QZ7B,EAAOY,OAASA,EAChBZ,EAAOiI,eAAiB,KAGxBjI,EAAOkI,WAAa,SAASrH,GACzB,IAEI,OADAb,EAAOiI,eAAiB,IAAIrH,EAAOC,GAC5Bb,EAAOiI,cACjB,CAAC,MAAOJ,GAEL,MADAlG,QAAQkG,MAAM,6CAA+CA,GACvDA,CACV,EAGP,CAhTD,CAgTG7H"}
|