choco-one-click-payment 1.1.57 → 1.1.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.js +949 -929
- package/dist/index.js +38 -38
- package/index.d.ts +1 -1
- 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 Br = {
|
|
3
3
|
ru: {
|
|
4
4
|
paymentMethod: "Способ оплаты",
|
|
5
5
|
selectMethod: "Выберите метод",
|
|
@@ -164,80 +164,80 @@ const Er = {
|
|
|
164
164
|
errorWidgetInit: "ვიჯეტის ინიციალიზაციის შეცდომა",
|
|
165
165
|
errorPaymentProcess: "გადახდის შეცდომა"
|
|
166
166
|
}
|
|
167
|
-
},
|
|
167
|
+
}, Sr = {
|
|
168
168
|
KZT: "₸",
|
|
169
169
|
GEL: "₾"
|
|
170
170
|
};
|
|
171
|
-
function
|
|
171
|
+
function _r(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 Oe;
|
|
175
|
+
const Qr = new Uint8Array(16);
|
|
176
|
+
function kr() {
|
|
177
|
+
if (!Oe && (Oe = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !Oe))
|
|
178
178
|
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
179
|
-
return
|
|
179
|
+
return Oe(Qr);
|
|
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 Pr(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 wr = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), en = {
|
|
188
|
+
randomUUID: wr
|
|
189
189
|
};
|
|
190
|
-
function
|
|
191
|
-
if (
|
|
192
|
-
return
|
|
190
|
+
function nt(e, t, n) {
|
|
191
|
+
if (en.randomUUID && !e)
|
|
192
|
+
return en.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 || kr)();
|
|
195
|
+
return r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128, Pr(r);
|
|
196
196
|
}
|
|
197
|
-
const
|
|
197
|
+
const tn = "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)} ${Sr[n]}`;
|
|
201
201
|
}
|
|
202
|
-
function
|
|
203
|
-
let e = localStorage.getItem(
|
|
204
|
-
return e || (e =
|
|
202
|
+
function Un() {
|
|
203
|
+
let e = localStorage.getItem(tn);
|
|
204
|
+
return e || (e = nt(), localStorage.setItem(tn, e)), e;
|
|
205
205
|
}
|
|
206
|
-
function
|
|
206
|
+
function Ge() {
|
|
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 Fn() {
|
|
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 Dt() {
|
|
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 We() {
|
|
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) || Dt() === "ios" ? !0 : (navigator.userAgent || "").includes("Macintosh") && typeof document < "u" && "ontouchend" in document;
|
|
226
226
|
}
|
|
227
|
-
function
|
|
227
|
+
function Ye(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 Tr(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 je = { exports: {} }, Rr = je.exports, nn;
|
|
236
|
+
function Lr() {
|
|
237
|
+
return nn || (nn = 1, (function(e, t) {
|
|
238
238
|
(function(r, o) {
|
|
239
239
|
e.exports = o();
|
|
240
|
-
})(
|
|
240
|
+
})(Rr, function() {
|
|
241
241
|
return (
|
|
242
242
|
/******/
|
|
243
243
|
(function() {
|
|
@@ -277,14 +277,14 @@ function wr() {
|
|
|
277
277
|
function k(g, p) {
|
|
278
278
|
if (typeof p != "function" && p !== null)
|
|
279
279
|
throw new TypeError("Super expression must either be null or a function");
|
|
280
|
-
g.prototype = Object.create(p && p.prototype, { constructor: { value: g, writable: !0, configurable: !0 } }), p &&
|
|
280
|
+
g.prototype = Object.create(p && p.prototype, { constructor: { value: g, writable: !0, configurable: !0 } }), p && L(g, p);
|
|
281
281
|
}
|
|
282
|
-
function
|
|
283
|
-
return
|
|
282
|
+
function L(g, p) {
|
|
283
|
+
return L = Object.setPrototypeOf || function(d, s) {
|
|
284
284
|
return d.__proto__ = s, d;
|
|
285
|
-
},
|
|
285
|
+
}, L(g, p);
|
|
286
286
|
}
|
|
287
|
-
function
|
|
287
|
+
function R(g) {
|
|
288
288
|
var p = G();
|
|
289
289
|
return function() {
|
|
290
290
|
var d = z(g), s;
|
|
@@ -325,7 +325,7 @@ function wr() {
|
|
|
325
325
|
}
|
|
326
326
|
var J = "timeout", M = "connection closed", v = /* @__PURE__ */ (function(g) {
|
|
327
327
|
k(C, g);
|
|
328
|
-
var p =
|
|
328
|
+
var p = R(C);
|
|
329
329
|
function C(d, s) {
|
|
330
330
|
var a;
|
|
331
331
|
return Q(this, C), a = p.call(this), a._url = d, a._websocket = null, a._sockjs = null, a._isSockjs = !1, a._xmlhttprequest = null, a._binary = !1, a._methodType = null, a._pushType = null, a._encoder = null, a._decoder = null, a._status = "disconnected", a._reconnect = !0, a._reconnecting = !1, a._transport = null, a._transportName = null, a._transportClosed = !0, a._messageId = 0, a._clientID = null, a._refreshRequired = !1, a._subs = {}, a._serverSubs = {}, a._lastSeq = {}, a._lastGen = {}, a._lastOffset = {}, a._lastEpoch = {}, a._messages = [], a._isBatching = !1, a._isSubscribeBatching = !1, a._privateChannels = {}, a._numRefreshFailed = 0, a._refreshTimeout = null, a._pingTimeout = null, a._pongTimeout = null, a._subRefreshTimeouts = {}, a._retries = 0, a._callbacks = {}, a._latency = null, a._latencyStart = null, a._connectData = null, a._token = null, a._xhrID = 0, a._xhrs = {}, a._dispatchPromise = Promise.resolve(), a._protocol = "", a._config = {
|
|
@@ -954,16 +954,16 @@ function wr() {
|
|
|
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 me = F[s];
|
|
958
|
+
if (me) {
|
|
959
|
+
var pt = {
|
|
960
960
|
method: a._methodType.SUB_REFRESH,
|
|
961
961
|
params: {
|
|
962
962
|
channel: s,
|
|
963
|
-
token:
|
|
963
|
+
token: me
|
|
964
964
|
}
|
|
965
965
|
}, Le = a._getSub(s);
|
|
966
|
-
Le !== null && a._call(
|
|
966
|
+
Le !== null && a._call(pt).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 wr() {
|
|
|
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 me in A)
|
|
1477
|
+
if (A.hasOwnProperty(me)) {
|
|
1478
|
+
var pt = A[me];
|
|
1479
|
+
s._subscribeError(pt, s._createErrorObject("authorization request failed"));
|
|
1480
1480
|
}
|
|
1481
1481
|
return;
|
|
1482
1482
|
}
|
|
1483
1483
|
var Le = {};
|
|
1484
1484
|
if (x.data.channels)
|
|
1485
1485
|
for (var ne in x.data.channels) {
|
|
1486
|
-
var
|
|
1487
|
-
|
|
1486
|
+
var gt = x.data.channels[ne];
|
|
1487
|
+
gt.channel && (Le[gt.channel] = gt.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 Kt = !1;
|
|
1490
|
+
s._isBatching || (s.startBatching(), Kt = !0);
|
|
1491
|
+
for (var Gt in A)
|
|
1492
|
+
if (A.hasOwnProperty(Gt)) {
|
|
1493
|
+
var Ir = (function() {
|
|
1494
|
+
var Z = A[Gt], Wt = Le[Z];
|
|
1495
|
+
if (Wt) {
|
|
1496
|
+
var Ce = {
|
|
1497
1497
|
method: s._methodType.SUBSCRIBE,
|
|
1498
1498
|
params: {
|
|
1499
1499
|
channel: Z,
|
|
1500
|
-
token:
|
|
1500
|
+
token: Wt
|
|
1501
1501
|
}
|
|
1502
|
-
},
|
|
1503
|
-
if (
|
|
1502
|
+
}, Yt = s._getSub(Z);
|
|
1503
|
+
if (Yt === null)
|
|
1504
1504
|
return "continue";
|
|
1505
|
-
var
|
|
1506
|
-
if (
|
|
1507
|
-
|
|
1508
|
-
var
|
|
1509
|
-
if (
|
|
1510
|
-
|
|
1505
|
+
var Vt = Yt._needRecover();
|
|
1506
|
+
if (Vt === !0) {
|
|
1507
|
+
Ce.params.recover = !0;
|
|
1508
|
+
var yt = s._getLastSeq(Z), mt = s._getLastGen(Z);
|
|
1509
|
+
if (yt || mt)
|
|
1510
|
+
yt && (Ce.params.seq = yt), mt && (Ce.params.gen = mt);
|
|
1511
1511
|
else {
|
|
1512
|
-
var
|
|
1513
|
-
|
|
1512
|
+
var Zt = s._getLastOffset(Z);
|
|
1513
|
+
Zt && (Ce.params.offset = Zt);
|
|
1514
1514
|
}
|
|
1515
|
-
var
|
|
1516
|
-
|
|
1515
|
+
var $t = s._getLastEpoch(Z);
|
|
1516
|
+
$t && (Ce.params.epoch = $t);
|
|
1517
1517
|
}
|
|
1518
|
-
s._call(
|
|
1519
|
-
s._subscribeResponse(Z,
|
|
1518
|
+
s._call(Ce).then(function(Ae) {
|
|
1519
|
+
s._subscribeResponse(Z, Vt, s._decoder.decodeCommandResult(s._methodType.SUBSCRIBE, Ae.result)), Ae.next && Ae.next();
|
|
1520
1520
|
}, function(Ae) {
|
|
1521
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 (Ir === "continue") continue;
|
|
1527
1527
|
}
|
|
1528
|
-
|
|
1528
|
+
Kt && s.stopBatching();
|
|
1529
1529
|
}
|
|
1530
1530
|
};
|
|
1531
1531
|
if (this._config.onPrivateSubscribe !== null)
|
|
@@ -1711,17 +1711,17 @@ function wr() {
|
|
|
1711
1711
|
a = Reflect.construct(s, arguments, A);
|
|
1712
1712
|
} else
|
|
1713
1713
|
a = s.apply(this, arguments);
|
|
1714
|
-
return
|
|
1714
|
+
return L(this, a);
|
|
1715
1715
|
};
|
|
1716
1716
|
}
|
|
1717
|
-
function
|
|
1717
|
+
function L(p, C) {
|
|
1718
1718
|
if (C && (h(C) === "object" || typeof C == "function"))
|
|
1719
1719
|
return C;
|
|
1720
1720
|
if (C !== void 0)
|
|
1721
1721
|
throw new TypeError("Derived constructors may only return object or undefined");
|
|
1722
|
-
return
|
|
1722
|
+
return R(p);
|
|
1723
1723
|
}
|
|
1724
|
-
function
|
|
1724
|
+
function R(p) {
|
|
1725
1725
|
if (p === void 0)
|
|
1726
1726
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
1727
1727
|
return p;
|
|
@@ -1989,8 +1989,8 @@ function wr() {
|
|
|
1989
1989
|
}
|
|
1990
1990
|
}
|
|
1991
1991
|
function b(Q, S, P) {
|
|
1992
|
-
var k = 0.5 * Math.random(),
|
|
1993
|
-
return Math.floor((1 - k) *
|
|
1992
|
+
var k = 0.5 * Math.random(), L = Math.min(P, S * Math.pow(2, Q + 1));
|
|
1993
|
+
return Math.floor((1 - k) * L);
|
|
1994
1994
|
}
|
|
1995
1995
|
function I(Q) {
|
|
1996
1996
|
return "error" in Q && Q.error !== null;
|
|
@@ -2145,7 +2145,7 @@ function wr() {
|
|
|
2145
2145
|
this.removeListener(g, p[d]);
|
|
2146
2146
|
return this;
|
|
2147
2147
|
};
|
|
2148
|
-
function
|
|
2148
|
+
function L(v, g, p) {
|
|
2149
2149
|
var C = v._events;
|
|
2150
2150
|
if (C === void 0)
|
|
2151
2151
|
return [];
|
|
@@ -2153,13 +2153,13 @@ function wr() {
|
|
|
2153
2153
|
return d === void 0 ? [] : typeof d == "function" ? p ? [d.listener || d] : [d] : p ? G(d) : q(d, d.length);
|
|
2154
2154
|
}
|
|
2155
2155
|
b.prototype.listeners = function(g) {
|
|
2156
|
-
return
|
|
2156
|
+
return L(this, g, !0);
|
|
2157
2157
|
}, b.prototype.rawListeners = function(g) {
|
|
2158
|
-
return
|
|
2158
|
+
return L(this, g, !1);
|
|
2159
2159
|
}, b.listenerCount = function(v, g) {
|
|
2160
|
-
return typeof v.listenerCount == "function" ? v.listenerCount(g) :
|
|
2161
|
-
}, b.prototype.listenerCount =
|
|
2162
|
-
function
|
|
2160
|
+
return typeof v.listenerCount == "function" ? v.listenerCount(g) : R.call(v, g);
|
|
2161
|
+
}, b.prototype.listenerCount = R;
|
|
2162
|
+
function R(v) {
|
|
2163
2163
|
var g = this._events;
|
|
2164
2164
|
if (g !== void 0) {
|
|
2165
2165
|
var p = g[v];
|
|
@@ -2246,31 +2246,31 @@ function wr() {
|
|
|
2246
2246
|
})()
|
|
2247
2247
|
);
|
|
2248
2248
|
});
|
|
2249
|
-
})(
|
|
2249
|
+
})(je)), je.exports;
|
|
2250
2250
|
}
|
|
2251
|
-
var
|
|
2252
|
-
const
|
|
2253
|
-
let
|
|
2254
|
-
function
|
|
2251
|
+
var Or = Lr();
|
|
2252
|
+
const Nr = /* @__PURE__ */ Tr(Or);
|
|
2253
|
+
let Ne = null;
|
|
2254
|
+
function rn(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"), Ne) {
|
|
2259
2259
|
try {
|
|
2260
|
-
console.log("[Centrifuge] Disconnecting previous instance..."),
|
|
2260
|
+
console.log("[Centrifuge] Disconnecting previous instance..."), Ne.disconnect();
|
|
2261
2261
|
} catch (c) {
|
|
2262
2262
|
console.error("[Centrifuge] Error while disconnecting previous instance:", c);
|
|
2263
2263
|
}
|
|
2264
|
-
|
|
2264
|
+
Ne = null;
|
|
2265
2265
|
}
|
|
2266
2266
|
console.log("[Centrifuge] Creating new instance:", n);
|
|
2267
|
-
const i = new
|
|
2267
|
+
const i = new Nr(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 = Dr(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 en(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(), Ne = i, { centrifuge: i };
|
|
2283
2283
|
}
|
|
2284
|
-
function
|
|
2284
|
+
function Dr(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 Je(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
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
|
+
}, Hn = {
|
|
2303
2303
|
iconType: "google_pay",
|
|
2304
2304
|
label: "Google Pay",
|
|
2305
2305
|
type: "google_pay"
|
|
@@ -2307,90 +2307,90 @@ const de = {
|
|
|
2307
2307
|
function ee(e) {
|
|
2308
2308
|
return e === "enabled" || e === !0;
|
|
2309
2309
|
}
|
|
2310
|
-
function
|
|
2310
|
+
function on(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 Mr(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: on(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: on(r),
|
|
2325
2325
|
cardId: o != null ? String(o) : null
|
|
2326
2326
|
};
|
|
2327
2327
|
}
|
|
2328
|
-
function
|
|
2329
|
-
var S, P, k,
|
|
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 = ((
|
|
2331
|
-
return o != null && o.isKaspiOnly && u && !I ? [de] : b ? o != null && o.isAvailable && u && !I ? [de] : [] : (ee(c.payment_method_apple_pay) && !
|
|
2328
|
+
function xr(e, t, n = {}) {
|
|
2329
|
+
var S, P, k, L;
|
|
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 = ((L = (k = e == null ? void 0 : e.payment_methods) == null ? void 0 : k.data) == null ? void 0 : L.attributes) || {}, u = ee(c.payment_method_kaspi), l = ee(c.payment_method_card), h = typeof window < "u" && window.self === window.top, m = Dt() === "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) && !Ye("apple_pay") && (Ge() && h || We() || m || Fn() === 16) && r.push(Xn), o != null && o.isAvailable && u && !I && r.push(de), l && i.filter((R) => !R.isExpired).forEach((R) => {
|
|
2332
2332
|
r.push({
|
|
2333
|
-
iconType:
|
|
2333
|
+
iconType: Je(R.attributes.mask),
|
|
2334
2334
|
type: "card",
|
|
2335
|
-
cardId:
|
|
2336
|
-
label: `•••• ${
|
|
2337
|
-
cardType:
|
|
2338
|
-
isDefault:
|
|
2335
|
+
cardId: R.id,
|
|
2336
|
+
label: `•••• ${R.attributes.mask.slice(-4)}`,
|
|
2337
|
+
cardType: R.type,
|
|
2338
|
+
isDefault: R.attributes.isDefault
|
|
2339
2339
|
});
|
|
2340
|
-
}), ee(c.payment_method_google_pay) && !
|
|
2340
|
+
}), ee(c.payment_method_google_pay) && !Ye("google_pay") && !(n != null && n.disableGooglePay) && !Ge() && !We() && r.push(Hn), 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 It(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 = Dt() === "ios", m = ee(o.payment_method_apple_pay) && !Ye("apple_pay") && (Ge() && l || We() || y || Fn() === 16), b = ee(o.payment_method_google_pay) && !Ye("google_pay") && !(t != null && t.disableGooglePay) && !Ge() && !We();
|
|
2349
2349
|
if (n != null && n.isKaspiOnly && i && !u || t != null && t.onlyKaspiAvailable && (n != null && n.isAvailable) && i && !u)
|
|
2350
2350
|
return de;
|
|
2351
|
-
const I =
|
|
2351
|
+
const I = Mr(e);
|
|
2352
2352
|
if ((I == null ? void 0 : I.type) === "kaspi_pay" && (n != null && n.isAvailable) && i && !u)
|
|
2353
2353
|
return de;
|
|
2354
|
-
if ((I == null ? void 0 : I.type) === "apple_pay" && m) return
|
|
2355
|
-
if ((I == null ? void 0 : I.type) === "google_pay" && b) return
|
|
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 Hn;
|
|
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
|
-
const
|
|
2360
|
-
if (
|
|
2359
|
+
const L = I.cardId != null ? r.find((R) => !R.isExpired && String(R.id) === I.cardId) : null;
|
|
2360
|
+
if (L)
|
|
2361
2361
|
return {
|
|
2362
|
-
iconType:
|
|
2362
|
+
iconType: Je(L.attributes.mask),
|
|
2363
2363
|
type: "card",
|
|
2364
|
-
cardId:
|
|
2365
|
-
label: `•••• ${
|
|
2366
|
-
cardType:
|
|
2364
|
+
cardId: L.id,
|
|
2365
|
+
label: `•••• ${L.attributes.mask.slice(-4)}`,
|
|
2366
|
+
cardType: L.type
|
|
2367
2367
|
};
|
|
2368
2368
|
}
|
|
2369
2369
|
if (c) {
|
|
2370
|
-
const
|
|
2370
|
+
const L = r.find((R) => {
|
|
2371
2371
|
var q;
|
|
2372
|
-
return ((q =
|
|
2372
|
+
return ((q = R.attributes) == null ? void 0 : q.isDefault) && !R.isExpired;
|
|
2373
2373
|
});
|
|
2374
|
-
if (
|
|
2374
|
+
if (L)
|
|
2375
2375
|
return {
|
|
2376
|
-
iconType:
|
|
2376
|
+
iconType: Je(L.attributes.mask),
|
|
2377
2377
|
type: "card",
|
|
2378
|
-
cardId:
|
|
2379
|
-
label: `•••• ${
|
|
2380
|
-
cardType:
|
|
2378
|
+
cardId: L.id,
|
|
2379
|
+
label: `•••• ${L.attributes.mask.slice(-4)}`,
|
|
2380
|
+
cardType: L.type
|
|
2381
2381
|
};
|
|
2382
2382
|
}
|
|
2383
2383
|
if (n != null && n.isAvailable && i && !u) return de;
|
|
2384
|
-
const B = c ? r.find((
|
|
2384
|
+
const B = c ? r.find((L) => !L.isExpired) : null;
|
|
2385
2385
|
return B ? {
|
|
2386
|
-
iconType:
|
|
2386
|
+
iconType: Je(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 Mt(e) {
|
|
2394
2394
|
if (typeof localStorage > "u") return null;
|
|
2395
2395
|
try {
|
|
2396
2396
|
return localStorage.getItem(e);
|
|
@@ -2398,14 +2398,14 @@ function Fn(e) {
|
|
|
2398
2398
|
return null;
|
|
2399
2399
|
}
|
|
2400
2400
|
}
|
|
2401
|
-
function
|
|
2401
|
+
function Ve(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 Ee(e) {
|
|
2409
2409
|
if (!(typeof localStorage > "u"))
|
|
2410
2410
|
try {
|
|
2411
2411
|
localStorage.removeItem(e);
|
|
@@ -2415,7 +2415,7 @@ function We(e) {
|
|
|
2415
2415
|
function ie(e) {
|
|
2416
2416
|
return e ? { "X-Country": e } : {};
|
|
2417
2417
|
}
|
|
2418
|
-
async function
|
|
2418
|
+
async function Ur(e, t) {
|
|
2419
2419
|
var n;
|
|
2420
2420
|
try {
|
|
2421
2421
|
const r = await e.json(), o = (n = r == null ? void 0 : r.errors) == null ? void 0 : n[0];
|
|
@@ -2425,10 +2425,10 @@ async function Dr(e, t) {
|
|
|
2425
2425
|
}
|
|
2426
2426
|
}
|
|
2427
2427
|
async function le(e, t) {
|
|
2428
|
-
const n = await
|
|
2428
|
+
const n = await Ur(e, t);
|
|
2429
2429
|
throw Object.assign(new Error(n), { status: e.status });
|
|
2430
2430
|
}
|
|
2431
|
-
function
|
|
2431
|
+
function rt(e, t, n = {}) {
|
|
2432
2432
|
const r = Number.isFinite(n.checkoutAmount) && n.checkoutAmount >= 0 ? Number(n.checkoutAmount) : e.amount, o = !!n.forceBalanceMethod, i = !!n.useBalance, c = n.voucher;
|
|
2433
2433
|
return {
|
|
2434
2434
|
checkoutAmount: r,
|
|
@@ -2437,7 +2437,7 @@ function et(e, t, n = {}) {
|
|
|
2437
2437
|
voucher: c
|
|
2438
2438
|
};
|
|
2439
2439
|
}
|
|
2440
|
-
function
|
|
2440
|
+
function ot(e, t, n, r, o) {
|
|
2441
2441
|
return {
|
|
2442
2442
|
preorder_id: e.preorderId,
|
|
2443
2443
|
terminal_id: e.terminalId,
|
|
@@ -2453,13 +2453,13 @@ function tt(e, t, n, r, o) {
|
|
|
2453
2453
|
...e.isFridge && { is_fridge: !0 }
|
|
2454
2454
|
};
|
|
2455
2455
|
}
|
|
2456
|
-
async function
|
|
2456
|
+
async function st(e, t, n, r, o) {
|
|
2457
2457
|
const i = await fetch(`${e}/orders/v1/checkout`, {
|
|
2458
2458
|
method: "POST",
|
|
2459
2459
|
headers: {
|
|
2460
2460
|
"Content-Type": "application/json",
|
|
2461
2461
|
Authorization: `Bearer ${t.accessToken}`,
|
|
2462
|
-
"X-Idempotency-Key": t.idempotencyKey ??
|
|
2462
|
+
"X-Idempotency-Key": t.idempotencyKey ?? nt(),
|
|
2463
2463
|
"X-Device-Id": n,
|
|
2464
2464
|
"X-OS": "WEB",
|
|
2465
2465
|
...ie(t.country)
|
|
@@ -2468,14 +2468,14 @@ async function nt(e, t, n, r, o) {
|
|
|
2468
2468
|
});
|
|
2469
2469
|
return i.ok || await le(i, o), i.json();
|
|
2470
2470
|
}
|
|
2471
|
-
async function
|
|
2471
|
+
async function sn(e, t, n, r) {
|
|
2472
2472
|
var l, h, y, m;
|
|
2473
2473
|
const o = await fetch(`${e}/api/v2/oauth2/tokens`, {
|
|
2474
2474
|
method: "POST",
|
|
2475
2475
|
headers: {
|
|
2476
2476
|
"Content-Type": "application/json",
|
|
2477
|
-
"X-Idempotency-Key":
|
|
2478
|
-
"X-Fingerprint":
|
|
2477
|
+
"X-Idempotency-Key": nt(),
|
|
2478
|
+
"X-Fingerprint": Un(),
|
|
2479
2479
|
...ie(r)
|
|
2480
2480
|
},
|
|
2481
2481
|
body: JSON.stringify({
|
|
@@ -2489,7 +2489,7 @@ async function nn(e, t, n, r) {
|
|
|
2489
2489
|
if (!c) throw new Error("В ответе отсутствует access_token");
|
|
2490
2490
|
return { access_token: c, refresh_token: u };
|
|
2491
2491
|
}
|
|
2492
|
-
async function
|
|
2492
|
+
async function Fr(e, t, n, r) {
|
|
2493
2493
|
var l, h, y, m;
|
|
2494
2494
|
const o = await fetch(`${e}/api/v2/oauth2/tokens`, {
|
|
2495
2495
|
method: "POST",
|
|
@@ -2508,13 +2508,13 @@ async function Mr(e, t, n, r) {
|
|
|
2508
2508
|
if (!c) throw new Error("В ответе отсутствует access_token");
|
|
2509
2509
|
return { access_token: c, refresh_token: u };
|
|
2510
2510
|
}
|
|
2511
|
-
async function
|
|
2511
|
+
async function Bt(e, t) {
|
|
2512
2512
|
const n = await fetch(`${e}/orders/v1/checkout/context`, {
|
|
2513
2513
|
method: "POST",
|
|
2514
2514
|
headers: {
|
|
2515
2515
|
"Content-Type": "application/json",
|
|
2516
2516
|
Authorization: `Bearer ${t.accessToken}`,
|
|
2517
|
-
"X-Idempotency-Key":
|
|
2517
|
+
"X-Idempotency-Key": nt(),
|
|
2518
2518
|
...ie(t.country)
|
|
2519
2519
|
},
|
|
2520
2520
|
body: JSON.stringify({
|
|
@@ -2528,7 +2528,7 @@ async function Et(e, t) {
|
|
|
2528
2528
|
});
|
|
2529
2529
|
return n.ok || await le(n, "Ошибка получения контекста оплаты"), n.json();
|
|
2530
2530
|
}
|
|
2531
|
-
async function
|
|
2531
|
+
async function Xr(e, t, n) {
|
|
2532
2532
|
const r = await fetch(`${e}/payment-gateway/v1/cards/${n}`, {
|
|
2533
2533
|
method: "DELETE",
|
|
2534
2534
|
headers: {
|
|
@@ -2539,7 +2539,7 @@ async function xr(e, t, n) {
|
|
|
2539
2539
|
});
|
|
2540
2540
|
return r.ok || await le(r, "Не удалось удалить карту"), r.json().catch(() => ({}));
|
|
2541
2541
|
}
|
|
2542
|
-
async function
|
|
2542
|
+
async function Hr(e, t, n) {
|
|
2543
2543
|
const r = await fetch(
|
|
2544
2544
|
`${e}/payment-gateway/v1/cards/${n}/mark_as_default`,
|
|
2545
2545
|
{
|
|
@@ -2553,7 +2553,7 @@ async function Ur(e, t, n) {
|
|
|
2553
2553
|
);
|
|
2554
2554
|
return r.ok || await le(r, "Не удалось отметить карту как основную"), r.json().catch(() => ({}));
|
|
2555
2555
|
}
|
|
2556
|
-
async function
|
|
2556
|
+
async function jr(e, t, n) {
|
|
2557
2557
|
const r = await fetch(`${e}/orders/v1/orders/${n}/status`, {
|
|
2558
2558
|
method: "GET",
|
|
2559
2559
|
headers: {
|
|
@@ -2570,8 +2570,8 @@ async function Fr(e, t, n) {
|
|
|
2570
2570
|
const o = await r.json(), i = (o == null ? void 0 : o.data) ?? o;
|
|
2571
2571
|
return { data: { status: i == null ? void 0 : i.status, payload: (i == null ? void 0 : i.payload) ?? {} } };
|
|
2572
2572
|
}
|
|
2573
|
-
async function
|
|
2574
|
-
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } =
|
|
2573
|
+
async function an(e, t, n, r, o = {}) {
|
|
2574
|
+
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } = rt(
|
|
2575
2575
|
t,
|
|
2576
2576
|
{
|
|
2577
2577
|
type: r.type,
|
|
@@ -2579,29 +2579,29 @@ async function rn(e, t, n, r, o = {}) {
|
|
|
2579
2579
|
},
|
|
2580
2580
|
o
|
|
2581
2581
|
);
|
|
2582
|
-
return
|
|
2582
|
+
return st(
|
|
2583
2583
|
e,
|
|
2584
2584
|
t,
|
|
2585
2585
|
n,
|
|
2586
|
-
|
|
2586
|
+
ot(t, c, i, u, l),
|
|
2587
2587
|
"Ошибка создания заказа"
|
|
2588
2588
|
);
|
|
2589
2589
|
}
|
|
2590
|
-
async function
|
|
2591
|
-
const { checkoutAmount: o, checkoutPaymentMethod: i, useBalanceFlag: c, voucher: u } =
|
|
2590
|
+
async function Jr(e, t, n, r = {}) {
|
|
2591
|
+
const { checkoutAmount: o, checkoutPaymentMethod: i, useBalanceFlag: c, voucher: u } = rt(
|
|
2592
2592
|
t,
|
|
2593
2593
|
{ type: "new_card" },
|
|
2594
2594
|
r
|
|
2595
2595
|
);
|
|
2596
|
-
return
|
|
2596
|
+
return st(
|
|
2597
2597
|
e,
|
|
2598
2598
|
t,
|
|
2599
2599
|
n,
|
|
2600
|
-
|
|
2600
|
+
ot(t, i, o, c, u),
|
|
2601
2601
|
"Ошибка создания заказа для новой карты"
|
|
2602
2602
|
);
|
|
2603
2603
|
}
|
|
2604
|
-
async function
|
|
2604
|
+
async function qr(e, t) {
|
|
2605
2605
|
const n = await fetch(
|
|
2606
2606
|
`${e}/loyalty/v6/coupons/by_terminal/${t.terminalId}/at_payment?order_pay_amount=${t.amount}`,
|
|
2607
2607
|
{
|
|
@@ -2615,7 +2615,7 @@ async function Hr(e, t) {
|
|
|
2615
2615
|
);
|
|
2616
2616
|
return n.ok || await le(n, "Ошибка получения купонов"), n.json();
|
|
2617
2617
|
}
|
|
2618
|
-
async function
|
|
2618
|
+
async function cn(e, t, n) {
|
|
2619
2619
|
const r = window.location.hostname, o = {
|
|
2620
2620
|
validationUrl: n,
|
|
2621
2621
|
domainName: r
|
|
@@ -2633,35 +2633,35 @@ async function on(e, t, n) {
|
|
|
2633
2633
|
});
|
|
2634
2634
|
return i.ok || await le(i, "Ошибка получения Apple Pay сессии"), i.json();
|
|
2635
2635
|
}
|
|
2636
|
-
async function
|
|
2637
|
-
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } =
|
|
2636
|
+
async function zr(e, t, n, r, o = {}) {
|
|
2637
|
+
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } = rt(
|
|
2638
2638
|
t,
|
|
2639
2639
|
{ type: "apple_pay", data: r },
|
|
2640
2640
|
o
|
|
2641
2641
|
);
|
|
2642
|
-
return
|
|
2642
|
+
return st(
|
|
2643
2643
|
e,
|
|
2644
2644
|
t,
|
|
2645
2645
|
n,
|
|
2646
|
-
|
|
2646
|
+
ot(t, c, i, u, l),
|
|
2647
2647
|
"Ошибка создания заказа с Apple Pay"
|
|
2648
2648
|
);
|
|
2649
2649
|
}
|
|
2650
|
-
async function
|
|
2651
|
-
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } =
|
|
2650
|
+
async function jn(e, t, n, r, o = {}) {
|
|
2651
|
+
const { checkoutAmount: i, checkoutPaymentMethod: c, useBalanceFlag: u, voucher: l } = rt(
|
|
2652
2652
|
t,
|
|
2653
2653
|
{ type: "google_pay", data: r },
|
|
2654
2654
|
o
|
|
2655
2655
|
);
|
|
2656
|
-
return
|
|
2656
|
+
return st(
|
|
2657
2657
|
e,
|
|
2658
2658
|
t,
|
|
2659
2659
|
n,
|
|
2660
|
-
|
|
2660
|
+
ot(t, c, i, u, l),
|
|
2661
2661
|
"Ошибка создания заказа с Google Pay"
|
|
2662
2662
|
);
|
|
2663
2663
|
}
|
|
2664
|
-
function
|
|
2664
|
+
function Kr(e) {
|
|
2665
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) ? {
|
|
2666
2666
|
availableBonus: Number.isFinite(r.availableBonus) ? Number(r.availableBonus) : 0,
|
|
2667
2667
|
amount: Number(r.amount),
|
|
@@ -2715,11 +2715,11 @@ function Jr(e) {
|
|
|
2715
2715
|
};
|
|
2716
2716
|
}
|
|
2717
2717
|
const U = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, he = "8.55.2", j = globalThis;
|
|
2718
|
-
function
|
|
2718
|
+
function it(e, t, n) {
|
|
2719
2719
|
const r = n || j, o = r.__SENTRY__ = r.__SENTRY__ || {}, i = o[he] = o[he] || {};
|
|
2720
2720
|
return i[e] || (i[e] = t());
|
|
2721
2721
|
}
|
|
2722
|
-
const
|
|
2722
|
+
const xt = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, Gr = "Sentry Logger ", un = [
|
|
2723
2723
|
"debug",
|
|
2724
2724
|
"info",
|
|
2725
2725
|
"warn",
|
|
@@ -2727,13 +2727,13 @@ const Ot = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, qr = "Sentry Logge
|
|
|
2727
2727
|
"log",
|
|
2728
2728
|
"assert",
|
|
2729
2729
|
"trace"
|
|
2730
|
-
],
|
|
2731
|
-
function
|
|
2730
|
+
], ln = {};
|
|
2731
|
+
function at(e) {
|
|
2732
2732
|
if (!("console" in j))
|
|
2733
2733
|
return e();
|
|
2734
|
-
const t = j.console, n = {}, r = Object.keys(
|
|
2734
|
+
const t = j.console, n = {}, r = Object.keys(ln);
|
|
2735
2735
|
r.forEach((o) => {
|
|
2736
|
-
const i =
|
|
2736
|
+
const i = ln[o];
|
|
2737
2737
|
n[o] = t[o], t[o] = i;
|
|
2738
2738
|
});
|
|
2739
2739
|
try {
|
|
@@ -2744,7 +2744,7 @@ function ot(e) {
|
|
|
2744
2744
|
});
|
|
2745
2745
|
}
|
|
2746
2746
|
}
|
|
2747
|
-
function
|
|
2747
|
+
function Wr() {
|
|
2748
2748
|
let e = !1;
|
|
2749
2749
|
const t = {
|
|
2750
2750
|
enable: () => {
|
|
@@ -2755,19 +2755,19 @@ function zr() {
|
|
|
2755
2755
|
},
|
|
2756
2756
|
isEnabled: () => e
|
|
2757
2757
|
};
|
|
2758
|
-
return
|
|
2758
|
+
return xt ? un.forEach((n) => {
|
|
2759
2759
|
t[n] = (...r) => {
|
|
2760
|
-
e &&
|
|
2761
|
-
j.console[n](`${
|
|
2760
|
+
e && at(() => {
|
|
2761
|
+
j.console[n](`${Gr}[${n}]:`, ...r);
|
|
2762
2762
|
});
|
|
2763
2763
|
};
|
|
2764
|
-
}) :
|
|
2764
|
+
}) : un.forEach((n) => {
|
|
2765
2765
|
t[n] = () => {
|
|
2766
2766
|
};
|
|
2767
2767
|
}), t;
|
|
2768
2768
|
}
|
|
2769
|
-
const N =
|
|
2770
|
-
function
|
|
2769
|
+
const N = it("logger", Wr), Jn = 50, ve = "?", An = /\(error: (.*)\)/, dn = /captureMessage|captureException/;
|
|
2770
|
+
function Yr(...e) {
|
|
2771
2771
|
const t = e.sort((n, r) => n[0] - r[0]).map((n) => n[1]);
|
|
2772
2772
|
return (n, r = 0, o = 0) => {
|
|
2773
2773
|
const i = [], c = n.split(`
|
|
@@ -2776,7 +2776,7 @@ function Kr(...e) {
|
|
|
2776
2776
|
const l = c[u];
|
|
2777
2777
|
if (l.length > 1024)
|
|
2778
2778
|
continue;
|
|
2779
|
-
const h =
|
|
2779
|
+
const h = An.test(l) ? l.replace(An, "$1") : l;
|
|
2780
2780
|
if (!h.match(/\S*Error: /)) {
|
|
2781
2781
|
for (const y of t) {
|
|
2782
2782
|
const m = y(h);
|
|
@@ -2785,101 +2785,101 @@ function Kr(...e) {
|
|
|
2785
2785
|
break;
|
|
2786
2786
|
}
|
|
2787
2787
|
}
|
|
2788
|
-
if (i.length >=
|
|
2788
|
+
if (i.length >= Jn + o)
|
|
2789
2789
|
break;
|
|
2790
2790
|
}
|
|
2791
2791
|
}
|
|
2792
|
-
return
|
|
2792
|
+
return Vr(i.slice(o));
|
|
2793
2793
|
};
|
|
2794
2794
|
}
|
|
2795
|
-
function
|
|
2795
|
+
function Vr(e) {
|
|
2796
2796
|
if (!e.length)
|
|
2797
2797
|
return [];
|
|
2798
2798
|
const t = Array.from(e);
|
|
2799
|
-
return /sentryWrapped/.test(
|
|
2799
|
+
return /sentryWrapped/.test(De(t).function || "") && t.pop(), t.reverse(), dn.test(De(t).function || "") && (t.pop(), dn.test(De(t).function || "") && t.pop()), t.slice(0, Jn).map((n) => ({
|
|
2800
2800
|
...n,
|
|
2801
|
-
filename: n.filename ||
|
|
2802
|
-
function: n.function ||
|
|
2801
|
+
filename: n.filename || De(t).filename,
|
|
2802
|
+
function: n.function || ve
|
|
2803
2803
|
}));
|
|
2804
2804
|
}
|
|
2805
|
-
function
|
|
2805
|
+
function De(e) {
|
|
2806
2806
|
return e[e.length - 1] || {};
|
|
2807
2807
|
}
|
|
2808
|
-
const
|
|
2809
|
-
function
|
|
2808
|
+
const Ct = "<anonymous>";
|
|
2809
|
+
function Zr(e) {
|
|
2810
2810
|
try {
|
|
2811
|
-
return !e || typeof e != "function" ?
|
|
2811
|
+
return !e || typeof e != "function" ? Ct : e.name || Ct;
|
|
2812
2812
|
} catch {
|
|
2813
|
-
return
|
|
2813
|
+
return Ct;
|
|
2814
2814
|
}
|
|
2815
2815
|
}
|
|
2816
|
-
function
|
|
2817
|
-
return
|
|
2816
|
+
function Ut() {
|
|
2817
|
+
return Ft(j), j;
|
|
2818
2818
|
}
|
|
2819
|
-
function
|
|
2819
|
+
function Ft(e) {
|
|
2820
2820
|
const t = e.__SENTRY__ = e.__SENTRY__ || {};
|
|
2821
2821
|
return t.version = t.version || he, t[he] = t[he] || {};
|
|
2822
2822
|
}
|
|
2823
|
-
const
|
|
2824
|
-
function
|
|
2825
|
-
switch (
|
|
2823
|
+
const qn = Object.prototype.toString;
|
|
2824
|
+
function zn(e) {
|
|
2825
|
+
switch (qn.call(e)) {
|
|
2826
2826
|
case "[object Error]":
|
|
2827
2827
|
case "[object Exception]":
|
|
2828
2828
|
case "[object DOMException]":
|
|
2829
2829
|
case "[object WebAssembly.Exception]":
|
|
2830
2830
|
return !0;
|
|
2831
2831
|
default:
|
|
2832
|
-
return
|
|
2832
|
+
return lt(e, Error);
|
|
2833
2833
|
}
|
|
2834
2834
|
}
|
|
2835
|
-
function
|
|
2836
|
-
return
|
|
2835
|
+
function Te(e, t) {
|
|
2836
|
+
return qn.call(e) === `[object ${t}]`;
|
|
2837
2837
|
}
|
|
2838
|
-
function
|
|
2839
|
-
return
|
|
2838
|
+
function Kn(e) {
|
|
2839
|
+
return Te(e, "ErrorEvent");
|
|
2840
2840
|
}
|
|
2841
|
-
function
|
|
2842
|
-
return
|
|
2841
|
+
function fn(e) {
|
|
2842
|
+
return Te(e, "DOMError");
|
|
2843
2843
|
}
|
|
2844
|
-
function
|
|
2845
|
-
return
|
|
2844
|
+
function $r(e) {
|
|
2845
|
+
return Te(e, "DOMException");
|
|
2846
2846
|
}
|
|
2847
|
-
function
|
|
2848
|
-
return
|
|
2847
|
+
function Gn(e) {
|
|
2848
|
+
return Te(e, "String");
|
|
2849
2849
|
}
|
|
2850
|
-
function
|
|
2850
|
+
function Xt(e) {
|
|
2851
2851
|
return typeof e == "object" && e !== null && "__sentry_template_string__" in e && "__sentry_template_values__" in e;
|
|
2852
2852
|
}
|
|
2853
|
-
function
|
|
2854
|
-
return e === null ||
|
|
2853
|
+
function eo(e) {
|
|
2854
|
+
return e === null || Xt(e) || typeof e != "object" && typeof e != "function";
|
|
2855
2855
|
}
|
|
2856
|
-
function
|
|
2857
|
-
return
|
|
2856
|
+
function Ie(e) {
|
|
2857
|
+
return Te(e, "Object");
|
|
2858
2858
|
}
|
|
2859
|
-
function
|
|
2860
|
-
return typeof Event < "u" &&
|
|
2859
|
+
function ct(e) {
|
|
2860
|
+
return typeof Event < "u" && lt(e, Event);
|
|
2861
2861
|
}
|
|
2862
|
-
function
|
|
2863
|
-
return typeof Element < "u" &&
|
|
2862
|
+
function to(e) {
|
|
2863
|
+
return typeof Element < "u" && lt(e, Element);
|
|
2864
2864
|
}
|
|
2865
|
-
function
|
|
2865
|
+
function ut(e) {
|
|
2866
2866
|
return !!(e && e.then && typeof e.then == "function");
|
|
2867
2867
|
}
|
|
2868
|
-
function
|
|
2869
|
-
return
|
|
2868
|
+
function no(e) {
|
|
2869
|
+
return Ie(e) && "nativeEvent" in e && "preventDefault" in e && "stopPropagation" in e;
|
|
2870
2870
|
}
|
|
2871
|
-
function
|
|
2871
|
+
function lt(e, t) {
|
|
2872
2872
|
try {
|
|
2873
2873
|
return e instanceof t;
|
|
2874
2874
|
} catch {
|
|
2875
2875
|
return !1;
|
|
2876
2876
|
}
|
|
2877
2877
|
}
|
|
2878
|
-
function
|
|
2878
|
+
function ro(e) {
|
|
2879
2879
|
return !!(typeof e == "object" && e !== null && (e.__isVue || e._isVue));
|
|
2880
2880
|
}
|
|
2881
|
-
const
|
|
2882
|
-
function
|
|
2881
|
+
const oo = j, so = 80;
|
|
2882
|
+
function io(e, t = {}) {
|
|
2883
2883
|
if (!e)
|
|
2884
2884
|
return "<unknown>";
|
|
2885
2885
|
try {
|
|
@@ -2888,19 +2888,19 @@ function ro(e, t = {}) {
|
|
|
2888
2888
|
let i = 0, c = 0;
|
|
2889
2889
|
const u = " > ", l = u.length;
|
|
2890
2890
|
let h;
|
|
2891
|
-
const y = Array.isArray(t) ? t : t.keyAttrs, m = !Array.isArray(t) && t.maxStringLength ||
|
|
2892
|
-
for (; n && i++ < r && (h =
|
|
2891
|
+
const y = Array.isArray(t) ? t : t.keyAttrs, m = !Array.isArray(t) && t.maxStringLength || so;
|
|
2892
|
+
for (; n && i++ < r && (h = ao(n, y), !(h === "html" || i > 1 && c + o.length * l + h.length >= m)); )
|
|
2893
2893
|
o.push(h), c += h.length, n = n.parentNode;
|
|
2894
2894
|
return o.reverse().join(u);
|
|
2895
2895
|
} catch {
|
|
2896
2896
|
return "<unknown>";
|
|
2897
2897
|
}
|
|
2898
2898
|
}
|
|
2899
|
-
function
|
|
2899
|
+
function ao(e, t) {
|
|
2900
2900
|
const n = e, r = [];
|
|
2901
2901
|
if (!n || !n.tagName)
|
|
2902
2902
|
return "";
|
|
2903
|
-
if (
|
|
2903
|
+
if (oo.HTMLElement && n instanceof HTMLElement && n.dataset) {
|
|
2904
2904
|
if (n.dataset.sentryComponent)
|
|
2905
2905
|
return n.dataset.sentryComponent;
|
|
2906
2906
|
if (n.dataset.sentryElement)
|
|
@@ -2915,7 +2915,7 @@ function oo(e, t) {
|
|
|
2915
2915
|
else {
|
|
2916
2916
|
n.id && r.push(`#${n.id}`);
|
|
2917
2917
|
const c = n.className;
|
|
2918
|
-
if (c &&
|
|
2918
|
+
if (c && Gn(c)) {
|
|
2919
2919
|
const u = c.split(/\s+/);
|
|
2920
2920
|
for (const l of u)
|
|
2921
2921
|
r.push(`.${l}`);
|
|
@@ -2928,10 +2928,10 @@ function oo(e, t) {
|
|
|
2928
2928
|
}
|
|
2929
2929
|
return r.join("");
|
|
2930
2930
|
}
|
|
2931
|
-
function
|
|
2931
|
+
function Qe(e, t = 0) {
|
|
2932
2932
|
return typeof e != "string" || t === 0 || e.length <= t ? e : `${e.slice(0, t)}...`;
|
|
2933
2933
|
}
|
|
2934
|
-
function
|
|
2934
|
+
function Wn(e, t, n) {
|
|
2935
2935
|
try {
|
|
2936
2936
|
Object.defineProperty(e, t, {
|
|
2937
2937
|
// enumerable: false, // the default, so we can save on bundle size by not explicitly setting it
|
|
@@ -2940,36 +2940,36 @@ function Kn(e, t, n) {
|
|
|
2940
2940
|
configurable: !0
|
|
2941
2941
|
});
|
|
2942
2942
|
} catch {
|
|
2943
|
-
|
|
2943
|
+
xt && N.log(`Failed to add non-enumerable property "${t}" to object`, e);
|
|
2944
2944
|
}
|
|
2945
2945
|
}
|
|
2946
|
-
function
|
|
2947
|
-
if (
|
|
2946
|
+
function Yn(e) {
|
|
2947
|
+
if (zn(e))
|
|
2948
2948
|
return {
|
|
2949
2949
|
message: e.message,
|
|
2950
2950
|
name: e.name,
|
|
2951
2951
|
stack: e.stack,
|
|
2952
|
-
...
|
|
2952
|
+
...pn(e)
|
|
2953
2953
|
};
|
|
2954
|
-
if (
|
|
2954
|
+
if (ct(e)) {
|
|
2955
2955
|
const t = {
|
|
2956
2956
|
type: e.type,
|
|
2957
|
-
target:
|
|
2958
|
-
currentTarget:
|
|
2959
|
-
...
|
|
2957
|
+
target: hn(e.target),
|
|
2958
|
+
currentTarget: hn(e.currentTarget),
|
|
2959
|
+
...pn(e)
|
|
2960
2960
|
};
|
|
2961
|
-
return typeof CustomEvent < "u" &&
|
|
2961
|
+
return typeof CustomEvent < "u" && lt(e, CustomEvent) && (t.detail = e.detail), t;
|
|
2962
2962
|
} else
|
|
2963
2963
|
return e;
|
|
2964
2964
|
}
|
|
2965
|
-
function
|
|
2965
|
+
function hn(e) {
|
|
2966
2966
|
try {
|
|
2967
|
-
return
|
|
2967
|
+
return to(e) ? io(e) : Object.prototype.toString.call(e);
|
|
2968
2968
|
} catch {
|
|
2969
2969
|
return "<unknown>";
|
|
2970
2970
|
}
|
|
2971
2971
|
}
|
|
2972
|
-
function
|
|
2972
|
+
function pn(e) {
|
|
2973
2973
|
if (typeof e == "object" && e !== null) {
|
|
2974
2974
|
const t = {};
|
|
2975
2975
|
for (const n in e)
|
|
@@ -2978,33 +2978,33 @@ function dn(e) {
|
|
|
2978
2978
|
} else
|
|
2979
2979
|
return {};
|
|
2980
2980
|
}
|
|
2981
|
-
function
|
|
2982
|
-
const n = Object.keys(
|
|
2981
|
+
function co(e, t = 40) {
|
|
2982
|
+
const n = Object.keys(Yn(e));
|
|
2983
2983
|
n.sort();
|
|
2984
2984
|
const r = n[0];
|
|
2985
2985
|
if (!r)
|
|
2986
2986
|
return "[object has no keys]";
|
|
2987
2987
|
if (r.length >= t)
|
|
2988
|
-
return
|
|
2988
|
+
return Qe(r, t);
|
|
2989
2989
|
for (let o = n.length; o > 0; o--) {
|
|
2990
2990
|
const i = n.slice(0, o).join(", ");
|
|
2991
2991
|
if (!(i.length > t))
|
|
2992
|
-
return o === n.length ? i :
|
|
2992
|
+
return o === n.length ? i : Qe(i, t);
|
|
2993
2993
|
}
|
|
2994
2994
|
return "";
|
|
2995
2995
|
}
|
|
2996
2996
|
function V(e) {
|
|
2997
|
-
return
|
|
2997
|
+
return St(e, /* @__PURE__ */ new Map());
|
|
2998
2998
|
}
|
|
2999
|
-
function
|
|
3000
|
-
if (
|
|
2999
|
+
function St(e, t) {
|
|
3000
|
+
if (uo(e)) {
|
|
3001
3001
|
const n = t.get(e);
|
|
3002
3002
|
if (n !== void 0)
|
|
3003
3003
|
return n;
|
|
3004
3004
|
const r = {};
|
|
3005
3005
|
t.set(e, r);
|
|
3006
3006
|
for (const o of Object.getOwnPropertyNames(e))
|
|
3007
|
-
typeof e[o] < "u" && (r[o] =
|
|
3007
|
+
typeof e[o] < "u" && (r[o] = St(e[o], t));
|
|
3008
3008
|
return r;
|
|
3009
3009
|
}
|
|
3010
3010
|
if (Array.isArray(e)) {
|
|
@@ -3013,13 +3013,13 @@ function vt(e, t) {
|
|
|
3013
3013
|
return n;
|
|
3014
3014
|
const r = [];
|
|
3015
3015
|
return t.set(e, r), e.forEach((o) => {
|
|
3016
|
-
r.push(
|
|
3016
|
+
r.push(St(o, t));
|
|
3017
3017
|
}), r;
|
|
3018
3018
|
}
|
|
3019
3019
|
return e;
|
|
3020
3020
|
}
|
|
3021
|
-
function
|
|
3022
|
-
if (!
|
|
3021
|
+
function uo(e) {
|
|
3022
|
+
if (!Ie(e))
|
|
3023
3023
|
return !1;
|
|
3024
3024
|
try {
|
|
3025
3025
|
const t = Object.getPrototypeOf(e).constructor.name;
|
|
@@ -3028,18 +3028,18 @@ function io(e) {
|
|
|
3028
3028
|
return !0;
|
|
3029
3029
|
}
|
|
3030
3030
|
}
|
|
3031
|
-
const
|
|
3032
|
-
function
|
|
3033
|
-
return Date.now() /
|
|
3031
|
+
const Vn = 1e3;
|
|
3032
|
+
function At() {
|
|
3033
|
+
return Date.now() / Vn;
|
|
3034
3034
|
}
|
|
3035
|
-
function
|
|
3035
|
+
function lo() {
|
|
3036
3036
|
const { performance: e } = j;
|
|
3037
3037
|
if (!e || !e.now)
|
|
3038
|
-
return
|
|
3038
|
+
return At;
|
|
3039
3039
|
const t = Date.now() - e.now(), n = e.timeOrigin == null ? t : e.timeOrigin;
|
|
3040
|
-
return () => (n + e.now()) /
|
|
3040
|
+
return () => (n + e.now()) / Vn;
|
|
3041
3041
|
}
|
|
3042
|
-
const
|
|
3042
|
+
const Zn = lo();
|
|
3043
3043
|
(() => {
|
|
3044
3044
|
const { performance: e } = j;
|
|
3045
3045
|
if (!e || !e.now)
|
|
@@ -3067,15 +3067,15 @@ function te() {
|
|
|
3067
3067
|
)
|
|
3068
3068
|
);
|
|
3069
3069
|
}
|
|
3070
|
-
function
|
|
3070
|
+
function Ao(e) {
|
|
3071
3071
|
return e.exception && e.exception.values ? e.exception.values[0] : void 0;
|
|
3072
3072
|
}
|
|
3073
|
-
function
|
|
3073
|
+
function gn(e, t, n) {
|
|
3074
3074
|
const r = e.exception = e.exception || {}, o = r.values = r.values || [], i = o[0] = o[0] || {};
|
|
3075
3075
|
i.value || (i.value = t || ""), i.type || (i.type = "Error");
|
|
3076
3076
|
}
|
|
3077
|
-
function
|
|
3078
|
-
const n =
|
|
3077
|
+
function ke(e, t) {
|
|
3078
|
+
const n = Ao(e);
|
|
3079
3079
|
if (!n)
|
|
3080
3080
|
return;
|
|
3081
3081
|
const r = { type: "generic", handled: !0 }, o = n.mechanism;
|
|
@@ -3084,16 +3084,16 @@ function Qe(e, t) {
|
|
|
3084
3084
|
n.mechanism.data = i;
|
|
3085
3085
|
}
|
|
3086
3086
|
}
|
|
3087
|
-
function
|
|
3088
|
-
if (
|
|
3087
|
+
function yn(e) {
|
|
3088
|
+
if (fo(e))
|
|
3089
3089
|
return !0;
|
|
3090
3090
|
try {
|
|
3091
|
-
|
|
3091
|
+
Wn(e, "__sentry_captured__", !0);
|
|
3092
3092
|
} catch {
|
|
3093
3093
|
}
|
|
3094
3094
|
return !1;
|
|
3095
3095
|
}
|
|
3096
|
-
function
|
|
3096
|
+
function fo(e) {
|
|
3097
3097
|
try {
|
|
3098
3098
|
return e.__sentry_captured__;
|
|
3099
3099
|
} catch {
|
|
@@ -3112,7 +3112,7 @@ function pe(e) {
|
|
|
3112
3112
|
t(e);
|
|
3113
3113
|
});
|
|
3114
3114
|
}
|
|
3115
|
-
function
|
|
3115
|
+
function Ze(e) {
|
|
3116
3116
|
return new W((t, n) => {
|
|
3117
3117
|
n(e);
|
|
3118
3118
|
});
|
|
@@ -3194,7 +3194,7 @@ class W {
|
|
|
3194
3194
|
__init3() {
|
|
3195
3195
|
this._setResult = (t, n) => {
|
|
3196
3196
|
if (this._state === re.PENDING) {
|
|
3197
|
-
if (
|
|
3197
|
+
if (ut(n)) {
|
|
3198
3198
|
n.then(this._resolve, this._reject);
|
|
3199
3199
|
return;
|
|
3200
3200
|
}
|
|
@@ -3214,8 +3214,8 @@ class W {
|
|
|
3214
3214
|
};
|
|
3215
3215
|
}
|
|
3216
3216
|
}
|
|
3217
|
-
function
|
|
3218
|
-
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 ||
|
|
3217
|
+
function _t(e, t = {}) {
|
|
3218
|
+
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 || Zn(), 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)
|
|
3219
3219
|
e.duration = void 0;
|
|
3220
3220
|
else if (typeof t.duration == "number")
|
|
3221
3221
|
e.duration = t.duration;
|
|
@@ -3225,31 +3225,31 @@ function It(e, t = {}) {
|
|
|
3225
3225
|
}
|
|
3226
3226
|
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);
|
|
3227
3227
|
}
|
|
3228
|
-
function
|
|
3228
|
+
function mn() {
|
|
3229
3229
|
return te();
|
|
3230
3230
|
}
|
|
3231
|
-
function
|
|
3231
|
+
function Qt() {
|
|
3232
3232
|
return te().substring(16);
|
|
3233
3233
|
}
|
|
3234
|
-
function
|
|
3234
|
+
function dt(e, t, n = 2) {
|
|
3235
3235
|
if (!t || typeof t != "object" || n <= 0)
|
|
3236
3236
|
return t;
|
|
3237
3237
|
if (e && t && Object.keys(t).length === 0)
|
|
3238
3238
|
return e;
|
|
3239
3239
|
const r = { ...e };
|
|
3240
3240
|
for (const o in t)
|
|
3241
|
-
Object.prototype.hasOwnProperty.call(t, o) && (r[o] =
|
|
3241
|
+
Object.prototype.hasOwnProperty.call(t, o) && (r[o] = dt(r[o], t[o], n - 1));
|
|
3242
3242
|
return r;
|
|
3243
3243
|
}
|
|
3244
|
-
const
|
|
3245
|
-
function
|
|
3246
|
-
t ?
|
|
3244
|
+
const kt = "_sentrySpan";
|
|
3245
|
+
function Cn(e, t) {
|
|
3246
|
+
t ? Wn(e, kt, t) : delete e[kt];
|
|
3247
3247
|
}
|
|
3248
|
-
function
|
|
3249
|
-
return e[
|
|
3248
|
+
function bn(e) {
|
|
3249
|
+
return e[kt];
|
|
3250
3250
|
}
|
|
3251
|
-
const
|
|
3252
|
-
class
|
|
3251
|
+
const ho = 100;
|
|
3252
|
+
class Ht {
|
|
3253
3253
|
/** Flag if notifying is happening. */
|
|
3254
3254
|
/** Callback for client to receive scope changes. */
|
|
3255
3255
|
/** Callback list that will be called during event processing. */
|
|
@@ -3280,18 +3280,18 @@ class xt {
|
|
|
3280
3280
|
// NOTE: Any field which gets added here should get added not only to the constructor but also to the `clone` method.
|
|
3281
3281
|
constructor() {
|
|
3282
3282
|
this._notifyingListeners = !1, this._scopeListeners = [], this._eventProcessors = [], this._breadcrumbs = [], this._attachments = [], this._user = {}, this._tags = {}, this._extra = {}, this._contexts = {}, this._sdkProcessingMetadata = {}, this._propagationContext = {
|
|
3283
|
-
traceId:
|
|
3284
|
-
spanId:
|
|
3283
|
+
traceId: mn(),
|
|
3284
|
+
spanId: Qt()
|
|
3285
3285
|
};
|
|
3286
3286
|
}
|
|
3287
3287
|
/**
|
|
3288
3288
|
* @inheritDoc
|
|
3289
3289
|
*/
|
|
3290
3290
|
clone() {
|
|
3291
|
-
const t = new
|
|
3291
|
+
const t = new Ht();
|
|
3292
3292
|
return t._breadcrumbs = [...this._breadcrumbs], t._tags = { ...this._tags }, t._extra = { ...this._extra }, t._contexts = { ...this._contexts }, this._contexts.flags && (t._contexts.flags = {
|
|
3293
3293
|
values: [...this._contexts.flags.values]
|
|
3294
|
-
}), 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,
|
|
3294
|
+
}), 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, Cn(t, bn(this)), t;
|
|
3295
3295
|
}
|
|
3296
3296
|
/**
|
|
3297
3297
|
* @inheritDoc
|
|
@@ -3338,7 +3338,7 @@ class xt {
|
|
|
3338
3338
|
id: void 0,
|
|
3339
3339
|
ip_address: void 0,
|
|
3340
3340
|
username: void 0
|
|
3341
|
-
}, this._session &&
|
|
3341
|
+
}, this._session && _t(this._session, { user: t }), this._notifyScopeListeners(), this;
|
|
3342
3342
|
}
|
|
3343
3343
|
/**
|
|
3344
3344
|
* @inheritDoc
|
|
@@ -3443,24 +3443,24 @@ class xt {
|
|
|
3443
3443
|
const n = typeof t == "function" ? t(this) : t, [r, o] = n instanceof ue ? (
|
|
3444
3444
|
// eslint-disable-next-line deprecation/deprecation
|
|
3445
3445
|
[n.getScopeData(), n.getRequestSession()]
|
|
3446
|
-
) :
|
|
3446
|
+
) : Ie(n) ? [t, t.requestSession] : [], { tags: i, extra: c, user: u, contexts: l, level: h, fingerprint: y = [], propagationContext: m } = r || {};
|
|
3447
3447
|
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;
|
|
3448
3448
|
}
|
|
3449
3449
|
/**
|
|
3450
3450
|
* @inheritDoc
|
|
3451
3451
|
*/
|
|
3452
3452
|
clear() {
|
|
3453
|
-
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,
|
|
3453
|
+
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, Cn(this, void 0), this._attachments = [], this.setPropagationContext({ traceId: mn() }), this._notifyScopeListeners(), this;
|
|
3454
3454
|
}
|
|
3455
3455
|
/**
|
|
3456
3456
|
* @inheritDoc
|
|
3457
3457
|
*/
|
|
3458
3458
|
addBreadcrumb(t, n) {
|
|
3459
|
-
const r = typeof n == "number" ? n :
|
|
3459
|
+
const r = typeof n == "number" ? n : ho;
|
|
3460
3460
|
if (r <= 0)
|
|
3461
3461
|
return this;
|
|
3462
3462
|
const o = {
|
|
3463
|
-
timestamp:
|
|
3463
|
+
timestamp: At(),
|
|
3464
3464
|
...t
|
|
3465
3465
|
};
|
|
3466
3466
|
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;
|
|
@@ -3504,14 +3504,14 @@ class xt {
|
|
|
3504
3504
|
propagationContext: this._propagationContext,
|
|
3505
3505
|
sdkProcessingMetadata: this._sdkProcessingMetadata,
|
|
3506
3506
|
transactionName: this._transactionName,
|
|
3507
|
-
span:
|
|
3507
|
+
span: bn(this)
|
|
3508
3508
|
};
|
|
3509
3509
|
}
|
|
3510
3510
|
/**
|
|
3511
3511
|
* @inheritDoc
|
|
3512
3512
|
*/
|
|
3513
3513
|
setSDKProcessingMetadata(t) {
|
|
3514
|
-
return this._sdkProcessingMetadata =
|
|
3514
|
+
return this._sdkProcessingMetadata = dt(this._sdkProcessingMetadata, t, 2), this;
|
|
3515
3515
|
}
|
|
3516
3516
|
/**
|
|
3517
3517
|
* @inheritDoc
|
|
@@ -3519,7 +3519,7 @@ class xt {
|
|
|
3519
3519
|
setPropagationContext(t) {
|
|
3520
3520
|
return this._propagationContext = {
|
|
3521
3521
|
// eslint-disable-next-line deprecation/deprecation
|
|
3522
|
-
spanId:
|
|
3522
|
+
spanId: Qt(),
|
|
3523
3523
|
...t
|
|
3524
3524
|
}, this;
|
|
3525
3525
|
}
|
|
@@ -3584,14 +3584,14 @@ class xt {
|
|
|
3584
3584
|
}), this._notifyingListeners = !1);
|
|
3585
3585
|
}
|
|
3586
3586
|
}
|
|
3587
|
-
const ue =
|
|
3588
|
-
function
|
|
3589
|
-
return
|
|
3587
|
+
const ue = Ht;
|
|
3588
|
+
function po() {
|
|
3589
|
+
return it("defaultCurrentScope", () => new ue());
|
|
3590
3590
|
}
|
|
3591
|
-
function
|
|
3592
|
-
return
|
|
3591
|
+
function go() {
|
|
3592
|
+
return it("defaultIsolationScope", () => new ue());
|
|
3593
3593
|
}
|
|
3594
|
-
class
|
|
3594
|
+
class yo {
|
|
3595
3595
|
constructor(t, n) {
|
|
3596
3596
|
let r;
|
|
3597
3597
|
t ? r = t : r = new ue();
|
|
@@ -3609,7 +3609,7 @@ class ho {
|
|
|
3609
3609
|
} catch (o) {
|
|
3610
3610
|
throw this._popScope(), o;
|
|
3611
3611
|
}
|
|
3612
|
-
return
|
|
3612
|
+
return ut(r) ? r.then(
|
|
3613
3613
|
(o) => (this._popScope(), o),
|
|
3614
3614
|
(o) => {
|
|
3615
3615
|
throw this._popScope(), o;
|
|
@@ -3657,49 +3657,49 @@ class ho {
|
|
|
3657
3657
|
return this._stack.length <= 1 ? !1 : !!this._stack.pop();
|
|
3658
3658
|
}
|
|
3659
3659
|
}
|
|
3660
|
-
function
|
|
3661
|
-
const e =
|
|
3662
|
-
return t.stack = t.stack || new
|
|
3660
|
+
function Be() {
|
|
3661
|
+
const e = Ut(), t = Ft(e);
|
|
3662
|
+
return t.stack = t.stack || new yo(po(), go());
|
|
3663
3663
|
}
|
|
3664
|
-
function
|
|
3665
|
-
return
|
|
3664
|
+
function mo(e) {
|
|
3665
|
+
return Be().withScope(e);
|
|
3666
3666
|
}
|
|
3667
|
-
function
|
|
3668
|
-
const n =
|
|
3667
|
+
function Co(e, t) {
|
|
3668
|
+
const n = Be();
|
|
3669
3669
|
return n.withScope(() => (n.getStackTop().scope = e, t(e)));
|
|
3670
3670
|
}
|
|
3671
|
-
function
|
|
3672
|
-
return
|
|
3671
|
+
function En(e) {
|
|
3672
|
+
return Be().withScope(() => e(Be().getIsolationScope()));
|
|
3673
3673
|
}
|
|
3674
|
-
function
|
|
3674
|
+
function bo() {
|
|
3675
3675
|
return {
|
|
3676
|
-
withIsolationScope:
|
|
3677
|
-
withScope:
|
|
3678
|
-
withSetScope:
|
|
3679
|
-
withSetIsolationScope: (e, t) =>
|
|
3680
|
-
getCurrentScope: () =>
|
|
3681
|
-
getIsolationScope: () =>
|
|
3676
|
+
withIsolationScope: En,
|
|
3677
|
+
withScope: mo,
|
|
3678
|
+
withSetScope: Co,
|
|
3679
|
+
withSetIsolationScope: (e, t) => En(t),
|
|
3680
|
+
getCurrentScope: () => Be().getScope(),
|
|
3681
|
+
getIsolationScope: () => Be().getIsolationScope()
|
|
3682
3682
|
};
|
|
3683
3683
|
}
|
|
3684
|
-
function
|
|
3685
|
-
const t =
|
|
3686
|
-
return t.acs ? t.acs :
|
|
3684
|
+
function $n(e) {
|
|
3685
|
+
const t = Ft(e);
|
|
3686
|
+
return t.acs ? t.acs : bo();
|
|
3687
3687
|
}
|
|
3688
|
-
function
|
|
3689
|
-
const e =
|
|
3690
|
-
return
|
|
3688
|
+
function er() {
|
|
3689
|
+
const e = Ut();
|
|
3690
|
+
return $n(e).getCurrentScope();
|
|
3691
3691
|
}
|
|
3692
|
-
function
|
|
3693
|
-
const e =
|
|
3694
|
-
return
|
|
3692
|
+
function Eo() {
|
|
3693
|
+
const e = Ut();
|
|
3694
|
+
return $n(e).getIsolationScope();
|
|
3695
3695
|
}
|
|
3696
|
-
function
|
|
3697
|
-
return
|
|
3696
|
+
function vo() {
|
|
3697
|
+
return it("globalScope", () => new ue());
|
|
3698
3698
|
}
|
|
3699
|
-
function
|
|
3700
|
-
return
|
|
3699
|
+
function jt() {
|
|
3700
|
+
return er().getClient();
|
|
3701
3701
|
}
|
|
3702
|
-
function
|
|
3702
|
+
function Io(e) {
|
|
3703
3703
|
const t = e.getPropagationContext(), { traceId: n, spanId: r, parentSpanId: o } = t;
|
|
3704
3704
|
return V({
|
|
3705
3705
|
trace_id: n,
|
|
@@ -3707,9 +3707,9 @@ function bo(e) {
|
|
|
3707
3707
|
parent_span_id: o
|
|
3708
3708
|
});
|
|
3709
3709
|
}
|
|
3710
|
-
const
|
|
3711
|
-
function
|
|
3712
|
-
const t = e[
|
|
3710
|
+
const Bo = "_sentryMetrics";
|
|
3711
|
+
function So(e) {
|
|
3712
|
+
const t = e[Bo];
|
|
3713
3713
|
if (!t)
|
|
3714
3714
|
return;
|
|
3715
3715
|
const n = {};
|
|
@@ -3717,14 +3717,14 @@ function vo(e) {
|
|
|
3717
3717
|
(n[r] || (n[r] = [])).push(V(o));
|
|
3718
3718
|
return n;
|
|
3719
3719
|
}
|
|
3720
|
-
const
|
|
3721
|
-
function
|
|
3722
|
-
const t =
|
|
3720
|
+
const _o = "sentry.source", Qo = "sentry.sample_rate", ko = "sentry.op", Po = "sentry.origin", wo = 0, To = 1, Ro = "sentry-", Lo = /^sentry-/;
|
|
3721
|
+
function Oo(e) {
|
|
3722
|
+
const t = No(e);
|
|
3723
3723
|
if (!t)
|
|
3724
3724
|
return;
|
|
3725
3725
|
const n = Object.entries(t).reduce((r, [o, i]) => {
|
|
3726
|
-
if (o.match(
|
|
3727
|
-
const c = o.slice(
|
|
3726
|
+
if (o.match(Lo)) {
|
|
3727
|
+
const c = o.slice(Ro.length);
|
|
3728
3728
|
r[c] = i;
|
|
3729
3729
|
}
|
|
3730
3730
|
return r;
|
|
@@ -3732,40 +3732,40 @@ function To(e) {
|
|
|
3732
3732
|
if (Object.keys(n).length > 0)
|
|
3733
3733
|
return n;
|
|
3734
3734
|
}
|
|
3735
|
-
function
|
|
3736
|
-
if (!(!e || !
|
|
3735
|
+
function No(e) {
|
|
3736
|
+
if (!(!e || !Gn(e) && !Array.isArray(e)))
|
|
3737
3737
|
return Array.isArray(e) ? e.reduce((t, n) => {
|
|
3738
|
-
const r =
|
|
3738
|
+
const r = vn(n);
|
|
3739
3739
|
return Object.entries(r).forEach(([o, i]) => {
|
|
3740
3740
|
t[o] = i;
|
|
3741
3741
|
}), t;
|
|
3742
|
-
}, {}) :
|
|
3742
|
+
}, {}) : vn(e);
|
|
3743
3743
|
}
|
|
3744
|
-
function
|
|
3744
|
+
function vn(e) {
|
|
3745
3745
|
return e.split(",").map((t) => t.split("=").map((n) => decodeURIComponent(n.trim()))).reduce((t, [n, r]) => (n && r && (t[n] = r), t), {});
|
|
3746
3746
|
}
|
|
3747
|
-
const
|
|
3748
|
-
let
|
|
3749
|
-
function
|
|
3750
|
-
const { spanId: t, traceId: n, isRemote: r } = e.spanContext(), o = r ? t :
|
|
3747
|
+
const Do = 1;
|
|
3748
|
+
let In = !1;
|
|
3749
|
+
function Mo(e) {
|
|
3750
|
+
const { spanId: t, traceId: n, isRemote: r } = e.spanContext(), o = r ? t : Jt(e).parent_span_id, i = r ? Qt() : t;
|
|
3751
3751
|
return V({
|
|
3752
3752
|
parent_span_id: o,
|
|
3753
3753
|
span_id: i,
|
|
3754
3754
|
trace_id: n
|
|
3755
3755
|
});
|
|
3756
3756
|
}
|
|
3757
|
-
function
|
|
3758
|
-
return typeof e == "number" ?
|
|
3757
|
+
function Bn(e) {
|
|
3758
|
+
return typeof e == "number" ? Sn(e) : Array.isArray(e) ? e[0] + e[1] / 1e9 : e instanceof Date ? Sn(e.getTime()) : Zn();
|
|
3759
3759
|
}
|
|
3760
|
-
function
|
|
3760
|
+
function Sn(e) {
|
|
3761
3761
|
return e > 9999999999 ? e / 1e3 : e;
|
|
3762
3762
|
}
|
|
3763
|
-
function
|
|
3764
|
-
if (
|
|
3763
|
+
function Jt(e) {
|
|
3764
|
+
if (Uo(e))
|
|
3765
3765
|
return e.getSpanJSON();
|
|
3766
3766
|
try {
|
|
3767
3767
|
const { spanId: t, traceId: n } = e.spanContext();
|
|
3768
|
-
if (
|
|
3768
|
+
if (xo(e)) {
|
|
3769
3769
|
const { attributes: r, startTime: o, name: i, endTime: c, parentSpanId: u, status: l } = e;
|
|
3770
3770
|
return V({
|
|
3771
3771
|
span_id: t,
|
|
@@ -3773,13 +3773,13 @@ function Ft(e) {
|
|
|
3773
3773
|
data: r,
|
|
3774
3774
|
description: i,
|
|
3775
3775
|
parent_span_id: u,
|
|
3776
|
-
start_timestamp:
|
|
3776
|
+
start_timestamp: Bn(o),
|
|
3777
3777
|
// This is [0,0] by default in OTEL, in which case we want to interpret this as no end time
|
|
3778
|
-
timestamp:
|
|
3779
|
-
status:
|
|
3780
|
-
op: r[
|
|
3781
|
-
origin: r[
|
|
3782
|
-
_metrics_summary:
|
|
3778
|
+
timestamp: Bn(c) || void 0,
|
|
3779
|
+
status: Xo(l),
|
|
3780
|
+
op: r[ko],
|
|
3781
|
+
origin: r[Po],
|
|
3782
|
+
_metrics_summary: So(e)
|
|
3783
3783
|
});
|
|
3784
3784
|
}
|
|
3785
3785
|
return {
|
|
@@ -3790,68 +3790,68 @@ function Ft(e) {
|
|
|
3790
3790
|
return {};
|
|
3791
3791
|
}
|
|
3792
3792
|
}
|
|
3793
|
-
function
|
|
3793
|
+
function xo(e) {
|
|
3794
3794
|
const t = e;
|
|
3795
3795
|
return !!t.attributes && !!t.startTime && !!t.name && !!t.endTime && !!t.status;
|
|
3796
3796
|
}
|
|
3797
|
-
function
|
|
3797
|
+
function Uo(e) {
|
|
3798
3798
|
return typeof e.getSpanJSON == "function";
|
|
3799
3799
|
}
|
|
3800
|
-
function
|
|
3800
|
+
function Fo(e) {
|
|
3801
3801
|
const { traceFlags: t } = e.spanContext();
|
|
3802
|
-
return t ===
|
|
3802
|
+
return t === Do;
|
|
3803
3803
|
}
|
|
3804
|
-
function
|
|
3805
|
-
if (!(!e || e.code ===
|
|
3806
|
-
return e.code ===
|
|
3804
|
+
function Xo(e) {
|
|
3805
|
+
if (!(!e || e.code === wo))
|
|
3806
|
+
return e.code === To ? "ok" : e.message || "unknown_error";
|
|
3807
3807
|
}
|
|
3808
|
-
const
|
|
3809
|
-
function
|
|
3810
|
-
return e[
|
|
3808
|
+
const Ho = "_sentryRootSpan";
|
|
3809
|
+
function tr(e) {
|
|
3810
|
+
return e[Ho] || e;
|
|
3811
3811
|
}
|
|
3812
|
-
function
|
|
3813
|
-
|
|
3812
|
+
function jo() {
|
|
3813
|
+
In || (at(() => {
|
|
3814
3814
|
console.warn(
|
|
3815
3815
|
"[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."
|
|
3816
3816
|
);
|
|
3817
|
-
}),
|
|
3817
|
+
}), In = !0);
|
|
3818
3818
|
}
|
|
3819
|
-
function
|
|
3819
|
+
function Jo(e) {
|
|
3820
3820
|
if (typeof __SENTRY_TRACING__ == "boolean" && !__SENTRY_TRACING__)
|
|
3821
3821
|
return !1;
|
|
3822
|
-
const t =
|
|
3822
|
+
const t = jt(), n = t && t.getOptions();
|
|
3823
3823
|
return !!n && (n.enableTracing || "tracesSampleRate" in n || "tracesSampler" in n);
|
|
3824
3824
|
}
|
|
3825
|
-
const
|
|
3826
|
-
function
|
|
3825
|
+
const nr = "production", qo = "_frozenDsc";
|
|
3826
|
+
function rr(e, t) {
|
|
3827
3827
|
const n = t.getOptions(), { publicKey: r } = t.getDsn() || {}, o = V({
|
|
3828
|
-
environment: n.environment ||
|
|
3828
|
+
environment: n.environment || nr,
|
|
3829
3829
|
release: n.release,
|
|
3830
3830
|
public_key: r,
|
|
3831
3831
|
trace_id: e
|
|
3832
3832
|
});
|
|
3833
3833
|
return t.emit("createDsc", o), o;
|
|
3834
3834
|
}
|
|
3835
|
-
function
|
|
3835
|
+
function zo(e, t) {
|
|
3836
3836
|
const n = t.getPropagationContext();
|
|
3837
|
-
return n.dsc ||
|
|
3837
|
+
return n.dsc || rr(n.traceId, e);
|
|
3838
3838
|
}
|
|
3839
|
-
function
|
|
3840
|
-
const t =
|
|
3839
|
+
function Ko(e) {
|
|
3840
|
+
const t = jt();
|
|
3841
3841
|
if (!t)
|
|
3842
3842
|
return {};
|
|
3843
|
-
const n =
|
|
3843
|
+
const n = tr(e), r = n[qo];
|
|
3844
3844
|
if (r)
|
|
3845
3845
|
return r;
|
|
3846
|
-
const o = n.spanContext().traceState, i = o && o.get("sentry.dsc"), c = i &&
|
|
3846
|
+
const o = n.spanContext().traceState, i = o && o.get("sentry.dsc"), c = i && Oo(i);
|
|
3847
3847
|
if (c)
|
|
3848
3848
|
return c;
|
|
3849
|
-
const u =
|
|
3849
|
+
const u = rr(e.spanContext().traceId, t), l = Jt(n), h = l.data || {}, y = h[Qo];
|
|
3850
3850
|
y != null && (u.sample_rate = `${y}`);
|
|
3851
|
-
const m = h[
|
|
3852
|
-
return m !== "url" && b && (u.transaction = b),
|
|
3851
|
+
const m = h[_o], b = l.description;
|
|
3852
|
+
return m !== "url" && b && (u.transaction = b), Jo() && (u.sampled = String(Fo(n))), t.emit("createDsc", u, n), u;
|
|
3853
3853
|
}
|
|
3854
|
-
function
|
|
3854
|
+
function Go(e) {
|
|
3855
3855
|
if (typeof e == "boolean")
|
|
3856
3856
|
return Number(e);
|
|
3857
3857
|
const t = typeof e == "string" ? parseFloat(e) : e;
|
|
@@ -3865,18 +3865,18 @@ function qo(e) {
|
|
|
3865
3865
|
}
|
|
3866
3866
|
return t;
|
|
3867
3867
|
}
|
|
3868
|
-
const
|
|
3869
|
-
function
|
|
3868
|
+
const Wo = /^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;
|
|
3869
|
+
function Yo(e) {
|
|
3870
3870
|
return e === "http" || e === "https";
|
|
3871
3871
|
}
|
|
3872
|
-
function
|
|
3872
|
+
function ft(e, t = !1) {
|
|
3873
3873
|
const { host: n, path: r, pass: o, port: i, projectId: c, protocol: u, publicKey: l } = e;
|
|
3874
3874
|
return `${u}://${l}${t && o ? `:${o}` : ""}@${n}${i ? `:${i}` : ""}/${r && `${r}/`}${c}`;
|
|
3875
3875
|
}
|
|
3876
|
-
function
|
|
3877
|
-
const t =
|
|
3876
|
+
function Vo(e) {
|
|
3877
|
+
const t = Wo.exec(e);
|
|
3878
3878
|
if (!t) {
|
|
3879
|
-
|
|
3879
|
+
at(() => {
|
|
3880
3880
|
console.error(`Invalid Sentry Dsn: ${e}`);
|
|
3881
3881
|
});
|
|
3882
3882
|
return;
|
|
@@ -3888,9 +3888,9 @@ function Go(e) {
|
|
|
3888
3888
|
const m = h.match(/^\d+/);
|
|
3889
3889
|
m && (h = m[0]);
|
|
3890
3890
|
}
|
|
3891
|
-
return
|
|
3891
|
+
return or({ host: i, pass: o, path: l, projectId: h, port: c, protocol: n, publicKey: r });
|
|
3892
3892
|
}
|
|
3893
|
-
function
|
|
3893
|
+
function or(e) {
|
|
3894
3894
|
return {
|
|
3895
3895
|
protocol: e.protocol,
|
|
3896
3896
|
publicKey: e.publicKey || "",
|
|
@@ -3901,18 +3901,18 @@ function nr(e) {
|
|
|
3901
3901
|
projectId: e.projectId
|
|
3902
3902
|
};
|
|
3903
3903
|
}
|
|
3904
|
-
function
|
|
3905
|
-
if (!
|
|
3904
|
+
function Zo(e) {
|
|
3905
|
+
if (!xt)
|
|
3906
3906
|
return !0;
|
|
3907
3907
|
const { port: t, projectId: n, protocol: r } = e;
|
|
3908
|
-
return ["protocol", "publicKey", "host", "projectId"].find((c) => e[c] ? !1 : (N.error(`Invalid Sentry Dsn: ${c} missing`), !0)) ? !1 : n.match(/^\d+$/) ?
|
|
3908
|
+
return ["protocol", "publicKey", "host", "projectId"].find((c) => e[c] ? !1 : (N.error(`Invalid Sentry Dsn: ${c} missing`), !0)) ? !1 : n.match(/^\d+$/) ? Yo(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);
|
|
3909
3909
|
}
|
|
3910
|
-
function
|
|
3911
|
-
const t = typeof e == "string" ?
|
|
3912
|
-
if (!(!t || !
|
|
3910
|
+
function $o(e) {
|
|
3911
|
+
const t = typeof e == "string" ? Vo(e) : or(e);
|
|
3912
|
+
if (!(!t || !Zo(t)))
|
|
3913
3913
|
return t;
|
|
3914
3914
|
}
|
|
3915
|
-
function
|
|
3915
|
+
function es() {
|
|
3916
3916
|
const e = typeof WeakSet == "function", t = e ? /* @__PURE__ */ new WeakSet() : [];
|
|
3917
3917
|
function n(o) {
|
|
3918
3918
|
if (e)
|
|
@@ -3936,21 +3936,21 @@ function Vo() {
|
|
|
3936
3936
|
}
|
|
3937
3937
|
function oe(e, t = 100, n = 1 / 0) {
|
|
3938
3938
|
try {
|
|
3939
|
-
return
|
|
3939
|
+
return Pt("", e, t, n);
|
|
3940
3940
|
} catch (r) {
|
|
3941
3941
|
return { ERROR: `**non-serializable** (${r})` };
|
|
3942
3942
|
}
|
|
3943
3943
|
}
|
|
3944
|
-
function
|
|
3944
|
+
function sr(e, t = 3, n = 100 * 1024) {
|
|
3945
3945
|
const r = oe(e, t);
|
|
3946
|
-
return
|
|
3946
|
+
return os(r) > n ? sr(e, t - 1, n) : r;
|
|
3947
3947
|
}
|
|
3948
|
-
function
|
|
3948
|
+
function Pt(e, t, n = 1 / 0, r = 1 / 0, o = es()) {
|
|
3949
3949
|
const [i, c] = o;
|
|
3950
3950
|
if (t == null || // this matches null and undefined -> eqeq not eqeqeq
|
|
3951
3951
|
["boolean", "string"].includes(typeof t) || typeof t == "number" && Number.isFinite(t))
|
|
3952
3952
|
return t;
|
|
3953
|
-
const u =
|
|
3953
|
+
const u = ts(e, t);
|
|
3954
3954
|
if (!u.startsWith("[object "))
|
|
3955
3955
|
return u;
|
|
3956
3956
|
if (t.__sentry_skip_normalization__)
|
|
@@ -3964,12 +3964,12 @@ function _t(e, t, n = 1 / 0, r = 1 / 0, o = Vo()) {
|
|
|
3964
3964
|
if (h && typeof h.toJSON == "function")
|
|
3965
3965
|
try {
|
|
3966
3966
|
const I = h.toJSON();
|
|
3967
|
-
return
|
|
3967
|
+
return Pt("", I, l - 1, r, o);
|
|
3968
3968
|
} catch {
|
|
3969
3969
|
}
|
|
3970
3970
|
const y = Array.isArray(t) ? [] : {};
|
|
3971
3971
|
let m = 0;
|
|
3972
|
-
const b =
|
|
3972
|
+
const b = Yn(t);
|
|
3973
3973
|
for (const I in b) {
|
|
3974
3974
|
if (!Object.prototype.hasOwnProperty.call(b, I))
|
|
3975
3975
|
continue;
|
|
@@ -3978,11 +3978,11 @@ function _t(e, t, n = 1 / 0, r = 1 / 0, o = Vo()) {
|
|
|
3978
3978
|
break;
|
|
3979
3979
|
}
|
|
3980
3980
|
const B = b[I];
|
|
3981
|
-
y[I] =
|
|
3981
|
+
y[I] = Pt(I, B, l - 1, r, o), m++;
|
|
3982
3982
|
}
|
|
3983
3983
|
return c(t), y;
|
|
3984
3984
|
}
|
|
3985
|
-
function
|
|
3985
|
+
function ts(e, t) {
|
|
3986
3986
|
try {
|
|
3987
3987
|
if (e === "domain" && t && typeof t == "object" && t._events)
|
|
3988
3988
|
return "[Domain]";
|
|
@@ -3994,42 +3994,42 @@ function Zo(e, t) {
|
|
|
3994
3994
|
return "[Window]";
|
|
3995
3995
|
if (typeof document < "u" && t === document)
|
|
3996
3996
|
return "[Document]";
|
|
3997
|
-
if (
|
|
3997
|
+
if (ro(t))
|
|
3998
3998
|
return "[VueViewModel]";
|
|
3999
|
-
if (
|
|
3999
|
+
if (no(t))
|
|
4000
4000
|
return "[SyntheticEvent]";
|
|
4001
4001
|
if (typeof t == "number" && !Number.isFinite(t))
|
|
4002
4002
|
return `[${t}]`;
|
|
4003
4003
|
if (typeof t == "function")
|
|
4004
|
-
return `[Function: ${
|
|
4004
|
+
return `[Function: ${Zr(t)}]`;
|
|
4005
4005
|
if (typeof t == "symbol")
|
|
4006
4006
|
return `[${String(t)}]`;
|
|
4007
4007
|
if (typeof t == "bigint")
|
|
4008
4008
|
return `[BigInt: ${String(t)}]`;
|
|
4009
|
-
const n =
|
|
4009
|
+
const n = ns(t);
|
|
4010
4010
|
return /^HTML(\w*)Element$/.test(n) ? `[HTMLElement: ${n}]` : `[object ${n}]`;
|
|
4011
4011
|
} catch (n) {
|
|
4012
4012
|
return `**non-serializable** (${n})`;
|
|
4013
4013
|
}
|
|
4014
4014
|
}
|
|
4015
|
-
function
|
|
4015
|
+
function ns(e) {
|
|
4016
4016
|
const t = Object.getPrototypeOf(e);
|
|
4017
4017
|
return t ? t.constructor.name : "null prototype";
|
|
4018
4018
|
}
|
|
4019
|
-
function
|
|
4019
|
+
function rs(e) {
|
|
4020
4020
|
return ~-encodeURI(e).split(/%..|./).length;
|
|
4021
4021
|
}
|
|
4022
|
-
function
|
|
4023
|
-
return
|
|
4022
|
+
function os(e) {
|
|
4023
|
+
return rs(JSON.stringify(e));
|
|
4024
4024
|
}
|
|
4025
|
-
function
|
|
4025
|
+
function Re(e, t = []) {
|
|
4026
4026
|
return [e, t];
|
|
4027
4027
|
}
|
|
4028
|
-
function
|
|
4028
|
+
function ss(e, t) {
|
|
4029
4029
|
const [n, r] = e;
|
|
4030
4030
|
return [n, [...r, t]];
|
|
4031
4031
|
}
|
|
4032
|
-
function
|
|
4032
|
+
function _n(e, t) {
|
|
4033
4033
|
const n = e[1];
|
|
4034
4034
|
for (const r of n) {
|
|
4035
4035
|
const o = r[0].type;
|
|
@@ -4038,14 +4038,14 @@ function In(e, t) {
|
|
|
4038
4038
|
}
|
|
4039
4039
|
return !1;
|
|
4040
4040
|
}
|
|
4041
|
-
function
|
|
4041
|
+
function wt(e) {
|
|
4042
4042
|
return j.__SENTRY__ && j.__SENTRY__.encodePolyfill ? j.__SENTRY__.encodePolyfill(e) : new TextEncoder().encode(e);
|
|
4043
4043
|
}
|
|
4044
|
-
function
|
|
4044
|
+
function is(e) {
|
|
4045
4045
|
const [t, n] = e;
|
|
4046
4046
|
let r = JSON.stringify(t);
|
|
4047
4047
|
function o(i) {
|
|
4048
|
-
typeof r == "string" ? r = typeof i == "string" ? r + i : [
|
|
4048
|
+
typeof r == "string" ? r = typeof i == "string" ? r + i : [wt(r), i] : r.push(typeof i == "string" ? wt(i) : i);
|
|
4049
4049
|
}
|
|
4050
4050
|
for (const i of n) {
|
|
4051
4051
|
const [c, u] = i;
|
|
@@ -4063,17 +4063,17 @@ ${JSON.stringify(c)}
|
|
|
4063
4063
|
o(l);
|
|
4064
4064
|
}
|
|
4065
4065
|
}
|
|
4066
|
-
return typeof r == "string" ? r :
|
|
4066
|
+
return typeof r == "string" ? r : as(r);
|
|
4067
4067
|
}
|
|
4068
|
-
function
|
|
4068
|
+
function as(e) {
|
|
4069
4069
|
const t = e.reduce((o, i) => o + i.length, 0), n = new Uint8Array(t);
|
|
4070
4070
|
let r = 0;
|
|
4071
4071
|
for (const o of e)
|
|
4072
4072
|
n.set(o, r), r += o.length;
|
|
4073
4073
|
return n;
|
|
4074
4074
|
}
|
|
4075
|
-
function
|
|
4076
|
-
const t = typeof e.data == "string" ?
|
|
4075
|
+
function cs(e) {
|
|
4076
|
+
const t = typeof e.data == "string" ? wt(e.data) : e.data;
|
|
4077
4077
|
return [
|
|
4078
4078
|
V({
|
|
4079
4079
|
type: "attachment",
|
|
@@ -4085,7 +4085,7 @@ function ss(e) {
|
|
|
4085
4085
|
t
|
|
4086
4086
|
];
|
|
4087
4087
|
}
|
|
4088
|
-
const
|
|
4088
|
+
const us = {
|
|
4089
4089
|
session: "session",
|
|
4090
4090
|
sessions: "session",
|
|
4091
4091
|
attachment: "attachment",
|
|
@@ -4103,64 +4103,64 @@ const is = {
|
|
|
4103
4103
|
statsd: "metric_bucket",
|
|
4104
4104
|
raw_security: "security"
|
|
4105
4105
|
};
|
|
4106
|
-
function
|
|
4107
|
-
return
|
|
4106
|
+
function Qn(e) {
|
|
4107
|
+
return us[e];
|
|
4108
4108
|
}
|
|
4109
|
-
function
|
|
4109
|
+
function ir(e) {
|
|
4110
4110
|
if (!e || !e.sdk)
|
|
4111
4111
|
return;
|
|
4112
4112
|
const { name: t, version: n } = e.sdk;
|
|
4113
4113
|
return { name: t, version: n };
|
|
4114
4114
|
}
|
|
4115
|
-
function
|
|
4115
|
+
function ls(e, t, n, r) {
|
|
4116
4116
|
const o = e.sdkProcessingMetadata && e.sdkProcessingMetadata.dynamicSamplingContext;
|
|
4117
4117
|
return {
|
|
4118
4118
|
event_id: e.event_id,
|
|
4119
4119
|
sent_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
4120
4120
|
...t && { sdk: t },
|
|
4121
|
-
...!!n && r && { dsn:
|
|
4121
|
+
...!!n && r && { dsn: ft(r) },
|
|
4122
4122
|
...o && {
|
|
4123
4123
|
trace: V({ ...o })
|
|
4124
4124
|
}
|
|
4125
4125
|
};
|
|
4126
4126
|
}
|
|
4127
|
-
function
|
|
4127
|
+
function As(e, t) {
|
|
4128
4128
|
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;
|
|
4129
4129
|
}
|
|
4130
|
-
function
|
|
4131
|
-
const o =
|
|
4130
|
+
function ds(e, t, n, r) {
|
|
4131
|
+
const o = ir(n), i = {
|
|
4132
4132
|
sent_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
4133
4133
|
...o && { sdk: o },
|
|
4134
|
-
...!!r && t && { dsn:
|
|
4134
|
+
...!!r && t && { dsn: ft(t) }
|
|
4135
4135
|
}, c = "aggregates" in e ? [{ type: "sessions" }, e] : [{ type: "session" }, e.toJSON()];
|
|
4136
|
-
return
|
|
4136
|
+
return Re(i, [c]);
|
|
4137
4137
|
}
|
|
4138
|
-
function
|
|
4139
|
-
const o =
|
|
4140
|
-
|
|
4141
|
-
const c =
|
|
4142
|
-
return delete e.sdkProcessingMetadata,
|
|
4138
|
+
function fs(e, t, n, r) {
|
|
4139
|
+
const o = ir(n), i = e.type && e.type !== "replay_event" ? e.type : "event";
|
|
4140
|
+
As(e, n && n.sdk);
|
|
4141
|
+
const c = ls(e, o, r, t);
|
|
4142
|
+
return delete e.sdkProcessingMetadata, Re(c, [[{ type: i }, e]]);
|
|
4143
4143
|
}
|
|
4144
|
-
function
|
|
4144
|
+
function Tt(e, t, n, r = 0) {
|
|
4145
4145
|
return new W((o, i) => {
|
|
4146
4146
|
const c = e[r];
|
|
4147
4147
|
if (t === null || typeof c != "function")
|
|
4148
4148
|
o(t);
|
|
4149
4149
|
else {
|
|
4150
4150
|
const u = c({ ...t }, n);
|
|
4151
|
-
U && c.id && u === null && N.log(`Event processor "${c.id}" dropped event`),
|
|
4151
|
+
U && c.id && u === null && N.log(`Event processor "${c.id}" dropped event`), ut(u) ? u.then((l) => Tt(e, l, n, r + 1).then(o)).then(null, i) : Tt(e, u, n, r + 1).then(o).then(null, i);
|
|
4152
4152
|
}
|
|
4153
4153
|
});
|
|
4154
4154
|
}
|
|
4155
|
-
let
|
|
4156
|
-
function
|
|
4155
|
+
let Me, kn, xe;
|
|
4156
|
+
function hs(e) {
|
|
4157
4157
|
const t = j._sentryDebugIds;
|
|
4158
4158
|
if (!t)
|
|
4159
4159
|
return {};
|
|
4160
4160
|
const n = Object.keys(t);
|
|
4161
|
-
return
|
|
4162
|
-
|
|
4163
|
-
const i =
|
|
4161
|
+
return xe && n.length === kn || (kn = n.length, xe = n.reduce((r, o) => {
|
|
4162
|
+
Me || (Me = {});
|
|
4163
|
+
const i = Me[o];
|
|
4164
4164
|
if (i)
|
|
4165
4165
|
r[i[0]] = i[1];
|
|
4166
4166
|
else {
|
|
@@ -4168,19 +4168,19 @@ function As(e) {
|
|
|
4168
4168
|
for (let u = c.length - 1; u >= 0; u--) {
|
|
4169
4169
|
const l = c[u], h = l && l.filename, y = t[o];
|
|
4170
4170
|
if (h && y) {
|
|
4171
|
-
r[h] = y,
|
|
4171
|
+
r[h] = y, Me[o] = [h, y];
|
|
4172
4172
|
break;
|
|
4173
4173
|
}
|
|
4174
4174
|
}
|
|
4175
4175
|
}
|
|
4176
4176
|
return r;
|
|
4177
|
-
}, {})),
|
|
4177
|
+
}, {})), xe;
|
|
4178
4178
|
}
|
|
4179
|
-
function
|
|
4179
|
+
function ps(e, t) {
|
|
4180
4180
|
const { fingerprint: n, span: r, breadcrumbs: o, sdkProcessingMetadata: i } = t;
|
|
4181
|
-
|
|
4181
|
+
gs(e, t), r && Cs(e, r), bs(e, n), ys(e, o), ms(e, i);
|
|
4182
4182
|
}
|
|
4183
|
-
function
|
|
4183
|
+
function Pn(e, t) {
|
|
4184
4184
|
const {
|
|
4185
4185
|
extra: n,
|
|
4186
4186
|
tags: r,
|
|
@@ -4196,12 +4196,12 @@ function _n(e, t) {
|
|
|
4196
4196
|
transactionName: I,
|
|
4197
4197
|
span: B
|
|
4198
4198
|
} = t;
|
|
4199
|
-
|
|
4199
|
+
Ue(e, "extra", n), Ue(e, "tags", r), Ue(e, "user", o), Ue(e, "contexts", i), e.sdkProcessingMetadata = dt(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 };
|
|
4200
4200
|
}
|
|
4201
|
-
function
|
|
4202
|
-
e[t] =
|
|
4201
|
+
function Ue(e, t, n) {
|
|
4202
|
+
e[t] = dt(e[t], n, 1);
|
|
4203
4203
|
}
|
|
4204
|
-
function
|
|
4204
|
+
function gs(e, t) {
|
|
4205
4205
|
const { extra: n, tags: r, user: o, contexts: i, level: c, transactionName: u } = t, l = V(n);
|
|
4206
4206
|
l && Object.keys(l).length && (e.extra = { ...l, ...e.extra });
|
|
4207
4207
|
const h = V(r);
|
|
@@ -4211,67 +4211,67 @@ function fs(e, t) {
|
|
|
4211
4211
|
const m = V(i);
|
|
4212
4212
|
m && Object.keys(m).length && (e.contexts = { ...m, ...e.contexts }), c && (e.level = c), u && e.type !== "transaction" && (e.transaction = u);
|
|
4213
4213
|
}
|
|
4214
|
-
function
|
|
4214
|
+
function ys(e, t) {
|
|
4215
4215
|
const n = [...e.breadcrumbs || [], ...t];
|
|
4216
4216
|
e.breadcrumbs = n.length ? n : void 0;
|
|
4217
4217
|
}
|
|
4218
|
-
function
|
|
4218
|
+
function ms(e, t) {
|
|
4219
4219
|
e.sdkProcessingMetadata = {
|
|
4220
4220
|
...e.sdkProcessingMetadata,
|
|
4221
4221
|
...t
|
|
4222
4222
|
};
|
|
4223
4223
|
}
|
|
4224
|
-
function
|
|
4224
|
+
function Cs(e, t) {
|
|
4225
4225
|
e.contexts = {
|
|
4226
|
-
trace:
|
|
4226
|
+
trace: Mo(t),
|
|
4227
4227
|
...e.contexts
|
|
4228
4228
|
}, e.sdkProcessingMetadata = {
|
|
4229
|
-
dynamicSamplingContext:
|
|
4229
|
+
dynamicSamplingContext: Ko(t),
|
|
4230
4230
|
...e.sdkProcessingMetadata
|
|
4231
4231
|
};
|
|
4232
|
-
const n =
|
|
4232
|
+
const n = tr(t), r = Jt(n).description;
|
|
4233
4233
|
r && !e.transaction && e.type === "transaction" && (e.transaction = r);
|
|
4234
4234
|
}
|
|
4235
|
-
function
|
|
4235
|
+
function bs(e, t) {
|
|
4236
4236
|
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;
|
|
4237
4237
|
}
|
|
4238
|
-
function
|
|
4238
|
+
function Es(e, t, n, r, o, i) {
|
|
4239
4239
|
const { normalizeDepth: c = 3, normalizeMaxBreadth: u = 1e3 } = e, l = {
|
|
4240
4240
|
...t,
|
|
4241
4241
|
event_id: t.event_id || n.event_id || te(),
|
|
4242
|
-
timestamp: t.timestamp ||
|
|
4242
|
+
timestamp: t.timestamp || At()
|
|
4243
4243
|
}, h = n.integrations || e.integrations.map((S) => S.name);
|
|
4244
|
-
|
|
4245
|
-
const y =
|
|
4246
|
-
n.mechanism &&
|
|
4247
|
-
const m = o ? o.getEventProcessors() : [], b =
|
|
4244
|
+
vs(l, e), Ss(l, h), o && o.emit("applyFrameMetadata", t), t.type === void 0 && Is(l, e.stackParser);
|
|
4245
|
+
const y = Qs(r, n.captureContext);
|
|
4246
|
+
n.mechanism && ke(l, n.mechanism);
|
|
4247
|
+
const m = o ? o.getEventProcessors() : [], b = vo().getScopeData();
|
|
4248
4248
|
if (i) {
|
|
4249
4249
|
const S = i.getScopeData();
|
|
4250
|
-
|
|
4250
|
+
Pn(b, S);
|
|
4251
4251
|
}
|
|
4252
4252
|
if (y) {
|
|
4253
4253
|
const S = y.getScopeData();
|
|
4254
|
-
|
|
4254
|
+
Pn(b, S);
|
|
4255
4255
|
}
|
|
4256
4256
|
const I = [...n.attachments || [], ...b.attachments];
|
|
4257
|
-
I.length && (n.attachments = I),
|
|
4257
|
+
I.length && (n.attachments = I), ps(l, b);
|
|
4258
4258
|
const B = [
|
|
4259
4259
|
...m,
|
|
4260
4260
|
// Run scope event processors _after_ all other processors
|
|
4261
4261
|
...b.eventProcessors
|
|
4262
4262
|
];
|
|
4263
|
-
return
|
|
4263
|
+
return Tt(B, l, n).then((S) => (S && Bs(S), typeof c == "number" && c > 0 ? _s(S, c, u) : S));
|
|
4264
4264
|
}
|
|
4265
|
-
function
|
|
4265
|
+
function vs(e, t) {
|
|
4266
4266
|
const { environment: n, release: r, dist: o, maxValueLength: i = 250 } = t;
|
|
4267
|
-
e.environment = e.environment || n ||
|
|
4267
|
+
e.environment = e.environment || n || nr, !e.release && r && (e.release = r), !e.dist && o && (e.dist = o), e.message && (e.message = Qe(e.message, i));
|
|
4268
4268
|
const c = e.exception && e.exception.values && e.exception.values[0];
|
|
4269
|
-
c && c.value && (c.value =
|
|
4269
|
+
c && c.value && (c.value = Qe(c.value, i));
|
|
4270
4270
|
const u = e.request;
|
|
4271
|
-
u && u.url && (u.url =
|
|
4271
|
+
u && u.url && (u.url = Qe(u.url, i));
|
|
4272
4272
|
}
|
|
4273
|
-
function
|
|
4274
|
-
const n =
|
|
4273
|
+
function Is(e, t) {
|
|
4274
|
+
const n = hs(t);
|
|
4275
4275
|
try {
|
|
4276
4276
|
e.exception.values.forEach((r) => {
|
|
4277
4277
|
r.stacktrace.frames.forEach((o) => {
|
|
@@ -4281,7 +4281,7 @@ function bs(e, t) {
|
|
|
4281
4281
|
} catch {
|
|
4282
4282
|
}
|
|
4283
4283
|
}
|
|
4284
|
-
function
|
|
4284
|
+
function Bs(e) {
|
|
4285
4285
|
const t = {};
|
|
4286
4286
|
try {
|
|
4287
4287
|
e.exception.values.forEach((r) => {
|
|
@@ -4303,10 +4303,10 @@ function Es(e) {
|
|
|
4303
4303
|
});
|
|
4304
4304
|
});
|
|
4305
4305
|
}
|
|
4306
|
-
function
|
|
4306
|
+
function Ss(e, t) {
|
|
4307
4307
|
t.length > 0 && (e.sdk = e.sdk || {}, e.sdk.integrations = [...e.sdk.integrations || [], ...t]);
|
|
4308
4308
|
}
|
|
4309
|
-
function
|
|
4309
|
+
function _s(e, t, n) {
|
|
4310
4310
|
if (!e)
|
|
4311
4311
|
return null;
|
|
4312
4312
|
const r = {
|
|
@@ -4336,46 +4336,46 @@ function Is(e, t, n) {
|
|
|
4336
4336
|
}
|
|
4337
4337
|
}))), e.contexts && e.contexts.flags && r.contexts && (r.contexts.flags = oe(e.contexts.flags, 3, n)), r;
|
|
4338
4338
|
}
|
|
4339
|
-
function
|
|
4339
|
+
function Qs(e, t) {
|
|
4340
4340
|
if (!t)
|
|
4341
4341
|
return e;
|
|
4342
4342
|
const n = e ? e.clone() : new ue();
|
|
4343
4343
|
return n.update(t), n;
|
|
4344
4344
|
}
|
|
4345
|
-
const
|
|
4346
|
-
function
|
|
4345
|
+
const ks = "7";
|
|
4346
|
+
function Ps(e) {
|
|
4347
4347
|
const t = e.protocol ? `${e.protocol}:` : "", n = e.port ? `:${e.port}` : "";
|
|
4348
4348
|
return `${t}//${e.host}${n}${e.path ? `/${e.path}` : ""}/api/`;
|
|
4349
4349
|
}
|
|
4350
|
-
function
|
|
4351
|
-
return `${
|
|
4350
|
+
function ws(e) {
|
|
4351
|
+
return `${Ps(e)}${e.projectId}/envelope/`;
|
|
4352
4352
|
}
|
|
4353
|
-
function
|
|
4353
|
+
function Ts(e, t) {
|
|
4354
4354
|
const n = {
|
|
4355
|
-
sentry_version:
|
|
4355
|
+
sentry_version: ks
|
|
4356
4356
|
};
|
|
4357
4357
|
return e.publicKey && (n.sentry_key = e.publicKey), t && (n.sentry_client = `${t.name}/${t.version}`), new URLSearchParams(n).toString();
|
|
4358
4358
|
}
|
|
4359
|
-
function
|
|
4360
|
-
return t || `${
|
|
4359
|
+
function Rs(e, t, n) {
|
|
4360
|
+
return t || `${ws(e)}?${Ts(e, n)}`;
|
|
4361
4361
|
}
|
|
4362
|
-
const
|
|
4363
|
-
function
|
|
4362
|
+
const wn = [];
|
|
4363
|
+
function Ls(e, t) {
|
|
4364
4364
|
const n = {};
|
|
4365
4365
|
return t.forEach((r) => {
|
|
4366
|
-
r &&
|
|
4366
|
+
r && ar(e, r, n);
|
|
4367
4367
|
}), n;
|
|
4368
4368
|
}
|
|
4369
|
-
function
|
|
4369
|
+
function Tn(e, t) {
|
|
4370
4370
|
for (const n of t)
|
|
4371
4371
|
n && n.afterAllSetup && n.afterAllSetup(e);
|
|
4372
4372
|
}
|
|
4373
|
-
function
|
|
4373
|
+
function ar(e, t, n) {
|
|
4374
4374
|
if (n[t.name]) {
|
|
4375
4375
|
U && N.log(`Integration skipped because it was already installed: ${t.name}`);
|
|
4376
4376
|
return;
|
|
4377
4377
|
}
|
|
4378
|
-
if (n[t.name] = t,
|
|
4378
|
+
if (n[t.name] = t, wn.indexOf(t.name) === -1 && typeof t.setupOnce == "function" && (t.setupOnce(), wn.push(t.name)), t.setup && typeof t.setup == "function" && t.setup(e), typeof t.preprocessEvent == "function") {
|
|
4379
4379
|
const r = t.preprocessEvent.bind(t);
|
|
4380
4380
|
e.on("preprocessEvent", (o, i) => r(o, i, e));
|
|
4381
4381
|
}
|
|
@@ -4387,23 +4387,23 @@ function sr(e, t, n) {
|
|
|
4387
4387
|
}
|
|
4388
4388
|
U && N.log(`Integration installed: ${t.name}`);
|
|
4389
4389
|
}
|
|
4390
|
-
function
|
|
4390
|
+
function Os(e, t, n) {
|
|
4391
4391
|
const r = [
|
|
4392
4392
|
{ type: "client_report" },
|
|
4393
4393
|
{
|
|
4394
|
-
timestamp:
|
|
4394
|
+
timestamp: At(),
|
|
4395
4395
|
discarded_events: e
|
|
4396
4396
|
}
|
|
4397
4397
|
];
|
|
4398
|
-
return
|
|
4398
|
+
return Re(t ? { dsn: t } : {}, [r]);
|
|
4399
4399
|
}
|
|
4400
4400
|
class Y extends Error {
|
|
4401
4401
|
constructor(t, n = "warn") {
|
|
4402
4402
|
super(t), this.message = t, this.logLevel = n;
|
|
4403
4403
|
}
|
|
4404
4404
|
}
|
|
4405
|
-
const
|
|
4406
|
-
class
|
|
4405
|
+
const Rn = "Not capturing exception because it's already been captured.";
|
|
4406
|
+
class Ns {
|
|
4407
4407
|
/** Options passed to the SDK. */
|
|
4408
4408
|
/** The client Dsn, if specified in options. Without this Dsn, the SDK will be disabled. */
|
|
4409
4409
|
/** Array of set up integrations. */
|
|
@@ -4416,8 +4416,8 @@ class Ls {
|
|
|
4416
4416
|
* @param options Options for the client.
|
|
4417
4417
|
*/
|
|
4418
4418
|
constructor(t) {
|
|
4419
|
-
if (this._options = t, this._integrations = {}, this._numProcessing = 0, this._outcomes = {}, this._hooks = {}, this._eventProcessors = [], t.dsn ? this._dsn =
|
|
4420
|
-
const o =
|
|
4419
|
+
if (this._options = t, this._integrations = {}, this._numProcessing = 0, this._outcomes = {}, this._hooks = {}, this._eventProcessors = [], t.dsn ? this._dsn = $o(t.dsn) : U && N.warn("No DSN provided, client will not send events."), this._dsn) {
|
|
4420
|
+
const o = Rs(
|
|
4421
4421
|
this._dsn,
|
|
4422
4422
|
t.tunnel,
|
|
4423
4423
|
t._metadata ? t._metadata.sdk : void 0
|
|
@@ -4430,7 +4430,7 @@ class Ls {
|
|
|
4430
4430
|
});
|
|
4431
4431
|
}
|
|
4432
4432
|
const r = ["enableTracing", "tracesSampleRate", "tracesSampler"].find((o) => o in t && t[o] == null);
|
|
4433
|
-
r &&
|
|
4433
|
+
r && at(() => {
|
|
4434
4434
|
console.warn(
|
|
4435
4435
|
`[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.`
|
|
4436
4436
|
);
|
|
@@ -4441,8 +4441,8 @@ class Ls {
|
|
|
4441
4441
|
*/
|
|
4442
4442
|
captureException(t, n, r) {
|
|
4443
4443
|
const o = te();
|
|
4444
|
-
if (
|
|
4445
|
-
return U && N.log(
|
|
4444
|
+
if (yn(t))
|
|
4445
|
+
return U && N.log(Rn), o;
|
|
4446
4446
|
const i = {
|
|
4447
4447
|
event_id: o,
|
|
4448
4448
|
...n
|
|
@@ -4460,7 +4460,7 @@ class Ls {
|
|
|
4460
4460
|
const i = {
|
|
4461
4461
|
event_id: te(),
|
|
4462
4462
|
...r
|
|
4463
|
-
}, c =
|
|
4463
|
+
}, c = Xt(t) ? t : String(t), u = eo(t) ? this.eventFromMessage(c, n, i) : this.eventFromException(t, i);
|
|
4464
4464
|
return this._process(u.then((l) => this._captureEvent(l, i, o))), i.event_id;
|
|
4465
4465
|
}
|
|
4466
4466
|
/**
|
|
@@ -4468,8 +4468,8 @@ class Ls {
|
|
|
4468
4468
|
*/
|
|
4469
4469
|
captureEvent(t, n, r) {
|
|
4470
4470
|
const o = te();
|
|
4471
|
-
if (n && n.originalException &&
|
|
4472
|
-
return U && N.log(
|
|
4471
|
+
if (n && n.originalException && yn(n.originalException))
|
|
4472
|
+
return U && N.log(Rn), o;
|
|
4473
4473
|
const i = {
|
|
4474
4474
|
event_id: o,
|
|
4475
4475
|
...n
|
|
@@ -4480,7 +4480,7 @@ class Ls {
|
|
|
4480
4480
|
* @inheritDoc
|
|
4481
4481
|
*/
|
|
4482
4482
|
captureSession(t) {
|
|
4483
|
-
typeof t.release != "string" ? U && N.warn("Discarded session because of missing or non-string release") : (this.sendSession(t),
|
|
4483
|
+
typeof t.release != "string" ? U && N.warn("Discarded session because of missing or non-string release") : (this.sendSession(t), _t(t, { init: !1 }));
|
|
4484
4484
|
}
|
|
4485
4485
|
/**
|
|
4486
4486
|
* @inheritDoc
|
|
@@ -4551,16 +4551,16 @@ class Ls {
|
|
|
4551
4551
|
*/
|
|
4552
4552
|
addIntegration(t) {
|
|
4553
4553
|
const n = this._integrations[t.name];
|
|
4554
|
-
|
|
4554
|
+
ar(this, t, this._integrations), n || Tn(this, [t]);
|
|
4555
4555
|
}
|
|
4556
4556
|
/**
|
|
4557
4557
|
* @inheritDoc
|
|
4558
4558
|
*/
|
|
4559
4559
|
sendEvent(t, n = {}) {
|
|
4560
4560
|
this.emit("beforeSendEvent", t, n);
|
|
4561
|
-
let r =
|
|
4561
|
+
let r = fs(t, this._dsn, this._options._metadata, this._options.tunnel);
|
|
4562
4562
|
for (const i of n.attachments || [])
|
|
4563
|
-
r =
|
|
4563
|
+
r = ss(r, cs(i));
|
|
4564
4564
|
const o = this.sendEnvelope(r);
|
|
4565
4565
|
o && o.then((i) => this.emit("afterSendEvent", t, i), null);
|
|
4566
4566
|
}
|
|
@@ -4568,7 +4568,7 @@ class Ls {
|
|
|
4568
4568
|
* @inheritDoc
|
|
4569
4569
|
*/
|
|
4570
4570
|
sendSession(t) {
|
|
4571
|
-
const n =
|
|
4571
|
+
const n = ds(t, this._dsn, this._options._metadata, this._options.tunnel);
|
|
4572
4572
|
this.sendEnvelope(n);
|
|
4573
4573
|
}
|
|
4574
4574
|
/**
|
|
@@ -4607,7 +4607,7 @@ class Ls {
|
|
|
4607
4607
|
/** Setup integrations for this client. */
|
|
4608
4608
|
_setupIntegrations() {
|
|
4609
4609
|
const { integrations: t } = this._options;
|
|
4610
|
-
this._integrations =
|
|
4610
|
+
this._integrations = Ls(this, t), Tn(this, t);
|
|
4611
4611
|
}
|
|
4612
4612
|
/** Updates existing session based on the provided event */
|
|
4613
4613
|
_updateSessionFromEvent(t, n) {
|
|
@@ -4624,7 +4624,7 @@ class Ls {
|
|
|
4624
4624
|
}
|
|
4625
4625
|
}
|
|
4626
4626
|
const c = t.status === "ok";
|
|
4627
|
-
(c && t.errors === 0 || c && r) && (
|
|
4627
|
+
(c && t.errors === 0 || c && r) && (_t(t, {
|
|
4628
4628
|
...r && { status: "crashed" },
|
|
4629
4629
|
errors: t.errors || Number(o || r)
|
|
4630
4630
|
}), this.captureSession(t));
|
|
@@ -4665,16 +4665,16 @@ class Ls {
|
|
|
4665
4665
|
* @param currentScope A scope containing event metadata.
|
|
4666
4666
|
* @returns A new event with more information.
|
|
4667
4667
|
*/
|
|
4668
|
-
_prepareEvent(t, n, r =
|
|
4668
|
+
_prepareEvent(t, n, r = er(), o = Eo()) {
|
|
4669
4669
|
const i = this.getOptions(), c = Object.keys(this._integrations);
|
|
4670
|
-
return !n.integrations && c.length > 0 && (n.integrations = c), this.emit("preprocessEvent", t, n), t.type || o.setLastEventId(t.event_id || n.event_id),
|
|
4670
|
+
return !n.integrations && c.length > 0 && (n.integrations = c), this.emit("preprocessEvent", t, n), t.type || o.setLastEventId(t.event_id || n.event_id), Es(i, t, n, r, this, o).then((u) => {
|
|
4671
4671
|
if (u === null)
|
|
4672
4672
|
return u;
|
|
4673
4673
|
u.contexts = {
|
|
4674
|
-
trace:
|
|
4674
|
+
trace: Io(r),
|
|
4675
4675
|
...u.contexts
|
|
4676
4676
|
};
|
|
4677
|
-
const l =
|
|
4677
|
+
const l = zo(this, r);
|
|
4678
4678
|
return u.sdkProcessingMetadata = {
|
|
4679
4679
|
dynamicSamplingContext: l,
|
|
4680
4680
|
...u.sdkProcessingMetadata
|
|
@@ -4709,9 +4709,9 @@ class Ls {
|
|
|
4709
4709
|
* @returns A SyncPromise that resolves with the event or rejects in case event was/will not be send.
|
|
4710
4710
|
*/
|
|
4711
4711
|
_processEvent(t, n, r) {
|
|
4712
|
-
const o = this.getOptions(), { sampleRate: i } = o, c =
|
|
4712
|
+
const o = this.getOptions(), { sampleRate: i } = o, c = ur(t), u = cr(t), l = t.type || "error", h = `before send for type \`${l}\``, y = typeof i > "u" ? void 0 : Go(i);
|
|
4713
4713
|
if (u && typeof y == "number" && Math.random() > y)
|
|
4714
|
-
return this.recordDroppedEvent("sample_rate", "error", t),
|
|
4714
|
+
return this.recordDroppedEvent("sample_rate", "error", t), Ze(
|
|
4715
4715
|
new Y(
|
|
4716
4716
|
`Discarding event because it's not included in the random sample (sampling rate = ${i})`,
|
|
4717
4717
|
"log"
|
|
@@ -4723,8 +4723,8 @@ class Ls {
|
|
|
4723
4723
|
throw this.recordDroppedEvent("event_processor", m, t), new Y("An event processor returned `null`, will not send event.", "log");
|
|
4724
4724
|
if (n.data && n.data.__sentry__ === !0)
|
|
4725
4725
|
return B;
|
|
4726
|
-
const S =
|
|
4727
|
-
return
|
|
4726
|
+
const S = Ms(this, o, B, n);
|
|
4727
|
+
return Ds(S, h);
|
|
4728
4728
|
}).then((B) => {
|
|
4729
4729
|
if (B === null) {
|
|
4730
4730
|
if (this.recordDroppedEvent("before_send", m, t), c) {
|
|
@@ -4735,8 +4735,8 @@ class Ls {
|
|
|
4735
4735
|
}
|
|
4736
4736
|
const Q = r && r.getSession();
|
|
4737
4737
|
if (!c && Q && this._updateSessionFromEvent(Q, B), c) {
|
|
4738
|
-
const P = B.sdkProcessingMetadata && B.sdkProcessingMetadata.spanCountBeforeProcessing || 0, k = B.spans ? B.spans.length : 0,
|
|
4739
|
-
|
|
4738
|
+
const P = B.sdkProcessingMetadata && B.sdkProcessingMetadata.spanCountBeforeProcessing || 0, k = B.spans ? B.spans.length : 0, L = P - k;
|
|
4739
|
+
L > 0 && this.recordDroppedEvent("before_send", "span", L);
|
|
4740
4740
|
}
|
|
4741
4741
|
const S = B.transaction_info;
|
|
4742
4742
|
if (c && S && B.transaction !== t.transaction) {
|
|
@@ -4797,19 +4797,19 @@ Reason: ${B}`
|
|
|
4797
4797
|
return;
|
|
4798
4798
|
}
|
|
4799
4799
|
U && N.log("Sending outcomes:", t);
|
|
4800
|
-
const n =
|
|
4800
|
+
const n = Os(t, this._options.tunnel && ft(this._dsn));
|
|
4801
4801
|
this.sendEnvelope(n);
|
|
4802
4802
|
}
|
|
4803
4803
|
/**
|
|
4804
4804
|
* @inheritDoc
|
|
4805
4805
|
*/
|
|
4806
4806
|
}
|
|
4807
|
-
function
|
|
4807
|
+
function Ds(e, t) {
|
|
4808
4808
|
const n = `${t} must return \`null\` or a valid event.`;
|
|
4809
|
-
if (
|
|
4809
|
+
if (ut(e))
|
|
4810
4810
|
return e.then(
|
|
4811
4811
|
(r) => {
|
|
4812
|
-
if (!
|
|
4812
|
+
if (!Ie(r) && r !== null)
|
|
4813
4813
|
throw new Y(n);
|
|
4814
4814
|
return r;
|
|
4815
4815
|
},
|
|
@@ -4817,20 +4817,20 @@ function Rs(e, t) {
|
|
|
4817
4817
|
throw new Y(`${t} rejected with ${r}`);
|
|
4818
4818
|
}
|
|
4819
4819
|
);
|
|
4820
|
-
if (!
|
|
4820
|
+
if (!Ie(e) && e !== null)
|
|
4821
4821
|
throw new Y(n);
|
|
4822
4822
|
return e;
|
|
4823
4823
|
}
|
|
4824
|
-
function
|
|
4824
|
+
function Ms(e, t, n, r) {
|
|
4825
4825
|
const { beforeSend: o, beforeSendTransaction: i, beforeSendSpan: c } = t;
|
|
4826
|
-
if (
|
|
4826
|
+
if (cr(n) && o)
|
|
4827
4827
|
return o(n, r);
|
|
4828
|
-
if (
|
|
4828
|
+
if (ur(n)) {
|
|
4829
4829
|
if (n.spans && c) {
|
|
4830
4830
|
const u = [];
|
|
4831
4831
|
for (const l of n.spans) {
|
|
4832
4832
|
const h = c(l);
|
|
4833
|
-
h ? u.push(h) : (
|
|
4833
|
+
h ? u.push(h) : (jo(), e.recordDroppedEvent("before_send", "span"));
|
|
4834
4834
|
}
|
|
4835
4835
|
n.spans = u;
|
|
4836
4836
|
}
|
|
@@ -4847,13 +4847,13 @@ function Os(e, t, n, r) {
|
|
|
4847
4847
|
}
|
|
4848
4848
|
return n;
|
|
4849
4849
|
}
|
|
4850
|
-
function
|
|
4850
|
+
function cr(e) {
|
|
4851
4851
|
return e.type === void 0;
|
|
4852
4852
|
}
|
|
4853
|
-
function
|
|
4853
|
+
function ur(e) {
|
|
4854
4854
|
return e.type === "transaction";
|
|
4855
4855
|
}
|
|
4856
|
-
function
|
|
4856
|
+
function xs(e) {
|
|
4857
4857
|
const t = [];
|
|
4858
4858
|
function n() {
|
|
4859
4859
|
return e === void 0 || t.length < e;
|
|
@@ -4863,7 +4863,7 @@ function Ns(e) {
|
|
|
4863
4863
|
}
|
|
4864
4864
|
function o(c) {
|
|
4865
4865
|
if (!n())
|
|
4866
|
-
return
|
|
4866
|
+
return Ze(new Y("Not adding Promise because buffer limit was reached."));
|
|
4867
4867
|
const u = c();
|
|
4868
4868
|
return t.indexOf(u) === -1 && t.push(u), u.then(() => r(u)).then(
|
|
4869
4869
|
null,
|
|
@@ -4892,21 +4892,21 @@ function Ns(e) {
|
|
|
4892
4892
|
drain: i
|
|
4893
4893
|
};
|
|
4894
4894
|
}
|
|
4895
|
-
const
|
|
4896
|
-
function
|
|
4895
|
+
const Us = 60 * 1e3;
|
|
4896
|
+
function Fs(e, t = Date.now()) {
|
|
4897
4897
|
const n = parseInt(`${e}`, 10);
|
|
4898
4898
|
if (!isNaN(n))
|
|
4899
4899
|
return n * 1e3;
|
|
4900
4900
|
const r = Date.parse(`${e}`);
|
|
4901
|
-
return isNaN(r) ?
|
|
4901
|
+
return isNaN(r) ? Us : r - t;
|
|
4902
4902
|
}
|
|
4903
|
-
function
|
|
4903
|
+
function Xs(e, t) {
|
|
4904
4904
|
return e[t] || e.all || 0;
|
|
4905
4905
|
}
|
|
4906
|
-
function
|
|
4907
|
-
return
|
|
4906
|
+
function Hs(e, t, n = Date.now()) {
|
|
4907
|
+
return Xs(e, t) > n;
|
|
4908
4908
|
}
|
|
4909
|
-
function
|
|
4909
|
+
function js(e, { statusCode: t, headers: n }, r = Date.now()) {
|
|
4910
4910
|
const o = {
|
|
4911
4911
|
...e
|
|
4912
4912
|
}, i = n && n["x-sentry-rate-limits"], c = n && n["retry-after"];
|
|
@@ -4919,33 +4919,33 @@ function Fs(e, { statusCode: t, headers: n }, r = Date.now()) {
|
|
|
4919
4919
|
for (const I of h.split(";"))
|
|
4920
4920
|
I === "metric_bucket" ? (!y || y.split(";").includes("custom")) && (o[I] = r + b) : o[I] = r + b;
|
|
4921
4921
|
}
|
|
4922
|
-
else c ? o.all = r +
|
|
4922
|
+
else c ? o.all = r + Fs(c, r) : t === 429 && (o.all = r + 60 * 1e3);
|
|
4923
4923
|
return o;
|
|
4924
4924
|
}
|
|
4925
|
-
const
|
|
4926
|
-
function
|
|
4927
|
-
e.bufferSize ||
|
|
4925
|
+
const Js = 64;
|
|
4926
|
+
function qs(e, t, n = xs(
|
|
4927
|
+
e.bufferSize || Js
|
|
4928
4928
|
)) {
|
|
4929
4929
|
let r = {};
|
|
4930
4930
|
const o = (c) => n.drain(c);
|
|
4931
4931
|
function i(c) {
|
|
4932
4932
|
const u = [];
|
|
4933
|
-
if (
|
|
4934
|
-
const I =
|
|
4935
|
-
if (
|
|
4936
|
-
const B =
|
|
4933
|
+
if (_n(c, (m, b) => {
|
|
4934
|
+
const I = Qn(b);
|
|
4935
|
+
if (Hs(r, I)) {
|
|
4936
|
+
const B = Ln(m, b);
|
|
4937
4937
|
e.recordDroppedEvent("ratelimit_backoff", I, B);
|
|
4938
4938
|
} else
|
|
4939
4939
|
u.push(m);
|
|
4940
4940
|
}), u.length === 0)
|
|
4941
4941
|
return pe({});
|
|
4942
|
-
const l =
|
|
4943
|
-
|
|
4944
|
-
const B =
|
|
4945
|
-
e.recordDroppedEvent(m,
|
|
4942
|
+
const l = Re(c[0], u), h = (m) => {
|
|
4943
|
+
_n(l, (b, I) => {
|
|
4944
|
+
const B = Ln(b, I);
|
|
4945
|
+
e.recordDroppedEvent(m, Qn(I), B);
|
|
4946
4946
|
});
|
|
4947
|
-
}, y = () => t({ body:
|
|
4948
|
-
(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 =
|
|
4947
|
+
}, y = () => t({ body: is(l) }).then(
|
|
4948
|
+
(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 = js(r, m), m),
|
|
4949
4949
|
(m) => {
|
|
4950
4950
|
throw h("network_error"), m;
|
|
4951
4951
|
}
|
|
@@ -4964,11 +4964,11 @@ function Hs(e, t, n = Ns(
|
|
|
4964
4964
|
flush: o
|
|
4965
4965
|
};
|
|
4966
4966
|
}
|
|
4967
|
-
function
|
|
4967
|
+
function Ln(e, t) {
|
|
4968
4968
|
if (!(t !== "event" && t !== "transaction"))
|
|
4969
4969
|
return Array.isArray(e) ? e[1] : void 0;
|
|
4970
4970
|
}
|
|
4971
|
-
function
|
|
4971
|
+
function zs(e, t, n = [t], r = "npm") {
|
|
4972
4972
|
const o = e._metadata || {};
|
|
4973
4973
|
o.sdk || (o.sdk = {
|
|
4974
4974
|
name: `sentry.javascript.${t}`,
|
|
@@ -4979,28 +4979,28 @@ function js(e, t, n = [t], r = "npm") {
|
|
|
4979
4979
|
version: he
|
|
4980
4980
|
}), e._metadata = o;
|
|
4981
4981
|
}
|
|
4982
|
-
function
|
|
4982
|
+
function Ks(e) {
|
|
4983
4983
|
return e && /^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString());
|
|
4984
4984
|
}
|
|
4985
|
-
function
|
|
4985
|
+
function Gs() {
|
|
4986
4986
|
return "npm";
|
|
4987
4987
|
}
|
|
4988
|
-
const
|
|
4989
|
-
function
|
|
4990
|
-
const n =
|
|
4991
|
-
type:
|
|
4992
|
-
value:
|
|
4988
|
+
const Fe = j, Ws = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__;
|
|
4989
|
+
function lr(e, t) {
|
|
4990
|
+
const n = qt(e, t), r = {
|
|
4991
|
+
type: ei(t),
|
|
4992
|
+
value: ti(t)
|
|
4993
4993
|
};
|
|
4994
4994
|
return n.length && (r.stacktrace = { frames: n }), r.type === void 0 && r.value === "" && (r.value = "Unrecoverable error caught"), r;
|
|
4995
4995
|
}
|
|
4996
|
-
function
|
|
4997
|
-
const o =
|
|
4998
|
-
__serialized__:
|
|
4996
|
+
function Ys(e, t, n, r) {
|
|
4997
|
+
const o = jt(), i = o && o.getOptions().normalizeDepth, c = ai(t), u = {
|
|
4998
|
+
__serialized__: sr(t, i)
|
|
4999
4999
|
};
|
|
5000
5000
|
if (c)
|
|
5001
5001
|
return {
|
|
5002
5002
|
exception: {
|
|
5003
|
-
values: [
|
|
5003
|
+
values: [lr(e, c)]
|
|
5004
5004
|
},
|
|
5005
5005
|
extra: u
|
|
5006
5006
|
};
|
|
@@ -5008,89 +5008,89 @@ function Ks(e, t, n, r) {
|
|
|
5008
5008
|
exception: {
|
|
5009
5009
|
values: [
|
|
5010
5010
|
{
|
|
5011
|
-
type:
|
|
5012
|
-
value:
|
|
5011
|
+
type: ct(t) ? t.constructor.name : r ? "UnhandledRejection" : "Error",
|
|
5012
|
+
value: si(t, { isUnhandledRejection: r })
|
|
5013
5013
|
}
|
|
5014
5014
|
]
|
|
5015
5015
|
},
|
|
5016
5016
|
extra: u
|
|
5017
5017
|
};
|
|
5018
5018
|
if (n) {
|
|
5019
|
-
const h =
|
|
5019
|
+
const h = qt(e, n);
|
|
5020
5020
|
h.length && (l.exception.values[0].stacktrace = { frames: h });
|
|
5021
5021
|
}
|
|
5022
5022
|
return l;
|
|
5023
5023
|
}
|
|
5024
|
-
function
|
|
5024
|
+
function bt(e, t) {
|
|
5025
5025
|
return {
|
|
5026
5026
|
exception: {
|
|
5027
|
-
values: [
|
|
5027
|
+
values: [lr(e, t)]
|
|
5028
5028
|
}
|
|
5029
5029
|
};
|
|
5030
5030
|
}
|
|
5031
|
-
function
|
|
5032
|
-
const n = t.stacktrace || t.stack || "", r =
|
|
5031
|
+
function qt(e, t) {
|
|
5032
|
+
const n = t.stacktrace || t.stack || "", r = Zs(t), o = $s(t);
|
|
5033
5033
|
try {
|
|
5034
5034
|
return e(n, r, o);
|
|
5035
5035
|
} catch {
|
|
5036
5036
|
}
|
|
5037
5037
|
return [];
|
|
5038
5038
|
}
|
|
5039
|
-
const
|
|
5040
|
-
function
|
|
5041
|
-
return e &&
|
|
5039
|
+
const Vs = /Minified React error #\d+;/i;
|
|
5040
|
+
function Zs(e) {
|
|
5041
|
+
return e && Vs.test(e.message) ? 1 : 0;
|
|
5042
5042
|
}
|
|
5043
|
-
function
|
|
5043
|
+
function $s(e) {
|
|
5044
5044
|
return typeof e.framesToPop == "number" ? e.framesToPop : 0;
|
|
5045
5045
|
}
|
|
5046
|
-
function
|
|
5046
|
+
function Ar(e) {
|
|
5047
5047
|
return typeof WebAssembly < "u" && typeof WebAssembly.Exception < "u" ? e instanceof WebAssembly.Exception : !1;
|
|
5048
5048
|
}
|
|
5049
|
-
function
|
|
5049
|
+
function ei(e) {
|
|
5050
5050
|
const t = e && e.name;
|
|
5051
|
-
return !t &&
|
|
5051
|
+
return !t && Ar(e) ? e.message && Array.isArray(e.message) && e.message.length == 2 ? e.message[0] : "WebAssembly.Exception" : t;
|
|
5052
5052
|
}
|
|
5053
|
-
function
|
|
5053
|
+
function ti(e) {
|
|
5054
5054
|
const t = e && e.message;
|
|
5055
|
-
return t ? t.error && typeof t.error.message == "string" ? t.error.message :
|
|
5055
|
+
return t ? t.error && typeof t.error.message == "string" ? t.error.message : Ar(e) && Array.isArray(e.message) && e.message.length == 2 ? e.message[1] : t : "No error message";
|
|
5056
5056
|
}
|
|
5057
|
-
function
|
|
5058
|
-
const o = n && n.syntheticException || void 0, i =
|
|
5059
|
-
return
|
|
5057
|
+
function ni(e, t, n, r) {
|
|
5058
|
+
const o = n && n.syntheticException || void 0, i = oi(e, t, o, r);
|
|
5059
|
+
return ke(i), i.level = "error", n && n.event_id && (i.event_id = n.event_id), pe(i);
|
|
5060
5060
|
}
|
|
5061
|
-
function
|
|
5062
|
-
const i = r && r.syntheticException || void 0, c =
|
|
5061
|
+
function ri(e, t, n = "info", r, o) {
|
|
5062
|
+
const i = r && r.syntheticException || void 0, c = Rt(e, t, i, o);
|
|
5063
5063
|
return c.level = n, r && r.event_id && (c.event_id = r.event_id), pe(c);
|
|
5064
5064
|
}
|
|
5065
|
-
function
|
|
5065
|
+
function oi(e, t, n, r, o) {
|
|
5066
5066
|
let i;
|
|
5067
|
-
if (
|
|
5068
|
-
return
|
|
5069
|
-
if (
|
|
5067
|
+
if (Kn(t) && t.error)
|
|
5068
|
+
return bt(e, t.error);
|
|
5069
|
+
if (fn(t) || $r(t)) {
|
|
5070
5070
|
const c = t;
|
|
5071
5071
|
if ("stack" in t)
|
|
5072
|
-
i =
|
|
5072
|
+
i = bt(e, t);
|
|
5073
5073
|
else {
|
|
5074
|
-
const u = c.name || (
|
|
5075
|
-
i =
|
|
5074
|
+
const u = c.name || (fn(c) ? "DOMError" : "DOMException"), l = c.message ? `${u}: ${c.message}` : u;
|
|
5075
|
+
i = Rt(e, l, n, r), gn(i, l);
|
|
5076
5076
|
}
|
|
5077
5077
|
return "code" in c && (i.tags = { ...i.tags, "DOMException.code": `${c.code}` }), i;
|
|
5078
5078
|
}
|
|
5079
|
-
return
|
|
5079
|
+
return zn(t) ? bt(e, t) : Ie(t) || ct(t) ? (i = Ys(e, t, n, o), ke(i, {
|
|
5080
5080
|
synthetic: !0
|
|
5081
|
-
}), i) : (i =
|
|
5081
|
+
}), i) : (i = Rt(e, t, n, r), gn(i, `${t}`), ke(i, {
|
|
5082
5082
|
synthetic: !0
|
|
5083
5083
|
}), i);
|
|
5084
5084
|
}
|
|
5085
|
-
function
|
|
5085
|
+
function Rt(e, t, n, r) {
|
|
5086
5086
|
const o = {};
|
|
5087
5087
|
if (r && n) {
|
|
5088
|
-
const i =
|
|
5088
|
+
const i = qt(e, n);
|
|
5089
5089
|
i.length && (o.exception = {
|
|
5090
5090
|
values: [{ value: t, stacktrace: { frames: i } }]
|
|
5091
|
-
}),
|
|
5091
|
+
}), ke(o, { synthetic: !0 });
|
|
5092
5092
|
}
|
|
5093
|
-
if (
|
|
5093
|
+
if (Xt(t)) {
|
|
5094
5094
|
const { __sentry_template_string__: i, __sentry_template_values__: c } = t;
|
|
5095
5095
|
return o.logentry = {
|
|
5096
5096
|
message: i,
|
|
@@ -5099,18 +5099,18 @@ function Pt(e, t, n, r) {
|
|
|
5099
5099
|
}
|
|
5100
5100
|
return o.message = t, o;
|
|
5101
5101
|
}
|
|
5102
|
-
function
|
|
5103
|
-
const n =
|
|
5104
|
-
return
|
|
5102
|
+
function si(e, { isUnhandledRejection: t }) {
|
|
5103
|
+
const n = co(e), r = "exception";
|
|
5104
|
+
return Kn(e) ? `Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\`` : ct(e) ? `Event \`${ii(e)}\` (type=${e.type}) captured as ${r}` : `Object captured as ${r} with keys: ${n}`;
|
|
5105
5105
|
}
|
|
5106
|
-
function
|
|
5106
|
+
function ii(e) {
|
|
5107
5107
|
try {
|
|
5108
5108
|
const t = Object.getPrototypeOf(e);
|
|
5109
5109
|
return t ? t.constructor.name : void 0;
|
|
5110
5110
|
} catch {
|
|
5111
5111
|
}
|
|
5112
5112
|
}
|
|
5113
|
-
function
|
|
5113
|
+
function ai(e) {
|
|
5114
5114
|
for (const t in e)
|
|
5115
5115
|
if (Object.prototype.hasOwnProperty.call(e, t)) {
|
|
5116
5116
|
const n = e[t];
|
|
@@ -5118,7 +5118,7 @@ function oi(e) {
|
|
|
5118
5118
|
return n;
|
|
5119
5119
|
}
|
|
5120
5120
|
}
|
|
5121
|
-
function
|
|
5121
|
+
function ci(e, {
|
|
5122
5122
|
metadata: t,
|
|
5123
5123
|
tunnel: n,
|
|
5124
5124
|
dsn: r
|
|
@@ -5132,16 +5132,16 @@ function si(e, {
|
|
|
5132
5132
|
version: t.sdk.version
|
|
5133
5133
|
}
|
|
5134
5134
|
},
|
|
5135
|
-
...!!n && !!r && { dsn:
|
|
5136
|
-
}, i =
|
|
5137
|
-
return
|
|
5135
|
+
...!!n && !!r && { dsn: ft(r) }
|
|
5136
|
+
}, i = ui(e);
|
|
5137
|
+
return Re(o, [i]);
|
|
5138
5138
|
}
|
|
5139
|
-
function
|
|
5139
|
+
function ui(e) {
|
|
5140
5140
|
return [{
|
|
5141
5141
|
type: "user_report"
|
|
5142
5142
|
}, e];
|
|
5143
5143
|
}
|
|
5144
|
-
class
|
|
5144
|
+
class li extends Ns {
|
|
5145
5145
|
/**
|
|
5146
5146
|
* Creates a new Browser SDK instance.
|
|
5147
5147
|
*
|
|
@@ -5152,22 +5152,22 @@ class ai extends Ls {
|
|
|
5152
5152
|
// We default this to true, as it is the safer scenario
|
|
5153
5153
|
parentSpanIsAlwaysRootSpan: !0,
|
|
5154
5154
|
...t
|
|
5155
|
-
}, r =
|
|
5156
|
-
|
|
5157
|
-
|
|
5155
|
+
}, r = Fe.SENTRY_SDK_SOURCE || Gs();
|
|
5156
|
+
zs(n, "browser", ["browser"], r), super(n), n.sendClientReports && Fe.document && Fe.document.addEventListener("visibilitychange", () => {
|
|
5157
|
+
Fe.document.visibilityState === "hidden" && this._flushOutcomes();
|
|
5158
5158
|
});
|
|
5159
5159
|
}
|
|
5160
5160
|
/**
|
|
5161
5161
|
* @inheritDoc
|
|
5162
5162
|
*/
|
|
5163
5163
|
eventFromException(t, n) {
|
|
5164
|
-
return
|
|
5164
|
+
return ni(this._options.stackParser, t, n, this._options.attachStacktrace);
|
|
5165
5165
|
}
|
|
5166
5166
|
/**
|
|
5167
5167
|
* @inheritDoc
|
|
5168
5168
|
*/
|
|
5169
5169
|
eventFromMessage(t, n = "info", r) {
|
|
5170
|
-
return
|
|
5170
|
+
return ri(this._options.stackParser, t, n, r, this._options.attachStacktrace);
|
|
5171
5171
|
}
|
|
5172
5172
|
/**
|
|
5173
5173
|
* Sends user feedback to Sentry.
|
|
@@ -5176,10 +5176,10 @@ class ai extends Ls {
|
|
|
5176
5176
|
*/
|
|
5177
5177
|
captureUserFeedback(t) {
|
|
5178
5178
|
if (!this._isEnabled()) {
|
|
5179
|
-
|
|
5179
|
+
Ws && N.warn("SDK not enabled, will not capture user feedback.");
|
|
5180
5180
|
return;
|
|
5181
5181
|
}
|
|
5182
|
-
const n =
|
|
5182
|
+
const n = ci(t, {
|
|
5183
5183
|
metadata: this.getSdkMetadata(),
|
|
5184
5184
|
dsn: this.getDsn(),
|
|
5185
5185
|
tunnel: this.getOptions().tunnel
|
|
@@ -5193,15 +5193,15 @@ class ai extends Ls {
|
|
|
5193
5193
|
return t.platform = t.platform || "javascript", super._prepareEvent(t, n, r);
|
|
5194
5194
|
}
|
|
5195
5195
|
}
|
|
5196
|
-
const
|
|
5197
|
-
function
|
|
5198
|
-
const t =
|
|
5196
|
+
const Ai = typeof __SENTRY_DEBUG__ > "u" || __SENTRY_DEBUG__, Xe = j, qe = {};
|
|
5197
|
+
function di(e) {
|
|
5198
|
+
const t = qe[e];
|
|
5199
5199
|
if (t)
|
|
5200
5200
|
return t;
|
|
5201
|
-
let n =
|
|
5202
|
-
if (
|
|
5203
|
-
return
|
|
5204
|
-
const r =
|
|
5201
|
+
let n = Xe[e];
|
|
5202
|
+
if (Ks(n))
|
|
5203
|
+
return qe[e] = n.bind(Xe);
|
|
5204
|
+
const r = Xe.document;
|
|
5205
5205
|
if (r && typeof r.createElement == "function")
|
|
5206
5206
|
try {
|
|
5207
5207
|
const o = r.createElement("iframe");
|
|
@@ -5209,14 +5209,14 @@ function ui(e) {
|
|
|
5209
5209
|
const i = o.contentWindow;
|
|
5210
5210
|
i && i[e] && (n = i[e]), r.head.removeChild(o);
|
|
5211
5211
|
} catch (o) {
|
|
5212
|
-
|
|
5212
|
+
Ai && N.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `, o);
|
|
5213
5213
|
}
|
|
5214
|
-
return n && (
|
|
5214
|
+
return n && (qe[e] = n.bind(Xe));
|
|
5215
5215
|
}
|
|
5216
|
-
function
|
|
5217
|
-
|
|
5216
|
+
function On(e) {
|
|
5217
|
+
qe[e] = void 0;
|
|
5218
5218
|
}
|
|
5219
|
-
function
|
|
5219
|
+
function fi(e, t = di("fetch")) {
|
|
5220
5220
|
let n = 0, r = 0;
|
|
5221
5221
|
function o(i) {
|
|
5222
5222
|
const c = i.body.length;
|
|
@@ -5241,7 +5241,7 @@ function li(e, t = ui("fetch")) {
|
|
|
5241
5241
|
...e.fetchOptions
|
|
5242
5242
|
};
|
|
5243
5243
|
if (!t)
|
|
5244
|
-
return
|
|
5244
|
+
return On("fetch"), Ze("No fetch implementation available");
|
|
5245
5245
|
try {
|
|
5246
5246
|
return t(e.url, u).then((l) => (n -= c, r--, {
|
|
5247
5247
|
statusCode: l.status,
|
|
@@ -5251,91 +5251,91 @@ function li(e, t = ui("fetch")) {
|
|
|
5251
5251
|
}
|
|
5252
5252
|
}));
|
|
5253
5253
|
} catch (l) {
|
|
5254
|
-
return
|
|
5254
|
+
return On("fetch"), n -= c, r--, Ze(l);
|
|
5255
5255
|
}
|
|
5256
5256
|
}
|
|
5257
|
-
return
|
|
5257
|
+
return qs(e, o);
|
|
5258
5258
|
}
|
|
5259
|
-
const
|
|
5260
|
-
function
|
|
5259
|
+
const hi = 30, pi = 50;
|
|
5260
|
+
function Lt(e, t, n, r) {
|
|
5261
5261
|
const o = {
|
|
5262
5262
|
filename: e,
|
|
5263
|
-
function: t === "<anonymous>" ?
|
|
5263
|
+
function: t === "<anonymous>" ? ve : t,
|
|
5264
5264
|
in_app: !0
|
|
5265
5265
|
// All browser frames are considered in_app
|
|
5266
5266
|
};
|
|
5267
5267
|
return n !== void 0 && (o.lineno = n), r !== void 0 && (o.colno = r), o;
|
|
5268
5268
|
}
|
|
5269
|
-
const
|
|
5270
|
-
const t =
|
|
5269
|
+
const gi = /^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i, yi = /^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i, mi = /\((\S*)(?::(\d+))(?::(\d+))\)/, Ci = (e) => {
|
|
5270
|
+
const t = gi.exec(e);
|
|
5271
5271
|
if (t) {
|
|
5272
5272
|
const [, r, o, i] = t;
|
|
5273
|
-
return
|
|
5273
|
+
return Lt(r, ve, +o, +i);
|
|
5274
5274
|
}
|
|
5275
|
-
const n =
|
|
5275
|
+
const n = yi.exec(e);
|
|
5276
5276
|
if (n) {
|
|
5277
5277
|
if (n[2] && n[2].indexOf("eval") === 0) {
|
|
5278
|
-
const c =
|
|
5278
|
+
const c = mi.exec(n[2]);
|
|
5279
5279
|
c && (n[2] = c[1], n[3] = c[2], n[4] = c[3]);
|
|
5280
5280
|
}
|
|
5281
|
-
const [o, i] =
|
|
5282
|
-
return
|
|
5281
|
+
const [o, i] = dr(n[1] || ve, n[2]);
|
|
5282
|
+
return Lt(i, o, n[3] ? +n[3] : void 0, n[4] ? +n[4] : void 0);
|
|
5283
5283
|
}
|
|
5284
|
-
},
|
|
5285
|
-
const t =
|
|
5284
|
+
}, bi = [hi, Ci], Ei = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i, vi = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i, Ii = (e) => {
|
|
5285
|
+
const t = Ei.exec(e);
|
|
5286
5286
|
if (t) {
|
|
5287
5287
|
if (t[3] && t[3].indexOf(" > eval") > -1) {
|
|
5288
|
-
const i =
|
|
5288
|
+
const i = vi.exec(t[3]);
|
|
5289
5289
|
i && (t[1] = t[1] || "eval", t[3] = i[1], t[4] = i[2], t[5] = "");
|
|
5290
5290
|
}
|
|
5291
|
-
let r = t[3], o = t[1] ||
|
|
5292
|
-
return [o, r] =
|
|
5291
|
+
let r = t[3], o = t[1] || ve;
|
|
5292
|
+
return [o, r] = dr(o, r), Lt(r, o, t[4] ? +t[4] : void 0, t[5] ? +t[5] : void 0);
|
|
5293
5293
|
}
|
|
5294
|
-
},
|
|
5294
|
+
}, Bi = [pi, Ii], Si = [bi, Bi], _i = Yr(...Si), dr = (e, t) => {
|
|
5295
5295
|
const n = e.indexOf("safari-extension") !== -1, r = e.indexOf("safari-web-extension") !== -1;
|
|
5296
5296
|
return n || r ? [
|
|
5297
|
-
e.indexOf("@") !== -1 ? e.split("@")[0] :
|
|
5297
|
+
e.indexOf("@") !== -1 ? e.split("@")[0] : ve,
|
|
5298
5298
|
n ? `safari-extension:${t}` : `safari-web-extension:${t}`
|
|
5299
5299
|
] : [e, t];
|
|
5300
|
-
},
|
|
5301
|
-
let
|
|
5302
|
-
function
|
|
5303
|
-
const t = new
|
|
5304
|
-
dsn:
|
|
5305
|
-
transport:
|
|
5306
|
-
stackParser:
|
|
5300
|
+
}, Qi = "https://bbed26c9265c425abb56ff9d3728183e@sentry.chocodev.kz/302";
|
|
5301
|
+
let Ot = null;
|
|
5302
|
+
function ki(e) {
|
|
5303
|
+
const t = new li({
|
|
5304
|
+
dsn: Qi,
|
|
5305
|
+
transport: fi,
|
|
5306
|
+
stackParser: _i,
|
|
5307
5307
|
integrations: [],
|
|
5308
|
-
release: "1.1.
|
|
5308
|
+
release: "1.1.59",
|
|
5309
5309
|
environment: e.environment || "production"
|
|
5310
5310
|
}), n = new ue();
|
|
5311
|
-
n.setClient(t), n.setTags(e), t.init(),
|
|
5311
|
+
n.setClient(t), n.setTags(e), t.init(), Ot = n;
|
|
5312
5312
|
}
|
|
5313
5313
|
function se(e, t) {
|
|
5314
|
-
|
|
5314
|
+
Ot && Ot.captureException(
|
|
5315
5315
|
e,
|
|
5316
5316
|
t ? { captureContext: { extra: t } } : void 0
|
|
5317
5317
|
);
|
|
5318
5318
|
}
|
|
5319
|
-
function
|
|
5320
|
-
|
|
5319
|
+
function ze(e, t) {
|
|
5320
|
+
Ve("webPayToken", e), t && Ve("webPayRefreshToken", t);
|
|
5321
5321
|
}
|
|
5322
|
-
function
|
|
5323
|
-
|
|
5322
|
+
function Nn() {
|
|
5323
|
+
Ee("webPayToken"), Ee("webPayRefreshToken");
|
|
5324
5324
|
}
|
|
5325
|
-
async function
|
|
5326
|
-
const t =
|
|
5325
|
+
async function Pi(e) {
|
|
5326
|
+
const t = Mt("webPayRefreshToken");
|
|
5327
5327
|
if (t && e.config.clientId)
|
|
5328
5328
|
try {
|
|
5329
|
-
const n = await
|
|
5329
|
+
const n = await Fr(
|
|
5330
5330
|
e.apiUrl,
|
|
5331
5331
|
e.config.clientId,
|
|
5332
5332
|
t,
|
|
5333
5333
|
e.config.country
|
|
5334
5334
|
);
|
|
5335
|
-
|
|
5335
|
+
ze(n.access_token, n.refresh_token), e.accessToken = n.access_token;
|
|
5336
5336
|
return;
|
|
5337
5337
|
} catch {
|
|
5338
|
-
|
|
5338
|
+
Ee("webPayRefreshToken");
|
|
5339
5339
|
}
|
|
5340
5340
|
if (!e.config.clientId) {
|
|
5341
5341
|
e.config.onError({ attributes: { message: e.t("errorMissingTrackClient") } });
|
|
@@ -5346,35 +5346,35 @@ async function _i(e) {
|
|
|
5346
5346
|
return;
|
|
5347
5347
|
}
|
|
5348
5348
|
try {
|
|
5349
|
-
const n = await
|
|
5349
|
+
const n = await sn(
|
|
5350
5350
|
e.apiUrl,
|
|
5351
5351
|
e.config.clientId,
|
|
5352
5352
|
e.config.trackId,
|
|
5353
5353
|
e.config.country
|
|
5354
5354
|
);
|
|
5355
|
-
|
|
5355
|
+
ze(n.access_token, n.refresh_token), e.accessToken = n.access_token;
|
|
5356
5356
|
} catch (n) {
|
|
5357
5357
|
if (typeof e.config.onRequestNewTrackId == "function") {
|
|
5358
5358
|
e.config.trackId = await e.config.onRequestNewTrackId();
|
|
5359
|
-
const r = await
|
|
5359
|
+
const r = await sn(
|
|
5360
5360
|
e.apiUrl,
|
|
5361
5361
|
e.config.clientId,
|
|
5362
5362
|
e.config.trackId,
|
|
5363
5363
|
e.config.country
|
|
5364
5364
|
);
|
|
5365
|
-
|
|
5365
|
+
ze(r.access_token, r.refresh_token), e.accessToken = r.access_token;
|
|
5366
5366
|
} else
|
|
5367
5367
|
throw n;
|
|
5368
5368
|
}
|
|
5369
5369
|
}
|
|
5370
|
-
const
|
|
5370
|
+
const wi = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5371
5371
|
<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"/>
|
|
5372
5372
|
</svg>
|
|
5373
|
-
`,
|
|
5373
|
+
`, Ti = `<svg width="21" height="12" viewBox="0 0 21 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5374
5374
|
<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"/>
|
|
5375
5375
|
<path d="M7.79163 5.99984H13.2083M10.5 3.2915L10.5 8.70817" stroke="#242424" stroke-width="0.8125" stroke-linecap="round"/>
|
|
5376
5376
|
</svg>
|
|
5377
|
-
`,
|
|
5377
|
+
`, Ri = `<svg width="29" height="12" viewBox="0 0 29 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5378
5378
|
<g clip-path="url(#clip0_22788_48734)">
|
|
5379
5379
|
<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"/>
|
|
5380
5380
|
</g>
|
|
@@ -5384,7 +5384,7 @@ const Qi = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5384
5384
|
</clipPath>
|
|
5385
5385
|
</defs>
|
|
5386
5386
|
</svg>
|
|
5387
|
-
`,
|
|
5387
|
+
`, Li = `<svg width="52" height="21" viewBox="0 0 52 21" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5388
5388
|
<g clip-path="url(#clip0_23934_4296)">
|
|
5389
5389
|
<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"/>
|
|
5390
5390
|
<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"/>
|
|
@@ -5400,7 +5400,7 @@ const Qi = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5400
5400
|
</clipPath>
|
|
5401
5401
|
</defs>
|
|
5402
5402
|
</svg>
|
|
5403
|
-
`,
|
|
5403
|
+
`, Oi = `<svg width="25" height="12" viewBox="0 0 25 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5404
5404
|
<rect width="25" height="11.5385" rx="2.88462" fill="#00579F"/>
|
|
5405
5405
|
<g clip-path="url(#clip0_22788_48747)">
|
|
5406
5406
|
<path d="M9.84078 8.57012H8.36084L9.2865 2.98535H10.7664L9.84078 8.57012Z" fill="white"/>
|
|
@@ -5415,7 +5415,7 @@ const Qi = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5415
5415
|
</clipPath>
|
|
5416
5416
|
</defs>
|
|
5417
5417
|
</svg>
|
|
5418
|
-
`,
|
|
5418
|
+
`, Ni = `<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">
|
|
5419
5419
|
<rect width="36" height="22" fill="url(#pattern0_23934_927)"/>
|
|
5420
5420
|
<defs>
|
|
5421
5421
|
<pattern id="pattern0_23934_927" patternContentUnits="objectBoundingBox" width="1" height="1">
|
|
@@ -5424,26 +5424,26 @@ const Qi = `<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="h
|
|
|
5424
5424
|
<image id="image0_23934_927" width="989" height="768" preserveAspectRatio="none" xlink:href="data:image/png;base64,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"/>
|
|
5425
5425
|
</defs>
|
|
5426
5426
|
</svg>
|
|
5427
|
-
`,
|
|
5428
|
-
kaspi_pay:
|
|
5429
|
-
new_card:
|
|
5430
|
-
apple_pay:
|
|
5431
|
-
google_pay:
|
|
5432
|
-
visa:
|
|
5433
|
-
mastercard:
|
|
5427
|
+
`, Di = {
|
|
5428
|
+
kaspi_pay: wi,
|
|
5429
|
+
new_card: Ti,
|
|
5430
|
+
apple_pay: Ri,
|
|
5431
|
+
google_pay: Li,
|
|
5432
|
+
visa: Oi,
|
|
5433
|
+
mastercard: Ni
|
|
5434
5434
|
};
|
|
5435
|
-
function
|
|
5435
|
+
function Mi(e) {
|
|
5436
5436
|
const t = e == null ? void 0 : e.toLowerCase();
|
|
5437
|
-
return t &&
|
|
5437
|
+
return t && Di[t] || "";
|
|
5438
5438
|
}
|
|
5439
|
-
const
|
|
5439
|
+
const zt = `<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5440
5440
|
<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"/>
|
|
5441
5441
|
</svg>
|
|
5442
|
-
`,
|
|
5443
|
-
function
|
|
5444
|
-
return
|
|
5442
|
+
`, xi = '<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>', Ui = '<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>';
|
|
5443
|
+
function $e(e) {
|
|
5444
|
+
return Mi(e == null ? void 0 : e.iconType);
|
|
5445
5445
|
}
|
|
5446
|
-
function
|
|
5446
|
+
function fr(e, t, n, r = {}) {
|
|
5447
5447
|
const { editMode: o = !1 } = r;
|
|
5448
5448
|
return (o ? e.filter((c) => c.type === "card") : e).map((c) => {
|
|
5449
5449
|
const u = !o && !!t && t.type === c.type && t.cardId === c.cardId, l = JSON.stringify(c).replace(/'/g, "'");
|
|
@@ -5452,7 +5452,7 @@ function Ar(e, t, n, r = {}) {
|
|
|
5452
5452
|
class="choco-widget-method-item choco-widget-method-item--edit"
|
|
5453
5453
|
role="listitem"
|
|
5454
5454
|
>
|
|
5455
|
-
<div class="choco-widget-method-item-icon-wrapper" aria-hidden="true">${
|
|
5455
|
+
<div class="choco-widget-method-item-icon-wrapper" aria-hidden="true">${$e(c)}</div>
|
|
5456
5456
|
<div class="choco-widget-method-item-label">${c.label}</div>
|
|
5457
5457
|
<button
|
|
5458
5458
|
type="button"
|
|
@@ -5461,7 +5461,7 @@ function Ar(e, t, n, r = {}) {
|
|
|
5461
5461
|
data-method='${l}'
|
|
5462
5462
|
aria-label="${c.label} — Удалить"
|
|
5463
5463
|
>
|
|
5464
|
-
${
|
|
5464
|
+
${xi}
|
|
5465
5465
|
</button>
|
|
5466
5466
|
</div>
|
|
5467
5467
|
` : `
|
|
@@ -5473,14 +5473,14 @@ function Ar(e, t, n, r = {}) {
|
|
|
5473
5473
|
aria-label="${c.label}${u ? " (выбрано)" : ""}"
|
|
5474
5474
|
type="button"
|
|
5475
5475
|
>
|
|
5476
|
-
<div class="choco-widget-method-item-icon-wrapper ${c.type}" aria-hidden="true">${
|
|
5476
|
+
<div class="choco-widget-method-item-icon-wrapper ${c.type}" aria-hidden="true">${$e(c)}</div>
|
|
5477
5477
|
<div class="choco-widget-method-item-label">${c.label}</div>
|
|
5478
|
-
${u ?
|
|
5478
|
+
${u ? Ui : ""}
|
|
5479
5479
|
</button>
|
|
5480
5480
|
`;
|
|
5481
5481
|
}).join("");
|
|
5482
5482
|
}
|
|
5483
|
-
function
|
|
5483
|
+
function Fi(e, t, n, r) {
|
|
5484
5484
|
if (!e) return "";
|
|
5485
5485
|
const o = typeof e.amount == "number" && Number.isFinite(e.amount), i = typeof e.percent == "number" && Number.isFinite(e.percent);
|
|
5486
5486
|
return `
|
|
@@ -5493,7 +5493,7 @@ function Mi(e, t, n, r) {
|
|
|
5493
5493
|
</div>
|
|
5494
5494
|
<div class="choco-widget-balance-label-wrapper">
|
|
5495
5495
|
<div class="choco-widget-balance-icon">
|
|
5496
|
-
${
|
|
5496
|
+
${zt}
|
|
5497
5497
|
</div>
|
|
5498
5498
|
<div class="choco-widget-balance-amount">${o ? $(e.amount, "ru", r) : 0}</div>
|
|
5499
5499
|
<label class="choco-widget-toggle">
|
|
@@ -5504,7 +5504,7 @@ function Mi(e, t, n, r) {
|
|
|
5504
5504
|
</div>
|
|
5505
5505
|
`;
|
|
5506
5506
|
}
|
|
5507
|
-
function
|
|
5507
|
+
function Xi(e, t, n, r, o) {
|
|
5508
5508
|
if (!e) return "";
|
|
5509
5509
|
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;
|
|
5510
5510
|
return `
|
|
@@ -5518,7 +5518,7 @@ function xi(e, t, n, r, o) {
|
|
|
5518
5518
|
<div class="choco-widget-balance-label-wrapper">
|
|
5519
5519
|
${h ? `
|
|
5520
5520
|
<div class="choco-widget-balance-icon">
|
|
5521
|
-
${
|
|
5521
|
+
${zt}
|
|
5522
5522
|
</div>
|
|
5523
5523
|
<div class="choco-widget-balance-amount">${h}</div>
|
|
5524
5524
|
` : ""}
|
|
@@ -5530,7 +5530,7 @@ function xi(e, t, n, r, o) {
|
|
|
5530
5530
|
</div>
|
|
5531
5531
|
`;
|
|
5532
5532
|
}
|
|
5533
|
-
function
|
|
5533
|
+
function Hi(e, t, n, r, o, i, c, u, l) {
|
|
5534
5534
|
if (!e && !n && !o) return "";
|
|
5535
5535
|
const h = e ? `
|
|
5536
5536
|
<div class="choco-widget-balance-toggle" data-action="toggle-balance">
|
|
@@ -5541,7 +5541,7 @@ function Ui(e, t, n, r, o, i, c, u, l) {
|
|
|
5541
5541
|
</div>
|
|
5542
5542
|
<div class="choco-widget-balance-label-wrapper">
|
|
5543
5543
|
<div class="choco-widget-balance-icon">
|
|
5544
|
-
${
|
|
5544
|
+
${zt}
|
|
5545
5545
|
</div>
|
|
5546
5546
|
<div class="choco-widget-balance-amount">${e}</div>
|
|
5547
5547
|
<label class="choco-widget-toggle">
|
|
@@ -5553,13 +5553,13 @@ function Ui(e, t, n, r, o, i, c, u, l) {
|
|
|
5553
5553
|
` : "";
|
|
5554
5554
|
return `
|
|
5555
5555
|
<div class="choco-widget-balance-section">
|
|
5556
|
-
${
|
|
5556
|
+
${Xi(o, i, c, u, l)}
|
|
5557
5557
|
${h}
|
|
5558
|
-
${
|
|
5558
|
+
${Fi(n, r, u, l)}
|
|
5559
5559
|
</div>
|
|
5560
5560
|
`;
|
|
5561
5561
|
}
|
|
5562
|
-
function
|
|
5562
|
+
function ji(e, t) {
|
|
5563
5563
|
return e ? `
|
|
5564
5564
|
<div class="choco-widget-cashback-section">
|
|
5565
5565
|
<div class="choco-widget-cashback-info">
|
|
@@ -5571,7 +5571,7 @@ function Fi(e, t) {
|
|
|
5571
5571
|
</div>
|
|
5572
5572
|
` : "";
|
|
5573
5573
|
}
|
|
5574
|
-
function
|
|
5574
|
+
function Ji(e) {
|
|
5575
5575
|
const {
|
|
5576
5576
|
amountFormatted: t,
|
|
5577
5577
|
originalAmountFormatted: n,
|
|
@@ -5591,12 +5591,12 @@ function Xi(e) {
|
|
|
5591
5591
|
paymentMethodDisabled: S = !1,
|
|
5592
5592
|
loading: P,
|
|
5593
5593
|
showFreedomBtn: k,
|
|
5594
|
-
freedomAmountFormatted:
|
|
5595
|
-
t:
|
|
5594
|
+
freedomAmountFormatted: L,
|
|
5595
|
+
t: R,
|
|
5596
5596
|
currency: q
|
|
5597
|
-
} = e, D = (o == null ? void 0 : o.label) ??
|
|
5597
|
+
} = e, D = (o == null ? void 0 : o.label) ?? R("selectMethod"), G = $e(o), z = fr(i, c), J = Hi(u, l, h, y, m, b, I, R, q), M = ji(B, R), v = (c == null ? void 0 : c.type) === "google_pay", g = (c == null ? void 0 : c.type) === "apple_pay", p = v || g;
|
|
5598
5598
|
return `
|
|
5599
|
-
<div class="choco-widget-bottom-bar" role="region" aria-label="${
|
|
5599
|
+
<div class="choco-widget-bottom-bar" role="region" aria-label="${R("paymentMethod")}">
|
|
5600
5600
|
${J}
|
|
5601
5601
|
<div class="choco-widget-payment-info">
|
|
5602
5602
|
${k ? `
|
|
@@ -5606,18 +5606,18 @@ function Xi(e) {
|
|
|
5606
5606
|
type="button"
|
|
5607
5607
|
${Q || P ? "disabled" : ""}
|
|
5608
5608
|
>
|
|
5609
|
-
от ${
|
|
5609
|
+
от ${L} по карте Freedom
|
|
5610
5610
|
</button>
|
|
5611
5611
|
` : ""}
|
|
5612
5612
|
<div class="choco-widget-payment-info-main">
|
|
5613
5613
|
<button
|
|
5614
5614
|
class="choco-widget-payment-method ${(o == null ? void 0 : o.type) || ""}"
|
|
5615
5615
|
data-action="change-method"
|
|
5616
|
-
aria-label="${
|
|
5616
|
+
aria-label="${R("paymentMethod")}: ${D}"
|
|
5617
5617
|
type="button"
|
|
5618
5618
|
${S || Q || P ? "disabled" : ""}
|
|
5619
5619
|
>
|
|
5620
|
-
<div class="choco-widget-method-label">${
|
|
5620
|
+
<div class="choco-widget-method-label">${R("paymentMethod")}</div>
|
|
5621
5621
|
<div class="choco-widget-method-value">
|
|
5622
5622
|
<div class="choco-widget-method-icon-wrapper ${o == null ? void 0 : o.type}" aria-hidden="true">${G}</div>
|
|
5623
5623
|
<div class="choco-widget-method-details">
|
|
@@ -5631,17 +5631,17 @@ function Xi(e) {
|
|
|
5631
5631
|
</div>
|
|
5632
5632
|
</button>
|
|
5633
5633
|
<div class="choco-widget-google-pay-amount ${p ? "" : "choco-widget-google-pay-amount--hidden"}" aria-live="polite">
|
|
5634
|
-
<div class="choco-widget-google-pay-amount-label">${
|
|
5635
|
-
${r ? `<div class="choco-widget-google-pay-amount-value">${
|
|
5634
|
+
<div class="choco-widget-google-pay-amount-label">${R("total")} ${t}</div>
|
|
5635
|
+
${r ? `<div class="choco-widget-google-pay-amount-value">${R("instead")} <span class="choco-widget-google-pay-amount-value-number">${n || ""}</span></div>` : ""}
|
|
5636
5636
|
</div>
|
|
5637
5637
|
<button
|
|
5638
5638
|
class="choco-widget-pay-button ${P ? "choco-widget-pay-button--loading" : ""} ${p ? "choco-widget-pay-button--hidden" : ""}"
|
|
5639
5639
|
data-action="pay"
|
|
5640
|
-
aria-label="${S ?
|
|
5640
|
+
aria-label="${S ? R("login") : `${R("pay")} ${t}`}"
|
|
5641
5641
|
type="button"
|
|
5642
5642
|
${Q || P ? "disabled" : ""}
|
|
5643
5643
|
>
|
|
5644
|
-
${S ?
|
|
5644
|
+
${S ? R("login") : `${R("pay")} ${t}`}
|
|
5645
5645
|
</button>
|
|
5646
5646
|
</div>
|
|
5647
5647
|
<div class="choco-widget-google-pay-row ${v ? "" : "choco-widget-google-pay-row--hidden"}">
|
|
@@ -5673,7 +5673,7 @@ function Xi(e) {
|
|
|
5673
5673
|
<path d="M15 18L9 12L15 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5674
5674
|
</svg>
|
|
5675
5675
|
</button>
|
|
5676
|
-
<h3 class="choco-widget-sheet-title" id="choco-sheet-title">${
|
|
5676
|
+
<h3 class="choco-widget-sheet-title" id="choco-sheet-title">${R("paymentMethods")}</h3>
|
|
5677
5677
|
<button
|
|
5678
5678
|
class="choco-widget-sheet-button choco-widget-sheet-button--edit"
|
|
5679
5679
|
data-action="edit-sheet"
|
|
@@ -5688,7 +5688,7 @@ function Xi(e) {
|
|
|
5688
5688
|
<button
|
|
5689
5689
|
class="choco-widget-sheet-button choco-widget-sheet-button--previous"
|
|
5690
5690
|
data-action="previous-sheet"
|
|
5691
|
-
aria-label="${
|
|
5691
|
+
aria-label="${R("back")}"
|
|
5692
5692
|
type="button"
|
|
5693
5693
|
style="display: none;"
|
|
5694
5694
|
>
|
|
@@ -5703,8 +5703,8 @@ function Xi(e) {
|
|
|
5703
5703
|
</div>
|
|
5704
5704
|
<div class="choco-widget-sheet-delete-confirm" data-delete-confirm="content" aria-hidden="true">
|
|
5705
5705
|
<div class="choco-widget-sheet-delete-confirm-actions">
|
|
5706
|
-
<button type="button" class="choco-widget-delete-confirm-btn choco-widget-delete-confirm-btn--cancel" data-action="confirm-delete-cancel">${
|
|
5707
|
-
<button type="button" class="choco-widget-delete-confirm-btn choco-widget-delete-confirm-btn--delete" data-action="confirm-delete-submit">${
|
|
5706
|
+
<button type="button" class="choco-widget-delete-confirm-btn choco-widget-delete-confirm-btn--cancel" data-action="confirm-delete-cancel">${R("cancel")}</button>
|
|
5707
|
+
<button type="button" class="choco-widget-delete-confirm-btn choco-widget-delete-confirm-btn--delete" data-action="confirm-delete-submit">${R("delete")}</button>
|
|
5708
5708
|
</div>
|
|
5709
5709
|
</div>
|
|
5710
5710
|
${M}
|
|
@@ -5714,29 +5714,29 @@ function Xi(e) {
|
|
|
5714
5714
|
<div class="choco-widget-add-card-sheet choco-widget-payment-sheet" data-sheet="add-card" aria-hidden="true" style="display: none;">
|
|
5715
5715
|
<div class="choco-widget-sheet-content choco-widget-add-card-sheet-content">
|
|
5716
5716
|
<div class="choco-widget-sheet-header">
|
|
5717
|
-
<h3 class="choco-widget-sheet-title">${
|
|
5717
|
+
<h3 class="choco-widget-sheet-title">${R("addCard")}</h3>
|
|
5718
5718
|
</div>
|
|
5719
5719
|
<div class="choco-widget-add-card-iframe-wrapper">
|
|
5720
|
-
<iframe id="choco-widget-add-card-iframe" class="choco-widget-add-card-iframe" title="${
|
|
5720
|
+
<iframe id="choco-widget-add-card-iframe" class="choco-widget-add-card-iframe" title="${R("addCard")}" sandbox="allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-popups-to-escape-sandbox allow-presentation allow-same-origin allow-scripts"></iframe>
|
|
5721
5721
|
</div>
|
|
5722
5722
|
</div>
|
|
5723
5723
|
</div>
|
|
5724
5724
|
`;
|
|
5725
5725
|
}
|
|
5726
|
-
function
|
|
5726
|
+
function qi() {
|
|
5727
5727
|
return `
|
|
5728
5728
|
<div class="choco-widget-bottom-bar-prerender">
|
|
5729
5729
|
<div class="choco-widget-payment-loading"></div>
|
|
5730
5730
|
</div>
|
|
5731
5731
|
`;
|
|
5732
5732
|
}
|
|
5733
|
-
function
|
|
5734
|
-
return
|
|
5733
|
+
function zi(e, t, n, r = {}) {
|
|
5734
|
+
return fr(e, t, n, r);
|
|
5735
5735
|
}
|
|
5736
|
-
function
|
|
5737
|
-
return
|
|
5736
|
+
function Ki(e) {
|
|
5737
|
+
return $e(e);
|
|
5738
5738
|
}
|
|
5739
|
-
function
|
|
5739
|
+
function Gi(e) {
|
|
5740
5740
|
if (typeof document > "u") return { mountTarget: null, isEmbedded: !1 };
|
|
5741
5741
|
const t = e.config.containerSelector;
|
|
5742
5742
|
if (t) {
|
|
@@ -5745,21 +5745,21 @@ function qi(e) {
|
|
|
5745
5745
|
}
|
|
5746
5746
|
return { mountTarget: document.body, isEmbedded: !1 };
|
|
5747
5747
|
}
|
|
5748
|
-
function
|
|
5748
|
+
function hr(e) {
|
|
5749
5749
|
if (typeof document > "u") return !1;
|
|
5750
5750
|
e.container || (e.container = document.createElement("div"), e.container.id = "choco-one-click-widget", e.container.className = "choco-one-click-widget");
|
|
5751
|
-
const { mountTarget: t, isEmbedded: n } =
|
|
5751
|
+
const { mountTarget: t, isEmbedded: n } = Gi(e);
|
|
5752
5752
|
return t ? (e.container.parentElement !== t && t.appendChild(e.container), e.container.classList.toggle("choco-one-click-widget--embedded", n), !0) : !1;
|
|
5753
5753
|
}
|
|
5754
|
-
function
|
|
5755
|
-
|
|
5754
|
+
function Wi(e) {
|
|
5755
|
+
hr(e) && (e.container.style.setProperty("--choco-widget-accent-color", e.config.color), e.container.innerHTML = qi());
|
|
5756
5756
|
}
|
|
5757
|
-
function
|
|
5758
|
-
var
|
|
5759
|
-
if (e._destroyed || !
|
|
5757
|
+
function Yi(e) {
|
|
5758
|
+
var m, b, I, B, Q;
|
|
5759
|
+
if (e._destroyed || !hr(e)) return;
|
|
5760
5760
|
e.container.style.setProperty("--choco-widget-accent-color", e.config.color), e.container.classList.remove("choco-one-click-widget--visible");
|
|
5761
|
-
const t = e.getAvailablePaymentMethods(), n = (
|
|
5762
|
-
e.container.innerHTML =
|
|
5761
|
+
const t = e.getAvailablePaymentMethods(), n = (m = e.checkoutContext) == null ? void 0 : m.data, r = e.config.currency || "KZT", o = (B = (I = (b = n == null ? void 0 : n.balance) == null ? void 0 : b.data) == null ? void 0 : I.money) == null ? void 0 : B[r], i = !e.config.disableUseBalance && o > 0 ? $(o, e.config.locale, e.config.currency) : null, c = (Q = n == null ? void 0 : n.cashback) == null ? void 0 : Q.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;
|
|
5762
|
+
e.container.innerHTML = Ji({
|
|
5763
5763
|
amountFormatted: $(l, e.config.locale, e.config.currency),
|
|
5764
5764
|
originalAmountFormatted: $(
|
|
5765
5765
|
e.config.amount,
|
|
@@ -5787,28 +5787,28 @@ function Ki(e) {
|
|
|
5787
5787
|
e.config.locale,
|
|
5788
5788
|
e.config.currency
|
|
5789
5789
|
),
|
|
5790
|
-
t: (
|
|
5790
|
+
t: (S, P) => e.t(S, P),
|
|
5791
5791
|
currency: r
|
|
5792
5792
|
}), e._attachEventListeners(), e.isOpen = !0, e._emitUserEvent("one_click_pay_cta_rendered", {
|
|
5793
5793
|
terminal_id: e.config.terminalId,
|
|
5794
5794
|
project_id: e.config.projectId ?? e.config.clientId
|
|
5795
|
-
})
|
|
5796
|
-
|
|
5797
|
-
}), requestAnimationFrame(() => {
|
|
5795
|
+
});
|
|
5796
|
+
const y = e._getPaymentMethodForUserEvent();
|
|
5797
|
+
y != null && e._emitUserEvent("one_click_pay_method_resolved", { payment_method: y }), requestAnimationFrame(() => {
|
|
5798
5798
|
requestAnimationFrame(() => {
|
|
5799
|
-
var
|
|
5800
|
-
e._destroyed || (
|
|
5799
|
+
var S;
|
|
5800
|
+
e._destroyed || (S = e.container) == null || S.classList.add("choco-one-click-widget--visible");
|
|
5801
5801
|
});
|
|
5802
5802
|
});
|
|
5803
5803
|
}
|
|
5804
|
-
function
|
|
5804
|
+
function Pe(e) {
|
|
5805
5805
|
var r;
|
|
5806
5806
|
const t = (r = e.container) == null ? void 0 : r.querySelector(
|
|
5807
5807
|
".choco-widget-payment-methods"
|
|
5808
5808
|
);
|
|
5809
5809
|
if (!t) return;
|
|
5810
5810
|
const n = e.getAvailablePaymentMethods();
|
|
5811
|
-
t.innerHTML =
|
|
5811
|
+
t.innerHTML = zi(
|
|
5812
5812
|
n,
|
|
5813
5813
|
e.selectedPaymentMethod,
|
|
5814
5814
|
(o) => e.t(o),
|
|
@@ -5817,25 +5817,25 @@ function ke(e) {
|
|
|
5817
5817
|
o.addEventListener("click", (i) => {
|
|
5818
5818
|
i.stopPropagation();
|
|
5819
5819
|
const c = JSON.parse(o.getAttribute("data-method") || "{}");
|
|
5820
|
-
|
|
5820
|
+
ta(e, c);
|
|
5821
5821
|
});
|
|
5822
5822
|
}), t.querySelectorAll("[data-action='select-method']").forEach((o) => {
|
|
5823
5823
|
o.addEventListener("click", (i) => {
|
|
5824
5824
|
const c = JSON.parse(
|
|
5825
5825
|
i.currentTarget.getAttribute("data-method") || "{}"
|
|
5826
5826
|
);
|
|
5827
|
-
|
|
5827
|
+
mr(e, c);
|
|
5828
5828
|
});
|
|
5829
5829
|
});
|
|
5830
5830
|
}
|
|
5831
|
-
function
|
|
5831
|
+
function pr(e) {
|
|
5832
5832
|
var o, i, c;
|
|
5833
5833
|
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(
|
|
5834
5834
|
".choco-widget-method-icon-wrapper"
|
|
5835
5835
|
);
|
|
5836
|
-
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 =
|
|
5836
|
+
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 = Ki(e.selectedPaymentMethod)), gr(e);
|
|
5837
5837
|
}
|
|
5838
|
-
function
|
|
5838
|
+
function Ke(e) {
|
|
5839
5839
|
var m, b, I, B, Q, S;
|
|
5840
5840
|
const t = (m = e.container) == null ? void 0 : m.querySelector(".choco-widget-pay-button"), n = (b = e.container) == null ? void 0 : b.querySelector(
|
|
5841
5841
|
".choco-widget-google-pay-amount"
|
|
@@ -5865,7 +5865,7 @@ function qe(e) {
|
|
|
5865
5865
|
".choco-widget-google-pay-amount-value-number"
|
|
5866
5866
|
)), i ? i.textContent = h : o && (o.textContent = `${e.t("instead")} ${h}`);
|
|
5867
5867
|
}
|
|
5868
|
-
function
|
|
5868
|
+
function gr(e) {
|
|
5869
5869
|
var l, h, y, m, b, I, B, Q, S, P;
|
|
5870
5870
|
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(
|
|
5871
5871
|
".choco-widget-google-pay-amount"
|
|
@@ -5874,7 +5874,7 @@ function hr(e) {
|
|
|
5874
5874
|
"choco-widget-google-pay-amount--hidden",
|
|
5875
5875
|
!r
|
|
5876
5876
|
), 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) {
|
|
5877
|
-
|
|
5877
|
+
Vi(e);
|
|
5878
5878
|
const k = (B = e.container) == null ? void 0 : B.querySelector(
|
|
5879
5879
|
'[data-action="apple-pay-button-slot"]'
|
|
5880
5880
|
);
|
|
@@ -5884,19 +5884,19 @@ function hr(e) {
|
|
|
5884
5884
|
const k = (Q = e.container) == null ? void 0 : Q.querySelector(
|
|
5885
5885
|
'[data-action="google-pay-button-slot"]'
|
|
5886
5886
|
);
|
|
5887
|
-
k && (k.innerHTML = ""),
|
|
5887
|
+
k && (k.innerHTML = ""), Zi(e);
|
|
5888
5888
|
} else {
|
|
5889
5889
|
e._googlePayButtonRenderVersion += 1;
|
|
5890
5890
|
const k = (S = e.container) == null ? void 0 : S.querySelector(
|
|
5891
5891
|
'[data-action="google-pay-button-slot"]'
|
|
5892
|
-
),
|
|
5892
|
+
), L = (P = e.container) == null ? void 0 : P.querySelector(
|
|
5893
5893
|
'[data-action="apple-pay-button-slot"]'
|
|
5894
5894
|
);
|
|
5895
|
-
k && (k.innerHTML = ""),
|
|
5895
|
+
k && (k.innerHTML = ""), L && (L.innerHTML = "");
|
|
5896
5896
|
}
|
|
5897
|
-
|
|
5897
|
+
Ke(e), ae(e);
|
|
5898
5898
|
}
|
|
5899
|
-
async function
|
|
5899
|
+
async function Vi(e) {
|
|
5900
5900
|
var c, u, l, h, y;
|
|
5901
5901
|
const t = (c = e.container) == null ? void 0 : c.querySelector(
|
|
5902
5902
|
'[data-action="google-pay-button-slot"]'
|
|
@@ -5927,7 +5927,7 @@ async function Gi(e) {
|
|
|
5927
5927
|
m.style.setProperty("border-radius", "12px", "important"), m.style.setProperty("font-weight", "bold", "important"), m.style.setProperty("font-size", "16px", "important");
|
|
5928
5928
|
}), t.appendChild(i), ae(e);
|
|
5929
5929
|
}
|
|
5930
|
-
function
|
|
5930
|
+
function Zi(e) {
|
|
5931
5931
|
var i, c;
|
|
5932
5932
|
const t = (i = e.container) == null ? void 0 : i.querySelector(
|
|
5933
5933
|
'[data-action="apple-pay-button-slot"]'
|
|
@@ -5954,7 +5954,7 @@ function Wi(e) {
|
|
|
5954
5954
|
</span>
|
|
5955
5955
|
`, n.appendChild(r), n.appendChild(o), t.appendChild(n), ae(e);
|
|
5956
5956
|
}
|
|
5957
|
-
function
|
|
5957
|
+
function Dn(e) {
|
|
5958
5958
|
var o;
|
|
5959
5959
|
if (!e.selectedCoupon) return;
|
|
5960
5960
|
const t = e._isCouponDisabled();
|
|
@@ -5983,64 +5983,64 @@ function K(e) {
|
|
|
5983
5983
|
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");
|
|
5984
5984
|
}
|
|
5985
5985
|
function ae(e) {
|
|
5986
|
-
var b, I, B, Q, S, P, k,
|
|
5986
|
+
var b, I, B, Q, S, P, k, L, R;
|
|
5987
5987
|
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(
|
|
5988
5988
|
".choco-widget-google-pay-button-slot button"
|
|
5989
5989
|
), i = (S = e.container) == null ? void 0 : S.querySelector(
|
|
5990
5990
|
".choco-widget-apple-pay-button-slot button"
|
|
5991
5991
|
), c = (P = e.container) == null ? void 0 : P.querySelector(
|
|
5992
5992
|
".choco-widget-google-pay-amount"
|
|
5993
|
-
), u = (k = e.container) == null ? void 0 : k.querySelector(".choco-widget-google-pay-row"), l = (
|
|
5993
|
+
), u = (k = e.container) == null ? void 0 : k.querySelector(".choco-widget-google-pay-row"), l = (L = e.container) == null ? void 0 : L.querySelector(".choco-widget-apple-pay-row"), h = (R = e.container) == null ? void 0 : R.querySelector(
|
|
5994
5994
|
".choco-widget-balance-section"
|
|
5995
5995
|
), y = e._isInteractionBlocked(), m = e.paymentMethodDisabled || y;
|
|
5996
5996
|
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));
|
|
5997
5997
|
}
|
|
5998
|
-
function
|
|
5998
|
+
function yr(e) {
|
|
5999
5999
|
var n;
|
|
6000
6000
|
if (e._isInteractionBlocked()) return;
|
|
6001
6001
|
const t = (n = e.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
6002
|
-
t && (t.classList.add("choco-widget-payment-sheet--open"), e.isPaymentSheetOpen = !0,
|
|
6002
|
+
t && (t.classList.add("choco-widget-payment-sheet--open"), e.isPaymentSheetOpen = !0, we(e));
|
|
6003
6003
|
}
|
|
6004
6004
|
function ce(e) {
|
|
6005
6005
|
var n;
|
|
6006
6006
|
const t = (n = e.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
6007
6007
|
if (t) {
|
|
6008
|
-
|
|
6008
|
+
et(e);
|
|
6009
6009
|
const r = t.querySelector(".choco-widget-sheet-content");
|
|
6010
|
-
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,
|
|
6010
|
+
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, Pe(e), we(e));
|
|
6011
6011
|
}
|
|
6012
6012
|
}
|
|
6013
|
-
function
|
|
6013
|
+
function we(e) {
|
|
6014
6014
|
var l;
|
|
6015
6015
|
const t = (l = e.container) == null ? void 0 : l.querySelector('[data-sheet="payment"]');
|
|
6016
6016
|
if (!t) return;
|
|
6017
6017
|
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");
|
|
6018
6018
|
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"));
|
|
6019
6019
|
}
|
|
6020
|
-
function
|
|
6020
|
+
function Et(e) {
|
|
6021
6021
|
if (!e.addCardActionUrl || !e.container) return;
|
|
6022
6022
|
const t = e.container.querySelector('[data-sheet="add-card"]'), n = e.container.querySelector(
|
|
6023
6023
|
"#choco-widget-add-card-iframe"
|
|
6024
6024
|
);
|
|
6025
|
-
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,
|
|
6025
|
+
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, $i(e));
|
|
6026
6026
|
}
|
|
6027
|
-
function
|
|
6027
|
+
function Se(e) {
|
|
6028
6028
|
var r, o;
|
|
6029
6029
|
const t = (r = e.container) == null ? void 0 : r.querySelector('[data-sheet="add-card"]'), n = (o = e.container) == null ? void 0 : o.querySelector(
|
|
6030
6030
|
"#choco-widget-add-card-iframe"
|
|
6031
6031
|
);
|
|
6032
|
-
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,
|
|
6032
|
+
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, ea(e);
|
|
6033
6033
|
}
|
|
6034
|
-
function
|
|
6034
|
+
function $i(e) {
|
|
6035
6035
|
e._boundAddCardMessage = (t) => {
|
|
6036
6036
|
var n;
|
|
6037
6037
|
e.isAddCardViewOpen && (n = t.data) != null && n.message && t.origin === "https://rahmetapp.kz" && ge(e);
|
|
6038
6038
|
}, window.addEventListener("message", e._boundAddCardMessage);
|
|
6039
6039
|
}
|
|
6040
|
-
function
|
|
6040
|
+
function ea(e) {
|
|
6041
6041
|
e._boundAddCardMessage && (window.removeEventListener("message", e._boundAddCardMessage), e._boundAddCardMessage = null);
|
|
6042
6042
|
}
|
|
6043
|
-
function
|
|
6043
|
+
function ta(e, t) {
|
|
6044
6044
|
var c;
|
|
6045
6045
|
e._pendingDeleteMethod = t;
|
|
6046
6046
|
const n = (c = e.container) == null ? void 0 : c.querySelector('[data-sheet="payment"]');
|
|
@@ -6049,13 +6049,13 @@ function Zi(e, t) {
|
|
|
6049
6049
|
const r = n.querySelector(".choco-widget-sheet-title"), o = n.querySelector('[data-action="edit-sheet"]'), i = n.querySelector('[data-action="previous-sheet"]');
|
|
6050
6050
|
r && (r.textContent = e.t("confirmDeleteCard")), o && (o.style.display = "none"), i && (i.style.display = "none");
|
|
6051
6051
|
}
|
|
6052
|
-
function
|
|
6052
|
+
function et(e) {
|
|
6053
6053
|
var n;
|
|
6054
|
-
e._pendingDeleteMethod = null,
|
|
6054
|
+
e._pendingDeleteMethod = null, Nt(e, !1);
|
|
6055
6055
|
const t = (n = e.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
6056
|
-
t == null || t.classList.remove("choco-widget-payment-sheet--delete-confirm"),
|
|
6056
|
+
t == null || t.classList.remove("choco-widget-payment-sheet--delete-confirm"), we(e);
|
|
6057
6057
|
}
|
|
6058
|
-
function
|
|
6058
|
+
function Nt(e, t) {
|
|
6059
6059
|
var i, c, u;
|
|
6060
6060
|
const n = (i = e.container) == null ? void 0 : i.querySelector(
|
|
6061
6061
|
".choco-widget-sheet-delete-confirm-actions"
|
|
@@ -6066,36 +6066,51 @@ function Lt(e, t) {
|
|
|
6066
6066
|
);
|
|
6067
6067
|
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));
|
|
6068
6068
|
}
|
|
6069
|
-
async function
|
|
6069
|
+
async function na(e, t) {
|
|
6070
6070
|
var r, o;
|
|
6071
6071
|
const n = t == null ? void 0 : t.cardId;
|
|
6072
6072
|
if (!(!n || (t == null ? void 0 : t.type) !== "card"))
|
|
6073
6073
|
try {
|
|
6074
|
-
await
|
|
6074
|
+
await Xr(e.apiUrl, e._getApiConfig(), n), e.checkoutContext = await Bt(
|
|
6075
6075
|
e.apiUrl,
|
|
6076
6076
|
e._getApiConfig()
|
|
6077
|
-
), ((r = e.selectedPaymentMethod) == null ? void 0 : r.type) === "card" && ((o = e.selectedPaymentMethod) == null ? void 0 : o.cardId) === n && (e.selectedPaymentMethod =
|
|
6077
|
+
), ((r = e.selectedPaymentMethod) == null ? void 0 : r.type) === "card" && ((o = e.selectedPaymentMethod) == null ? void 0 : o.cardId) === n && (e.selectedPaymentMethod = It(
|
|
6078
6078
|
e.checkoutContext.data,
|
|
6079
6079
|
e._getKaspiOptions()
|
|
6080
|
-
), e._emitPaymentMethodSelected(),
|
|
6080
|
+
), e._emitPaymentMethodSelected(), pr(e)), Pe(e), e.config.onSuccess({ message: e.t("cardDeleted") }), e.config.onCardDeleted && e.config.onCardDeleted({ cardId: n });
|
|
6081
6081
|
} catch (i) {
|
|
6082
6082
|
e.config.onError({
|
|
6083
6083
|
attributes: { message: (i == null ? void 0 : i.message) || e.t("paymentError") }
|
|
6084
6084
|
});
|
|
6085
6085
|
}
|
|
6086
6086
|
}
|
|
6087
|
-
function
|
|
6088
|
-
if (
|
|
6089
|
-
|
|
6090
|
-
|
|
6091
|
-
|
|
6092
|
-
|
|
6093
|
-
|
|
6094
|
-
|
|
6095
|
-
|
|
6087
|
+
function mr(e, t) {
|
|
6088
|
+
if (e._isInteractionBlocked()) return;
|
|
6089
|
+
if (e.selectedPaymentMethod = t, e._emitPaymentMethodSelected(), t.type === "new_card") {
|
|
6090
|
+
e._emitUserEvent("one_click_pay_method_resolved", { payment_method: t.type }), ce(e), e.handlePayment();
|
|
6091
|
+
return;
|
|
6092
|
+
}
|
|
6093
|
+
const n = e._getPaymentMethodForUserEvent();
|
|
6094
|
+
n != null && e._emitUserEvent("one_click_pay_method_resolved", { payment_method: n }), Pe(e), ce(e), pr(e);
|
|
6095
|
+
}
|
|
6096
|
+
const tt = "choco_pending_order_id", ra = 1800 * 1e3;
|
|
6097
|
+
function oa(e) {
|
|
6098
|
+
Ve(tt, JSON.stringify({ id: e, ts: Date.now() }));
|
|
6099
|
+
}
|
|
6100
|
+
function sa() {
|
|
6101
|
+
const e = Mt(tt);
|
|
6102
|
+
if (!e) return null;
|
|
6103
|
+
try {
|
|
6104
|
+
const { id: t, ts: n } = JSON.parse(e);
|
|
6105
|
+
return !t || typeof n != "number" ? null : Date.now() - n > ra ? (Ee(tt), null) : String(t);
|
|
6106
|
+
} catch {
|
|
6107
|
+
return null;
|
|
6096
6108
|
}
|
|
6097
6109
|
}
|
|
6098
|
-
function
|
|
6110
|
+
function Cr(e) {
|
|
6111
|
+
e._pendingOrderId = null, Ee(tt);
|
|
6112
|
+
}
|
|
6113
|
+
function Mn(e, t) {
|
|
6099
6114
|
var r;
|
|
6100
6115
|
const n = t.type || ((r = t.data) == null ? void 0 : r.type);
|
|
6101
6116
|
if (!n) {
|
|
@@ -6104,13 +6119,13 @@ function On(e, t) {
|
|
|
6104
6119
|
}
|
|
6105
6120
|
switch (n) {
|
|
6106
6121
|
case "order.paid":
|
|
6107
|
-
e._orderStatusResolved = !0, fe(e),
|
|
6122
|
+
e._orderStatusResolved = !0, fe(e), Er(e, t);
|
|
6108
6123
|
break;
|
|
6109
6124
|
case "order.failed":
|
|
6110
|
-
e._orderStatusResolved = !0, fe(e),
|
|
6125
|
+
e._orderStatusResolved = !0, fe(e), vr(e, t);
|
|
6111
6126
|
break;
|
|
6112
6127
|
case "order.action_required":
|
|
6113
|
-
|
|
6128
|
+
ia(e, t);
|
|
6114
6129
|
break;
|
|
6115
6130
|
default:
|
|
6116
6131
|
console.warn("Unknown event type:", n);
|
|
@@ -6119,8 +6134,8 @@ function On(e, t) {
|
|
|
6119
6134
|
function fe(e) {
|
|
6120
6135
|
e._orderStatusPollingId && (clearInterval(e._orderStatusPollingId), e._orderStatusPollingId = null);
|
|
6121
6136
|
}
|
|
6122
|
-
function
|
|
6123
|
-
fe(e), e._orderStatusResolved = !1;
|
|
6137
|
+
function ye(e, t) {
|
|
6138
|
+
fe(e), e._orderStatusResolved = !1, e._pendingOrderId = String(t), oa(String(t));
|
|
6124
6139
|
const n = 6e3, r = 5;
|
|
6125
6140
|
let o = 0;
|
|
6126
6141
|
const i = async () => {
|
|
@@ -6133,19 +6148,19 @@ function Be(e, t) {
|
|
|
6133
6148
|
}
|
|
6134
6149
|
o += 1;
|
|
6135
6150
|
try {
|
|
6136
|
-
const { data: c } = await
|
|
6151
|
+
const { data: c } = await jr(
|
|
6137
6152
|
e.apiUrl,
|
|
6138
6153
|
e._getApiConfig(),
|
|
6139
6154
|
String(t)
|
|
6140
6155
|
), u = c == null ? void 0 : c.status, l = (c == null ? void 0 : c.payload) || {};
|
|
6141
6156
|
if (u === "success") {
|
|
6142
|
-
e._orderStatusResolved = !0, fe(e),
|
|
6157
|
+
e._orderStatusResolved = !0, fe(e), Er(e, {
|
|
6143
6158
|
id: String(l.id || t),
|
|
6144
6159
|
attributes: { amount: l.amount, paid_at: l.paid_at || "" }
|
|
6145
6160
|
});
|
|
6146
6161
|
return;
|
|
6147
6162
|
}
|
|
6148
|
-
u === "fail" && (e._orderStatusResolved = !0, fe(e),
|
|
6163
|
+
u === "fail" && (e._orderStatusResolved = !0, fe(e), vr(e, {
|
|
6149
6164
|
id: String(l.id || t),
|
|
6150
6165
|
attributes: { message: l.message || e.t("paymentError") }
|
|
6151
6166
|
}));
|
|
@@ -6156,34 +6171,39 @@ function Be(e, t) {
|
|
|
6156
6171
|
};
|
|
6157
6172
|
e._orderStatusPollingId = setInterval(i, n), i();
|
|
6158
6173
|
}
|
|
6159
|
-
function
|
|
6174
|
+
function ht() {
|
|
6160
6175
|
return typeof document > "u" ? !1 : document.hidden || document.visibilityState === "hidden";
|
|
6161
6176
|
}
|
|
6162
|
-
function
|
|
6177
|
+
function br(e, t) {
|
|
6163
6178
|
K(e), e.config.onSuccess(t);
|
|
6164
6179
|
}
|
|
6165
|
-
function
|
|
6166
|
-
if (!e._pendingSuccessPayload ||
|
|
6180
|
+
function vt(e) {
|
|
6181
|
+
if (!e._pendingSuccessPayload || ht()) return;
|
|
6167
6182
|
const t = e._pendingSuccessPayload;
|
|
6168
|
-
e._pendingSuccessPayload = null,
|
|
6183
|
+
e._pendingSuccessPayload = null, br(e, t);
|
|
6169
6184
|
}
|
|
6170
|
-
function
|
|
6185
|
+
function He(e) {
|
|
6186
|
+
if (ht() || e._orderStatusResolved || e._orderStatusPollingId) return;
|
|
6187
|
+
const t = e._pendingOrderId || sa();
|
|
6188
|
+
t && (e._pendingOrderId = t, ye(e, t));
|
|
6189
|
+
}
|
|
6190
|
+
function Er(e, t) {
|
|
6171
6191
|
var o, i;
|
|
6172
|
-
e.isAddCardViewOpen &&
|
|
6192
|
+
Cr(e), e.isAddCardViewOpen && Se(e);
|
|
6173
6193
|
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 };
|
|
6174
|
-
if (
|
|
6194
|
+
if (ht()) {
|
|
6175
6195
|
e._pendingSuccessPayload = r;
|
|
6176
6196
|
return;
|
|
6177
6197
|
}
|
|
6178
|
-
|
|
6198
|
+
br(e, r);
|
|
6179
6199
|
}
|
|
6180
|
-
function
|
|
6200
|
+
function vr(e, t) {
|
|
6181
6201
|
var r, o;
|
|
6182
|
-
e.isAddCardViewOpen &&
|
|
6202
|
+
Cr(e), e.isAddCardViewOpen && Se(e), K(e);
|
|
6183
6203
|
const n = t.attributes || ((r = t.data) == null ? void 0 : r.attributes) || {};
|
|
6184
6204
|
e.config.onError({ id: t.id || ((o = t.data) == null ? void 0 : o.id), attributes: n });
|
|
6185
6205
|
}
|
|
6186
|
-
function
|
|
6206
|
+
function ia(e, t) {
|
|
6187
6207
|
var i, c, u;
|
|
6188
6208
|
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";
|
|
6189
6209
|
if (!r) {
|
|
@@ -6196,7 +6216,7 @@ function ea(e, t) {
|
|
|
6196
6216
|
}
|
|
6197
6217
|
if (((c = e.selectedPaymentMethod) == null ? void 0 : c.type) === "kaspi_pay") {
|
|
6198
6218
|
const l = t.id || ((u = t.data) == null ? void 0 : u.id);
|
|
6199
|
-
if (l && !e._orderStatusResolved && !e._orderStatusPollingId &&
|
|
6219
|
+
if (l && !e._orderStatusResolved && !e._orderStatusPollingId && ye(e, String(l)), typeof e.config.onKaspiLink == "function") {
|
|
6200
6220
|
e.config.onKaspiLink({
|
|
6201
6221
|
action_link: r,
|
|
6202
6222
|
action_url: r,
|
|
@@ -6208,7 +6228,7 @@ function ea(e, t) {
|
|
|
6208
6228
|
}
|
|
6209
6229
|
window.location.href = r;
|
|
6210
6230
|
}
|
|
6211
|
-
async function
|
|
6231
|
+
async function aa(e) {
|
|
6212
6232
|
var n, r, o, i, c;
|
|
6213
6233
|
if (!e.selectedPaymentMethod) {
|
|
6214
6234
|
e.config.onError({
|
|
@@ -6220,16 +6240,16 @@ async function ta(e) {
|
|
|
6220
6240
|
if (e._isBalanceFullyCoveringAmount()) {
|
|
6221
6241
|
ge(e);
|
|
6222
6242
|
try {
|
|
6223
|
-
const u = await
|
|
6243
|
+
const u = await an(
|
|
6224
6244
|
e.apiUrl,
|
|
6225
6245
|
e._getApiConfig(),
|
|
6226
6246
|
e.deviceId,
|
|
6227
6247
|
e.selectedPaymentMethod,
|
|
6228
6248
|
t
|
|
6229
6249
|
);
|
|
6230
|
-
await
|
|
6250
|
+
await xn(e);
|
|
6231
6251
|
const l = (u == null ? void 0 : u.id) ?? ((n = u == null ? void 0 : u.data) == null ? void 0 : n.id);
|
|
6232
|
-
return l &&
|
|
6252
|
+
return l && ye(e, String(l)), u;
|
|
6233
6253
|
} catch (u) {
|
|
6234
6254
|
throw K(e), se(u, { paymentMethod: "balance" }), e.config.onError({
|
|
6235
6255
|
attributes: { message: e._resolveErrorMessage(u) }
|
|
@@ -6237,29 +6257,29 @@ async function ta(e) {
|
|
|
6237
6257
|
}
|
|
6238
6258
|
}
|
|
6239
6259
|
if (e.selectedPaymentMethod.type === "new_card") {
|
|
6240
|
-
await
|
|
6260
|
+
await ca(e, t);
|
|
6241
6261
|
return;
|
|
6242
6262
|
}
|
|
6243
6263
|
if (e.selectedPaymentMethod.type === "apple_pay") {
|
|
6244
|
-
await
|
|
6264
|
+
await ua(e, t);
|
|
6245
6265
|
return;
|
|
6246
6266
|
}
|
|
6247
6267
|
if (e.selectedPaymentMethod.type === "google_pay") {
|
|
6248
|
-
await
|
|
6268
|
+
await la(e, t);
|
|
6249
6269
|
return;
|
|
6250
6270
|
}
|
|
6251
6271
|
ge(e);
|
|
6252
6272
|
try {
|
|
6253
|
-
const u = await
|
|
6273
|
+
const u = await an(
|
|
6254
6274
|
e.apiUrl,
|
|
6255
6275
|
e._getApiConfig(),
|
|
6256
6276
|
e.deviceId,
|
|
6257
6277
|
e.selectedPaymentMethod,
|
|
6258
6278
|
t
|
|
6259
6279
|
);
|
|
6260
|
-
await
|
|
6280
|
+
await xn(e);
|
|
6261
6281
|
const l = (u == null ? void 0 : u.id) ?? ((r = u == null ? void 0 : u.data) == null ? void 0 : r.id);
|
|
6262
|
-
if (l &&
|
|
6282
|
+
if (l && ye(e, String(l)), ((o = e.selectedPaymentMethod) == null ? void 0 : o.type) === "kaspi_pay") {
|
|
6263
6283
|
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";
|
|
6264
6284
|
if (y)
|
|
6265
6285
|
return typeof e.config.onKaspiLink == "function" ? (e.config.onKaspiLink({
|
|
@@ -6274,11 +6294,11 @@ async function ta(e) {
|
|
|
6274
6294
|
throw K(e), se(u, { paymentMethod: ((c = e.selectedPaymentMethod) == null ? void 0 : c.type) || "card" }), e.config.onError({ message: e._resolveErrorMessage(u) }), u;
|
|
6275
6295
|
}
|
|
6276
6296
|
}
|
|
6277
|
-
async function
|
|
6297
|
+
async function xn(e) {
|
|
6278
6298
|
var t, n;
|
|
6279
6299
|
if (!(((t = e.selectedPaymentMethod) == null ? void 0 : t.type) !== "card" || !((n = e.selectedPaymentMethod) != null && n.cardId)))
|
|
6280
6300
|
try {
|
|
6281
|
-
await
|
|
6301
|
+
await Hr(
|
|
6282
6302
|
e.apiUrl,
|
|
6283
6303
|
e._getApiConfig(),
|
|
6284
6304
|
e.selectedPaymentMethod.cardId
|
|
@@ -6287,10 +6307,10 @@ async function Nn(e) {
|
|
|
6287
6307
|
console.warn("Failed to mark selected card as default:", r);
|
|
6288
6308
|
}
|
|
6289
6309
|
}
|
|
6290
|
-
async function
|
|
6310
|
+
async function ca(e, t) {
|
|
6291
6311
|
ge(e), e.waitingForNewCardAction = !0, e._setNewCardActionTimeout();
|
|
6292
6312
|
try {
|
|
6293
|
-
await
|
|
6313
|
+
await Jr(
|
|
6294
6314
|
e.apiUrl,
|
|
6295
6315
|
e._getApiConfig(),
|
|
6296
6316
|
e.deviceId,
|
|
@@ -6302,14 +6322,14 @@ async function na(e, t) {
|
|
|
6302
6322
|
}), console.error("New card payment error:", n);
|
|
6303
6323
|
}
|
|
6304
6324
|
}
|
|
6305
|
-
let
|
|
6306
|
-
async function
|
|
6325
|
+
let _e = null;
|
|
6326
|
+
async function ua(e, t) {
|
|
6307
6327
|
const n = window.ApplePaySession;
|
|
6308
6328
|
if (!n || !n.canMakePayments()) {
|
|
6309
6329
|
e.config.onError({ attributes: { message: e.t("errorApplePayUnsupported") } });
|
|
6310
6330
|
return;
|
|
6311
6331
|
}
|
|
6312
|
-
if (
|
|
6332
|
+
if (_e) return;
|
|
6313
6333
|
ge(e);
|
|
6314
6334
|
const r = {
|
|
6315
6335
|
countryCode: e.config.currency === "GEL" ? "GE" : "KZ",
|
|
@@ -6322,19 +6342,19 @@ async function ra(e, t) {
|
|
|
6322
6342
|
type: "final"
|
|
6323
6343
|
}
|
|
6324
6344
|
}, o = new n(3, r);
|
|
6325
|
-
|
|
6345
|
+
_e = o, o.onvalidatemerchant = async (i) => {
|
|
6326
6346
|
var c, u;
|
|
6327
6347
|
try {
|
|
6328
6348
|
let l;
|
|
6329
6349
|
try {
|
|
6330
|
-
l = await
|
|
6350
|
+
l = await cn(
|
|
6331
6351
|
e.apiUrl,
|
|
6332
6352
|
e._getApiConfig(),
|
|
6333
6353
|
i.validationURL
|
|
6334
6354
|
);
|
|
6335
6355
|
} catch (m) {
|
|
6336
6356
|
if (m.status === 401)
|
|
6337
|
-
await e._obtainTokenByRefreshOrTrackId(), l = await
|
|
6357
|
+
await e._obtainTokenByRefreshOrTrackId(), l = await cn(
|
|
6338
6358
|
e.apiUrl,
|
|
6339
6359
|
e._getApiConfig(),
|
|
6340
6360
|
i.validationURL
|
|
@@ -6354,18 +6374,18 @@ async function ra(e, t) {
|
|
|
6354
6374
|
const h = await e.config.onBeforeCheckout();
|
|
6355
6375
|
h && typeof h == "object" && Object.assign(e.config, h);
|
|
6356
6376
|
}
|
|
6357
|
-
const u = await
|
|
6377
|
+
const u = await zr(
|
|
6358
6378
|
e.apiUrl,
|
|
6359
6379
|
e._getApiConfig(),
|
|
6360
6380
|
e.deviceId,
|
|
6361
6381
|
i.payment,
|
|
6362
6382
|
t
|
|
6363
6383
|
);
|
|
6364
|
-
o.completePayment(n.STATUS_SUCCESS),
|
|
6384
|
+
o.completePayment(n.STATUS_SUCCESS), _e = null;
|
|
6365
6385
|
const l = (u == null ? void 0 : u.id) ?? ((c = u == null ? void 0 : u.data) == null ? void 0 : c.id);
|
|
6366
|
-
l && !e._orderStatusResolved &&
|
|
6386
|
+
l && !e._orderStatusResolved && ye(e, String(l));
|
|
6367
6387
|
} catch (u) {
|
|
6368
|
-
console.error("Apple Pay payment error:", u), se(u, { paymentMethod: "apple_pay", phase: "payment_authorized" }), o.completePayment(n.STATUS_FAILURE),
|
|
6388
|
+
console.error("Apple Pay payment error:", u), se(u, { paymentMethod: "apple_pay", phase: "payment_authorized" }), o.completePayment(n.STATUS_FAILURE), _e = null, K(e), e.config.onError({
|
|
6369
6389
|
attributes: {
|
|
6370
6390
|
message: e._resolveErrorMessage(u, "errorApplePayPayment")
|
|
6371
6391
|
}
|
|
@@ -6373,7 +6393,7 @@ async function ra(e, t) {
|
|
|
6373
6393
|
}
|
|
6374
6394
|
}, o.oncancel = () => {
|
|
6375
6395
|
var i;
|
|
6376
|
-
if (
|
|
6396
|
+
if (_e = null, K(e), ((i = e.selectedPaymentMethod) == null ? void 0 : i.type) === "apple_pay") {
|
|
6377
6397
|
e.config.onError({
|
|
6378
6398
|
attributes: { message: e.t("errorApplePayInterrupted") }
|
|
6379
6399
|
});
|
|
@@ -6382,8 +6402,8 @@ async function ra(e, t) {
|
|
|
6382
6402
|
e.config.onCancel();
|
|
6383
6403
|
}, o.begin();
|
|
6384
6404
|
}
|
|
6385
|
-
async function
|
|
6386
|
-
var S, P, k,
|
|
6405
|
+
async function la(e, t) {
|
|
6406
|
+
var S, P, k, L, R, q;
|
|
6387
6407
|
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 || {};
|
|
6388
6408
|
if (!(r.payment_method_google_pay === "enabled" || r.payment_method_google_pay === !0)) {
|
|
6389
6409
|
e.config.onError({ attributes: { message: e.t("errorGooglePayUnsupported") } });
|
|
@@ -6404,7 +6424,7 @@ async function oa(e, t) {
|
|
|
6404
6424
|
return;
|
|
6405
6425
|
}
|
|
6406
6426
|
if (e.config.isNativeAndroid) {
|
|
6407
|
-
await
|
|
6427
|
+
await Aa(e, t, { gateway: c, gatewayMerchantId: u });
|
|
6408
6428
|
return;
|
|
6409
6429
|
}
|
|
6410
6430
|
const m = Number(e._getCheckoutAmount()).toFixed(2);
|
|
@@ -6458,16 +6478,16 @@ async function oa(e, t) {
|
|
|
6458
6478
|
return;
|
|
6459
6479
|
}
|
|
6460
6480
|
ge(e);
|
|
6461
|
-
const G = await Q.loadPaymentData(B), z = (
|
|
6481
|
+
const G = await Q.loadPaymentData(B), z = (R = (L = G == null ? void 0 : G.paymentMethodData) == null ? void 0 : L.tokenizationData) == null ? void 0 : R.token;
|
|
6462
6482
|
if (!z) throw new Error(e.t("errorGooglePayPayment"));
|
|
6463
|
-
const J = JSON.parse(z), M = await
|
|
6483
|
+
const J = JSON.parse(z), M = await jn(
|
|
6464
6484
|
e.apiUrl,
|
|
6465
6485
|
e._getApiConfig(),
|
|
6466
6486
|
e.deviceId,
|
|
6467
6487
|
J,
|
|
6468
6488
|
t
|
|
6469
6489
|
), v = (M == null ? void 0 : M.id) ?? ((q = M == null ? void 0 : M.data) == null ? void 0 : q.id);
|
|
6470
|
-
v &&
|
|
6490
|
+
v && ye(e, String(v));
|
|
6471
6491
|
} catch (D) {
|
|
6472
6492
|
K(e), D.statusCode === "CANCELED" ? e.config.onCancel() : (se(D, { paymentMethod: "google_pay" }), e.config.onError({
|
|
6473
6493
|
attributes: {
|
|
@@ -6476,7 +6496,7 @@ async function oa(e, t) {
|
|
|
6476
6496
|
}), console.error("Google Pay error:", D));
|
|
6477
6497
|
}
|
|
6478
6498
|
}
|
|
6479
|
-
async function
|
|
6499
|
+
async function Aa(e, t, n) {
|
|
6480
6500
|
var r;
|
|
6481
6501
|
if (!e.config.onPayWithGooglePay) {
|
|
6482
6502
|
e.config.onError({ attributes: { message: e.t("errorGooglePayUnsupported") } });
|
|
@@ -6488,14 +6508,14 @@ async function sa(e, t, n) {
|
|
|
6488
6508
|
amount: Number(e._getCheckoutAmount()),
|
|
6489
6509
|
gateway: n.gateway,
|
|
6490
6510
|
gatewayMerchantId: n.gatewayMerchantId
|
|
6491
|
-
}), i = JSON.parse(o), c = await
|
|
6511
|
+
}), i = JSON.parse(o), c = await jn(
|
|
6492
6512
|
e.apiUrl,
|
|
6493
6513
|
e._getApiConfig(),
|
|
6494
6514
|
e.deviceId,
|
|
6495
6515
|
i,
|
|
6496
6516
|
t
|
|
6497
6517
|
), u = (c == null ? void 0 : c.id) ?? ((r = c == null ? void 0 : c.data) == null ? void 0 : r.id);
|
|
6498
|
-
u &&
|
|
6518
|
+
u && ye(e, String(u));
|
|
6499
6519
|
} catch (o) {
|
|
6500
6520
|
K(e), o.statusCode === "CANCELED" ? e.config.onCancel() : (se(o, { paymentMethod: "google_pay_native" }), e.config.onError({
|
|
6501
6521
|
attributes: {
|
|
@@ -6504,52 +6524,52 @@ async function sa(e, t, n) {
|
|
|
6504
6524
|
}), console.error("Google Pay native error:", o));
|
|
6505
6525
|
}
|
|
6506
6526
|
}
|
|
6507
|
-
function
|
|
6527
|
+
function da(e) {
|
|
6508
6528
|
var c, u, l, h, y, m, b, I, B, Q, S, P;
|
|
6509
6529
|
const t = e.container;
|
|
6510
6530
|
(c = t.querySelector('[data-action="freedom-card"]')) == null || c.addEventListener("click", () => {
|
|
6511
6531
|
e.config.onFreedomLink && e.config.onFreedomLink();
|
|
6512
|
-
}), (u = t.querySelector('[data-action="pay"]')) == null || u.addEventListener("click", () => e.handlePayment()), (l = t.querySelector('[data-action="change-method"]')) == null || l.addEventListener("click", () =>
|
|
6513
|
-
e._pendingDeleteMethod ?
|
|
6532
|
+
}), (u = t.querySelector('[data-action="pay"]')) == null || u.addEventListener("click", () => e.handlePayment()), (l = t.querySelector('[data-action="change-method"]')) == null || l.addEventListener("click", () => yr(e)), t.querySelectorAll('[data-action="close"]').forEach((k) => k.addEventListener("click", () => e.close())), (h = t.querySelector('[data-action="close-sheet"]')) == null || h.addEventListener("click", () => {
|
|
6533
|
+
e._pendingDeleteMethod ? et(e) : ce(e);
|
|
6514
6534
|
}), (y = t.querySelector('[data-action="edit-sheet"]')) == null || y.addEventListener("click", () => {
|
|
6515
|
-
e.isPaymentSheetEditMode = !0,
|
|
6535
|
+
e.isPaymentSheetEditMode = !0, Pe(e), we(e);
|
|
6516
6536
|
}), (m = t.querySelector('[data-action="previous-sheet"]')) == null || m.addEventListener("click", () => {
|
|
6517
|
-
e.isPaymentSheetEditMode = !1,
|
|
6518
|
-
}), (b = t.querySelector('[data-action="close-add-card"]')) == null || b.addEventListener("click", () =>
|
|
6537
|
+
e.isPaymentSheetEditMode = !1, Pe(e), we(e);
|
|
6538
|
+
}), (b = t.querySelector('[data-action="close-add-card"]')) == null || b.addEventListener("click", () => Se(e)), (I = t.querySelector('[data-action="confirm-delete-cancel"]')) == null || I.addEventListener("click", () => et(e)), (B = t.querySelector('[data-action="confirm-delete-submit"]')) == null || B.addEventListener("click", () => {
|
|
6519
6539
|
if (e._pendingDeleteMethod) {
|
|
6520
6540
|
const k = e._pendingDeleteMethod;
|
|
6521
|
-
|
|
6541
|
+
Nt(e, !0), na(e, k).then(() => ce(e)).finally(() => Nt(e, !1));
|
|
6522
6542
|
}
|
|
6523
6543
|
}), t.querySelectorAll(".choco-widget-method-item").forEach((k) => {
|
|
6524
|
-
k.addEventListener("click", (
|
|
6525
|
-
const
|
|
6526
|
-
|
|
6544
|
+
k.addEventListener("click", (L) => {
|
|
6545
|
+
const R = JSON.parse(
|
|
6546
|
+
L.currentTarget.getAttribute("data-method") || "{}"
|
|
6527
6547
|
);
|
|
6528
|
-
|
|
6548
|
+
mr(e, R);
|
|
6529
6549
|
});
|
|
6530
6550
|
});
|
|
6531
6551
|
const n = t.querySelector('[data-sheet="payment"]');
|
|
6532
6552
|
n && (n.addEventListener("click", (k) => {
|
|
6533
6553
|
k.target === n && ce(e);
|
|
6534
|
-
}),
|
|
6554
|
+
}), ha(e, n));
|
|
6535
6555
|
const r = t.querySelector('[data-action="toggle-balance"]');
|
|
6536
6556
|
r && ((Q = r.querySelector("input[type='checkbox']")) == null || Q.addEventListener("change", (k) => {
|
|
6537
|
-
e.useBalance = k.target.checked,
|
|
6557
|
+
e.useBalance = k.target.checked, Dn(e), e._updatePayButtonAmount();
|
|
6538
6558
|
}));
|
|
6539
6559
|
const o = t.querySelector('[data-action="toggle-bonuses"]');
|
|
6540
6560
|
o && ((S = o.querySelector("input[type='checkbox']")) == null || S.addEventListener("change", (k) => {
|
|
6541
|
-
e.useBonuses = k.target.checked, e.config.onAppliedBonus(e.useBonuses),
|
|
6561
|
+
e.useBonuses = k.target.checked, e.config.onAppliedBonus(e.useBonuses), Dn(e), e._updatePayButtonAmount();
|
|
6542
6562
|
}));
|
|
6543
6563
|
const i = t.querySelector('[data-action="toggle-coupon"]');
|
|
6544
6564
|
i && ((P = i.querySelector("input[type='checkbox']")) == null || P.addEventListener("change", (k) => {
|
|
6545
6565
|
e.useCoupon = k.target.checked, e._updatePayButtonAmount(), e._emitCouponSuppressingCashback();
|
|
6546
|
-
})), document.removeEventListener("keydown", e._boundKeyDown), document.addEventListener("keydown", e._boundKeyDown),
|
|
6566
|
+
})), document.removeEventListener("keydown", e._boundKeyDown), document.addEventListener("keydown", e._boundKeyDown), gr(e);
|
|
6547
6567
|
}
|
|
6548
|
-
function
|
|
6568
|
+
function fa(e, t) {
|
|
6549
6569
|
var n, r;
|
|
6550
|
-
e.isOpen && (t.key === "Escape" && (t.preventDefault(), e._pendingDeleteMethod ?
|
|
6570
|
+
e.isOpen && (t.key === "Escape" && (t.preventDefault(), e._pendingDeleteMethod ? et(e) : e.isAddCardViewOpen ? Se(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()));
|
|
6551
6571
|
}
|
|
6552
|
-
function
|
|
6572
|
+
function ha(e, t) {
|
|
6553
6573
|
const n = t.querySelector('[data-action="sheet-drag-handle"]'), r = t.querySelector(".choco-widget-sheet-content");
|
|
6554
6574
|
if (!n || !r) return;
|
|
6555
6575
|
const o = 80;
|
|
@@ -6574,23 +6594,23 @@ function ca(e, t) {
|
|
|
6574
6594
|
!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));
|
|
6575
6595
|
});
|
|
6576
6596
|
}
|
|
6577
|
-
class
|
|
6597
|
+
class be {
|
|
6578
6598
|
// ─── Статические методы / logout ─────────────────────────────────────────────
|
|
6579
6599
|
static _getAuthStorageValue(t) {
|
|
6580
|
-
return
|
|
6600
|
+
return Mt(t);
|
|
6581
6601
|
}
|
|
6582
6602
|
static _setAuthStorageValue(t, n) {
|
|
6583
|
-
|
|
6603
|
+
Ve(t, n);
|
|
6584
6604
|
}
|
|
6585
6605
|
static _removeAuthStorageValue(t) {
|
|
6586
|
-
|
|
6606
|
+
Ee(t);
|
|
6587
6607
|
}
|
|
6588
6608
|
static async logout() {
|
|
6589
|
-
|
|
6609
|
+
Nn();
|
|
6590
6610
|
}
|
|
6591
6611
|
// ─── Конструктор ──────────────────────────────────────────────────────────────
|
|
6592
6612
|
constructor(t) {
|
|
6593
|
-
this.config =
|
|
6613
|
+
this.config = Kr(t), this.accessToken = null, this.deviceId = Un(), this.apiUrl = _r(this.config.environment), this.translations = Br, 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._pendingOrderId = null, this._pendingDeleteMethod = null, this._pendingSuccessPayload = null, this._lifecycleListenersAttached = !1, this._destroyed = !1, this._boundAddCardMessage = null, this._boundKeyDown = (n) => fa(this, n), this._boundVisibilityChange = () => this._onVisibilityChange(), this._boundWindowFocus = () => this._onWindowFocus(), this._boundPageShow = () => this._onPageShow(), ki({
|
|
6594
6614
|
clientId: String(this.config.clientId),
|
|
6595
6615
|
terminalId: String(this.config.terminalId),
|
|
6596
6616
|
environment: this.config.environment
|
|
@@ -6690,16 +6710,16 @@ class Ce {
|
|
|
6690
6710
|
}
|
|
6691
6711
|
// ─── Делегаторы в модули (вызываются из domUI/events через widget.method()) ──
|
|
6692
6712
|
_attachEventListeners() {
|
|
6693
|
-
|
|
6713
|
+
da(this);
|
|
6694
6714
|
}
|
|
6695
6715
|
_updatePayButtonAmount() {
|
|
6696
|
-
|
|
6716
|
+
Ke(this);
|
|
6697
6717
|
}
|
|
6698
6718
|
_showAddCardView() {
|
|
6699
|
-
|
|
6719
|
+
Et(this);
|
|
6700
6720
|
}
|
|
6701
6721
|
_closeAddCardView() {
|
|
6702
|
-
|
|
6722
|
+
Se(this);
|
|
6703
6723
|
}
|
|
6704
6724
|
// ─── Таймауты новой карты ─────────────────────────────────────────────────────
|
|
6705
6725
|
_setNewCardActionTimeout() {
|
|
@@ -6714,19 +6734,19 @@ class Ce {
|
|
|
6714
6734
|
}
|
|
6715
6735
|
// ─── Хранение токенов ────────────────────────────────────────────────────────
|
|
6716
6736
|
_saveTokensToStorage(t, n) {
|
|
6717
|
-
|
|
6737
|
+
ze(t, n);
|
|
6718
6738
|
}
|
|
6719
6739
|
_clearAuthStorage() {
|
|
6720
|
-
|
|
6740
|
+
Nn();
|
|
6721
6741
|
}
|
|
6722
6742
|
_getAuthStorageValue(t) {
|
|
6723
|
-
return
|
|
6743
|
+
return be._getAuthStorageValue(t);
|
|
6724
6744
|
}
|
|
6725
6745
|
_setAuthStorageValue(t, n) {
|
|
6726
|
-
|
|
6746
|
+
be._setAuthStorageValue(t, n);
|
|
6727
6747
|
}
|
|
6728
6748
|
_removeAuthStorageValue(t) {
|
|
6729
|
-
|
|
6749
|
+
be._removeAuthStorageValue(t);
|
|
6730
6750
|
}
|
|
6731
6751
|
// ─── Google Pay SDK (используется из domUI + paymentFlow) ────────────────────
|
|
6732
6752
|
_loadGooglePaySdk() {
|
|
@@ -6758,27 +6778,27 @@ class Ce {
|
|
|
6758
6778
|
this._lifecycleListenersAttached && (document.removeEventListener("visibilitychange", this._boundVisibilityChange), window.removeEventListener("focus", this._boundWindowFocus), window.removeEventListener("pageshow", this._boundPageShow), this._lifecycleListenersAttached = !1);
|
|
6759
6779
|
}
|
|
6760
6780
|
_onVisibilityChange() {
|
|
6761
|
-
|
|
6781
|
+
ht() || (vt(this), He(this));
|
|
6762
6782
|
}
|
|
6763
6783
|
_onWindowFocus() {
|
|
6764
|
-
|
|
6784
|
+
vt(this), He(this);
|
|
6765
6785
|
}
|
|
6766
6786
|
_onPageShow() {
|
|
6767
|
-
|
|
6787
|
+
vt(this), He(this);
|
|
6768
6788
|
}
|
|
6769
6789
|
// ─── Авторизация (приватная) ──────────────────────────────────────────────────
|
|
6770
6790
|
async _obtainTokenByRefreshOrTrackId() {
|
|
6771
|
-
await
|
|
6791
|
+
await Pi(this);
|
|
6772
6792
|
}
|
|
6773
6793
|
async _fetchCheckoutContextWithRetry() {
|
|
6774
6794
|
try {
|
|
6775
|
-
this.checkoutContext = await
|
|
6795
|
+
this.checkoutContext = await Bt(
|
|
6776
6796
|
this.apiUrl,
|
|
6777
6797
|
this._getApiConfig()
|
|
6778
6798
|
);
|
|
6779
6799
|
} catch (t) {
|
|
6780
6800
|
if (t.status === 401)
|
|
6781
|
-
this._removeAuthStorageValue("webPayToken"), await this._obtainTokenByRefreshOrTrackId(), this.checkoutContext = await
|
|
6801
|
+
this._removeAuthStorageValue("webPayToken"), await this._obtainTokenByRefreshOrTrackId(), this.checkoutContext = await Bt(
|
|
6782
6802
|
this.apiUrl,
|
|
6783
6803
|
this._getApiConfig()
|
|
6784
6804
|
);
|
|
@@ -6788,7 +6808,7 @@ class Ce {
|
|
|
6788
6808
|
}
|
|
6789
6809
|
async _fetchCoupons() {
|
|
6790
6810
|
try {
|
|
6791
|
-
const t = await
|
|
6811
|
+
const t = await qr(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);
|
|
6792
6812
|
this.selectedCoupon = r.length > 0 ? r[0] : null, this.useCoupon = !1;
|
|
6793
6813
|
} catch {
|
|
6794
6814
|
this.selectedCoupon = null, this.useCoupon = !1;
|
|
@@ -6802,10 +6822,10 @@ class Ce {
|
|
|
6802
6822
|
}
|
|
6803
6823
|
// ─── Рендер ───────────────────────────────────────────────────────────────────
|
|
6804
6824
|
_prerender() {
|
|
6805
|
-
|
|
6825
|
+
Wi(this);
|
|
6806
6826
|
}
|
|
6807
6827
|
_render() {
|
|
6808
|
-
|
|
6828
|
+
Yi(this);
|
|
6809
6829
|
}
|
|
6810
6830
|
// ─── Публичный API ────────────────────────────────────────────────────────────
|
|
6811
6831
|
async init() {
|
|
@@ -6824,11 +6844,11 @@ class Ce {
|
|
|
6824
6844
|
return this.config.onError({ attributes: { message: i.message } }), !1;
|
|
6825
6845
|
}
|
|
6826
6846
|
if (this._destroyed || (await this._fetchCoupons(), this._emitCouponSuppressingCashback(), this._destroyed)) return !1;
|
|
6827
|
-
const r =
|
|
6847
|
+
const r = rn(
|
|
6828
6848
|
(n = (t = this.checkoutContext) == null ? void 0 : t.data) == null ? void 0 : n.socket_connections,
|
|
6829
|
-
(o) =>
|
|
6849
|
+
(o) => Mn(this, o)
|
|
6830
6850
|
);
|
|
6831
|
-
return r && (this.centrifuge = r.centrifuge), this.selectedPaymentMethod =
|
|
6851
|
+
return r && (this.centrifuge = r.centrifuge), He(this), this.selectedPaymentMethod = It(
|
|
6832
6852
|
this.checkoutContext.data,
|
|
6833
6853
|
this._getKaspiOptions()
|
|
6834
6854
|
), this._emitPaymentMethodSelected(), this._render(), !0;
|
|
@@ -6842,21 +6862,21 @@ class Ce {
|
|
|
6842
6862
|
destroy() {
|
|
6843
6863
|
this._destroyed = !0;
|
|
6844
6864
|
const t = document.getElementById("choco-one-click-widget");
|
|
6845
|
-
t && (t.style.display = "none"), this._clearNewCardActionTimeout(), fe(this), this._pendingSuccessPayload = null, this._detachLifecycleListeners(), this.isAddCardViewOpen &&
|
|
6865
|
+
t && (t.style.display = "none"), this._clearNewCardActionTimeout(), fe(this), this._pendingSuccessPayload = null, this._detachLifecycleListeners(), this.isAddCardViewOpen && Se(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(() => {
|
|
6846
6866
|
var n;
|
|
6847
6867
|
(n = this.container) == null || n.remove(), this.container = null;
|
|
6848
6868
|
}, 300)), this.isOpen = !1, this.isPaymentSheetOpen = !1, this.isAddCardViewOpen = !1, this.selectedPaymentMethod = null;
|
|
6849
6869
|
}
|
|
6850
6870
|
getAvailablePaymentMethods() {
|
|
6851
6871
|
var t;
|
|
6852
|
-
return (t = this.checkoutContext) != null && t.data ?
|
|
6872
|
+
return (t = this.checkoutContext) != null && t.data ? xr(
|
|
6853
6873
|
this.checkoutContext.data,
|
|
6854
6874
|
(n) => this.t(n),
|
|
6855
6875
|
this._getKaspiOptions()
|
|
6856
6876
|
) : [];
|
|
6857
6877
|
}
|
|
6858
6878
|
async createOrder() {
|
|
6859
|
-
return
|
|
6879
|
+
return aa(this);
|
|
6860
6880
|
}
|
|
6861
6881
|
async pay() {
|
|
6862
6882
|
try {
|
|
@@ -6880,7 +6900,7 @@ class Ce {
|
|
|
6880
6900
|
}
|
|
6881
6901
|
}
|
|
6882
6902
|
openPaymentSheet() {
|
|
6883
|
-
|
|
6903
|
+
yr(this);
|
|
6884
6904
|
}
|
|
6885
6905
|
closePaymentSheet() {
|
|
6886
6906
|
ce(this);
|
|
@@ -6895,15 +6915,15 @@ class Ce {
|
|
|
6895
6915
|
const i = (n = this.container) == null ? void 0 : n.querySelector('[data-sheet="payment"]');
|
|
6896
6916
|
i && (i.classList.add("choco-widget-payment-sheet--open"), this.isPaymentSheetOpen = !0);
|
|
6897
6917
|
}
|
|
6898
|
-
o &&
|
|
6918
|
+
o && Et(this);
|
|
6899
6919
|
return;
|
|
6900
6920
|
}
|
|
6901
|
-
|
|
6921
|
+
Ke(this);
|
|
6902
6922
|
}
|
|
6903
6923
|
async updateAvailableBonus(t) {
|
|
6904
6924
|
if (typeof t != "number" || !Number.isFinite(t) || t < 0)
|
|
6905
6925
|
throw new Error("availableBonus must be a non-negative number");
|
|
6906
|
-
this.config.bonuses && (this.config.bonuses.availableBonus = t),
|
|
6926
|
+
this.config.bonuses && (this.config.bonuses.availableBonus = t), Ke(this);
|
|
6907
6927
|
}
|
|
6908
6928
|
async updateLocale(t) {
|
|
6909
6929
|
if (typeof t != "string" || !this.translations[t])
|
|
@@ -6914,7 +6934,7 @@ class Ce {
|
|
|
6914
6934
|
const o = this.container.querySelector('[data-sheet="payment"]');
|
|
6915
6935
|
o && (o.classList.add("choco-widget-payment-sheet--open"), this.isPaymentSheetOpen = !0);
|
|
6916
6936
|
}
|
|
6917
|
-
r &&
|
|
6937
|
+
r && Et(this);
|
|
6918
6938
|
}
|
|
6919
6939
|
async setLoading(t) {
|
|
6920
6940
|
this.loading = !!t, ae(this);
|
|
@@ -6932,7 +6952,7 @@ class Ce {
|
|
|
6932
6952
|
this.config.idempotencyKey = t;
|
|
6933
6953
|
}
|
|
6934
6954
|
async logout() {
|
|
6935
|
-
await
|
|
6955
|
+
await be.logout(), this.accessToken = null;
|
|
6936
6956
|
}
|
|
6937
6957
|
async updateTrackId(t) {
|
|
6938
6958
|
var n, r;
|
|
@@ -6947,11 +6967,11 @@ class Ce {
|
|
|
6947
6967
|
return this.config.onError({ attributes: { message: c.message } }), !1;
|
|
6948
6968
|
}
|
|
6949
6969
|
await this._fetchCoupons(), this._emitCouponSuppressingCashback(), this.centrifuge && (this.centrifuge.disconnect(), this.centrifuge = null);
|
|
6950
|
-
const o =
|
|
6970
|
+
const o = rn(
|
|
6951
6971
|
(r = (n = this.checkoutContext) == null ? void 0 : n.data) == null ? void 0 : r.socket_connections,
|
|
6952
|
-
(i) =>
|
|
6972
|
+
(i) => Mn(this, i)
|
|
6953
6973
|
);
|
|
6954
|
-
return o && (this.centrifuge = o.centrifuge), this.selectedPaymentMethod =
|
|
6974
|
+
return o && (this.centrifuge = o.centrifuge), this.selectedPaymentMethod = It(
|
|
6955
6975
|
this.checkoutContext.data,
|
|
6956
6976
|
this._getKaspiOptions()
|
|
6957
6977
|
), this._emitPaymentMethodSelected(), this.paymentMethodDisabled = !1, this._render(), !0;
|
|
@@ -6991,7 +7011,7 @@ class Ce {
|
|
|
6991
7011
|
this.config.onCouponSuppressingCashback = t;
|
|
6992
7012
|
}
|
|
6993
7013
|
}
|
|
6994
|
-
typeof window < "u" && (window.ChocoOneClickWidget =
|
|
7014
|
+
typeof window < "u" && (window.ChocoOneClickWidget = be);
|
|
6995
7015
|
export {
|
|
6996
|
-
|
|
7016
|
+
be as default
|
|
6997
7017
|
};
|