choco-one-click-payment 1.1.53 → 1.1.55
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/README.md +1 -0
- package/dist/index.esm.js +959 -933
- package/dist/index.js +24 -24
- package/index.d.ts +18 -0
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode('.choco-one-click-widget{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999999;font-family:Sirius,sans-serif;--choco-widget-accent-color: #2F2F2F;pointer-events:none}.choco-one-click-widget--embedded{position:static;top:auto;left:auto;right:auto;bottom:auto;z-index:auto;pointer-events:auto;min-height:1px}.choco-one-click-widget--embedded .choco-widget-bottom-bar{position:static;box-shadow:none;border-radius:24px}.choco-one-click-widget--embedded .choco-widget-payment-sheet{position:fixed}.choco-one-click-widget *{box-sizing:border-box;font-family:Sirius,sans-serif}.choco-one-click-widget .choco-widget-bottom-bar{opacity:0;transform:translateY(16px)}.choco-one-click-widget .choco-widget-balance-section,.choco-one-click-widget .choco-widget-payment-info{opacity:0;transform:translateY(8px)}.choco-one-click-widget--visible .choco-widget-bottom-bar,.choco-one-click-widget--visible .choco-widget-balance-section,.choco-one-click-widget--visible .choco-widget-payment-info{opacity:1;transform:translateY(0)}.choco-widget-bottom-bar{position:absolute;bottom:0;left:0;right:0;background:#fff;border-radius:24px 24px 0 0;padding:16px;box-shadow:0 -4px 20px #0000001a;transition:transform .24s cubic-bezier(.4,0,.2,1),opacity .2s ease;pointer-events:auto}.choco-widget-payment-info{display:flex;flex-direction:column;gap:12px;align-items:stretch;transition:transform .22s ease,opacity .2s ease}.choco-widget-payment-info-main{display:flex;gap:12px;align-items:center}.choco-widget-payment-method{gap:12px;background:#f1f2f7;border-radius:16px;padding:5px 8px;cursor:pointer;transition:background .2s ease;border:none;font-family:inherit;text-align:left;width:100%;position:relative;height:46px}.choco-widget-payment-method:disabled{cursor:not-allowed;pointer-events:none;opacity:.5}.choco-widget-payment-method.google_pay,.choco-widget-payment-method.apple_pay{max-width:140px}.choco-widget-method-icon-placeholder{font-size:24px}.choco-widget-method-details{flex:1}.choco-widget-method-label{font-size:14px;color:#000}.choco-widget-method-value{font-size:14px;font-weight:600;color:#000;display:flex;align-items:center;gap:4px}.choco-widget-method-icon-wrapper svg{display:block;width:100%;max-width:29px;max-height:18px;margin-top:2px}.choco-widget-method-icon-wrapper:empty{display:none}.choco-widget-method-icon-wrapper.google_pay svg{height:17px;max-width:35px;border:1px solid #3C4043;padding:3px 4px 2px;border-radius:8px}.choco-widget-method-name{font-size:14px;font-weight:700}.choco-widget-method-name.google_pay,.choco-widget-method-name.apple_pay{display:none}.choco-widget-method-chevron{position:absolute;right:5px;top:0;bottom:0;margin:auto 0;width:24px;height:24px}.choco-widget-freedom-card-btn{width:100%;height:46px;padding:0 13px;background:linear-gradient(to right,#17678d,#00ca82);border:none;border-radius:16px;font-size:16px;font-weight:700;font-family:inherit;color:#fff;cursor:pointer}.choco-widget-freedom-card-btn:disabled{opacity:.5;pointer-events:none}.choco-widget-pay-button{background:var(--choco-widget-accent-color);color:#fff;border:none;border-radius:16px;height:46px;padding:0 16px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;width:100%;overflow:hidden}.choco-widget-pay-button--loading{cursor:not-allowed;pointer-events:none;position:relative}.choco-widget-pay-button--loading:before{content:"";display:block;width:16px;height:16px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:choco-spin 1s linear infinite;position:absolute;left:0;right:0;margin:0 auto;z-index:2}.choco-widget-pay-button--loading:after{content:"";display:block;width:100%;height:100%;background:#2f2f2f;position:absolute;left:0;top:0}.choco-widget-pay-button:disabled{opacity:.5;pointer-events:none}.choco-widget-pay-button--hidden{display:none}.choco-widget-google-pay-amount{min-width:124px;height:46px;display:flex;flex-direction:column;justify-content:center;text-align:right;width:100%}.choco-widget-google-pay-amount--hidden{display:none}.choco-widget-google-pay-amount-label{font-size:20px;font-weight:700;line-height:24px;color:#1d1d1d}.choco-widget-google-pay-amount-value{font-size:14px;line-height:18px;color:#1d1d1d;white-space:nowrap;opacity:.5}.choco-widget-google-pay-amount-value--hidden{display:none}.choco-widget-google-pay-amount-value-number{text-decoration:line-through}.choco-widget-google-pay-row--hidden{display:none}.choco-widget-wallet-blocked{pointer-events:none;opacity:.6}.choco-widget-google-pay-button-slot{width:100%}.choco-widget-google-pay-button-slot>button{width:100%!important;height:52px;min-height:52px;border-radius:12px!important;font-size:16px!important}.choco-widget-apple-pay-row--hidden{display:none}.choco-widget-apple-pay-button-slot{width:100%}.choco-widget-apple-pay-button-wrapper{position:relative;width:100%;height:52px}.choco-widget-apple-pay-button{width:100%;height:52px;min-height:52px;border:0;border-radius:12px;cursor:pointer;background:#000;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px}.choco-widget-apple-pay-button--native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:52px;opacity:.01;z-index:2}.choco-widget-apple-pay-button-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#000;border-radius:12px;pointer-events:none;z-index:1}.choco-widget-apple-pay-button-text{font-size:16px;line-height:20px;font-weight:600;color:#fff}.choco-widget-apple-pay-button-icon{display:inline-flex;align-items:center;justify-content:center}.choco-widget-payment-sheet{position:absolute;bottom:0;left:0;right:0;top:0;background:#00000080;display:flex;align-items:flex-end;opacity:0;pointer-events:none;transition:opacity .3s ease}.choco-widget-payment-sheet--open{opacity:1;pointer-events:auto}.choco-widget-payment-sheet--open .choco-widget-sheet-content{transform:translateY(0)}.choco-widget-sheet-content{background:#fff;border-radius:24px 24px 0 0;width:100%;max-height:70vh;overflow-y:auto;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);padding:8px 16px 16px;position:relative;will-change:transform}.choco-widget-sheet-content--dragging{transition:none}.choco-widget-sheet-grabber{flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none;margin-bottom:8px;-webkit-user-select:none;user-select:none}.choco-widget-sheet-grabber:active{cursor:grabbing}.choco-widget-sheet-grabber:before{content:"";width:72px;height:6px;background:#e5e5e7;border-radius:42px}.choco-widget-sheet-content{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.choco-widget-sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;position:relative}.choco-widget-sheet-title{font-size:20px;font-weight:700;color:#000;margin:0;flex:1;text-align:center}.choco-widget-payment-sheet--edit .choco-widget-sheet-title{padding-left:30px}.choco-widget-payment-sheet--no-cards .choco-widget-sheet-title{padding-right:30px}.choco-widget-payment-sheet--delete-confirm .choco-widget-sheet-title{padding:0}.choco-widget-sheet-button{background:none;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.choco-widget-sheet-button svg{color:#000}.choco-widget-sheet-delete-confirm{display:none;padding-top:16px}.choco-widget-payment-sheet--delete-confirm .choco-widget-payment-methods,.choco-widget-payment-sheet--delete-confirm .choco-widget-cashback-section{display:none!important}.choco-widget-payment-sheet--delete-confirm .choco-widget-sheet-delete-confirm{display:block}.choco-widget-sheet-delete-confirm-text{margin:0 0 24px;font-size:16px;line-height:1.4;color:#242424;text-align:center}.choco-widget-sheet-delete-confirm-actions{display:flex;gap:12px}.choco-widget-delete-confirm-btn{flex:1;padding:14px 20px;font-size:16px;font-weight:600;font-family:inherit;border-radius:16px;border:none;cursor:pointer;transition:background .2s ease,opacity .2s ease}.choco-widget-delete-confirm-btn--cancel{background:#f1f2f7;color:#242424}.choco-widget-delete-confirm-btn--delete{background:var(--choco-widget-accent-color);color:#fff}.choco-widget-delete-confirm-btn--loading{cursor:not-allowed;pointer-events:none;position:relative}.choco-widget-sheet-delete-confirm-actions.choco-widget-sheet-delete-confirm-actions--loading .choco-widget-delete-confirm-btn{pointer-events:none;cursor:not-allowed;opacity:.7}.choco-widget-delete-confirm-btn--delete.choco-widget-delete-confirm-btn--loading:before{content:"";display:block;width:16px;height:16px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:choco-spin 1s linear infinite;position:absolute;left:0;right:0;margin:0 auto;z-index:2}.choco-widget-delete-confirm-btn--delete.choco-widget-delete-confirm-btn--loading:after{content:"";display:block;width:100%;height:100%;background:#cc3434;position:absolute;left:0;top:0;border-radius:16px}.choco-widget-add-card-sheet{align-items:stretch}.choco-widget-add-card-sheet .choco-widget-add-card-sheet-content{max-height:none;height:100%;display:flex;flex-direction:column;transform:none;border-radius:0;padding:0}.choco-widget-add-card-sheet--open .choco-widget-add-card-sheet-content{transform:none}.choco-widget-add-card-sheet .choco-widget-sheet-header{flex-shrink:0;margin-bottom:0;padding:12px 0;border-bottom:1px solid #eee}.choco-widget-add-card-iframe-wrapper{flex:1;min-height:0;background:#fff}.choco-widget-add-card-iframe{width:100%;height:100%;border:none;display:block}.choco-widget-balance-section{margin-bottom:12px;padding:12px 8px;background:#f1f2f7;border-radius:12px;transition:transform .22s ease,opacity .2s ease}.choco-widget-balance-section.disabled{opacity:.5;pointer-events:none}.choco-widget-balance-toggle{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:4px 0}.choco-widget-balance-toggle:last-child{margin-bottom:0}.choco-widget-balance-toggle--disabled{opacity:.5;pointer-events:none}.choco-widget-balance-info{display:flex;align-items:center;gap:12px}.choco-widget-balance-text{display:flex;flex-direction:column}.choco-widget-balance-label-wrapper{display:flex;align-items:center;gap:8px}.choco-widget-balance-label{font-size:16px;font-weight:500}.choco-widget-balance-sublabel{font-size:12px;color:#767485;margin-top:2px}.choco-widget-balance-icon{width:22px;height:22px}.choco-widget-balance-amount{font-size:16px;font-weight:500;color:#000;white-space:nowrap}.choco-widget-toggle{position:relative;display:inline-block;width:42px;height:26px}.choco-widget-toggle input{opacity:0;width:0;height:0}.choco-widget-toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#d4d3df;transition:.3s;border-radius:28px}.choco-widget-toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:2px;bottom:0;top:0;margin:auto;background-color:#fff;transition:.3s;border-radius:50%}.choco-widget-toggle input:checked+.choco-widget-toggle-slider{background-color:var(--choco-widget-accent-color)}.choco-widget-toggle input:checked+.choco-widget-toggle-slider:before{transform:translate(16px)}.choco-widget-cashback-section{margin-top:20px;padding-top:20px;border-top:1px solid #f0f0f0}.choco-widget-cashback-info{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fff5ee;border-radius:12px;font-size:14px;color:#ff6b00}.choco-widget-cashback-icon{font-size:20px}.choco-widget-cashback-text strong{font-weight:700}.choco-widget-payment-methods{display:flex;flex-direction:column;gap:8px}.choco-widget-method-item{display:flex;align-items:center;gap:12px;padding:10px 0;cursor:pointer;transition:all .2s ease;border:2px solid transparent;width:100%;border:0;background:none;text-align:left;font-family:inherit;font-size:inherit}.choco-widget-method-item-icon-wrapper{width:37px}.choco-widget-method-item-icon-wrapper svg{display:block;width:100%;max-width:29px;height:29px;margin:0 auto}.choco-widget-method-item-icon-wrapper.google_pay{outline:1px solid #3C4043;padding:3px 5px 2px;border-radius:15px}.choco-widget-method-item-icon-wrapper.google_pay svg{height:15px;max-width:29px}.choco-widget-method-item-label{flex:1;font-size:16px;color:#000}.choco-widget-method-item-check,.choco-widget-method-item-trash-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:6px;margin:-6px 0 -6px 6px;background:none;border:none;cursor:pointer;border-radius:8px;-webkit-tap-highlight-color:transparent}.choco-widget-method-item-check{height:30px;width:30px}.choco-widget-method-item-trash-btn:hover{background:#cc343414}.choco-widget-method-item-trash{flex-shrink:0;width:20px;height:20px}.choco-widget-bottom-bar-prerender{position:absolute;bottom:0;left:0;right:0;background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -4px 20px #0000001a;transition:transform .3s cubic-bezier(.4,0,.2,1);height:78px}.choco-widget-payment-loading{width:30px;height:30px;animation:choco-spin 1s linear infinite;border:3px solid var(--choco-widget-accent-color);border-top:3px solid transparent;border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}@keyframes choco-spin{to{transform:rotate(360deg)}}@keyframes choco-fade-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(max-width:768px){.choco-widget-bottom-bar{padding:16px 16px 20px}.choco-widget-sheet-content{max-height:80vh}.choco-widget-sheet-title{font-size:18px}.choco-widget-method-item-label{font-size:17px}}@media(max-width:768px)and (min-height:812px){.choco-widget-bottom-bar,.choco-widget-sheet-content{padding-bottom:calc(20px + env(safe-area-inset-bottom,20px))}}@supports (padding: env(safe-area-inset-bottom)){.choco-widget-bottom-bar{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.choco-widget-sheet-content{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}')),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
|
|
2
|
-
const
|
|
2
|
+
const Er = {
|
|
3
3
|
ru: {
|
|
4
4
|
paymentMethod: "Способ оплаты",
|
|
5
5
|
selectMethod: "Выберите метод",
|
|
@@ -164,80 +164,80 @@ const br = {
|
|
|
164
164
|
errorWidgetInit: "ვიჯეტის ინიციალიზაციის შეცდომა",
|
|
165
165
|
errorPaymentProcess: "გადახდის შეცდომა"
|
|
166
166
|
}
|
|
167
|
-
},
|
|
167
|
+
}, vr = {
|
|
168
168
|
KZT: "₸",
|
|
169
169
|
GEL: "₾"
|
|
170
170
|
};
|
|
171
|
-
function
|
|
171
|
+
function Ir(e) {
|
|
172
172
|
return e === "production" ? "https://api-proxy.choco.kz" : "https://api-proxy.chocodev.kz";
|
|
173
173
|
}
|
|
174
|
-
let
|
|
175
|
-
const
|
|
176
|
-
function
|
|
177
|
-
if (!
|
|
174
|
+
let Re;
|
|
175
|
+
const Br = new Uint8Array(16);
|
|
176
|
+
function Sr() {
|
|
177
|
+
if (!Re && (Re = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !Re))
|
|
178
178
|
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
179
|
-
return
|
|
179
|
+
return Re(Br);
|
|
180
180
|
}
|
|
181
181
|
const H = [];
|
|
182
182
|
for (let e = 0; e < 256; ++e)
|
|
183
183
|
H.push((e + 256).toString(16).slice(1));
|
|
184
|
-
function
|
|
184
|
+
function _r(e, t = 0) {
|
|
185
185
|
return H[e[t + 0]] + H[e[t + 1]] + H[e[t + 2]] + H[e[t + 3]] + "-" + H[e[t + 4]] + H[e[t + 5]] + "-" + H[e[t + 6]] + H[e[t + 7]] + "-" + H[e[t + 8]] + H[e[t + 9]] + "-" + H[e[t + 10]] + H[e[t + 11]] + H[e[t + 12]] + H[e[t + 13]] + H[e[t + 14]] + H[e[t + 15]];
|
|
186
186
|
}
|
|
187
|
-
const
|
|
188
|
-
randomUUID:
|
|
187
|
+
const Qr = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Vt = {
|
|
188
|
+
randomUUID: Qr
|
|
189
189
|
};
|
|
190
|
-
function
|
|
191
|
-
if (
|
|
192
|
-
return
|
|
190
|
+
function $e(e, t, n) {
|
|
191
|
+
if (Vt.randomUUID && !e)
|
|
192
|
+
return Vt.randomUUID();
|
|
193
193
|
e = e || {};
|
|
194
|
-
const r = e.random || (e.rng ||
|
|
195
|
-
return r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128,
|
|
194
|
+
const r = e.random || (e.rng || Sr)();
|
|
195
|
+
return r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128, _r(r);
|
|
196
196
|
}
|
|
197
|
-
const
|
|
197
|
+
const Zt = "choco_device_id";
|
|
198
198
|
function $(e, t = "ru", n = "KZT") {
|
|
199
199
|
const r = Number(e), o = t === "ru" ? "ru-RU" : "en-US";
|
|
200
|
-
return `${r.toLocaleString(o)} ${
|
|
200
|
+
return `${r.toLocaleString(o)} ${vr[n]}`;
|
|
201
201
|
}
|
|
202
|
-
function
|
|
203
|
-
let e = localStorage.getItem(
|
|
204
|
-
return e || (e =
|
|
202
|
+
function Dn() {
|
|
203
|
+
let e = localStorage.getItem(Zt);
|
|
204
|
+
return e || (e = $e(), localStorage.setItem(Zt, e)), e;
|
|
205
205
|
}
|
|
206
|
-
function
|
|
206
|
+
function ze() {
|
|
207
207
|
if (typeof window > "u") return !1;
|
|
208
208
|
const e = window.safari !== void 0, t = window.navigator.userAgent || "", n = !!t.match(/iPad/i) || !!t.match(/iPhone/i), r = !!t.match(/WebKit/i), o = n && r && !t.match(/CriOS/i);
|
|
209
209
|
return e || o;
|
|
210
210
|
}
|
|
211
|
-
function
|
|
211
|
+
function Mn() {
|
|
212
212
|
if (typeof navigator > "u") return 0;
|
|
213
213
|
const e = navigator.userAgent || "", t = e.indexOf("OS");
|
|
214
214
|
return (e.indexOf("iPhone") > -1 || e.indexOf("iPad") > -1) && t > -1 ? Number(e.substring(t + 3, t + 6).replace("_", ".")) : 0;
|
|
215
215
|
}
|
|
216
|
-
function
|
|
216
|
+
function Rt() {
|
|
217
217
|
var i;
|
|
218
218
|
if (typeof navigator > "u") return "unknown";
|
|
219
219
|
const e = (navigator.userAgent || navigator.vendor || "").toLowerCase(), t = (navigator.platform || "").toLowerCase(), n = (((i = navigator.userAgentData) == null ? void 0 : i.platform) || "").toLowerCase(), r = `${e} ${t} ${n}`;
|
|
220
220
|
return /iphone|ipad|ipod/.test(r) || r.includes("macintosh") && typeof document < "u" && "ontouchend" in document ? "ios" : r.includes("android") ? "android" : r.includes("windows") ? "windows" : r.includes("mac") ? "macos" : "other";
|
|
221
221
|
}
|
|
222
|
-
function
|
|
222
|
+
function Ke() {
|
|
223
223
|
if (typeof navigator > "u") return !1;
|
|
224
224
|
const e = navigator.userAgentData;
|
|
225
|
-
return e != null && e.platform && ["iOS", "iPadOS"].includes(e.platform) ||
|
|
225
|
+
return e != null && e.platform && ["iOS", "iPadOS"].includes(e.platform) || Rt() === "ios" ? !0 : (navigator.userAgent || "").includes("Macintosh") && typeof document < "u" && "ontouchend" in document;
|
|
226
226
|
}
|
|
227
|
-
function
|
|
227
|
+
function Ge(e) {
|
|
228
228
|
if (typeof sessionStorage > "u") return !1;
|
|
229
229
|
const t = e === "apple_pay" ? "disableApplePay" : e === "google_pay" ? "disableGooglePay" : null;
|
|
230
230
|
return t ? sessionStorage.getItem(t) === "true" : !1;
|
|
231
231
|
}
|
|
232
|
-
function
|
|
232
|
+
function kr(e) {
|
|
233
233
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
234
234
|
}
|
|
235
|
-
var
|
|
236
|
-
function
|
|
237
|
-
return
|
|
235
|
+
var Xe = { exports: {} }, Pr = Xe.exports, $t;
|
|
236
|
+
function wr() {
|
|
237
|
+
return $t || ($t = 1, (function(e, t) {
|
|
238
238
|
(function(r, o) {
|
|
239
239
|
e.exports = o();
|
|
240
|
-
})(
|
|
240
|
+
})(Pr, function() {
|
|
241
241
|
return (
|
|
242
242
|
/******/
|
|
243
243
|
(function() {
|
|
@@ -954,16 +954,16 @@ function Pr() {
|
|
|
954
954
|
var x = O.data.channels[X];
|
|
955
955
|
x.channel && (F[x.channel] = x.token);
|
|
956
956
|
}
|
|
957
|
-
var
|
|
958
|
-
if (
|
|
959
|
-
var
|
|
957
|
+
var ye = F[s];
|
|
958
|
+
if (ye) {
|
|
959
|
+
var At = {
|
|
960
960
|
method: a._methodType.SUB_REFRESH,
|
|
961
961
|
params: {
|
|
962
962
|
channel: s,
|
|
963
|
-
token:
|
|
963
|
+
token: ye
|
|
964
964
|
}
|
|
965
|
-
},
|
|
966
|
-
|
|
965
|
+
}, Le = a._getSub(s);
|
|
966
|
+
Le !== null && a._call(At).then(function(ne) {
|
|
967
967
|
a._subRefreshResponse(s, a._decoder.decodeCommandResult(a._methodType.SUB_REFRESH, ne.result)), ne.next && ne.next();
|
|
968
968
|
}, function(ne) {
|
|
969
969
|
a._subRefreshError(s, ne.error), ne.next && ne.next();
|
|
@@ -1473,59 +1473,59 @@ function Pr() {
|
|
|
1473
1473
|
if (w in s._xhrs && delete s._xhrs[w], s._clientID === T) {
|
|
1474
1474
|
if (x.error || x.status !== 200) {
|
|
1475
1475
|
s._debug("authorization request failed");
|
|
1476
|
-
for (var
|
|
1477
|
-
if (A.hasOwnProperty(
|
|
1478
|
-
var
|
|
1479
|
-
s._subscribeError(
|
|
1476
|
+
for (var ye in A)
|
|
1477
|
+
if (A.hasOwnProperty(ye)) {
|
|
1478
|
+
var At = A[ye];
|
|
1479
|
+
s._subscribeError(At, s._createErrorObject("authorization request failed"));
|
|
1480
1480
|
}
|
|
1481
1481
|
return;
|
|
1482
1482
|
}
|
|
1483
|
-
var
|
|
1483
|
+
var Le = {};
|
|
1484
1484
|
if (x.data.channels)
|
|
1485
1485
|
for (var ne in x.data.channels) {
|
|
1486
|
-
var
|
|
1487
|
-
|
|
1486
|
+
var dt = x.data.channels[ne];
|
|
1487
|
+
dt.channel && (Le[dt.channel] = dt.token);
|
|
1488
1488
|
}
|
|
1489
|
-
var
|
|
1490
|
-
s._isBatching || (s.startBatching(),
|
|
1491
|
-
for (var
|
|
1492
|
-
if (A.hasOwnProperty(
|
|
1493
|
-
var
|
|
1494
|
-
var Z = A[
|
|
1495
|
-
if (
|
|
1496
|
-
var
|
|
1489
|
+
var Jt = !1;
|
|
1490
|
+
s._isBatching || (s.startBatching(), Jt = !0);
|
|
1491
|
+
for (var qt in A)
|
|
1492
|
+
if (A.hasOwnProperty(qt)) {
|
|
1493
|
+
var br = (function() {
|
|
1494
|
+
var Z = A[qt], zt = Le[Z];
|
|
1495
|
+
if (zt) {
|
|
1496
|
+
var me = {
|
|
1497
1497
|
method: s._methodType.SUBSCRIBE,
|
|
1498
1498
|
params: {
|
|
1499
1499
|
channel: Z,
|
|
1500
|
-
token:
|
|
1500
|
+
token: zt
|
|
1501
1501
|
}
|
|
1502
|
-
},
|
|
1503
|
-
if (
|
|
1502
|
+
}, Kt = s._getSub(Z);
|
|
1503
|
+
if (Kt === null)
|
|
1504
1504
|
return "continue";
|
|
1505
|
-
var
|
|
1506
|
-
if (
|
|
1507
|
-
|
|
1508
|
-
var
|
|
1509
|
-
if (
|
|
1510
|
-
|
|
1505
|
+
var Gt = Kt._needRecover();
|
|
1506
|
+
if (Gt === !0) {
|
|
1507
|
+
me.params.recover = !0;
|
|
1508
|
+
var ft = s._getLastSeq(Z), ht = s._getLastGen(Z);
|
|
1509
|
+
if (ft || ht)
|
|
1510
|
+
ft && (me.params.seq = ft), ht && (me.params.gen = ht);
|
|
1511
1511
|
else {
|
|
1512
|
-
var
|
|
1513
|
-
|
|
1512
|
+
var Wt = s._getLastOffset(Z);
|
|
1513
|
+
Wt && (me.params.offset = Wt);
|
|
1514
1514
|
}
|
|
1515
|
-
var
|
|
1516
|
-
|
|
1515
|
+
var Yt = s._getLastEpoch(Z);
|
|
1516
|
+
Yt && (me.params.epoch = Yt);
|
|
1517
1517
|
}
|
|
1518
|
-
s._call(
|
|
1519
|
-
s._subscribeResponse(Z,
|
|
1520
|
-
}, function(
|
|
1521
|
-
s._subscribeError(Z,
|
|
1518
|
+
s._call(me).then(function(Ae) {
|
|
1519
|
+
s._subscribeResponse(Z, Gt, s._decoder.decodeCommandResult(s._methodType.SUBSCRIBE, Ae.result)), Ae.next && Ae.next();
|
|
1520
|
+
}, function(Ae) {
|
|
1521
|
+
s._subscribeError(Z, Ae.error), Ae.next && Ae.next();
|
|
1522
1522
|
});
|
|
1523
1523
|
} else
|
|
1524
1524
|
return s._subscribeError(Z, s._createErrorObject("permission denied", 103)), "continue";
|
|
1525
1525
|
})();
|
|
1526
|
-
if (
|
|
1526
|
+
if (br === "continue") continue;
|
|
1527
1527
|
}
|
|
1528
|
-
|
|
1528
|
+
Jt && s.stopBatching();
|
|
1529
1529
|
}
|
|
1530
1530
|
};
|
|
1531
1531
|
if (this._config.onPrivateSubscribe !== null)
|
|
@@ -2246,31 +2246,31 @@ function Pr() {
|
|
|
2246
2246
|
})()
|
|
2247
2247
|
);
|
|
2248
2248
|
});
|
|
2249
|
-
})(
|
|
2249
|
+
})(Xe)), Xe.exports;
|
|
2250
2250
|
}
|
|
2251
|
-
var
|
|
2252
|
-
const
|
|
2253
|
-
let
|
|
2254
|
-
function
|
|
2251
|
+
var Tr = wr();
|
|
2252
|
+
const Lr = /* @__PURE__ */ kr(Tr);
|
|
2253
|
+
let Oe = null;
|
|
2254
|
+
function en(e, t) {
|
|
2255
2255
|
if (!(e != null && e.client_url) || !(e != null && e.token) || !(e != null && e.channel))
|
|
2256
2256
|
return console.error("[Centrifuge] Invalid socket_connections"), null;
|
|
2257
2257
|
const { client_url: n, token: r, channel: o } = e;
|
|
2258
|
-
if (o.includes("#") || console.warn("[Centrifuge] Channel should contain #user_id"),
|
|
2258
|
+
if (o.includes("#") || console.warn("[Centrifuge] Channel should contain #user_id"), Oe) {
|
|
2259
2259
|
try {
|
|
2260
|
-
console.log("[Centrifuge] Disconnecting previous instance..."),
|
|
2260
|
+
console.log("[Centrifuge] Disconnecting previous instance..."), Oe.disconnect();
|
|
2261
2261
|
} catch (c) {
|
|
2262
2262
|
console.error("[Centrifuge] Error while disconnecting previous instance:", c);
|
|
2263
2263
|
}
|
|
2264
|
-
|
|
2264
|
+
Oe = null;
|
|
2265
2265
|
}
|
|
2266
2266
|
console.log("[Centrifuge] Creating new instance:", n);
|
|
2267
|
-
const i = new
|
|
2267
|
+
const i = new Lr(n);
|
|
2268
2268
|
return i.setToken(r), i.on("connect", (c) => {
|
|
2269
2269
|
console.log("[Centrifuge] Connected", c), console.log("[Centrifuge] Subscribing to channel:", o);
|
|
2270
2270
|
const u = i.subscribe(o);
|
|
2271
2271
|
u.on("publish", (l) => {
|
|
2272
2272
|
console.log("[Centrifuge] Publish event received:", l);
|
|
2273
|
-
const h =
|
|
2273
|
+
const h = Rr(l);
|
|
2274
2274
|
h && t(h);
|
|
2275
2275
|
}), u.on("subscribe", (l) => {
|
|
2276
2276
|
console.log("[Centrifuge] ✅ Channel subscribed successfully:", o, l);
|
|
@@ -2279,27 +2279,27 @@ function $t(e, t) {
|
|
|
2279
2279
|
}), u.on("unsubscribe", (l) => {
|
|
2280
2280
|
console.log("[Centrifuge] Channel unsubscribed:", l);
|
|
2281
2281
|
});
|
|
2282
|
-
}), i.on("disconnect", (c) => console.log("[Centrifuge] Disconnected", c)), i.on("error", (c) => console.error("[Centrifuge] Error", c)), console.log("[Centrifuge] Calling connect()..."), i.connect(),
|
|
2282
|
+
}), i.on("disconnect", (c) => console.log("[Centrifuge] Disconnected", c)), i.on("error", (c) => console.error("[Centrifuge] Error", c)), console.log("[Centrifuge] Calling connect()..."), i.connect(), Oe = i, { centrifuge: i };
|
|
2283
2283
|
}
|
|
2284
|
-
function
|
|
2284
|
+
function Rr(e) {
|
|
2285
2285
|
var n, r, o;
|
|
2286
2286
|
if (console.log("[Centrifuge] Raw message received:", JSON.stringify(e)), !(e != null && e.data))
|
|
2287
2287
|
return console.warn("[Centrifuge] Empty or invalid response"), null;
|
|
2288
2288
|
let t = e.data;
|
|
2289
2289
|
return (n = t.data) != null && n.type ? t = t.data : (o = (r = t.data) == null ? void 0 : r.data) != null && o.type && (t = t.data.data), console.log("[Centrifuge] Parsed message:", t), t.type ? t : (console.warn("[Centrifuge] Message has no type:", t), null);
|
|
2290
2290
|
}
|
|
2291
|
-
function
|
|
2291
|
+
function He(e) {
|
|
2292
2292
|
return /^4[0-9]/.test(e) ? "visa" : /^5[1-5]/.test(e) || /^2[2-7]/.test(e) ? "mastercard" : "card";
|
|
2293
2293
|
}
|
|
2294
|
-
const
|
|
2294
|
+
const de = {
|
|
2295
2295
|
iconType: "kaspi_pay",
|
|
2296
2296
|
label: "Kaspi.kz",
|
|
2297
2297
|
type: "kaspi_pay"
|
|
2298
|
-
},
|
|
2298
|
+
}, xn = {
|
|
2299
2299
|
iconType: "apple_pay",
|
|
2300
2300
|
label: "Apple Pay",
|
|
2301
2301
|
type: "apple_pay"
|
|
2302
|
-
},
|
|
2302
|
+
}, Un = {
|
|
2303
2303
|
iconType: "google_pay",
|
|
2304
2304
|
label: "Google Pay",
|
|
2305
2305
|
type: "google_pay"
|
|
@@ -2307,59 +2307,59 @@ const Ae = {
|
|
|
2307
2307
|
function ee(e) {
|
|
2308
2308
|
return e === "enabled" || e === !0;
|
|
2309
2309
|
}
|
|
2310
|
-
function
|
|
2310
|
+
function tn(e) {
|
|
2311
2311
|
if (!e) return null;
|
|
2312
2312
|
let t = String(e).trim().toLowerCase();
|
|
2313
2313
|
return t.startsWith("payment_method_") && (t = t.replace("payment_method_", "")), t === "kaspi" ? "kaspi_pay" : t === "apple" ? "apple_pay" : t === "google" ? "google_pay" : t === "newcard" ? "new_card" : t === "card" ? "card" : ["kaspi_pay", "apple_pay", "google_pay", "new_card"].includes(t) ? t : null;
|
|
2314
2314
|
}
|
|
2315
|
-
function
|
|
2315
|
+
function Or(e) {
|
|
2316
2316
|
var i, c, u;
|
|
2317
2317
|
const t = e, n = ((i = t == null ? void 0 : t.context) == null ? void 0 : i.last_payment_method) ?? (t == null ? void 0 : t.last_payment_method) ?? ((c = t == null ? void 0 : t.attributes) == null ? void 0 : c.last_payment_method);
|
|
2318
2318
|
if (!n) return null;
|
|
2319
2319
|
if (typeof n == "string")
|
|
2320
|
-
return { type:
|
|
2320
|
+
return { type: tn(n), cardId: null };
|
|
2321
2321
|
if (typeof n != "object") return null;
|
|
2322
2322
|
const r = n.type ?? n.payment_method ?? n.method, o = n.card_id ?? n.cardId ?? n.id ?? ((u = n.card) == null ? void 0 : u.id) ?? null;
|
|
2323
2323
|
return {
|
|
2324
|
-
type:
|
|
2324
|
+
type: tn(r),
|
|
2325
2325
|
cardId: o != null ? String(o) : null
|
|
2326
2326
|
};
|
|
2327
2327
|
}
|
|
2328
|
-
function
|
|
2328
|
+
function Nr(e, t, n = {}) {
|
|
2329
2329
|
var S, P, k, R;
|
|
2330
|
-
const r = [], o = (S = e == null ? void 0 : e.kaspi) == null ? void 0 : S.data, i = ((P = e == null ? void 0 : e.cards_v2) == null ? void 0 : P.data) || [], c = ((R = (k = e == null ? void 0 : e.payment_methods) == null ? void 0 : k.data) == null ? void 0 : R.attributes) || {}, u = ee(c.payment_method_kaspi), l = ee(c.payment_method_card), h = typeof window < "u" && window.self === window.top, m =
|
|
2331
|
-
return o != null && o.isKaspiOnly && u && !I ? [
|
|
2330
|
+
const r = [], o = (S = e == null ? void 0 : e.kaspi) == null ? void 0 : S.data, i = ((P = e == null ? void 0 : e.cards_v2) == null ? void 0 : P.data) || [], c = ((R = (k = e == null ? void 0 : e.payment_methods) == null ? void 0 : k.data) == null ? void 0 : R.attributes) || {}, u = ee(c.payment_method_kaspi), l = ee(c.payment_method_card), h = typeof window < "u" && window.self === window.top, m = Rt() === "ios", b = !!(n != null && n.onlyKaspiAvailable), I = !!(n != null && n.disableKaspi);
|
|
2331
|
+
return o != null && o.isKaspiOnly && u && !I ? [de] : b ? o != null && o.isAvailable && u && !I ? [de] : [] : (ee(c.payment_method_apple_pay) && !Ge("apple_pay") && (ze() && h || Ke() || m || Mn() === 16) && r.push(xn), o != null && o.isAvailable && u && !I && r.push(de), l && i.filter((L) => !L.isExpired).forEach((L) => {
|
|
2332
2332
|
r.push({
|
|
2333
|
-
iconType:
|
|
2333
|
+
iconType: He(L.attributes.mask),
|
|
2334
2334
|
type: "card",
|
|
2335
2335
|
cardId: L.id,
|
|
2336
2336
|
label: `•••• ${L.attributes.mask.slice(-4)}`,
|
|
2337
2337
|
cardType: L.type,
|
|
2338
2338
|
isDefault: L.attributes.isDefault
|
|
2339
2339
|
});
|
|
2340
|
-
}), ee(c.payment_method_google_pay) && !
|
|
2340
|
+
}), ee(c.payment_method_google_pay) && !Ge("google_pay") && !(n != null && n.disableGooglePay) && !ze() && !Ke() && r.push(Un), ee(c.payment_method_new_card) && r.push({
|
|
2341
2341
|
iconType: "new_card",
|
|
2342
2342
|
type: "new_card",
|
|
2343
2343
|
label: t ? t("newCard") : "Оплата новой картой"
|
|
2344
2344
|
}), r);
|
|
2345
2345
|
}
|
|
2346
|
-
function
|
|
2346
|
+
function Ct(e, t = {}) {
|
|
2347
2347
|
var Q, S, P, k;
|
|
2348
|
-
const n = (Q = e == null ? void 0 : e.kaspi) == null ? void 0 : Q.data, r = ((S = e == null ? void 0 : e.cards_v2) == null ? void 0 : S.data) || [], o = ((k = (P = e == null ? void 0 : e.payment_methods) == null ? void 0 : P.data) == null ? void 0 : k.attributes) || {}, i = ee(o.payment_method_kaspi), c = ee(o.payment_method_card), u = !!(t != null && t.disableKaspi), l = typeof window < "u" && window.self === window.top, y =
|
|
2348
|
+
const n = (Q = e == null ? void 0 : e.kaspi) == null ? void 0 : Q.data, r = ((S = e == null ? void 0 : e.cards_v2) == null ? void 0 : S.data) || [], o = ((k = (P = e == null ? void 0 : e.payment_methods) == null ? void 0 : P.data) == null ? void 0 : k.attributes) || {}, i = ee(o.payment_method_kaspi), c = ee(o.payment_method_card), u = !!(t != null && t.disableKaspi), l = typeof window < "u" && window.self === window.top, y = Rt() === "ios", m = ee(o.payment_method_apple_pay) && !Ge("apple_pay") && (ze() && l || Ke() || y || Mn() === 16), b = ee(o.payment_method_google_pay) && !Ge("google_pay") && !(t != null && t.disableGooglePay) && !ze() && !Ke();
|
|
2349
2349
|
if (n != null && n.isKaspiOnly && i && !u || t != null && t.onlyKaspiAvailable && (n != null && n.isAvailable) && i && !u)
|
|
2350
|
-
return
|
|
2351
|
-
const I =
|
|
2350
|
+
return de;
|
|
2351
|
+
const I = Or(e);
|
|
2352
2352
|
if ((I == null ? void 0 : I.type) === "kaspi_pay" && (n != null && n.isAvailable) && i && !u)
|
|
2353
|
-
return
|
|
2354
|
-
if ((I == null ? void 0 : I.type) === "apple_pay" && m) return
|
|
2355
|
-
if ((I == null ? void 0 : I.type) === "google_pay" && b) return
|
|
2353
|
+
return de;
|
|
2354
|
+
if ((I == null ? void 0 : I.type) === "apple_pay" && m) return xn;
|
|
2355
|
+
if ((I == null ? void 0 : I.type) === "google_pay" && b) return Un;
|
|
2356
2356
|
if ((I == null ? void 0 : I.type) === "new_card" && ee(o.payment_method_new_card))
|
|
2357
2357
|
return { iconType: "new_card", type: "new_card", label: "Оплата новой картой" };
|
|
2358
2358
|
if ((I == null ? void 0 : I.type) === "card" && c) {
|
|
2359
2359
|
const R = I.cardId != null ? r.find((L) => !L.isExpired && String(L.id) === I.cardId) : null;
|
|
2360
2360
|
if (R)
|
|
2361
2361
|
return {
|
|
2362
|
-
iconType:
|
|
2362
|
+
iconType: He(R.attributes.mask),
|
|
2363
2363
|
type: "card",
|
|
2364
2364
|
cardId: R.id,
|
|
2365
2365
|
label: `•••• ${R.attributes.mask.slice(-4)}`,
|
|
@@ -2373,24 +2373,24 @@ function mt(e, t = {}) {
|
|
|
2373
2373
|
});
|
|
2374
2374
|
if (R)
|
|
2375
2375
|
return {
|
|
2376
|
-
iconType:
|
|
2376
|
+
iconType: He(R.attributes.mask),
|
|
2377
2377
|
type: "card",
|
|
2378
2378
|
cardId: R.id,
|
|
2379
2379
|
label: `•••• ${R.attributes.mask.slice(-4)}`,
|
|
2380
2380
|
cardType: R.type
|
|
2381
2381
|
};
|
|
2382
2382
|
}
|
|
2383
|
-
if (n != null && n.isAvailable && i && !u) return
|
|
2383
|
+
if (n != null && n.isAvailable && i && !u) return de;
|
|
2384
2384
|
const B = c ? r.find((R) => !R.isExpired) : null;
|
|
2385
2385
|
return B ? {
|
|
2386
|
-
iconType:
|
|
2386
|
+
iconType: He(B.attributes.mask),
|
|
2387
2387
|
type: "card",
|
|
2388
2388
|
cardId: B.id,
|
|
2389
2389
|
label: `••••${B.attributes.mask.slice(-4)}`,
|
|
2390
2390
|
cardType: B.type
|
|
2391
2391
|
} : null;
|
|
2392
2392
|
}
|
|
2393
|
-
function
|
|
2393
|
+
function Fn(e) {
|
|
2394
2394
|
if (typeof localStorage > "u") return null;
|
|
2395
2395
|
try {
|
|
2396
2396
|
return localStorage.getItem(e);
|
|
@@ -2398,21 +2398,24 @@ function Un(e) {
|
|
|
2398
2398
|
return null;
|
|
2399
2399
|
}
|
|
2400
2400
|
}
|
|
2401
|
-
function
|
|
2401
|
+
function bt(e, t) {
|
|
2402
2402
|
if (!(typeof localStorage > "u"))
|
|
2403
2403
|
try {
|
|
2404
2404
|
localStorage.setItem(e, t);
|
|
2405
2405
|
} catch {
|
|
2406
2406
|
}
|
|
2407
2407
|
}
|
|
2408
|
-
function
|
|
2408
|
+
function We(e) {
|
|
2409
2409
|
if (!(typeof localStorage > "u"))
|
|
2410
2410
|
try {
|
|
2411
2411
|
localStorage.removeItem(e);
|
|
2412
2412
|
} catch {
|
|
2413
2413
|
}
|
|
2414
2414
|
}
|
|
2415
|
-
|
|
2415
|
+
function ie(e) {
|
|
2416
|
+
return e ? { "X-Country": e } : {};
|
|
2417
|
+
}
|
|
2418
|
+
async function Dr(e, t) {
|
|
2416
2419
|
var n;
|
|
2417
2420
|
try {
|
|
2418
2421
|
const r = await e.json(), o = (n = r == null ? void 0 : r.errors) == null ? void 0 : n[0];
|
|
@@ -2421,11 +2424,11 @@ async function Nr(e, t) {
|
|
|
2421
2424
|
return `HTTP ${e.status}: ${e.statusText}`;
|
|
2422
2425
|
}
|
|
2423
2426
|
}
|
|
2424
|
-
async function
|
|
2425
|
-
const n = await
|
|
2427
|
+
async function le(e, t) {
|
|
2428
|
+
const n = await Dr(e, t);
|
|
2426
2429
|
throw Object.assign(new Error(n), { status: e.status });
|
|
2427
2430
|
}
|
|
2428
|
-
function
|
|
2431
|
+
function et(e, t, n = {}) {
|
|
2429
2432
|
const r = Number.isFinite(n.checkoutAmount) && n.checkoutAmount >= 0 ? Number(n.checkoutAmount) : e.amount, o = !!n.forceBalanceMethod, i = !!n.useBalance, c = n.voucher;
|
|
2430
2433
|
return {
|
|
2431
2434
|
checkoutAmount: r,
|
|
@@ -2434,7 +2437,7 @@ function $e(e, t, n = {}) {
|
|
|
2434
2437
|
voucher: c
|
|
2435
2438
|
};
|
|
2436
2439
|
}
|
|
2437
|
-
function
|
|
2440
|
+
function tt(e, t, n, r, o) {
|
|
2438
2441
|
return {
|
|
2439
2442
|
preorder_id: e.preorderId,
|
|
2440
2443
|
terminal_id: e.terminalId,
|
|
@@ -2450,28 +2453,30 @@ function et(e, t, n, r, o) {
|
|
|
2450
2453
|
...e.isFridge && { is_fridge: !0 }
|
|
2451
2454
|
};
|
|
2452
2455
|
}
|
|
2453
|
-
async function
|
|
2456
|
+
async function nt(e, t, n, r, o) {
|
|
2454
2457
|
const i = await fetch(`${e}/orders/v1/checkout`, {
|
|
2455
2458
|
method: "POST",
|
|
2456
2459
|
headers: {
|
|
2457
2460
|
"Content-Type": "application/json",
|
|
2458
2461
|
Authorization: `Bearer ${t.accessToken}`,
|
|
2459
|
-
"X-Idempotency-Key": t.idempotencyKey ??
|
|
2462
|
+
"X-Idempotency-Key": t.idempotencyKey ?? $e(),
|
|
2460
2463
|
"X-Device-Id": n,
|
|
2461
|
-
"X-OS": "WEB"
|
|
2464
|
+
"X-OS": "WEB",
|
|
2465
|
+
...ie(t.country)
|
|
2462
2466
|
},
|
|
2463
2467
|
body: JSON.stringify(r)
|
|
2464
2468
|
});
|
|
2465
|
-
return i.ok || await
|
|
2469
|
+
return i.ok || await le(i, o), i.json();
|
|
2466
2470
|
}
|
|
2467
|
-
async function
|
|
2468
|
-
var
|
|
2469
|
-
const
|
|
2471
|
+
async function nn(e, t, n, r) {
|
|
2472
|
+
var l, h, y, m;
|
|
2473
|
+
const o = await fetch(`${e}/api/v2/oauth2/tokens`, {
|
|
2470
2474
|
method: "POST",
|
|
2471
2475
|
headers: {
|
|
2472
2476
|
"Content-Type": "application/json",
|
|
2473
|
-
"X-Idempotency-Key":
|
|
2474
|
-
"X-Fingerprint":
|
|
2477
|
+
"X-Idempotency-Key": $e(),
|
|
2478
|
+
"X-Fingerprint": Dn(),
|
|
2479
|
+
...ie(r)
|
|
2475
2480
|
},
|
|
2476
2481
|
body: JSON.stringify({
|
|
2477
2482
|
client_id: t,
|
|
@@ -2479,34 +2484,38 @@ async function tn(e, t, n) {
|
|
|
2479
2484
|
track_id: n
|
|
2480
2485
|
})
|
|
2481
2486
|
});
|
|
2482
|
-
|
|
2483
|
-
const
|
|
2484
|
-
if (!
|
|
2485
|
-
return { access_token:
|
|
2486
|
-
}
|
|
2487
|
-
async function
|
|
2488
|
-
var
|
|
2489
|
-
const
|
|
2487
|
+
o.ok || await le(o, "Не удалось авторизоваться через track_id");
|
|
2488
|
+
const i = await o.json(), c = (i == null ? void 0 : i.access_token) ?? ((h = (l = i == null ? void 0 : i.data) == null ? void 0 : l.attributes) == null ? void 0 : h.access_token), u = (i == null ? void 0 : i.refresh_token) ?? ((m = (y = i == null ? void 0 : i.data) == null ? void 0 : y.attributes) == null ? void 0 : m.refresh_token) ?? null;
|
|
2489
|
+
if (!c) throw new Error("В ответе отсутствует access_token");
|
|
2490
|
+
return { access_token: c, refresh_token: u };
|
|
2491
|
+
}
|
|
2492
|
+
async function Mr(e, t, n, r) {
|
|
2493
|
+
var l, h, y, m;
|
|
2494
|
+
const o = await fetch(`${e}/api/v2/oauth2/tokens`, {
|
|
2490
2495
|
method: "POST",
|
|
2491
|
-
headers: {
|
|
2496
|
+
headers: {
|
|
2497
|
+
"Content-Type": "application/json",
|
|
2498
|
+
...ie(r)
|
|
2499
|
+
},
|
|
2492
2500
|
body: JSON.stringify({
|
|
2493
2501
|
client_id: t,
|
|
2494
2502
|
grant_type: "refresh_token",
|
|
2495
2503
|
refresh_token: n
|
|
2496
2504
|
})
|
|
2497
2505
|
});
|
|
2498
|
-
|
|
2499
|
-
const
|
|
2500
|
-
if (!
|
|
2501
|
-
return { access_token:
|
|
2506
|
+
o.ok || await le(o, "Не удалось обновить токен по refresh_token");
|
|
2507
|
+
const i = await o.json(), c = (i == null ? void 0 : i.access_token) ?? ((h = (l = i == null ? void 0 : i.data) == null ? void 0 : l.attributes) == null ? void 0 : h.access_token), u = (i == null ? void 0 : i.refresh_token) ?? ((m = (y = i == null ? void 0 : i.data) == null ? void 0 : y.attributes) == null ? void 0 : m.refresh_token) ?? null;
|
|
2508
|
+
if (!c) throw new Error("В ответе отсутствует access_token");
|
|
2509
|
+
return { access_token: c, refresh_token: u };
|
|
2502
2510
|
}
|
|
2503
|
-
async function
|
|
2511
|
+
async function Et(e, t) {
|
|
2504
2512
|
const n = await fetch(`${e}/orders/v1/checkout/context`, {
|
|
2505
2513
|
method: "POST",
|
|
2506
2514
|
headers: {
|
|
2507
2515
|
"Content-Type": "application/json",
|
|
2508
2516
|
Authorization: `Bearer ${t.accessToken}`,
|
|
2509
|
-
"X-Idempotency-Key":
|
|
2517
|
+
"X-Idempotency-Key": $e(),
|
|
2518
|
+
...ie(t.country)
|
|
2510
2519
|
},
|
|
2511
2520
|
body: JSON.stringify({
|
|
2512
2521
|
terminal_id: t.terminalId,
|
|
@@ -2517,37 +2526,40 @@ async function bt(e, t) {
|
|
|
2517
2526
|
}
|
|
2518
2527
|
})
|
|
2519
2528
|
});
|
|
2520
|
-
return n.ok || await
|
|
2529
|
+
return n.ok || await le(n, "Ошибка получения контекста оплаты"), n.json();
|
|
2521
2530
|
}
|
|
2522
|
-
async function
|
|
2531
|
+
async function xr(e, t, n) {
|
|
2523
2532
|
const r = await fetch(`${e}/payment-gateway/v1/cards/${n}`, {
|
|
2524
2533
|
method: "DELETE",
|
|
2525
2534
|
headers: {
|
|
2526
2535
|
"Content-Type": "application/json",
|
|
2527
|
-
Authorization: `Bearer ${t.accessToken}
|
|
2536
|
+
Authorization: `Bearer ${t.accessToken}`,
|
|
2537
|
+
...ie(t.country)
|
|
2528
2538
|
}
|
|
2529
2539
|
});
|
|
2530
|
-
return r.ok || await
|
|
2540
|
+
return r.ok || await le(r, "Не удалось удалить карту"), r.json().catch(() => ({}));
|
|
2531
2541
|
}
|
|
2532
|
-
async function
|
|
2542
|
+
async function Ur(e, t, n) {
|
|
2533
2543
|
const r = await fetch(
|
|
2534
2544
|
`${e}/payment-gateway/v1/cards/${n}/mark_as_default`,
|
|
2535
2545
|
{
|
|
2536
2546
|
method: "PUT",
|
|
2537
2547
|
headers: {
|
|
2538
2548
|
"Content-Type": "application/json",
|
|
2539
|
-
Authorization: `Bearer ${t.accessToken}
|
|
2549
|
+
Authorization: `Bearer ${t.accessToken}`,
|
|
2550
|
+
...ie(t.country)
|
|
2540
2551
|
}
|
|
2541
2552
|
}
|
|
2542
2553
|
);
|
|
2543
|
-
return r.ok || await
|
|
2554
|
+
return r.ok || await le(r, "Не удалось отметить карту как основную"), r.json().catch(() => ({}));
|
|
2544
2555
|
}
|
|
2545
|
-
async function
|
|
2556
|
+
async function Fr(e, t, n) {
|
|
2546
2557
|
const r = await fetch(`${e}/orders/v1/orders/${n}/status`, {
|
|
2547
2558
|
method: "GET",
|
|
2548
2559
|
headers: {
|
|
2549
2560
|
"Content-Type": "application/json",
|
|
2550
|
-
Authorization: `Bearer ${t.accessToken}
|
|
2561
|
+
Authorization: `Bearer ${t.accessToken}`,
|
|
2562
|
+
...ie(t.country)
|
|
2551
2563
|
}
|
|
2552
2564
|
});
|
|
2553
2565
|
if (!r.ok)
|
|
@@ -2558,8 +2570,8 @@ async function Ur(e, t, n) {
|
|
|
2558
2570
|
const o = await r.json(), i = (o == null ? void 0 : o.data) ?? o;
|
|
2559
2571
|
return { data: { status: i == null ? void 0 : i.status, payload: (i == null ? void 0 : i.payload) ?? {} } };
|
|
2560
2572
|
}
|
|
2561
|
-
async function
|
|
2562
|
-
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } =
|
|
2573
|
+
async function rn(e, t, n, r, o = {}) {
|
|
2574
|
+
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } = et(
|
|
2563
2575
|
t,
|
|
2564
2576
|
{
|
|
2565
2577
|
type: r.type,
|
|
@@ -2567,82 +2579,89 @@ async function nn(e, t, n, r, o = {}) {
|
|
|
2567
2579
|
},
|
|
2568
2580
|
o
|
|
2569
2581
|
);
|
|
2570
|
-
return
|
|
2582
|
+
return nt(
|
|
2571
2583
|
e,
|
|
2572
2584
|
t,
|
|
2573
2585
|
n,
|
|
2574
|
-
|
|
2586
|
+
tt(t, c, i, u, l),
|
|
2575
2587
|
"Ошибка создания заказа"
|
|
2576
2588
|
);
|
|
2577
2589
|
}
|
|
2578
|
-
async function
|
|
2579
|
-
const { checkoutAmount: o, checkoutPaymentMethod: i, useBalanceFlag: c, voucher: u } =
|
|
2590
|
+
async function Xr(e, t, n, r = {}) {
|
|
2591
|
+
const { checkoutAmount: o, checkoutPaymentMethod: i, useBalanceFlag: c, voucher: u } = et(
|
|
2580
2592
|
t,
|
|
2581
2593
|
{ type: "new_card" },
|
|
2582
2594
|
r
|
|
2583
2595
|
);
|
|
2584
|
-
return
|
|
2596
|
+
return nt(
|
|
2585
2597
|
e,
|
|
2586
2598
|
t,
|
|
2587
2599
|
n,
|
|
2588
|
-
|
|
2600
|
+
tt(t, i, o, c, u),
|
|
2589
2601
|
"Ошибка создания заказа для новой карты"
|
|
2590
2602
|
);
|
|
2591
2603
|
}
|
|
2592
|
-
async function
|
|
2604
|
+
async function Hr(e, t) {
|
|
2593
2605
|
const n = await fetch(
|
|
2594
2606
|
`${e}/loyalty/v6/coupons/by_terminal/${t.terminalId}/at_payment?order_pay_amount=${t.amount}`,
|
|
2595
2607
|
{
|
|
2596
2608
|
method: "GET",
|
|
2597
2609
|
headers: {
|
|
2598
2610
|
"Content-Type": "application/json",
|
|
2599
|
-
Authorization: `Bearer ${t.accessToken}
|
|
2611
|
+
Authorization: `Bearer ${t.accessToken}`,
|
|
2612
|
+
...ie(t.country)
|
|
2600
2613
|
}
|
|
2601
2614
|
}
|
|
2602
2615
|
);
|
|
2603
|
-
return n.ok || await
|
|
2616
|
+
return n.ok || await le(n, "Ошибка получения купонов"), n.json();
|
|
2604
2617
|
}
|
|
2605
|
-
async function
|
|
2606
|
-
const r = window.location.hostname, o =
|
|
2618
|
+
async function on(e, t, n) {
|
|
2619
|
+
const r = window.location.hostname, o = {
|
|
2620
|
+
validationUrl: n,
|
|
2621
|
+
domainName: r
|
|
2622
|
+
};
|
|
2623
|
+
t.merchantName && (o.merchantName = t.merchantName);
|
|
2624
|
+
const i = await fetch(`${e}/payment-gateway/v1/apple/session`, {
|
|
2607
2625
|
method: "POST",
|
|
2608
2626
|
headers: {
|
|
2609
2627
|
"Content-Type": "application/json",
|
|
2610
2628
|
Accept: "application/vnd.api+json",
|
|
2611
|
-
Authorization: `Bearer ${t.accessToken}
|
|
2629
|
+
Authorization: `Bearer ${t.accessToken}`,
|
|
2630
|
+
...ie(t.country)
|
|
2612
2631
|
},
|
|
2613
|
-
body: JSON.stringify(
|
|
2632
|
+
body: JSON.stringify(o)
|
|
2614
2633
|
});
|
|
2615
|
-
return
|
|
2634
|
+
return i.ok || await le(i, "Ошибка получения Apple Pay сессии"), i.json();
|
|
2616
2635
|
}
|
|
2617
|
-
async function
|
|
2618
|
-
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } =
|
|
2636
|
+
async function jr(e, t, n, r, o = {}) {
|
|
2637
|
+
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } = et(
|
|
2619
2638
|
t,
|
|
2620
2639
|
{ type: "apple_pay", data: r },
|
|
2621
2640
|
o
|
|
2622
2641
|
);
|
|
2623
|
-
return
|
|
2642
|
+
return nt(
|
|
2624
2643
|
e,
|
|
2625
2644
|
t,
|
|
2626
2645
|
n,
|
|
2627
|
-
|
|
2646
|
+
tt(t, c, i, u, l),
|
|
2628
2647
|
"Ошибка создания заказа с Apple Pay"
|
|
2629
2648
|
);
|
|
2630
2649
|
}
|
|
2631
|
-
async function
|
|
2632
|
-
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } =
|
|
2650
|
+
async function Xn(e, t, n, r, o = {}) {
|
|
2651
|
+
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } = et(
|
|
2633
2652
|
t,
|
|
2634
2653
|
{ type: "google_pay", data: r },
|
|
2635
2654
|
o
|
|
2636
2655
|
);
|
|
2637
|
-
return
|
|
2656
|
+
return nt(
|
|
2638
2657
|
e,
|
|
2639
2658
|
t,
|
|
2640
2659
|
n,
|
|
2641
|
-
|
|
2660
|
+
tt(t, c, i, u, l),
|
|
2642
2661
|
"Ошибка создания заказа с Google Pay"
|
|
2643
2662
|
);
|
|
2644
2663
|
}
|
|
2645
|
-
function
|
|
2664
|
+
function Jr(e) {
|
|
2646
2665
|
const t = typeof e.color == "string" ? e.color.trim() : "", n = t && /^[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/.test(t) ? `#${t}` : t, r = e.bonuses, o = r && typeof r == "object" && Number.isFinite(r.amount) && Number.isFinite(r.percent) ? {
|
|
2647
2666
|
availableBonus: Number.isFinite(r.availableBonus) ? Number(r.availableBonus) : 0,
|
|
2648
2667
|
amount: Number(r.amount),
|
|
@@ -2677,6 +2696,10 @@ function jr(e) {
|
|
|
2677
2696
|
onFreedomLink: typeof e.onFreedomLink == "function" ? e.onFreedomLink : null,
|
|
2678
2697
|
onRequestNewTrackId: typeof e.onRequestNewTrackId == "function" ? e.onRequestNewTrackId : null,
|
|
2679
2698
|
idempotencyKey: e.idempotencyKey,
|
|
2699
|
+
country: typeof e.country == "string" && e.country.trim() || void 0,
|
|
2700
|
+
merchantName: typeof e.merchantName == "string" && // Бэкенд обрезает пробелы и возвращает 400 при длине > 35 Unicode-символов.
|
|
2701
|
+
// Ограничиваем на клиенте, чтобы не ловить лишний round-trip с ошибкой.
|
|
2702
|
+
Array.from(e.merchantName.trim()).slice(0, 35).join("") || void 0,
|
|
2680
2703
|
locale: e.locale || "ru",
|
|
2681
2704
|
containerSelector: typeof e.containerSelector == "string" ? e.containerSelector.trim() : "",
|
|
2682
2705
|
color: n || "#2F2F2F",
|
|
@@ -2689,12 +2712,12 @@ function jr(e) {
|
|
|
2689
2712
|
bonuses: o
|
|
2690
2713
|
};
|
|
2691
2714
|
}
|
|
2692
|
-
const U = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__,
|
|
2693
|
-
function
|
|
2694
|
-
const r = n || j, o = r.__SENTRY__ = r.__SENTRY__ || {}, i = o[
|
|
2715
|
+
const U = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, he = "8.55.2", j = globalThis;
|
|
2716
|
+
function rt(e, t, n) {
|
|
2717
|
+
const r = n || j, o = r.__SENTRY__ = r.__SENTRY__ || {}, i = o[he] = o[he] || {};
|
|
2695
2718
|
return i[e] || (i[e] = t());
|
|
2696
2719
|
}
|
|
2697
|
-
const
|
|
2720
|
+
const Ot = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, qr = "Sentry Logger ", sn = [
|
|
2698
2721
|
"debug",
|
|
2699
2722
|
"info",
|
|
2700
2723
|
"warn",
|
|
@@ -2702,13 +2725,13 @@ const Rt = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, Jr = "Sentry Logge
|
|
|
2702
2725
|
"log",
|
|
2703
2726
|
"assert",
|
|
2704
2727
|
"trace"
|
|
2705
|
-
],
|
|
2706
|
-
function
|
|
2728
|
+
], an = {};
|
|
2729
|
+
function ot(e) {
|
|
2707
2730
|
if (!("console" in j))
|
|
2708
2731
|
return e();
|
|
2709
|
-
const t = j.console, n = {}, r = Object.keys(
|
|
2732
|
+
const t = j.console, n = {}, r = Object.keys(an);
|
|
2710
2733
|
r.forEach((o) => {
|
|
2711
|
-
const i =
|
|
2734
|
+
const i = an[o];
|
|
2712
2735
|
n[o] = t[o], t[o] = i;
|
|
2713
2736
|
});
|
|
2714
2737
|
try {
|
|
@@ -2719,7 +2742,7 @@ function rt(e) {
|
|
|
2719
2742
|
});
|
|
2720
2743
|
}
|
|
2721
2744
|
}
|
|
2722
|
-
function
|
|
2745
|
+
function zr() {
|
|
2723
2746
|
let e = !1;
|
|
2724
2747
|
const t = {
|
|
2725
2748
|
enable: () => {
|
|
@@ -2730,19 +2753,19 @@ function qr() {
|
|
|
2730
2753
|
},
|
|
2731
2754
|
isEnabled: () => e
|
|
2732
2755
|
};
|
|
2733
|
-
return
|
|
2756
|
+
return Ot ? sn.forEach((n) => {
|
|
2734
2757
|
t[n] = (...r) => {
|
|
2735
|
-
e &&
|
|
2736
|
-
j.console[n](`${
|
|
2758
|
+
e && ot(() => {
|
|
2759
|
+
j.console[n](`${qr}[${n}]:`, ...r);
|
|
2737
2760
|
});
|
|
2738
2761
|
};
|
|
2739
|
-
}) :
|
|
2762
|
+
}) : sn.forEach((n) => {
|
|
2740
2763
|
t[n] = () => {
|
|
2741
2764
|
};
|
|
2742
2765
|
}), t;
|
|
2743
2766
|
}
|
|
2744
|
-
const N =
|
|
2745
|
-
function
|
|
2767
|
+
const N = rt("logger", zr), Hn = 50, be = "?", cn = /\(error: (.*)\)/, un = /captureMessage|captureException/;
|
|
2768
|
+
function Kr(...e) {
|
|
2746
2769
|
const t = e.sort((n, r) => n[0] - r[0]).map((n) => n[1]);
|
|
2747
2770
|
return (n, r = 0, o = 0) => {
|
|
2748
2771
|
const i = [], c = n.split(`
|
|
@@ -2751,7 +2774,7 @@ function zr(...e) {
|
|
|
2751
2774
|
const l = c[u];
|
|
2752
2775
|
if (l.length > 1024)
|
|
2753
2776
|
continue;
|
|
2754
|
-
const h =
|
|
2777
|
+
const h = cn.test(l) ? l.replace(cn, "$1") : l;
|
|
2755
2778
|
if (!h.match(/\S*Error: /)) {
|
|
2756
2779
|
for (const y of t) {
|
|
2757
2780
|
const m = y(h);
|
|
@@ -2760,101 +2783,101 @@ function zr(...e) {
|
|
|
2760
2783
|
break;
|
|
2761
2784
|
}
|
|
2762
2785
|
}
|
|
2763
|
-
if (i.length >=
|
|
2786
|
+
if (i.length >= Hn + o)
|
|
2764
2787
|
break;
|
|
2765
2788
|
}
|
|
2766
2789
|
}
|
|
2767
|
-
return
|
|
2790
|
+
return Gr(i.slice(o));
|
|
2768
2791
|
};
|
|
2769
2792
|
}
|
|
2770
|
-
function
|
|
2793
|
+
function Gr(e) {
|
|
2771
2794
|
if (!e.length)
|
|
2772
2795
|
return [];
|
|
2773
2796
|
const t = Array.from(e);
|
|
2774
|
-
return /sentryWrapped/.test(
|
|
2797
|
+
return /sentryWrapped/.test(Ne(t).function || "") && t.pop(), t.reverse(), un.test(Ne(t).function || "") && (t.pop(), un.test(Ne(t).function || "") && t.pop()), t.slice(0, Hn).map((n) => ({
|
|
2775
2798
|
...n,
|
|
2776
|
-
filename: n.filename ||
|
|
2777
|
-
function: n.function ||
|
|
2799
|
+
filename: n.filename || Ne(t).filename,
|
|
2800
|
+
function: n.function || be
|
|
2778
2801
|
}));
|
|
2779
2802
|
}
|
|
2780
|
-
function
|
|
2803
|
+
function Ne(e) {
|
|
2781
2804
|
return e[e.length - 1] || {};
|
|
2782
2805
|
}
|
|
2783
|
-
const
|
|
2784
|
-
function
|
|
2806
|
+
const pt = "<anonymous>";
|
|
2807
|
+
function Wr(e) {
|
|
2785
2808
|
try {
|
|
2786
|
-
return !e || typeof e != "function" ?
|
|
2809
|
+
return !e || typeof e != "function" ? pt : e.name || pt;
|
|
2787
2810
|
} catch {
|
|
2788
|
-
return
|
|
2811
|
+
return pt;
|
|
2789
2812
|
}
|
|
2790
2813
|
}
|
|
2791
|
-
function
|
|
2792
|
-
return
|
|
2814
|
+
function Nt() {
|
|
2815
|
+
return Dt(j), j;
|
|
2793
2816
|
}
|
|
2794
|
-
function
|
|
2817
|
+
function Dt(e) {
|
|
2795
2818
|
const t = e.__SENTRY__ = e.__SENTRY__ || {};
|
|
2796
|
-
return t.version = t.version ||
|
|
2819
|
+
return t.version = t.version || he, t[he] = t[he] || {};
|
|
2797
2820
|
}
|
|
2798
|
-
const
|
|
2799
|
-
function
|
|
2800
|
-
switch (
|
|
2821
|
+
const jn = Object.prototype.toString;
|
|
2822
|
+
function Jn(e) {
|
|
2823
|
+
switch (jn.call(e)) {
|
|
2801
2824
|
case "[object Error]":
|
|
2802
2825
|
case "[object Exception]":
|
|
2803
2826
|
case "[object DOMException]":
|
|
2804
2827
|
case "[object WebAssembly.Exception]":
|
|
2805
2828
|
return !0;
|
|
2806
2829
|
default:
|
|
2807
|
-
return
|
|
2830
|
+
return at(e, Error);
|
|
2808
2831
|
}
|
|
2809
2832
|
}
|
|
2810
|
-
function
|
|
2811
|
-
return
|
|
2812
|
-
}
|
|
2813
|
-
function Jn(e) {
|
|
2814
|
-
return Pe(e, "ErrorEvent");
|
|
2815
|
-
}
|
|
2816
|
-
function un(e) {
|
|
2817
|
-
return Pe(e, "DOMError");
|
|
2818
|
-
}
|
|
2819
|
-
function Wr(e) {
|
|
2820
|
-
return Pe(e, "DOMException");
|
|
2833
|
+
function we(e, t) {
|
|
2834
|
+
return jn.call(e) === `[object ${t}]`;
|
|
2821
2835
|
}
|
|
2822
2836
|
function qn(e) {
|
|
2823
|
-
return
|
|
2837
|
+
return we(e, "ErrorEvent");
|
|
2824
2838
|
}
|
|
2825
|
-
function
|
|
2826
|
-
return
|
|
2839
|
+
function ln(e) {
|
|
2840
|
+
return we(e, "DOMError");
|
|
2827
2841
|
}
|
|
2828
2842
|
function Yr(e) {
|
|
2829
|
-
return
|
|
2843
|
+
return we(e, "DOMException");
|
|
2830
2844
|
}
|
|
2831
|
-
function
|
|
2832
|
-
return
|
|
2845
|
+
function zn(e) {
|
|
2846
|
+
return we(e, "String");
|
|
2833
2847
|
}
|
|
2834
|
-
function
|
|
2835
|
-
return typeof
|
|
2848
|
+
function Mt(e) {
|
|
2849
|
+
return typeof e == "object" && e !== null && "__sentry_template_string__" in e && "__sentry_template_values__" in e;
|
|
2836
2850
|
}
|
|
2837
2851
|
function Vr(e) {
|
|
2838
|
-
return typeof
|
|
2852
|
+
return e === null || Mt(e) || typeof e != "object" && typeof e != "function";
|
|
2853
|
+
}
|
|
2854
|
+
function Ee(e) {
|
|
2855
|
+
return we(e, "Object");
|
|
2839
2856
|
}
|
|
2840
2857
|
function st(e) {
|
|
2841
|
-
return
|
|
2858
|
+
return typeof Event < "u" && at(e, Event);
|
|
2842
2859
|
}
|
|
2843
2860
|
function Zr(e) {
|
|
2844
|
-
return
|
|
2861
|
+
return typeof Element < "u" && at(e, Element);
|
|
2862
|
+
}
|
|
2863
|
+
function it(e) {
|
|
2864
|
+
return !!(e && e.then && typeof e.then == "function");
|
|
2865
|
+
}
|
|
2866
|
+
function $r(e) {
|
|
2867
|
+
return Ee(e) && "nativeEvent" in e && "preventDefault" in e && "stopPropagation" in e;
|
|
2845
2868
|
}
|
|
2846
|
-
function
|
|
2869
|
+
function at(e, t) {
|
|
2847
2870
|
try {
|
|
2848
2871
|
return e instanceof t;
|
|
2849
2872
|
} catch {
|
|
2850
2873
|
return !1;
|
|
2851
2874
|
}
|
|
2852
2875
|
}
|
|
2853
|
-
function
|
|
2876
|
+
function eo(e) {
|
|
2854
2877
|
return !!(typeof e == "object" && e !== null && (e.__isVue || e._isVue));
|
|
2855
2878
|
}
|
|
2856
|
-
const
|
|
2857
|
-
function
|
|
2879
|
+
const to = j, no = 80;
|
|
2880
|
+
function ro(e, t = {}) {
|
|
2858
2881
|
if (!e)
|
|
2859
2882
|
return "<unknown>";
|
|
2860
2883
|
try {
|
|
@@ -2863,19 +2886,19 @@ function no(e, t = {}) {
|
|
|
2863
2886
|
let i = 0, c = 0;
|
|
2864
2887
|
const u = " > ", l = u.length;
|
|
2865
2888
|
let h;
|
|
2866
|
-
const y = Array.isArray(t) ? t : t.keyAttrs, m = !Array.isArray(t) && t.maxStringLength ||
|
|
2867
|
-
for (; n && i++ < r && (h =
|
|
2889
|
+
const y = Array.isArray(t) ? t : t.keyAttrs, m = !Array.isArray(t) && t.maxStringLength || no;
|
|
2890
|
+
for (; n && i++ < r && (h = oo(n, y), !(h === "html" || i > 1 && c + o.length * l + h.length >= m)); )
|
|
2868
2891
|
o.push(h), c += h.length, n = n.parentNode;
|
|
2869
2892
|
return o.reverse().join(u);
|
|
2870
2893
|
} catch {
|
|
2871
2894
|
return "<unknown>";
|
|
2872
2895
|
}
|
|
2873
2896
|
}
|
|
2874
|
-
function
|
|
2897
|
+
function oo(e, t) {
|
|
2875
2898
|
const n = e, r = [];
|
|
2876
2899
|
if (!n || !n.tagName)
|
|
2877
2900
|
return "";
|
|
2878
|
-
if (
|
|
2901
|
+
if (to.HTMLElement && n instanceof HTMLElement && n.dataset) {
|
|
2879
2902
|
if (n.dataset.sentryComponent)
|
|
2880
2903
|
return n.dataset.sentryComponent;
|
|
2881
2904
|
if (n.dataset.sentryElement)
|
|
@@ -2890,7 +2913,7 @@ function ro(e, t) {
|
|
|
2890
2913
|
else {
|
|
2891
2914
|
n.id && r.push(`#${n.id}`);
|
|
2892
2915
|
const c = n.className;
|
|
2893
|
-
if (c &&
|
|
2916
|
+
if (c && zn(c)) {
|
|
2894
2917
|
const u = c.split(/\s+/);
|
|
2895
2918
|
for (const l of u)
|
|
2896
2919
|
r.push(`.${l}`);
|
|
@@ -2903,10 +2926,10 @@ function ro(e, t) {
|
|
|
2903
2926
|
}
|
|
2904
2927
|
return r.join("");
|
|
2905
2928
|
}
|
|
2906
|
-
function
|
|
2929
|
+
function _e(e, t = 0) {
|
|
2907
2930
|
return typeof e != "string" || t === 0 || e.length <= t ? e : `${e.slice(0, t)}...`;
|
|
2908
2931
|
}
|
|
2909
|
-
function
|
|
2932
|
+
function Kn(e, t, n) {
|
|
2910
2933
|
try {
|
|
2911
2934
|
Object.defineProperty(e, t, {
|
|
2912
2935
|
// enumerable: false, // the default, so we can save on bundle size by not explicitly setting it
|
|
@@ -2915,36 +2938,36 @@ function zn(e, t, n) {
|
|
|
2915
2938
|
configurable: !0
|
|
2916
2939
|
});
|
|
2917
2940
|
} catch {
|
|
2918
|
-
|
|
2941
|
+
Ot && N.log(`Failed to add non-enumerable property "${t}" to object`, e);
|
|
2919
2942
|
}
|
|
2920
2943
|
}
|
|
2921
|
-
function
|
|
2922
|
-
if (
|
|
2944
|
+
function Gn(e) {
|
|
2945
|
+
if (Jn(e))
|
|
2923
2946
|
return {
|
|
2924
2947
|
message: e.message,
|
|
2925
2948
|
name: e.name,
|
|
2926
2949
|
stack: e.stack,
|
|
2927
|
-
...
|
|
2950
|
+
...dn(e)
|
|
2928
2951
|
};
|
|
2929
|
-
if (
|
|
2952
|
+
if (st(e)) {
|
|
2930
2953
|
const t = {
|
|
2931
2954
|
type: e.type,
|
|
2932
|
-
target:
|
|
2933
|
-
currentTarget:
|
|
2934
|
-
...
|
|
2955
|
+
target: An(e.target),
|
|
2956
|
+
currentTarget: An(e.currentTarget),
|
|
2957
|
+
...dn(e)
|
|
2935
2958
|
};
|
|
2936
|
-
return typeof CustomEvent < "u" &&
|
|
2959
|
+
return typeof CustomEvent < "u" && at(e, CustomEvent) && (t.detail = e.detail), t;
|
|
2937
2960
|
} else
|
|
2938
2961
|
return e;
|
|
2939
2962
|
}
|
|
2940
|
-
function
|
|
2963
|
+
function An(e) {
|
|
2941
2964
|
try {
|
|
2942
|
-
return
|
|
2965
|
+
return Zr(e) ? ro(e) : Object.prototype.toString.call(e);
|
|
2943
2966
|
} catch {
|
|
2944
2967
|
return "<unknown>";
|
|
2945
2968
|
}
|
|
2946
2969
|
}
|
|
2947
|
-
function
|
|
2970
|
+
function dn(e) {
|
|
2948
2971
|
if (typeof e == "object" && e !== null) {
|
|
2949
2972
|
const t = {};
|
|
2950
2973
|
for (const n in e)
|
|
@@ -2953,33 +2976,33 @@ function An(e) {
|
|
|
2953
2976
|
} else
|
|
2954
2977
|
return {};
|
|
2955
2978
|
}
|
|
2956
|
-
function
|
|
2957
|
-
const n = Object.keys(
|
|
2979
|
+
function so(e, t = 40) {
|
|
2980
|
+
const n = Object.keys(Gn(e));
|
|
2958
2981
|
n.sort();
|
|
2959
2982
|
const r = n[0];
|
|
2960
2983
|
if (!r)
|
|
2961
2984
|
return "[object has no keys]";
|
|
2962
2985
|
if (r.length >= t)
|
|
2963
|
-
return
|
|
2986
|
+
return _e(r, t);
|
|
2964
2987
|
for (let o = n.length; o > 0; o--) {
|
|
2965
2988
|
const i = n.slice(0, o).join(", ");
|
|
2966
2989
|
if (!(i.length > t))
|
|
2967
|
-
return o === n.length ? i :
|
|
2990
|
+
return o === n.length ? i : _e(i, t);
|
|
2968
2991
|
}
|
|
2969
2992
|
return "";
|
|
2970
2993
|
}
|
|
2971
2994
|
function V(e) {
|
|
2972
|
-
return
|
|
2995
|
+
return vt(e, /* @__PURE__ */ new Map());
|
|
2973
2996
|
}
|
|
2974
|
-
function
|
|
2975
|
-
if (
|
|
2997
|
+
function vt(e, t) {
|
|
2998
|
+
if (io(e)) {
|
|
2976
2999
|
const n = t.get(e);
|
|
2977
3000
|
if (n !== void 0)
|
|
2978
3001
|
return n;
|
|
2979
3002
|
const r = {};
|
|
2980
3003
|
t.set(e, r);
|
|
2981
3004
|
for (const o of Object.getOwnPropertyNames(e))
|
|
2982
|
-
typeof e[o] < "u" && (r[o] =
|
|
3005
|
+
typeof e[o] < "u" && (r[o] = vt(e[o], t));
|
|
2983
3006
|
return r;
|
|
2984
3007
|
}
|
|
2985
3008
|
if (Array.isArray(e)) {
|
|
@@ -2988,13 +3011,13 @@ function Et(e, t) {
|
|
|
2988
3011
|
return n;
|
|
2989
3012
|
const r = [];
|
|
2990
3013
|
return t.set(e, r), e.forEach((o) => {
|
|
2991
|
-
r.push(
|
|
3014
|
+
r.push(vt(o, t));
|
|
2992
3015
|
}), r;
|
|
2993
3016
|
}
|
|
2994
3017
|
return e;
|
|
2995
3018
|
}
|
|
2996
|
-
function
|
|
2997
|
-
if (!
|
|
3019
|
+
function io(e) {
|
|
3020
|
+
if (!Ee(e))
|
|
2998
3021
|
return !1;
|
|
2999
3022
|
try {
|
|
3000
3023
|
const t = Object.getPrototypeOf(e).constructor.name;
|
|
@@ -3003,18 +3026,18 @@ function so(e) {
|
|
|
3003
3026
|
return !0;
|
|
3004
3027
|
}
|
|
3005
3028
|
}
|
|
3006
|
-
const
|
|
3007
|
-
function
|
|
3008
|
-
return Date.now() /
|
|
3029
|
+
const Wn = 1e3;
|
|
3030
|
+
function ct() {
|
|
3031
|
+
return Date.now() / Wn;
|
|
3009
3032
|
}
|
|
3010
|
-
function
|
|
3033
|
+
function ao() {
|
|
3011
3034
|
const { performance: e } = j;
|
|
3012
3035
|
if (!e || !e.now)
|
|
3013
|
-
return
|
|
3036
|
+
return ct;
|
|
3014
3037
|
const t = Date.now() - e.now(), n = e.timeOrigin == null ? t : e.timeOrigin;
|
|
3015
|
-
return () => (n + e.now()) /
|
|
3038
|
+
return () => (n + e.now()) / Wn;
|
|
3016
3039
|
}
|
|
3017
|
-
const
|
|
3040
|
+
const Yn = ao();
|
|
3018
3041
|
(() => {
|
|
3019
3042
|
const { performance: e } = j;
|
|
3020
3043
|
if (!e || !e.now)
|
|
@@ -3042,15 +3065,15 @@ function te() {
|
|
|
3042
3065
|
)
|
|
3043
3066
|
);
|
|
3044
3067
|
}
|
|
3045
|
-
function
|
|
3068
|
+
function co(e) {
|
|
3046
3069
|
return e.exception && e.exception.values ? e.exception.values[0] : void 0;
|
|
3047
3070
|
}
|
|
3048
|
-
function
|
|
3071
|
+
function fn(e, t, n) {
|
|
3049
3072
|
const r = e.exception = e.exception || {}, o = r.values = r.values || [], i = o[0] = o[0] || {};
|
|
3050
3073
|
i.value || (i.value = t || ""), i.type || (i.type = "Error");
|
|
3051
3074
|
}
|
|
3052
|
-
function
|
|
3053
|
-
const n =
|
|
3075
|
+
function Qe(e, t) {
|
|
3076
|
+
const n = co(e);
|
|
3054
3077
|
if (!n)
|
|
3055
3078
|
return;
|
|
3056
3079
|
const r = { type: "generic", handled: !0 }, o = n.mechanism;
|
|
@@ -3059,16 +3082,16 @@ function _e(e, t) {
|
|
|
3059
3082
|
n.mechanism.data = i;
|
|
3060
3083
|
}
|
|
3061
3084
|
}
|
|
3062
|
-
function
|
|
3063
|
-
if (
|
|
3085
|
+
function hn(e) {
|
|
3086
|
+
if (uo(e))
|
|
3064
3087
|
return !0;
|
|
3065
3088
|
try {
|
|
3066
|
-
|
|
3089
|
+
Kn(e, "__sentry_captured__", !0);
|
|
3067
3090
|
} catch {
|
|
3068
3091
|
}
|
|
3069
3092
|
return !1;
|
|
3070
3093
|
}
|
|
3071
|
-
function
|
|
3094
|
+
function uo(e) {
|
|
3072
3095
|
try {
|
|
3073
3096
|
return e.__sentry_captured__;
|
|
3074
3097
|
} catch {
|
|
@@ -3082,12 +3105,12 @@ var re;
|
|
|
3082
3105
|
const r = 2;
|
|
3083
3106
|
e[e.REJECTED = r] = "REJECTED";
|
|
3084
3107
|
})(re || (re = {}));
|
|
3085
|
-
function
|
|
3108
|
+
function pe(e) {
|
|
3086
3109
|
return new W((t) => {
|
|
3087
3110
|
t(e);
|
|
3088
3111
|
});
|
|
3089
3112
|
}
|
|
3090
|
-
function
|
|
3113
|
+
function Ye(e) {
|
|
3091
3114
|
return new W((t, n) => {
|
|
3092
3115
|
n(e);
|
|
3093
3116
|
});
|
|
@@ -3169,7 +3192,7 @@ class W {
|
|
|
3169
3192
|
__init3() {
|
|
3170
3193
|
this._setResult = (t, n) => {
|
|
3171
3194
|
if (this._state === re.PENDING) {
|
|
3172
|
-
if (
|
|
3195
|
+
if (it(n)) {
|
|
3173
3196
|
n.then(this._resolve, this._reject);
|
|
3174
3197
|
return;
|
|
3175
3198
|
}
|
|
@@ -3189,8 +3212,8 @@ class W {
|
|
|
3189
3212
|
};
|
|
3190
3213
|
}
|
|
3191
3214
|
}
|
|
3192
|
-
function
|
|
3193
|
-
if (t.user && (!e.ipAddress && t.user.ip_address && (e.ipAddress = t.user.ip_address), !e.did && !t.did && (e.did = t.user.id || t.user.email || t.user.username)), e.timestamp = t.timestamp ||
|
|
3215
|
+
function It(e, t = {}) {
|
|
3216
|
+
if (t.user && (!e.ipAddress && t.user.ip_address && (e.ipAddress = t.user.ip_address), !e.did && !t.did && (e.did = t.user.id || t.user.email || t.user.username)), e.timestamp = t.timestamp || Yn(), t.abnormal_mechanism && (e.abnormal_mechanism = t.abnormal_mechanism), t.ignoreDuration && (e.ignoreDuration = t.ignoreDuration), t.sid && (e.sid = t.sid.length === 32 ? t.sid : te()), t.init !== void 0 && (e.init = t.init), !e.did && t.did && (e.did = `${t.did}`), typeof t.started == "number" && (e.started = t.started), e.ignoreDuration)
|
|
3194
3217
|
e.duration = void 0;
|
|
3195
3218
|
else if (typeof t.duration == "number")
|
|
3196
3219
|
e.duration = t.duration;
|
|
@@ -3200,31 +3223,31 @@ function vt(e, t = {}) {
|
|
|
3200
3223
|
}
|
|
3201
3224
|
t.release && (e.release = t.release), t.environment && (e.environment = t.environment), !e.ipAddress && t.ipAddress && (e.ipAddress = t.ipAddress), !e.userAgent && t.userAgent && (e.userAgent = t.userAgent), typeof t.errors == "number" && (e.errors = t.errors), t.status && (e.status = t.status);
|
|
3202
3225
|
}
|
|
3203
|
-
function
|
|
3226
|
+
function pn() {
|
|
3204
3227
|
return te();
|
|
3205
3228
|
}
|
|
3206
|
-
function
|
|
3229
|
+
function Bt() {
|
|
3207
3230
|
return te().substring(16);
|
|
3208
3231
|
}
|
|
3209
|
-
function
|
|
3232
|
+
function ut(e, t, n = 2) {
|
|
3210
3233
|
if (!t || typeof t != "object" || n <= 0)
|
|
3211
3234
|
return t;
|
|
3212
3235
|
if (e && t && Object.keys(t).length === 0)
|
|
3213
3236
|
return e;
|
|
3214
3237
|
const r = { ...e };
|
|
3215
3238
|
for (const o in t)
|
|
3216
|
-
Object.prototype.hasOwnProperty.call(t, o) && (r[o] =
|
|
3239
|
+
Object.prototype.hasOwnProperty.call(t, o) && (r[o] = ut(r[o], t[o], n - 1));
|
|
3217
3240
|
return r;
|
|
3218
3241
|
}
|
|
3219
|
-
const
|
|
3220
|
-
function
|
|
3221
|
-
t ?
|
|
3242
|
+
const St = "_sentrySpan";
|
|
3243
|
+
function gn(e, t) {
|
|
3244
|
+
t ? Kn(e, St, t) : delete e[St];
|
|
3222
3245
|
}
|
|
3223
|
-
function
|
|
3224
|
-
return e[
|
|
3246
|
+
function yn(e) {
|
|
3247
|
+
return e[St];
|
|
3225
3248
|
}
|
|
3226
|
-
const
|
|
3227
|
-
class
|
|
3249
|
+
const lo = 100;
|
|
3250
|
+
class xt {
|
|
3228
3251
|
/** Flag if notifying is happening. */
|
|
3229
3252
|
/** Callback for client to receive scope changes. */
|
|
3230
3253
|
/** Callback list that will be called during event processing. */
|
|
@@ -3255,18 +3278,18 @@ class Mt {
|
|
|
3255
3278
|
// NOTE: Any field which gets added here should get added not only to the constructor but also to the `clone` method.
|
|
3256
3279
|
constructor() {
|
|
3257
3280
|
this._notifyingListeners = !1, this._scopeListeners = [], this._eventProcessors = [], this._breadcrumbs = [], this._attachments = [], this._user = {}, this._tags = {}, this._extra = {}, this._contexts = {}, this._sdkProcessingMetadata = {}, this._propagationContext = {
|
|
3258
|
-
traceId:
|
|
3259
|
-
spanId:
|
|
3281
|
+
traceId: pn(),
|
|
3282
|
+
spanId: Bt()
|
|
3260
3283
|
};
|
|
3261
3284
|
}
|
|
3262
3285
|
/**
|
|
3263
3286
|
* @inheritDoc
|
|
3264
3287
|
*/
|
|
3265
3288
|
clone() {
|
|
3266
|
-
const t = new
|
|
3289
|
+
const t = new xt();
|
|
3267
3290
|
return t._breadcrumbs = [...this._breadcrumbs], t._tags = { ...this._tags }, t._extra = { ...this._extra }, t._contexts = { ...this._contexts }, this._contexts.flags && (t._contexts.flags = {
|
|
3268
3291
|
values: [...this._contexts.flags.values]
|
|
3269
|
-
}), t._user = this._user, t._level = this._level, t._session = this._session, t._transactionName = this._transactionName, t._fingerprint = this._fingerprint, t._eventProcessors = [...this._eventProcessors], t._requestSession = this._requestSession, t._attachments = [...this._attachments], t._sdkProcessingMetadata = { ...this._sdkProcessingMetadata }, t._propagationContext = { ...this._propagationContext }, t._client = this._client, t._lastEventId = this._lastEventId,
|
|
3292
|
+
}), t._user = this._user, t._level = this._level, t._session = this._session, t._transactionName = this._transactionName, t._fingerprint = this._fingerprint, t._eventProcessors = [...this._eventProcessors], t._requestSession = this._requestSession, t._attachments = [...this._attachments], t._sdkProcessingMetadata = { ...this._sdkProcessingMetadata }, t._propagationContext = { ...this._propagationContext }, t._client = this._client, t._lastEventId = this._lastEventId, gn(t, yn(this)), t;
|
|
3270
3293
|
}
|
|
3271
3294
|
/**
|
|
3272
3295
|
* @inheritDoc
|
|
@@ -3313,7 +3336,7 @@ class Mt {
|
|
|
3313
3336
|
id: void 0,
|
|
3314
3337
|
ip_address: void 0,
|
|
3315
3338
|
username: void 0
|
|
3316
|
-
}, this._session &&
|
|
3339
|
+
}, this._session && It(this._session, { user: t }), this._notifyScopeListeners(), this;
|
|
3317
3340
|
}
|
|
3318
3341
|
/**
|
|
3319
3342
|
* @inheritDoc
|
|
@@ -3415,27 +3438,27 @@ class Mt {
|
|
|
3415
3438
|
update(t) {
|
|
3416
3439
|
if (!t)
|
|
3417
3440
|
return this;
|
|
3418
|
-
const n = typeof t == "function" ? t(this) : t, [r, o] = n instanceof
|
|
3441
|
+
const n = typeof t == "function" ? t(this) : t, [r, o] = n instanceof ue ? (
|
|
3419
3442
|
// eslint-disable-next-line deprecation/deprecation
|
|
3420
3443
|
[n.getScopeData(), n.getRequestSession()]
|
|
3421
|
-
) :
|
|
3444
|
+
) : Ee(n) ? [t, t.requestSession] : [], { tags: i, extra: c, user: u, contexts: l, level: h, fingerprint: y = [], propagationContext: m } = r || {};
|
|
3422
3445
|
return this._tags = { ...this._tags, ...i }, this._extra = { ...this._extra, ...c }, this._contexts = { ...this._contexts, ...l }, u && Object.keys(u).length && (this._user = u), h && (this._level = h), y.length && (this._fingerprint = y), m && (this._propagationContext = m), o && (this._requestSession = o), this;
|
|
3423
3446
|
}
|
|
3424
3447
|
/**
|
|
3425
3448
|
* @inheritDoc
|
|
3426
3449
|
*/
|
|
3427
3450
|
clear() {
|
|
3428
|
-
return this._breadcrumbs = [], this._tags = {}, this._extra = {}, this._user = {}, this._contexts = {}, this._level = void 0, this._transactionName = void 0, this._fingerprint = void 0, this._requestSession = void 0, this._session = void 0,
|
|
3451
|
+
return this._breadcrumbs = [], this._tags = {}, this._extra = {}, this._user = {}, this._contexts = {}, this._level = void 0, this._transactionName = void 0, this._fingerprint = void 0, this._requestSession = void 0, this._session = void 0, gn(this, void 0), this._attachments = [], this.setPropagationContext({ traceId: pn() }), this._notifyScopeListeners(), this;
|
|
3429
3452
|
}
|
|
3430
3453
|
/**
|
|
3431
3454
|
* @inheritDoc
|
|
3432
3455
|
*/
|
|
3433
3456
|
addBreadcrumb(t, n) {
|
|
3434
|
-
const r = typeof n == "number" ? n :
|
|
3457
|
+
const r = typeof n == "number" ? n : lo;
|
|
3435
3458
|
if (r <= 0)
|
|
3436
3459
|
return this;
|
|
3437
3460
|
const o = {
|
|
3438
|
-
timestamp:
|
|
3461
|
+
timestamp: ct(),
|
|
3439
3462
|
...t
|
|
3440
3463
|
};
|
|
3441
3464
|
return this._breadcrumbs.push(o), this._breadcrumbs.length > r && (this._breadcrumbs = this._breadcrumbs.slice(-r), this._client && this._client.recordDroppedEvent("buffer_overflow", "log_item")), this._notifyScopeListeners(), this;
|
|
@@ -3479,14 +3502,14 @@ class Mt {
|
|
|
3479
3502
|
propagationContext: this._propagationContext,
|
|
3480
3503
|
sdkProcessingMetadata: this._sdkProcessingMetadata,
|
|
3481
3504
|
transactionName: this._transactionName,
|
|
3482
|
-
span:
|
|
3505
|
+
span: yn(this)
|
|
3483
3506
|
};
|
|
3484
3507
|
}
|
|
3485
3508
|
/**
|
|
3486
3509
|
* @inheritDoc
|
|
3487
3510
|
*/
|
|
3488
3511
|
setSDKProcessingMetadata(t) {
|
|
3489
|
-
return this._sdkProcessingMetadata =
|
|
3512
|
+
return this._sdkProcessingMetadata = ut(this._sdkProcessingMetadata, t, 2), this;
|
|
3490
3513
|
}
|
|
3491
3514
|
/**
|
|
3492
3515
|
* @inheritDoc
|
|
@@ -3494,7 +3517,7 @@ class Mt {
|
|
|
3494
3517
|
setPropagationContext(t) {
|
|
3495
3518
|
return this._propagationContext = {
|
|
3496
3519
|
// eslint-disable-next-line deprecation/deprecation
|
|
3497
|
-
spanId:
|
|
3520
|
+
spanId: Bt(),
|
|
3498
3521
|
...t
|
|
3499
3522
|
}, this;
|
|
3500
3523
|
}
|
|
@@ -3559,19 +3582,19 @@ class Mt {
|
|
|
3559
3582
|
}), this._notifyingListeners = !1);
|
|
3560
3583
|
}
|
|
3561
3584
|
}
|
|
3562
|
-
const
|
|
3563
|
-
function lo() {
|
|
3564
|
-
return nt("defaultCurrentScope", () => new ce());
|
|
3565
|
-
}
|
|
3585
|
+
const ue = xt;
|
|
3566
3586
|
function Ao() {
|
|
3567
|
-
return
|
|
3587
|
+
return rt("defaultCurrentScope", () => new ue());
|
|
3568
3588
|
}
|
|
3569
|
-
|
|
3589
|
+
function fo() {
|
|
3590
|
+
return rt("defaultIsolationScope", () => new ue());
|
|
3591
|
+
}
|
|
3592
|
+
class ho {
|
|
3570
3593
|
constructor(t, n) {
|
|
3571
3594
|
let r;
|
|
3572
|
-
t ? r = t : r = new
|
|
3595
|
+
t ? r = t : r = new ue();
|
|
3573
3596
|
let o;
|
|
3574
|
-
n ? o = n : o = new
|
|
3597
|
+
n ? o = n : o = new ue(), this._stack = [{ scope: r }], this._isolationScope = o;
|
|
3575
3598
|
}
|
|
3576
3599
|
/**
|
|
3577
3600
|
* Fork a scope for the stack.
|
|
@@ -3584,7 +3607,7 @@ class fo {
|
|
|
3584
3607
|
} catch (o) {
|
|
3585
3608
|
throw this._popScope(), o;
|
|
3586
3609
|
}
|
|
3587
|
-
return
|
|
3610
|
+
return it(r) ? r.then(
|
|
3588
3611
|
(o) => (this._popScope(), o),
|
|
3589
3612
|
(o) => {
|
|
3590
3613
|
throw this._popScope(), o;
|
|
@@ -3632,49 +3655,49 @@ class fo {
|
|
|
3632
3655
|
return this._stack.length <= 1 ? !1 : !!this._stack.pop();
|
|
3633
3656
|
}
|
|
3634
3657
|
}
|
|
3635
|
-
function
|
|
3636
|
-
const e =
|
|
3637
|
-
return t.stack = t.stack || new
|
|
3658
|
+
function ve() {
|
|
3659
|
+
const e = Nt(), t = Dt(e);
|
|
3660
|
+
return t.stack = t.stack || new ho(Ao(), fo());
|
|
3638
3661
|
}
|
|
3639
|
-
function
|
|
3640
|
-
return
|
|
3662
|
+
function po(e) {
|
|
3663
|
+
return ve().withScope(e);
|
|
3641
3664
|
}
|
|
3642
|
-
function
|
|
3643
|
-
const n =
|
|
3665
|
+
function go(e, t) {
|
|
3666
|
+
const n = ve();
|
|
3644
3667
|
return n.withScope(() => (n.getStackTop().scope = e, t(e)));
|
|
3645
3668
|
}
|
|
3646
|
-
function
|
|
3647
|
-
return
|
|
3669
|
+
function mn(e) {
|
|
3670
|
+
return ve().withScope(() => e(ve().getIsolationScope()));
|
|
3648
3671
|
}
|
|
3649
|
-
function
|
|
3672
|
+
function yo() {
|
|
3650
3673
|
return {
|
|
3651
|
-
withIsolationScope:
|
|
3652
|
-
withScope:
|
|
3653
|
-
withSetScope:
|
|
3654
|
-
withSetIsolationScope: (e, t) =>
|
|
3655
|
-
getCurrentScope: () =>
|
|
3656
|
-
getIsolationScope: () =>
|
|
3674
|
+
withIsolationScope: mn,
|
|
3675
|
+
withScope: po,
|
|
3676
|
+
withSetScope: go,
|
|
3677
|
+
withSetIsolationScope: (e, t) => mn(t),
|
|
3678
|
+
getCurrentScope: () => ve().getScope(),
|
|
3679
|
+
getIsolationScope: () => ve().getIsolationScope()
|
|
3657
3680
|
};
|
|
3658
3681
|
}
|
|
3659
|
-
function
|
|
3660
|
-
const t =
|
|
3661
|
-
return t.acs ? t.acs :
|
|
3662
|
-
}
|
|
3663
|
-
function Vn() {
|
|
3664
|
-
const e = Ot();
|
|
3665
|
-
return Yn(e).getCurrentScope();
|
|
3682
|
+
function Vn(e) {
|
|
3683
|
+
const t = Dt(e);
|
|
3684
|
+
return t.acs ? t.acs : yo();
|
|
3666
3685
|
}
|
|
3667
|
-
function
|
|
3668
|
-
const e =
|
|
3669
|
-
return
|
|
3686
|
+
function Zn() {
|
|
3687
|
+
const e = Nt();
|
|
3688
|
+
return Vn(e).getCurrentScope();
|
|
3670
3689
|
}
|
|
3671
3690
|
function mo() {
|
|
3672
|
-
|
|
3691
|
+
const e = Nt();
|
|
3692
|
+
return Vn(e).getIsolationScope();
|
|
3673
3693
|
}
|
|
3674
|
-
function
|
|
3675
|
-
return
|
|
3694
|
+
function Co() {
|
|
3695
|
+
return rt("globalScope", () => new ue());
|
|
3676
3696
|
}
|
|
3677
|
-
function
|
|
3697
|
+
function Ut() {
|
|
3698
|
+
return Zn().getClient();
|
|
3699
|
+
}
|
|
3700
|
+
function bo(e) {
|
|
3678
3701
|
const t = e.getPropagationContext(), { traceId: n, spanId: r, parentSpanId: o } = t;
|
|
3679
3702
|
return V({
|
|
3680
3703
|
trace_id: n,
|
|
@@ -3682,9 +3705,9 @@ function Co(e) {
|
|
|
3682
3705
|
parent_span_id: o
|
|
3683
3706
|
});
|
|
3684
3707
|
}
|
|
3685
|
-
const
|
|
3686
|
-
function
|
|
3687
|
-
const t = e[
|
|
3708
|
+
const Eo = "_sentryMetrics";
|
|
3709
|
+
function vo(e) {
|
|
3710
|
+
const t = e[Eo];
|
|
3688
3711
|
if (!t)
|
|
3689
3712
|
return;
|
|
3690
3713
|
const n = {};
|
|
@@ -3692,14 +3715,14 @@ function Eo(e) {
|
|
|
3692
3715
|
(n[r] || (n[r] = [])).push(V(o));
|
|
3693
3716
|
return n;
|
|
3694
3717
|
}
|
|
3695
|
-
const
|
|
3696
|
-
function
|
|
3697
|
-
const t =
|
|
3718
|
+
const Io = "sentry.source", Bo = "sentry.sample_rate", So = "sentry.op", _o = "sentry.origin", Qo = 0, ko = 1, Po = "sentry-", wo = /^sentry-/;
|
|
3719
|
+
function To(e) {
|
|
3720
|
+
const t = Lo(e);
|
|
3698
3721
|
if (!t)
|
|
3699
3722
|
return;
|
|
3700
3723
|
const n = Object.entries(t).reduce((r, [o, i]) => {
|
|
3701
|
-
if (o.match(
|
|
3702
|
-
const c = o.slice(
|
|
3724
|
+
if (o.match(wo)) {
|
|
3725
|
+
const c = o.slice(Po.length);
|
|
3703
3726
|
r[c] = i;
|
|
3704
3727
|
}
|
|
3705
3728
|
return r;
|
|
@@ -3707,40 +3730,40 @@ function wo(e) {
|
|
|
3707
3730
|
if (Object.keys(n).length > 0)
|
|
3708
3731
|
return n;
|
|
3709
3732
|
}
|
|
3710
|
-
function
|
|
3711
|
-
if (!(!e || !
|
|
3733
|
+
function Lo(e) {
|
|
3734
|
+
if (!(!e || !zn(e) && !Array.isArray(e)))
|
|
3712
3735
|
return Array.isArray(e) ? e.reduce((t, n) => {
|
|
3713
|
-
const r =
|
|
3736
|
+
const r = Cn(n);
|
|
3714
3737
|
return Object.entries(r).forEach(([o, i]) => {
|
|
3715
3738
|
t[o] = i;
|
|
3716
3739
|
}), t;
|
|
3717
|
-
}, {}) :
|
|
3740
|
+
}, {}) : Cn(e);
|
|
3718
3741
|
}
|
|
3719
|
-
function
|
|
3742
|
+
function Cn(e) {
|
|
3720
3743
|
return e.split(",").map((t) => t.split("=").map((n) => decodeURIComponent(n.trim()))).reduce((t, [n, r]) => (n && r && (t[n] = r), t), {});
|
|
3721
3744
|
}
|
|
3722
|
-
const
|
|
3723
|
-
let
|
|
3724
|
-
function
|
|
3725
|
-
const { spanId: t, traceId: n, isRemote: r } = e.spanContext(), o = r ? t :
|
|
3745
|
+
const Ro = 1;
|
|
3746
|
+
let bn = !1;
|
|
3747
|
+
function Oo(e) {
|
|
3748
|
+
const { spanId: t, traceId: n, isRemote: r } = e.spanContext(), o = r ? t : Ft(e).parent_span_id, i = r ? Bt() : t;
|
|
3726
3749
|
return V({
|
|
3727
3750
|
parent_span_id: o,
|
|
3728
3751
|
span_id: i,
|
|
3729
3752
|
trace_id: n
|
|
3730
3753
|
});
|
|
3731
3754
|
}
|
|
3732
|
-
function bn(e) {
|
|
3733
|
-
return typeof e == "number" ? En(e) : Array.isArray(e) ? e[0] + e[1] / 1e9 : e instanceof Date ? En(e.getTime()) : Wn();
|
|
3734
|
-
}
|
|
3735
3755
|
function En(e) {
|
|
3756
|
+
return typeof e == "number" ? vn(e) : Array.isArray(e) ? e[0] + e[1] / 1e9 : e instanceof Date ? vn(e.getTime()) : Yn();
|
|
3757
|
+
}
|
|
3758
|
+
function vn(e) {
|
|
3736
3759
|
return e > 9999999999 ? e / 1e3 : e;
|
|
3737
3760
|
}
|
|
3738
|
-
function
|
|
3739
|
-
if (
|
|
3761
|
+
function Ft(e) {
|
|
3762
|
+
if (Do(e))
|
|
3740
3763
|
return e.getSpanJSON();
|
|
3741
3764
|
try {
|
|
3742
3765
|
const { spanId: t, traceId: n } = e.spanContext();
|
|
3743
|
-
if (
|
|
3766
|
+
if (No(e)) {
|
|
3744
3767
|
const { attributes: r, startTime: o, name: i, endTime: c, parentSpanId: u, status: l } = e;
|
|
3745
3768
|
return V({
|
|
3746
3769
|
span_id: t,
|
|
@@ -3748,13 +3771,13 @@ function Ut(e) {
|
|
|
3748
3771
|
data: r,
|
|
3749
3772
|
description: i,
|
|
3750
3773
|
parent_span_id: u,
|
|
3751
|
-
start_timestamp:
|
|
3774
|
+
start_timestamp: En(o),
|
|
3752
3775
|
// This is [0,0] by default in OTEL, in which case we want to interpret this as no end time
|
|
3753
|
-
timestamp:
|
|
3754
|
-
status:
|
|
3755
|
-
op: r[
|
|
3756
|
-
origin: r[
|
|
3757
|
-
_metrics_summary:
|
|
3776
|
+
timestamp: En(c) || void 0,
|
|
3777
|
+
status: xo(l),
|
|
3778
|
+
op: r[So],
|
|
3779
|
+
origin: r[_o],
|
|
3780
|
+
_metrics_summary: vo(e)
|
|
3758
3781
|
});
|
|
3759
3782
|
}
|
|
3760
3783
|
return {
|
|
@@ -3765,68 +3788,68 @@ function Ut(e) {
|
|
|
3765
3788
|
return {};
|
|
3766
3789
|
}
|
|
3767
3790
|
}
|
|
3768
|
-
function
|
|
3791
|
+
function No(e) {
|
|
3769
3792
|
const t = e;
|
|
3770
3793
|
return !!t.attributes && !!t.startTime && !!t.name && !!t.endTime && !!t.status;
|
|
3771
3794
|
}
|
|
3772
|
-
function
|
|
3795
|
+
function Do(e) {
|
|
3773
3796
|
return typeof e.getSpanJSON == "function";
|
|
3774
3797
|
}
|
|
3775
|
-
function
|
|
3798
|
+
function Mo(e) {
|
|
3776
3799
|
const { traceFlags: t } = e.spanContext();
|
|
3777
|
-
return t ===
|
|
3800
|
+
return t === Ro;
|
|
3778
3801
|
}
|
|
3779
|
-
function
|
|
3780
|
-
if (!(!e || e.code ===
|
|
3781
|
-
return e.code ===
|
|
3802
|
+
function xo(e) {
|
|
3803
|
+
if (!(!e || e.code === Qo))
|
|
3804
|
+
return e.code === ko ? "ok" : e.message || "unknown_error";
|
|
3782
3805
|
}
|
|
3783
|
-
const
|
|
3784
|
-
function
|
|
3785
|
-
return e[
|
|
3806
|
+
const Uo = "_sentryRootSpan";
|
|
3807
|
+
function $n(e) {
|
|
3808
|
+
return e[Uo] || e;
|
|
3786
3809
|
}
|
|
3787
|
-
function
|
|
3788
|
-
|
|
3810
|
+
function Fo() {
|
|
3811
|
+
bn || (ot(() => {
|
|
3789
3812
|
console.warn(
|
|
3790
3813
|
"[Sentry] Deprecation warning: Returning null from `beforeSendSpan` will be disallowed from SDK version 9.0.0 onwards. The callback will only support mutating spans. To drop certain spans, configure the respective integrations directly."
|
|
3791
3814
|
);
|
|
3792
|
-
}),
|
|
3815
|
+
}), bn = !0);
|
|
3793
3816
|
}
|
|
3794
|
-
function
|
|
3817
|
+
function Xo(e) {
|
|
3795
3818
|
if (typeof __SENTRY_TRACING__ == "boolean" && !__SENTRY_TRACING__)
|
|
3796
3819
|
return !1;
|
|
3797
|
-
const t =
|
|
3820
|
+
const t = Ut(), n = t && t.getOptions();
|
|
3798
3821
|
return !!n && (n.enableTracing || "tracesSampleRate" in n || "tracesSampler" in n);
|
|
3799
3822
|
}
|
|
3800
|
-
const
|
|
3801
|
-
function
|
|
3823
|
+
const er = "production", Ho = "_frozenDsc";
|
|
3824
|
+
function tr(e, t) {
|
|
3802
3825
|
const n = t.getOptions(), { publicKey: r } = t.getDsn() || {}, o = V({
|
|
3803
|
-
environment: n.environment ||
|
|
3826
|
+
environment: n.environment || er,
|
|
3804
3827
|
release: n.release,
|
|
3805
3828
|
public_key: r,
|
|
3806
3829
|
trace_id: e
|
|
3807
3830
|
});
|
|
3808
3831
|
return t.emit("createDsc", o), o;
|
|
3809
3832
|
}
|
|
3810
|
-
function
|
|
3833
|
+
function jo(e, t) {
|
|
3811
3834
|
const n = t.getPropagationContext();
|
|
3812
|
-
return n.dsc ||
|
|
3835
|
+
return n.dsc || tr(n.traceId, e);
|
|
3813
3836
|
}
|
|
3814
|
-
function
|
|
3815
|
-
const t =
|
|
3837
|
+
function Jo(e) {
|
|
3838
|
+
const t = Ut();
|
|
3816
3839
|
if (!t)
|
|
3817
3840
|
return {};
|
|
3818
|
-
const n =
|
|
3841
|
+
const n = $n(e), r = n[Ho];
|
|
3819
3842
|
if (r)
|
|
3820
3843
|
return r;
|
|
3821
|
-
const o = n.spanContext().traceState, i = o && o.get("sentry.dsc"), c = i &&
|
|
3844
|
+
const o = n.spanContext().traceState, i = o && o.get("sentry.dsc"), c = i && To(i);
|
|
3822
3845
|
if (c)
|
|
3823
3846
|
return c;
|
|
3824
|
-
const u =
|
|
3847
|
+
const u = tr(e.spanContext().traceId, t), l = Ft(n), h = l.data || {}, y = h[Bo];
|
|
3825
3848
|
y != null && (u.sample_rate = `${y}`);
|
|
3826
|
-
const m = h[
|
|
3827
|
-
return m !== "url" && b && (u.transaction = b),
|
|
3849
|
+
const m = h[Io], b = l.description;
|
|
3850
|
+
return m !== "url" && b && (u.transaction = b), Xo() && (u.sampled = String(Mo(n))), t.emit("createDsc", u, n), u;
|
|
3828
3851
|
}
|
|
3829
|
-
function
|
|
3852
|
+
function qo(e) {
|
|
3830
3853
|
if (typeof e == "boolean")
|
|
3831
3854
|
return Number(e);
|
|
3832
3855
|
const t = typeof e == "string" ? parseFloat(e) : e;
|
|
@@ -3840,18 +3863,18 @@ function Jo(e) {
|
|
|
3840
3863
|
}
|
|
3841
3864
|
return t;
|
|
3842
3865
|
}
|
|
3843
|
-
const
|
|
3844
|
-
function
|
|
3866
|
+
const zo = /^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;
|
|
3867
|
+
function Ko(e) {
|
|
3845
3868
|
return e === "http" || e === "https";
|
|
3846
3869
|
}
|
|
3847
|
-
function
|
|
3870
|
+
function lt(e, t = !1) {
|
|
3848
3871
|
const { host: n, path: r, pass: o, port: i, projectId: c, protocol: u, publicKey: l } = e;
|
|
3849
3872
|
return `${u}://${l}${t && o ? `:${o}` : ""}@${n}${i ? `:${i}` : ""}/${r && `${r}/`}${c}`;
|
|
3850
3873
|
}
|
|
3851
|
-
function
|
|
3852
|
-
const t =
|
|
3874
|
+
function Go(e) {
|
|
3875
|
+
const t = zo.exec(e);
|
|
3853
3876
|
if (!t) {
|
|
3854
|
-
|
|
3877
|
+
ot(() => {
|
|
3855
3878
|
console.error(`Invalid Sentry Dsn: ${e}`);
|
|
3856
3879
|
});
|
|
3857
3880
|
return;
|
|
@@ -3863,9 +3886,9 @@ function Ko(e) {
|
|
|
3863
3886
|
const m = h.match(/^\d+/);
|
|
3864
3887
|
m && (h = m[0]);
|
|
3865
3888
|
}
|
|
3866
|
-
return
|
|
3889
|
+
return nr({ host: i, pass: o, path: l, projectId: h, port: c, protocol: n, publicKey: r });
|
|
3867
3890
|
}
|
|
3868
|
-
function
|
|
3891
|
+
function nr(e) {
|
|
3869
3892
|
return {
|
|
3870
3893
|
protocol: e.protocol,
|
|
3871
3894
|
publicKey: e.publicKey || "",
|
|
@@ -3876,18 +3899,18 @@ function tr(e) {
|
|
|
3876
3899
|
projectId: e.projectId
|
|
3877
3900
|
};
|
|
3878
3901
|
}
|
|
3879
|
-
function
|
|
3880
|
-
if (!
|
|
3902
|
+
function Wo(e) {
|
|
3903
|
+
if (!Ot)
|
|
3881
3904
|
return !0;
|
|
3882
3905
|
const { port: t, projectId: n, protocol: r } = e;
|
|
3883
|
-
return ["protocol", "publicKey", "host", "projectId"].find((c) => e[c] ? !1 : (N.error(`Invalid Sentry Dsn: ${c} missing`), !0)) ? !1 : n.match(/^\d+$/) ?
|
|
3906
|
+
return ["protocol", "publicKey", "host", "projectId"].find((c) => e[c] ? !1 : (N.error(`Invalid Sentry Dsn: ${c} missing`), !0)) ? !1 : n.match(/^\d+$/) ? Ko(r) ? t && isNaN(parseInt(t, 10)) ? (N.error(`Invalid Sentry Dsn: Invalid port ${t}`), !1) : !0 : (N.error(`Invalid Sentry Dsn: Invalid protocol ${r}`), !1) : (N.error(`Invalid Sentry Dsn: Invalid projectId ${n}`), !1);
|
|
3884
3907
|
}
|
|
3885
|
-
function
|
|
3886
|
-
const t = typeof e == "string" ?
|
|
3887
|
-
if (!(!t || !
|
|
3908
|
+
function Yo(e) {
|
|
3909
|
+
const t = typeof e == "string" ? Go(e) : nr(e);
|
|
3910
|
+
if (!(!t || !Wo(t)))
|
|
3888
3911
|
return t;
|
|
3889
3912
|
}
|
|
3890
|
-
function
|
|
3913
|
+
function Vo() {
|
|
3891
3914
|
const e = typeof WeakSet == "function", t = e ? /* @__PURE__ */ new WeakSet() : [];
|
|
3892
3915
|
function n(o) {
|
|
3893
3916
|
if (e)
|
|
@@ -3911,21 +3934,21 @@ function Yo() {
|
|
|
3911
3934
|
}
|
|
3912
3935
|
function oe(e, t = 100, n = 1 / 0) {
|
|
3913
3936
|
try {
|
|
3914
|
-
return
|
|
3937
|
+
return _t("", e, t, n);
|
|
3915
3938
|
} catch (r) {
|
|
3916
3939
|
return { ERROR: `**non-serializable** (${r})` };
|
|
3917
3940
|
}
|
|
3918
3941
|
}
|
|
3919
|
-
function
|
|
3942
|
+
function rr(e, t = 3, n = 100 * 1024) {
|
|
3920
3943
|
const r = oe(e, t);
|
|
3921
|
-
return
|
|
3944
|
+
return ts(r) > n ? rr(e, t - 1, n) : r;
|
|
3922
3945
|
}
|
|
3923
|
-
function
|
|
3946
|
+
function _t(e, t, n = 1 / 0, r = 1 / 0, o = Vo()) {
|
|
3924
3947
|
const [i, c] = o;
|
|
3925
3948
|
if (t == null || // this matches null and undefined -> eqeq not eqeqeq
|
|
3926
3949
|
["boolean", "string"].includes(typeof t) || typeof t == "number" && Number.isFinite(t))
|
|
3927
3950
|
return t;
|
|
3928
|
-
const u =
|
|
3951
|
+
const u = Zo(e, t);
|
|
3929
3952
|
if (!u.startsWith("[object "))
|
|
3930
3953
|
return u;
|
|
3931
3954
|
if (t.__sentry_skip_normalization__)
|
|
@@ -3939,12 +3962,12 @@ function St(e, t, n = 1 / 0, r = 1 / 0, o = Yo()) {
|
|
|
3939
3962
|
if (h && typeof h.toJSON == "function")
|
|
3940
3963
|
try {
|
|
3941
3964
|
const I = h.toJSON();
|
|
3942
|
-
return
|
|
3965
|
+
return _t("", I, l - 1, r, o);
|
|
3943
3966
|
} catch {
|
|
3944
3967
|
}
|
|
3945
3968
|
const y = Array.isArray(t) ? [] : {};
|
|
3946
3969
|
let m = 0;
|
|
3947
|
-
const b =
|
|
3970
|
+
const b = Gn(t);
|
|
3948
3971
|
for (const I in b) {
|
|
3949
3972
|
if (!Object.prototype.hasOwnProperty.call(b, I))
|
|
3950
3973
|
continue;
|
|
@@ -3953,11 +3976,11 @@ function St(e, t, n = 1 / 0, r = 1 / 0, o = Yo()) {
|
|
|
3953
3976
|
break;
|
|
3954
3977
|
}
|
|
3955
3978
|
const B = b[I];
|
|
3956
|
-
y[I] =
|
|
3979
|
+
y[I] = _t(I, B, l - 1, r, o), m++;
|
|
3957
3980
|
}
|
|
3958
3981
|
return c(t), y;
|
|
3959
3982
|
}
|
|
3960
|
-
function
|
|
3983
|
+
function Zo(e, t) {
|
|
3961
3984
|
try {
|
|
3962
3985
|
if (e === "domain" && t && typeof t == "object" && t._events)
|
|
3963
3986
|
return "[Domain]";
|
|
@@ -3969,42 +3992,42 @@ function Vo(e, t) {
|
|
|
3969
3992
|
return "[Window]";
|
|
3970
3993
|
if (typeof document < "u" && t === document)
|
|
3971
3994
|
return "[Document]";
|
|
3972
|
-
if (
|
|
3995
|
+
if (eo(t))
|
|
3973
3996
|
return "[VueViewModel]";
|
|
3974
|
-
if (
|
|
3997
|
+
if ($r(t))
|
|
3975
3998
|
return "[SyntheticEvent]";
|
|
3976
3999
|
if (typeof t == "number" && !Number.isFinite(t))
|
|
3977
4000
|
return `[${t}]`;
|
|
3978
4001
|
if (typeof t == "function")
|
|
3979
|
-
return `[Function: ${
|
|
4002
|
+
return `[Function: ${Wr(t)}]`;
|
|
3980
4003
|
if (typeof t == "symbol")
|
|
3981
4004
|
return `[${String(t)}]`;
|
|
3982
4005
|
if (typeof t == "bigint")
|
|
3983
4006
|
return `[BigInt: ${String(t)}]`;
|
|
3984
|
-
const n =
|
|
4007
|
+
const n = $o(t);
|
|
3985
4008
|
return /^HTML(\w*)Element$/.test(n) ? `[HTMLElement: ${n}]` : `[object ${n}]`;
|
|
3986
4009
|
} catch (n) {
|
|
3987
4010
|
return `**non-serializable** (${n})`;
|
|
3988
4011
|
}
|
|
3989
4012
|
}
|
|
3990
|
-
function
|
|
4013
|
+
function $o(e) {
|
|
3991
4014
|
const t = Object.getPrototypeOf(e);
|
|
3992
4015
|
return t ? t.constructor.name : "null prototype";
|
|
3993
4016
|
}
|
|
3994
|
-
function
|
|
4017
|
+
function es(e) {
|
|
3995
4018
|
return ~-encodeURI(e).split(/%..|./).length;
|
|
3996
4019
|
}
|
|
3997
|
-
function
|
|
3998
|
-
return
|
|
4020
|
+
function ts(e) {
|
|
4021
|
+
return es(JSON.stringify(e));
|
|
3999
4022
|
}
|
|
4000
|
-
function
|
|
4023
|
+
function Te(e, t = []) {
|
|
4001
4024
|
return [e, t];
|
|
4002
4025
|
}
|
|
4003
|
-
function
|
|
4026
|
+
function ns(e, t) {
|
|
4004
4027
|
const [n, r] = e;
|
|
4005
4028
|
return [n, [...r, t]];
|
|
4006
4029
|
}
|
|
4007
|
-
function
|
|
4030
|
+
function In(e, t) {
|
|
4008
4031
|
const n = e[1];
|
|
4009
4032
|
for (const r of n) {
|
|
4010
4033
|
const o = r[0].type;
|
|
@@ -4013,14 +4036,14 @@ function vn(e, t) {
|
|
|
4013
4036
|
}
|
|
4014
4037
|
return !1;
|
|
4015
4038
|
}
|
|
4016
|
-
function
|
|
4039
|
+
function Qt(e) {
|
|
4017
4040
|
return j.__SENTRY__ && j.__SENTRY__.encodePolyfill ? j.__SENTRY__.encodePolyfill(e) : new TextEncoder().encode(e);
|
|
4018
4041
|
}
|
|
4019
|
-
function
|
|
4042
|
+
function rs(e) {
|
|
4020
4043
|
const [t, n] = e;
|
|
4021
4044
|
let r = JSON.stringify(t);
|
|
4022
4045
|
function o(i) {
|
|
4023
|
-
typeof r == "string" ? r = typeof i == "string" ? r + i : [
|
|
4046
|
+
typeof r == "string" ? r = typeof i == "string" ? r + i : [Qt(r), i] : r.push(typeof i == "string" ? Qt(i) : i);
|
|
4024
4047
|
}
|
|
4025
4048
|
for (const i of n) {
|
|
4026
4049
|
const [c, u] = i;
|
|
@@ -4038,17 +4061,17 @@ ${JSON.stringify(c)}
|
|
|
4038
4061
|
o(l);
|
|
4039
4062
|
}
|
|
4040
4063
|
}
|
|
4041
|
-
return typeof r == "string" ? r :
|
|
4064
|
+
return typeof r == "string" ? r : os(r);
|
|
4042
4065
|
}
|
|
4043
|
-
function
|
|
4066
|
+
function os(e) {
|
|
4044
4067
|
const t = e.reduce((o, i) => o + i.length, 0), n = new Uint8Array(t);
|
|
4045
4068
|
let r = 0;
|
|
4046
4069
|
for (const o of e)
|
|
4047
4070
|
n.set(o, r), r += o.length;
|
|
4048
4071
|
return n;
|
|
4049
4072
|
}
|
|
4050
|
-
function
|
|
4051
|
-
const t = typeof e.data == "string" ?
|
|
4073
|
+
function ss(e) {
|
|
4074
|
+
const t = typeof e.data == "string" ? Qt(e.data) : e.data;
|
|
4052
4075
|
return [
|
|
4053
4076
|
V({
|
|
4054
4077
|
type: "attachment",
|
|
@@ -4060,7 +4083,7 @@ function os(e) {
|
|
|
4060
4083
|
t
|
|
4061
4084
|
];
|
|
4062
4085
|
}
|
|
4063
|
-
const
|
|
4086
|
+
const is = {
|
|
4064
4087
|
session: "session",
|
|
4065
4088
|
sessions: "session",
|
|
4066
4089
|
attachment: "attachment",
|
|
@@ -4078,64 +4101,64 @@ const ss = {
|
|
|
4078
4101
|
statsd: "metric_bucket",
|
|
4079
4102
|
raw_security: "security"
|
|
4080
4103
|
};
|
|
4081
|
-
function
|
|
4082
|
-
return
|
|
4104
|
+
function Bn(e) {
|
|
4105
|
+
return is[e];
|
|
4083
4106
|
}
|
|
4084
|
-
function
|
|
4107
|
+
function or(e) {
|
|
4085
4108
|
if (!e || !e.sdk)
|
|
4086
4109
|
return;
|
|
4087
4110
|
const { name: t, version: n } = e.sdk;
|
|
4088
4111
|
return { name: t, version: n };
|
|
4089
4112
|
}
|
|
4090
|
-
function
|
|
4113
|
+
function as(e, t, n, r) {
|
|
4091
4114
|
const o = e.sdkProcessingMetadata && e.sdkProcessingMetadata.dynamicSamplingContext;
|
|
4092
4115
|
return {
|
|
4093
4116
|
event_id: e.event_id,
|
|
4094
4117
|
sent_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
4095
4118
|
...t && { sdk: t },
|
|
4096
|
-
...!!n && r && { dsn:
|
|
4119
|
+
...!!n && r && { dsn: lt(r) },
|
|
4097
4120
|
...o && {
|
|
4098
4121
|
trace: V({ ...o })
|
|
4099
4122
|
}
|
|
4100
4123
|
};
|
|
4101
4124
|
}
|
|
4102
|
-
function
|
|
4125
|
+
function cs(e, t) {
|
|
4103
4126
|
return t && (e.sdk = e.sdk || {}, e.sdk.name = e.sdk.name || t.name, e.sdk.version = e.sdk.version || t.version, e.sdk.integrations = [...e.sdk.integrations || [], ...t.integrations || []], e.sdk.packages = [...e.sdk.packages || [], ...t.packages || []]), e;
|
|
4104
4127
|
}
|
|
4105
|
-
function
|
|
4106
|
-
const o =
|
|
4128
|
+
function us(e, t, n, r) {
|
|
4129
|
+
const o = or(n), i = {
|
|
4107
4130
|
sent_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
4108
4131
|
...o && { sdk: o },
|
|
4109
|
-
...!!r && t && { dsn:
|
|
4132
|
+
...!!r && t && { dsn: lt(t) }
|
|
4110
4133
|
}, c = "aggregates" in e ? [{ type: "sessions" }, e] : [{ type: "session" }, e.toJSON()];
|
|
4111
|
-
return
|
|
4134
|
+
return Te(i, [c]);
|
|
4112
4135
|
}
|
|
4113
|
-
function
|
|
4114
|
-
const o =
|
|
4115
|
-
|
|
4116
|
-
const c =
|
|
4117
|
-
return delete e.sdkProcessingMetadata,
|
|
4136
|
+
function ls(e, t, n, r) {
|
|
4137
|
+
const o = or(n), i = e.type && e.type !== "replay_event" ? e.type : "event";
|
|
4138
|
+
cs(e, n && n.sdk);
|
|
4139
|
+
const c = as(e, o, r, t);
|
|
4140
|
+
return delete e.sdkProcessingMetadata, Te(c, [[{ type: i }, e]]);
|
|
4118
4141
|
}
|
|
4119
|
-
function
|
|
4142
|
+
function kt(e, t, n, r = 0) {
|
|
4120
4143
|
return new W((o, i) => {
|
|
4121
4144
|
const c = e[r];
|
|
4122
4145
|
if (t === null || typeof c != "function")
|
|
4123
4146
|
o(t);
|
|
4124
4147
|
else {
|
|
4125
4148
|
const u = c({ ...t }, n);
|
|
4126
|
-
U && c.id && u === null && N.log(`Event processor "${c.id}" dropped event`),
|
|
4149
|
+
U && c.id && u === null && N.log(`Event processor "${c.id}" dropped event`), it(u) ? u.then((l) => kt(e, l, n, r + 1).then(o)).then(null, i) : kt(e, u, n, r + 1).then(o).then(null, i);
|
|
4127
4150
|
}
|
|
4128
4151
|
});
|
|
4129
4152
|
}
|
|
4130
|
-
let
|
|
4131
|
-
function
|
|
4153
|
+
let De, Sn, Me;
|
|
4154
|
+
function As(e) {
|
|
4132
4155
|
const t = j._sentryDebugIds;
|
|
4133
4156
|
if (!t)
|
|
4134
4157
|
return {};
|
|
4135
4158
|
const n = Object.keys(t);
|
|
4136
|
-
return
|
|
4137
|
-
|
|
4138
|
-
const i =
|
|
4159
|
+
return Me && n.length === Sn || (Sn = n.length, Me = n.reduce((r, o) => {
|
|
4160
|
+
De || (De = {});
|
|
4161
|
+
const i = De[o];
|
|
4139
4162
|
if (i)
|
|
4140
4163
|
r[i[0]] = i[1];
|
|
4141
4164
|
else {
|
|
@@ -4143,19 +4166,19 @@ function ls(e) {
|
|
|
4143
4166
|
for (let u = c.length - 1; u >= 0; u--) {
|
|
4144
4167
|
const l = c[u], h = l && l.filename, y = t[o];
|
|
4145
4168
|
if (h && y) {
|
|
4146
|
-
r[h] = y,
|
|
4169
|
+
r[h] = y, De[o] = [h, y];
|
|
4147
4170
|
break;
|
|
4148
4171
|
}
|
|
4149
4172
|
}
|
|
4150
4173
|
}
|
|
4151
4174
|
return r;
|
|
4152
|
-
}, {})),
|
|
4175
|
+
}, {})), Me;
|
|
4153
4176
|
}
|
|
4154
|
-
function
|
|
4177
|
+
function ds(e, t) {
|
|
4155
4178
|
const { fingerprint: n, span: r, breadcrumbs: o, sdkProcessingMetadata: i } = t;
|
|
4156
|
-
|
|
4179
|
+
fs(e, t), r && gs(e, r), ys(e, n), hs(e, o), ps(e, i);
|
|
4157
4180
|
}
|
|
4158
|
-
function
|
|
4181
|
+
function _n(e, t) {
|
|
4159
4182
|
const {
|
|
4160
4183
|
extra: n,
|
|
4161
4184
|
tags: r,
|
|
@@ -4171,12 +4194,12 @@ function Sn(e, t) {
|
|
|
4171
4194
|
transactionName: I,
|
|
4172
4195
|
span: B
|
|
4173
4196
|
} = t;
|
|
4174
|
-
|
|
4197
|
+
xe(e, "extra", n), xe(e, "tags", r), xe(e, "user", o), xe(e, "contexts", i), e.sdkProcessingMetadata = ut(e.sdkProcessingMetadata, u, 2), c && (e.level = c), I && (e.transactionName = I), B && (e.span = B), l.length && (e.breadcrumbs = [...e.breadcrumbs, ...l]), h.length && (e.fingerprint = [...e.fingerprint, ...h]), y.length && (e.eventProcessors = [...e.eventProcessors, ...y]), m.length && (e.attachments = [...e.attachments, ...m]), e.propagationContext = { ...e.propagationContext, ...b };
|
|
4175
4198
|
}
|
|
4176
|
-
function
|
|
4177
|
-
e[t] =
|
|
4199
|
+
function xe(e, t, n) {
|
|
4200
|
+
e[t] = ut(e[t], n, 1);
|
|
4178
4201
|
}
|
|
4179
|
-
function
|
|
4202
|
+
function fs(e, t) {
|
|
4180
4203
|
const { extra: n, tags: r, user: o, contexts: i, level: c, transactionName: u } = t, l = V(n);
|
|
4181
4204
|
l && Object.keys(l).length && (e.extra = { ...l, ...e.extra });
|
|
4182
4205
|
const h = V(r);
|
|
@@ -4186,67 +4209,67 @@ function ds(e, t) {
|
|
|
4186
4209
|
const m = V(i);
|
|
4187
4210
|
m && Object.keys(m).length && (e.contexts = { ...m, ...e.contexts }), c && (e.level = c), u && e.type !== "transaction" && (e.transaction = u);
|
|
4188
4211
|
}
|
|
4189
|
-
function
|
|
4212
|
+
function hs(e, t) {
|
|
4190
4213
|
const n = [...e.breadcrumbs || [], ...t];
|
|
4191
4214
|
e.breadcrumbs = n.length ? n : void 0;
|
|
4192
4215
|
}
|
|
4193
|
-
function
|
|
4216
|
+
function ps(e, t) {
|
|
4194
4217
|
e.sdkProcessingMetadata = {
|
|
4195
4218
|
...e.sdkProcessingMetadata,
|
|
4196
4219
|
...t
|
|
4197
4220
|
};
|
|
4198
4221
|
}
|
|
4199
|
-
function
|
|
4222
|
+
function gs(e, t) {
|
|
4200
4223
|
e.contexts = {
|
|
4201
|
-
trace:
|
|
4224
|
+
trace: Oo(t),
|
|
4202
4225
|
...e.contexts
|
|
4203
4226
|
}, e.sdkProcessingMetadata = {
|
|
4204
|
-
dynamicSamplingContext:
|
|
4227
|
+
dynamicSamplingContext: Jo(t),
|
|
4205
4228
|
...e.sdkProcessingMetadata
|
|
4206
4229
|
};
|
|
4207
|
-
const n =
|
|
4230
|
+
const n = $n(t), r = Ft(n).description;
|
|
4208
4231
|
r && !e.transaction && e.type === "transaction" && (e.transaction = r);
|
|
4209
4232
|
}
|
|
4210
|
-
function
|
|
4233
|
+
function ys(e, t) {
|
|
4211
4234
|
e.fingerprint = e.fingerprint ? Array.isArray(e.fingerprint) ? e.fingerprint : [e.fingerprint] : [], t && (e.fingerprint = e.fingerprint.concat(t)), e.fingerprint && !e.fingerprint.length && delete e.fingerprint;
|
|
4212
4235
|
}
|
|
4213
|
-
function
|
|
4236
|
+
function ms(e, t, n, r, o, i) {
|
|
4214
4237
|
const { normalizeDepth: c = 3, normalizeMaxBreadth: u = 1e3 } = e, l = {
|
|
4215
4238
|
...t,
|
|
4216
4239
|
event_id: t.event_id || n.event_id || te(),
|
|
4217
|
-
timestamp: t.timestamp ||
|
|
4240
|
+
timestamp: t.timestamp || ct()
|
|
4218
4241
|
}, h = n.integrations || e.integrations.map((S) => S.name);
|
|
4219
|
-
|
|
4220
|
-
const y =
|
|
4221
|
-
n.mechanism &&
|
|
4222
|
-
const m = o ? o.getEventProcessors() : [], b =
|
|
4242
|
+
Cs(l, e), vs(l, h), o && o.emit("applyFrameMetadata", t), t.type === void 0 && bs(l, e.stackParser);
|
|
4243
|
+
const y = Bs(r, n.captureContext);
|
|
4244
|
+
n.mechanism && Qe(l, n.mechanism);
|
|
4245
|
+
const m = o ? o.getEventProcessors() : [], b = Co().getScopeData();
|
|
4223
4246
|
if (i) {
|
|
4224
4247
|
const S = i.getScopeData();
|
|
4225
|
-
|
|
4248
|
+
_n(b, S);
|
|
4226
4249
|
}
|
|
4227
4250
|
if (y) {
|
|
4228
4251
|
const S = y.getScopeData();
|
|
4229
|
-
|
|
4252
|
+
_n(b, S);
|
|
4230
4253
|
}
|
|
4231
4254
|
const I = [...n.attachments || [], ...b.attachments];
|
|
4232
|
-
I.length && (n.attachments = I),
|
|
4255
|
+
I.length && (n.attachments = I), ds(l, b);
|
|
4233
4256
|
const B = [
|
|
4234
4257
|
...m,
|
|
4235
4258
|
// Run scope event processors _after_ all other processors
|
|
4236
4259
|
...b.eventProcessors
|
|
4237
4260
|
];
|
|
4238
|
-
return
|
|
4261
|
+
return kt(B, l, n).then((S) => (S && Es(S), typeof c == "number" && c > 0 ? Is(S, c, u) : S));
|
|
4239
4262
|
}
|
|
4240
|
-
function
|
|
4263
|
+
function Cs(e, t) {
|
|
4241
4264
|
const { environment: n, release: r, dist: o, maxValueLength: i = 250 } = t;
|
|
4242
|
-
e.environment = e.environment || n ||
|
|
4265
|
+
e.environment = e.environment || n || er, !e.release && r && (e.release = r), !e.dist && o && (e.dist = o), e.message && (e.message = _e(e.message, i));
|
|
4243
4266
|
const c = e.exception && e.exception.values && e.exception.values[0];
|
|
4244
|
-
c && c.value && (c.value =
|
|
4267
|
+
c && c.value && (c.value = _e(c.value, i));
|
|
4245
4268
|
const u = e.request;
|
|
4246
|
-
u && u.url && (u.url =
|
|
4269
|
+
u && u.url && (u.url = _e(u.url, i));
|
|
4247
4270
|
}
|
|
4248
|
-
function
|
|
4249
|
-
const n =
|
|
4271
|
+
function bs(e, t) {
|
|
4272
|
+
const n = As(t);
|
|
4250
4273
|
try {
|
|
4251
4274
|
e.exception.values.forEach((r) => {
|
|
4252
4275
|
r.stacktrace.frames.forEach((o) => {
|
|
@@ -4256,7 +4279,7 @@ function Cs(e, t) {
|
|
|
4256
4279
|
} catch {
|
|
4257
4280
|
}
|
|
4258
4281
|
}
|
|
4259
|
-
function
|
|
4282
|
+
function Es(e) {
|
|
4260
4283
|
const t = {};
|
|
4261
4284
|
try {
|
|
4262
4285
|
e.exception.values.forEach((r) => {
|
|
@@ -4278,10 +4301,10 @@ function bs(e) {
|
|
|
4278
4301
|
});
|
|
4279
4302
|
});
|
|
4280
4303
|
}
|
|
4281
|
-
function
|
|
4304
|
+
function vs(e, t) {
|
|
4282
4305
|
t.length > 0 && (e.sdk = e.sdk || {}, e.sdk.integrations = [...e.sdk.integrations || [], ...t]);
|
|
4283
4306
|
}
|
|
4284
|
-
function
|
|
4307
|
+
function Is(e, t, n) {
|
|
4285
4308
|
if (!e)
|
|
4286
4309
|
return null;
|
|
4287
4310
|
const r = {
|
|
@@ -4311,46 +4334,46 @@ function vs(e, t, n) {
|
|
|
4311
4334
|
}
|
|
4312
4335
|
}))), e.contexts && e.contexts.flags && r.contexts && (r.contexts.flags = oe(e.contexts.flags, 3, n)), r;
|
|
4313
4336
|
}
|
|
4314
|
-
function
|
|
4337
|
+
function Bs(e, t) {
|
|
4315
4338
|
if (!t)
|
|
4316
4339
|
return e;
|
|
4317
|
-
const n = e ? e.clone() : new
|
|
4340
|
+
const n = e ? e.clone() : new ue();
|
|
4318
4341
|
return n.update(t), n;
|
|
4319
4342
|
}
|
|
4320
|
-
const
|
|
4321
|
-
function
|
|
4343
|
+
const Ss = "7";
|
|
4344
|
+
function _s(e) {
|
|
4322
4345
|
const t = e.protocol ? `${e.protocol}:` : "", n = e.port ? `:${e.port}` : "";
|
|
4323
4346
|
return `${t}//${e.host}${n}${e.path ? `/${e.path}` : ""}/api/`;
|
|
4324
4347
|
}
|
|
4325
|
-
function
|
|
4326
|
-
return `${
|
|
4348
|
+
function Qs(e) {
|
|
4349
|
+
return `${_s(e)}${e.projectId}/envelope/`;
|
|
4327
4350
|
}
|
|
4328
|
-
function
|
|
4351
|
+
function ks(e, t) {
|
|
4329
4352
|
const n = {
|
|
4330
|
-
sentry_version:
|
|
4353
|
+
sentry_version: Ss
|
|
4331
4354
|
};
|
|
4332
4355
|
return e.publicKey && (n.sentry_key = e.publicKey), t && (n.sentry_client = `${t.name}/${t.version}`), new URLSearchParams(n).toString();
|
|
4333
4356
|
}
|
|
4334
|
-
function
|
|
4335
|
-
return t || `${
|
|
4357
|
+
function Ps(e, t, n) {
|
|
4358
|
+
return t || `${Qs(e)}?${ks(e, n)}`;
|
|
4336
4359
|
}
|
|
4337
|
-
const
|
|
4338
|
-
function
|
|
4360
|
+
const Qn = [];
|
|
4361
|
+
function ws(e, t) {
|
|
4339
4362
|
const n = {};
|
|
4340
4363
|
return t.forEach((r) => {
|
|
4341
|
-
r &&
|
|
4364
|
+
r && sr(e, r, n);
|
|
4342
4365
|
}), n;
|
|
4343
4366
|
}
|
|
4344
|
-
function
|
|
4367
|
+
function kn(e, t) {
|
|
4345
4368
|
for (const n of t)
|
|
4346
4369
|
n && n.afterAllSetup && n.afterAllSetup(e);
|
|
4347
4370
|
}
|
|
4348
|
-
function
|
|
4371
|
+
function sr(e, t, n) {
|
|
4349
4372
|
if (n[t.name]) {
|
|
4350
4373
|
U && N.log(`Integration skipped because it was already installed: ${t.name}`);
|
|
4351
4374
|
return;
|
|
4352
4375
|
}
|
|
4353
|
-
if (n[t.name] = t,
|
|
4376
|
+
if (n[t.name] = t, Qn.indexOf(t.name) === -1 && typeof t.setupOnce == "function" && (t.setupOnce(), Qn.push(t.name)), t.setup && typeof t.setup == "function" && t.setup(e), typeof t.preprocessEvent == "function") {
|
|
4354
4377
|
const r = t.preprocessEvent.bind(t);
|
|
4355
4378
|
e.on("preprocessEvent", (o, i) => r(o, i, e));
|
|
4356
4379
|
}
|
|
@@ -4362,23 +4385,23 @@ function or(e, t, n) {
|
|
|
4362
4385
|
}
|
|
4363
4386
|
U && N.log(`Integration installed: ${t.name}`);
|
|
4364
4387
|
}
|
|
4365
|
-
function
|
|
4388
|
+
function Ts(e, t, n) {
|
|
4366
4389
|
const r = [
|
|
4367
4390
|
{ type: "client_report" },
|
|
4368
4391
|
{
|
|
4369
|
-
timestamp:
|
|
4392
|
+
timestamp: ct(),
|
|
4370
4393
|
discarded_events: e
|
|
4371
4394
|
}
|
|
4372
4395
|
];
|
|
4373
|
-
return
|
|
4396
|
+
return Te(t ? { dsn: t } : {}, [r]);
|
|
4374
4397
|
}
|
|
4375
4398
|
class Y extends Error {
|
|
4376
4399
|
constructor(t, n = "warn") {
|
|
4377
4400
|
super(t), this.message = t, this.logLevel = n;
|
|
4378
4401
|
}
|
|
4379
4402
|
}
|
|
4380
|
-
const
|
|
4381
|
-
class
|
|
4403
|
+
const Pn = "Not capturing exception because it's already been captured.";
|
|
4404
|
+
class Ls {
|
|
4382
4405
|
/** Options passed to the SDK. */
|
|
4383
4406
|
/** The client Dsn, if specified in options. Without this Dsn, the SDK will be disabled. */
|
|
4384
4407
|
/** Array of set up integrations. */
|
|
@@ -4391,8 +4414,8 @@ class Ts {
|
|
|
4391
4414
|
* @param options Options for the client.
|
|
4392
4415
|
*/
|
|
4393
4416
|
constructor(t) {
|
|
4394
|
-
if (this._options = t, this._integrations = {}, this._numProcessing = 0, this._outcomes = {}, this._hooks = {}, this._eventProcessors = [], t.dsn ? this._dsn =
|
|
4395
|
-
const o =
|
|
4417
|
+
if (this._options = t, this._integrations = {}, this._numProcessing = 0, this._outcomes = {}, this._hooks = {}, this._eventProcessors = [], t.dsn ? this._dsn = Yo(t.dsn) : U && N.warn("No DSN provided, client will not send events."), this._dsn) {
|
|
4418
|
+
const o = Ps(
|
|
4396
4419
|
this._dsn,
|
|
4397
4420
|
t.tunnel,
|
|
4398
4421
|
t._metadata ? t._metadata.sdk : void 0
|
|
@@ -4405,7 +4428,7 @@ class Ts {
|
|
|
4405
4428
|
});
|
|
4406
4429
|
}
|
|
4407
4430
|
const r = ["enableTracing", "tracesSampleRate", "tracesSampler"].find((o) => o in t && t[o] == null);
|
|
4408
|
-
r &&
|
|
4431
|
+
r && ot(() => {
|
|
4409
4432
|
console.warn(
|
|
4410
4433
|
`[Sentry] Deprecation warning: \`${r}\` is set to undefined, which leads to tracing being enabled. In v9, a value of \`undefined\` will result in tracing being disabled.`
|
|
4411
4434
|
);
|
|
@@ -4416,8 +4439,8 @@ class Ts {
|
|
|
4416
4439
|
*/
|
|
4417
4440
|
captureException(t, n, r) {
|
|
4418
4441
|
const o = te();
|
|
4419
|
-
if (
|
|
4420
|
-
return U && N.log(
|
|
4442
|
+
if (hn(t))
|
|
4443
|
+
return U && N.log(Pn), o;
|
|
4421
4444
|
const i = {
|
|
4422
4445
|
event_id: o,
|
|
4423
4446
|
...n
|
|
@@ -4435,7 +4458,7 @@ class Ts {
|
|
|
4435
4458
|
const i = {
|
|
4436
4459
|
event_id: te(),
|
|
4437
4460
|
...r
|
|
4438
|
-
}, c =
|
|
4461
|
+
}, c = Mt(t) ? t : String(t), u = Vr(t) ? this.eventFromMessage(c, n, i) : this.eventFromException(t, i);
|
|
4439
4462
|
return this._process(u.then((l) => this._captureEvent(l, i, o))), i.event_id;
|
|
4440
4463
|
}
|
|
4441
4464
|
/**
|
|
@@ -4443,8 +4466,8 @@ class Ts {
|
|
|
4443
4466
|
*/
|
|
4444
4467
|
captureEvent(t, n, r) {
|
|
4445
4468
|
const o = te();
|
|
4446
|
-
if (n && n.originalException &&
|
|
4447
|
-
return U && N.log(
|
|
4469
|
+
if (n && n.originalException && hn(n.originalException))
|
|
4470
|
+
return U && N.log(Pn), o;
|
|
4448
4471
|
const i = {
|
|
4449
4472
|
event_id: o,
|
|
4450
4473
|
...n
|
|
@@ -4455,7 +4478,7 @@ class Ts {
|
|
|
4455
4478
|
* @inheritDoc
|
|
4456
4479
|
*/
|
|
4457
4480
|
captureSession(t) {
|
|
4458
|
-
typeof t.release != "string" ? U && N.warn("Discarded session because of missing or non-string release") : (this.sendSession(t),
|
|
4481
|
+
typeof t.release != "string" ? U && N.warn("Discarded session because of missing or non-string release") : (this.sendSession(t), It(t, { init: !1 }));
|
|
4459
4482
|
}
|
|
4460
4483
|
/**
|
|
4461
4484
|
* @inheritDoc
|
|
@@ -4488,7 +4511,7 @@ class Ts {
|
|
|
4488
4511
|
*/
|
|
4489
4512
|
flush(t) {
|
|
4490
4513
|
const n = this._transport;
|
|
4491
|
-
return n ? (this.emit("flush"), this._isClientDoneProcessing(t).then((r) => n.flush(t).then((o) => r && o))) :
|
|
4514
|
+
return n ? (this.emit("flush"), this._isClientDoneProcessing(t).then((r) => n.flush(t).then((o) => r && o))) : pe(!0);
|
|
4492
4515
|
}
|
|
4493
4516
|
/**
|
|
4494
4517
|
* @inheritDoc
|
|
@@ -4526,16 +4549,16 @@ class Ts {
|
|
|
4526
4549
|
*/
|
|
4527
4550
|
addIntegration(t) {
|
|
4528
4551
|
const n = this._integrations[t.name];
|
|
4529
|
-
|
|
4552
|
+
sr(this, t, this._integrations), n || kn(this, [t]);
|
|
4530
4553
|
}
|
|
4531
4554
|
/**
|
|
4532
4555
|
* @inheritDoc
|
|
4533
4556
|
*/
|
|
4534
4557
|
sendEvent(t, n = {}) {
|
|
4535
4558
|
this.emit("beforeSendEvent", t, n);
|
|
4536
|
-
let r =
|
|
4559
|
+
let r = ls(t, this._dsn, this._options._metadata, this._options.tunnel);
|
|
4537
4560
|
for (const i of n.attachments || [])
|
|
4538
|
-
r =
|
|
4561
|
+
r = ns(r, ss(i));
|
|
4539
4562
|
const o = this.sendEnvelope(r);
|
|
4540
4563
|
o && o.then((i) => this.emit("afterSendEvent", t, i), null);
|
|
4541
4564
|
}
|
|
@@ -4543,7 +4566,7 @@ class Ts {
|
|
|
4543
4566
|
* @inheritDoc
|
|
4544
4567
|
*/
|
|
4545
4568
|
sendSession(t) {
|
|
4546
|
-
const n =
|
|
4569
|
+
const n = us(t, this._dsn, this._options._metadata, this._options.tunnel);
|
|
4547
4570
|
this.sendEnvelope(n);
|
|
4548
4571
|
}
|
|
4549
4572
|
/**
|
|
@@ -4576,13 +4599,13 @@ class Ts {
|
|
|
4576
4599
|
* @inheritdoc
|
|
4577
4600
|
*/
|
|
4578
4601
|
sendEnvelope(t) {
|
|
4579
|
-
return this.emit("beforeEnvelope", t), this._isEnabled() && this._transport ? this._transport.send(t).then(null, (n) => (U && N.error("Error while sending envelope:", n), n)) : (U && N.error("Transport disabled"),
|
|
4602
|
+
return this.emit("beforeEnvelope", t), this._isEnabled() && this._transport ? this._transport.send(t).then(null, (n) => (U && N.error("Error while sending envelope:", n), n)) : (U && N.error("Transport disabled"), pe({}));
|
|
4580
4603
|
}
|
|
4581
4604
|
/* eslint-enable @typescript-eslint/unified-signatures */
|
|
4582
4605
|
/** Setup integrations for this client. */
|
|
4583
4606
|
_setupIntegrations() {
|
|
4584
4607
|
const { integrations: t } = this._options;
|
|
4585
|
-
this._integrations =
|
|
4608
|
+
this._integrations = ws(this, t), kn(this, t);
|
|
4586
4609
|
}
|
|
4587
4610
|
/** Updates existing session based on the provided event */
|
|
4588
4611
|
_updateSessionFromEvent(t, n) {
|
|
@@ -4599,7 +4622,7 @@ class Ts {
|
|
|
4599
4622
|
}
|
|
4600
4623
|
}
|
|
4601
4624
|
const c = t.status === "ok";
|
|
4602
|
-
(c && t.errors === 0 || c && r) && (
|
|
4625
|
+
(c && t.errors === 0 || c && r) && (It(t, {
|
|
4603
4626
|
...r && { status: "crashed" },
|
|
4604
4627
|
errors: t.errors || Number(o || r)
|
|
4605
4628
|
}), this.captureSession(t));
|
|
@@ -4640,16 +4663,16 @@ class Ts {
|
|
|
4640
4663
|
* @param currentScope A scope containing event metadata.
|
|
4641
4664
|
* @returns A new event with more information.
|
|
4642
4665
|
*/
|
|
4643
|
-
_prepareEvent(t, n, r =
|
|
4666
|
+
_prepareEvent(t, n, r = Zn(), o = mo()) {
|
|
4644
4667
|
const i = this.getOptions(), c = Object.keys(this._integrations);
|
|
4645
|
-
return !n.integrations && c.length > 0 && (n.integrations = c), this.emit("preprocessEvent", t, n), t.type || o.setLastEventId(t.event_id || n.event_id),
|
|
4668
|
+
return !n.integrations && c.length > 0 && (n.integrations = c), this.emit("preprocessEvent", t, n), t.type || o.setLastEventId(t.event_id || n.event_id), ms(i, t, n, r, this, o).then((u) => {
|
|
4646
4669
|
if (u === null)
|
|
4647
4670
|
return u;
|
|
4648
4671
|
u.contexts = {
|
|
4649
|
-
trace:
|
|
4672
|
+
trace: bo(r),
|
|
4650
4673
|
...u.contexts
|
|
4651
4674
|
};
|
|
4652
|
-
const l =
|
|
4675
|
+
const l = jo(this, r);
|
|
4653
4676
|
return u.sdkProcessingMetadata = {
|
|
4654
4677
|
dynamicSamplingContext: l,
|
|
4655
4678
|
...u.sdkProcessingMetadata
|
|
@@ -4684,9 +4707,9 @@ class Ts {
|
|
|
4684
4707
|
* @returns A SyncPromise that resolves with the event or rejects in case event was/will not be send.
|
|
4685
4708
|
*/
|
|
4686
4709
|
_processEvent(t, n, r) {
|
|
4687
|
-
const o = this.getOptions(), { sampleRate: i } = o, c =
|
|
4710
|
+
const o = this.getOptions(), { sampleRate: i } = o, c = ar(t), u = ir(t), l = t.type || "error", h = `before send for type \`${l}\``, y = typeof i > "u" ? void 0 : qo(i);
|
|
4688
4711
|
if (u && typeof y == "number" && Math.random() > y)
|
|
4689
|
-
return this.recordDroppedEvent("sample_rate", "error", t),
|
|
4712
|
+
return this.recordDroppedEvent("sample_rate", "error", t), Ye(
|
|
4690
4713
|
new Y(
|
|
4691
4714
|
`Discarding event because it's not included in the random sample (sampling rate = ${i})`,
|
|
4692
4715
|
"log"
|
|
@@ -4698,8 +4721,8 @@ class Ts {
|
|
|
4698
4721
|
throw this.recordDroppedEvent("event_processor", m, t), new Y("An event processor returned `null`, will not send event.", "log");
|
|
4699
4722
|
if (n.data && n.data.__sentry__ === !0)
|
|
4700
4723
|
return B;
|
|
4701
|
-
const S =
|
|
4702
|
-
return
|
|
4724
|
+
const S = Os(this, o, B, n);
|
|
4725
|
+
return Rs(S, h);
|
|
4703
4726
|
}).then((B) => {
|
|
4704
4727
|
if (B === null) {
|
|
4705
4728
|
if (this.recordDroppedEvent("before_send", m, t), c) {
|
|
@@ -4772,19 +4795,19 @@ Reason: ${B}`
|
|
|
4772
4795
|
return;
|
|
4773
4796
|
}
|
|
4774
4797
|
U && N.log("Sending outcomes:", t);
|
|
4775
|
-
const n =
|
|
4798
|
+
const n = Ts(t, this._options.tunnel && lt(this._dsn));
|
|
4776
4799
|
this.sendEnvelope(n);
|
|
4777
4800
|
}
|
|
4778
4801
|
/**
|
|
4779
4802
|
* @inheritDoc
|
|
4780
4803
|
*/
|
|
4781
4804
|
}
|
|
4782
|
-
function
|
|
4805
|
+
function Rs(e, t) {
|
|
4783
4806
|
const n = `${t} must return \`null\` or a valid event.`;
|
|
4784
|
-
if (
|
|
4807
|
+
if (it(e))
|
|
4785
4808
|
return e.then(
|
|
4786
4809
|
(r) => {
|
|
4787
|
-
if (!
|
|
4810
|
+
if (!Ee(r) && r !== null)
|
|
4788
4811
|
throw new Y(n);
|
|
4789
4812
|
return r;
|
|
4790
4813
|
},
|
|
@@ -4792,20 +4815,20 @@ function Ls(e, t) {
|
|
|
4792
4815
|
throw new Y(`${t} rejected with ${r}`);
|
|
4793
4816
|
}
|
|
4794
4817
|
);
|
|
4795
|
-
if (!
|
|
4818
|
+
if (!Ee(e) && e !== null)
|
|
4796
4819
|
throw new Y(n);
|
|
4797
4820
|
return e;
|
|
4798
4821
|
}
|
|
4799
|
-
function
|
|
4822
|
+
function Os(e, t, n, r) {
|
|
4800
4823
|
const { beforeSend: o, beforeSendTransaction: i, beforeSendSpan: c } = t;
|
|
4801
|
-
if (
|
|
4824
|
+
if (ir(n) && o)
|
|
4802
4825
|
return o(n, r);
|
|
4803
|
-
if (
|
|
4826
|
+
if (ar(n)) {
|
|
4804
4827
|
if (n.spans && c) {
|
|
4805
4828
|
const u = [];
|
|
4806
4829
|
for (const l of n.spans) {
|
|
4807
4830
|
const h = c(l);
|
|
4808
|
-
h ? u.push(h) : (
|
|
4831
|
+
h ? u.push(h) : (Fo(), e.recordDroppedEvent("before_send", "span"));
|
|
4809
4832
|
}
|
|
4810
4833
|
n.spans = u;
|
|
4811
4834
|
}
|
|
@@ -4822,13 +4845,13 @@ function Rs(e, t, n, r) {
|
|
|
4822
4845
|
}
|
|
4823
4846
|
return n;
|
|
4824
4847
|
}
|
|
4825
|
-
function
|
|
4848
|
+
function ir(e) {
|
|
4826
4849
|
return e.type === void 0;
|
|
4827
4850
|
}
|
|
4828
|
-
function
|
|
4851
|
+
function ar(e) {
|
|
4829
4852
|
return e.type === "transaction";
|
|
4830
4853
|
}
|
|
4831
|
-
function
|
|
4854
|
+
function Ns(e) {
|
|
4832
4855
|
const t = [];
|
|
4833
4856
|
function n() {
|
|
4834
4857
|
return e === void 0 || t.length < e;
|
|
@@ -4838,7 +4861,7 @@ function Os(e) {
|
|
|
4838
4861
|
}
|
|
4839
4862
|
function o(c) {
|
|
4840
4863
|
if (!n())
|
|
4841
|
-
return
|
|
4864
|
+
return Ye(new Y("Not adding Promise because buffer limit was reached."));
|
|
4842
4865
|
const u = c();
|
|
4843
4866
|
return t.indexOf(u) === -1 && t.push(u), u.then(() => r(u)).then(
|
|
4844
4867
|
null,
|
|
@@ -4855,7 +4878,7 @@ function Os(e) {
|
|
|
4855
4878
|
c && c > 0 && u(!1);
|
|
4856
4879
|
}, c);
|
|
4857
4880
|
t.forEach((m) => {
|
|
4858
|
-
|
|
4881
|
+
pe(m).then(() => {
|
|
4859
4882
|
--h || (clearTimeout(y), u(!0));
|
|
4860
4883
|
}, l);
|
|
4861
4884
|
});
|
|
@@ -4867,21 +4890,21 @@ function Os(e) {
|
|
|
4867
4890
|
drain: i
|
|
4868
4891
|
};
|
|
4869
4892
|
}
|
|
4870
|
-
const
|
|
4871
|
-
function
|
|
4893
|
+
const Ds = 60 * 1e3;
|
|
4894
|
+
function Ms(e, t = Date.now()) {
|
|
4872
4895
|
const n = parseInt(`${e}`, 10);
|
|
4873
4896
|
if (!isNaN(n))
|
|
4874
4897
|
return n * 1e3;
|
|
4875
4898
|
const r = Date.parse(`${e}`);
|
|
4876
|
-
return isNaN(r) ?
|
|
4899
|
+
return isNaN(r) ? Ds : r - t;
|
|
4877
4900
|
}
|
|
4878
|
-
function
|
|
4901
|
+
function xs(e, t) {
|
|
4879
4902
|
return e[t] || e.all || 0;
|
|
4880
4903
|
}
|
|
4881
|
-
function
|
|
4882
|
-
return
|
|
4904
|
+
function Us(e, t, n = Date.now()) {
|
|
4905
|
+
return xs(e, t) > n;
|
|
4883
4906
|
}
|
|
4884
|
-
function
|
|
4907
|
+
function Fs(e, { statusCode: t, headers: n }, r = Date.now()) {
|
|
4885
4908
|
const o = {
|
|
4886
4909
|
...e
|
|
4887
4910
|
}, i = n && n["x-sentry-rate-limits"], c = n && n["retry-after"];
|
|
@@ -4894,33 +4917,33 @@ function Us(e, { statusCode: t, headers: n }, r = Date.now()) {
|
|
|
4894
4917
|
for (const I of h.split(";"))
|
|
4895
4918
|
I === "metric_bucket" ? (!y || y.split(";").includes("custom")) && (o[I] = r + b) : o[I] = r + b;
|
|
4896
4919
|
}
|
|
4897
|
-
else c ? o.all = r +
|
|
4920
|
+
else c ? o.all = r + Ms(c, r) : t === 429 && (o.all = r + 60 * 1e3);
|
|
4898
4921
|
return o;
|
|
4899
4922
|
}
|
|
4900
|
-
const
|
|
4901
|
-
function
|
|
4902
|
-
e.bufferSize ||
|
|
4923
|
+
const Xs = 64;
|
|
4924
|
+
function Hs(e, t, n = Ns(
|
|
4925
|
+
e.bufferSize || Xs
|
|
4903
4926
|
)) {
|
|
4904
4927
|
let r = {};
|
|
4905
4928
|
const o = (c) => n.drain(c);
|
|
4906
4929
|
function i(c) {
|
|
4907
4930
|
const u = [];
|
|
4908
|
-
if (
|
|
4909
|
-
const I =
|
|
4910
|
-
if (
|
|
4911
|
-
const B =
|
|
4931
|
+
if (In(c, (m, b) => {
|
|
4932
|
+
const I = Bn(b);
|
|
4933
|
+
if (Us(r, I)) {
|
|
4934
|
+
const B = wn(m, b);
|
|
4912
4935
|
e.recordDroppedEvent("ratelimit_backoff", I, B);
|
|
4913
4936
|
} else
|
|
4914
4937
|
u.push(m);
|
|
4915
4938
|
}), u.length === 0)
|
|
4916
|
-
return
|
|
4917
|
-
const l =
|
|
4918
|
-
|
|
4919
|
-
const B =
|
|
4920
|
-
e.recordDroppedEvent(m,
|
|
4939
|
+
return pe({});
|
|
4940
|
+
const l = Te(c[0], u), h = (m) => {
|
|
4941
|
+
In(l, (b, I) => {
|
|
4942
|
+
const B = wn(b, I);
|
|
4943
|
+
e.recordDroppedEvent(m, Bn(I), B);
|
|
4921
4944
|
});
|
|
4922
|
-
}, y = () => t({ body:
|
|
4923
|
-
(m) => (m.statusCode !== void 0 && (m.statusCode < 200 || m.statusCode >= 300) && U && N.warn(`Sentry responded with status code ${m.statusCode} to sent event.`), r =
|
|
4945
|
+
}, y = () => t({ body: rs(l) }).then(
|
|
4946
|
+
(m) => (m.statusCode !== void 0 && (m.statusCode < 200 || m.statusCode >= 300) && U && N.warn(`Sentry responded with status code ${m.statusCode} to sent event.`), r = Fs(r, m), m),
|
|
4924
4947
|
(m) => {
|
|
4925
4948
|
throw h("network_error"), m;
|
|
4926
4949
|
}
|
|
@@ -4929,7 +4952,7 @@ function Xs(e, t, n = Os(
|
|
|
4929
4952
|
(m) => m,
|
|
4930
4953
|
(m) => {
|
|
4931
4954
|
if (m instanceof Y)
|
|
4932
|
-
return U && N.error("Skipped sending event because buffer is full."), h("queue_overflow"),
|
|
4955
|
+
return U && N.error("Skipped sending event because buffer is full."), h("queue_overflow"), pe({});
|
|
4933
4956
|
throw m;
|
|
4934
4957
|
}
|
|
4935
4958
|
);
|
|
@@ -4939,43 +4962,43 @@ function Xs(e, t, n = Os(
|
|
|
4939
4962
|
flush: o
|
|
4940
4963
|
};
|
|
4941
4964
|
}
|
|
4942
|
-
function
|
|
4965
|
+
function wn(e, t) {
|
|
4943
4966
|
if (!(t !== "event" && t !== "transaction"))
|
|
4944
4967
|
return Array.isArray(e) ? e[1] : void 0;
|
|
4945
4968
|
}
|
|
4946
|
-
function
|
|
4969
|
+
function js(e, t, n = [t], r = "npm") {
|
|
4947
4970
|
const o = e._metadata || {};
|
|
4948
4971
|
o.sdk || (o.sdk = {
|
|
4949
4972
|
name: `sentry.javascript.${t}`,
|
|
4950
4973
|
packages: n.map((i) => ({
|
|
4951
4974
|
name: `${r}:@sentry/${i}`,
|
|
4952
|
-
version:
|
|
4975
|
+
version: he
|
|
4953
4976
|
})),
|
|
4954
|
-
version:
|
|
4977
|
+
version: he
|
|
4955
4978
|
}), e._metadata = o;
|
|
4956
4979
|
}
|
|
4957
|
-
function
|
|
4980
|
+
function Js(e) {
|
|
4958
4981
|
return e && /^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString());
|
|
4959
4982
|
}
|
|
4960
|
-
function
|
|
4983
|
+
function qs() {
|
|
4961
4984
|
return "npm";
|
|
4962
4985
|
}
|
|
4963
|
-
const
|
|
4964
|
-
function
|
|
4965
|
-
const n =
|
|
4966
|
-
type:
|
|
4967
|
-
value:
|
|
4986
|
+
const Ue = j, zs = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__;
|
|
4987
|
+
function cr(e, t) {
|
|
4988
|
+
const n = Xt(e, t), r = {
|
|
4989
|
+
type: Vs(t),
|
|
4990
|
+
value: Zs(t)
|
|
4968
4991
|
};
|
|
4969
4992
|
return n.length && (r.stacktrace = { frames: n }), r.type === void 0 && r.value === "" && (r.value = "Unrecoverable error caught"), r;
|
|
4970
4993
|
}
|
|
4971
|
-
function
|
|
4972
|
-
const o =
|
|
4973
|
-
__serialized__:
|
|
4994
|
+
function Ks(e, t, n, r) {
|
|
4995
|
+
const o = Ut(), i = o && o.getOptions().normalizeDepth, c = oi(t), u = {
|
|
4996
|
+
__serialized__: rr(t, i)
|
|
4974
4997
|
};
|
|
4975
4998
|
if (c)
|
|
4976
4999
|
return {
|
|
4977
5000
|
exception: {
|
|
4978
|
-
values: [
|
|
5001
|
+
values: [cr(e, c)]
|
|
4979
5002
|
},
|
|
4980
5003
|
extra: u
|
|
4981
5004
|
};
|
|
@@ -4983,89 +5006,89 @@ function zs(e, t, n, r) {
|
|
|
4983
5006
|
exception: {
|
|
4984
5007
|
values: [
|
|
4985
5008
|
{
|
|
4986
|
-
type:
|
|
4987
|
-
value:
|
|
5009
|
+
type: st(t) ? t.constructor.name : r ? "UnhandledRejection" : "Error",
|
|
5010
|
+
value: ni(t, { isUnhandledRejection: r })
|
|
4988
5011
|
}
|
|
4989
5012
|
]
|
|
4990
5013
|
},
|
|
4991
5014
|
extra: u
|
|
4992
5015
|
};
|
|
4993
5016
|
if (n) {
|
|
4994
|
-
const h =
|
|
5017
|
+
const h = Xt(e, n);
|
|
4995
5018
|
h.length && (l.exception.values[0].stacktrace = { frames: h });
|
|
4996
5019
|
}
|
|
4997
5020
|
return l;
|
|
4998
5021
|
}
|
|
4999
|
-
function
|
|
5022
|
+
function gt(e, t) {
|
|
5000
5023
|
return {
|
|
5001
5024
|
exception: {
|
|
5002
|
-
values: [
|
|
5025
|
+
values: [cr(e, t)]
|
|
5003
5026
|
}
|
|
5004
5027
|
};
|
|
5005
5028
|
}
|
|
5006
|
-
function
|
|
5007
|
-
const n = t.stacktrace || t.stack || "", r =
|
|
5029
|
+
function Xt(e, t) {
|
|
5030
|
+
const n = t.stacktrace || t.stack || "", r = Ws(t), o = Ys(t);
|
|
5008
5031
|
try {
|
|
5009
5032
|
return e(n, r, o);
|
|
5010
5033
|
} catch {
|
|
5011
5034
|
}
|
|
5012
5035
|
return [];
|
|
5013
5036
|
}
|
|
5014
|
-
const
|
|
5015
|
-
function Gs(e) {
|
|
5016
|
-
return e && Ks.test(e.message) ? 1 : 0;
|
|
5017
|
-
}
|
|
5037
|
+
const Gs = /Minified React error #\d+;/i;
|
|
5018
5038
|
function Ws(e) {
|
|
5039
|
+
return e && Gs.test(e.message) ? 1 : 0;
|
|
5040
|
+
}
|
|
5041
|
+
function Ys(e) {
|
|
5019
5042
|
return typeof e.framesToPop == "number" ? e.framesToPop : 0;
|
|
5020
5043
|
}
|
|
5021
|
-
function
|
|
5044
|
+
function ur(e) {
|
|
5022
5045
|
return typeof WebAssembly < "u" && typeof WebAssembly.Exception < "u" ? e instanceof WebAssembly.Exception : !1;
|
|
5023
5046
|
}
|
|
5024
|
-
function
|
|
5047
|
+
function Vs(e) {
|
|
5025
5048
|
const t = e && e.name;
|
|
5026
|
-
return !t &&
|
|
5049
|
+
return !t && ur(e) ? e.message && Array.isArray(e.message) && e.message.length == 2 ? e.message[0] : "WebAssembly.Exception" : t;
|
|
5027
5050
|
}
|
|
5028
|
-
function
|
|
5051
|
+
function Zs(e) {
|
|
5029
5052
|
const t = e && e.message;
|
|
5030
|
-
return t ? t.error && typeof t.error.message == "string" ? t.error.message :
|
|
5053
|
+
return t ? t.error && typeof t.error.message == "string" ? t.error.message : ur(e) && Array.isArray(e.message) && e.message.length == 2 ? e.message[1] : t : "No error message";
|
|
5031
5054
|
}
|
|
5032
|
-
function
|
|
5033
|
-
const o = n && n.syntheticException || void 0, i =
|
|
5034
|
-
return
|
|
5055
|
+
function $s(e, t, n, r) {
|
|
5056
|
+
const o = n && n.syntheticException || void 0, i = ti(e, t, o, r);
|
|
5057
|
+
return Qe(i), i.level = "error", n && n.event_id && (i.event_id = n.event_id), pe(i);
|
|
5035
5058
|
}
|
|
5036
|
-
function
|
|
5037
|
-
const i = r && r.syntheticException || void 0, c =
|
|
5038
|
-
return c.level = n, r && r.event_id && (c.event_id = r.event_id),
|
|
5059
|
+
function ei(e, t, n = "info", r, o) {
|
|
5060
|
+
const i = r && r.syntheticException || void 0, c = Pt(e, t, i, o);
|
|
5061
|
+
return c.level = n, r && r.event_id && (c.event_id = r.event_id), pe(c);
|
|
5039
5062
|
}
|
|
5040
|
-
function
|
|
5063
|
+
function ti(e, t, n, r, o) {
|
|
5041
5064
|
let i;
|
|
5042
|
-
if (
|
|
5043
|
-
return
|
|
5044
|
-
if (
|
|
5065
|
+
if (qn(t) && t.error)
|
|
5066
|
+
return gt(e, t.error);
|
|
5067
|
+
if (ln(t) || Yr(t)) {
|
|
5045
5068
|
const c = t;
|
|
5046
5069
|
if ("stack" in t)
|
|
5047
|
-
i =
|
|
5070
|
+
i = gt(e, t);
|
|
5048
5071
|
else {
|
|
5049
|
-
const u = c.name || (
|
|
5050
|
-
i =
|
|
5072
|
+
const u = c.name || (ln(c) ? "DOMError" : "DOMException"), l = c.message ? `${u}: ${c.message}` : u;
|
|
5073
|
+
i = Pt(e, l, n, r), fn(i, l);
|
|
5051
5074
|
}
|
|
5052
5075
|
return "code" in c && (i.tags = { ...i.tags, "DOMException.code": `${c.code}` }), i;
|
|
5053
5076
|
}
|
|
5054
|
-
return
|
|
5077
|
+
return Jn(t) ? gt(e, t) : Ee(t) || st(t) ? (i = Ks(e, t, n, o), Qe(i, {
|
|
5055
5078
|
synthetic: !0
|
|
5056
|
-
}), i) : (i =
|
|
5079
|
+
}), i) : (i = Pt(e, t, n, r), fn(i, `${t}`), Qe(i, {
|
|
5057
5080
|
synthetic: !0
|
|
5058
5081
|
}), i);
|
|
5059
5082
|
}
|
|
5060
|
-
function
|
|
5083
|
+
function Pt(e, t, n, r) {
|
|
5061
5084
|
const o = {};
|
|
5062
5085
|
if (r && n) {
|
|
5063
|
-
const i =
|
|
5086
|
+
const i = Xt(e, n);
|
|
5064
5087
|
i.length && (o.exception = {
|
|
5065
5088
|
values: [{ value: t, stacktrace: { frames: i } }]
|
|
5066
|
-
}),
|
|
5089
|
+
}), Qe(o, { synthetic: !0 });
|
|
5067
5090
|
}
|
|
5068
|
-
if (
|
|
5091
|
+
if (Mt(t)) {
|
|
5069
5092
|
const { __sentry_template_string__: i, __sentry_template_values__: c } = t;
|
|
5070
5093
|
return o.logentry = {
|
|
5071
5094
|
message: i,
|
|
@@ -5074,18 +5097,18 @@ function kt(e, t, n, r) {
|
|
|
5074
5097
|
}
|
|
5075
5098
|
return o.message = t, o;
|
|
5076
5099
|
}
|
|
5077
|
-
function
|
|
5078
|
-
const n =
|
|
5079
|
-
return
|
|
5100
|
+
function ni(e, { isUnhandledRejection: t }) {
|
|
5101
|
+
const n = so(e), r = "exception";
|
|
5102
|
+
return qn(e) ? `Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\`` : st(e) ? `Event \`${ri(e)}\` (type=${e.type}) captured as ${r}` : `Object captured as ${r} with keys: ${n}`;
|
|
5080
5103
|
}
|
|
5081
|
-
function
|
|
5104
|
+
function ri(e) {
|
|
5082
5105
|
try {
|
|
5083
5106
|
const t = Object.getPrototypeOf(e);
|
|
5084
5107
|
return t ? t.constructor.name : void 0;
|
|
5085
5108
|
} catch {
|
|
5086
5109
|
}
|
|
5087
5110
|
}
|
|
5088
|
-
function
|
|
5111
|
+
function oi(e) {
|
|
5089
5112
|
for (const t in e)
|
|
5090
5113
|
if (Object.prototype.hasOwnProperty.call(e, t)) {
|
|
5091
5114
|
const n = e[t];
|
|
@@ -5093,7 +5116,7 @@ function ri(e) {
|
|
|
5093
5116
|
return n;
|
|
5094
5117
|
}
|
|
5095
5118
|
}
|
|
5096
|
-
function
|
|
5119
|
+
function si(e, {
|
|
5097
5120
|
metadata: t,
|
|
5098
5121
|
tunnel: n,
|
|
5099
5122
|
dsn: r
|
|
@@ -5107,16 +5130,16 @@ function oi(e, {
|
|
|
5107
5130
|
version: t.sdk.version
|
|
5108
5131
|
}
|
|
5109
5132
|
},
|
|
5110
|
-
...!!n && !!r && { dsn:
|
|
5111
|
-
}, i =
|
|
5112
|
-
return
|
|
5133
|
+
...!!n && !!r && { dsn: lt(r) }
|
|
5134
|
+
}, i = ii(e);
|
|
5135
|
+
return Te(o, [i]);
|
|
5113
5136
|
}
|
|
5114
|
-
function
|
|
5137
|
+
function ii(e) {
|
|
5115
5138
|
return [{
|
|
5116
5139
|
type: "user_report"
|
|
5117
5140
|
}, e];
|
|
5118
5141
|
}
|
|
5119
|
-
class
|
|
5142
|
+
class ai extends Ls {
|
|
5120
5143
|
/**
|
|
5121
5144
|
* Creates a new Browser SDK instance.
|
|
5122
5145
|
*
|
|
@@ -5127,22 +5150,22 @@ class ii extends Ts {
|
|
|
5127
5150
|
// We default this to true, as it is the safer scenario
|
|
5128
5151
|
parentSpanIsAlwaysRootSpan: !0,
|
|
5129
5152
|
...t
|
|
5130
|
-
}, r =
|
|
5131
|
-
|
|
5132
|
-
|
|
5153
|
+
}, r = Ue.SENTRY_SDK_SOURCE || qs();
|
|
5154
|
+
js(n, "browser", ["browser"], r), super(n), n.sendClientReports && Ue.document && Ue.document.addEventListener("visibilitychange", () => {
|
|
5155
|
+
Ue.document.visibilityState === "hidden" && this._flushOutcomes();
|
|
5133
5156
|
});
|
|
5134
5157
|
}
|
|
5135
5158
|
/**
|
|
5136
5159
|
* @inheritDoc
|
|
5137
5160
|
*/
|
|
5138
5161
|
eventFromException(t, n) {
|
|
5139
|
-
return
|
|
5162
|
+
return $s(this._options.stackParser, t, n, this._options.attachStacktrace);
|
|
5140
5163
|
}
|
|
5141
5164
|
/**
|
|
5142
5165
|
* @inheritDoc
|
|
5143
5166
|
*/
|
|
5144
5167
|
eventFromMessage(t, n = "info", r) {
|
|
5145
|
-
return
|
|
5168
|
+
return ei(this._options.stackParser, t, n, r, this._options.attachStacktrace);
|
|
5146
5169
|
}
|
|
5147
5170
|
/**
|
|
5148
5171
|
* Sends user feedback to Sentry.
|
|
@@ -5151,10 +5174,10 @@ class ii extends Ts {
|
|
|
5151
5174
|
*/
|
|
5152
5175
|
captureUserFeedback(t) {
|
|
5153
5176
|
if (!this._isEnabled()) {
|
|
5154
|
-
|
|
5177
|
+
zs && N.warn("SDK not enabled, will not capture user feedback.");
|
|
5155
5178
|
return;
|
|
5156
5179
|
}
|
|
5157
|
-
const n =
|
|
5180
|
+
const n = si(t, {
|
|
5158
5181
|
metadata: this.getSdkMetadata(),
|
|
5159
5182
|
dsn: this.getDsn(),
|
|
5160
5183
|
tunnel: this.getOptions().tunnel
|
|
@@ -5168,15 +5191,15 @@ class ii extends Ts {
|
|
|
5168
5191
|
return t.platform = t.platform || "javascript", super._prepareEvent(t, n, r);
|
|
5169
5192
|
}
|
|
5170
5193
|
}
|
|
5171
|
-
const
|
|
5172
|
-
function
|
|
5173
|
-
const t =
|
|
5194
|
+
const ci = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, Fe = j, je = {};
|
|
5195
|
+
function ui(e) {
|
|
5196
|
+
const t = je[e];
|
|
5174
5197
|
if (t)
|
|
5175
5198
|
return t;
|
|
5176
|
-
let n =
|
|
5177
|
-
if (
|
|
5178
|
-
return
|
|
5179
|
-
const r =
|
|
5199
|
+
let n = Fe[e];
|
|
5200
|
+
if (Js(n))
|
|
5201
|
+
return je[e] = n.bind(Fe);
|
|
5202
|
+
const r = Fe.document;
|
|
5180
5203
|
if (r && typeof r.createElement == "function")
|
|
5181
5204
|
try {
|
|
5182
5205
|
const o = r.createElement("iframe");
|
|
@@ -5184,14 +5207,14 @@ function ci(e) {
|
|
|
5184
5207
|
const i = o.contentWindow;
|
|
5185
5208
|
i && i[e] && (n = i[e]), r.head.removeChild(o);
|
|
5186
5209
|
} catch (o) {
|
|
5187
|
-
|
|
5210
|
+
ci && N.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `, o);
|
|
5188
5211
|
}
|
|
5189
|
-
return n && (
|
|
5212
|
+
return n && (je[e] = n.bind(Fe));
|
|
5190
5213
|
}
|
|
5191
|
-
function
|
|
5192
|
-
|
|
5214
|
+
function Tn(e) {
|
|
5215
|
+
je[e] = void 0;
|
|
5193
5216
|
}
|
|
5194
|
-
function
|
|
5217
|
+
function li(e, t = ui("fetch")) {
|
|
5195
5218
|
let n = 0, r = 0;
|
|
5196
5219
|
function o(i) {
|
|
5197
5220
|
const c = i.body.length;
|
|
@@ -5216,7 +5239,7 @@ function ui(e, t = ci("fetch")) {
|
|
|
5216
5239
|
...e.fetchOptions
|
|
5217
5240
|
};
|
|
5218
5241
|
if (!t)
|
|
5219
|
-
return
|
|
5242
|
+
return Tn("fetch"), Ye("No fetch implementation available");
|
|
5220
5243
|
try {
|
|
5221
5244
|
return t(e.url, u).then((l) => (n -= c, r--, {
|
|
5222
5245
|
statusCode: l.status,
|
|
@@ -5226,90 +5249,91 @@ function ui(e, t = ci("fetch")) {
|
|
|
5226
5249
|
}
|
|
5227
5250
|
}));
|
|
5228
5251
|
} catch (l) {
|
|
5229
|
-
return
|
|
5252
|
+
return Tn("fetch"), n -= c, r--, Ye(l);
|
|
5230
5253
|
}
|
|
5231
5254
|
}
|
|
5232
|
-
return
|
|
5255
|
+
return Hs(e, o);
|
|
5233
5256
|
}
|
|
5234
|
-
const
|
|
5235
|
-
function
|
|
5257
|
+
const Ai = 30, di = 50;
|
|
5258
|
+
function wt(e, t, n, r) {
|
|
5236
5259
|
const o = {
|
|
5237
5260
|
filename: e,
|
|
5238
|
-
function: t === "<anonymous>" ?
|
|
5261
|
+
function: t === "<anonymous>" ? be : t,
|
|
5239
5262
|
in_app: !0
|
|
5240
5263
|
// All browser frames are considered in_app
|
|
5241
5264
|
};
|
|
5242
5265
|
return n !== void 0 && (o.lineno = n), r !== void 0 && (o.colno = r), o;
|
|
5243
5266
|
}
|
|
5244
|
-
const
|
|
5245
|
-
const t =
|
|
5267
|
+
const fi = /^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i, hi = /^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i, pi = /\((\S*)(?::(\d+))(?::(\d+))\)/, gi = (e) => {
|
|
5268
|
+
const t = fi.exec(e);
|
|
5246
5269
|
if (t) {
|
|
5247
5270
|
const [, r, o, i] = t;
|
|
5248
|
-
return
|
|
5271
|
+
return wt(r, be, +o, +i);
|
|
5249
5272
|
}
|
|
5250
|
-
const n =
|
|
5273
|
+
const n = hi.exec(e);
|
|
5251
5274
|
if (n) {
|
|
5252
5275
|
if (n[2] && n[2].indexOf("eval") === 0) {
|
|
5253
|
-
const c =
|
|
5276
|
+
const c = pi.exec(n[2]);
|
|
5254
5277
|
c && (n[2] = c[1], n[3] = c[2], n[4] = c[3]);
|
|
5255
5278
|
}
|
|
5256
|
-
const [o, i] =
|
|
5257
|
-
return
|
|
5279
|
+
const [o, i] = lr(n[1] || be, n[2]);
|
|
5280
|
+
return wt(i, o, n[3] ? +n[3] : void 0, n[4] ? +n[4] : void 0);
|
|
5258
5281
|
}
|
|
5259
|
-
},
|
|
5260
|
-
const t =
|
|
5282
|
+
}, yi = [Ai, gi], mi = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i, Ci = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i, bi = (e) => {
|
|
5283
|
+
const t = mi.exec(e);
|
|
5261
5284
|
if (t) {
|
|
5262
5285
|
if (t[3] && t[3].indexOf(" > eval") > -1) {
|
|
5263
|
-
const i =
|
|
5286
|
+
const i = Ci.exec(t[3]);
|
|
5264
5287
|
i && (t[1] = t[1] || "eval", t[3] = i[1], t[4] = i[2], t[5] = "");
|
|
5265
5288
|
}
|
|
5266
|
-
let r = t[3], o = t[1] ||
|
|
5267
|
-
return [o, r] =
|
|
5289
|
+
let r = t[3], o = t[1] || be;
|
|
5290
|
+
return [o, r] = lr(o, r), wt(r, o, t[4] ? +t[4] : void 0, t[5] ? +t[5] : void 0);
|
|
5268
5291
|
}
|
|
5269
|
-
},
|
|
5292
|
+
}, Ei = [di, bi], vi = [yi, Ei], Ii = Kr(...vi), lr = (e, t) => {
|
|
5270
5293
|
const n = e.indexOf("safari-extension") !== -1, r = e.indexOf("safari-web-extension") !== -1;
|
|
5271
5294
|
return n || r ? [
|
|
5272
|
-
e.indexOf("@") !== -1 ? e.split("@")[0] :
|
|
5295
|
+
e.indexOf("@") !== -1 ? e.split("@")[0] : be,
|
|
5273
5296
|
n ? `safari-extension:${t}` : `safari-web-extension:${t}`
|
|
5274
5297
|
] : [e, t];
|
|
5275
|
-
},
|
|
5276
|
-
let
|
|
5277
|
-
function
|
|
5278
|
-
const t = new
|
|
5279
|
-
dsn:
|
|
5280
|
-
transport:
|
|
5281
|
-
stackParser:
|
|
5298
|
+
}, Bi = "https://bbed26c9265c425abb56ff9d3728183e@sentry.chocodev.kz/302";
|
|
5299
|
+
let Tt = null;
|
|
5300
|
+
function Si(e) {
|
|
5301
|
+
const t = new ai({
|
|
5302
|
+
dsn: Bi,
|
|
5303
|
+
transport: li,
|
|
5304
|
+
stackParser: Ii,
|
|
5282
5305
|
integrations: [],
|
|
5283
|
-
release: "1.1.
|
|
5306
|
+
release: "1.1.55",
|
|
5284
5307
|
environment: e.environment || "production"
|
|
5285
|
-
}), n = new
|
|
5286
|
-
n.setClient(t), n.setTags(e), t.init(),
|
|
5308
|
+
}), n = new ue();
|
|
5309
|
+
n.setClient(t), n.setTags(e), t.init(), Tt = n;
|
|
5287
5310
|
}
|
|
5288
5311
|
function se(e, t) {
|
|
5289
|
-
|
|
5312
|
+
Tt && Tt.captureException(
|
|
5290
5313
|
e,
|
|
5291
5314
|
t ? { captureContext: { extra: t } } : void 0
|
|
5292
5315
|
);
|
|
5293
5316
|
}
|
|
5294
|
-
function
|
|
5295
|
-
|
|
5317
|
+
function Je(e, t) {
|
|
5318
|
+
bt("webPayToken", e), t && bt("webPayRefreshToken", t);
|
|
5296
5319
|
}
|
|
5297
|
-
function
|
|
5298
|
-
|
|
5320
|
+
function Ln() {
|
|
5321
|
+
We("webPayToken"), We("webPayRefreshToken");
|
|
5299
5322
|
}
|
|
5300
|
-
async function
|
|
5301
|
-
const t =
|
|
5323
|
+
async function _i(e) {
|
|
5324
|
+
const t = Fn("webPayRefreshToken");
|
|
5302
5325
|
if (t && e.config.clientId)
|
|
5303
5326
|
try {
|
|
5304
|
-
const n = await
|
|
5327
|
+
const n = await Mr(
|
|
5305
5328
|
e.apiUrl,
|
|
5306
5329
|
e.config.clientId,
|
|
5307
|
-
t
|
|
5330
|
+
t,
|
|
5331
|
+
e.config.country
|
|
5308
5332
|
);
|
|
5309
|
-
|
|
5333
|
+
Je(n.access_token, n.refresh_token), e.accessToken = n.access_token;
|
|
5310
5334
|
return;
|
|
5311
5335
|
} catch {
|
|
5312
|
-
|
|
5336
|
+
We("webPayRefreshToken");
|
|
5313
5337
|
}
|
|
5314
5338
|
if (!e.config.clientId) {
|
|
5315
5339
|
e.config.onError({ attributes: { message: e.t("errorMissingTrackClient") } });
|
|
@@ -5320,33 +5344,35 @@ async function Si(e) {
|
|
|
5320
5344
|
return;
|
|
5321
5345
|
}
|
|
5322
5346
|
try {
|
|
5323
|
-
const n = await
|
|
5347
|
+
const n = await nn(
|
|
5324
5348
|
e.apiUrl,
|
|
5325
5349
|
e.config.clientId,
|
|
5326
|
-
e.config.trackId
|
|
5350
|
+
e.config.trackId,
|
|
5351
|
+
e.config.country
|
|
5327
5352
|
);
|
|
5328
|
-
|
|
5353
|
+
Je(n.access_token, n.refresh_token), e.accessToken = n.access_token;
|
|
5329
5354
|
} catch (n) {
|
|
5330
5355
|
if (typeof e.config.onRequestNewTrackId == "function") {
|
|
5331
5356
|
e.config.trackId = await e.config.onRequestNewTrackId();
|
|
5332
|
-
const r = await
|
|
5357
|
+
const r = await nn(
|
|
5333
5358
|
e.apiUrl,
|
|
5334
5359
|
e.config.clientId,
|
|
5335
|
-
e.config.trackId
|
|
5360
|
+
e.config.trackId,
|
|
5361
|
+
e.config.country
|
|
5336
5362
|
);
|
|
5337
|
-
|
|
5363
|
+
Je(r.access_token, r.refresh_token), e.accessToken = r.access_token;
|
|
5338
5364
|
} else
|
|
5339
5365
|
throw n;
|
|
5340
5366
|
}
|
|
5341
5367
|
}
|
|
5342
|
-
const
|
|
5368
|
+
const Qi = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5343
5369
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.89711 8.50443C10.4185 8.72365 10.6242 9.56386 10.7471 10.3459L10.7816 10.5699L10.8557 11.0301C11.0006 11.9088 11.303 13.7327 11.303 14.6845C11.303 14.9224 11.2806 15.105 11.2396 15.2053C11.1713 15.3599 10.9724 15.5082 10.6978 15.6319C10.0332 15.7846 9.33863 15.8671 8.62315 15.8671C8.54739 15.8671 8.47285 15.8637 8.39805 15.8616C8.10889 15.785 7.89156 15.657 7.77649 15.4821C7.42905 14.9542 7.40812 13.7781 7.40116 12.4037L7.40037 12.2443L7.39755 11.8324C7.38623 10.3774 7.37651 9.1229 7.94288 8.67272C8.16223 8.49957 8.47392 8.44225 8.89711 8.50443ZM5.58009 11.6722C5.90978 11.6548 6.12181 13.1684 6.16441 14.3162C6.19427 15.1152 6.10438 15.4439 5.96084 15.5619C5.79833 15.5113 5.63864 15.4565 5.48128 15.397C5.3763 15.219 5.29607 14.9389 5.2451 14.5721C5.08947 13.4193 5.22466 11.6925 5.58009 11.6722ZM13.8455 13.934C13.825 14.0391 13.796 14.1204 13.7602 14.1889C13.4783 14.4 13.1821 14.5938 12.872 14.7682C12.7733 14.7837 12.6856 14.7729 12.6427 14.7053C12.2318 14.0314 12.0775 11.9173 12.4752 11.7333C12.9936 11.4995 13.9224 13.5685 13.8455 13.934ZM8.50042 0C13.1296 0 16.8941 3.42166 16.9979 7.67934L17 7.82651V7.89454C16.9915 9.81778 16.2332 11.5773 14.9839 12.9392C14.9386 12.918 14.8559 12.8486 14.7062 12.6395C14.5512 12.4293 13.2148 10.5096 13.2148 8.30946C13.2148 7.87768 13.8816 7.20318 14.4717 6.61114C14.9128 6.16562 15.3306 5.74539 15.4845 5.4151C15.6804 4.98892 15.5433 4.69134 15.3265 4.59047C15.1302 4.50082 14.8355 4.56621 14.6287 4.90904C14.2893 5.46389 14.1805 5.56758 13.6855 5.93882C13.1984 6.30986 12.424 6.68338 12.424 6.19988C12.424 5.93882 12.8553 5.34757 13.0684 4.93314C13.286 4.51408 13.0515 4.21072 12.6022 4.21072C11.7198 4.21072 11.1341 5.2598 11.1341 5.62326C11.1341 5.98642 11.3229 6.03813 11.3229 6.46104C11.3229 6.88713 10.3548 7.4398 9.44281 7.4398C8.56481 7.4398 8.05566 7.27394 7.8447 6.80665L7.81777 6.74105L7.75678 6.57266C7.54046 5.98255 7.38528 5.55458 7.11514 5.10733C6.9717 4.87081 6.75038 4.70684 6.55897 4.56257C6.30881 4.38121 6.17902 4.21421 6.15193 4.08967C6.12696 3.96611 6.11352 3.73326 6.54117 3.19648C6.96793 2.66277 7.02775 2.25958 6.81418 2.05153C6.73678 1.97752 6.60482 1.93011 6.43535 1.93011C6.13562 1.93011 5.71912 2.07834 5.2899 2.48551C4.62267 3.12364 5.00146 3.72951 5.00146 3.99548C5.00146 4.26127 4.87922 4.41162 4.47882 4.77323C4.07547 5.13644 3.93627 5.44783 3.89014 6.69935C3.87247 7.3442 3.75079 7.71539 3.64156 8.04453C3.54718 8.33302 3.46038 8.60425 3.45569 8.99611C3.44822 9.43038 3.52566 9.71023 3.61604 10.0331C3.70477 10.3316 3.79902 10.6736 3.8594 11.2456C3.95544 12.1312 3.92205 12.8792 3.74744 13.6437L3.70084 13.8353L3.68995 13.8903C3.65419 14.0247 3.61168 14.1879 3.55423 14.249C1.4029 12.8228 0 10.4936 0 7.86072C0 3.51974 3.80561 0 8.50042 0Z" fill="#F14635"/>
|
|
5344
5370
|
</svg>
|
|
5345
|
-
`,
|
|
5371
|
+
`, ki = `<svg width="21" height="12" viewBox="0 0 21 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5346
5372
|
<path d="M0 6C0 2.68629 2.68629 0 6 0H15C18.3137 0 21 2.68629 21 6C21 9.31371 18.3137 12 15 12H6C2.68629 12 0 9.31371 0 6Z" fill="#F1F2F7"/>
|
|
5347
5373
|
<path d="M7.79163 5.99984H13.2083M10.5 3.2915L10.5 8.70817" stroke="#242424" stroke-width="0.8125" stroke-linecap="round"/>
|
|
5348
5374
|
</svg>
|
|
5349
|
-
`,
|
|
5375
|
+
`, Pi = `<svg width="29" height="12" viewBox="0 0 29 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5350
5376
|
<g clip-path="url(#clip0_22788_48734)">
|
|
5351
5377
|
<path d="M5.29824 1.53496C4.9584 1.93711 4.41465 2.2543 3.8709 2.20898C3.80293 1.66523 4.06914 1.0875 4.38066 0.730664C4.72051 0.317187 5.31523 0.0226563 5.79668 0C5.85332 0.566406 5.63242 1.12148 5.29824 1.53496ZM5.79101 2.3166C5.00371 2.27129 4.32969 2.76406 3.95586 2.76406C3.57637 2.76406 3.0043 2.33926 2.38125 2.35059C1.57129 2.36191 0.817967 2.8207 0.40449 3.55137C-0.445119 5.0127 0.183592 7.17637 1.00488 8.36582C1.40703 8.95488 1.88847 9.60059 2.52285 9.57793C3.12324 9.55527 3.36113 9.18711 4.08613 9.18711C4.81679 9.18711 5.02637 9.57793 5.66074 9.5666C6.31777 9.55527 6.73125 8.97754 7.1334 8.38848C7.59219 7.72012 7.7791 7.06875 7.79043 7.03477C7.7791 7.02344 6.52168 6.54199 6.51035 5.09199C6.49902 3.87988 7.50156 3.30215 7.54687 3.26816C6.98047 2.42988 6.09687 2.33926 5.79101 2.3166ZM10.3393 0.674023V9.5043H11.71V6.48535H13.6074C15.3406 6.48535 16.5584 5.2959 16.5584 3.57402C16.5584 1.85215 15.3633 0.674023 13.6527 0.674023H10.3393ZM11.71 1.82949H13.2902C14.4797 1.82949 15.1594 2.46387 15.1594 3.57969C15.1594 4.69551 14.4797 5.33555 13.2846 5.33555H11.71V1.82949ZM19.0619 9.57227C19.9229 9.57227 20.7215 9.13613 21.084 8.44512H21.1123V9.5043H22.3811V5.10898C22.3811 3.83457 21.3615 3.01328 19.7926 3.01328C18.3369 3.01328 17.2607 3.8459 17.2211 4.99004H18.4559C18.5578 4.44629 19.0619 4.08945 19.7529 4.08945C20.5912 4.08945 21.0613 4.48027 21.0613 5.19961V5.68672L19.3508 5.78867C17.7592 5.88496 16.8982 6.53633 16.8982 7.66914C16.8982 8.81328 17.7875 9.57227 19.0619 9.57227ZM19.4301 8.52441C18.6994 8.52441 18.235 8.17324 18.235 7.63516C18.235 7.08008 18.6824 6.75723 19.5377 6.70625L21.0613 6.60996V7.1084C21.0613 7.93535 20.359 8.52441 19.4301 8.52441ZM24.0746 11.9059C25.4113 11.9059 26.04 11.3961 26.5895 9.8498L28.9967 3.09824H27.6033L25.9891 8.31484H25.9607L24.3465 3.09824H22.9135L25.2357 9.52695L25.1111 9.91777C24.9016 10.5805 24.5617 10.8354 23.9557 10.8354C23.848 10.8354 23.6385 10.824 23.5535 10.8127V11.8719C23.6328 11.8945 23.9727 11.9059 24.0746 11.9059Z" fill="black"/>
|
|
5352
5378
|
</g>
|
|
@@ -5356,7 +5382,7 @@ const _i = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5356
5382
|
</clipPath>
|
|
5357
5383
|
</defs>
|
|
5358
5384
|
</svg>
|
|
5359
|
-
`,
|
|
5385
|
+
`, wi = `<svg width="52" height="21" viewBox="0 0 52 21" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5360
5386
|
<g clip-path="url(#clip0_23934_4296)">
|
|
5361
5387
|
<path d="M24.5944 10.0883V16.1414H22.6741V1.19278H27.7671C28.375 1.18008 28.9794 1.2879 29.5455 1.51002C30.1115 1.73213 30.628 2.06415 31.065 2.4869C31.5065 2.88399 31.8578 3.37098 32.0954 3.91513C32.3331 4.45929 32.4514 5.048 32.4426 5.64171C32.4553 6.23859 32.3387 6.83115 32.1009 7.37877C31.8631 7.92639 31.5098 8.41612 31.065 8.8144C30.1744 9.66364 29.0751 10.0879 27.7671 10.0871H24.5944V10.0883ZM24.5944 3.03318V8.25143H27.8148C28.1678 8.26189 28.5192 8.19856 28.8464 8.06547C29.1735 7.93238 29.4693 7.73247 29.7148 7.47853C29.959 7.2411 30.1532 6.95711 30.2857 6.64336C30.4183 6.3296 30.4866 5.99245 30.4866 5.65184C30.4866 5.31124 30.4183 4.97409 30.2857 4.66033C30.1532 4.34658 29.959 4.06259 29.7148 3.82516C29.4724 3.56587 29.1776 3.36106 28.8501 3.22432C28.5225 3.08757 28.1696 3.02201 27.8148 3.03199H24.5944V3.03318Z" fill="black"/>
|
|
5362
5388
|
<path d="M36.8677 5.57959C38.2871 5.57959 39.4075 5.95888 40.2289 6.71747C41.0503 7.47605 41.4606 8.51612 41.4598 9.83768V16.1413H39.623V14.722H39.5395C38.7443 15.8909 37.6868 16.4753 36.3668 16.4753C35.24 16.4753 34.2974 16.1413 33.5388 15.4734C33.1747 15.1668 32.8837 14.7829 32.6868 14.3496C32.49 13.9163 32.3923 13.4445 32.4009 12.9686C32.4009 11.9103 32.8009 11.0686 33.6008 10.4436C34.4007 9.8186 35.4686 9.5053 36.8045 9.50371C37.9448 9.50371 38.8839 9.71244 39.6218 10.1299V9.69097C39.624 9.36657 39.5539 9.04574 39.4167 8.75177C39.2795 8.45779 39.0786 8.19803 38.8286 7.99132C38.3208 7.53316 37.659 7.28317 36.9751 7.29118C35.9024 7.29118 35.0536 7.74362 34.4286 8.64852L32.7373 7.5834C33.6676 6.24753 35.0444 5.57959 36.8677 5.57959ZM34.3833 13.0104C34.382 13.2548 34.4391 13.4959 34.5499 13.7138C34.6607 13.9316 34.8219 14.1198 35.0202 14.2628C35.4449 14.5968 35.972 14.7738 36.5123 14.7637C37.3226 14.7624 38.0994 14.4398 38.6724 13.8668C39.3085 13.268 39.6266 12.5655 39.6266 11.7592C39.0278 11.2821 38.1929 11.0435 37.1218 11.0435C36.3417 11.0435 35.6913 11.2316 35.1705 11.6077C34.6445 11.9894 34.3833 12.4534 34.3833 13.0104Z" fill="black"/>
|
|
@@ -5372,7 +5398,7 @@ const _i = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5372
5398
|
</clipPath>
|
|
5373
5399
|
</defs>
|
|
5374
5400
|
</svg>
|
|
5375
|
-
`,
|
|
5401
|
+
`, Ti = `<svg width="25" height="12" viewBox="0 0 25 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5376
5402
|
<rect width="25" height="11.5385" rx="2.88462" fill="#00579F"/>
|
|
5377
5403
|
<g clip-path="url(#clip0_22788_48747)">
|
|
5378
5404
|
<path d="M9.84078 8.57012H8.36084L9.2865 2.98535H10.7664L9.84078 8.57012Z" fill="white"/>
|
|
@@ -5387,7 +5413,7 @@ const _i = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5387
5413
|
</clipPath>
|
|
5388
5414
|
</defs>
|
|
5389
5415
|
</svg>
|
|
5390
|
-
`,
|
|
5416
|
+
`, Li = `<svg width="36" height="22" viewBox="0 0 36 22" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
5391
5417
|
<rect width="36" height="22" fill="url(#pattern0_23934_927)"/>
|
|
5392
5418
|
<defs>
|
|
5393
5419
|
<pattern id="pattern0_23934_927" patternContentUnits="objectBoundingBox" width="1" height="1">
|
|
@@ -5396,26 +5422,26 @@ const _i = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5396
5422
|
<image id="image0_23934_927" width="989" height="768" preserveAspectRatio="none" xlink:href="data:image/png;base64,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"/>
|
|
5397
5423
|
</defs>
|
|
5398
5424
|
</svg>
|
|
5399
|
-
`,
|
|
5400
|
-
kaspi_pay:
|
|
5401
|
-
new_card:
|
|
5402
|
-
apple_pay:
|
|
5403
|
-
google_pay:
|
|
5404
|
-
visa:
|
|
5405
|
-
mastercard:
|
|
5425
|
+
`, Ri = {
|
|
5426
|
+
kaspi_pay: Qi,
|
|
5427
|
+
new_card: ki,
|
|
5428
|
+
apple_pay: Pi,
|
|
5429
|
+
google_pay: wi,
|
|
5430
|
+
visa: Ti,
|
|
5431
|
+
mastercard: Li
|
|
5406
5432
|
};
|
|
5407
|
-
function
|
|
5433
|
+
function Oi(e) {
|
|
5408
5434
|
const t = e == null ? void 0 : e.toLowerCase();
|
|
5409
|
-
return t &&
|
|
5435
|
+
return t && Ri[t] || "";
|
|
5410
5436
|
}
|
|
5411
|
-
const
|
|
5437
|
+
const Ht = `<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5412
5438
|
<path d="M19.7045 10.7313C15.0567 10.7313 11.2687 6.94328 11.2687 2.26866C11.2687 2.10746 11.1612 2 11 2C10.8388 2 10.7313 2.10746 10.7313 2.26866C10.7313 6.94328 6.94328 10.7313 2.26866 10.7313C2.10746 10.7313 2 10.8388 2 11C2 11.1612 2.10746 11.2687 2.26866 11.2687C6.94328 11.2687 10.7313 15.0567 10.7313 19.7313C10.7313 19.8925 10.8388 20 11 20C11.1612 20 11.2687 19.8925 11.2687 19.7313C11.2687 15.0567 15.0567 11.2687 19.7313 11.2687C19.8925 11.2687 20 11.1612 20 11C20 10.8388 19.8657 10.7313 19.7045 10.7313Z" fill="#2F2F2F"/>
|
|
5413
5439
|
</svg>
|
|
5414
|
-
`,
|
|
5415
|
-
function
|
|
5416
|
-
return
|
|
5440
|
+
`, Ni = '<svg class="choco-widget-method-item-trash" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.16663 5.83317H15.8333" stroke="#CC3434" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M15 5.8335V15.0002C15 15.921 14.2542 16.6668 13.3333 16.6668H6.66667C5.74583 16.6668 5 15.921 5 15.0002V5.8335" stroke="#CC3434" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M12.5 3.12516H7.5" stroke="#CC3434" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M8.33329 9.1665V13.3332" stroke="#CC3434" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M11.6667 9.1665V13.3332" stroke="#CC3434" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>', Di = '<svg class="choco-widget-method-item-check" width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.3333 4.3335L5.99996 11.6668L2.66663 8.3335" stroke="#242424" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>';
|
|
5441
|
+
function Ve(e) {
|
|
5442
|
+
return Oi(e == null ? void 0 : e.iconType);
|
|
5417
5443
|
}
|
|
5418
|
-
function
|
|
5444
|
+
function Ar(e, t, n, r = {}) {
|
|
5419
5445
|
const { editMode: o = !1 } = r;
|
|
5420
5446
|
return (o ? e.filter((c) => c.type === "card") : e).map((c) => {
|
|
5421
5447
|
const u = !o && !!t && t.type === c.type && t.cardId === c.cardId, l = JSON.stringify(c).replace(/'/g, "'");
|
|
@@ -5424,7 +5450,7 @@ function lr(e, t, n, r = {}) {
|
|
|
5424
5450
|
class="choco-widget-method-item choco-widget-method-item--edit"
|
|
5425
5451
|
role="listitem"
|
|
5426
5452
|
>
|
|
5427
|
-
<div class="choco-widget-method-item-icon-wrapper" aria-hidden="true">${
|
|
5453
|
+
<div class="choco-widget-method-item-icon-wrapper" aria-hidden="true">${Ve(c)}</div>
|
|
5428
5454
|
<div class="choco-widget-method-item-label">${c.label}</div>
|
|
5429
5455
|
<button
|
|
5430
5456
|
type="button"
|
|
@@ -5433,7 +5459,7 @@ function lr(e, t, n, r = {}) {
|
|
|
5433
5459
|
data-method='${l}'
|
|
5434
5460
|
aria-label="${c.label} — Удалить"
|
|
5435
5461
|
>
|
|
5436
|
-
${
|
|
5462
|
+
${Ni}
|
|
5437
5463
|
</button>
|
|
5438
5464
|
</div>
|
|
5439
5465
|
` : `
|
|
@@ -5445,14 +5471,14 @@ function lr(e, t, n, r = {}) {
|
|
|
5445
5471
|
aria-label="${c.label}${u ? " (выбрано)" : ""}"
|
|
5446
5472
|
type="button"
|
|
5447
5473
|
>
|
|
5448
|
-
<div class="choco-widget-method-item-icon-wrapper ${c.type}" aria-hidden="true">${
|
|
5474
|
+
<div class="choco-widget-method-item-icon-wrapper ${c.type}" aria-hidden="true">${Ve(c)}</div>
|
|
5449
5475
|
<div class="choco-widget-method-item-label">${c.label}</div>
|
|
5450
|
-
${u ?
|
|
5476
|
+
${u ? Di : ""}
|
|
5451
5477
|
</button>
|
|
5452
5478
|
`;
|
|
5453
5479
|
}).join("");
|
|
5454
5480
|
}
|
|
5455
|
-
function
|
|
5481
|
+
function Mi(e, t, n, r) {
|
|
5456
5482
|
if (!e) return "";
|
|
5457
5483
|
const o = typeof e.amount == "number" && Number.isFinite(e.amount), i = typeof e.percent == "number" && Number.isFinite(e.percent);
|
|
5458
5484
|
return `
|
|
@@ -5465,7 +5491,7 @@ function Di(e, t, n, r) {
|
|
|
5465
5491
|
</div>
|
|
5466
5492
|
<div class="choco-widget-balance-label-wrapper">
|
|
5467
5493
|
<div class="choco-widget-balance-icon">
|
|
5468
|
-
${
|
|
5494
|
+
${Ht}
|
|
5469
5495
|
</div>
|
|
5470
5496
|
<div class="choco-widget-balance-amount">${o ? $(e.amount, "ru", r) : 0}</div>
|
|
5471
5497
|
<label class="choco-widget-toggle">
|
|
@@ -5476,7 +5502,7 @@ function Di(e, t, n, r) {
|
|
|
5476
5502
|
</div>
|
|
5477
5503
|
`;
|
|
5478
5504
|
}
|
|
5479
|
-
function
|
|
5505
|
+
function xi(e, t, n, r, o) {
|
|
5480
5506
|
if (!e) return "";
|
|
5481
5507
|
const i = new Date(e.expires_at), c = isNaN(i.getTime()) ? "" : `${String(i.getDate()).padStart(2, "0")}.${String(i.getMonth() + 1).padStart(2, "0")}`, u = c ? r("couponUntil", { date: c }) : "", l = Number(e.reward_amount), h = Number.isFinite(l) && l > 0 ? $(l, "ru", o) : null;
|
|
5482
5508
|
return `
|
|
@@ -5490,7 +5516,7 @@ function Mi(e, t, n, r, o) {
|
|
|
5490
5516
|
<div class="choco-widget-balance-label-wrapper">
|
|
5491
5517
|
${h ? `
|
|
5492
5518
|
<div class="choco-widget-balance-icon">
|
|
5493
|
-
${
|
|
5519
|
+
${Ht}
|
|
5494
5520
|
</div>
|
|
5495
5521
|
<div class="choco-widget-balance-amount">${h}</div>
|
|
5496
5522
|
` : ""}
|
|
@@ -5502,7 +5528,7 @@ function Mi(e, t, n, r, o) {
|
|
|
5502
5528
|
</div>
|
|
5503
5529
|
`;
|
|
5504
5530
|
}
|
|
5505
|
-
function
|
|
5531
|
+
function Ui(e, t, n, r, o, i, c, u, l) {
|
|
5506
5532
|
if (!e && !n && !o) return "";
|
|
5507
5533
|
const h = e ? `
|
|
5508
5534
|
<div class="choco-widget-balance-toggle" data-action="toggle-balance">
|
|
@@ -5513,7 +5539,7 @@ function xi(e, t, n, r, o, i, c, u, l) {
|
|
|
5513
5539
|
</div>
|
|
5514
5540
|
<div class="choco-widget-balance-label-wrapper">
|
|
5515
5541
|
<div class="choco-widget-balance-icon">
|
|
5516
|
-
${
|
|
5542
|
+
${Ht}
|
|
5517
5543
|
</div>
|
|
5518
5544
|
<div class="choco-widget-balance-amount">${e}</div>
|
|
5519
5545
|
<label class="choco-widget-toggle">
|
|
@@ -5525,13 +5551,13 @@ function xi(e, t, n, r, o, i, c, u, l) {
|
|
|
5525
5551
|
` : "";
|
|
5526
5552
|
return `
|
|
5527
5553
|
<div class="choco-widget-balance-section">
|
|
5528
|
-
${
|
|
5554
|
+
${xi(o, i, c, u, l)}
|
|
5529
5555
|
${h}
|
|
5530
|
-
${
|
|
5556
|
+
${Mi(n, r, u, l)}
|
|
5531
5557
|
</div>
|
|
5532
5558
|
`;
|
|
5533
5559
|
}
|
|
5534
|
-
function
|
|
5560
|
+
function Fi(e, t) {
|
|
5535
5561
|
return e ? `
|
|
5536
5562
|
<div class="choco-widget-cashback-section">
|
|
5537
5563
|
<div class="choco-widget-cashback-info">
|
|
@@ -5543,7 +5569,7 @@ function Ui(e, t) {
|
|
|
5543
5569
|
</div>
|
|
5544
5570
|
` : "";
|
|
5545
5571
|
}
|
|
5546
|
-
function
|
|
5572
|
+
function Xi(e) {
|
|
5547
5573
|
const {
|
|
5548
5574
|
amountFormatted: t,
|
|
5549
5575
|
originalAmountFormatted: n,
|
|
@@ -5566,7 +5592,7 @@ function Fi(e) {
|
|
|
5566
5592
|
freedomAmountFormatted: R,
|
|
5567
5593
|
t: L,
|
|
5568
5594
|
currency: q
|
|
5569
|
-
} = e, D = (o == null ? void 0 : o.label) ?? L("selectMethod"), G =
|
|
5595
|
+
} = e, D = (o == null ? void 0 : o.label) ?? L("selectMethod"), G = Ve(o), z = Ar(i, c), J = Ui(u, l, h, y, m, b, I, L, q), M = Fi(B, L), v = (c == null ? void 0 : c.type) === "google_pay", g = (c == null ? void 0 : c.type) === "apple_pay", p = v || g;
|
|
5570
5596
|
return `
|
|
5571
5597
|
<div class="choco-widget-bottom-bar" role="region" aria-label="${L("paymentMethod")}">
|
|
5572
5598
|
${J}
|
|
@@ -5695,20 +5721,20 @@ function Fi(e) {
|
|
|
5695
5721
|
</div>
|
|
5696
5722
|
`;
|
|
5697
5723
|
}
|
|
5698
|
-
function
|
|
5724
|
+
function Hi() {
|
|
5699
5725
|
return `
|
|
5700
5726
|
<div class="choco-widget-bottom-bar-prerender">
|
|
5701
5727
|
<div class="choco-widget-payment-loading"></div>
|
|
5702
5728
|
</div>
|
|
5703
5729
|
`;
|
|
5704
5730
|
}
|
|
5705
|
-
function
|
|
5706
|
-
return
|
|
5707
|
-
}
|
|
5708
|
-
function ji(e) {
|
|
5709
|
-
return Ye(e);
|
|
5731
|
+
function ji(e, t, n, r = {}) {
|
|
5732
|
+
return Ar(e, t, n, r);
|
|
5710
5733
|
}
|
|
5711
5734
|
function Ji(e) {
|
|
5735
|
+
return Ve(e);
|
|
5736
|
+
}
|
|
5737
|
+
function qi(e) {
|
|
5712
5738
|
if (typeof document > "u") return { mountTarget: null, isEmbedded: !1 };
|
|
5713
5739
|
const t = e.config.containerSelector;
|
|
5714
5740
|
if (t) {
|
|
@@ -5717,21 +5743,21 @@ function Ji(e) {
|
|
|
5717
5743
|
}
|
|
5718
5744
|
return { mountTarget: document.body, isEmbedded: !1 };
|
|
5719
5745
|
}
|
|
5720
|
-
function
|
|
5746
|
+
function dr(e) {
|
|
5721
5747
|
if (typeof document > "u") return !1;
|
|
5722
5748
|
e.container || (e.container = document.createElement("div"), e.container.id = "choco-one-click-widget", e.container.className = "choco-one-click-widget");
|
|
5723
|
-
const { mountTarget: t, isEmbedded: n } =
|
|
5749
|
+
const { mountTarget: t, isEmbedded: n } = qi(e);
|
|
5724
5750
|
return t ? (e.container.parentElement !== t && t.appendChild(e.container), e.container.classList.toggle("choco-one-click-widget--embedded", n), !0) : !1;
|
|
5725
5751
|
}
|
|
5726
|
-
function qi(e) {
|
|
5727
|
-
Ar(e) && (e.container.style.setProperty("--choco-widget-accent-color", e.config.color), e.container.innerHTML = Xi());
|
|
5728
|
-
}
|
|
5729
5752
|
function zi(e) {
|
|
5753
|
+
dr(e) && (e.container.style.setProperty("--choco-widget-accent-color", e.config.color), e.container.innerHTML = Hi());
|
|
5754
|
+
}
|
|
5755
|
+
function Ki(e) {
|
|
5730
5756
|
var y, m, b, I, B;
|
|
5731
|
-
if (e._destroyed || !
|
|
5757
|
+
if (e._destroyed || !dr(e)) return;
|
|
5732
5758
|
e.container.style.setProperty("--choco-widget-accent-color", e.config.color), e.container.classList.remove("choco-one-click-widget--visible");
|
|
5733
5759
|
const t = e.getAvailablePaymentMethods(), n = (y = e.checkoutContext) == null ? void 0 : y.data, r = e.config.currency || "KZT", o = (I = (b = (m = n == null ? void 0 : n.balance) == null ? void 0 : m.data) == null ? void 0 : b.money) == null ? void 0 : I[r], i = !e.config.disableUseBalance && o > 0 ? $(o, e.config.locale, e.config.currency) : null, c = (B = n == null ? void 0 : n.cashback) == null ? void 0 : B.data, u = (c == null ? void 0 : c.cashbackAmount) > 0 ? $(c.cashbackAmount, e.config.locale, e.config.currency) : null, l = e._getPayableAmount(), h = l < e.config.amount;
|
|
5734
|
-
e.container.innerHTML =
|
|
5760
|
+
e.container.innerHTML = Xi({
|
|
5735
5761
|
amountFormatted: $(l, e.config.locale, e.config.currency),
|
|
5736
5762
|
originalAmountFormatted: $(
|
|
5737
5763
|
e.config.amount,
|
|
@@ -5773,14 +5799,14 @@ function zi(e) {
|
|
|
5773
5799
|
});
|
|
5774
5800
|
});
|
|
5775
5801
|
}
|
|
5776
|
-
function
|
|
5802
|
+
function ke(e) {
|
|
5777
5803
|
var r;
|
|
5778
5804
|
const t = (r = e.container) == null ? void 0 : r.querySelector(
|
|
5779
5805
|
".choco-widget-payment-methods"
|
|
5780
5806
|
);
|
|
5781
5807
|
if (!t) return;
|
|
5782
5808
|
const n = e.getAvailablePaymentMethods();
|
|
5783
|
-
t.innerHTML =
|
|
5809
|
+
t.innerHTML = ji(
|
|
5784
5810
|
n,
|
|
5785
5811
|
e.selectedPaymentMethod,
|
|
5786
5812
|
(o) => e.t(o),
|
|
@@ -5789,25 +5815,25 @@ function Qe(e) {
|
|
|
5789
5815
|
o.addEventListener("click", (i) => {
|
|
5790
5816
|
i.stopPropagation();
|
|
5791
5817
|
const c = JSON.parse(o.getAttribute("data-method") || "{}");
|
|
5792
|
-
|
|
5818
|
+
Zi(e, c);
|
|
5793
5819
|
});
|
|
5794
5820
|
}), t.querySelectorAll("[data-action='select-method']").forEach((o) => {
|
|
5795
5821
|
o.addEventListener("click", (i) => {
|
|
5796
5822
|
const c = JSON.parse(
|
|
5797
5823
|
i.currentTarget.getAttribute("data-method") || "{}"
|
|
5798
5824
|
);
|
|
5799
|
-
|
|
5825
|
+
gr(e, c);
|
|
5800
5826
|
});
|
|
5801
5827
|
});
|
|
5802
5828
|
}
|
|
5803
|
-
function
|
|
5829
|
+
function fr(e) {
|
|
5804
5830
|
var o, i, c;
|
|
5805
5831
|
const t = (o = e.container) == null ? void 0 : o.querySelector(".choco-widget-payment-method"), n = (i = e.container) == null ? void 0 : i.querySelector(".choco-widget-method-name"), r = (c = e.container) == null ? void 0 : c.querySelector(
|
|
5806
5832
|
".choco-widget-method-icon-wrapper"
|
|
5807
5833
|
);
|
|
5808
|
-
t && e.selectedPaymentMethod && (t.className = `choco-widget-payment-method ${e.selectedPaymentMethod.type}`), n && e.selectedPaymentMethod && (n.className = `choco-widget-method-name ${e.selectedPaymentMethod.type}`, n.textContent = e.selectedPaymentMethod.label), r && e.selectedPaymentMethod && (r.className = `choco-widget-method-icon-wrapper ${e.selectedPaymentMethod.type}`, r.innerHTML =
|
|
5834
|
+
t && e.selectedPaymentMethod && (t.className = `choco-widget-payment-method ${e.selectedPaymentMethod.type}`), n && e.selectedPaymentMethod && (n.className = `choco-widget-method-name ${e.selectedPaymentMethod.type}`, n.textContent = e.selectedPaymentMethod.label), r && e.selectedPaymentMethod && (r.className = `choco-widget-method-icon-wrapper ${e.selectedPaymentMethod.type}`, r.innerHTML = Ji(e.selectedPaymentMethod)), hr(e);
|
|
5809
5835
|
}
|
|
5810
|
-
function
|
|
5836
|
+
function qe(e) {
|
|
5811
5837
|
var m, b, I, B, Q, S;
|
|
5812
5838
|
const t = (m = e.container) == null ? void 0 : m.querySelector(".choco-widget-pay-button"), n = (b = e.container) == null ? void 0 : b.querySelector(
|
|
5813
5839
|
".choco-widget-google-pay-amount"
|
|
@@ -5837,7 +5863,7 @@ function Je(e) {
|
|
|
5837
5863
|
".choco-widget-google-pay-amount-value-number"
|
|
5838
5864
|
)), i ? i.textContent = h : o && (o.textContent = `${e.t("instead")} ${h}`);
|
|
5839
5865
|
}
|
|
5840
|
-
function
|
|
5866
|
+
function hr(e) {
|
|
5841
5867
|
var l, h, y, m, b, I, B, Q, S, P;
|
|
5842
5868
|
const t = ((l = e.selectedPaymentMethod) == null ? void 0 : l.type) === "google_pay", n = ((h = e.selectedPaymentMethod) == null ? void 0 : h.type) === "apple_pay", r = t || n, o = (y = e.container) == null ? void 0 : y.querySelector(".choco-widget-pay-button"), i = (m = e.container) == null ? void 0 : m.querySelector(
|
|
5843
5869
|
".choco-widget-google-pay-amount"
|
|
@@ -5846,7 +5872,7 @@ function fr(e) {
|
|
|
5846
5872
|
"choco-widget-google-pay-amount--hidden",
|
|
5847
5873
|
!r
|
|
5848
5874
|
), c == null || c.classList.toggle("choco-widget-google-pay-row--hidden", !t), u == null || u.classList.toggle("choco-widget-apple-pay-row--hidden", !n), t) {
|
|
5849
|
-
|
|
5875
|
+
Gi(e);
|
|
5850
5876
|
const k = (B = e.container) == null ? void 0 : B.querySelector(
|
|
5851
5877
|
'[data-action="apple-pay-button-slot"]'
|
|
5852
5878
|
);
|
|
@@ -5856,7 +5882,7 @@ function fr(e) {
|
|
|
5856
5882
|
const k = (Q = e.container) == null ? void 0 : Q.querySelector(
|
|
5857
5883
|
'[data-action="google-pay-button-slot"]'
|
|
5858
5884
|
);
|
|
5859
|
-
k && (k.innerHTML = ""),
|
|
5885
|
+
k && (k.innerHTML = ""), Wi(e);
|
|
5860
5886
|
} else {
|
|
5861
5887
|
e._googlePayButtonRenderVersion += 1;
|
|
5862
5888
|
const k = (S = e.container) == null ? void 0 : S.querySelector(
|
|
@@ -5866,9 +5892,9 @@ function fr(e) {
|
|
|
5866
5892
|
);
|
|
5867
5893
|
k && (k.innerHTML = ""), R && (R.innerHTML = "");
|
|
5868
5894
|
}
|
|
5869
|
-
|
|
5895
|
+
qe(e), ae(e);
|
|
5870
5896
|
}
|
|
5871
|
-
async function
|
|
5897
|
+
async function Gi(e) {
|
|
5872
5898
|
var c, u, l, h, y;
|
|
5873
5899
|
const t = (c = e.container) == null ? void 0 : c.querySelector(
|
|
5874
5900
|
'[data-action="google-pay-button-slot"]'
|
|
@@ -5897,9 +5923,9 @@ async function Ki(e) {
|
|
|
5897
5923
|
});
|
|
5898
5924
|
i.classList.add("choco-widget-google-pay-button"), i.style.setProperty("width", "100%", "important"), i.style.setProperty("height", "52px", "important"), i.style.setProperty("min-height", "52px", "important"), i.style.setProperty("border-radius", "12px", "important"), i.style.setProperty("font-size", "16px", "important"), i.style.setProperty("font-weight", "bold", "important"), i.querySelectorAll("*").forEach((m) => {
|
|
5899
5925
|
m.style.setProperty("border-radius", "12px", "important"), m.style.setProperty("font-weight", "bold", "important"), m.style.setProperty("font-size", "16px", "important");
|
|
5900
|
-
}), t.appendChild(i),
|
|
5926
|
+
}), t.appendChild(i), ae(e);
|
|
5901
5927
|
}
|
|
5902
|
-
function
|
|
5928
|
+
function Wi(e) {
|
|
5903
5929
|
var i, c;
|
|
5904
5930
|
const t = (i = e.container) == null ? void 0 : i.querySelector(
|
|
5905
5931
|
'[data-action="apple-pay-button-slot"]'
|
|
@@ -5924,9 +5950,9 @@ function Gi(e) {
|
|
|
5924
5950
|
</defs>
|
|
5925
5951
|
</svg>
|
|
5926
5952
|
</span>
|
|
5927
|
-
`, n.appendChild(r), n.appendChild(o), t.appendChild(n),
|
|
5953
|
+
`, n.appendChild(r), n.appendChild(o), t.appendChild(n), ae(e);
|
|
5928
5954
|
}
|
|
5929
|
-
function
|
|
5955
|
+
function Rn(e) {
|
|
5930
5956
|
var o;
|
|
5931
5957
|
if (!e.selectedCoupon) return;
|
|
5932
5958
|
const t = e._isCouponDisabled();
|
|
@@ -5937,8 +5963,8 @@ function Ln(e) {
|
|
|
5937
5963
|
const r = n.querySelector("input[type='checkbox']");
|
|
5938
5964
|
r && (r.disabled = t, t && (r.checked = !1));
|
|
5939
5965
|
}
|
|
5940
|
-
function
|
|
5941
|
-
e.loading = !0,
|
|
5966
|
+
function ge(e) {
|
|
5967
|
+
e.loading = !0, ae(e);
|
|
5942
5968
|
}
|
|
5943
5969
|
function K(e) {
|
|
5944
5970
|
var m, b, I, B, Q, S, P, k;
|
|
@@ -5954,7 +5980,7 @@ function K(e) {
|
|
|
5954
5980
|
), h = e._isInteractionBlocked(), y = e.paymentMethodDisabled || h;
|
|
5955
5981
|
t && (t.disabled = y), n && (n.disabled = h, n.classList.remove("choco-widget-pay-button--loading")), r && (r.disabled = h), o && (o.disabled = h), i == null || i.classList.toggle("choco-widget-wallet-blocked", h), i == null || i.setAttribute("aria-disabled", String(h)), c == null || c.classList.toggle("choco-widget-wallet-blocked", h), c == null || c.setAttribute("aria-disabled", String(h)), u == null || u.classList.toggle("choco-widget-wallet-blocked", h), u == null || u.setAttribute("aria-disabled", String(h)), l == null || l.classList.remove("disabled");
|
|
5956
5982
|
}
|
|
5957
|
-
function
|
|
5983
|
+
function ae(e) {
|
|
5958
5984
|
var b, I, B, Q, S, P, k, R, L;
|
|
5959
5985
|
const t = (b = e.container) == null ? void 0 : b.querySelector(".choco-widget-payment-method"), n = (I = e.container) == null ? void 0 : I.querySelector(".choco-widget-pay-button"), r = (B = e.container) == null ? void 0 : B.querySelector(".choco-widget-freedom-card-btn"), o = (Q = e.container) == null ? void 0 : Q.querySelector(
|
|
5960
5986
|
".choco-widget-google-pay-button-slot button"
|
|
@@ -5967,52 +5993,52 @@ function ie(e) {
|
|
|
5967
5993
|
), y = e._isInteractionBlocked(), m = e.paymentMethodDisabled || y;
|
|
5968
5994
|
h == null || h.classList.toggle("disabled", y), t && (t.disabled = m), n && (n.disabled = y, n.classList.toggle("choco-widget-pay-button--loading", e.loading)), r && (r.disabled = y), o && (o.disabled = y), i && (i.disabled = y), c == null || c.classList.toggle("choco-widget-wallet-blocked", y), c == null || c.setAttribute("aria-disabled", String(y)), u == null || u.classList.toggle("choco-widget-wallet-blocked", y), u == null || u.setAttribute("aria-disabled", String(y)), l == null || l.classList.toggle("choco-widget-wallet-blocked", y), l == null || l.setAttribute("aria-disabled", String(y));
|
|
5969
5995
|
}
|
|
5970
|
-
function
|
|
5996
|
+
function pr(e) {
|
|
5971
5997
|
var n;
|
|
5972
5998
|
if (e._isInteractionBlocked()) return;
|
|
5973
5999
|
const t = (n = e.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
5974
|
-
t && (t.classList.add("choco-widget-payment-sheet--open"), e.isPaymentSheetOpen = !0,
|
|
6000
|
+
t && (t.classList.add("choco-widget-payment-sheet--open"), e.isPaymentSheetOpen = !0, Pe(e));
|
|
5975
6001
|
}
|
|
5976
|
-
function
|
|
6002
|
+
function ce(e) {
|
|
5977
6003
|
var n;
|
|
5978
6004
|
const t = (n = e.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
5979
6005
|
if (t) {
|
|
5980
|
-
|
|
6006
|
+
Ze(e);
|
|
5981
6007
|
const r = t.querySelector(".choco-widget-sheet-content");
|
|
5982
|
-
r && (r.style.transform = "", r.classList.remove("choco-widget-sheet-content--dragging")), t.classList.remove("choco-widget-payment-sheet--open"), e.isPaymentSheetOpen = !1, e.isPaymentSheetEditMode && (e.isPaymentSheetEditMode = !1,
|
|
6008
|
+
r && (r.style.transform = "", r.classList.remove("choco-widget-sheet-content--dragging")), t.classList.remove("choco-widget-payment-sheet--open"), e.isPaymentSheetOpen = !1, e.isPaymentSheetEditMode && (e.isPaymentSheetEditMode = !1, ke(e), Pe(e));
|
|
5983
6009
|
}
|
|
5984
6010
|
}
|
|
5985
|
-
function
|
|
6011
|
+
function Pe(e) {
|
|
5986
6012
|
var l;
|
|
5987
6013
|
const t = (l = e.container) == null ? void 0 : l.querySelector('[data-sheet="payment"]');
|
|
5988
6014
|
if (!t) return;
|
|
5989
6015
|
const n = t.querySelector(".choco-widget-sheet-title"), r = t.querySelector('[data-action="close-sheet"]'), o = t.querySelector('[data-action="edit-sheet"]'), i = t.querySelector('[data-action="previous-sheet"]'), u = e.getAvailablePaymentMethods().some((h) => h.type === "card");
|
|
5990
6016
|
e.isPaymentSheetEditMode ? (t.classList.add("choco-widget-payment-sheet--edit"), n && (n.textContent = e.t("editCards")), r && (r.style.display = "none"), o && (o.style.display = "none"), i && (i.style.display = "")) : (t.classList.remove("choco-widget-payment-sheet--edit"), t.classList.toggle("choco-widget-payment-sheet--no-cards", !u), n && (n.textContent = e.t("paymentMethods")), r && (r.style.display = ""), o && (o.style.display = u ? "" : "none"), i && (i.style.display = "none"));
|
|
5991
6017
|
}
|
|
5992
|
-
function
|
|
6018
|
+
function yt(e) {
|
|
5993
6019
|
if (!e.addCardActionUrl || !e.container) return;
|
|
5994
6020
|
const t = e.container.querySelector('[data-sheet="add-card"]'), n = e.container.querySelector(
|
|
5995
6021
|
"#choco-widget-add-card-iframe"
|
|
5996
6022
|
);
|
|
5997
|
-
t && n && (n.src = e.addCardActionUrl, t.classList.add("choco-widget-payment-sheet--open"), t.style.display = "flex", t.setAttribute("aria-hidden", "false"), e.isAddCardViewOpen = !0,
|
|
6023
|
+
t && n && (n.src = e.addCardActionUrl, t.classList.add("choco-widget-payment-sheet--open"), t.style.display = "flex", t.setAttribute("aria-hidden", "false"), e.isAddCardViewOpen = !0, Yi(e));
|
|
5998
6024
|
}
|
|
5999
|
-
function
|
|
6025
|
+
function Ie(e) {
|
|
6000
6026
|
var r, o;
|
|
6001
6027
|
const t = (r = e.container) == null ? void 0 : r.querySelector('[data-sheet="add-card"]'), n = (o = e.container) == null ? void 0 : o.querySelector(
|
|
6002
6028
|
"#choco-widget-add-card-iframe"
|
|
6003
6029
|
);
|
|
6004
|
-
t && (t.classList.remove("choco-widget-payment-sheet--open"), t.style.display = "none", t.setAttribute("aria-hidden", "true")), n && (n.src = "about:blank"), e.addCardActionUrl = null, e.isAddCardViewOpen = !1,
|
|
6030
|
+
t && (t.classList.remove("choco-widget-payment-sheet--open"), t.style.display = "none", t.setAttribute("aria-hidden", "true")), n && (n.src = "about:blank"), e.addCardActionUrl = null, e.isAddCardViewOpen = !1, Vi(e);
|
|
6005
6031
|
}
|
|
6006
|
-
function
|
|
6032
|
+
function Yi(e) {
|
|
6007
6033
|
e._boundAddCardMessage = (t) => {
|
|
6008
6034
|
var n;
|
|
6009
|
-
e.isAddCardViewOpen && (n = t.data) != null && n.message && t.origin === "https://rahmetapp.kz" &&
|
|
6035
|
+
e.isAddCardViewOpen && (n = t.data) != null && n.message && t.origin === "https://rahmetapp.kz" && ge(e);
|
|
6010
6036
|
}, window.addEventListener("message", e._boundAddCardMessage);
|
|
6011
6037
|
}
|
|
6012
|
-
function
|
|
6038
|
+
function Vi(e) {
|
|
6013
6039
|
e._boundAddCardMessage && (window.removeEventListener("message", e._boundAddCardMessage), e._boundAddCardMessage = null);
|
|
6014
6040
|
}
|
|
6015
|
-
function
|
|
6041
|
+
function Zi(e, t) {
|
|
6016
6042
|
var c;
|
|
6017
6043
|
e._pendingDeleteMethod = t;
|
|
6018
6044
|
const n = (c = e.container) == null ? void 0 : c.querySelector('[data-sheet="payment"]');
|
|
@@ -6021,13 +6047,13 @@ function Vi(e, t) {
|
|
|
6021
6047
|
const r = n.querySelector(".choco-widget-sheet-title"), o = n.querySelector('[data-action="edit-sheet"]'), i = n.querySelector('[data-action="previous-sheet"]');
|
|
6022
6048
|
r && (r.textContent = e.t("confirmDeleteCard")), o && (o.style.display = "none"), i && (i.style.display = "none");
|
|
6023
6049
|
}
|
|
6024
|
-
function
|
|
6050
|
+
function Ze(e) {
|
|
6025
6051
|
var n;
|
|
6026
|
-
e._pendingDeleteMethod = null,
|
|
6052
|
+
e._pendingDeleteMethod = null, Lt(e, !1);
|
|
6027
6053
|
const t = (n = e.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
6028
|
-
t == null || t.classList.remove("choco-widget-payment-sheet--delete-confirm"),
|
|
6054
|
+
t == null || t.classList.remove("choco-widget-payment-sheet--delete-confirm"), Pe(e);
|
|
6029
6055
|
}
|
|
6030
|
-
function
|
|
6056
|
+
function Lt(e, t) {
|
|
6031
6057
|
var i, c, u;
|
|
6032
6058
|
const n = (i = e.container) == null ? void 0 : i.querySelector(
|
|
6033
6059
|
".choco-widget-sheet-delete-confirm-actions"
|
|
@@ -6038,36 +6064,36 @@ function Tt(e, t) {
|
|
|
6038
6064
|
);
|
|
6039
6065
|
n == null || n.classList.toggle("choco-widget-sheet-delete-confirm-actions--loading", t), r && (r.disabled = t), o && (o.disabled = t, o.classList.toggle("choco-widget-delete-confirm-btn--loading", t));
|
|
6040
6066
|
}
|
|
6041
|
-
async function
|
|
6067
|
+
async function $i(e, t) {
|
|
6042
6068
|
var r, o;
|
|
6043
6069
|
const n = t == null ? void 0 : t.cardId;
|
|
6044
6070
|
if (!(!n || (t == null ? void 0 : t.type) !== "card"))
|
|
6045
6071
|
try {
|
|
6046
|
-
await
|
|
6072
|
+
await xr(e.apiUrl, e._getApiConfig(), n), e.checkoutContext = await Et(
|
|
6047
6073
|
e.apiUrl,
|
|
6048
6074
|
e._getApiConfig()
|
|
6049
|
-
), ((r = e.selectedPaymentMethod) == null ? void 0 : r.type) === "card" && ((o = e.selectedPaymentMethod) == null ? void 0 : o.cardId) === n && (e.selectedPaymentMethod =
|
|
6075
|
+
), ((r = e.selectedPaymentMethod) == null ? void 0 : r.type) === "card" && ((o = e.selectedPaymentMethod) == null ? void 0 : o.cardId) === n && (e.selectedPaymentMethod = Ct(
|
|
6050
6076
|
e.checkoutContext.data,
|
|
6051
6077
|
e._getKaspiOptions()
|
|
6052
|
-
), e._emitPaymentMethodSelected(),
|
|
6078
|
+
), e._emitPaymentMethodSelected(), fr(e)), ke(e), e.config.onSuccess({ message: e.t("cardDeleted") }), e.config.onCardDeleted && e.config.onCardDeleted({ cardId: n });
|
|
6053
6079
|
} catch (i) {
|
|
6054
6080
|
e.config.onError({
|
|
6055
6081
|
attributes: { message: (i == null ? void 0 : i.message) || e.t("paymentError") }
|
|
6056
6082
|
});
|
|
6057
6083
|
}
|
|
6058
6084
|
}
|
|
6059
|
-
function
|
|
6085
|
+
function gr(e, t) {
|
|
6060
6086
|
if (!e._isInteractionBlocked()) {
|
|
6061
6087
|
if (e.selectedPaymentMethod = t, e._emitPaymentMethodSelected(), t.type === "new_card") {
|
|
6062
|
-
e._emitUserEvent("one_click_pay_method_resolved", { payment_method: t.type }),
|
|
6088
|
+
e._emitUserEvent("one_click_pay_method_resolved", { payment_method: t.type }), ce(e), e.handlePayment();
|
|
6063
6089
|
return;
|
|
6064
6090
|
}
|
|
6065
6091
|
e._emitUserEvent("one_click_pay_method_resolved", {
|
|
6066
6092
|
payment_method: e._getPaymentMethodForUserEvent()
|
|
6067
|
-
}),
|
|
6093
|
+
}), ke(e), ce(e), fr(e);
|
|
6068
6094
|
}
|
|
6069
6095
|
}
|
|
6070
|
-
function
|
|
6096
|
+
function On(e, t) {
|
|
6071
6097
|
var r;
|
|
6072
6098
|
const n = t.type || ((r = t.data) == null ? void 0 : r.type);
|
|
6073
6099
|
if (!n) {
|
|
@@ -6076,48 +6102,48 @@ function Rn(e, t) {
|
|
|
6076
6102
|
}
|
|
6077
6103
|
switch (n) {
|
|
6078
6104
|
case "order.paid":
|
|
6079
|
-
e._orderStatusResolved = !0,
|
|
6105
|
+
e._orderStatusResolved = !0, fe(e), mr(e, t);
|
|
6080
6106
|
break;
|
|
6081
6107
|
case "order.failed":
|
|
6082
|
-
e._orderStatusResolved = !0,
|
|
6108
|
+
e._orderStatusResolved = !0, fe(e), Cr(e, t);
|
|
6083
6109
|
break;
|
|
6084
6110
|
case "order.action_required":
|
|
6085
|
-
|
|
6111
|
+
ea(e, t);
|
|
6086
6112
|
break;
|
|
6087
6113
|
default:
|
|
6088
6114
|
console.warn("Unknown event type:", n);
|
|
6089
6115
|
}
|
|
6090
6116
|
}
|
|
6091
|
-
function
|
|
6117
|
+
function fe(e) {
|
|
6092
6118
|
e._orderStatusPollingId && (clearInterval(e._orderStatusPollingId), e._orderStatusPollingId = null);
|
|
6093
6119
|
}
|
|
6094
|
-
function
|
|
6095
|
-
|
|
6120
|
+
function Be(e, t) {
|
|
6121
|
+
fe(e), e._orderStatusResolved = !1;
|
|
6096
6122
|
const n = 6e3, r = 5;
|
|
6097
6123
|
let o = 0;
|
|
6098
6124
|
const i = async () => {
|
|
6099
6125
|
if (!e._orderStatusResolved) {
|
|
6100
6126
|
if (o >= r) {
|
|
6101
|
-
|
|
6127
|
+
fe(e), K(e), e.config.onError({
|
|
6102
6128
|
attributes: { message: e.t("errorNoServerResponseRetry") }
|
|
6103
6129
|
});
|
|
6104
6130
|
return;
|
|
6105
6131
|
}
|
|
6106
6132
|
o += 1;
|
|
6107
6133
|
try {
|
|
6108
|
-
const { data: c } = await
|
|
6134
|
+
const { data: c } = await Fr(
|
|
6109
6135
|
e.apiUrl,
|
|
6110
6136
|
e._getApiConfig(),
|
|
6111
6137
|
String(t)
|
|
6112
6138
|
), u = c == null ? void 0 : c.status, l = (c == null ? void 0 : c.payload) || {};
|
|
6113
6139
|
if (u === "success") {
|
|
6114
|
-
e._orderStatusResolved = !0,
|
|
6140
|
+
e._orderStatusResolved = !0, fe(e), mr(e, {
|
|
6115
6141
|
id: String(l.id || t),
|
|
6116
6142
|
attributes: { amount: l.amount, paid_at: l.paid_at || "" }
|
|
6117
6143
|
});
|
|
6118
6144
|
return;
|
|
6119
6145
|
}
|
|
6120
|
-
u === "fail" && (e._orderStatusResolved = !0,
|
|
6146
|
+
u === "fail" && (e._orderStatusResolved = !0, fe(e), Cr(e, {
|
|
6121
6147
|
id: String(l.id || t),
|
|
6122
6148
|
attributes: { message: l.message || e.t("paymentError") }
|
|
6123
6149
|
}));
|
|
@@ -6128,34 +6154,34 @@ function Ie(e, t) {
|
|
|
6128
6154
|
};
|
|
6129
6155
|
e._orderStatusPollingId = setInterval(i, n), i();
|
|
6130
6156
|
}
|
|
6131
|
-
function
|
|
6157
|
+
function jt() {
|
|
6132
6158
|
return typeof document > "u" ? !1 : document.hidden || document.visibilityState === "hidden";
|
|
6133
6159
|
}
|
|
6134
|
-
function
|
|
6160
|
+
function yr(e, t) {
|
|
6135
6161
|
K(e), e.config.onSuccess(t);
|
|
6136
6162
|
}
|
|
6137
|
-
function
|
|
6138
|
-
if (!e._pendingSuccessPayload ||
|
|
6163
|
+
function mt(e) {
|
|
6164
|
+
if (!e._pendingSuccessPayload || jt()) return;
|
|
6139
6165
|
const t = e._pendingSuccessPayload;
|
|
6140
|
-
e._pendingSuccessPayload = null,
|
|
6166
|
+
e._pendingSuccessPayload = null, yr(e, t);
|
|
6141
6167
|
}
|
|
6142
|
-
function
|
|
6168
|
+
function mr(e, t) {
|
|
6143
6169
|
var o, i;
|
|
6144
|
-
e.isAddCardViewOpen &&
|
|
6170
|
+
e.isAddCardViewOpen && Ie(e);
|
|
6145
6171
|
const n = t.attributes || ((o = t.data) == null ? void 0 : o.attributes) || {}, r = { id: t.id || ((i = t.data) == null ? void 0 : i.id), attributes: n };
|
|
6146
|
-
if (
|
|
6172
|
+
if (jt()) {
|
|
6147
6173
|
e._pendingSuccessPayload = r;
|
|
6148
6174
|
return;
|
|
6149
6175
|
}
|
|
6150
|
-
|
|
6176
|
+
yr(e, r);
|
|
6151
6177
|
}
|
|
6152
|
-
function
|
|
6178
|
+
function Cr(e, t) {
|
|
6153
6179
|
var r, o;
|
|
6154
|
-
e.isAddCardViewOpen &&
|
|
6180
|
+
e.isAddCardViewOpen && Ie(e), K(e);
|
|
6155
6181
|
const n = t.attributes || ((r = t.data) == null ? void 0 : r.attributes) || {};
|
|
6156
6182
|
e.config.onError({ id: t.id || ((o = t.data) == null ? void 0 : o.id), attributes: n });
|
|
6157
6183
|
}
|
|
6158
|
-
function
|
|
6184
|
+
function ea(e, t) {
|
|
6159
6185
|
var i, c, u;
|
|
6160
6186
|
const n = t.attributes || ((i = t.data) == null ? void 0 : i.attributes) || {}, r = n.action_link || n.action_url, o = n.action_url_type || n.action_type || "redirect";
|
|
6161
6187
|
if (!r) {
|
|
@@ -6168,7 +6194,7 @@ function $i(e, t) {
|
|
|
6168
6194
|
}
|
|
6169
6195
|
if (((c = e.selectedPaymentMethod) == null ? void 0 : c.type) === "kaspi_pay") {
|
|
6170
6196
|
const l = t.id || ((u = t.data) == null ? void 0 : u.id);
|
|
6171
|
-
if (l && !e._orderStatusResolved && !e._orderStatusPollingId &&
|
|
6197
|
+
if (l && !e._orderStatusResolved && !e._orderStatusPollingId && Be(e, String(l)), typeof e.config.onKaspiLink == "function") {
|
|
6172
6198
|
e.config.onKaspiLink({
|
|
6173
6199
|
action_link: r,
|
|
6174
6200
|
action_url: r,
|
|
@@ -6180,7 +6206,7 @@ function $i(e, t) {
|
|
|
6180
6206
|
}
|
|
6181
6207
|
window.location.href = r;
|
|
6182
6208
|
}
|
|
6183
|
-
async function
|
|
6209
|
+
async function ta(e) {
|
|
6184
6210
|
var n, r, o, i, c;
|
|
6185
6211
|
if (!e.selectedPaymentMethod) {
|
|
6186
6212
|
e.config.onError({
|
|
@@ -6190,18 +6216,18 @@ async function ea(e) {
|
|
|
6190
6216
|
}
|
|
6191
6217
|
const { checkoutOptions: t } = e._getPaymentBreakdown();
|
|
6192
6218
|
if (e._isBalanceFullyCoveringAmount()) {
|
|
6193
|
-
|
|
6219
|
+
ge(e);
|
|
6194
6220
|
try {
|
|
6195
|
-
const u = await
|
|
6221
|
+
const u = await rn(
|
|
6196
6222
|
e.apiUrl,
|
|
6197
6223
|
e._getApiConfig(),
|
|
6198
6224
|
e.deviceId,
|
|
6199
6225
|
e.selectedPaymentMethod,
|
|
6200
6226
|
t
|
|
6201
6227
|
);
|
|
6202
|
-
await
|
|
6228
|
+
await Nn(e);
|
|
6203
6229
|
const l = (u == null ? void 0 : u.id) ?? ((n = u == null ? void 0 : u.data) == null ? void 0 : n.id);
|
|
6204
|
-
return l &&
|
|
6230
|
+
return l && Be(e, String(l)), u;
|
|
6205
6231
|
} catch (u) {
|
|
6206
6232
|
throw K(e), se(u, { paymentMethod: "balance" }), e.config.onError({
|
|
6207
6233
|
attributes: { message: e._resolveErrorMessage(u) }
|
|
@@ -6209,29 +6235,29 @@ async function ea(e) {
|
|
|
6209
6235
|
}
|
|
6210
6236
|
}
|
|
6211
6237
|
if (e.selectedPaymentMethod.type === "new_card") {
|
|
6212
|
-
await
|
|
6238
|
+
await na(e, t);
|
|
6213
6239
|
return;
|
|
6214
6240
|
}
|
|
6215
6241
|
if (e.selectedPaymentMethod.type === "apple_pay") {
|
|
6216
|
-
await
|
|
6242
|
+
await ra(e, t);
|
|
6217
6243
|
return;
|
|
6218
6244
|
}
|
|
6219
6245
|
if (e.selectedPaymentMethod.type === "google_pay") {
|
|
6220
|
-
await
|
|
6246
|
+
await oa(e, t);
|
|
6221
6247
|
return;
|
|
6222
6248
|
}
|
|
6223
|
-
|
|
6249
|
+
ge(e);
|
|
6224
6250
|
try {
|
|
6225
|
-
const u = await
|
|
6251
|
+
const u = await rn(
|
|
6226
6252
|
e.apiUrl,
|
|
6227
6253
|
e._getApiConfig(),
|
|
6228
6254
|
e.deviceId,
|
|
6229
6255
|
e.selectedPaymentMethod,
|
|
6230
6256
|
t
|
|
6231
6257
|
);
|
|
6232
|
-
await
|
|
6258
|
+
await Nn(e);
|
|
6233
6259
|
const l = (u == null ? void 0 : u.id) ?? ((r = u == null ? void 0 : u.data) == null ? void 0 : r.id);
|
|
6234
|
-
if (l &&
|
|
6260
|
+
if (l && Be(e, String(l)), ((o = e.selectedPaymentMethod) == null ? void 0 : o.type) === "kaspi_pay") {
|
|
6235
6261
|
const h = (u == null ? void 0 : u.attributes) || ((i = u == null ? void 0 : u.data) == null ? void 0 : i.attributes) || {}, y = h.action_link || h.action_url, m = h.action_url_type || h.action_type || "redirect";
|
|
6236
6262
|
if (y)
|
|
6237
6263
|
return typeof e.config.onKaspiLink == "function" ? (e.config.onKaspiLink({
|
|
@@ -6246,11 +6272,11 @@ async function ea(e) {
|
|
|
6246
6272
|
throw K(e), se(u, { paymentMethod: ((c = e.selectedPaymentMethod) == null ? void 0 : c.type) || "card" }), e.config.onError({ message: e._resolveErrorMessage(u) }), u;
|
|
6247
6273
|
}
|
|
6248
6274
|
}
|
|
6249
|
-
async function
|
|
6275
|
+
async function Nn(e) {
|
|
6250
6276
|
var t, n;
|
|
6251
6277
|
if (!(((t = e.selectedPaymentMethod) == null ? void 0 : t.type) !== "card" || !((n = e.selectedPaymentMethod) != null && n.cardId)))
|
|
6252
6278
|
try {
|
|
6253
|
-
await
|
|
6279
|
+
await Ur(
|
|
6254
6280
|
e.apiUrl,
|
|
6255
6281
|
e._getApiConfig(),
|
|
6256
6282
|
e.selectedPaymentMethod.cardId
|
|
@@ -6259,10 +6285,10 @@ async function On(e) {
|
|
|
6259
6285
|
console.warn("Failed to mark selected card as default:", r);
|
|
6260
6286
|
}
|
|
6261
6287
|
}
|
|
6262
|
-
async function
|
|
6263
|
-
|
|
6288
|
+
async function na(e, t) {
|
|
6289
|
+
ge(e), e.waitingForNewCardAction = !0, e._setNewCardActionTimeout();
|
|
6264
6290
|
try {
|
|
6265
|
-
await
|
|
6291
|
+
await Xr(
|
|
6266
6292
|
e.apiUrl,
|
|
6267
6293
|
e._getApiConfig(),
|
|
6268
6294
|
e.deviceId,
|
|
@@ -6274,39 +6300,39 @@ async function ta(e, t) {
|
|
|
6274
6300
|
}), console.error("New card payment error:", n);
|
|
6275
6301
|
}
|
|
6276
6302
|
}
|
|
6277
|
-
let
|
|
6278
|
-
async function
|
|
6303
|
+
let Se = null;
|
|
6304
|
+
async function ra(e, t) {
|
|
6279
6305
|
const n = window.ApplePaySession;
|
|
6280
6306
|
if (!n || !n.canMakePayments()) {
|
|
6281
6307
|
e.config.onError({ attributes: { message: e.t("errorApplePayUnsupported") } });
|
|
6282
6308
|
return;
|
|
6283
6309
|
}
|
|
6284
|
-
if (
|
|
6285
|
-
|
|
6310
|
+
if (Se) return;
|
|
6311
|
+
ge(e);
|
|
6286
6312
|
const r = {
|
|
6287
6313
|
countryCode: e.config.currency === "GEL" ? "GE" : "KZ",
|
|
6288
6314
|
currencyCode: e.config.currency,
|
|
6289
6315
|
supportedNetworks: ["visa", "masterCard"],
|
|
6290
6316
|
merchantCapabilities: ["supports3DS"],
|
|
6291
6317
|
total: {
|
|
6292
|
-
label: "Choco",
|
|
6318
|
+
label: e.config.merchantName || "Choco",
|
|
6293
6319
|
amount: String(e._getPayableAmount()),
|
|
6294
6320
|
type: "final"
|
|
6295
6321
|
}
|
|
6296
6322
|
}, o = new n(3, r);
|
|
6297
|
-
|
|
6323
|
+
Se = o, o.onvalidatemerchant = async (i) => {
|
|
6298
6324
|
var c, u;
|
|
6299
6325
|
try {
|
|
6300
6326
|
let l;
|
|
6301
6327
|
try {
|
|
6302
|
-
l = await
|
|
6328
|
+
l = await on(
|
|
6303
6329
|
e.apiUrl,
|
|
6304
6330
|
e._getApiConfig(),
|
|
6305
6331
|
i.validationURL
|
|
6306
6332
|
);
|
|
6307
6333
|
} catch (m) {
|
|
6308
6334
|
if (m.status === 401)
|
|
6309
|
-
await e._obtainTokenByRefreshOrTrackId(), l = await
|
|
6335
|
+
await e._obtainTokenByRefreshOrTrackId(), l = await on(
|
|
6310
6336
|
e.apiUrl,
|
|
6311
6337
|
e._getApiConfig(),
|
|
6312
6338
|
i.validationURL
|
|
@@ -6326,18 +6352,18 @@ async function na(e, t) {
|
|
|
6326
6352
|
const h = await e.config.onBeforeCheckout();
|
|
6327
6353
|
h && typeof h == "object" && Object.assign(e.config, h);
|
|
6328
6354
|
}
|
|
6329
|
-
const u = await
|
|
6355
|
+
const u = await jr(
|
|
6330
6356
|
e.apiUrl,
|
|
6331
6357
|
e._getApiConfig(),
|
|
6332
6358
|
e.deviceId,
|
|
6333
6359
|
i.payment,
|
|
6334
6360
|
t
|
|
6335
6361
|
);
|
|
6336
|
-
o.completePayment(n.STATUS_SUCCESS),
|
|
6362
|
+
o.completePayment(n.STATUS_SUCCESS), Se = null;
|
|
6337
6363
|
const l = (u == null ? void 0 : u.id) ?? ((c = u == null ? void 0 : u.data) == null ? void 0 : c.id);
|
|
6338
|
-
l && !e._orderStatusResolved &&
|
|
6364
|
+
l && !e._orderStatusResolved && Be(e, String(l));
|
|
6339
6365
|
} catch (u) {
|
|
6340
|
-
console.error("Apple Pay payment error:", u), se(u, { paymentMethod: "apple_pay", phase: "payment_authorized" }), o.completePayment(n.STATUS_FAILURE),
|
|
6366
|
+
console.error("Apple Pay payment error:", u), se(u, { paymentMethod: "apple_pay", phase: "payment_authorized" }), o.completePayment(n.STATUS_FAILURE), Se = null, K(e), e.config.onError({
|
|
6341
6367
|
attributes: {
|
|
6342
6368
|
message: e._resolveErrorMessage(u, "errorApplePayPayment")
|
|
6343
6369
|
}
|
|
@@ -6345,7 +6371,7 @@ async function na(e, t) {
|
|
|
6345
6371
|
}
|
|
6346
6372
|
}, o.oncancel = () => {
|
|
6347
6373
|
var i;
|
|
6348
|
-
if (
|
|
6374
|
+
if (Se = null, K(e), ((i = e.selectedPaymentMethod) == null ? void 0 : i.type) === "apple_pay") {
|
|
6349
6375
|
e.config.onError({
|
|
6350
6376
|
attributes: { message: e.t("errorApplePayInterrupted") }
|
|
6351
6377
|
});
|
|
@@ -6354,7 +6380,7 @@ async function na(e, t) {
|
|
|
6354
6380
|
e.config.onCancel();
|
|
6355
6381
|
}, o.begin();
|
|
6356
6382
|
}
|
|
6357
|
-
async function
|
|
6383
|
+
async function oa(e, t) {
|
|
6358
6384
|
var S, P, k, R, L, q;
|
|
6359
6385
|
const n = (S = e.checkoutContext) == null ? void 0 : S.data, r = ((k = (P = n == null ? void 0 : n.payment_methods) == null ? void 0 : P.data) == null ? void 0 : k.attributes) || {}, o = r.google_pay_settings || {};
|
|
6360
6386
|
if (!(r.payment_method_google_pay === "enabled" || r.payment_method_google_pay === !0)) {
|
|
@@ -6376,7 +6402,7 @@ async function ra(e, t) {
|
|
|
6376
6402
|
return;
|
|
6377
6403
|
}
|
|
6378
6404
|
if (e.config.isNativeAndroid) {
|
|
6379
|
-
await
|
|
6405
|
+
await sa(e, t, { gateway: c, gatewayMerchantId: u });
|
|
6380
6406
|
return;
|
|
6381
6407
|
}
|
|
6382
6408
|
const m = Number(e._getCheckoutAmount()).toFixed(2);
|
|
@@ -6429,17 +6455,17 @@ async function ra(e, t) {
|
|
|
6429
6455
|
e.config.onError({ attributes: { message: e.t("errorGooglePayUnsupported") } });
|
|
6430
6456
|
return;
|
|
6431
6457
|
}
|
|
6432
|
-
|
|
6458
|
+
ge(e);
|
|
6433
6459
|
const G = await Q.loadPaymentData(B), z = (L = (R = G == null ? void 0 : G.paymentMethodData) == null ? void 0 : R.tokenizationData) == null ? void 0 : L.token;
|
|
6434
6460
|
if (!z) throw new Error(e.t("errorGooglePayPayment"));
|
|
6435
|
-
const J = JSON.parse(z), M = await
|
|
6461
|
+
const J = JSON.parse(z), M = await Xn(
|
|
6436
6462
|
e.apiUrl,
|
|
6437
6463
|
e._getApiConfig(),
|
|
6438
6464
|
e.deviceId,
|
|
6439
6465
|
J,
|
|
6440
6466
|
t
|
|
6441
6467
|
), v = (M == null ? void 0 : M.id) ?? ((q = M == null ? void 0 : M.data) == null ? void 0 : q.id);
|
|
6442
|
-
v &&
|
|
6468
|
+
v && Be(e, String(v));
|
|
6443
6469
|
} catch (D) {
|
|
6444
6470
|
K(e), D.statusCode === "CANCELED" ? e.config.onCancel() : (se(D, { paymentMethod: "google_pay" }), e.config.onError({
|
|
6445
6471
|
attributes: {
|
|
@@ -6448,26 +6474,26 @@ async function ra(e, t) {
|
|
|
6448
6474
|
}), console.error("Google Pay error:", D));
|
|
6449
6475
|
}
|
|
6450
6476
|
}
|
|
6451
|
-
async function
|
|
6477
|
+
async function sa(e, t, n) {
|
|
6452
6478
|
var r;
|
|
6453
6479
|
if (!e.config.onPayWithGooglePay) {
|
|
6454
6480
|
e.config.onError({ attributes: { message: e.t("errorGooglePayUnsupported") } });
|
|
6455
6481
|
return;
|
|
6456
6482
|
}
|
|
6457
|
-
|
|
6483
|
+
ge(e);
|
|
6458
6484
|
try {
|
|
6459
6485
|
const o = await e.config.onPayWithGooglePay({
|
|
6460
6486
|
amount: Number(e._getCheckoutAmount()),
|
|
6461
6487
|
gateway: n.gateway,
|
|
6462
6488
|
gatewayMerchantId: n.gatewayMerchantId
|
|
6463
|
-
}), i = JSON.parse(o), c = await
|
|
6489
|
+
}), i = JSON.parse(o), c = await Xn(
|
|
6464
6490
|
e.apiUrl,
|
|
6465
6491
|
e._getApiConfig(),
|
|
6466
6492
|
e.deviceId,
|
|
6467
6493
|
i,
|
|
6468
6494
|
t
|
|
6469
6495
|
), u = (c == null ? void 0 : c.id) ?? ((r = c == null ? void 0 : c.data) == null ? void 0 : r.id);
|
|
6470
|
-
u &&
|
|
6496
|
+
u && Be(e, String(u));
|
|
6471
6497
|
} catch (o) {
|
|
6472
6498
|
K(e), o.statusCode === "CANCELED" ? e.config.onCancel() : (se(o, { paymentMethod: "google_pay_native" }), e.config.onError({
|
|
6473
6499
|
attributes: {
|
|
@@ -6476,52 +6502,52 @@ async function oa(e, t, n) {
|
|
|
6476
6502
|
}), console.error("Google Pay native error:", o));
|
|
6477
6503
|
}
|
|
6478
6504
|
}
|
|
6479
|
-
function
|
|
6505
|
+
function ia(e) {
|
|
6480
6506
|
var c, u, l, h, y, m, b, I, B, Q, S, P;
|
|
6481
6507
|
const t = e.container;
|
|
6482
6508
|
(c = t.querySelector('[data-action="freedom-card"]')) == null || c.addEventListener("click", () => {
|
|
6483
6509
|
e.config.onFreedomLink && e.config.onFreedomLink();
|
|
6484
|
-
}), (u = t.querySelector('[data-action="pay"]')) == null || u.addEventListener("click", () => e.handlePayment()), (l = t.querySelector('[data-action="change-method"]')) == null || l.addEventListener("click", () =>
|
|
6485
|
-
e._pendingDeleteMethod ?
|
|
6510
|
+
}), (u = t.querySelector('[data-action="pay"]')) == null || u.addEventListener("click", () => e.handlePayment()), (l = t.querySelector('[data-action="change-method"]')) == null || l.addEventListener("click", () => pr(e)), t.querySelectorAll('[data-action="close"]').forEach((k) => k.addEventListener("click", () => e.close())), (h = t.querySelector('[data-action="close-sheet"]')) == null || h.addEventListener("click", () => {
|
|
6511
|
+
e._pendingDeleteMethod ? Ze(e) : ce(e);
|
|
6486
6512
|
}), (y = t.querySelector('[data-action="edit-sheet"]')) == null || y.addEventListener("click", () => {
|
|
6487
|
-
e.isPaymentSheetEditMode = !0,
|
|
6513
|
+
e.isPaymentSheetEditMode = !0, ke(e), Pe(e);
|
|
6488
6514
|
}), (m = t.querySelector('[data-action="previous-sheet"]')) == null || m.addEventListener("click", () => {
|
|
6489
|
-
e.isPaymentSheetEditMode = !1,
|
|
6490
|
-
}), (b = t.querySelector('[data-action="close-add-card"]')) == null || b.addEventListener("click", () =>
|
|
6515
|
+
e.isPaymentSheetEditMode = !1, ke(e), Pe(e);
|
|
6516
|
+
}), (b = t.querySelector('[data-action="close-add-card"]')) == null || b.addEventListener("click", () => Ie(e)), (I = t.querySelector('[data-action="confirm-delete-cancel"]')) == null || I.addEventListener("click", () => Ze(e)), (B = t.querySelector('[data-action="confirm-delete-submit"]')) == null || B.addEventListener("click", () => {
|
|
6491
6517
|
if (e._pendingDeleteMethod) {
|
|
6492
6518
|
const k = e._pendingDeleteMethod;
|
|
6493
|
-
|
|
6519
|
+
Lt(e, !0), $i(e, k).then(() => ce(e)).finally(() => Lt(e, !1));
|
|
6494
6520
|
}
|
|
6495
6521
|
}), t.querySelectorAll(".choco-widget-method-item").forEach((k) => {
|
|
6496
6522
|
k.addEventListener("click", (R) => {
|
|
6497
6523
|
const L = JSON.parse(
|
|
6498
6524
|
R.currentTarget.getAttribute("data-method") || "{}"
|
|
6499
6525
|
);
|
|
6500
|
-
|
|
6526
|
+
gr(e, L);
|
|
6501
6527
|
});
|
|
6502
6528
|
});
|
|
6503
6529
|
const n = t.querySelector('[data-sheet="payment"]');
|
|
6504
6530
|
n && (n.addEventListener("click", (k) => {
|
|
6505
|
-
k.target === n &&
|
|
6506
|
-
}),
|
|
6531
|
+
k.target === n && ce(e);
|
|
6532
|
+
}), ca(e, n));
|
|
6507
6533
|
const r = t.querySelector('[data-action="toggle-balance"]');
|
|
6508
6534
|
r && ((Q = r.querySelector("input[type='checkbox']")) == null || Q.addEventListener("change", (k) => {
|
|
6509
|
-
e.useBalance = k.target.checked,
|
|
6535
|
+
e.useBalance = k.target.checked, Rn(e), e._updatePayButtonAmount();
|
|
6510
6536
|
}));
|
|
6511
6537
|
const o = t.querySelector('[data-action="toggle-bonuses"]');
|
|
6512
6538
|
o && ((S = o.querySelector("input[type='checkbox']")) == null || S.addEventListener("change", (k) => {
|
|
6513
|
-
e.useBonuses = k.target.checked, e.config.onAppliedBonus(e.useBonuses),
|
|
6539
|
+
e.useBonuses = k.target.checked, e.config.onAppliedBonus(e.useBonuses), Rn(e), e._updatePayButtonAmount();
|
|
6514
6540
|
}));
|
|
6515
6541
|
const i = t.querySelector('[data-action="toggle-coupon"]');
|
|
6516
6542
|
i && ((P = i.querySelector("input[type='checkbox']")) == null || P.addEventListener("change", (k) => {
|
|
6517
6543
|
e.useCoupon = k.target.checked, e._updatePayButtonAmount();
|
|
6518
|
-
})), document.removeEventListener("keydown", e._boundKeyDown), document.addEventListener("keydown", e._boundKeyDown),
|
|
6544
|
+
})), document.removeEventListener("keydown", e._boundKeyDown), document.addEventListener("keydown", e._boundKeyDown), hr(e);
|
|
6519
6545
|
}
|
|
6520
|
-
function
|
|
6546
|
+
function aa(e, t) {
|
|
6521
6547
|
var n, r;
|
|
6522
|
-
e.isOpen && (t.key === "Escape" && (t.preventDefault(), e._pendingDeleteMethod ?
|
|
6548
|
+
e.isOpen && (t.key === "Escape" && (t.preventDefault(), e._pendingDeleteMethod ? Ze(e) : e.isAddCardViewOpen ? Ie(e) : e.isPaymentSheetOpen ? ce(e) : e.close()), t.key === "Enter" && ((r = (n = t.target) == null ? void 0 : n.dataset) == null ? void 0 : r.action) === "pay" && (t.preventDefault(), e.handlePayment()));
|
|
6523
6549
|
}
|
|
6524
|
-
function
|
|
6550
|
+
function ca(e, t) {
|
|
6525
6551
|
const n = t.querySelector('[data-action="sheet-drag-handle"]'), r = t.querySelector(".choco-widget-sheet-content");
|
|
6526
6552
|
if (!n || !r) return;
|
|
6527
6553
|
const o = 80;
|
|
@@ -6536,7 +6562,7 @@ function aa(e, t) {
|
|
|
6536
6562
|
if (r.classList.remove("choco-widget-sheet-content--dragging"), y >= o) {
|
|
6537
6563
|
r.style.transform = "translateY(100%)";
|
|
6538
6564
|
const m = () => {
|
|
6539
|
-
r.removeEventListener("transitionend", m), r.style.transform = "",
|
|
6565
|
+
r.removeEventListener("transitionend", m), r.style.transform = "", ce(e);
|
|
6540
6566
|
};
|
|
6541
6567
|
r.addEventListener("transitionend", m);
|
|
6542
6568
|
} else
|
|
@@ -6546,23 +6572,23 @@ function aa(e, t) {
|
|
|
6546
6572
|
!e.isPaymentSheetOpen || h.button !== 0 || (h.preventDefault(), i = h.clientY, c = h.clientY, r.classList.add("choco-widget-sheet-content--dragging"), n.setPointerCapture(h.pointerId), n.addEventListener("pointermove", u), n.addEventListener("pointerup", l), n.addEventListener("pointercancel", l));
|
|
6547
6573
|
});
|
|
6548
6574
|
}
|
|
6549
|
-
class
|
|
6575
|
+
class Ce {
|
|
6550
6576
|
// ─── Статические методы / logout ─────────────────────────────────────────────
|
|
6551
6577
|
static _getAuthStorageValue(t) {
|
|
6552
|
-
return
|
|
6578
|
+
return Fn(t);
|
|
6553
6579
|
}
|
|
6554
6580
|
static _setAuthStorageValue(t, n) {
|
|
6555
|
-
|
|
6581
|
+
bt(t, n);
|
|
6556
6582
|
}
|
|
6557
6583
|
static _removeAuthStorageValue(t) {
|
|
6558
|
-
|
|
6584
|
+
We(t);
|
|
6559
6585
|
}
|
|
6560
6586
|
static async logout() {
|
|
6561
|
-
|
|
6587
|
+
Ln();
|
|
6562
6588
|
}
|
|
6563
6589
|
// ─── Конструктор ──────────────────────────────────────────────────────────────
|
|
6564
6590
|
constructor(t) {
|
|
6565
|
-
this.config =
|
|
6591
|
+
this.config = Jr(t), this.accessToken = null, this.deviceId = Dn(), this.apiUrl = Ir(this.config.environment), this.translations = Er, this.checkoutContext = null, this.centrifuge = null, this.selectedPaymentMethod = null, this.selectedCoupon = null, this.useCoupon = !1, this.container = null, this.isOpen = !1, this.isPaymentSheetOpen = !1, this.isPaymentSheetEditMode = !1, this.loading = !1, this.disabled = !1, this.paymentMethodDisabled = !1, this.useBalance = !1, this.useBonuses = !1, this.addCardActionUrl = null, this.isAddCardViewOpen = !1, this.waitingForNewCardAction = !1, this.newCardActionRequiredTimeoutId = null, this._googlePayScriptPromise = null, this._googlePayButtonRenderVersion = 0, this._orderStatusPollingId = null, this._orderStatusResolved = !1, this._pendingDeleteMethod = null, this._pendingSuccessPayload = null, this._lifecycleListenersAttached = !1, this._destroyed = !1, this._boundAddCardMessage = null, this._boundKeyDown = (n) => aa(this, n), this._boundVisibilityChange = () => this._onVisibilityChange(), this._boundWindowFocus = () => this._onWindowFocus(), this._boundPageShow = () => this._onPageShow(), Si({
|
|
6566
6592
|
clientId: String(this.config.clientId),
|
|
6567
6593
|
terminalId: String(this.config.terminalId),
|
|
6568
6594
|
environment: this.config.environment
|
|
@@ -6657,16 +6683,16 @@ class me {
|
|
|
6657
6683
|
}
|
|
6658
6684
|
// ─── Делегаторы в модули (вызываются из domUI/events через widget.method()) ──
|
|
6659
6685
|
_attachEventListeners() {
|
|
6660
|
-
|
|
6686
|
+
ia(this);
|
|
6661
6687
|
}
|
|
6662
6688
|
_updatePayButtonAmount() {
|
|
6663
|
-
|
|
6689
|
+
qe(this);
|
|
6664
6690
|
}
|
|
6665
6691
|
_showAddCardView() {
|
|
6666
|
-
|
|
6692
|
+
yt(this);
|
|
6667
6693
|
}
|
|
6668
6694
|
_closeAddCardView() {
|
|
6669
|
-
|
|
6695
|
+
Ie(this);
|
|
6670
6696
|
}
|
|
6671
6697
|
// ─── Таймауты новой карты ─────────────────────────────────────────────────────
|
|
6672
6698
|
_setNewCardActionTimeout() {
|
|
@@ -6681,19 +6707,19 @@ class me {
|
|
|
6681
6707
|
}
|
|
6682
6708
|
// ─── Хранение токенов ────────────────────────────────────────────────────────
|
|
6683
6709
|
_saveTokensToStorage(t, n) {
|
|
6684
|
-
|
|
6710
|
+
Je(t, n);
|
|
6685
6711
|
}
|
|
6686
6712
|
_clearAuthStorage() {
|
|
6687
|
-
|
|
6713
|
+
Ln();
|
|
6688
6714
|
}
|
|
6689
6715
|
_getAuthStorageValue(t) {
|
|
6690
|
-
return
|
|
6716
|
+
return Ce._getAuthStorageValue(t);
|
|
6691
6717
|
}
|
|
6692
6718
|
_setAuthStorageValue(t, n) {
|
|
6693
|
-
|
|
6719
|
+
Ce._setAuthStorageValue(t, n);
|
|
6694
6720
|
}
|
|
6695
6721
|
_removeAuthStorageValue(t) {
|
|
6696
|
-
|
|
6722
|
+
Ce._removeAuthStorageValue(t);
|
|
6697
6723
|
}
|
|
6698
6724
|
// ─── Google Pay SDK (используется из domUI + paymentFlow) ────────────────────
|
|
6699
6725
|
_loadGooglePaySdk() {
|
|
@@ -6725,27 +6751,27 @@ class me {
|
|
|
6725
6751
|
this._lifecycleListenersAttached && (document.removeEventListener("visibilitychange", this._boundVisibilityChange), window.removeEventListener("focus", this._boundWindowFocus), window.removeEventListener("pageshow", this._boundPageShow), this._lifecycleListenersAttached = !1);
|
|
6726
6752
|
}
|
|
6727
6753
|
_onVisibilityChange() {
|
|
6728
|
-
|
|
6754
|
+
jt() || mt(this);
|
|
6729
6755
|
}
|
|
6730
6756
|
_onWindowFocus() {
|
|
6731
|
-
|
|
6757
|
+
mt(this);
|
|
6732
6758
|
}
|
|
6733
6759
|
_onPageShow() {
|
|
6734
|
-
|
|
6760
|
+
mt(this);
|
|
6735
6761
|
}
|
|
6736
6762
|
// ─── Авторизация (приватная) ──────────────────────────────────────────────────
|
|
6737
6763
|
async _obtainTokenByRefreshOrTrackId() {
|
|
6738
|
-
await
|
|
6764
|
+
await _i(this);
|
|
6739
6765
|
}
|
|
6740
6766
|
async _fetchCheckoutContextWithRetry() {
|
|
6741
6767
|
try {
|
|
6742
|
-
this.checkoutContext = await
|
|
6768
|
+
this.checkoutContext = await Et(
|
|
6743
6769
|
this.apiUrl,
|
|
6744
6770
|
this._getApiConfig()
|
|
6745
6771
|
);
|
|
6746
6772
|
} catch (t) {
|
|
6747
6773
|
if (t.status === 401)
|
|
6748
|
-
this._removeAuthStorageValue("webPayToken"), await this._obtainTokenByRefreshOrTrackId(), this.checkoutContext = await
|
|
6774
|
+
this._removeAuthStorageValue("webPayToken"), await this._obtainTokenByRefreshOrTrackId(), this.checkoutContext = await Et(
|
|
6749
6775
|
this.apiUrl,
|
|
6750
6776
|
this._getApiConfig()
|
|
6751
6777
|
);
|
|
@@ -6755,7 +6781,7 @@ class me {
|
|
|
6755
6781
|
}
|
|
6756
6782
|
async _fetchCoupons() {
|
|
6757
6783
|
try {
|
|
6758
|
-
const t = await
|
|
6784
|
+
const t = await Hr(this.apiUrl, this._getApiConfig()), r = (Array.isArray(t) ? t : Array.isArray(t == null ? void 0 : t.data) ? t.data : []).filter((o) => Number(o.reward_amount) > 0).sort((o, i) => o.sort_weight - i.sort_weight);
|
|
6759
6785
|
this.selectedCoupon = r.length > 0 ? r[0] : null, this.useCoupon = !1;
|
|
6760
6786
|
} catch {
|
|
6761
6787
|
this.selectedCoupon = null, this.useCoupon = !1;
|
|
@@ -6769,10 +6795,10 @@ class me {
|
|
|
6769
6795
|
}
|
|
6770
6796
|
// ─── Рендер ───────────────────────────────────────────────────────────────────
|
|
6771
6797
|
_prerender() {
|
|
6772
|
-
|
|
6798
|
+
zi(this);
|
|
6773
6799
|
}
|
|
6774
6800
|
_render() {
|
|
6775
|
-
|
|
6801
|
+
Ki(this);
|
|
6776
6802
|
}
|
|
6777
6803
|
// ─── Публичный API ────────────────────────────────────────────────────────────
|
|
6778
6804
|
async init() {
|
|
@@ -6791,11 +6817,11 @@ class me {
|
|
|
6791
6817
|
return this.config.onError({ attributes: { message: i.message } }), !1;
|
|
6792
6818
|
}
|
|
6793
6819
|
if (this._destroyed || (await this._fetchCoupons(), this._destroyed)) return !1;
|
|
6794
|
-
const r =
|
|
6820
|
+
const r = en(
|
|
6795
6821
|
(n = (t = this.checkoutContext) == null ? void 0 : t.data) == null ? void 0 : n.socket_connections,
|
|
6796
|
-
(o) =>
|
|
6822
|
+
(o) => On(this, o)
|
|
6797
6823
|
);
|
|
6798
|
-
return r && (this.centrifuge = r.centrifuge), this.selectedPaymentMethod =
|
|
6824
|
+
return r && (this.centrifuge = r.centrifuge), this.selectedPaymentMethod = Ct(
|
|
6799
6825
|
this.checkoutContext.data,
|
|
6800
6826
|
this._getKaspiOptions()
|
|
6801
6827
|
), this._emitPaymentMethodSelected(), this._render(), !0;
|
|
@@ -6809,21 +6835,21 @@ class me {
|
|
|
6809
6835
|
destroy() {
|
|
6810
6836
|
this._destroyed = !0;
|
|
6811
6837
|
const t = document.getElementById("choco-one-click-widget");
|
|
6812
|
-
t && (t.style.display = "none"), this._clearNewCardActionTimeout(),
|
|
6838
|
+
t && (t.style.display = "none"), this._clearNewCardActionTimeout(), fe(this), this._pendingSuccessPayload = null, this._detachLifecycleListeners(), this.isAddCardViewOpen && Ie(this), this.centrifuge && (this.centrifuge.disconnect(), this.centrifuge = null), document.removeEventListener("keydown", this._boundKeyDown), this.container && (this.container.classList.remove("choco-one-click-widget--visible"), setTimeout(() => {
|
|
6813
6839
|
var n;
|
|
6814
6840
|
(n = this.container) == null || n.remove(), this.container = null;
|
|
6815
6841
|
}, 300)), this.isOpen = !1, this.isPaymentSheetOpen = !1, this.isAddCardViewOpen = !1, this.selectedPaymentMethod = null;
|
|
6816
6842
|
}
|
|
6817
6843
|
getAvailablePaymentMethods() {
|
|
6818
6844
|
var t;
|
|
6819
|
-
return (t = this.checkoutContext) != null && t.data ?
|
|
6845
|
+
return (t = this.checkoutContext) != null && t.data ? Nr(
|
|
6820
6846
|
this.checkoutContext.data,
|
|
6821
6847
|
(n) => this.t(n),
|
|
6822
6848
|
this._getKaspiOptions()
|
|
6823
6849
|
) : [];
|
|
6824
6850
|
}
|
|
6825
6851
|
async createOrder() {
|
|
6826
|
-
return
|
|
6852
|
+
return ta(this);
|
|
6827
6853
|
}
|
|
6828
6854
|
async pay() {
|
|
6829
6855
|
try {
|
|
@@ -6849,10 +6875,10 @@ class me {
|
|
|
6849
6875
|
}
|
|
6850
6876
|
}
|
|
6851
6877
|
openPaymentSheet() {
|
|
6852
|
-
|
|
6878
|
+
pr(this);
|
|
6853
6879
|
}
|
|
6854
6880
|
closePaymentSheet() {
|
|
6855
|
-
|
|
6881
|
+
ce(this);
|
|
6856
6882
|
}
|
|
6857
6883
|
async updateAmount(t) {
|
|
6858
6884
|
var n;
|
|
@@ -6860,36 +6886,36 @@ class me {
|
|
|
6860
6886
|
throw new Error("amount must be a non-negative number");
|
|
6861
6887
|
if (this.config.amount = t, this._isCouponDisabled() && (this.useCoupon = !1), this.selectedCoupon) {
|
|
6862
6888
|
const r = this.isPaymentSheetOpen, o = this.isAddCardViewOpen;
|
|
6863
|
-
if (this._render(),
|
|
6889
|
+
if (this._render(), ae(this), r) {
|
|
6864
6890
|
const i = (n = this.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
6865
6891
|
i && (i.classList.add("choco-widget-payment-sheet--open"), this.isPaymentSheetOpen = !0);
|
|
6866
6892
|
}
|
|
6867
|
-
o &&
|
|
6893
|
+
o && yt(this);
|
|
6868
6894
|
return;
|
|
6869
6895
|
}
|
|
6870
|
-
|
|
6896
|
+
qe(this);
|
|
6871
6897
|
}
|
|
6872
6898
|
async updateAvailableBonus(t) {
|
|
6873
6899
|
if (typeof t != "number" || !Number.isFinite(t) || t < 0)
|
|
6874
6900
|
throw new Error("availableBonus must be a non-negative number");
|
|
6875
|
-
this.config.bonuses && (this.config.bonuses.availableBonus = t),
|
|
6901
|
+
this.config.bonuses && (this.config.bonuses.availableBonus = t), qe(this);
|
|
6876
6902
|
}
|
|
6877
6903
|
async updateLocale(t) {
|
|
6878
6904
|
if (typeof t != "string" || !this.translations[t])
|
|
6879
6905
|
throw new Error(`Unsupported locale: ${t}`);
|
|
6880
6906
|
if (this.config.locale = t, !this.container) return;
|
|
6881
6907
|
const n = this.isPaymentSheetOpen, r = this.isAddCardViewOpen;
|
|
6882
|
-
if (this._render(),
|
|
6908
|
+
if (this._render(), ae(this), n) {
|
|
6883
6909
|
const o = this.container.querySelector('[data-sheet="payment"]');
|
|
6884
6910
|
o && (o.classList.add("choco-widget-payment-sheet--open"), this.isPaymentSheetOpen = !0);
|
|
6885
6911
|
}
|
|
6886
|
-
r &&
|
|
6912
|
+
r && yt(this);
|
|
6887
6913
|
}
|
|
6888
6914
|
async setLoading(t) {
|
|
6889
|
-
this.loading = !!t,
|
|
6915
|
+
this.loading = !!t, ae(this);
|
|
6890
6916
|
}
|
|
6891
6917
|
async setDisabled(t) {
|
|
6892
|
-
this.disabled = !!t,
|
|
6918
|
+
this.disabled = !!t, ae(this);
|
|
6893
6919
|
}
|
|
6894
6920
|
async setPreorderId(t) {
|
|
6895
6921
|
this.config.preorderId = t;
|
|
@@ -6901,7 +6927,7 @@ class me {
|
|
|
6901
6927
|
this.config.idempotencyKey = t;
|
|
6902
6928
|
}
|
|
6903
6929
|
async logout() {
|
|
6904
|
-
await
|
|
6930
|
+
await Ce.logout(), this.accessToken = null;
|
|
6905
6931
|
}
|
|
6906
6932
|
async updateTrackId(t) {
|
|
6907
6933
|
var n, r;
|
|
@@ -6916,11 +6942,11 @@ class me {
|
|
|
6916
6942
|
return this.config.onError({ attributes: { message: c.message } }), !1;
|
|
6917
6943
|
}
|
|
6918
6944
|
await this._fetchCoupons(), this.centrifuge && (this.centrifuge.disconnect(), this.centrifuge = null);
|
|
6919
|
-
const o =
|
|
6945
|
+
const o = en(
|
|
6920
6946
|
(r = (n = this.checkoutContext) == null ? void 0 : n.data) == null ? void 0 : r.socket_connections,
|
|
6921
|
-
(i) =>
|
|
6947
|
+
(i) => On(this, i)
|
|
6922
6948
|
);
|
|
6923
|
-
return o && (this.centrifuge = o.centrifuge), this.selectedPaymentMethod =
|
|
6949
|
+
return o && (this.centrifuge = o.centrifuge), this.selectedPaymentMethod = Ct(
|
|
6924
6950
|
this.checkoutContext.data,
|
|
6925
6951
|
this._getKaspiOptions()
|
|
6926
6952
|
), this._emitPaymentMethodSelected(), this.paymentMethodDisabled = !1, this._render(), !0;
|
|
@@ -6955,7 +6981,7 @@ class me {
|
|
|
6955
6981
|
this.config.onAppliedBonus = t;
|
|
6956
6982
|
}
|
|
6957
6983
|
}
|
|
6958
|
-
typeof window < "u" && (window.ChocoOneClickWidget =
|
|
6984
|
+
typeof window < "u" && (window.ChocoOneClickWidget = Ce);
|
|
6959
6985
|
export {
|
|
6960
|
-
|
|
6986
|
+
Ce as default
|
|
6961
6987
|
};
|