keyring-chatbot-agent-sdk-test 0.1.6 → 0.1.7
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/chat-widget.es.js +846 -832
- package/dist/chat-widget.umd.js +44 -44
- package/package.json +1 -1
package/dist/chat-widget.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".chat-button{cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:all .3s ease;border-radius:16px}.chat-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #0003}.chat-button:active{transform:scale(.95)}.chat-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:transparent;display:flex;align-items:flex-end;justify-content:flex-end;z-index:9999;pointer-events:all;animation:fadeIn .2s ease}#chat-modal-title{color:#0b3988;font-weight:900;font-style:Regular;font-size:18px}.chat-modal-overlay.chat-modal-overlay--left{justify-content:flex-start}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat-modal{width:90%;max-width:480px;height:700px;max-height:calc(100dvh - 64px);background:#f5f5f7;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d;margin:20px;pointer-events:all;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.chat-modal-header{background:#fff;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e5e7}.chat-modal-header-left{display:flex;align-items:center;gap:12px}.keyring-logo{width:32px;height:32px}.chat-modal-header h3{margin:0;font-size:18px;font-weight:700;color:#1a1a1d}.close-button{background:transparent;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#666;transition:all .2s}.close-button:hover{background:#f5f5f7;color:#000}.chat-user-info{background:#fff;padding:12px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #e5e5e7}.user-avatar{width:20px;height:20px;border-radius:50%}.user-avatar img{border-radius:50%}.user-wallet,.user-wallet a{font-size:14px;font-weight:500;color:#0b3988}.copy-address-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:3px;color:#999;border-radius:4px;transition:color .15s,background .15s;line-height:0}@media(min-width:640px){.copy-address-btn:hover{color:#1a1a1d;background:#f0f0f0}}.chat-modal-messages-wrapper{position:relative;flex:1;overflow:hidden;display:flex;flex-direction:column}.chat-modal-messages{flex:1;padding:20px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px}.date-separator{text-align:center;font-size:12px;font-weight:600;color:#666;background:#e5e5e7;padding:6px 16px;border-radius:12px;align-self:center;width:fit-content;margin:8px auto}.message{display:flex;animation:messageSlide .3s ease;position:relative}@media(min-width:640px){.message:hover .message-reply-button{opacity:1}}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-reply-button{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:1px solid #e5e5e7;border-radius:8px;padding:6px;cursor:pointer;opacity:0;transition:all .2s;box-shadow:0 2px 8px #0000001a;z-index:10}.message-bot .message-reply-button{right:20px}.message-user .message-reply-button{left:20px}.message-reply-button:hover{background:#f5f5f7;transform:translateY(-50%) scale(1.1)}.message-reply-button svg{display:block;width:16px;height:16px;color:#666}.message-bot{justify-content:flex-start}.message-user{justify-content:flex-end}.message-bubble{max-width:85%;padding:10px 16px;border-radius:20px}.message-bot .message-bubble{background:#fff;box-shadow:0 2px 8px #0000000f;border-bottom-left-radius:4px}.message-user .message-bubble{background:#5b7fff;color:#fff;border-bottom-right-radius:4px}.message-user .message-bubble a{color:#fff}.message-reply-to{background:#0000000d;padding:8px 12px;border-radius:6px;margin-bottom:8px;border-left:3px solid #5b7fff}.message-bot .message-reply-to{background:#f5f5f7}.message-user .message-reply-to{background:#ffffff26;border-left-color:#ffffff80}.message-reply-to-label{font-size:11px;font-weight:600;margin-bottom:4px}.message-bot .message-reply-to-label{color:#5b7fff}.message-user .message-reply-to-label{color:#ffffffe6}.message-reply-to-text{font-size:12px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-text{font-size:14px;line-height:1.5;word-wrap:break-word;white-space:pre-line}.message-bot .message-text{color:#1a1a1d}.message-user .message-text{color:#fff}.message-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;margin-bottom:8px}.message-button{flex:1 1 calc(50% - 4px);min-width:100px;padding:10px 16px;background:#fffffff2;border:1px solid #e0e0e0;border-radius:12px;font-size:13px;font-weight:500;color:#1a1a1d;cursor:pointer;transition:all .2s ease;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-button.full-width{flex:1 1 100%;text-align:center;white-space:normal;padding:12px 16px;font-size:14px}@media(min-width:640px){.message-button:hover{background:#fff;border-color:#007aff;color:#007aff;transform:translateY(-1px);box-shadow:0 2px 8px #007aff26}.message-button:active{transform:translateY(0);box-shadow:0 1px 4px #007aff1a}}.message-user .message-button{background:#fff3;border-color:#ffffff4d;color:#fff}.message-user .message-button:hover{background:#ffffff4d;border-color:#ffffff80}.message-timestamp{line-height:1;font-size:11px;color:#999;display:flex;align-items:center;gap:4px;justify-content:flex-end}.message-user .message-timestamp{color:#ffffffb3}.check-icon{width:14px;height:14px}.typing-indicator .message-bubble{padding:12px 18px;display:flex;gap:6px;min-width:60px}.typing-dot{width:8px;height:8px;border-radius:50%;background:#999;animation:typingDot 1.4s infinite ease-in-out}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.suggestions-container{display:flex;flex-direction:column;gap:10px;margin-top:8px}.suggestion-button{background:#d4d8f0;border:none;padding:12px 16px;border-radius:16px;display:flex;gap:12px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500;color:#1a1a1d;width:100%;text-align:center;align-items:center;justify-content:center}.suggestion-button:hover{background:#c5caeb;transform:translateY(-1px)}.suggestion-icon{font-size:18px}.chat-modal-input{padding:16px 20px;background:#fff;border-top:1px solid #e5e5e7;display:flex;flex-direction:column;gap:12px;box-shadow:0 -5px 8px 4px #0000000d}.reply-preview{background:#f5f5f7;padding:10px 14px;border-radius:6px;border-left:3px solid #5b7fff;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.reply-preview-content{flex:1;min-width:0}.reply-preview-label{font-size:11px;color:#5b7fff;font-weight:600;margin-bottom:4px}.reply-preview-text{font-size:13px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-preview-close{background:transparent;border:none;cursor:pointer;padding:2px;color:#999;transition:color .2s;flex-shrink:0}.reply-preview-close:hover{color:#666}.chat-modal-input-row{display:flex;gap:12px;align-items:center}.chat-modal-input input{flex:1;padding:14px 18px;border:1px solid #e5e5e7;border-radius:24px;outline:none;font-size:16px;color:#1a1a1d;transition:all .2s}.chat-modal-input input::placeholder{color:#999}.chat-modal-input input:focus{border-color:#5b7fff;box-shadow:0 0 0 3px #5b7fff1a}.chat-modal-input input:disabled{opacity:.6;cursor:not-allowed;background:#f5f5f7}.send-button{width:44px;height:44px;border-radius:50%;background:#5b7fff;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.send-button:hover:not(:disabled){background:#4a6fee;transform:scale(1.05)}.send-button:disabled{opacity:.4;cursor:not-allowed}.chat-modal-messages::-webkit-scrollbar{width:6px}.chat-modal-messages::-webkit-scrollbar-thumb{background:#d1d1d6;border-radius:3px}@media(max-width:640px){.chat-modal{width:100%;height:100dvh;max-height:100dvh;border-radius:0;margin:0}}.action-status{margin-top:8px;padding:6px 10px;border-radius:6px;font-size:.8em;font-weight:500}.action-status-submitted{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.action-status-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.action-status-fail{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.message-content{display:block;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;overflow:hidden;font-size:inherit;line-height:1.5}.mc-line{min-height:1.2em;word-break:break-word}.mc-empty-line{height:.5em}.mc-heading{font-weight:600;margin:.3em 0;word-break:break-word}.mc-h1{font-size:1.4em}.mc-h2{font-size:1.2em}.mc-h3{font-size:1.05em}.mc-inline-code{background:#afb8c133;padding:1px 5px;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.88em}.mc-codeblock{background:#f6f8fa;border:1px solid #d0d7de;border-radius:6px;margin:6px 0;overflow:hidden;max-width:100%}.mc-codeblock-lang{background:#e8ecf0;padding:3px 10px;font-size:.75em;font-weight:600;color:#57606a;text-transform:uppercase;font-family:Monaco,Menlo,monospace;border-bottom:1px solid #d0d7de}.mc-codeblock pre{margin:0;padding:10px;overflow-x:auto}.mc-codeblock code{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.85em;line-height:1.5;color:#24292f;white-space:pre}.mc-link{color:#0969da;text-decoration:none;word-break:break-word}.mc-link:hover{text-decoration:underline}.mc-image{max-width:150px;width:150px;height:150px;object-fit:contain;border-radius:8px;margin:8px 0;display:block}.mc-image-inline{width:20px;height:20px;border-radius:50%;margin:0 4px;display:inline-block;vertical-align:middle;object-fit:cover}.mc-blockquote{margin:4px 0;padding:2px 0 2px 12px;color:#57606a;border-left:3px solid #d0d7de}.mc-hr{height:1px;border:0;background:#d0d7de;margin:.4em 0}.message-content strong{font-weight:600}.message-content del{text-decoration:line-through}.action-form{background:#f8f9fb;border:1px solid #e2e6ea;border-radius:10px;padding:12px;margin-top:8px;margin-bottom:8px}.action-form-title{font-weight:600;font-size:.9em;margin-bottom:10px;color:#1a1a2e;display:flex;align-items:center;gap:6px}.action-form-general-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;margin-bottom:10px;font-size:.8em;color:#dc2626;font-weight:500;display:flex;align-items:center;gap:6px}.action-form-fields{display:flex;flex-direction:column;gap:8px}.action-form-field{display:flex;flex-direction:column;gap:3px}.action-form-field label{font-size:.75em;font-weight:500;color:#6b7280}.action-form-field input,.action-form-field textarea{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:16px;background:#fff;color:#1a1a2e;outline:none;transition:border-color .2s;font-family:inherit}.action-form-field textarea{resize:none;word-break:break-all}.action-form-field input:focus,.action-form-field textarea:focus{border-color:#0b3988;box-shadow:0 0 0 2px #6c5ce726}.action-form-field input.error,.action-form-field textarea.error{border-color:#ef4444}.action-form-field input.readonly,.action-form-field textarea.readonly{background:#f3f4f6;color:#6b7280;cursor:not-allowed;border-color:#e5e7eb}.action-form-field .field-error{font-size:.7em;color:#ef4444;margin-top:1px}.action-form-actions{display:flex;gap:8px;margin-top:10px}.action-form-submit{flex:1;padding:8px 14px;background:#0b3988;color:#fff;border:none;border-radius:6px;font-size:.85em;font-weight:500;cursor:pointer;transition:background .2s}.action-form-submit:hover:not(:disabled){background:#5a4bd1}.action-form-submit:disabled{background:#a5b4fc;cursor:not-allowed}.action-form-cancel{padding:8px 14px;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;font-size:.85em;font-weight:500;cursor:pointer;transition:all .2s}.action-form-cancel:hover{background:#f3f4f6;color:#374151}.action-form-token-info{background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;padding:8px 10px;margin-bottom:10px}.token-info-row{display:flex;align-items:center;gap:8px}.token-info-logo{border-radius:50%;flex-shrink:0}.token-info-details{display:flex;flex-direction:column;gap:2px;min-width:0}.token-info-name{font-size:.8em;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.token-info-balance{font-size:.75em;color:#4b5563}.token-info-usd{color:#0b3988;font-weight:500}.action-form-field-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.action-form-field-header .action-form-field-label{margin-bottom:0;font-size:12px}.action-form-pct-btns{display:inline-flex;gap:4px}.action-form-pct-btn{padding:1px 6px;font-size:.7em;font-weight:600;color:#0b3988;background:#eef2ff;border:1px solid #c7d2fe;border-radius:4px;cursor:pointer;transition:all .15s}@media(min-width:640px){.action-form-pct-btn:hover:not(:disabled){background:#0b3988;color:#fff}}.action-form-pct-btn:disabled{opacity:.5;cursor:not-allowed}.action-form-max-btn{font-weight:700}.action-form-nft-info{margin-bottom:10px;text-align:center;display:flex;align-items:center;justify-content:center}.nft-info-image{width:80px;height:80px;border-radius:8px;object-fit:contain;background:#e5e7eb;padding:4px}.scroll-to-bottom-btn{position:absolute;bottom:16px;right:20px;background:#1a1a1dd6;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:36px;height:36px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000040;z-index:20;transition:background .15s,transform .15s,box-shadow .15s;animation:fadeInUp .18s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:640px){.scroll-to-bottom-btn:hover{background:#2d2d35;box-shadow:0 6px 16px #0000004d;transform:scale(1.08)}}.scroll-to-bottom-btn:active{transform:scale(.96)}")),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".chat-button{cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:all .3s ease;border-radius:16px}.chat-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #0003}.chat-button:active{transform:scale(.95)}.chat-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:transparent;display:flex;align-items:flex-end;justify-content:flex-end;z-index:9999;pointer-events:all;animation:fadeIn .2s ease}#chat-modal-title{color:#0b3988;font-weight:900;font-style:Regular;font-size:18px}.chat-modal-overlay.chat-modal-overlay--left{justify-content:flex-start}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat-modal{width:90%;max-width:480px;height:700px;max-height:calc(100dvh - 64px);background:#f5f5f7;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d;margin:20px;pointer-events:all;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.chat-modal-header{background:#fff;padding:8px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e5e7}.chat-modal-header-left{display:flex;align-items:center;gap:12px}.keyring-logo{width:32px;height:32px}.chat-modal-header h3{margin:0;font-size:18px;font-weight:700;color:#1a1a1d}.close-button{background:transparent;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#666;transition:all .2s}.close-button:hover{background:#f5f5f7;color:#000}.chat-user-info{background:#fff;padding:12px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #e5e5e7}.user-avatar{width:20px;height:20px;border-radius:50%}.user-avatar img{border-radius:50%}.user-wallet,.user-wallet a{font-size:14px;font-weight:500;color:#0b3988}.copy-address-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:3px;color:#999;border-radius:4px;transition:color .15s,background .15s;line-height:0}@media(min-width:640px){.copy-address-btn:hover{color:#1a1a1d;background:#f0f0f0}}.chat-modal-messages-wrapper{position:relative;flex:1;overflow:hidden;display:flex;flex-direction:column}.chat-modal-messages{flex:1;padding:16px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px}.date-separator{text-align:center;font-size:12px;font-weight:600;color:#666;background:#e5e5e7;padding:6px 16px;border-radius:12px;align-self:center;width:fit-content;margin:8px auto}.message{display:flex;animation:messageSlide .3s ease;position:relative}@media(min-width:640px){.message:hover .message-reply-button{opacity:1}}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-reply-button{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:1px solid #e5e5e7;border-radius:8px;padding:6px;cursor:pointer;opacity:0;transition:all .2s;box-shadow:0 2px 8px #0000001a;z-index:10}.message-bot .message-reply-button{right:20px}.message-user .message-reply-button{left:20px}.message-reply-button:hover{background:#f5f5f7;transform:translateY(-50%) scale(1.1)}.message-reply-button svg{display:block;width:16px;height:16px;color:#666}.message-bot{justify-content:flex-start}.message-user{justify-content:flex-end}.message-bubble{max-width:85%;padding:8px 16px;border-radius:20px}.message-bot .message-bubble{background:#fff;box-shadow:0 2px 8px #0000000f;border-bottom-left-radius:4px}.message-user .message-bubble{background:#5b7fff;color:#fff;border-bottom-right-radius:4px}.message-user .message-bubble a{color:#fff}.message-reply-to{background:#0000000d;padding:8px 12px;border-radius:6px;margin-bottom:8px;border-left:3px solid #5b7fff}.message-bot .message-reply-to{background:#f5f5f7}.message-user .message-reply-to{background:#ffffff26;border-left-color:#ffffff80}.message-reply-to-label{font-size:11px;font-weight:600;margin-bottom:4px}.message-bot .message-reply-to-label{color:#5b7fff}.message-user .message-reply-to-label{color:#ffffffe6}.message-reply-to-text{font-size:12px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-text{font-size:14px;line-height:1.5;word-wrap:break-word;white-space:pre-line}.message-bot .message-text{color:#1a1a1d}.message-user .message-text{color:#fff}.message-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;margin-bottom:8px}.message-button{flex:1 1 calc(50% - 4px);min-width:100px;padding:8px 16px;background:#fffffff2;border:1px solid #e0e0e0;border-radius:12px;font-size:13px;font-weight:500;color:#1a1a1d;cursor:pointer;transition:all .2s ease;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-button.full-width{flex:1 1 100%;text-align:center;white-space:normal;padding:8px 16px;font-size:14px}@media(min-width:640px){.message-button:hover{background:#fff;border-color:#007aff;color:#007aff;transform:translateY(-1px);box-shadow:0 2px 8px #007aff26}.message-button:active{transform:translateY(0);box-shadow:0 1px 4px #007aff1a}}.message-user .message-button{background:#fff3;border-color:#ffffff4d;color:#fff}.message-user .message-button:hover{background:#ffffff4d;border-color:#ffffff80}.message-timestamp{line-height:1;font-size:11px;color:#999;display:flex;align-items:center;gap:4px;justify-content:flex-end}.message-user .message-timestamp{color:#ffffffb3}.check-icon{width:14px;height:14px}.typing-indicator .message-bubble{padding:12px 18px;display:flex;gap:6px;min-width:60px}.typing-dot{width:8px;height:8px;border-radius:50%;background:#999;animation:typingDot 1.4s infinite ease-in-out}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.suggestions-container{display:flex;flex-direction:column;gap:10px;margin-top:8px}.suggestion-button{background:#d4d8f0;border:none;padding:8px 16px;border-radius:16px;display:flex;gap:12px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500;color:#1a1a1d;width:100%;text-align:center;align-items:center;justify-content:center}.suggestion-button:hover{background:#c5caeb;transform:translateY(-1px)}.suggestion-icon{font-size:18px}.chat-modal-input{padding:8px 16px;background:#fff;border-top:1px solid #e5e5e7;display:flex;flex-direction:column;gap:8px;box-shadow:0 -5px 8px 4px #0000000d}.reply-preview{background:#f5f5f7;padding:10px 14px;border-radius:6px;border-left:3px solid #5b7fff;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.reply-preview-content{flex:1;min-width:0}.reply-preview-label{font-size:11px;color:#5b7fff;font-weight:600;margin-bottom:4px}.reply-preview-text{font-size:13px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-preview-close{background:transparent;border:none;cursor:pointer;padding:2px;color:#999;transition:color .2s;flex-shrink:0}.reply-preview-close:hover{color:#666}.chat-modal-input-row{display:flex;gap:12px;align-items:center}.chat-modal-input input{flex:1;padding:14px 18px;border:1px solid #e5e5e7;border-radius:24px;outline:none;font-size:16px;color:#1a1a1d;transition:all .2s}.chat-modal-input input::placeholder{color:#999}.chat-modal-input input:focus{border-color:#5b7fff;box-shadow:0 0 0 3px #5b7fff1a}.chat-modal-input input:disabled{opacity:.6;cursor:not-allowed;background:#f5f5f7}.send-button{width:44px;height:44px;border-radius:50%;background:#5b7fff;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.send-button:hover:not(:disabled){background:#4a6fee;transform:scale(1.05)}.send-button:disabled{opacity:.4;cursor:not-allowed}.chat-modal-messages::-webkit-scrollbar{width:6px}.chat-modal-messages::-webkit-scrollbar-thumb{background:#d1d1d6;border-radius:3px}@media(max-width:640px){.chat-modal{width:100%;height:100dvh;max-height:100dvh;border-radius:0;margin:0}}.action-status{margin-top:8px;padding:6px 10px;border-radius:6px;font-size:.8em;font-weight:500}.action-status-submitted{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.action-status-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.action-status-fail{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.message-content{display:block;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;overflow:hidden;font-size:inherit;line-height:1.5}.mc-line{min-height:1.2em;word-break:break-word}.mc-empty-line{height:.5em}.mc-heading{font-weight:600;margin:.3em 0;word-break:break-word}.mc-h1{font-size:1.4em}.mc-h2{font-size:1.2em}.mc-h3{font-size:1.05em}.mc-inline-code{background:#afb8c133;padding:1px 5px;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.88em}.mc-codeblock{background:#f6f8fa;border:1px solid #d0d7de;border-radius:6px;margin:6px 0;overflow:hidden;max-width:100%}.mc-codeblock-lang{background:#e8ecf0;padding:3px 10px;font-size:.75em;font-weight:600;color:#57606a;text-transform:uppercase;font-family:Monaco,Menlo,monospace;border-bottom:1px solid #d0d7de}.mc-codeblock pre{margin:0;padding:10px;overflow-x:auto}.mc-codeblock code{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.85em;line-height:1.5;color:#24292f;white-space:pre}.mc-link{color:#0969da;text-decoration:none;word-break:break-word}.mc-link:hover{text-decoration:underline}.mc-image{max-width:150px;width:150px;height:150px;object-fit:contain;border-radius:8px;margin:8px 0;display:block}.mc-image-inline{width:20px;height:20px;border-radius:50%;margin:0 4px;display:inline-block;vertical-align:middle;object-fit:cover}.mc-blockquote{margin:4px 0;padding:2px 0 2px 12px;color:#57606a;border-left:3px solid #d0d7de}.mc-hr{height:1px;border:0;background:#d0d7de;margin:.4em 0}.message-content strong{font-weight:600}.message-content del{text-decoration:line-through}.action-form{background:#f8f9fb;border:1px solid #e2e6ea;border-radius:10px;padding:12px;margin-top:8px;margin-bottom:8px}.action-form-title{font-weight:600;font-size:.9em;margin-bottom:10px;color:#1a1a2e;display:flex;align-items:center;gap:6px}.action-form-general-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;margin-bottom:10px;font-size:.8em;color:#dc2626;font-weight:500;display:flex;align-items:center;gap:6px}.action-form-fields{display:flex;flex-direction:column;gap:8px}.action-form-field{display:flex;flex-direction:column;gap:3px}.action-form-field label{font-size:.75em;font-weight:500;color:#6b7280}.action-form-field input,.action-form-field textarea{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:16px;background:#fff;color:#1a1a2e;outline:none;transition:border-color .2s;font-family:inherit}.action-form-field textarea{resize:none;word-break:break-all}.action-form-field input:focus,.action-form-field textarea:focus{border-color:#0b3988;box-shadow:0 0 0 2px #6c5ce726}.action-form-field input.error,.action-form-field textarea.error{border-color:#ef4444}.action-form-field input.readonly,.action-form-field textarea.readonly{background:#f3f4f6;color:#6b7280;cursor:not-allowed;border-color:#e5e7eb}.action-form-field .field-error{font-size:.7em;color:#ef4444;margin-top:1px}.action-form-actions{display:flex;gap:8px;margin-top:10px}.action-form-submit{flex:1;padding:8px 14px;background:#0b3988;color:#fff;border:none;border-radius:6px;font-size:.85em;font-weight:500;cursor:pointer;transition:background .2s}.action-form-submit:hover:not(:disabled){background:#5a4bd1}.action-form-submit:disabled{background:#a5b4fc;cursor:not-allowed}.action-form-cancel{padding:8px 14px;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;font-size:.85em;font-weight:500;cursor:pointer;transition:all .2s}.action-form-cancel:hover{background:#f3f4f6;color:#374151}.action-form-token-info{background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;padding:8px 10px;margin-bottom:10px}.token-info-row{display:flex;align-items:center;gap:8px}.token-info-logo{border-radius:50%;flex-shrink:0}.token-info-details{display:flex;flex-direction:column;gap:2px;min-width:0}.token-info-name{font-size:.8em;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.token-info-balance{font-size:.75em;color:#4b5563}.token-info-usd{color:#0b3988;font-weight:500}.action-form-field-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.action-form-field-header .action-form-field-label{margin-bottom:0;font-size:12px}.action-form-pct-btns{display:inline-flex;gap:4px}.action-form-pct-btn{padding:1px 6px;font-size:.7em;font-weight:600;color:#0b3988;background:#eef2ff;border:1px solid #c7d2fe;border-radius:4px;cursor:pointer;transition:all .15s}@media(min-width:640px){.action-form-pct-btn:hover:not(:disabled){background:#0b3988;color:#fff}}.action-form-pct-btn:disabled{opacity:.5;cursor:not-allowed}.action-form-max-btn{font-weight:700}.action-form-nft-info{margin-bottom:10px;text-align:center;display:flex;align-items:center;justify-content:center}.nft-info-image{width:80px;height:80px;border-radius:8px;object-fit:contain;background:#e5e7eb;padding:4px}.scroll-to-bottom-btn{position:absolute;bottom:16px;right:20px;background:#1a1a1dd6;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:36px;height:36px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000040;z-index:20;transition:background .15s,transform .15s,box-shadow .15s;animation:fadeInUp .18s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:640px){.scroll-to-bottom-btn:hover{background:#2d2d35;box-shadow:0 6px 16px #0000004d;transform:scale(1.08)}}.scroll-to-bottom-btn:active{transform:scale(.96)}")),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
|
|
2
2
|
import { jsx as G, Fragment as so, jsxs as Ae } from "react/jsx-runtime";
|
|
3
3
|
import Ya, { useState as Xe, useEffect as ct, useCallback as Ie, createContext as ao, useContext as ro, memo as Ja, useMemo as zn, useRef as St } from "react";
|
|
4
4
|
const qa = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHAAAABwCAYAAADG4PRLAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAfXSURBVHgB7Z1LbFRVGMe/c4YCAmKrEFiQWIIrNm13RE0olLRuTCq4w4C6Mbopo9GltFsVpmxQN1pJ2MkjcSMESrsgYdd2w8rGkrCA8GjFVintzPH878wZjrfzujPTe88p3y+ZzMydOxO4//s9z3dvBTWB7sxsqyTqF2q5k4R8nUh06s2thQeTZyZ4qOwU0bqJFkHjv6fbZqhBBNVJIJqiASFUN94SExl98CeVEsONiBlZQEu4E8QW1kTUSAvJoahCRhLw4OnZkyzc6qItcnD087ahWvevScB3MrPty6QuKaJOYuJgpoXEgVqsUVbboef07PElUhMsXqy045j3ZB72V9uxooCHtMskoUaIXWYS6GMuLyFsVdqprAuFeEqoQWISp1JcLClgz3fadFPyEjHuIMWH1wfafglvXiEgEhb4X2K36RpzOrHpCic2K2KgFu8GsXgu0opKILzxfwIeygfMdmKcBJXAwVOPBu1tRRdacJ1/EuM6c1kSu8fSbXN4U7TAJZUdJMYHWmUud8K8CSyQrc87ilYYWOCzXLabGJ8oWmEgoJRygBivEFLsD57ZffqLdqNtkt2nv8hctl8qIXiVwVOE1k5KITqI8RTRjiSmnRg/EdTBAvpNa9UVecZpWEDfYQE9hwX0HBbQc1jAEFs2CLp2oi14dOxaR67DAoZ4c09L8XXHrhZyHRYwxFt71hdf9+5dT67DAlrs2Cq1gM+tbqd+77obZQEtju17qaZtLsECFji2byP1lXCZsMAvezcHyY2LuJ9mrSKbtShva5fZu3dDRVcJYfH5uVv/0tTdZbr/JEeuIHoyjxV5CA4+Duye7Skdq1JV9z87/g9NP8gGr5FpHunaWHd8w+9cmHhKV28/o6Tx0gIPd20IYlMUtza/+Pw8Pa6/C+HrBd/9SrtVF6zRuxiIWPXZ/k2RYxIySoNxhfUC0fAbLrhSrywQdZmdFV65vRi4sXs1HEjbAm9OLwWPHYUyAb9pC1zu+xe124TwjYjfbLwS0Bbv3K2ngRU0AiwIJwAesOxyJcMfOuZ98evftLDoXrrgjQuFpRgrgQU0Kl4YnBCwsDCw7kriNRJLm4E3Atou7ub06mR/EHE+JBROlHLiwQX/eHRr8JwUXhby86vkyvC79slxr+Biy2HKkD5dRyYFd2JC2IJN3V0qux9cp4mZKGuScqUvdCemFCjSYYkoU0pZH5rdh0NNAOwLV4rYjDiKDDcuWMAQEO/bqwtBXIteLqjY4yELWIJKFmTXkKfefzlIriD6yd/mE6kPOQbWCWpIU3Yg8UmquGcBG8DEyIsTi5QULGADwHV+cv5JcZUjCWKPgab3iLS7loY0CmkU2K5hkpUkxQOxClip3+gbSF6G3t0SCIhe6fd6vTEJYnOh4ZWEtQA8CDzKluQaMfEJmGS7aS0Tm4A+TDn7CGehnsMCNoGF5MpA9wU06bq9hPTG9uTdsd3zvPckuVLCeQHNyCBaVUZEZLRJLqJipNHOqONcfQjjvIBmnc0MFQGk72gkJyGi3cQG6IMmOZ3mfGpoaq38WttiMEWNg4fH+Y9fCbZHdWH4TrWh3N7CNLYNvIG9DSv2Z8ebO5sTFS9ye7grDBbBCvFsWwAOaEfE/0ZfcBKkKg5G4Xcr1a4QD0tIPNhbA6Z/CnDAPvjpL/pGL7pOP6h/CQdtvU/3b6KomKHepJvYBm+qaxxwYKzGzHMioYgypd1ntfSOdG3QGW0qsKRKg1Jf68/NqIVrs6GeDfZuDGKTfZXQQsSDipUNuD8zng/r/uHo1sA1l3OH+H2Xrkiy8a6/hdiHC0uAsQokMdUOsD0SD8vFd7GaYBIixNVKIrqK1w1KU2LUksSEL2iZLozLm4RoZ2FIN6nZlnp5oVtp9wtj8yYZMfUl5jx94YXvhRoR7boQ8dG+W4XLcDOb8l0elCV2XWhnti6UC+WITcB5x9LvUpS6ZA2XZrv8b48ticFZnOSibq2JCUS8ot0pkhrMurh4TaBNbBbY7Ov5ooC6L0pmeb+wv+vigdgEXI2LMmvBXKC5VonVp5kuSF+V+7I0A1gRrqG/oFcwfLCkenHiPjGV5kWbcS38WsbpMoLFq46zArJ4teGkgCxe7TgnIIsXDacEZPGi44yALF59OLEeiNaVbwupruCEBbJ49cPLSZ7DAnoOC+g5LKDnsICeI/VSxBwx3iIFC+gzM9qFqklifGVG5hTdIcZPlJqSQrEFektKTsicTF0mxkuyORqXY+k2JDFjxHiFrh4mtXYzQR0ocmqcGK8QUgzjORBwWcphrgf9Au4Tz4GAcKM6HT1DjCeIEbhPvCq20tgK/SFLNGReFwVkK/QDRWrIWB9YcXuHg5nHE3pjJzHOoT3kzGj61d32thWrETkS77ErdQ9oorU5EN6+QsC8eebSxDiFoNxHtus0lFwPHE1vGxHa1xLjBIh719PbSnbMKt7i6FDm0aAicZKYxIB4o+nXBst9XvUeVT2Zh/2K5M96x1ZiYiOfh+TS8IaV9qvpJmPdmdl2SeqG3rmdmFUHfU4kk6ViXphIf8ubXerqAqvThnLmWgWXGSbaH2OnvDWmVG6QhDhOTFMwwi2THC6sDtVMZAENebea7daJ7AAX/nUzprP98XqEM9QtoI0RUyjRqS2zg/Kxsp2YAFhYfnhMTeo3d5RQOsalLtcrms1//TyUbJOo0HUAAAAASUVORK5CYII=", za = "Keyring Agent", ja = "Close chat", Qa = "Message ....", Ka = "Send message", Xa = "Bot is typing", _a = "Can I help you with anything?", Za = "Reply to message", $a = "Replying to", er = "You", tr = "Keyring Agent", nr = "Cancel reply", or = "Ask a question", sr = "I have a question", ar = "Ask me anything", rr = "Buy trending token", ir = "Your wallet is connected but the chain is not supported for trading. Please switch to a supported chain to see trending tokens.", cr = "Please connect your wallet to see trending tokens.", lr = "⏳ Processing transaction...", dr = "✅ Transaction completed", ur = "❌ Action cancelled or failed", fr = "⏳ Transaction submitted. Waiting for confirmation...", mr = "✅ Transaction confirmed!", pr = "❌ Transaction reverted on-chain.", hr = "⚠️ Transaction submitted but confirmation timed out. Please check manually.", gr = "✅ Transaction successful!", wr = "❌ Transaction failed. Please try again.", br = "⚠️ No transaction handler configured.", yr = "⚠️ **Insufficient {symbol} for gas!** You have {balance} {symbol} but need ~{fee} {symbol} for the transaction fee. Please top up your wallet and try again.", Ar = "❌ Error: {message}", vr = "Confirm", kr = "Confirm swap", Tr = "Ready to proceed with the swap?", Cr = "⚠️ Unable to get swap estimation. Error: {error}", Er = "Cancel", xr = "Execute", Sr = "⏳ Processing...", Ir = "Balance:", Nr = "Token not found in your wallet.", Br = "You have no {symbol} balance in your wallet.", Fr = "Insufficient balance. Spendable: {balance} {symbol}", Rr = "{field} is required", Or = "Invalid address (0x + 40 hex chars)", Pr = "Must be a positive number", Dr = "Must be a valid number", Lr = "Open chat", Ur = "Open chat support", Mr = "This is the spendable balance of your wallet on {chain} chain. Please choose the coins you want to use for this trade.", Hr = "Sorry, I couldn't find any tokens in your wallet on {chain} chain. Please make sure you have some tokens to trade.", Wr = "Sorry, I could not fetch your wallet balance. Please try again.", Vr = "Sorry, I encountered an error fetching your wallet balance.", Gr = "Insufficient fee. Please ensure you have enough {symbol} to cover the transaction fees, or select a different token.", Yr = `Select the amount of {symbol} to use:
|
|
@@ -185,7 +185,7 @@ If you want to send other NFTs, please provide the contract address, NFT ID`, Mc
|
|
|
185
185
|
spendable: Dc,
|
|
186
186
|
welcomeMessage: Lc,
|
|
187
187
|
sendOtherNfts: Uc
|
|
188
|
-
}, Hc = "Keyring Agent", Wc = "チャットを閉じる", Vc = "メッセージを入力...", Gc = "メッセージを送信", Yc = "ボットが入力中...", Jc = "
|
|
188
|
+
}, Hc = "Keyring Agent", Wc = "チャットを閉じる", Vc = "メッセージを入力...", Gc = "メッセージを送信", Yc = "ボットが入力中...", Jc = "何かお手伝いできることはございますか?", qc = "メッセージに返信", zc = "返信先:", jc = "あなた", Qc = "Keyring Agent", Kc = "返信をキャンセル", Xc = "質問・調査のお願い", _c = "質問があります", Zc = "何でも聞いてください", $c = "トレンドトークンを購入", el = "ウォレットは接続されていますが、このチェーンは取引に対応していません。トレンドのトークンを表示するには、対応しているチェーンに切り替えてください。", tl = "トレンドのトークンを表示するには、ウォレットを接続してください。", nl = "⏳ トランザクションを処理中...", ol = "✅ トランザクションが完了しました", sl = "❌ アクションがキャンセルされたか、失敗しました", al = "⏳ トランザクションを送信しました。確認を待機中...", rl = "✅ トランザクションが確認されました!", il = "❌ オンチェーンでトランザクションがリバートされました。", cl = "⚠️ トランザクションは送信されましたが、タイムアウトしました。手動で確認してください。", ll = "✅ トランザクションに成功しました!", dl = "❌ トランザクションに失敗しました。もう一度お試しください。", ul = "⚠️ トランザクションハンドラーが設定されていません。", fl = "⚠️ **ガス代({symbol})が不足しています!** 保有量は {balance} {symbol} ですが、手数料に約 {fee} {symbol} 必要です。ウォレットにチャージして再試行してください。", ml = "❌ エラー: {message}", pl = "確定", hl = "スワップを確定する", gl = "スワップを実行しますか?", wl = "⚠️ スワップの見積もりを取得できません。エラー: {error}", bl = "キャンセル", yl = "実行", Al = "⏳ 処理中...", vl = "残高:", kl = "ウォレット内にトークンが見つかりません。", Tl = "ウォレットに {symbol} の残高がありません。", Cl = "残高不足です。利用可能: {balance} {symbol}", El = "{field} は必須項目です", xl = "無効なアドレスです (0x + 40文字の16進数)", Sl = "正の数値を入力してください", Il = "有効な数値を入力してください", Nl = "チャットを開く", Bl = "チャットサポートを開く", Fl = "これは {chain} チェーン上のウォレットの利用可能な残高です。この取引に使用するコインを選択してください。", Rl = "申し訳ありませんが、{chain} チェーン上のウォレットにトークンが見つかりませんでした。取引するためのトークンを保有しているかご確認ください。", Ol = "ウォレット残高を取得できませんでした。もう一度お試しください。", Pl = "ウォレット残高の取得中にエラーが発生しました。", Dl = "手数料が不足しています。取引手数料をカバーするのに十分な {symbol} を保有しているか、別のトークンを選択してください。", Ll = `使用する {symbol} の数量を選択してください:
|
|
189
189
|
|
|
190
190
|
利用可能: {balance} {symbol}`, Ul = `
|
|
191
191
|
⚠️ **手数料の {symbol} が不足しています!**
|
|
@@ -213,7 +213,7 @@ If you want to send other NFTs, please provide the contract address, NFT ID`, Mc
|
|
|
213
213
|
{list}
|
|
214
214
|
|
|
215
215
|
操作するトークンを選択してください:`, F0 = "このチェーン上のウォレットにトークンは見つかりませんでした。", R0 = "残高の取得中にエラーが発生しました。", O0 = "{symbol} を送信", P0 = "{symbol} をスワップ", D0 = "{symbol} をさらに入手", L0 = "ネイティブトークンを送信", U0 = "ネイティブトークン (ETH, BNB, MATIC など) をアドレスに送信します", M0 = "トークンを送信 (ERC20)", H0 = "ERC20トークンをアドレスに送信します", W0 = "トークンをスワップ", V0 = "トークンを別のトークンに交換します", G0 = "トークンを承認", Y0 = "支出元(Spender)によるトークンの使用を許可します", J0 = "ネイティブトークンをラップ", q0 = "ネイティブトークンをラップします (ETH → WETH)", z0 = "ネイティブトークンをアンラップ", j0 = "ネイティブトークンをアンラップします (WETH → ETH)", Q0 = "NFTを送信", K0 = "ERC721またはERC1155 NFTを別のアドレスに転送します", X0 = "受信者アドレス", _0 = "数量", Z0 = "トークンコントラクト", $0 = "トークンシンボル", ed = "デシマル (小数桁数)", td = "元のトークン", nd = "元のシンボル", od = "先のトークン", sd = "先のシンボル", ad = "元のデシマル", rd = "先のデシマル", id = "支出元 (Spender) アドレス", cd = "数量 (空欄 = 無制限)", ld = "NFTコントラクト", dd = "トークンID", ud = "トークン規格", fd = "NFT名", md = "正の整数を入力してください", pd = "数量は利用可能な残高 {max} を超えることはできません", hd = "受取額: {value}", gd = "アクション「{action}」が {value} に対して実行されました", wd = "{symbol} の購入をお手伝いします。まず、交換に使用可能なトークンを表示します。", bd = "このチェーン上でトークン「{symbol}」が見つかりませんでした。購入可能なトレンドトークンはこちらです:", yd = "スワップの準備中...", Ad = "はい", vd = "交換元(支払う)トークンを選択してください:", kd = "{symbol} をスワップします。受け取りたいトークンを選択してください:", Td = "スワップの詳細が必要です。交換したいトークンを指定してください(例:「1 ETH を USDC にスワップ」)。", Cd = "あなたのNFTコレクションを表示します!", Ed = "どのトークンを送信しますか?", xd = "どのNFTを送信しますか?", Sd = "どのトークンをスワップしますか?現在の残高はこちらです:", Id = "利用可能", Nd = `**ようこそ! 🚀**
|
|
216
|
-
|
|
216
|
+
新時代の金融へ。DeFiの世界を解き放て!トレード、価格チェック、ポートフォリオ分析など、いつでもお手伝いします。`, Bd = `
|
|
217
217
|
他のNFTを送信する場合は、コントラクトアドレスとNFTIDを入力してください`, Fd = {
|
|
218
218
|
chatTitle: Hc,
|
|
219
219
|
closeChat: Wc,
|
|
@@ -818,10 +818,10 @@ function Rt(e, t = {}) {
|
|
|
818
818
|
s.length % 2 && (s = `0${s}`);
|
|
819
819
|
const o = s.length / 2, a = new Uint8Array(o);
|
|
820
820
|
for (let r = 0, i = 0; r < o; r++) {
|
|
821
|
-
const l = Do(s.charCodeAt(i++)),
|
|
822
|
-
if (l === void 0 ||
|
|
821
|
+
const l = Do(s.charCodeAt(i++)), b = Do(s.charCodeAt(i++));
|
|
822
|
+
if (l === void 0 || b === void 0)
|
|
823
823
|
throw new pe(`Invalid byte sequence ("${s[i - 2]}${s[i - 1]}" in "${s}").`);
|
|
824
|
-
a[r] = l * 16 +
|
|
824
|
+
a[r] = l * 16 + b;
|
|
825
825
|
}
|
|
826
826
|
return a;
|
|
827
827
|
}
|
|
@@ -1355,8 +1355,8 @@ function As(e) {
|
|
|
1355
1355
|
function ff(e, t, n, s) {
|
|
1356
1356
|
if (typeof e.setBigUint64 == "function")
|
|
1357
1357
|
return e.setBigUint64(t, n, s);
|
|
1358
|
-
const o = BigInt(32), a = BigInt(4294967295), r = Number(n >> o & a), i = Number(n & a), l = s ? 4 : 0,
|
|
1359
|
-
e.setUint32(t + l, r, s), e.setUint32(t +
|
|
1358
|
+
const o = BigInt(32), a = BigInt(4294967295), r = Number(n >> o & a), i = Number(n & a), l = s ? 4 : 0, b = s ? 0 : 4;
|
|
1359
|
+
e.setUint32(t + l, r, s), e.setUint32(t + b, i, s);
|
|
1360
1360
|
}
|
|
1361
1361
|
function mf(e, t, n) {
|
|
1362
1362
|
return e & t ^ ~e & n;
|
|
@@ -1394,10 +1394,10 @@ class hf extends ys {
|
|
|
1394
1394
|
const i = On(t), l = this.outputLen;
|
|
1395
1395
|
if (l % 4)
|
|
1396
1396
|
throw new Error("_sha2: outputLen should be aligned to 32bit");
|
|
1397
|
-
const
|
|
1398
|
-
if (
|
|
1397
|
+
const b = l / 4, O = this.get();
|
|
1398
|
+
if (b > O.length)
|
|
1399
1399
|
throw new Error("_sha2: outputLen bigger than state");
|
|
1400
|
-
for (let q = 0; q <
|
|
1400
|
+
for (let q = 0; q < b; q++)
|
|
1401
1401
|
i.setUint32(4 * q, O[q], a);
|
|
1402
1402
|
}
|
|
1403
1403
|
digest() {
|
|
@@ -1522,12 +1522,12 @@ class Tf extends hf {
|
|
|
1522
1522
|
const v = vt[q - 15], S = vt[q - 2], B = ut(v, 7) ^ ut(v, 18) ^ v >>> 3, x = ut(S, 17) ^ ut(S, 19) ^ S >>> 10;
|
|
1523
1523
|
vt[q] = x + vt[q - 7] + B + vt[q - 16] | 0;
|
|
1524
1524
|
}
|
|
1525
|
-
let { A: s, B: o, C: a, D: r, E: i, F: l, G:
|
|
1525
|
+
let { A: s, B: o, C: a, D: r, E: i, F: l, G: b, H: O } = this;
|
|
1526
1526
|
for (let q = 0; q < 64; q++) {
|
|
1527
|
-
const v = ut(i, 6) ^ ut(i, 11) ^ ut(i, 25), S = O + v + mf(i, l,
|
|
1528
|
-
O =
|
|
1527
|
+
const v = ut(i, 6) ^ ut(i, 11) ^ ut(i, 25), S = O + v + mf(i, l, b) + kf[q] + vt[q] | 0, x = (ut(s, 2) ^ ut(s, 13) ^ ut(s, 22)) + pf(s, o, a) | 0;
|
|
1528
|
+
O = b, b = l, l = i, i = r + S | 0, r = a, a = o, o = s, s = S + x | 0;
|
|
1529
1529
|
}
|
|
1530
|
-
s = s + this.A | 0, o = o + this.B | 0, a = a + this.C | 0, r = r + this.D | 0, i = i + this.E | 0, l = l + this.F | 0,
|
|
1530
|
+
s = s + this.A | 0, o = o + this.B | 0, a = a + this.C | 0, r = r + this.D | 0, i = i + this.E | 0, l = l + this.F | 0, b = b + this.G | 0, O = O + this.H | 0, this.set(s, o, a, r, i, l, b, O);
|
|
1531
1531
|
}
|
|
1532
1532
|
roundClean() {
|
|
1533
1533
|
on(vt);
|
|
@@ -1604,8 +1604,8 @@ function Rf(e) {
|
|
|
1604
1604
|
const i = fs(new Uint8Array(ks));
|
|
1605
1605
|
let l = 0;
|
|
1606
1606
|
for (; l < mo; ) {
|
|
1607
|
-
const
|
|
1608
|
-
if (i.pushByte(0), i.pushBytes(
|
|
1607
|
+
const b = n.slice(r, r + (vs - 1));
|
|
1608
|
+
if (i.pushByte(0), i.pushBytes(b), b.length < 31) {
|
|
1609
1609
|
i.pushByte(128), a = !1;
|
|
1610
1610
|
break;
|
|
1611
1611
|
}
|
|
@@ -1857,14 +1857,14 @@ function Vf(e, t = 24) {
|
|
|
1857
1857
|
for (let r = 0; r < 10; r++)
|
|
1858
1858
|
n[r] = e[r] ^ e[r + 10] ^ e[r + 20] ^ e[r + 30] ^ e[r + 40];
|
|
1859
1859
|
for (let r = 0; r < 10; r += 2) {
|
|
1860
|
-
const i = (r + 8) % 10, l = (r + 2) % 10,
|
|
1860
|
+
const i = (r + 8) % 10, l = (r + 2) % 10, b = n[l], O = n[l + 1], q = Go(b, O, 1) ^ n[i], v = Yo(b, O, 1) ^ n[i + 1];
|
|
1861
1861
|
for (let S = 0; S < 50; S += 10)
|
|
1862
1862
|
e[r + S] ^= q, e[r + S + 1] ^= v;
|
|
1863
1863
|
}
|
|
1864
1864
|
let o = e[2], a = e[3];
|
|
1865
1865
|
for (let r = 0; r < 24; r++) {
|
|
1866
|
-
const i = Is[r], l = Go(o, a, i),
|
|
1867
|
-
o = e[O], a = e[O + 1], e[O] = l, e[O + 1] =
|
|
1866
|
+
const i = Is[r], l = Go(o, a, i), b = Yo(o, a, i), O = Ss[r];
|
|
1867
|
+
o = e[O], a = e[O + 1], e[O] = l, e[O + 1] = b;
|
|
1868
1868
|
}
|
|
1869
1869
|
for (let r = 0; r < 50; r += 10) {
|
|
1870
1870
|
for (let i = 0; i < 10; i++)
|
|
@@ -2093,7 +2093,7 @@ function $f(e, t) {
|
|
|
2093
2093
|
return n === "eip1559" ? nm(e, t) : n === "eip2930" ? om(e, t) : n === "eip4844" ? tm(e, t) : n === "eip7702" ? em(e, t) : sm(e, t);
|
|
2094
2094
|
}
|
|
2095
2095
|
function em(e, t) {
|
|
2096
|
-
const { authorizationList: n, chainId: s, gas: o, nonce: a, to: r, value: i, maxFeePerGas: l, maxPriorityFeePerGas:
|
|
2096
|
+
const { authorizationList: n, chainId: s, gas: o, nonce: a, to: r, value: i, maxFeePerGas: l, maxPriorityFeePerGas: b, accessList: O, data: q } = e;
|
|
2097
2097
|
Qf(e);
|
|
2098
2098
|
const v = Nn(O), S = sf(n);
|
|
2099
2099
|
return Dt([
|
|
@@ -2101,7 +2101,7 @@ function em(e, t) {
|
|
|
2101
2101
|
Ot([
|
|
2102
2102
|
fe(s),
|
|
2103
2103
|
a ? fe(a) : "0x",
|
|
2104
|
-
|
|
2104
|
+
b ? fe(b) : "0x",
|
|
2105
2105
|
l ? fe(l) : "0x",
|
|
2106
2106
|
o ? fe(o) : "0x",
|
|
2107
2107
|
r ?? "0x",
|
|
@@ -2114,7 +2114,7 @@ function em(e, t) {
|
|
|
2114
2114
|
]);
|
|
2115
2115
|
}
|
|
2116
2116
|
function tm(e, t) {
|
|
2117
|
-
const { chainId: n, gas: s, nonce: o, to: a, value: r, maxFeePerBlobGas: i, maxFeePerGas: l, maxPriorityFeePerGas:
|
|
2117
|
+
const { chainId: n, gas: s, nonce: o, to: a, value: r, maxFeePerBlobGas: i, maxFeePerGas: l, maxPriorityFeePerGas: b, accessList: O, data: q } = e;
|
|
2118
2118
|
Kf(e);
|
|
2119
2119
|
let v = e.blobVersionedHashes, S = e.sidecars;
|
|
2120
2120
|
if (e.blobs && (typeof v > "u" || typeof S > "u")) {
|
|
@@ -2132,7 +2132,7 @@ function tm(e, t) {
|
|
|
2132
2132
|
const B = Nn(O), x = [
|
|
2133
2133
|
fe(n),
|
|
2134
2134
|
o ? fe(o) : "0x",
|
|
2135
|
-
|
|
2135
|
+
b ? fe(b) : "0x",
|
|
2136
2136
|
l ? fe(l) : "0x",
|
|
2137
2137
|
s ? fe(s) : "0x",
|
|
2138
2138
|
a ?? "0x",
|
|
@@ -2142,22 +2142,22 @@ function tm(e, t) {
|
|
|
2142
2142
|
i ? fe(i) : "0x",
|
|
2143
2143
|
v ?? [],
|
|
2144
2144
|
...cn(e, t)
|
|
2145
|
-
], k = [], he = [],
|
|
2145
|
+
], k = [], he = [], y = [];
|
|
2146
2146
|
if (S)
|
|
2147
2147
|
for (let J = 0; J < S.length; J++) {
|
|
2148
2148
|
const { blob: Q, commitment: me, proof: ge } = S[J];
|
|
2149
|
-
k.push(Q), he.push(me),
|
|
2149
|
+
k.push(Q), he.push(me), y.push(ge);
|
|
2150
2150
|
}
|
|
2151
2151
|
return Dt([
|
|
2152
2152
|
"0x03",
|
|
2153
2153
|
// If sidecars are enabled, envelope turns into a "wrapper":
|
|
2154
|
-
Ot(S ? [x, k, he,
|
|
2154
|
+
Ot(S ? [x, k, he, y] : x)
|
|
2155
2155
|
]);
|
|
2156
2156
|
}
|
|
2157
2157
|
function nm(e, t) {
|
|
2158
|
-
const { chainId: n, gas: s, nonce: o, to: a, value: r, maxFeePerGas: i, maxPriorityFeePerGas: l, accessList:
|
|
2158
|
+
const { chainId: n, gas: s, nonce: o, to: a, value: r, maxFeePerGas: i, maxPriorityFeePerGas: l, accessList: b, data: O } = e;
|
|
2159
2159
|
go(e);
|
|
2160
|
-
const q = Nn(
|
|
2160
|
+
const q = Nn(b), v = [
|
|
2161
2161
|
fe(n),
|
|
2162
2162
|
o ? fe(o) : "0x",
|
|
2163
2163
|
l ? fe(l) : "0x",
|
|
@@ -2175,12 +2175,12 @@ function nm(e, t) {
|
|
|
2175
2175
|
]);
|
|
2176
2176
|
}
|
|
2177
2177
|
function om(e, t) {
|
|
2178
|
-
const { chainId: n, gas: s, data: o, nonce: a, to: r, value: i, accessList: l, gasPrice:
|
|
2178
|
+
const { chainId: n, gas: s, data: o, nonce: a, to: r, value: i, accessList: l, gasPrice: b } = e;
|
|
2179
2179
|
Xf(e);
|
|
2180
2180
|
const O = Nn(l), q = [
|
|
2181
2181
|
fe(n),
|
|
2182
2182
|
a ? fe(a) : "0x",
|
|
2183
|
-
|
|
2183
|
+
b ? fe(b) : "0x",
|
|
2184
2184
|
s ? fe(s) : "0x",
|
|
2185
2185
|
r ?? "0x",
|
|
2186
2186
|
i ? fe(i) : "0x",
|
|
@@ -2196,7 +2196,7 @@ function om(e, t) {
|
|
|
2196
2196
|
function sm(e, t) {
|
|
2197
2197
|
const { chainId: n = 0, gas: s, data: o, nonce: a, to: r, value: i, gasPrice: l } = e;
|
|
2198
2198
|
_f(e);
|
|
2199
|
-
let
|
|
2199
|
+
let b = [
|
|
2200
2200
|
a ? fe(a) : "0x",
|
|
2201
2201
|
l ? fe(l) : "0x",
|
|
2202
2202
|
s ? fe(s) : "0x",
|
|
@@ -2215,19 +2215,19 @@ function sm(e, t) {
|
|
|
2215
2215
|
throw new tf({ v: t.v });
|
|
2216
2216
|
return S;
|
|
2217
2217
|
})(), q = Tn(t.r), v = Tn(t.s);
|
|
2218
|
-
|
|
2219
|
-
...
|
|
2218
|
+
b = [
|
|
2219
|
+
...b,
|
|
2220
2220
|
fe(O),
|
|
2221
2221
|
q === "0x00" ? "0x" : q,
|
|
2222
2222
|
v === "0x00" ? "0x" : v
|
|
2223
2223
|
];
|
|
2224
|
-
} else n > 0 && (
|
|
2225
|
-
...
|
|
2224
|
+
} else n > 0 && (b = [
|
|
2225
|
+
...b,
|
|
2226
2226
|
fe(n),
|
|
2227
2227
|
"0x",
|
|
2228
2228
|
"0x"
|
|
2229
2229
|
]);
|
|
2230
|
-
return Ot(
|
|
2230
|
+
return Ot(b);
|
|
2231
2231
|
}
|
|
2232
2232
|
function cn(e, t) {
|
|
2233
2233
|
const n = t ?? e, { v: s, yParity: o } = n;
|
|
@@ -2290,7 +2290,7 @@ const cm = {
|
|
|
2290
2290
|
};
|
|
2291
2291
|
function lm(e) {
|
|
2292
2292
|
um(e);
|
|
2293
|
-
const { sourceHash: t, data: n, from: s, gas: o, isSystemTx: a, mint: r, to: i, value: l } = e,
|
|
2293
|
+
const { sourceHash: t, data: n, from: s, gas: o, isSystemTx: a, mint: r, to: i, value: l } = e, b = [
|
|
2294
2294
|
t,
|
|
2295
2295
|
s,
|
|
2296
2296
|
i ?? "0x",
|
|
@@ -2302,7 +2302,7 @@ function lm(e) {
|
|
|
2302
2302
|
];
|
|
2303
2303
|
return Dt([
|
|
2304
2304
|
"0x7e",
|
|
2305
|
-
Ot(
|
|
2305
|
+
Ot(b)
|
|
2306
2306
|
]);
|
|
2307
2307
|
}
|
|
2308
2308
|
function dm(e) {
|
|
@@ -2816,19 +2816,19 @@ function Gm(e) {
|
|
|
2816
2816
|
}
|
|
2817
2817
|
if (!i.inputs || i.inputs.length === 0 || i.inputs.length !== n.length)
|
|
2818
2818
|
continue;
|
|
2819
|
-
if (n.every((
|
|
2819
|
+
if (n.every((b, O) => {
|
|
2820
2820
|
const q = "inputs" in i && i.inputs[O];
|
|
2821
|
-
return q ? oo(
|
|
2821
|
+
return q ? oo(b, q) : !1;
|
|
2822
2822
|
})) {
|
|
2823
2823
|
if (r && "inputs" in r && r.inputs) {
|
|
2824
|
-
const
|
|
2825
|
-
if (
|
|
2824
|
+
const b = Ms(i.inputs, r.inputs, n);
|
|
2825
|
+
if (b)
|
|
2826
2826
|
throw new Am({
|
|
2827
2827
|
abiItem: i,
|
|
2828
|
-
type:
|
|
2828
|
+
type: b[0]
|
|
2829
2829
|
}, {
|
|
2830
2830
|
abiItem: r,
|
|
2831
|
-
type:
|
|
2831
|
+
type: b[1]
|
|
2832
2832
|
});
|
|
2833
2833
|
}
|
|
2834
2834
|
r = i;
|
|
@@ -2883,7 +2883,7 @@ function Ym(e) {
|
|
|
2883
2883
|
`).slice(0, -1);
|
|
2884
2884
|
}
|
|
2885
2885
|
class Jm extends pe {
|
|
2886
|
-
constructor(t, { account: n, docsPath: s, chain: o, data: a, gas: r, gasPrice: i, maxFeePerGas: l, maxPriorityFeePerGas:
|
|
2886
|
+
constructor(t, { account: n, docsPath: s, chain: o, data: a, gas: r, gasPrice: i, maxFeePerGas: l, maxPriorityFeePerGas: b, nonce: O, to: q, value: v, stateOverride: S }) {
|
|
2887
2887
|
const B = n ? wo(n) : void 0;
|
|
2888
2888
|
let x = hs({
|
|
2889
2889
|
from: B?.address,
|
|
@@ -2893,7 +2893,7 @@ class Jm extends pe {
|
|
|
2893
2893
|
gas: r,
|
|
2894
2894
|
gasPrice: typeof i < "u" && `${Bt(i)} gwei`,
|
|
2895
2895
|
maxFeePerGas: typeof l < "u" && `${Bt(l)} gwei`,
|
|
2896
|
-
maxPriorityFeePerGas: typeof
|
|
2896
|
+
maxPriorityFeePerGas: typeof b < "u" && `${Bt(b)} gwei`,
|
|
2897
2897
|
nonce: O
|
|
2898
2898
|
});
|
|
2899
2899
|
S && (x += `
|
|
@@ -2975,16 +2975,16 @@ async function Km(e, t) {
|
|
|
2975
2975
|
throw new hm();
|
|
2976
2976
|
const s = wo(n);
|
|
2977
2977
|
try {
|
|
2978
|
-
const { accessList: o, blockNumber: a, blockTag: r, data: i, gas: l, gasPrice:
|
|
2978
|
+
const { accessList: o, blockNumber: a, blockTag: r, data: i, gas: l, gasPrice: b, maxFeePerGas: O, maxPriorityFeePerGas: q, nonce: v, to: S, value: B, ...x } = t, he = (typeof a == "bigint" ? fe(a) : void 0) || r;
|
|
2979
2979
|
Qm(t);
|
|
2980
|
-
const
|
|
2980
|
+
const y = e.chain?.formatters?.transactionRequest?.format, Q = (y || J1)({
|
|
2981
2981
|
// Pick out extra data that might exist on the chain's transaction request type.
|
|
2982
|
-
...jm(x, { format:
|
|
2982
|
+
...jm(x, { format: y }),
|
|
2983
2983
|
account: s,
|
|
2984
2984
|
accessList: o,
|
|
2985
2985
|
data: i,
|
|
2986
2986
|
gas: l,
|
|
2987
|
-
gasPrice:
|
|
2987
|
+
gasPrice: b,
|
|
2988
2988
|
maxFeePerGas: O,
|
|
2989
2989
|
maxPriorityFeePerGas: q,
|
|
2990
2990
|
nonce: v,
|
|
@@ -3560,7 +3560,7 @@ function vp() {
|
|
|
3560
3560
|
}
|
|
3561
3561
|
x.forEach((k) => Ft.removeItem(k));
|
|
3562
3562
|
}, []);
|
|
3563
|
-
const
|
|
3563
|
+
const b = (x, k, he, y, J) => {
|
|
3564
3564
|
const Q = he ? r.find((ge) => ge.id === he) : void 0, me = {
|
|
3565
3565
|
id: yp(),
|
|
3566
3566
|
text: x,
|
|
@@ -3573,7 +3573,7 @@ function vp() {
|
|
|
3573
3573
|
sender: Q.sender
|
|
3574
3574
|
}
|
|
3575
3575
|
},
|
|
3576
|
-
...
|
|
3576
|
+
...y && { buttons: y },
|
|
3577
3577
|
...J && { actionData: J }
|
|
3578
3578
|
};
|
|
3579
3579
|
return i((ge) => {
|
|
@@ -3583,25 +3583,25 @@ function vp() {
|
|
|
3583
3583
|
}, O = (x, k) => {
|
|
3584
3584
|
i(
|
|
3585
3585
|
(he) => he.map(
|
|
3586
|
-
(
|
|
3586
|
+
(y) => y.id === x && y.actionData ? { ...y, actionData: { ...y.actionData, status: k } } : y
|
|
3587
3587
|
)
|
|
3588
3588
|
);
|
|
3589
3589
|
}, q = (x, k) => {
|
|
3590
3590
|
i(
|
|
3591
|
-
(he) => he.map((
|
|
3591
|
+
(he) => he.map((y) => y.id === x ? { ...y, text: k } : y)
|
|
3592
3592
|
);
|
|
3593
3593
|
}, v = (x) => r.find((k) => k.id === x), S = Ie(() => {
|
|
3594
3594
|
i(s), wn(n, s);
|
|
3595
3595
|
}, [n, s]), B = Ie((x) => {
|
|
3596
3596
|
i((k) => {
|
|
3597
|
-
const he = k.filter((
|
|
3597
|
+
const he = k.filter((y) => !x.includes(y.id));
|
|
3598
3598
|
return he.length > gn ? he.slice(he.length - gn) : he;
|
|
3599
3599
|
});
|
|
3600
3600
|
}, []);
|
|
3601
3601
|
return {
|
|
3602
3602
|
messages: l,
|
|
3603
3603
|
setMessages: i,
|
|
3604
|
-
addMessage:
|
|
3604
|
+
addMessage: b,
|
|
3605
3605
|
updateMessageAction: O,
|
|
3606
3606
|
updateMessageText: q,
|
|
3607
3607
|
getMessageById: v,
|
|
@@ -3620,7 +3620,7 @@ const Gs = ao(void 0), kp = () => {
|
|
|
3620
3620
|
}) => /* @__PURE__ */ G(Gs.Provider, { value: { config: t || null }, children: e });
|
|
3621
3621
|
var Cp = /^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i, Un = Math.ceil, nt = Math.floor, Ke = "[BigNumber Error] ", _o = Ke + "Number primitive has more than 15 significant digits: ", it = 1e14, we = 14, Mn = 9007199254740991, Hn = [1, 10, 100, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10, 1e11, 1e12, 1e13], kt = 1e7, We = 1e9;
|
|
3622
3622
|
function Ys(e) {
|
|
3623
|
-
var t, n, s, o =
|
|
3623
|
+
var t, n, s, o = y.prototype = { constructor: y, toString: null, valueOf: null }, a = new y(1), r = 20, i = 4, l = -7, b = 21, O = -1e7, q = 1e7, v = !1, S = 1, B = 0, x = {
|
|
3624
3624
|
prefix: "",
|
|
3625
3625
|
groupSize: 3,
|
|
3626
3626
|
secondaryGroupSize: 0,
|
|
@@ -3631,9 +3631,9 @@ function Ys(e) {
|
|
|
3631
3631
|
// non-breaking space
|
|
3632
3632
|
suffix: ""
|
|
3633
3633
|
}, k = "0123456789abcdefghijklmnopqrstuvwxyz", he = !0;
|
|
3634
|
-
function
|
|
3634
|
+
function y(c, d) {
|
|
3635
3635
|
var m, C, u, g, E, h, w, I, N = this;
|
|
3636
|
-
if (!(N instanceof
|
|
3636
|
+
if (!(N instanceof y)) return new y(c, d);
|
|
3637
3637
|
if (d == null) {
|
|
3638
3638
|
if (c && c._isBigNumber === !0) {
|
|
3639
3639
|
N.s = c.s, !c.c || c.e > q ? N.c = N.e = null : c.e < O ? N.c = [N.e = 0] : (N.e = c.e, N.c = c.c.slice());
|
|
@@ -3653,10 +3653,10 @@ function Ys(e) {
|
|
|
3653
3653
|
(g = I.indexOf(".")) > -1 && (I = I.replace(".", "")), (E = I.search(/e/i)) > 0 ? (g < 0 && (g = E), g += +I.slice(E + 1), I = I.substring(0, E)) : g < 0 && (g = I.length);
|
|
3654
3654
|
} else {
|
|
3655
3655
|
if (De(d, 2, k.length, "Base"), d == 10 && he)
|
|
3656
|
-
return N = new
|
|
3656
|
+
return N = new y(c), ge(N, r + N.e + 1, i);
|
|
3657
3657
|
if (I = String(c), h = typeof c == "number") {
|
|
3658
3658
|
if (c * 0 != 0) return s(N, I, h, d);
|
|
3659
|
-
if (N.s = 1 / c < 0 ? (I = I.slice(1), -1) : 1,
|
|
3659
|
+
if (N.s = 1 / c < 0 ? (I = I.slice(1), -1) : 1, y.DEBUG && I.replace(/^0\.0*|\./, "").length > 15)
|
|
3660
3660
|
throw Error(_o + c);
|
|
3661
3661
|
} else
|
|
3662
3662
|
N.s = I.charCodeAt(0) === 45 ? (I = I.slice(1), -1) : 1;
|
|
@@ -3678,7 +3678,7 @@ function Ys(e) {
|
|
|
3678
3678
|
for (E = 0; I.charCodeAt(E) === 48; E++) ;
|
|
3679
3679
|
for (w = I.length; I.charCodeAt(--w) === 48; ) ;
|
|
3680
3680
|
if (I = I.slice(E, ++w)) {
|
|
3681
|
-
if (w -= E, h &&
|
|
3681
|
+
if (w -= E, h && y.DEBUG && w > 15 && (c > Mn || c !== nt(c)))
|
|
3682
3682
|
throw Error(_o + N.s * c);
|
|
3683
3683
|
if ((g = g - E - 1) > q)
|
|
3684
3684
|
N.c = N.e = null;
|
|
@@ -3697,11 +3697,11 @@ function Ys(e) {
|
|
|
3697
3697
|
} else
|
|
3698
3698
|
N.c = [N.e = 0];
|
|
3699
3699
|
}
|
|
3700
|
-
|
|
3700
|
+
y.clone = Ys, y.ROUND_UP = 0, y.ROUND_DOWN = 1, y.ROUND_CEIL = 2, y.ROUND_FLOOR = 3, y.ROUND_HALF_UP = 4, y.ROUND_HALF_DOWN = 5, y.ROUND_HALF_EVEN = 6, y.ROUND_HALF_CEIL = 7, y.ROUND_HALF_FLOOR = 8, y.EUCLID = 9, y.config = y.set = function(c) {
|
|
3701
3701
|
var d, m;
|
|
3702
3702
|
if (c != null)
|
|
3703
3703
|
if (typeof c == "object") {
|
|
3704
|
-
if (c.hasOwnProperty(d = "DECIMAL_PLACES") && (m = c[d], De(m, 0, We, d), r = m), c.hasOwnProperty(d = "ROUNDING_MODE") && (m = c[d], De(m, 0, 8, d), i = m), c.hasOwnProperty(d = "EXPONENTIAL_AT") && (m = c[d], m && m.pop ? (De(m[0], -We, 0, d), De(m[1], 0, We, d), l = m[0],
|
|
3704
|
+
if (c.hasOwnProperty(d = "DECIMAL_PLACES") && (m = c[d], De(m, 0, We, d), r = m), c.hasOwnProperty(d = "ROUNDING_MODE") && (m = c[d], De(m, 0, 8, d), i = m), c.hasOwnProperty(d = "EXPONENTIAL_AT") && (m = c[d], m && m.pop ? (De(m[0], -We, 0, d), De(m[1], 0, We, d), l = m[0], b = m[1]) : (De(m, -We, We, d), l = -(b = m < 0 ? -m : m))), c.hasOwnProperty(d = "RANGE"))
|
|
3705
3705
|
if (m = c[d], m && m.pop)
|
|
3706
3706
|
De(m[0], -We, -1, d), De(m[1], 1, We, d), O = m[0], q = m[1];
|
|
3707
3707
|
else if (De(m, -We, We, d), m)
|
|
@@ -3732,7 +3732,7 @@ function Ys(e) {
|
|
|
3732
3732
|
return {
|
|
3733
3733
|
DECIMAL_PLACES: r,
|
|
3734
3734
|
ROUNDING_MODE: i,
|
|
3735
|
-
EXPONENTIAL_AT: [l,
|
|
3735
|
+
EXPONENTIAL_AT: [l, b],
|
|
3736
3736
|
RANGE: [O, q],
|
|
3737
3737
|
CRYPTO: v,
|
|
3738
3738
|
MODULO_MODE: S,
|
|
@@ -3740,9 +3740,9 @@ function Ys(e) {
|
|
|
3740
3740
|
FORMAT: x,
|
|
3741
3741
|
ALPHABET: k
|
|
3742
3742
|
};
|
|
3743
|
-
},
|
|
3743
|
+
}, y.isBigNumber = function(c) {
|
|
3744
3744
|
if (!c || c._isBigNumber !== !0) return !1;
|
|
3745
|
-
if (!
|
|
3745
|
+
if (!y.DEBUG) return !0;
|
|
3746
3746
|
var d, m, C = c.c, u = c.e, g = c.s;
|
|
3747
3747
|
e: if ({}.toString.call(C) == "[object Array]") {
|
|
3748
3748
|
if ((g === 1 || g === -1) && u >= -We && u <= We && u === nt(u)) {
|
|
@@ -3759,18 +3759,18 @@ function Ys(e) {
|
|
|
3759
3759
|
} else if (C === null && u === null && (g === null || g === 1 || g === -1))
|
|
3760
3760
|
return !0;
|
|
3761
3761
|
throw Error(Ke + "Invalid BigNumber: " + c);
|
|
3762
|
-
},
|
|
3762
|
+
}, y.maximum = y.max = function() {
|
|
3763
3763
|
return Q(arguments, -1);
|
|
3764
|
-
},
|
|
3764
|
+
}, y.minimum = y.min = function() {
|
|
3765
3765
|
return Q(arguments, 1);
|
|
3766
|
-
},
|
|
3766
|
+
}, y.random = (function() {
|
|
3767
3767
|
var c = 9007199254740992, d = Math.random() * c & 2097151 ? function() {
|
|
3768
3768
|
return nt(Math.random() * c);
|
|
3769
3769
|
} : function() {
|
|
3770
3770
|
return (Math.random() * 1073741824 | 0) * 8388608 + (Math.random() * 8388608 | 0);
|
|
3771
3771
|
};
|
|
3772
3772
|
return function(m) {
|
|
3773
|
-
var C, u, g, E, h, w = 0, I = [], N = new
|
|
3773
|
+
var C, u, g, E, h, w = 0, I = [], N = new y(a);
|
|
3774
3774
|
if (m == null ? m = r : De(m, 0, We), E = Un(m / we), v)
|
|
3775
3775
|
if (crypto.getRandomValues) {
|
|
3776
3776
|
for (C = crypto.getRandomValues(new Uint32Array(E *= 2)); w < E; )
|
|
@@ -3795,8 +3795,8 @@ function Ys(e) {
|
|
|
3795
3795
|
}
|
|
3796
3796
|
return N.e = g, N.c = I, N;
|
|
3797
3797
|
};
|
|
3798
|
-
})(),
|
|
3799
|
-
for (var c = 1, d = arguments, m = new
|
|
3798
|
+
})(), y.sum = function() {
|
|
3799
|
+
for (var c = 1, d = arguments, m = new y(d[0]); c < d.length; ) m = m.plus(d[c++]);
|
|
3800
3800
|
return m;
|
|
3801
3801
|
}, n = /* @__PURE__ */ (function() {
|
|
3802
3802
|
var c = "0123456789";
|
|
@@ -3810,7 +3810,7 @@ function Ys(e) {
|
|
|
3810
3810
|
}
|
|
3811
3811
|
return function(m, C, u, g, E) {
|
|
3812
3812
|
var h, w, I, N, F, X, oe, de, Ce = m.indexOf("."), xe = r, j = i;
|
|
3813
|
-
for (Ce >= 0 && (N = B, B = 0, m = m.replace(".", ""), de = new
|
|
3813
|
+
for (Ce >= 0 && (N = B, B = 0, m = m.replace(".", ""), de = new y(C), X = de.pow(m.length - Ce), B = N, de.c = d(
|
|
3814
3814
|
gt(et(X.c), X.e, "0"),
|
|
3815
3815
|
10,
|
|
3816
3816
|
u,
|
|
@@ -3856,14 +3856,14 @@ function Ys(e) {
|
|
|
3856
3856
|
return function(C, u, g, E, h) {
|
|
3857
3857
|
var w, I, N, F, X, oe, de, Ce, xe, j, be, Be, qe, ze, st, Ve, at, Fe = C.s == u.s ? 1 : -1, Oe = C.c, ve = u.c;
|
|
3858
3858
|
if (!Oe || !Oe[0] || !ve || !ve[0])
|
|
3859
|
-
return new
|
|
3859
|
+
return new y(
|
|
3860
3860
|
// Return NaN if either NaN, or both Infinity or 0.
|
|
3861
3861
|
!C.s || !u.s || (Oe ? ve && Oe[0] == ve[0] : !ve) ? NaN : (
|
|
3862
3862
|
// Return ±0 if x is ±0 or y is ±Infinity, or return ±Infinity as y is ±0.
|
|
3863
3863
|
Oe && Oe[0] == 0 || !ve ? Fe * 0 : Fe / 0
|
|
3864
3864
|
)
|
|
3865
3865
|
);
|
|
3866
|
-
for (Ce = new
|
|
3866
|
+
for (Ce = new y(Fe), xe = Ce.c = [], I = C.e - u.e, Fe = g + I + 1, h || (h = it, I = ot(C.e / we) - ot(u.e / we), Fe = Fe / we | 0), N = 0; ve[N] == (Oe[N] || 0); N++) ;
|
|
3867
3867
|
if (ve[N] > (Oe[N] || 0) && I--, Fe < 0)
|
|
3868
3868
|
xe.push(1), F = !0;
|
|
3869
3869
|
else {
|
|
@@ -3896,8 +3896,8 @@ function Ys(e) {
|
|
|
3896
3896
|
var u, g, E, h, w;
|
|
3897
3897
|
if (m == null ? m = i : De(m, 0, 8), !c.c) return c.toString();
|
|
3898
3898
|
if (u = c.c[0], E = c.e, d == null)
|
|
3899
|
-
w = et(c.c), w = C == 1 || C == 2 && (E <= l || E >=
|
|
3900
|
-
else if (c = ge(new
|
|
3899
|
+
w = et(c.c), w = C == 1 || C == 2 && (E <= l || E >= b) ? yn(w, E) : gt(w, E, "0");
|
|
3900
|
+
else if (c = ge(new y(c), d, m), g = c.e, w = et(c.c), h = w.length, C == 1 || C == 2 && (d <= g || g <= l)) {
|
|
3901
3901
|
for (; h < d; w += "0", h++) ;
|
|
3902
3902
|
w = yn(w, g);
|
|
3903
3903
|
} else if (d -= E + (C === 2 && g > E), w = gt(w, g, "0"), g + 1 > h) {
|
|
@@ -3907,8 +3907,8 @@ function Ys(e) {
|
|
|
3907
3907
|
return c.s < 0 && u ? "-" + w : w;
|
|
3908
3908
|
}
|
|
3909
3909
|
function Q(c, d) {
|
|
3910
|
-
for (var m, C, u = 1, g = new
|
|
3911
|
-
C = new
|
|
3910
|
+
for (var m, C, u = 1, g = new y(c[0]); u < c.length; u++)
|
|
3911
|
+
C = new y(c[u]), (!C.s || (m = It(g, C)) === d || m === 0 && g.s === d) && (g = C);
|
|
3912
3912
|
return g;
|
|
3913
3913
|
}
|
|
3914
3914
|
function me(c, d, m) {
|
|
@@ -3926,8 +3926,8 @@ function Ys(e) {
|
|
|
3926
3926
|
if (!h && (N = N.replace(c, function(F, X, oe) {
|
|
3927
3927
|
return I = (oe = oe.toLowerCase()) == "x" ? 16 : oe == "b" ? 2 : 8, !w || w == I ? X : F;
|
|
3928
3928
|
}), w && (I = w, N = N.replace(d, "$1").replace(m, "0.$1")), E != N))
|
|
3929
|
-
return new
|
|
3930
|
-
if (
|
|
3929
|
+
return new y(N, I);
|
|
3930
|
+
if (y.DEBUG)
|
|
3931
3931
|
throw Error(Ke + "Not a" + (w ? " base " + w : "") + " number: " + E);
|
|
3932
3932
|
g.s = null;
|
|
3933
3933
|
}
|
|
@@ -3976,39 +3976,39 @@ function Ys(e) {
|
|
|
3976
3976
|
}
|
|
3977
3977
|
function Ee(c) {
|
|
3978
3978
|
var d, m = c.e;
|
|
3979
|
-
return m === null ? c.toString() : (d = et(c.c), d = m <= l || m >=
|
|
3979
|
+
return m === null ? c.toString() : (d = et(c.c), d = m <= l || m >= b ? yn(d, m) : gt(d, m, "0"), c.s < 0 ? "-" + d : d);
|
|
3980
3980
|
}
|
|
3981
3981
|
return o.absoluteValue = o.abs = function() {
|
|
3982
|
-
var c = new
|
|
3982
|
+
var c = new y(this);
|
|
3983
3983
|
return c.s < 0 && (c.s = 1), c;
|
|
3984
3984
|
}, o.comparedTo = function(c, d) {
|
|
3985
|
-
return It(this, new
|
|
3985
|
+
return It(this, new y(c, d));
|
|
3986
3986
|
}, o.decimalPlaces = o.dp = function(c, d) {
|
|
3987
3987
|
var m, C, u, g = this;
|
|
3988
3988
|
if (c != null)
|
|
3989
|
-
return De(c, 0, We), d == null ? d = i : De(d, 0, 8), ge(new
|
|
3989
|
+
return De(c, 0, We), d == null ? d = i : De(d, 0, 8), ge(new y(g), c + g.e + 1, d);
|
|
3990
3990
|
if (!(m = g.c)) return null;
|
|
3991
3991
|
if (C = ((u = m.length - 1) - ot(this.e / we)) * we, u = m[u]) for (; u % 10 == 0; u /= 10, C--) ;
|
|
3992
3992
|
return C < 0 && (C = 0), C;
|
|
3993
3993
|
}, o.dividedBy = o.div = function(c, d) {
|
|
3994
|
-
return t(this, new
|
|
3994
|
+
return t(this, new y(c, d), r, i);
|
|
3995
3995
|
}, o.dividedToIntegerBy = o.idiv = function(c, d) {
|
|
3996
|
-
return t(this, new
|
|
3996
|
+
return t(this, new y(c, d), 0, 1);
|
|
3997
3997
|
}, o.exponentiatedBy = o.pow = function(c, d) {
|
|
3998
3998
|
var m, C, u, g, E, h, w, I, N, F = this;
|
|
3999
|
-
if (c = new
|
|
3999
|
+
if (c = new y(c), c.c && !c.isInteger())
|
|
4000
4000
|
throw Error(Ke + "Exponent not an integer: " + Ee(c));
|
|
4001
|
-
if (d != null && (d = new
|
|
4002
|
-
return N = new
|
|
4001
|
+
if (d != null && (d = new y(d)), h = c.e > 14, !F.c || !F.c[0] || F.c[0] == 1 && !F.e && F.c.length == 1 || !c.c || !c.c[0])
|
|
4002
|
+
return N = new y(Math.pow(+Ee(F), h ? c.s * (2 - bn(c)) : +Ee(c))), d ? N.mod(d) : N;
|
|
4003
4003
|
if (w = c.s < 0, d) {
|
|
4004
|
-
if (d.c ? !d.c[0] : !d.s) return new
|
|
4004
|
+
if (d.c ? !d.c[0] : !d.s) return new y(NaN);
|
|
4005
4005
|
C = !w && F.isInteger() && d.isInteger(), C && (F = F.mod(d));
|
|
4006
4006
|
} else {
|
|
4007
4007
|
if (c.e > 9 && (F.e > 0 || F.e < -1 || (F.e == 0 ? F.c[0] > 1 || h && F.c[1] >= 24e7 : F.c[0] < 8e13 || h && F.c[0] <= 9999975e7)))
|
|
4008
|
-
return g = F.s < 0 && bn(c) ? -0 : 0, F.e > -1 && (g = 1 / g), new
|
|
4008
|
+
return g = F.s < 0 && bn(c) ? -0 : 0, F.e > -1 && (g = 1 / g), new y(w ? 1 / g : g);
|
|
4009
4009
|
B && (g = Un(B / we + 2));
|
|
4010
4010
|
}
|
|
4011
|
-
for (h ? (m = new
|
|
4011
|
+
for (h ? (m = new y(0.5), w && (c.s = 1), I = bn(c)) : (u = Math.abs(+Ee(c)), I = u % 2), N = new y(a); ; ) {
|
|
4012
4012
|
if (I) {
|
|
4013
4013
|
if (N = N.times(F), !N.c) break;
|
|
4014
4014
|
g ? N.c.length > g && (N.c.length = g) : C && (N = N.mod(d));
|
|
@@ -4026,22 +4026,22 @@ function Ys(e) {
|
|
|
4026
4026
|
}
|
|
4027
4027
|
return C ? N : (w && (N = a.div(N)), d ? N.mod(d) : g ? ge(N, B, i, E) : N);
|
|
4028
4028
|
}, o.integerValue = function(c) {
|
|
4029
|
-
var d = new
|
|
4029
|
+
var d = new y(this);
|
|
4030
4030
|
return c == null ? c = i : De(c, 0, 8), ge(d, d.e + 1, c);
|
|
4031
4031
|
}, o.isEqualTo = o.eq = function(c, d) {
|
|
4032
|
-
return It(this, new
|
|
4032
|
+
return It(this, new y(c, d)) === 0;
|
|
4033
4033
|
}, o.isFinite = function() {
|
|
4034
4034
|
return !!this.c;
|
|
4035
4035
|
}, o.isGreaterThan = o.gt = function(c, d) {
|
|
4036
|
-
return It(this, new
|
|
4036
|
+
return It(this, new y(c, d)) > 0;
|
|
4037
4037
|
}, o.isGreaterThanOrEqualTo = o.gte = function(c, d) {
|
|
4038
|
-
return (d = It(this, new
|
|
4038
|
+
return (d = It(this, new y(c, d))) === 1 || d === 0;
|
|
4039
4039
|
}, o.isInteger = function() {
|
|
4040
4040
|
return !!this.c && ot(this.e / we) > this.c.length - 2;
|
|
4041
4041
|
}, o.isLessThan = o.lt = function(c, d) {
|
|
4042
|
-
return It(this, new
|
|
4042
|
+
return It(this, new y(c, d)) < 0;
|
|
4043
4043
|
}, o.isLessThanOrEqualTo = o.lte = function(c, d) {
|
|
4044
|
-
return (d = It(this, new
|
|
4044
|
+
return (d = It(this, new y(c, d))) === -1 || d === 0;
|
|
4045
4045
|
}, o.isNaN = function() {
|
|
4046
4046
|
return !this.s;
|
|
4047
4047
|
}, o.isNegative = function() {
|
|
@@ -4052,14 +4052,14 @@ function Ys(e) {
|
|
|
4052
4052
|
return !!this.c && this.c[0] == 0;
|
|
4053
4053
|
}, o.minus = function(c, d) {
|
|
4054
4054
|
var m, C, u, g, E = this, h = E.s;
|
|
4055
|
-
if (c = new
|
|
4055
|
+
if (c = new y(c, d), d = c.s, !h || !d) return new y(NaN);
|
|
4056
4056
|
if (h != d)
|
|
4057
4057
|
return c.s = -d, E.plus(c);
|
|
4058
4058
|
var w = E.e / we, I = c.e / we, N = E.c, F = c.c;
|
|
4059
4059
|
if (!w || !I) {
|
|
4060
|
-
if (!N || !F) return N ? (c.s = -d, c) : new
|
|
4060
|
+
if (!N || !F) return N ? (c.s = -d, c) : new y(F ? E : NaN);
|
|
4061
4061
|
if (!N[0] || !F[0])
|
|
4062
|
-
return F[0] ? (c.s = -d, c) : new
|
|
4062
|
+
return F[0] ? (c.s = -d, c) : new y(N[0] ? E : (
|
|
4063
4063
|
// IEEE 754 (2008) 6.3: n - n = -0 when rounding to -Infinity
|
|
4064
4064
|
i == 3 ? -0 : 0
|
|
4065
4065
|
));
|
|
@@ -4085,9 +4085,9 @@ function Ys(e) {
|
|
|
4085
4085
|
return N[0] ? me(c, N, I) : (c.s = i == 3 ? -1 : 1, c.c = [c.e = 0], c);
|
|
4086
4086
|
}, o.modulo = o.mod = function(c, d) {
|
|
4087
4087
|
var m, C, u = this;
|
|
4088
|
-
return c = new
|
|
4088
|
+
return c = new y(c, d), !u.c || !c.s || c.c && !c.c[0] ? new y(NaN) : !c.c || u.c && !u.c[0] ? new y(u) : (S == 9 ? (C = c.s, c.s = 1, m = t(u, c, 0, 3), c.s = C, m.s *= C) : m = t(u, c, 0, S), c = u.minus(m.times(c)), !c.c[0] && S == 1 && (c.s = u.s), c);
|
|
4089
4089
|
}, o.multipliedBy = o.times = function(c, d) {
|
|
4090
|
-
var m, C, u, g, E, h, w, I, N, F, X, oe, de, Ce, xe, j = this, be = j.c, Be = (c = new
|
|
4090
|
+
var m, C, u, g, E, h, w, I, N, F, X, oe, de, Ce, xe, j = this, be = j.c, Be = (c = new y(c, d)).c;
|
|
4091
4091
|
if (!be || !Be || !be[0] || !Be[0])
|
|
4092
4092
|
return !j.s || !c.s || be && !be[0] && !Be || Be && !Be[0] && !be ? c.c = c.e = c.s = null : (c.s *= j.s, !be || !Be ? c.c = c.e = null : (c.c = [0], c.e = 0)), c;
|
|
4093
4093
|
for (C = ot(j.e / we) + ot(c.e / we), c.s *= j.s, w = be.length, F = Be.length, w < F && (de = be, be = Be, Be = de, u = w, w = F, F = u), u = w + F, de = []; u--; de.push(0)) ;
|
|
@@ -4098,17 +4098,17 @@ function Ys(e) {
|
|
|
4098
4098
|
}
|
|
4099
4099
|
return m ? ++C : de.splice(0, 1), me(c, de, C);
|
|
4100
4100
|
}, o.negated = function() {
|
|
4101
|
-
var c = new
|
|
4101
|
+
var c = new y(this);
|
|
4102
4102
|
return c.s = -c.s || null, c;
|
|
4103
4103
|
}, o.plus = function(c, d) {
|
|
4104
4104
|
var m, C = this, u = C.s;
|
|
4105
|
-
if (c = new
|
|
4105
|
+
if (c = new y(c, d), d = c.s, !u || !d) return new y(NaN);
|
|
4106
4106
|
if (u != d)
|
|
4107
4107
|
return c.s = -d, C.minus(c);
|
|
4108
4108
|
var g = C.e / we, E = c.e / we, h = C.c, w = c.c;
|
|
4109
4109
|
if (!g || !E) {
|
|
4110
|
-
if (!h || !w) return new
|
|
4111
|
-
if (!h[0] || !w[0]) return w[0] ? c : new
|
|
4110
|
+
if (!h || !w) return new y(u / 0);
|
|
4111
|
+
if (!h[0] || !w[0]) return w[0] ? c : new y(h[0] ? C : u * 0);
|
|
4112
4112
|
}
|
|
4113
4113
|
if (g = ot(g), E = ot(E), h = h.slice(), u = g - E) {
|
|
4114
4114
|
for (u > 0 ? (E = g, m = w) : (u = -u, m = h), m.reverse(); u--; m.push(0)) ;
|
|
@@ -4120,7 +4120,7 @@ function Ys(e) {
|
|
|
4120
4120
|
}, o.precision = o.sd = function(c, d) {
|
|
4121
4121
|
var m, C, u, g = this;
|
|
4122
4122
|
if (c != null && c !== !!c)
|
|
4123
|
-
return De(c, 1, We), d == null ? d = i : De(d, 0, 8), ge(new
|
|
4123
|
+
return De(c, 1, We), d == null ? d = i : De(d, 0, 8), ge(new y(g), c, d);
|
|
4124
4124
|
if (!(m = g.c)) return null;
|
|
4125
4125
|
if (u = m.length - 1, C = u * we + 1, u = m[u]) {
|
|
4126
4126
|
for (; u % 10 == 0; u /= 10, C--) ;
|
|
@@ -4130,10 +4130,10 @@ function Ys(e) {
|
|
|
4130
4130
|
}, o.shiftedBy = function(c) {
|
|
4131
4131
|
return De(c, -Mn, Mn), this.times("1e" + c);
|
|
4132
4132
|
}, o.squareRoot = o.sqrt = function() {
|
|
4133
|
-
var c, d, m, C, u, g = this, E = g.c, h = g.s, w = g.e, I = r + 4, N = new
|
|
4133
|
+
var c, d, m, C, u, g = this, E = g.c, h = g.s, w = g.e, I = r + 4, N = new y("0.5");
|
|
4134
4134
|
if (h !== 1 || !E || !E[0])
|
|
4135
|
-
return new
|
|
4136
|
-
if (h = Math.sqrt(+Ee(g)), h == 0 || h == 1 / 0 ? (d = et(E), (d.length + w) % 2 == 0 && (d += "0"), h = Math.sqrt(+d), w = ot((w + 1) / 2) - (w < 0 || w % 2), h == 1 / 0 ? d = "5e" + w : (d = h.toExponential(), d = d.slice(0, d.indexOf("e") + 1) + w), m = new
|
|
4135
|
+
return new y(!h || h < 0 && (!E || E[0]) ? NaN : E ? g : 1 / 0);
|
|
4136
|
+
if (h = Math.sqrt(+Ee(g)), h == 0 || h == 1 / 0 ? (d = et(E), (d.length + w) % 2 == 0 && (d += "0"), h = Math.sqrt(+d), w = ot((w + 1) / 2) - (w < 0 || w % 2), h == 1 / 0 ? d = "5e" + w : (d = h.toExponential(), d = d.slice(0, d.indexOf("e") + 1) + w), m = new y(d)) : m = new y(h + ""), m.c[0]) {
|
|
4137
4137
|
for (w = m.e, h = w + I, h < 3 && (h = 0); ; )
|
|
4138
4138
|
if (u = m, m = N.times(u.plus(t(g, u, I, 1))), et(u.c).slice(0, h) === (d = et(m.c)).slice(0, h))
|
|
4139
4139
|
if (m.e < w && --h, d = d.slice(h - 3, h + 1), d == "9999" || !C && d == "4999") {
|
|
@@ -4172,10 +4172,10 @@ function Ys(e) {
|
|
|
4172
4172
|
return (m.prefix || "") + C + (m.suffix || "");
|
|
4173
4173
|
}, o.toFraction = function(c) {
|
|
4174
4174
|
var d, m, C, u, g, E, h, w, I, N, F, X, oe = this, de = oe.c;
|
|
4175
|
-
if (c != null && (h = new
|
|
4175
|
+
if (c != null && (h = new y(c), !h.isInteger() && (h.c || h.s !== 1) || h.lt(a)))
|
|
4176
4176
|
throw Error(Ke + "Argument " + (h.isInteger() ? "out of range: " : "not an integer: ") + Ee(h));
|
|
4177
|
-
if (!de) return new
|
|
4178
|
-
for (d = new
|
|
4177
|
+
if (!de) return new y(oe);
|
|
4178
|
+
for (d = new y(a), I = m = new y(a), C = w = new y(a), X = et(de), g = d.e = X.length - oe.e - 1, d.c[0] = Hn[(E = g % we) < 0 ? we + E : E], c = !c || h.comparedTo(d) > 0 ? g > 0 ? d : I : h, E = q, q = 1 / 0, h = new y(X), w.c[0] = 0; N = t(h, d, 0, 1), u = m.plus(N.times(C)), u.comparedTo(c) != 1; )
|
|
4179
4179
|
m = C, C = u, I = w.plus(N.times(u = I)), w = u, d = h.minus(N.times(u = d)), h = u;
|
|
4180
4180
|
return u = t(c.minus(m), C, 0, 1), w = w.plus(u.times(I)), m = m.plus(u.times(C)), w.s = I.s = oe.s, g = g * 2, F = t(I, C, g, i).minus(oe).abs().comparedTo(
|
|
4181
4181
|
t(w, m, g, i).minus(oe).abs()
|
|
@@ -4186,10 +4186,10 @@ function Ys(e) {
|
|
|
4186
4186
|
return c != null && De(c, 1, We), J(this, c, d, 2);
|
|
4187
4187
|
}, o.toString = function(c) {
|
|
4188
4188
|
var d, m = this, C = m.s, u = m.e;
|
|
4189
|
-
return u === null ? C ? (d = "Infinity", C < 0 && (d = "-" + d)) : d = "NaN" : (c == null ? d = u <= l || u >=
|
|
4189
|
+
return u === null ? C ? (d = "Infinity", C < 0 && (d = "-" + d)) : d = "NaN" : (c == null ? d = u <= l || u >= b ? yn(et(m.c), u) : gt(et(m.c), u, "0") : c === 10 && he ? (m = ge(new y(m), r + u + 1, i), d = gt(et(m.c), m.e, "0")) : (De(c, 2, k.length, "Base"), d = n(gt(et(m.c), u, "0"), 10, c, C, !0)), C < 0 && m.c[0] && (d = "-" + d)), d;
|
|
4190
4190
|
}, o.valueOf = o.toJSON = function() {
|
|
4191
4191
|
return Ee(this);
|
|
4192
|
-
}, o._isBigNumber = !0, o[Symbol.toStringTag] = "BigNumber", o[/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")] = o.valueOf, e != null &&
|
|
4192
|
+
}, o._isBigNumber = !0, o[Symbol.toStringTag] = "BigNumber", o[/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")] = o.valueOf, e != null && y.set(e), y;
|
|
4193
4193
|
}
|
|
4194
4194
|
function ot(e) {
|
|
4195
4195
|
var t = e | 0;
|
|
@@ -4204,14 +4204,14 @@ function et(e) {
|
|
|
4204
4204
|
return a.slice(0, o + 1 || 1);
|
|
4205
4205
|
}
|
|
4206
4206
|
function It(e, t) {
|
|
4207
|
-
var n, s, o = e.c, a = t.c, r = e.s, i = t.s, l = e.e,
|
|
4207
|
+
var n, s, o = e.c, a = t.c, r = e.s, i = t.s, l = e.e, b = t.e;
|
|
4208
4208
|
if (!r || !i) return null;
|
|
4209
4209
|
if (n = o && !o[0], s = a && !a[0], n || s) return n ? s ? 0 : -i : r;
|
|
4210
4210
|
if (r != i) return r;
|
|
4211
|
-
if (n = r < 0, s = l ==
|
|
4212
|
-
if (!s) return l >
|
|
4213
|
-
for (i = (l = o.length) < (
|
|
4214
|
-
return l ==
|
|
4211
|
+
if (n = r < 0, s = l == b, !o || !a) return s ? 0 : !o ^ n ? 1 : -1;
|
|
4212
|
+
if (!s) return l > b ^ n ? 1 : -1;
|
|
4213
|
+
for (i = (l = o.length) < (b = a.length) ? l : b, r = 0; r < i; r++) if (o[r] != a[r]) return o[r] > a[r] ^ n ? 1 : -1;
|
|
4214
|
+
return l == b ? 0 : l > b ^ n ? 1 : -1;
|
|
4215
4215
|
}
|
|
4216
4216
|
function De(e, t, n, s) {
|
|
4217
4217
|
if (e < t || e > n || e !== nt(e))
|
|
@@ -4285,8 +4285,8 @@ class jt {
|
|
|
4285
4285
|
i = await a.json();
|
|
4286
4286
|
} catch {
|
|
4287
4287
|
try {
|
|
4288
|
-
const
|
|
4289
|
-
|
|
4288
|
+
const b = await a.text();
|
|
4289
|
+
b && (i = { message: b });
|
|
4290
4290
|
} catch {
|
|
4291
4291
|
}
|
|
4292
4292
|
}
|
|
@@ -4326,23 +4326,23 @@ async function Qe(e) {
|
|
|
4326
4326
|
exclude_unverified_contracts: a ?? !1
|
|
4327
4327
|
};
|
|
4328
4328
|
s && (i.token_addresses = s);
|
|
4329
|
-
const
|
|
4329
|
+
const b = (await rn.get(
|
|
4330
4330
|
`/api/v2.2/wallets/${encodeURIComponent(t)}/tokens`,
|
|
4331
4331
|
{
|
|
4332
4332
|
query: i,
|
|
4333
4333
|
headers: an(r)
|
|
4334
4334
|
}
|
|
4335
4335
|
)).data;
|
|
4336
|
-
if (
|
|
4337
|
-
|
|
4336
|
+
if (b?.result?.length > 0) {
|
|
4337
|
+
b.result = b.result.filter(
|
|
4338
4338
|
(O) => new ie(O?.balance || 0).gt(0)
|
|
4339
|
-
),
|
|
4339
|
+
), b.result = b.result.map((O) => ({
|
|
4340
4340
|
...O,
|
|
4341
4341
|
token_address: O.token_address === hp ? Ge : O.token_address
|
|
4342
4342
|
}));
|
|
4343
4343
|
try {
|
|
4344
|
-
if (
|
|
4345
|
-
const O = Hs(n) ?? n, q =
|
|
4344
|
+
if (b.result.length > 0) {
|
|
4345
|
+
const O = Hs(n) ?? n, q = b.result.map((S) => S.token_address), v = await Js.get(
|
|
4346
4346
|
`/keyrings/tokens/${O}/v2`,
|
|
4347
4347
|
{ query: { addresses: q.join(",") } }
|
|
4348
4348
|
);
|
|
@@ -4353,7 +4353,7 @@ async function Qe(e) {
|
|
|
4353
4353
|
B.address.toLowerCase(),
|
|
4354
4354
|
parseFloat(String(B.price))
|
|
4355
4355
|
);
|
|
4356
|
-
|
|
4356
|
+
b.result = b.result.map((B) => {
|
|
4357
4357
|
const x = S.get(B.token_address.toLowerCase());
|
|
4358
4358
|
if (x == null) return B;
|
|
4359
4359
|
const k = ie(B.balance_formatted || "0").multipliedBy(x).toNumber();
|
|
@@ -4362,7 +4362,7 @@ async function Qe(e) {
|
|
|
4362
4362
|
usd_price: x,
|
|
4363
4363
|
usd_value: k
|
|
4364
4364
|
};
|
|
4365
|
-
}),
|
|
4365
|
+
}), b.result = b.result.filter(
|
|
4366
4366
|
(B) => B.usd_value == null || new ie(B.usd_value).gte(
|
|
4367
4367
|
Ep
|
|
4368
4368
|
)
|
|
@@ -4375,7 +4375,7 @@ async function Qe(e) {
|
|
|
4375
4375
|
}
|
|
4376
4376
|
return {
|
|
4377
4377
|
success: !0,
|
|
4378
|
-
data:
|
|
4378
|
+
data: b
|
|
4379
4379
|
};
|
|
4380
4380
|
} catch (r) {
|
|
4381
4381
|
const i = r instanceof Error ? r.message : "Unknown error";
|
|
@@ -4412,7 +4412,7 @@ async function Zo(e) {
|
|
|
4412
4412
|
console.warn(
|
|
4413
4413
|
"⚠️ Pantograph returned no result, falling back to Moralis API"
|
|
4414
4414
|
);
|
|
4415
|
-
const l = ln(), [
|
|
4415
|
+
const l = ln(), [b, O] = await Promise.allSettled([
|
|
4416
4416
|
rn.get("/api/v2.2/erc20/metadata", {
|
|
4417
4417
|
query: { chain: n, addresses: [t] },
|
|
4418
4418
|
headers: an(l)
|
|
@@ -4421,7 +4421,7 @@ async function Zo(e) {
|
|
|
4421
4421
|
query: { chain: n, include: "percent_change" },
|
|
4422
4422
|
headers: an(l)
|
|
4423
4423
|
})
|
|
4424
|
-
]), q =
|
|
4424
|
+
]), q = b.status === "fulfilled" ? b.value.data : [];
|
|
4425
4425
|
if (!q || q.length === 0)
|
|
4426
4426
|
return { success: !1, error: "Token metadata not found" };
|
|
4427
4427
|
const v = q[0], S = O.status === "fulfilled" ? O.value.data : void 0;
|
|
@@ -4672,12 +4672,12 @@ async function Wn(e) {
|
|
|
4672
4672
|
data: S.data
|
|
4673
4673
|
};
|
|
4674
4674
|
} catch (l) {
|
|
4675
|
-
let
|
|
4675
|
+
let b = l instanceof Error ? l.message : "Unknown error";
|
|
4676
4676
|
const O = l;
|
|
4677
|
-
O.data?.errorMessage ?
|
|
4677
|
+
O.data?.errorMessage ? b = O.data.errorMessage : O.response?.data?.errorMessage ? b = O.response.data.errorMessage : O.data?.message ? b = O.data.message : O.response?.data?.message && (b = O.response.data.message);
|
|
4678
4678
|
const q = O.status || O.response?.status || O.statusCode || O.data?.status;
|
|
4679
4679
|
return console.error("📋 Error details:", {
|
|
4680
|
-
errorMessage:
|
|
4680
|
+
errorMessage: b,
|
|
4681
4681
|
errorCode: O.data?.errorCode,
|
|
4682
4682
|
errorId: O.data?.errorId,
|
|
4683
4683
|
status: q,
|
|
@@ -4691,7 +4691,7 @@ async function Wn(e) {
|
|
|
4691
4691
|
success: !1,
|
|
4692
4692
|
error: l instanceof Error ? l.message : "Unknown error",
|
|
4693
4693
|
status: q,
|
|
4694
|
-
errorMessage:
|
|
4694
|
+
errorMessage: b,
|
|
4695
4695
|
errorCode: O.data?.errorCode,
|
|
4696
4696
|
errorId: O.data?.errorId
|
|
4697
4697
|
};
|
|
@@ -4838,6 +4838,14 @@ const Dp = ({ content: e }) => {
|
|
|
4838
4838
|
required: !1,
|
|
4839
4839
|
editable: !1
|
|
4840
4840
|
},
|
|
4841
|
+
{
|
|
4842
|
+
key: "decimals",
|
|
4843
|
+
label: "fieldDecimals",
|
|
4844
|
+
type: "number",
|
|
4845
|
+
placeholder: "18",
|
|
4846
|
+
required: !1,
|
|
4847
|
+
editable: !1
|
|
4848
|
+
},
|
|
4841
4849
|
{
|
|
4842
4850
|
key: "to_address",
|
|
4843
4851
|
label: "fieldToAddress",
|
|
@@ -4853,14 +4861,6 @@ const Dp = ({ content: e }) => {
|
|
|
4853
4861
|
placeholder: "0.0",
|
|
4854
4862
|
required: !0,
|
|
4855
4863
|
validation: "amount"
|
|
4856
|
-
},
|
|
4857
|
-
{
|
|
4858
|
-
key: "decimals",
|
|
4859
|
-
label: "fieldDecimals",
|
|
4860
|
-
type: "number",
|
|
4861
|
-
placeholder: "18",
|
|
4862
|
-
required: !1,
|
|
4863
|
-
editable: !1
|
|
4864
4864
|
}
|
|
4865
4865
|
]
|
|
4866
4866
|
},
|
|
@@ -5083,83 +5083,83 @@ const Mp = ({
|
|
|
5083
5083
|
tokenInfo: a,
|
|
5084
5084
|
nftInfo: r
|
|
5085
5085
|
}) => {
|
|
5086
|
-
const { t: i, ti: l } = Sn(),
|
|
5087
|
-
if (!
|
|
5088
|
-
const
|
|
5089
|
-
return
|
|
5090
|
-
|
|
5091
|
-
}),
|
|
5086
|
+
const { t: i, ti: l } = Sn(), b = Lp[e], [O, q] = Xe(() => {
|
|
5087
|
+
if (!b) return {};
|
|
5088
|
+
const y = {};
|
|
5089
|
+
return b.fields.forEach((J) => {
|
|
5090
|
+
y[J.key] = t[J.key] || "";
|
|
5091
|
+
}), y;
|
|
5092
5092
|
}), [v] = Xe(() => ["send_native", "send_token", "swap_token"].includes(
|
|
5093
5093
|
e
|
|
5094
5094
|
) && !a && O.contract_address ? i("formTokenNotFound") : null), [S, B] = Xe(() => {
|
|
5095
|
-
const
|
|
5095
|
+
const y = {};
|
|
5096
5096
|
if (["send_native", "send_token", "swap_token"].includes(
|
|
5097
5097
|
e
|
|
5098
5098
|
) && a) {
|
|
5099
5099
|
const Q = parseFloat(a.balanceFormatted || "0");
|
|
5100
5100
|
if (Q <= 0)
|
|
5101
|
-
|
|
5101
|
+
y.amount = l("formNoBalance", {
|
|
5102
5102
|
symbol: a.symbol ?? ""
|
|
5103
5103
|
});
|
|
5104
5104
|
else {
|
|
5105
5105
|
const me = t.amount?.trim();
|
|
5106
|
-
me && Vn(me) && parseFloat(me) > Q && (
|
|
5106
|
+
me && Vn(me) && parseFloat(me) > Q && (y.amount = l("formInsufficientBalance", {
|
|
5107
5107
|
balance: a.balanceFormatted,
|
|
5108
5108
|
symbol: a.symbol ?? ""
|
|
5109
5109
|
}));
|
|
5110
5110
|
}
|
|
5111
5111
|
}
|
|
5112
|
-
return
|
|
5112
|
+
return y;
|
|
5113
5113
|
}), x = Ie(
|
|
5114
|
-
(
|
|
5115
|
-
q((Q) => ({ ...Q, [
|
|
5114
|
+
(y, J) => {
|
|
5115
|
+
q((Q) => ({ ...Q, [y]: J })), S[y] && B((Q) => {
|
|
5116
5116
|
const me = { ...Q };
|
|
5117
|
-
return delete me[
|
|
5117
|
+
return delete me[y], me;
|
|
5118
5118
|
});
|
|
5119
5119
|
},
|
|
5120
5120
|
[S]
|
|
5121
5121
|
), k = Ie(() => {
|
|
5122
|
-
if (!
|
|
5123
|
-
const
|
|
5124
|
-
if (
|
|
5122
|
+
if (!b) return !1;
|
|
5123
|
+
const y = {};
|
|
5124
|
+
if (b.fields.forEach((J) => {
|
|
5125
5125
|
const Q = O[J.key]?.trim() || "";
|
|
5126
5126
|
if (J.required && !Q && !(e === "send_nft" && J.key === "amount")) {
|
|
5127
|
-
|
|
5127
|
+
y[J.key] = l("formFieldRequired", {
|
|
5128
5128
|
field: i(J.label)
|
|
5129
5129
|
});
|
|
5130
5130
|
return;
|
|
5131
5131
|
}
|
|
5132
5132
|
if (Q) {
|
|
5133
|
-
if (J.validation === "address" && !Up(Q) && (
|
|
5133
|
+
if (J.validation === "address" && !Up(Q) && (y[J.key] = i("formInvalidAddress")), J.validation === "amount" && !Vn(Q) && (y[J.key] = i("formMustBePositive")), J.key === "amount" && Q && Vn(Q) && a?.balanceFormatted) {
|
|
5134
5134
|
const me = parseFloat(Q), ge = parseFloat(a.balanceFormatted);
|
|
5135
|
-
me > ge && (
|
|
5135
|
+
me > ge && (y[J.key] = l("formInsufficientBalance", {
|
|
5136
5136
|
balance: a.balanceFormatted,
|
|
5137
5137
|
symbol: a.symbol ?? ""
|
|
5138
5138
|
}));
|
|
5139
5139
|
}
|
|
5140
|
-
J.validation === "positive_number" && (isNaN(Number(Q)) || Number(Q) < 0) && (
|
|
5140
|
+
J.validation === "positive_number" && (isNaN(Number(Q)) || Number(Q) < 0) && (y[J.key] = i("formMustBeValidNumber"));
|
|
5141
5141
|
}
|
|
5142
5142
|
}), e === "send_nft" && O.token_standard?.toUpperCase() === "ERC1155") {
|
|
5143
5143
|
const J = O.amount?.trim();
|
|
5144
5144
|
if (!J)
|
|
5145
|
-
|
|
5145
|
+
y.amount = l("formFieldRequired", {
|
|
5146
5146
|
field: i("fieldAmount")
|
|
5147
5147
|
});
|
|
5148
5148
|
else if (!/^\d+$/.test(J) || parseInt(J, 10) < 1)
|
|
5149
|
-
|
|
5149
|
+
y.amount = i("formMustBePositiveInteger");
|
|
5150
5150
|
else {
|
|
5151
5151
|
const Q = parseInt(t.maxAmount || "0", 10);
|
|
5152
|
-
Q > 0 && parseInt(J, 10) > Q && (
|
|
5152
|
+
Q > 0 && parseInt(J, 10) > Q && (y.amount = l("formAmountExceedsNft", {
|
|
5153
5153
|
max: String(Q)
|
|
5154
5154
|
}));
|
|
5155
5155
|
}
|
|
5156
5156
|
}
|
|
5157
|
-
return B(
|
|
5158
|
-
}, [
|
|
5157
|
+
return B(y), Object.keys(y).length === 0;
|
|
5158
|
+
}, [b, O, a, e, t, i, l]), he = Ie(() => {
|
|
5159
5159
|
k() && n(e, O);
|
|
5160
5160
|
}, [k, n, e, O]);
|
|
5161
|
-
return
|
|
5162
|
-
/* @__PURE__ */ G("div", { className: "action-form-title", children: /* @__PURE__ */ G("span", { children: i(
|
|
5161
|
+
return b ? /* @__PURE__ */ Ae("div", { className: "action-form", children: [
|
|
5162
|
+
/* @__PURE__ */ G("div", { className: "action-form-title", children: /* @__PURE__ */ G("span", { children: i(b.label) }) }),
|
|
5163
5163
|
v && /* @__PURE__ */ Ae("div", { className: "action-form-general-error", children: [
|
|
5164
5164
|
"⚠️ ",
|
|
5165
5165
|
v
|
|
@@ -5202,18 +5202,18 @@ const Mp = ({
|
|
|
5202
5202
|
src: r.image,
|
|
5203
5203
|
alt: r.name,
|
|
5204
5204
|
className: "nft-info-image",
|
|
5205
|
-
onError: (
|
|
5206
|
-
|
|
5205
|
+
onError: (y) => {
|
|
5206
|
+
y.target.style.display = "none";
|
|
5207
5207
|
}
|
|
5208
5208
|
}
|
|
5209
5209
|
) }),
|
|
5210
|
-
/* @__PURE__ */ G("div", { className: "action-form-fields", children:
|
|
5210
|
+
/* @__PURE__ */ G("div", { className: "action-form-fields", children: b.fields.map((y) => y.hidden || y.key === "amount" && e === "send_nft" && O.token_standard?.toUpperCase() !== "ERC1155" || ["decimals"].includes(y.key) && e === "send_token" && t.decimals ? null : /* @__PURE__ */ Ae("div", { className: "action-form-field", children: [
|
|
5211
5211
|
/* @__PURE__ */ Ae("div", { className: "action-form-field-header", children: [
|
|
5212
5212
|
/* @__PURE__ */ Ae("div", { className: "action-form-field-label", children: [
|
|
5213
|
-
i(
|
|
5214
|
-
|
|
5213
|
+
i(y.label),
|
|
5214
|
+
y.required && " *"
|
|
5215
5215
|
] }),
|
|
5216
|
-
|
|
5216
|
+
y.key === "amount" && a && e !== "send_nft" && /* @__PURE__ */ Ae("div", { className: "action-form-pct-btns", children: [
|
|
5217
5217
|
[25, 50, 75].map((J) => /* @__PURE__ */ Ae(
|
|
5218
5218
|
"button",
|
|
5219
5219
|
{
|
|
@@ -5244,34 +5244,34 @@ const Mp = ({
|
|
|
5244
5244
|
] })
|
|
5245
5245
|
] }),
|
|
5246
5246
|
(() => {
|
|
5247
|
-
const J =
|
|
5248
|
-
S[
|
|
5247
|
+
const J = y.editable === !1 && !!t[y.key], Q = o || J, me = [
|
|
5248
|
+
S[y.key] ? "error" : "",
|
|
5249
5249
|
J ? "readonly" : ""
|
|
5250
5250
|
].filter(Boolean).join(" ");
|
|
5251
|
-
return
|
|
5251
|
+
return y.type === "address" ? /* @__PURE__ */ G(
|
|
5252
5252
|
"textarea",
|
|
5253
5253
|
{
|
|
5254
5254
|
rows: 2,
|
|
5255
|
-
placeholder:
|
|
5256
|
-
value: O[
|
|
5257
|
-
onChange: (ge) => x(
|
|
5255
|
+
placeholder: y.placeholder,
|
|
5256
|
+
value: O[y.key] || "",
|
|
5257
|
+
onChange: (ge) => x(y.key, ge.target.value),
|
|
5258
5258
|
className: me,
|
|
5259
5259
|
disabled: Q
|
|
5260
5260
|
}
|
|
5261
5261
|
) : /* @__PURE__ */ G(
|
|
5262
5262
|
"input",
|
|
5263
5263
|
{
|
|
5264
|
-
type:
|
|
5265
|
-
placeholder:
|
|
5266
|
-
value: O[
|
|
5267
|
-
onChange: (ge) => x(
|
|
5264
|
+
type: y.type === "number" ? "number" : "text",
|
|
5265
|
+
placeholder: y.placeholder,
|
|
5266
|
+
value: O[y.key] || "",
|
|
5267
|
+
onChange: (ge) => x(y.key, ge.target.value),
|
|
5268
5268
|
className: me,
|
|
5269
5269
|
disabled: Q
|
|
5270
5270
|
}
|
|
5271
5271
|
);
|
|
5272
5272
|
})(),
|
|
5273
|
-
S[
|
|
5274
|
-
] },
|
|
5273
|
+
S[y.key] && /* @__PURE__ */ G("span", { className: "field-error", children: S[y.key] })
|
|
5274
|
+
] }, y.key)) }),
|
|
5275
5275
|
/* @__PURE__ */ Ae("div", { className: "action-form-actions", children: [
|
|
5276
5276
|
/* @__PURE__ */ G(
|
|
5277
5277
|
"button",
|
|
@@ -5304,7 +5304,7 @@ const Mp = ({
|
|
|
5304
5304
|
const a = e.current;
|
|
5305
5305
|
if (!a) return;
|
|
5306
5306
|
const r = () => {
|
|
5307
|
-
const { scrollTop: i, scrollHeight: l, clientHeight:
|
|
5307
|
+
const { scrollTop: i, scrollHeight: l, clientHeight: b } = a, O = l - i - b;
|
|
5308
5308
|
s(O > t);
|
|
5309
5309
|
};
|
|
5310
5310
|
return a.addEventListener("scroll", r, { passive: !0 }), r(), () => {
|
|
@@ -5408,9 +5408,9 @@ Always respond with a valid JSON object:
|
|
|
5408
5408
|
- **CRITICAL - LANGUAGE**: Always respond in the SAME language the user writes in. English → English. Vietnamese → Vietnamese. NEVER use Chinese or any other language unless the user wrote in that language.`;
|
|
5409
5409
|
const i = a && a.length > 0 ? `
|
|
5410
5410
|
## USER'S CURRENT WALLET BALANCE:
|
|
5411
|
-
${a.map((
|
|
5412
|
-
const O =
|
|
5413
|
-
return `- ${
|
|
5411
|
+
${a.map((b) => {
|
|
5412
|
+
const O = b.usd_value !== void 0 ? ` (~$${b.usd_value.toFixed(2)})` : "";
|
|
5413
|
+
return `- ${b.name} (${b.symbol}): ${b.balance_formatted}${O}${b.native_token ? " [native]" : ` [${b.token_address}]`}`;
|
|
5414
5414
|
}).join(
|
|
5415
5415
|
`
|
|
5416
5416
|
`
|
|
@@ -5418,9 +5418,9 @@ ${a.map((y) => {
|
|
|
5418
5418
|
Use this balance data to accurately answer balance questions and to pre-fill token parameters in actions (contract_address, decimals, symbol). NEVER ask the user to provide token info that is already available above.
|
|
5419
5419
|
` : "", l = r && r.length > 0 ? `
|
|
5420
5420
|
## USER'S NFT COLLECTION:
|
|
5421
|
-
${r.map((
|
|
5422
|
-
const O =
|
|
5423
|
-
return `- ${
|
|
5421
|
+
${r.map((b) => {
|
|
5422
|
+
const O = b.contract_type === "ERC1155" ? ` (x${b.amount})` : "";
|
|
5423
|
+
return `- ${b.name}${O} | ${b.contract_type} | contract: ${b.token_address} | tokenId: ${b.token_id}`;
|
|
5424
5424
|
}).join(
|
|
5425
5425
|
`
|
|
5426
5426
|
`
|
|
@@ -5788,10 +5788,10 @@ function qp(e, t, n) {
|
|
|
5788
5788
|
if (!s) throw new Error("Token contract address is required");
|
|
5789
5789
|
if (!o) throw new Error("Recipient address is required");
|
|
5790
5790
|
if (!a) throw new Error("Amount is required");
|
|
5791
|
-
const l = parseInt(r) || 18,
|
|
5791
|
+
const l = parseInt(r) || 18, b = wt(a, l), O = Et({
|
|
5792
5792
|
abi: Fn,
|
|
5793
5793
|
functionName: "transfer",
|
|
5794
|
-
args: [o,
|
|
5794
|
+
args: [o, b]
|
|
5795
5795
|
});
|
|
5796
5796
|
return {
|
|
5797
5797
|
from: t,
|
|
@@ -5880,7 +5880,7 @@ async function Gn(e) {
|
|
|
5880
5880
|
const i = Date.now();
|
|
5881
5881
|
for (; Date.now() - i < o; ) {
|
|
5882
5882
|
try {
|
|
5883
|
-
const
|
|
5883
|
+
const b = await (await fetch(r, {
|
|
5884
5884
|
method: "POST",
|
|
5885
5885
|
headers: { "Content-Type": "application/json" },
|
|
5886
5886
|
body: JSON.stringify({
|
|
@@ -5890,8 +5890,8 @@ async function Gn(e) {
|
|
|
5890
5890
|
params: [t]
|
|
5891
5891
|
})
|
|
5892
5892
|
})).json();
|
|
5893
|
-
if (
|
|
5894
|
-
const O =
|
|
5893
|
+
if (b.result) {
|
|
5894
|
+
const O = b.result;
|
|
5895
5895
|
return {
|
|
5896
5896
|
status: O.status === "0x1" ? "success" : "fail",
|
|
5897
5897
|
blockNumber: O.blockNumber,
|
|
@@ -5923,7 +5923,7 @@ async function Yn(e) {
|
|
|
5923
5923
|
abi: Fn,
|
|
5924
5924
|
functionName: "allowance",
|
|
5925
5925
|
args: [n, s]
|
|
5926
|
-
}),
|
|
5926
|
+
}), b = await (await fetch(r, {
|
|
5927
5927
|
method: "POST",
|
|
5928
5928
|
headers: { "Content-Type": "application/json" },
|
|
5929
5929
|
body: JSON.stringify({
|
|
@@ -5933,21 +5933,28 @@ async function Yn(e) {
|
|
|
5933
5933
|
params: [{ to: t, data: i }, "latest"]
|
|
5934
5934
|
})
|
|
5935
5935
|
})).json();
|
|
5936
|
-
return
|
|
5936
|
+
return b.result && b.result !== "0x" ? BigInt(b.result) : BigInt(0);
|
|
5937
5937
|
} catch (i) {
|
|
5938
5938
|
return console.warn("checkAllowance failed:", i), BigInt(0);
|
|
5939
5939
|
}
|
|
5940
5940
|
}
|
|
5941
5941
|
function vn(e) {
|
|
5942
|
-
const {
|
|
5942
|
+
const {
|
|
5943
|
+
tokenAddress: t,
|
|
5944
|
+
spenderAddress: n,
|
|
5945
|
+
fromAddress: s,
|
|
5946
|
+
chainId: o,
|
|
5947
|
+
tokenSymbol: a,
|
|
5948
|
+
amount: r
|
|
5949
|
+
} = e, i = r && BigInt(r) > 0n ? BigInt(r) : zt, l = Et({
|
|
5943
5950
|
abi: Fn,
|
|
5944
5951
|
functionName: "approve",
|
|
5945
|
-
args: [n,
|
|
5952
|
+
args: [n, i]
|
|
5946
5953
|
});
|
|
5947
5954
|
return {
|
|
5948
5955
|
from: s,
|
|
5949
5956
|
to: t,
|
|
5950
|
-
data:
|
|
5957
|
+
data: l,
|
|
5951
5958
|
value: "0",
|
|
5952
5959
|
chainId: o,
|
|
5953
5960
|
description: `Approve ${a || "token"} for swap`
|
|
@@ -5965,9 +5972,9 @@ function Xp(e, t, n) {
|
|
|
5965
5972
|
if (!s) throw new Error("NFT contract address is required");
|
|
5966
5973
|
if (!o) throw new Error("Token ID is required");
|
|
5967
5974
|
if (!a) throw new Error("Recipient address is required");
|
|
5968
|
-
const
|
|
5975
|
+
const b = (r || "ERC721").toUpperCase(), O = BigInt(o);
|
|
5969
5976
|
let q, v;
|
|
5970
|
-
if (
|
|
5977
|
+
if (b === "ERC1155") {
|
|
5971
5978
|
const S = BigInt(i || "1");
|
|
5972
5979
|
q = Et({
|
|
5973
5980
|
abi: Gp,
|
|
@@ -6020,7 +6027,7 @@ async function en(e) {
|
|
|
6020
6027
|
if (!i)
|
|
6021
6028
|
return console.warn(`No RPC endpoint for chain ${a}`), new ie(0);
|
|
6022
6029
|
try {
|
|
6023
|
-
const [l,
|
|
6030
|
+
const [l, b] = await Promise.all([
|
|
6024
6031
|
fetch(i, {
|
|
6025
6032
|
method: "POST",
|
|
6026
6033
|
headers: { "Content-Type": "application/json" },
|
|
@@ -6050,7 +6057,7 @@ async function en(e) {
|
|
|
6050
6057
|
})
|
|
6051
6058
|
]), [O, q] = await Promise.all([
|
|
6052
6059
|
l.json(),
|
|
6053
|
-
|
|
6060
|
+
b.json()
|
|
6054
6061
|
]), v = O.result ? new ie(BigInt(O.result).toString()) : new ie(0), S = q.result ? new ie(BigInt(q.result).toString()) : new ie(0);
|
|
6055
6062
|
return v.times(S).times(1.1);
|
|
6056
6063
|
} catch (l) {
|
|
@@ -6081,14 +6088,14 @@ var ne = {}, tn = { exports: {} }, _p = tn.exports, $o;
|
|
|
6081
6088
|
function Zp() {
|
|
6082
6089
|
return $o || ($o = 1, (function(e, t) {
|
|
6083
6090
|
(function(n, s) {
|
|
6084
|
-
var o = "1.0.39", a = "", r = "?", i = "function", l = "undefined",
|
|
6085
|
-
var
|
|
6086
|
-
for (var
|
|
6087
|
-
L[
|
|
6088
|
-
return
|
|
6091
|
+
var o = "1.0.39", a = "", r = "?", i = "function", l = "undefined", b = "object", O = "string", q = "major", v = "model", S = "name", B = "type", x = "vendor", k = "version", he = "architecture", y = "console", J = "mobile", Q = "tablet", me = "smarttv", ge = "wearable", Ee = "embedded", c = 500, d = "Amazon", m = "Apple", C = "ASUS", u = "BlackBerry", g = "Browser", E = "Chrome", h = "Edge", w = "Firefox", I = "Google", N = "Huawei", F = "LG", X = "Microsoft", oe = "Motorola", de = "Opera", Ce = "Samsung", xe = "Sharp", j = "Sony", be = "Xiaomi", Be = "Zebra", qe = "Facebook", ze = "Chromium OS", st = "Mac OS", Ve = " Browser", at = function(H, L) {
|
|
6092
|
+
var D = {};
|
|
6093
|
+
for (var _ in H)
|
|
6094
|
+
L[_] && L[_].length % 2 === 0 ? D[_] = L[_].concat(H[_]) : D[_] = H[_];
|
|
6095
|
+
return D;
|
|
6089
6096
|
}, Fe = function(H) {
|
|
6090
|
-
for (var L = {},
|
|
6091
|
-
L[H[
|
|
6097
|
+
for (var L = {}, D = 0; D < H.length; D++)
|
|
6098
|
+
L[H[D].toUpperCase()] = H[D];
|
|
6092
6099
|
return L;
|
|
6093
6100
|
}, Oe = function(H, L) {
|
|
6094
6101
|
return typeof H === O ? ve(L).indexOf(ve(H)) !== -1 : !1;
|
|
@@ -6100,61 +6107,61 @@ function Zp() {
|
|
|
6100
6107
|
if (typeof H === O)
|
|
6101
6108
|
return H = H.replace(/^\s\s*/, a), typeof L === l ? H : H.substring(0, c);
|
|
6102
6109
|
}, lt = function(H, L) {
|
|
6103
|
-
for (var
|
|
6104
|
-
var ae = L[
|
|
6105
|
-
for (
|
|
6106
|
-
if (R = ae[
|
|
6107
|
-
for (
|
|
6108
|
-
le = R[
|
|
6109
|
-
|
|
6110
|
+
for (var D = 0, _, te, W, A, R, le; D < L.length && !R; ) {
|
|
6111
|
+
var ae = L[D], ke = L[D + 1];
|
|
6112
|
+
for (_ = te = 0; _ < ae.length && !R && ae[_]; )
|
|
6113
|
+
if (R = ae[_++].exec(H), R)
|
|
6114
|
+
for (W = 0; W < ke.length; W++)
|
|
6115
|
+
le = R[++te], A = ke[W], typeof A === b && A.length > 0 ? A.length === 2 ? typeof A[1] == i ? this[A[0]] = A[1].call(this, le) : this[A[0]] = A[1] : A.length === 3 ? typeof A[1] === i && !(A[1].exec && A[1].test) ? this[A[0]] = le ? A[1].call(this, le, A[2]) : s : this[A[0]] = le ? le.replace(A[1], A[2]) : s : A.length === 4 && (this[A[0]] = le ? A[3].call(this, le.replace(A[1], A[2])) : s) : this[A] = le || s;
|
|
6116
|
+
D += 2;
|
|
6110
6117
|
}
|
|
6111
6118
|
}, rt = function(H, L) {
|
|
6112
|
-
for (var
|
|
6113
|
-
if (typeof L[
|
|
6114
|
-
for (var
|
|
6115
|
-
if (Oe(L[
|
|
6116
|
-
return
|
|
6117
|
-
} else if (Oe(L[
|
|
6118
|
-
return
|
|
6119
|
+
for (var D in L)
|
|
6120
|
+
if (typeof L[D] === b && L[D].length > 0) {
|
|
6121
|
+
for (var _ = 0; _ < L[D].length; _++)
|
|
6122
|
+
if (Oe(L[D][_], H))
|
|
6123
|
+
return D === r ? s : D;
|
|
6124
|
+
} else if (Oe(L[D], H))
|
|
6125
|
+
return D === r ? s : D;
|
|
6119
6126
|
return L.hasOwnProperty("*") ? L["*"] : H;
|
|
6120
|
-
}, Ut = { "1.0": "/8", 1.2: "/1", 1.3: "/3", "2.0": "/412", "2.0.2": "/416", "2.0.3": "/417", "2.0.4": "/419", "?": "/" }, U = { ME: "4.90", "NT 3.11": "NT3.51", "NT 4.0": "NT4.0", 2e3: "NT 5.0", XP: ["NT 5.1", "NT 5.2"], Vista: "NT 6.0", 7: "NT 6.1", 8: "NT 6.2", 8.1: "NT 6.3", 10: ["NT 6.4", "NT 10.0"], RT: "ARM" }, K = { browser: [[/\b(?:crmo|crios)\/([\w\.]+)/i], [k, [S, "Chrome"]], [/edg(?:e|ios|a)?\/([\w\.]+)/i], [k, [S, "Edge"]], [/(opera mini)\/([-\w\.]+)/i, /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i], [S, k], [/opios[\/ ]+([\w\.]+)/i], [k, [S, de + " Mini"]], [/\bop(?:rg)?x\/([\w\.]+)/i], [k, [S, de + " GX"]], [/\bopr\/([\w\.]+)/i], [k, [S, de]], [/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i], [k, [S, "Baidu"]], [/(kindle)\/([\w\.]+)/i, /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i, /(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i, /(?:ms|\()(ie) ([\w\.]+)/i, /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i, /(heytap|ovi)browser\/([\d\.]+)/i, /(weibo)__([\d\.]+)/i], [S, k], [/quark(?:pc)?\/([-\w\.]+)/i], [k, [S, "Quark"]], [/\bddg\/([\w\.]+)/i], [k, [S, "DuckDuckGo"]], [/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i], [k, [S, "UC" + g]], [/microm.+\bqbcore\/([\w\.]+)/i, /\bqbcore\/([\w\.]+).+microm/i, /micromessenger\/([\w\.]+)/i], [k, [S, "WeChat"]], [/konqueror\/([\w\.]+)/i], [k, [S, "Konqueror"]], [/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i], [k, [S, "IE"]], [/ya(?:search)?browser\/([\w\.]+)/i], [k, [S, "Yandex"]], [/slbrowser\/([\w\.]+)/i], [k, [S, "Smart Lenovo " + g]], [/(avast|avg)\/([\w\.]+)/i], [[S, /(.+)/, "$1 Secure " + g], k], [/\bfocus\/([\w\.]+)/i], [k, [S, w + " Focus"]], [/\bopt\/([\w\.]+)/i], [k, [S, de + " Touch"]], [/coc_coc\w+\/([\w\.]+)/i], [k, [S, "Coc Coc"]], [/dolfin\/([\w\.]+)/i], [k, [S, "Dolphin"]], [/coast\/([\w\.]+)/i], [k, [S, de + " Coast"]], [/miuibrowser\/([\w\.]+)/i], [k, [S, "MIUI " + g]], [/fxios\/([-\w\.]+)/i], [k, [S, w]], [/\bqihu|(qi?ho?o?|360)browser/i], [[S, "360" + Ve]], [/\b(qq)\/([\w\.]+)/i], [[S, /(.+)/, "$1Browser"], k], [/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i], [[S, /(.+)/, "$1" + Ve], k], [/samsungbrowser\/([\w\.]+)/i], [k, [S, Ce + " Internet"]], [/(comodo_dragon)\/([\w\.]+)/i], [[S, /_/g, " "], k], [/metasr[\/ ]?([\d\.]+)/i], [k, [S, "Sogou Explorer"]], [/(sogou)mo\w+\/([\d\.]+)/i], [[S, "Sogou Mobile"], k], [/(electron)\/([\w\.]+) safari/i, /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, /m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i], [S, k], [/(lbbrowser|rekonq)/i, /\[(linkedin)app\]/i], [S], [/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i], [[S, qe], k], [/(Klarna)\/([\w\.]+)/i, /(kakao(?:talk|story))[\/ ]([\w\.]+)/i, /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, /safari (line)\/([\w\.]+)/i, /\b(line)\/([\w\.]+)\/iab/i, /(alipay)client\/([\w\.]+)/i, /(twitter)(?:and| f.+e\/([\w\.]+))/i, /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i], [S, k], [/\bgsa\/([\w\.]+) .*safari\//i], [k, [S, "GSA"]], [/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i], [k, [S, "TikTok"]], [/headlesschrome(?:\/([\w\.]+)| )/i], [k, [S, E + " Headless"]], [/ wv\).+(chrome)\/([\w\.]+)/i], [[S, E + " WebView"], k], [/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i], [k, [S, "Android " + g]], [/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i], [S, k], [/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i], [k, [S, "Mobile Safari"]], [/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i], [k, S], [/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i], [S, [k, rt, Ut]], [/(webkit|khtml)\/([\w\.]+)/i], [S, k], [/(navigator|netscape\d?)\/([-\w\.]+)/i], [[S, "Netscape"], k], [/(wolvic)\/([\w\.]+)/i], [S, k], [/mobile vr; rv:([\w\.]+)\).+firefox/i], [k, [S, w + " Reality"]], [/ekiohf.+(flow)\/([\w\.]+)/i, /(swiftfox)/i, /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i, /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i, /(firefox)\/([\w\.]+)/i, /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i, /(links) \(([\w\.]+)/i], [S, [k, /_/g, "."]], [/(cobalt)\/([\w\.]+)/i], [S, [k, /master.|lts./, ""]]], cpu: [[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i], [[he, "amd64"]], [/(ia32(?=;))/i], [[he, ve]], [/((?:i[346]|x)86)[;\)]/i], [[he, "ia32"]], [/\b(aarch64|arm(v?8e?l?|_?64))\b/i], [[he, "arm64"]], [/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i], [[he, "armhf"]], [/windows (ce|mobile); ppc;/i], [[he, "arm"]], [/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i], [[he, /ower/, a, ve]], [/(sun4\w)[;\)]/i], [[he, "sparc"]], [/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i], [[he, ve]]], device: [[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i], [v, [x, Ce], [B, Q]], [/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i, /samsung[- ]((?!sm-[lr])[-\w]+)/i, /sec-(sgh\w+)/i], [v, [x, Ce], [B, J]], [/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i], [v, [x, m], [B, J]], [/\((ipad);[-\w\),; ]+apple/i, /applecoremedia\/[\w\.]+ \((ipad)/i, /\b(ipad)\d\d?,\d\d?[;\]].+ios/i], [v, [x, m], [B, Q]], [/(macintosh);/i], [v, [x, m]], [/\b(sh-?[altvz]?\d\d[a-ekm]?)/i], [v, [x, xe], [B, J]], [/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i], [v, [x, N], [B, Q]], [/(?:huawei|honor)([-\w ]+)[;\)]/i, /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i], [v, [x, N], [B, J]], [/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i, /\b; (\w+) build\/hm\1/i, /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i, /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i], [[v, /_/g, " "], [x, be], [B, J]], [/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i, /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i], [[v, /_/g, " "], [x, be], [B, Q]], [/; (\w+) bui.+ oppo/i, /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i], [v, [x, "OPPO"], [B, J]], [/\b(opd2\d{3}a?) bui/i], [v, [x, "OPPO"], [B, Q]], [/vivo (\w+)(?: bui|\))/i, /\b(v[12]\d{3}\w?[at])(?: bui|;)/i], [v, [x, "Vivo"], [B, J]], [/\b(rmx[1-3]\d{3})(?: bui|;|\))/i], [v, [x, "Realme"], [B, J]], [/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i, /\bmot(?:orola)?[- ](\w*)/i, /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i], [v, [x, oe], [B, J]], [/\b(mz60\d|xoom[2 ]{0,2}) build\//i], [v, [x, oe], [B, Q]], [/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i], [v, [x, F], [B, Q]], [/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i, /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i, /\blg-?([\d\w]+) bui/i], [v, [x, F], [B, J]], [/(ideatab[-\w ]+)/i, /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i], [v, [x, "Lenovo"], [B, Q]], [/(?:maemo|nokia).*(n900|lumia \d+)/i, /nokia[-_ ]?([-\w\.]*)/i], [[v, /_/g, " "], [x, "Nokia"], [B, J]], [/(pixel c)\b/i], [v, [x, I], [B, Q]], [/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i], [v, [x, I], [B, J]], [/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i], [v, [x, j], [B, J]], [/sony tablet [ps]/i, /\b(?:sony)?sgp\w+(?: bui|\))/i], [[v, "Xperia Tablet"], [x, j], [B, Q]], [/ (kb2005|in20[12]5|be20[12][59])\b/i, /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i], [v, [x, "OnePlus"], [B, J]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i, /(kf[a-z]+)( bui|\)).+silk\//i], [v, [x, d], [B, Q]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i], [[v, /(.+)/g, "Fire Phone $1"], [x, d], [B, J]], [/(playbook);[-\w\),; ]+(rim)/i], [v, x, [B, Q]], [/\b((?:bb[a-f]|st[hv])100-\d)/i, /\(bb10; (\w+)/i], [v, [x, u], [B, J]], [/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i], [v, [x, C], [B, Q]], [/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i], [v, [x, C], [B, J]], [/(nexus 9)/i], [v, [x, "HTC"], [B, Q]], [/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i], [x, [v, /_/g, " "], [B, J]], [/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i], [v, [x, "TCL"], [B, Q]], [/(itel) ((\w+))/i], [[x, ve], v, [B, rt, { tablet: ["p10001l", "w7001"], "*": "mobile" }]], [/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i], [v, [x, "Acer"], [B, Q]], [/droid.+; (m[1-5] note) bui/i, /\bmz-([-\w]{2,})/i], [v, [x, "Meizu"], [B, J]], [/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i], [v, [x, "Ulefone"], [B, J]], [/droid.+; (a(?:015|06[35]|142p?))/i], [v, [x, "Nothing"], [B, J]], [/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i, /(hp) ([\w ]+\w)/i, /(asus)-?(\w+)/i, /(microsoft); (lumia[\w ]+)/i, /(lenovo)[-_ ]?([-\w]+)/i, /(jolla)/i, /(oppo) ?([\w ]+) bui/i], [x, v, [B, J]], [/(kobo)\s(ereader|touch)/i, /(archos) (gamepad2?)/i, /(hp).+(touchpad(?!.+tablet)|tablet)/i, /(kindle)\/([\w\.]+)/i, /(nook)[\w ]+build\/(\w+)/i, /(dell) (strea[kpr\d ]*[\dko])/i, /(le[- ]+pan)[- ]+(\w{1,9}) bui/i, /(trinity)[- ]*(t\d{3}) bui/i, /(gigaset)[- ]+(q\w{1,9}) bui/i, /(vodafone) ([\w ]+)(?:\)| bui)/i], [x, v, [B, Q]], [/(surface duo)/i], [v, [x, X], [B, Q]], [/droid [\d\.]+; (fp\du?)(?: b|\))/i], [v, [x, "Fairphone"], [B, J]], [/(u304aa)/i], [v, [x, "AT&T"], [B, J]], [/\bsie-(\w*)/i], [v, [x, "Siemens"], [B, J]], [/\b(rct\w+) b/i], [v, [x, "RCA"], [B, Q]], [/\b(venue[\d ]{2,7}) b/i], [v, [x, "Dell"], [B, Q]], [/\b(q(?:mv|ta)\w+) b/i], [v, [x, "Verizon"], [B, Q]], [/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i], [v, [x, "Barnes & Noble"], [B, Q]], [/\b(tm\d{3}\w+) b/i], [v, [x, "NuVision"], [B, Q]], [/\b(k88) b/i], [v, [x, "ZTE"], [B, Q]], [/\b(nx\d{3}j) b/i], [v, [x, "ZTE"], [B, J]], [/\b(gen\d{3}) b.+49h/i], [v, [x, "Swiss"], [B, J]], [/\b(zur\d{3}) b/i], [v, [x, "Swiss"], [B, Q]], [/\b((zeki)?tb.*\b) b/i], [v, [x, "Zeki"], [B, Q]], [/\b([yr]\d{2}) b/i, /\b(dragon[- ]+touch |dt)(\w{5}) b/i], [[x, "Dragon Touch"], v, [B, Q]], [/\b(ns-?\w{0,9}) b/i], [v, [x, "Insignia"], [B, Q]], [/\b((nxa|next)-?\w{0,9}) b/i], [v, [x, "NextBook"], [B, Q]], [/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i], [[x, "Voice"], v, [B, J]], [/\b(lvtel\-)?(v1[12]) b/i], [[x, "LvTel"], v, [B, J]], [/\b(ph-1) /i], [v, [x, "Essential"], [B, J]], [/\b(v(100md|700na|7011|917g).*\b) b/i], [v, [x, "Envizen"], [B, Q]], [/\b(trio[-\w\. ]+) b/i], [v, [x, "MachSpeed"], [B, Q]], [/\btu_(1491) b/i], [v, [x, "Rotor"], [B, Q]], [/(shield[\w ]+) b/i], [v, [x, "Nvidia"], [B, Q]], [/(sprint) (\w+)/i], [x, v, [B, J]], [/(kin\.[onetw]{3})/i], [[v, /\./g, " "], [x, X], [B, J]], [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i], [v, [x, Be], [B, Q]], [/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i], [v, [x, Be], [B, J]], [/smart-tv.+(samsung)/i], [x, [B, me]], [/hbbtv.+maple;(\d+)/i], [[v, /^/, "SmartTV"], [x, Ce], [B, me]], [/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i], [[x, F], [B, me]], [/(apple) ?tv/i], [x, [v, m + " TV"], [B, me]], [/crkey/i], [[v, E + "cast"], [x, I], [B, me]], [/droid.+aft(\w+)( bui|\))/i], [v, [x, d], [B, me]], [/\(dtv[\);].+(aquos)/i, /(aquos-tv[\w ]+)\)/i], [v, [x, xe], [B, me]], [/(bravia[\w ]+)( bui|\))/i], [v, [x, j], [B, me]], [/(mitv-\w{5}) bui/i], [v, [x, be], [B, me]], [/Hbbtv.*(technisat) (.*);/i], [x, v, [B, me]], [/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i], [[x, pt], [v, pt], [B, me]], [/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i], [[B, me]], [/(ouya)/i, /(nintendo) ([wids3utch]+)/i], [x, v, [B, A]], [/droid.+; (shield) bui/i], [v, [x, "Nvidia"], [B, A]], [/(playstation [345portablevi]+)/i], [v, [x, j], [B, A]], [/\b(xbox(?: one)?(?!; xbox))[\); ]/i], [v, [x, X], [B, A]], [/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i], [v, [x, Ce], [B, ge]], [/((pebble))app/i], [x, v, [B, ge]], [/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i], [v, [x, m], [B, ge]], [/droid.+; (glass) \d/i], [v, [x, I], [B, ge]], [/droid.+; (wt63?0{2,3})\)/i], [v, [x, Be], [B, ge]], [/(quest( \d| pro)?)/i], [v, [x, qe], [B, ge]], [/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i], [x, [B, Ee]], [/(aeobc)\b/i], [v, [x, d], [B, Ee]], [/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i], [v, [B, J]], [/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i], [v, [B, Q]], [/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i], [[B, Q]], [/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i], [[B, J]], [/(android[-\w\. ]{0,9});.+buil/i], [v, [x, "Generic"]]], engine: [[/windows.+ edge\/([\w\.]+)/i], [k, [S, h + "HTML"]], [/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i], [k, [S, "Blink"]], [/(presto)\/([\w\.]+)/i, /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, /ekioh(flow)\/([\w\.]+)/i, /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, /(icab)[\/ ]([23]\.[\d\.]+)/i, /\b(libweb)/i], [S, k], [/rv\:([\w\.]{1,9})\b.+(gecko)/i], [k, S]], os: [[/microsoft (windows) (vista|xp)/i], [S, k], [/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i], [S, [k, rt, U]], [/windows nt 6\.2; (arm)/i, /windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i, /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i], [[k, rt, U], [S, "Windows"]], [/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i, /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i, /cfnetwork\/.+darwin/i], [[k, /_/g, "."], [S, "iOS"]], [/(mac os x) ?([\w\. ]*)/i, /(macintosh|mac_powerpc\b)(?!.+haiku)/i], [[S, st], [k, /_/g, "."]], [/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i], [k, S], [/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i, /(blackberry)\w*\/([\w\.]*)/i, /(tizen|kaios)[\/ ]([\w\.]+)/i, /\((series40);/i], [S, k], [/\(bb(10);/i], [k, [S, u]], [/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i], [k, [S, "Symbian"]], [/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i], [k, [S, w + " OS"]], [/web0s;.+rt(tv)/i, /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i], [k, [S, "webOS"]], [/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i], [k, [S, "watchOS"]], [/crkey\/([\d\.]+)/i], [k, [S, E + "cast"]], [/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i], [[S, ze], k], [/panasonic;(viera)/i, /(netrange)mmh/i, /(nettv)\/(\d+\.[\w\.]+)/i, /(nintendo|playstation) ([wids345portablevuch]+)/i, /(xbox); +xbox ([^\);]+)/i, /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, /(mint)[\/\(\) ]?(\w*)/i, /(mageia|vectorlinux)[; ]/i, /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i, /(hurd|linux) ?([\w\.]*)/i, /(gnu) ?([\w\.]*)/i, /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, /(haiku) (\w+)/i], [S, k], [/(sunos) ?([\w\.\d]*)/i], [[S, "Solaris"], k], [/((?:open)?solaris)[-\/ ]?([\w\.]*)/i, /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, /(unix) ?([\w\.]*)/i], [S, k]] }, M = function(H, L) {
|
|
6121
|
-
if (typeof H ===
|
|
6127
|
+
}, Ut = { "1.0": "/8", 1.2: "/1", 1.3: "/3", "2.0": "/412", "2.0.2": "/416", "2.0.3": "/417", "2.0.4": "/419", "?": "/" }, U = { ME: "4.90", "NT 3.11": "NT3.51", "NT 4.0": "NT4.0", 2e3: "NT 5.0", XP: ["NT 5.1", "NT 5.2"], Vista: "NT 6.0", 7: "NT 6.1", 8: "NT 6.2", 8.1: "NT 6.3", 10: ["NT 6.4", "NT 10.0"], RT: "ARM" }, K = { browser: [[/\b(?:crmo|crios)\/([\w\.]+)/i], [k, [S, "Chrome"]], [/edg(?:e|ios|a)?\/([\w\.]+)/i], [k, [S, "Edge"]], [/(opera mini)\/([-\w\.]+)/i, /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i], [S, k], [/opios[\/ ]+([\w\.]+)/i], [k, [S, de + " Mini"]], [/\bop(?:rg)?x\/([\w\.]+)/i], [k, [S, de + " GX"]], [/\bopr\/([\w\.]+)/i], [k, [S, de]], [/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i], [k, [S, "Baidu"]], [/(kindle)\/([\w\.]+)/i, /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i, /(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i, /(?:ms|\()(ie) ([\w\.]+)/i, /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i, /(heytap|ovi)browser\/([\d\.]+)/i, /(weibo)__([\d\.]+)/i], [S, k], [/quark(?:pc)?\/([-\w\.]+)/i], [k, [S, "Quark"]], [/\bddg\/([\w\.]+)/i], [k, [S, "DuckDuckGo"]], [/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i], [k, [S, "UC" + g]], [/microm.+\bqbcore\/([\w\.]+)/i, /\bqbcore\/([\w\.]+).+microm/i, /micromessenger\/([\w\.]+)/i], [k, [S, "WeChat"]], [/konqueror\/([\w\.]+)/i], [k, [S, "Konqueror"]], [/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i], [k, [S, "IE"]], [/ya(?:search)?browser\/([\w\.]+)/i], [k, [S, "Yandex"]], [/slbrowser\/([\w\.]+)/i], [k, [S, "Smart Lenovo " + g]], [/(avast|avg)\/([\w\.]+)/i], [[S, /(.+)/, "$1 Secure " + g], k], [/\bfocus\/([\w\.]+)/i], [k, [S, w + " Focus"]], [/\bopt\/([\w\.]+)/i], [k, [S, de + " Touch"]], [/coc_coc\w+\/([\w\.]+)/i], [k, [S, "Coc Coc"]], [/dolfin\/([\w\.]+)/i], [k, [S, "Dolphin"]], [/coast\/([\w\.]+)/i], [k, [S, de + " Coast"]], [/miuibrowser\/([\w\.]+)/i], [k, [S, "MIUI " + g]], [/fxios\/([-\w\.]+)/i], [k, [S, w]], [/\bqihu|(qi?ho?o?|360)browser/i], [[S, "360" + Ve]], [/\b(qq)\/([\w\.]+)/i], [[S, /(.+)/, "$1Browser"], k], [/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i], [[S, /(.+)/, "$1" + Ve], k], [/samsungbrowser\/([\w\.]+)/i], [k, [S, Ce + " Internet"]], [/(comodo_dragon)\/([\w\.]+)/i], [[S, /_/g, " "], k], [/metasr[\/ ]?([\d\.]+)/i], [k, [S, "Sogou Explorer"]], [/(sogou)mo\w+\/([\d\.]+)/i], [[S, "Sogou Mobile"], k], [/(electron)\/([\w\.]+) safari/i, /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, /m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i], [S, k], [/(lbbrowser|rekonq)/i, /\[(linkedin)app\]/i], [S], [/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i], [[S, qe], k], [/(Klarna)\/([\w\.]+)/i, /(kakao(?:talk|story))[\/ ]([\w\.]+)/i, /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, /safari (line)\/([\w\.]+)/i, /\b(line)\/([\w\.]+)\/iab/i, /(alipay)client\/([\w\.]+)/i, /(twitter)(?:and| f.+e\/([\w\.]+))/i, /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i], [S, k], [/\bgsa\/([\w\.]+) .*safari\//i], [k, [S, "GSA"]], [/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i], [k, [S, "TikTok"]], [/headlesschrome(?:\/([\w\.]+)| )/i], [k, [S, E + " Headless"]], [/ wv\).+(chrome)\/([\w\.]+)/i], [[S, E + " WebView"], k], [/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i], [k, [S, "Android " + g]], [/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i], [S, k], [/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i], [k, [S, "Mobile Safari"]], [/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i], [k, S], [/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i], [S, [k, rt, Ut]], [/(webkit|khtml)\/([\w\.]+)/i], [S, k], [/(navigator|netscape\d?)\/([-\w\.]+)/i], [[S, "Netscape"], k], [/(wolvic)\/([\w\.]+)/i], [S, k], [/mobile vr; rv:([\w\.]+)\).+firefox/i], [k, [S, w + " Reality"]], [/ekiohf.+(flow)\/([\w\.]+)/i, /(swiftfox)/i, /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i, /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i, /(firefox)\/([\w\.]+)/i, /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i, /(links) \(([\w\.]+)/i], [S, [k, /_/g, "."]], [/(cobalt)\/([\w\.]+)/i], [S, [k, /master.|lts./, ""]]], cpu: [[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i], [[he, "amd64"]], [/(ia32(?=;))/i], [[he, ve]], [/((?:i[346]|x)86)[;\)]/i], [[he, "ia32"]], [/\b(aarch64|arm(v?8e?l?|_?64))\b/i], [[he, "arm64"]], [/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i], [[he, "armhf"]], [/windows (ce|mobile); ppc;/i], [[he, "arm"]], [/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i], [[he, /ower/, a, ve]], [/(sun4\w)[;\)]/i], [[he, "sparc"]], [/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i], [[he, ve]]], device: [[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i], [v, [x, Ce], [B, Q]], [/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i, /samsung[- ]((?!sm-[lr])[-\w]+)/i, /sec-(sgh\w+)/i], [v, [x, Ce], [B, J]], [/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i], [v, [x, m], [B, J]], [/\((ipad);[-\w\),; ]+apple/i, /applecoremedia\/[\w\.]+ \((ipad)/i, /\b(ipad)\d\d?,\d\d?[;\]].+ios/i], [v, [x, m], [B, Q]], [/(macintosh);/i], [v, [x, m]], [/\b(sh-?[altvz]?\d\d[a-ekm]?)/i], [v, [x, xe], [B, J]], [/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i], [v, [x, N], [B, Q]], [/(?:huawei|honor)([-\w ]+)[;\)]/i, /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i], [v, [x, N], [B, J]], [/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i, /\b; (\w+) build\/hm\1/i, /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i, /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i], [[v, /_/g, " "], [x, be], [B, J]], [/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i, /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i], [[v, /_/g, " "], [x, be], [B, Q]], [/; (\w+) bui.+ oppo/i, /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i], [v, [x, "OPPO"], [B, J]], [/\b(opd2\d{3}a?) bui/i], [v, [x, "OPPO"], [B, Q]], [/vivo (\w+)(?: bui|\))/i, /\b(v[12]\d{3}\w?[at])(?: bui|;)/i], [v, [x, "Vivo"], [B, J]], [/\b(rmx[1-3]\d{3})(?: bui|;|\))/i], [v, [x, "Realme"], [B, J]], [/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i, /\bmot(?:orola)?[- ](\w*)/i, /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i], [v, [x, oe], [B, J]], [/\b(mz60\d|xoom[2 ]{0,2}) build\//i], [v, [x, oe], [B, Q]], [/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i], [v, [x, F], [B, Q]], [/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i, /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i, /\blg-?([\d\w]+) bui/i], [v, [x, F], [B, J]], [/(ideatab[-\w ]+)/i, /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i], [v, [x, "Lenovo"], [B, Q]], [/(?:maemo|nokia).*(n900|lumia \d+)/i, /nokia[-_ ]?([-\w\.]*)/i], [[v, /_/g, " "], [x, "Nokia"], [B, J]], [/(pixel c)\b/i], [v, [x, I], [B, Q]], [/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i], [v, [x, I], [B, J]], [/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i], [v, [x, j], [B, J]], [/sony tablet [ps]/i, /\b(?:sony)?sgp\w+(?: bui|\))/i], [[v, "Xperia Tablet"], [x, j], [B, Q]], [/ (kb2005|in20[12]5|be20[12][59])\b/i, /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i], [v, [x, "OnePlus"], [B, J]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i, /(kf[a-z]+)( bui|\)).+silk\//i], [v, [x, d], [B, Q]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i], [[v, /(.+)/g, "Fire Phone $1"], [x, d], [B, J]], [/(playbook);[-\w\),; ]+(rim)/i], [v, x, [B, Q]], [/\b((?:bb[a-f]|st[hv])100-\d)/i, /\(bb10; (\w+)/i], [v, [x, u], [B, J]], [/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i], [v, [x, C], [B, Q]], [/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i], [v, [x, C], [B, J]], [/(nexus 9)/i], [v, [x, "HTC"], [B, Q]], [/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i], [x, [v, /_/g, " "], [B, J]], [/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i], [v, [x, "TCL"], [B, Q]], [/(itel) ((\w+))/i], [[x, ve], v, [B, rt, { tablet: ["p10001l", "w7001"], "*": "mobile" }]], [/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i], [v, [x, "Acer"], [B, Q]], [/droid.+; (m[1-5] note) bui/i, /\bmz-([-\w]{2,})/i], [v, [x, "Meizu"], [B, J]], [/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i], [v, [x, "Ulefone"], [B, J]], [/droid.+; (a(?:015|06[35]|142p?))/i], [v, [x, "Nothing"], [B, J]], [/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i, /(hp) ([\w ]+\w)/i, /(asus)-?(\w+)/i, /(microsoft); (lumia[\w ]+)/i, /(lenovo)[-_ ]?([-\w]+)/i, /(jolla)/i, /(oppo) ?([\w ]+) bui/i], [x, v, [B, J]], [/(kobo)\s(ereader|touch)/i, /(archos) (gamepad2?)/i, /(hp).+(touchpad(?!.+tablet)|tablet)/i, /(kindle)\/([\w\.]+)/i, /(nook)[\w ]+build\/(\w+)/i, /(dell) (strea[kpr\d ]*[\dko])/i, /(le[- ]+pan)[- ]+(\w{1,9}) bui/i, /(trinity)[- ]*(t\d{3}) bui/i, /(gigaset)[- ]+(q\w{1,9}) bui/i, /(vodafone) ([\w ]+)(?:\)| bui)/i], [x, v, [B, Q]], [/(surface duo)/i], [v, [x, X], [B, Q]], [/droid [\d\.]+; (fp\du?)(?: b|\))/i], [v, [x, "Fairphone"], [B, J]], [/(u304aa)/i], [v, [x, "AT&T"], [B, J]], [/\bsie-(\w*)/i], [v, [x, "Siemens"], [B, J]], [/\b(rct\w+) b/i], [v, [x, "RCA"], [B, Q]], [/\b(venue[\d ]{2,7}) b/i], [v, [x, "Dell"], [B, Q]], [/\b(q(?:mv|ta)\w+) b/i], [v, [x, "Verizon"], [B, Q]], [/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i], [v, [x, "Barnes & Noble"], [B, Q]], [/\b(tm\d{3}\w+) b/i], [v, [x, "NuVision"], [B, Q]], [/\b(k88) b/i], [v, [x, "ZTE"], [B, Q]], [/\b(nx\d{3}j) b/i], [v, [x, "ZTE"], [B, J]], [/\b(gen\d{3}) b.+49h/i], [v, [x, "Swiss"], [B, J]], [/\b(zur\d{3}) b/i], [v, [x, "Swiss"], [B, Q]], [/\b((zeki)?tb.*\b) b/i], [v, [x, "Zeki"], [B, Q]], [/\b([yr]\d{2}) b/i, /\b(dragon[- ]+touch |dt)(\w{5}) b/i], [[x, "Dragon Touch"], v, [B, Q]], [/\b(ns-?\w{0,9}) b/i], [v, [x, "Insignia"], [B, Q]], [/\b((nxa|next)-?\w{0,9}) b/i], [v, [x, "NextBook"], [B, Q]], [/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i], [[x, "Voice"], v, [B, J]], [/\b(lvtel\-)?(v1[12]) b/i], [[x, "LvTel"], v, [B, J]], [/\b(ph-1) /i], [v, [x, "Essential"], [B, J]], [/\b(v(100md|700na|7011|917g).*\b) b/i], [v, [x, "Envizen"], [B, Q]], [/\b(trio[-\w\. ]+) b/i], [v, [x, "MachSpeed"], [B, Q]], [/\btu_(1491) b/i], [v, [x, "Rotor"], [B, Q]], [/(shield[\w ]+) b/i], [v, [x, "Nvidia"], [B, Q]], [/(sprint) (\w+)/i], [x, v, [B, J]], [/(kin\.[onetw]{3})/i], [[v, /\./g, " "], [x, X], [B, J]], [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i], [v, [x, Be], [B, Q]], [/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i], [v, [x, Be], [B, J]], [/smart-tv.+(samsung)/i], [x, [B, me]], [/hbbtv.+maple;(\d+)/i], [[v, /^/, "SmartTV"], [x, Ce], [B, me]], [/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i], [[x, F], [B, me]], [/(apple) ?tv/i], [x, [v, m + " TV"], [B, me]], [/crkey/i], [[v, E + "cast"], [x, I], [B, me]], [/droid.+aft(\w+)( bui|\))/i], [v, [x, d], [B, me]], [/\(dtv[\);].+(aquos)/i, /(aquos-tv[\w ]+)\)/i], [v, [x, xe], [B, me]], [/(bravia[\w ]+)( bui|\))/i], [v, [x, j], [B, me]], [/(mitv-\w{5}) bui/i], [v, [x, be], [B, me]], [/Hbbtv.*(technisat) (.*);/i], [x, v, [B, me]], [/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i], [[x, pt], [v, pt], [B, me]], [/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i], [[B, me]], [/(ouya)/i, /(nintendo) ([wids3utch]+)/i], [x, v, [B, y]], [/droid.+; (shield) bui/i], [v, [x, "Nvidia"], [B, y]], [/(playstation [345portablevi]+)/i], [v, [x, j], [B, y]], [/\b(xbox(?: one)?(?!; xbox))[\); ]/i], [v, [x, X], [B, y]], [/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i], [v, [x, Ce], [B, ge]], [/((pebble))app/i], [x, v, [B, ge]], [/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i], [v, [x, m], [B, ge]], [/droid.+; (glass) \d/i], [v, [x, I], [B, ge]], [/droid.+; (wt63?0{2,3})\)/i], [v, [x, Be], [B, ge]], [/(quest( \d| pro)?)/i], [v, [x, qe], [B, ge]], [/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i], [x, [B, Ee]], [/(aeobc)\b/i], [v, [x, d], [B, Ee]], [/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i], [v, [B, J]], [/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i], [v, [B, Q]], [/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i], [[B, Q]], [/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i], [[B, J]], [/(android[-\w\. ]{0,9});.+buil/i], [v, [x, "Generic"]]], engine: [[/windows.+ edge\/([\w\.]+)/i], [k, [S, h + "HTML"]], [/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i], [k, [S, "Blink"]], [/(presto)\/([\w\.]+)/i, /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, /ekioh(flow)\/([\w\.]+)/i, /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, /(icab)[\/ ]([23]\.[\d\.]+)/i, /\b(libweb)/i], [S, k], [/rv\:([\w\.]{1,9})\b.+(gecko)/i], [k, S]], os: [[/microsoft (windows) (vista|xp)/i], [S, k], [/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i], [S, [k, rt, U]], [/windows nt 6\.2; (arm)/i, /windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i, /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i], [[k, rt, U], [S, "Windows"]], [/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i, /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i, /cfnetwork\/.+darwin/i], [[k, /_/g, "."], [S, "iOS"]], [/(mac os x) ?([\w\. ]*)/i, /(macintosh|mac_powerpc\b)(?!.+haiku)/i], [[S, st], [k, /_/g, "."]], [/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i], [k, S], [/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i, /(blackberry)\w*\/([\w\.]*)/i, /(tizen|kaios)[\/ ]([\w\.]+)/i, /\((series40);/i], [S, k], [/\(bb(10);/i], [k, [S, u]], [/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i], [k, [S, "Symbian"]], [/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i], [k, [S, w + " OS"]], [/web0s;.+rt(tv)/i, /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i], [k, [S, "webOS"]], [/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i], [k, [S, "watchOS"]], [/crkey\/([\d\.]+)/i], [k, [S, E + "cast"]], [/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i], [[S, ze], k], [/panasonic;(viera)/i, /(netrange)mmh/i, /(nettv)\/(\d+\.[\w\.]+)/i, /(nintendo|playstation) ([wids345portablevuch]+)/i, /(xbox); +xbox ([^\);]+)/i, /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, /(mint)[\/\(\) ]?(\w*)/i, /(mageia|vectorlinux)[; ]/i, /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i, /(hurd|linux) ?([\w\.]*)/i, /(gnu) ?([\w\.]*)/i, /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, /(haiku) (\w+)/i], [S, k], [/(sunos) ?([\w\.\d]*)/i], [[S, "Solaris"], k], [/((?:open)?solaris)[-\/ ]?([\w\.]*)/i, /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, /(unix) ?([\w\.]*)/i], [S, k]] }, M = function(H, L) {
|
|
6128
|
+
if (typeof H === b && (L = H, H = s), !(this instanceof M))
|
|
6122
6129
|
return new M(H, L).getResult();
|
|
6123
|
-
var
|
|
6130
|
+
var D = typeof n !== l && n.navigator ? n.navigator : s, _ = H || (D && D.userAgent ? D.userAgent : a), te = D && D.userAgentData ? D.userAgentData : s, W = L ? at(K, L) : K, A = D && D.userAgent == _;
|
|
6124
6131
|
return this.getBrowser = function() {
|
|
6125
6132
|
var R = {};
|
|
6126
|
-
return R[S] = s, R[k] = s, lt.call(R,
|
|
6133
|
+
return R[S] = s, R[k] = s, lt.call(R, _, W.browser), R[q] = Lt(R[k]), A && D && D.brave && typeof D.brave.isBrave == i && (R[S] = "Brave"), R;
|
|
6127
6134
|
}, this.getCPU = function() {
|
|
6128
6135
|
var R = {};
|
|
6129
|
-
return R[he] = s, lt.call(R,
|
|
6136
|
+
return R[he] = s, lt.call(R, _, W.cpu), R;
|
|
6130
6137
|
}, this.getDevice = function() {
|
|
6131
6138
|
var R = {};
|
|
6132
|
-
return R[x] = s, R[v] = s, R[B] = s, lt.call(R,
|
|
6139
|
+
return R[x] = s, R[v] = s, R[B] = s, lt.call(R, _, W.device), A && !R[B] && te && te.mobile && (R[B] = J), A && R[v] == "Macintosh" && D && typeof D.standalone !== l && D.maxTouchPoints && D.maxTouchPoints > 2 && (R[v] = "iPad", R[B] = Q), R;
|
|
6133
6140
|
}, this.getEngine = function() {
|
|
6134
6141
|
var R = {};
|
|
6135
|
-
return R[S] = s, R[k] = s, lt.call(R,
|
|
6142
|
+
return R[S] = s, R[k] = s, lt.call(R, _, W.engine), R;
|
|
6136
6143
|
}, this.getOS = function() {
|
|
6137
6144
|
var R = {};
|
|
6138
|
-
return R[S] = s, R[k] = s, lt.call(R,
|
|
6145
|
+
return R[S] = s, R[k] = s, lt.call(R, _, W.os), A && !R[S] && te && te.platform && te.platform != "Unknown" && (R[S] = te.platform.replace(/chrome os/i, ze).replace(/macos/i, st)), R;
|
|
6139
6146
|
}, this.getResult = function() {
|
|
6140
6147
|
return { ua: this.getUA(), browser: this.getBrowser(), engine: this.getEngine(), os: this.getOS(), device: this.getDevice(), cpu: this.getCPU() };
|
|
6141
6148
|
}, this.getUA = function() {
|
|
6142
|
-
return
|
|
6149
|
+
return _;
|
|
6143
6150
|
}, this.setUA = function(R) {
|
|
6144
|
-
return
|
|
6145
|
-
}, this.setUA(
|
|
6151
|
+
return _ = typeof R === O && R.length > c ? pt(R, c) : R, this;
|
|
6152
|
+
}, this.setUA(_), this;
|
|
6146
6153
|
};
|
|
6147
|
-
M.VERSION = o, M.BROWSER = Fe([S, k, q]), M.CPU = Fe([he]), M.DEVICE = Fe([v, x, B,
|
|
6148
|
-
var
|
|
6149
|
-
if (
|
|
6154
|
+
M.VERSION = o, M.BROWSER = Fe([S, k, q]), M.CPU = Fe([he]), M.DEVICE = Fe([v, x, B, y, J, me, Q, ge, Ee]), M.ENGINE = M.OS = Fe([S, k]), e.exports && (t = e.exports = M), t.UAParser = M;
|
|
6155
|
+
var Z = typeof n !== l && (n.jQuery || n.Zepto);
|
|
6156
|
+
if (Z && !Z.ua) {
|
|
6150
6157
|
var ce = new M();
|
|
6151
|
-
|
|
6158
|
+
Z.ua = ce.getResult(), Z.ua.get = function() {
|
|
6152
6159
|
return ce.getUA();
|
|
6153
|
-
},
|
|
6160
|
+
}, Z.ua.set = function(H) {
|
|
6154
6161
|
ce.setUA(H);
|
|
6155
6162
|
var L = ce.getResult();
|
|
6156
|
-
for (var
|
|
6157
|
-
|
|
6163
|
+
for (var D in L)
|
|
6164
|
+
Z.ua[D] = L[D];
|
|
6158
6165
|
};
|
|
6159
6166
|
}
|
|
6160
6167
|
})(typeof window == "object" ? window : _p);
|
|
@@ -6167,7 +6174,7 @@ function $p() {
|
|
|
6167
6174
|
function e(T) {
|
|
6168
6175
|
return T && typeof T == "object" && "default" in T ? T.default : T;
|
|
6169
6176
|
}
|
|
6170
|
-
var t = Ya, n = e(t), s = Zp(), o = new s(), a = o.getBrowser(), r = o.getCPU(), i = o.getDevice(), l = o.getEngine(),
|
|
6177
|
+
var t = Ya, n = e(t), s = Zp(), o = new s(), a = o.getBrowser(), r = o.getCPU(), i = o.getDevice(), l = o.getEngine(), b = o.getOS(), O = o.getUA(), q = function(f) {
|
|
6171
6178
|
return o.setUA(f);
|
|
6172
6179
|
}, v = function(f) {
|
|
6173
6180
|
if (!f) {
|
|
@@ -6193,7 +6200,7 @@ function $p() {
|
|
|
6193
6200
|
cpu: r,
|
|
6194
6201
|
device: i,
|
|
6195
6202
|
engine: l,
|
|
6196
|
-
os:
|
|
6203
|
+
os: b,
|
|
6197
6204
|
ua: O,
|
|
6198
6205
|
setUa: q,
|
|
6199
6206
|
parseUserAgent: v
|
|
@@ -6201,20 +6208,20 @@ function $p() {
|
|
|
6201
6208
|
function B(T, f) {
|
|
6202
6209
|
var p = Object.keys(T);
|
|
6203
6210
|
if (Object.getOwnPropertySymbols) {
|
|
6204
|
-
var
|
|
6205
|
-
f && (
|
|
6211
|
+
var P = Object.getOwnPropertySymbols(T);
|
|
6212
|
+
f && (P = P.filter(function(Y) {
|
|
6206
6213
|
return Object.getOwnPropertyDescriptor(T, Y).enumerable;
|
|
6207
|
-
})), p.push.apply(p,
|
|
6214
|
+
})), p.push.apply(p, P);
|
|
6208
6215
|
}
|
|
6209
6216
|
return p;
|
|
6210
6217
|
}
|
|
6211
6218
|
function x(T) {
|
|
6212
6219
|
for (var f = 1; f < arguments.length; f++) {
|
|
6213
6220
|
var p = arguments[f] != null ? arguments[f] : {};
|
|
6214
|
-
f % 2 ? B(Object(p), !0).forEach(function(
|
|
6215
|
-
Q(T,
|
|
6216
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(T, Object.getOwnPropertyDescriptors(p)) : B(Object(p)).forEach(function(
|
|
6217
|
-
Object.defineProperty(T,
|
|
6221
|
+
f % 2 ? B(Object(p), !0).forEach(function(P) {
|
|
6222
|
+
Q(T, P, p[P]);
|
|
6223
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(T, Object.getOwnPropertyDescriptors(p)) : B(Object(p)).forEach(function(P) {
|
|
6224
|
+
Object.defineProperty(T, P, Object.getOwnPropertyDescriptor(p, P));
|
|
6218
6225
|
});
|
|
6219
6226
|
}
|
|
6220
6227
|
return T;
|
|
@@ -6231,14 +6238,14 @@ function $p() {
|
|
|
6231
6238
|
if (!(T instanceof f))
|
|
6232
6239
|
throw new TypeError("Cannot call a class as a function");
|
|
6233
6240
|
}
|
|
6234
|
-
function
|
|
6241
|
+
function y(T, f) {
|
|
6235
6242
|
for (var p = 0; p < f.length; p++) {
|
|
6236
|
-
var
|
|
6237
|
-
|
|
6243
|
+
var P = f[p];
|
|
6244
|
+
P.enumerable = P.enumerable || !1, P.configurable = !0, "value" in P && (P.writable = !0), Object.defineProperty(T, P.key, P);
|
|
6238
6245
|
}
|
|
6239
6246
|
}
|
|
6240
6247
|
function J(T, f, p) {
|
|
6241
|
-
return f &&
|
|
6248
|
+
return f && y(T.prototype, f), T;
|
|
6242
6249
|
}
|
|
6243
6250
|
function Q(T, f, p) {
|
|
6244
6251
|
return f in T ? Object.defineProperty(T, f, {
|
|
@@ -6252,8 +6259,8 @@ function $p() {
|
|
|
6252
6259
|
return me = Object.assign || function(T) {
|
|
6253
6260
|
for (var f = 1; f < arguments.length; f++) {
|
|
6254
6261
|
var p = arguments[f];
|
|
6255
|
-
for (var
|
|
6256
|
-
Object.prototype.hasOwnProperty.call(p,
|
|
6262
|
+
for (var P in p)
|
|
6263
|
+
Object.prototype.hasOwnProperty.call(p, P) && (T[P] = p[P]);
|
|
6257
6264
|
}
|
|
6258
6265
|
return T;
|
|
6259
6266
|
}, me.apply(this, arguments);
|
|
@@ -6275,24 +6282,24 @@ function $p() {
|
|
|
6275
6282
|
}, Ee(T);
|
|
6276
6283
|
}
|
|
6277
6284
|
function c(T, f) {
|
|
6278
|
-
return c = Object.setPrototypeOf || function(
|
|
6279
|
-
return
|
|
6285
|
+
return c = Object.setPrototypeOf || function(P, Y) {
|
|
6286
|
+
return P.__proto__ = Y, P;
|
|
6280
6287
|
}, c(T, f);
|
|
6281
6288
|
}
|
|
6282
6289
|
function d(T, f) {
|
|
6283
6290
|
if (T == null) return {};
|
|
6284
|
-
var p = {},
|
|
6285
|
-
for (ye = 0; ye <
|
|
6286
|
-
Y =
|
|
6291
|
+
var p = {}, P = Object.keys(T), Y, ye;
|
|
6292
|
+
for (ye = 0; ye < P.length; ye++)
|
|
6293
|
+
Y = P[ye], !(f.indexOf(Y) >= 0) && (p[Y] = T[Y]);
|
|
6287
6294
|
return p;
|
|
6288
6295
|
}
|
|
6289
6296
|
function m(T, f) {
|
|
6290
6297
|
if (T == null) return {};
|
|
6291
|
-
var p = d(T, f),
|
|
6298
|
+
var p = d(T, f), P, Y;
|
|
6292
6299
|
if (Object.getOwnPropertySymbols) {
|
|
6293
6300
|
var ye = Object.getOwnPropertySymbols(T);
|
|
6294
6301
|
for (Y = 0; Y < ye.length; Y++)
|
|
6295
|
-
|
|
6302
|
+
P = ye[Y], !(f.indexOf(P) >= 0) && Object.prototype.propertyIsEnumerable.call(T, P) && (p[P] = T[P]);
|
|
6296
6303
|
}
|
|
6297
6304
|
return p;
|
|
6298
6305
|
}
|
|
@@ -6317,9 +6324,9 @@ function $p() {
|
|
|
6317
6324
|
function h(T, f) {
|
|
6318
6325
|
var p = T == null ? null : typeof Symbol < "u" && T[Symbol.iterator] || T["@@iterator"];
|
|
6319
6326
|
if (p != null) {
|
|
6320
|
-
var
|
|
6327
|
+
var P = [], Y = !0, ye = !1, Ue, je;
|
|
6321
6328
|
try {
|
|
6322
|
-
for (p = p.call(T); !(Y = (Ue = p.next()).done) && (
|
|
6329
|
+
for (p = p.call(T); !(Y = (Ue = p.next()).done) && (P.push(Ue.value), !(f && P.length === f)); Y = !0)
|
|
6323
6330
|
;
|
|
6324
6331
|
} catch (pn) {
|
|
6325
6332
|
ye = !0, je = pn;
|
|
@@ -6330,7 +6337,7 @@ function $p() {
|
|
|
6330
6337
|
if (ye) throw je;
|
|
6331
6338
|
}
|
|
6332
6339
|
}
|
|
6333
|
-
return
|
|
6340
|
+
return P;
|
|
6334
6341
|
}
|
|
6335
6342
|
}
|
|
6336
6343
|
function w(T, f) {
|
|
@@ -6343,8 +6350,8 @@ function $p() {
|
|
|
6343
6350
|
}
|
|
6344
6351
|
function I(T, f) {
|
|
6345
6352
|
(f == null || f > T.length) && (f = T.length);
|
|
6346
|
-
for (var p = 0,
|
|
6347
|
-
return
|
|
6353
|
+
for (var p = 0, P = new Array(f); p < f; p++) P[p] = T[p];
|
|
6354
|
+
return P;
|
|
6348
6355
|
}
|
|
6349
6356
|
function N() {
|
|
6350
6357
|
throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
@@ -6428,69 +6435,69 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6428
6435
|
}, Be = function(f) {
|
|
6429
6436
|
var p = be();
|
|
6430
6437
|
return p && p.platform && (p.platform.indexOf(f) !== -1 || p.platform === "MacIntel" && p.maxTouchPoints > 1 && !window.MSStream);
|
|
6431
|
-
}, qe = function(f, p,
|
|
6438
|
+
}, qe = function(f, p, P, Y, ye) {
|
|
6432
6439
|
return {
|
|
6433
6440
|
isBrowser: f,
|
|
6434
6441
|
browserMajorVersion: j(p.major),
|
|
6435
6442
|
browserFullVersion: j(p.version),
|
|
6436
6443
|
browserName: j(p.name),
|
|
6437
|
-
engineName: j(
|
|
6438
|
-
engineVersion: j(
|
|
6444
|
+
engineName: j(P.name),
|
|
6445
|
+
engineVersion: j(P.version),
|
|
6439
6446
|
osName: j(Y.name),
|
|
6440
6447
|
osVersion: j(Y.version),
|
|
6441
6448
|
userAgent: j(ye)
|
|
6442
6449
|
};
|
|
6443
|
-
}, ze = function(f, p,
|
|
6450
|
+
}, ze = function(f, p, P, Y) {
|
|
6444
6451
|
return x({}, f, {
|
|
6445
6452
|
vendor: j(p.vendor),
|
|
6446
6453
|
model: j(p.model),
|
|
6447
|
-
os: j(
|
|
6448
|
-
osVersion: j(
|
|
6454
|
+
os: j(P.name),
|
|
6455
|
+
osVersion: j(P.version),
|
|
6449
6456
|
ua: j(Y)
|
|
6450
6457
|
});
|
|
6451
|
-
}, st = function(f, p,
|
|
6458
|
+
}, st = function(f, p, P, Y) {
|
|
6452
6459
|
return {
|
|
6453
6460
|
isSmartTV: f,
|
|
6454
6461
|
engineName: j(p.name),
|
|
6455
6462
|
engineVersion: j(p.version),
|
|
6456
|
-
osName: j(
|
|
6457
|
-
osVersion: j(
|
|
6463
|
+
osName: j(P.name),
|
|
6464
|
+
osVersion: j(P.version),
|
|
6458
6465
|
userAgent: j(Y)
|
|
6459
6466
|
};
|
|
6460
|
-
}, Ve = function(f, p,
|
|
6467
|
+
}, Ve = function(f, p, P, Y) {
|
|
6461
6468
|
return {
|
|
6462
6469
|
isConsole: f,
|
|
6463
6470
|
engineName: j(p.name),
|
|
6464
6471
|
engineVersion: j(p.version),
|
|
6465
|
-
osName: j(
|
|
6466
|
-
osVersion: j(
|
|
6472
|
+
osName: j(P.name),
|
|
6473
|
+
osVersion: j(P.version),
|
|
6467
6474
|
userAgent: j(Y)
|
|
6468
6475
|
};
|
|
6469
|
-
}, at = function(f, p,
|
|
6476
|
+
}, at = function(f, p, P, Y) {
|
|
6470
6477
|
return {
|
|
6471
6478
|
isWearable: f,
|
|
6472
6479
|
engineName: j(p.name),
|
|
6473
6480
|
engineVersion: j(p.version),
|
|
6474
|
-
osName: j(
|
|
6475
|
-
osVersion: j(
|
|
6481
|
+
osName: j(P.name),
|
|
6482
|
+
osVersion: j(P.version),
|
|
6476
6483
|
userAgent: j(Y)
|
|
6477
6484
|
};
|
|
6478
|
-
}, Fe = function(f, p,
|
|
6485
|
+
}, Fe = function(f, p, P, Y, ye) {
|
|
6479
6486
|
return {
|
|
6480
6487
|
isEmbedded: f,
|
|
6481
6488
|
vendor: j(p.vendor),
|
|
6482
6489
|
model: j(p.model),
|
|
6483
|
-
engineName: j(
|
|
6484
|
-
engineVersion: j(
|
|
6490
|
+
engineName: j(P.name),
|
|
6491
|
+
engineVersion: j(P.version),
|
|
6485
6492
|
osName: j(Y.name),
|
|
6486
6493
|
osVersion: j(Y.version),
|
|
6487
6494
|
userAgent: j(ye)
|
|
6488
6495
|
};
|
|
6489
6496
|
};
|
|
6490
6497
|
function Oe(T) {
|
|
6491
|
-
var f = T ? v(T) : S, p = f.device,
|
|
6498
|
+
var f = T ? v(T) : S, p = f.device, P = f.browser, Y = f.engine, ye = f.os, Ue = f.ua, je = Ce(p.type), pn = je.isBrowser, Va = je.isMobile, Ga = je.isTablet, No = je.isSmartTV, Bo = je.isConsole, Fo = je.isWearable, Ro = je.isEmbedded;
|
|
6492
6499
|
if (pn)
|
|
6493
|
-
return qe(pn,
|
|
6500
|
+
return qe(pn, P, Y, ye, Ue);
|
|
6494
6501
|
if (No)
|
|
6495
6502
|
return st(No, Y, ye, Ue);
|
|
6496
6503
|
if (Bo)
|
|
@@ -6529,7 +6536,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6529
6536
|
}, M = function(f) {
|
|
6530
6537
|
var p = f.vendor;
|
|
6531
6538
|
return j(p);
|
|
6532
|
-
},
|
|
6539
|
+
}, Z = function(f) {
|
|
6533
6540
|
var p = f.model;
|
|
6534
6541
|
return j(p);
|
|
6535
6542
|
}, ce = function(f) {
|
|
@@ -6541,19 +6548,19 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6541
6548
|
}, L = function(f) {
|
|
6542
6549
|
var p = f.name;
|
|
6543
6550
|
return p === oe.Windows;
|
|
6544
|
-
},
|
|
6551
|
+
}, D = function(f) {
|
|
6545
6552
|
var p = f.name;
|
|
6546
6553
|
return p === oe.MAC_OS;
|
|
6547
|
-
},
|
|
6554
|
+
}, _ = function(f) {
|
|
6548
6555
|
var p = f.name;
|
|
6549
6556
|
return p === oe.WindowsPhone;
|
|
6550
|
-
},
|
|
6557
|
+
}, te = function(f) {
|
|
6551
6558
|
var p = f.name;
|
|
6552
6559
|
return p === oe.IOS;
|
|
6553
|
-
},
|
|
6560
|
+
}, W = function(f) {
|
|
6554
6561
|
var p = f.version;
|
|
6555
6562
|
return j(p);
|
|
6556
|
-
},
|
|
6563
|
+
}, A = function(f) {
|
|
6557
6564
|
var p = f.name;
|
|
6558
6565
|
return j(p);
|
|
6559
6566
|
}, R = function(f) {
|
|
@@ -6580,10 +6587,10 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6580
6587
|
}, ee = function(f) {
|
|
6581
6588
|
var p = f.name;
|
|
6582
6589
|
return p === X.Opera;
|
|
6583
|
-
},
|
|
6590
|
+
}, V = function(f) {
|
|
6584
6591
|
var p = f.name;
|
|
6585
6592
|
return p === X.InternetExplorer || p === X.Ie;
|
|
6586
|
-
},
|
|
6593
|
+
}, $ = function(f) {
|
|
6587
6594
|
var p = f.name;
|
|
6588
6595
|
return p === X.MIUI;
|
|
6589
6596
|
}, ue = function(f) {
|
|
@@ -6622,39 +6629,39 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6622
6629
|
return j(f);
|
|
6623
6630
|
};
|
|
6624
6631
|
function Mt(T) {
|
|
6625
|
-
var f = T || S, p = f.device,
|
|
6632
|
+
var f = T || S, p = f.device, P = f.browser, Y = f.os, ye = f.engine, Ue = f.ua;
|
|
6626
6633
|
return {
|
|
6627
6634
|
isSmartTV: lt(p),
|
|
6628
6635
|
isConsole: U(p),
|
|
6629
6636
|
isWearable: Ut(p),
|
|
6630
6637
|
isEmbedded: K(p),
|
|
6631
|
-
isMobileSafari: z(
|
|
6632
|
-
isChromium: ae(
|
|
6638
|
+
isMobileSafari: z(P) || Je(),
|
|
6639
|
+
isChromium: ae(P),
|
|
6633
6640
|
isMobile: pt(p) || Je(),
|
|
6634
6641
|
isMobileOnly: ve(p),
|
|
6635
6642
|
isTablet: Lt(p) || Je(),
|
|
6636
6643
|
isBrowser: rt(p),
|
|
6637
6644
|
isDesktop: rt(p),
|
|
6638
6645
|
isAndroid: H(Y),
|
|
6639
|
-
isWinPhone:
|
|
6640
|
-
isIOS:
|
|
6641
|
-
isChrome: R(
|
|
6642
|
-
isFirefox: le(
|
|
6643
|
-
isSafari: se(
|
|
6644
|
-
isOpera: ee(
|
|
6645
|
-
isIE:
|
|
6646
|
-
osVersion:
|
|
6647
|
-
osName:
|
|
6648
|
-
fullBrowserVersion: re(
|
|
6649
|
-
browserVersion: Te(
|
|
6650
|
-
browserName: Re(
|
|
6646
|
+
isWinPhone: _(Y),
|
|
6647
|
+
isIOS: te(Y) || Je(),
|
|
6648
|
+
isChrome: R(P),
|
|
6649
|
+
isFirefox: le(P),
|
|
6650
|
+
isSafari: se(P),
|
|
6651
|
+
isOpera: ee(P),
|
|
6652
|
+
isIE: V(P),
|
|
6653
|
+
osVersion: W(Y),
|
|
6654
|
+
osName: A(Y),
|
|
6655
|
+
fullBrowserVersion: re(P),
|
|
6656
|
+
browserVersion: Te(P),
|
|
6657
|
+
browserName: Re(P),
|
|
6651
6658
|
mobileVendor: M(p),
|
|
6652
|
-
mobileModel:
|
|
6659
|
+
mobileModel: Z(p),
|
|
6653
6660
|
engineName: Ne(ye),
|
|
6654
6661
|
engineVersion: Pe(ye),
|
|
6655
6662
|
getUA: Kt(Ue),
|
|
6656
|
-
isEdge: ke(
|
|
6657
|
-
isYandex: Se(
|
|
6663
|
+
isEdge: ke(P) || Ye(Ue),
|
|
6664
|
+
isYandex: Se(P),
|
|
6658
6665
|
deviceType: ce(p),
|
|
6659
6666
|
isIOS13: dt(),
|
|
6660
6667
|
isIPad13: Je(),
|
|
@@ -6662,73 +6669,73 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6662
6669
|
isIPod13: Qt(),
|
|
6663
6670
|
isElectron: Ze(),
|
|
6664
6671
|
isEdgeChromium: Ye(Ue),
|
|
6665
|
-
isLegacyEdge: ke(
|
|
6672
|
+
isLegacyEdge: ke(P) && !Ye(Ue),
|
|
6666
6673
|
isWindows: L(Y),
|
|
6667
|
-
isMacOs:
|
|
6668
|
-
isMIUI:
|
|
6669
|
-
isSamsungBrowser: ue(
|
|
6674
|
+
isMacOs: D(Y),
|
|
6675
|
+
isMIUI: $(P),
|
|
6676
|
+
isSamsungBrowser: ue(P)
|
|
6670
6677
|
};
|
|
6671
6678
|
}
|
|
6672
|
-
var Le = lt(i), un = U(i), fn = Ut(i), js = K(i), Qs = z(a) || Je(), Ks = ae(a), mn = pt(i) || Je(), vo = ve(i), ko = Lt(i) || Je(), To = rt(i), Xs = rt(i), Co = H(
|
|
6679
|
+
var Le = lt(i), un = U(i), fn = Ut(i), js = K(i), Qs = z(a) || Je(), Ks = ae(a), mn = pt(i) || Je(), vo = ve(i), ko = Lt(i) || Je(), To = rt(i), Xs = rt(i), Co = H(b), Eo = _(b), xo = te(b) || Je(), _s = R(a), Zs = le(a), $s = se(a), ea = ee(a), So = V(a), ta = W(b), na = A(b), oa = re(a), sa = Te(a), aa = Re(a), ra = M(i), ia = Z(i), ca = Ne(l), la = Pe(l), da = Kt(O), ua = ke(a) || Ye(O), fa = Se(a), ma = ce(i), pa = dt(), ha = Je(), ga = xt(), wa = Qt(), ba = Ze(), ya = Ye(O), Aa = ke(a) && !Ye(O), va = L(b), ka = D(b), Ta = $(a), Ca = ue(a), Ea = function(f) {
|
|
6673
6680
|
if (!f || typeof f != "string") {
|
|
6674
6681
|
console.error("No valid user agent string was provided");
|
|
6675
6682
|
return;
|
|
6676
6683
|
}
|
|
6677
|
-
var p = v(f),
|
|
6684
|
+
var p = v(f), P = p.device, Y = p.browser, ye = p.os, Ue = p.engine, je = p.ua;
|
|
6678
6685
|
return Mt({
|
|
6679
|
-
device:
|
|
6686
|
+
device: P,
|
|
6680
6687
|
browser: Y,
|
|
6681
6688
|
os: ye,
|
|
6682
6689
|
engine: Ue,
|
|
6683
6690
|
ua: je
|
|
6684
6691
|
});
|
|
6685
6692
|
}, xa = function(f) {
|
|
6686
|
-
var p = f.renderWithFragment,
|
|
6687
|
-
return Co ? p ? n.createElement(t.Fragment, null,
|
|
6693
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6694
|
+
return Co ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6688
6695
|
}, Sa = function(f) {
|
|
6689
|
-
var p = f.renderWithFragment,
|
|
6690
|
-
return To ? p ? n.createElement(t.Fragment, null,
|
|
6696
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6697
|
+
return To ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6691
6698
|
}, Ia = function(f) {
|
|
6692
|
-
var p = f.renderWithFragment,
|
|
6693
|
-
return So ? p ? n.createElement(t.Fragment, null,
|
|
6699
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6700
|
+
return So ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6694
6701
|
}, Na = function(f) {
|
|
6695
|
-
var p = f.renderWithFragment,
|
|
6696
|
-
return xo ? p ? n.createElement(t.Fragment, null,
|
|
6702
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6703
|
+
return xo ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6697
6704
|
}, Ba = function(f) {
|
|
6698
|
-
var p = f.renderWithFragment,
|
|
6699
|
-
return mn ? p ? n.createElement(t.Fragment, null,
|
|
6705
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6706
|
+
return mn ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6700
6707
|
}, Fa = function(f) {
|
|
6701
|
-
var p = f.renderWithFragment,
|
|
6702
|
-
return ko ? p ? n.createElement(t.Fragment, null,
|
|
6708
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6709
|
+
return ko ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6703
6710
|
}, Ra = function(f) {
|
|
6704
|
-
var p = f.renderWithFragment,
|
|
6705
|
-
return Eo ? p ? n.createElement(t.Fragment, null,
|
|
6711
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6712
|
+
return Eo ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6706
6713
|
}, Oa = function(f) {
|
|
6707
|
-
var p = f.renderWithFragment,
|
|
6714
|
+
var p = f.renderWithFragment, P = f.children;
|
|
6708
6715
|
f.viewClassName, f.style;
|
|
6709
6716
|
var Y = m(f, ["renderWithFragment", "children", "viewClassName", "style"]);
|
|
6710
|
-
return vo ? p ? n.createElement(t.Fragment, null,
|
|
6717
|
+
return vo ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6711
6718
|
}, Pa = function(f) {
|
|
6712
|
-
var p = f.renderWithFragment,
|
|
6713
|
-
return Le ? p ? n.createElement(t.Fragment, null,
|
|
6719
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6720
|
+
return Le ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6714
6721
|
}, Da = function(f) {
|
|
6715
|
-
var p = f.renderWithFragment,
|
|
6716
|
-
return un ? p ? n.createElement(t.Fragment, null,
|
|
6722
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6723
|
+
return un ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6717
6724
|
}, La = function(f) {
|
|
6718
|
-
var p = f.renderWithFragment,
|
|
6719
|
-
return fn ? p ? n.createElement(t.Fragment, null,
|
|
6725
|
+
var p = f.renderWithFragment, P = f.children, Y = m(f, ["renderWithFragment", "children"]);
|
|
6726
|
+
return fn ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", Y, P) : null;
|
|
6720
6727
|
}, Ua = function(f) {
|
|
6721
|
-
var p = f.renderWithFragment,
|
|
6728
|
+
var p = f.renderWithFragment, P = f.children;
|
|
6722
6729
|
f.viewClassName, f.style;
|
|
6723
6730
|
var Y = f.condition, ye = m(f, ["renderWithFragment", "children", "viewClassName", "style", "condition"]);
|
|
6724
|
-
return Y ? p ? n.createElement(t.Fragment, null,
|
|
6731
|
+
return Y ? p ? n.createElement(t.Fragment, null, P) : n.createElement("div", ye, P) : null;
|
|
6725
6732
|
};
|
|
6726
6733
|
function Ma(T) {
|
|
6727
6734
|
return /* @__PURE__ */ (function(f) {
|
|
6728
6735
|
ge(p, f);
|
|
6729
|
-
function p(
|
|
6736
|
+
function p(P) {
|
|
6730
6737
|
var Y;
|
|
6731
|
-
return he(this, p), Y = u(this, Ee(p).call(this,
|
|
6738
|
+
return he(this, p), Y = u(this, Ee(p).call(this, P)), Y.isEventListenerAdded = !1, Y.handleOrientationChange = Y.handleOrientationChange.bind(C(Y)), Y.onOrientationChange = Y.onOrientationChange.bind(C(Y)), Y.onPageLoad = Y.onPageLoad.bind(C(Y)), Y.state = {
|
|
6732
6739
|
isLandscape: !1,
|
|
6733
6740
|
isPortrait: !1
|
|
6734
6741
|
}, Y;
|
|
@@ -6782,13 +6789,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6782
6789
|
isLandscape: ye === 90,
|
|
6783
6790
|
orientation: ye === 0 ? "portrait" : "landscape"
|
|
6784
6791
|
};
|
|
6785
|
-
}), f = g(T, 2), p = f[0],
|
|
6792
|
+
}), f = g(T, 2), p = f[0], P = f[1], Y = t.useCallback(function() {
|
|
6786
6793
|
var ye = window.innerWidth > window.innerHeight ? 90 : 0, Ue = {
|
|
6787
6794
|
isPortrait: ye === 0,
|
|
6788
6795
|
isLandscape: ye === 90,
|
|
6789
6796
|
orientation: ye === 0 ? "portrait" : "landscape"
|
|
6790
6797
|
};
|
|
6791
|
-
p.orientation !== Ue.orientation &&
|
|
6798
|
+
p.orientation !== Ue.orientation && P(Ue);
|
|
6792
6799
|
}, [p.orientation]);
|
|
6793
6800
|
return t.useEffect(function() {
|
|
6794
6801
|
return (typeof window > "u" ? "undefined" : k(window)) !== void 0 && mn && (Y(), window.addEventListener("load", Y, !1), window.addEventListener("resize", Y, !1)), function() {
|
|
@@ -6801,8 +6808,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
6801
6808
|
return v(f);
|
|
6802
6809
|
}
|
|
6803
6810
|
function Wa(T) {
|
|
6804
|
-
var f = T || window.navigator.userAgent, p = Io(f),
|
|
6805
|
-
return [
|
|
6811
|
+
var f = T || window.navigator.userAgent, p = Io(f), P = Mt(p);
|
|
6812
|
+
return [P, p];
|
|
6806
6813
|
}
|
|
6807
6814
|
return ne.AndroidView = xa, ne.BrowserTypes = X, ne.BrowserView = Sa, ne.ConsoleView = Da, ne.CustomView = Ua, ne.IEView = Ia, ne.IOSView = Na, ne.MobileOnlyView = Oa, ne.MobileView = Ba, ne.OsTypes = oe, ne.SmartTVView = Pa, ne.TabletView = Fa, ne.WearableView = La, ne.WinPhoneView = Ra, ne.browserName = aa, ne.browserVersion = sa, ne.deviceDetect = Oe, ne.deviceType = ma, ne.engineName = ca, ne.engineVersion = la, ne.fullBrowserVersion = oa, ne.getSelectorsByUserAgent = Ea, ne.getUA = da, ne.isAndroid = Co, ne.isBrowser = To, ne.isChrome = _s, ne.isChromium = Ks, ne.isConsole = un, ne.isDesktop = Xs, ne.isEdge = ua, ne.isEdgeChromium = ya, ne.isElectron = ba, ne.isEmbedded = js, ne.isFirefox = Zs, ne.isIE = So, ne.isIOS = xo, ne.isIOS13 = pa, ne.isIPad13 = ha, ne.isIPhone13 = ga, ne.isIPod13 = wa, ne.isLegacyEdge = Aa, ne.isMIUI = Ta, ne.isMacOs = ka, ne.isMobile = mn, ne.isMobileOnly = vo, ne.isMobileSafari = Qs, ne.isOpera = ea, ne.isSafari = $s, ne.isSamsungBrowser = Ca, ne.isSmartTV = Le, ne.isTablet = ko, ne.isWearable = fn, ne.isWinPhone = Eo, ne.isWindows = va, ne.isYandex = fa, ne.mobileModel = ia, ne.mobileVendor = ra, ne.osName = na, ne.osVersion = ta, ne.parseUserAgent = v, ne.setUserAgent = xe, ne.useDeviceData = Io, ne.useDeviceSelectors = Wa, ne.useMobileOrientation = Ha, ne.withOrientationChange = Ma, ne;
|
|
6808
6815
|
}
|
|
@@ -6953,11 +6960,11 @@ const oh = ({
|
|
|
6953
6960
|
const { t: a, ti: r } = Sn(), {
|
|
6954
6961
|
messages: i,
|
|
6955
6962
|
addMessage: l,
|
|
6956
|
-
updateMessageAction:
|
|
6963
|
+
updateMessageAction: b,
|
|
6957
6964
|
updateMessageText: O,
|
|
6958
6965
|
getMessageById: q,
|
|
6959
6966
|
clearMessagesById: v
|
|
6960
|
-
} = vp(), [S, B] = Xe(""), [x, k] = Xe(!1), [he,
|
|
6967
|
+
} = vp(), [S, B] = Xe(""), [x, k] = Xe(!1), [he, y] = Xe(!0), [J, Q] = Xe(null), me = St(null), ge = St(null), Ee = St(null), c = St(null), d = St(null), m = St(!1), C = St(he);
|
|
6961
6968
|
ct(() => {
|
|
6962
6969
|
C.current = he;
|
|
6963
6970
|
}, [he]);
|
|
@@ -7015,9 +7022,9 @@ const oh = ({
|
|
|
7015
7022
|
chain: h
|
|
7016
7023
|
});
|
|
7017
7024
|
if (M?.success && M?.data?.result) {
|
|
7018
|
-
const
|
|
7019
|
-
if (
|
|
7020
|
-
const ce =
|
|
7025
|
+
const Z = M.data.result;
|
|
7026
|
+
if (Z?.length > 0) {
|
|
7027
|
+
const ce = Z.map(
|
|
7021
7028
|
(H) => ({
|
|
7022
7029
|
id: H.token_address,
|
|
7023
7030
|
text: `${H.name}: ${H.balance_formatted} ${H.symbol} ($${ie(H.usd_value || 0)?.decimalPlaces(2).toFormat() || "0"})`,
|
|
@@ -7066,47 +7073,47 @@ const oh = ({
|
|
|
7066
7073
|
r
|
|
7067
7074
|
]
|
|
7068
7075
|
), j = Ie(
|
|
7069
|
-
async (U, K, M,
|
|
7076
|
+
async (U, K, M, Z) => {
|
|
7070
7077
|
const ce = [25, 50, 75, 100];
|
|
7071
7078
|
de({
|
|
7072
7079
|
srcTokenAddress: U,
|
|
7073
|
-
srcTokenDecimals:
|
|
7080
|
+
srcTokenDecimals: Z || 18
|
|
7074
7081
|
});
|
|
7075
7082
|
let H = M || "0";
|
|
7076
7083
|
if (U === Ge)
|
|
7077
7084
|
try {
|
|
7078
|
-
const
|
|
7085
|
+
const D = await Jn({
|
|
7079
7086
|
chainId: w,
|
|
7080
7087
|
rpcUrl: F
|
|
7081
7088
|
});
|
|
7082
|
-
if (
|
|
7083
|
-
const
|
|
7084
|
-
wt(M,
|
|
7085
|
-
).minus(
|
|
7086
|
-
|
|
7087
|
-
Me(BigInt(
|
|
7089
|
+
if (D.isGreaterThan(0)) {
|
|
7090
|
+
const _ = D.times(1e6), W = new ie(
|
|
7091
|
+
wt(M, Z || 18).toString()
|
|
7092
|
+
).minus(_);
|
|
7093
|
+
W.isGreaterThan(0) ? H = ie(
|
|
7094
|
+
Me(BigInt(W.toFixed(0)), 18)
|
|
7088
7095
|
).toFixed() : H = "0";
|
|
7089
7096
|
}
|
|
7090
|
-
} catch (
|
|
7097
|
+
} catch (D) {
|
|
7091
7098
|
console.warn(
|
|
7092
7099
|
"getGasPrice for swap native fee deduction failed:",
|
|
7093
|
-
|
|
7100
|
+
D
|
|
7094
7101
|
);
|
|
7095
7102
|
}
|
|
7096
7103
|
const L = ce.map(
|
|
7097
|
-
(
|
|
7098
|
-
id: `percent-${
|
|
7099
|
-
text: `${
|
|
7104
|
+
(D) => ({
|
|
7105
|
+
id: `percent-${D}`,
|
|
7106
|
+
text: `${D}%`,
|
|
7100
7107
|
value: r("buttonUsePercent", {
|
|
7101
|
-
percent: String(
|
|
7108
|
+
percent: String(D),
|
|
7102
7109
|
symbol: K
|
|
7103
7110
|
}),
|
|
7104
7111
|
action: "select_percent",
|
|
7105
7112
|
extraData: {
|
|
7106
|
-
percent:
|
|
7113
|
+
percent: D,
|
|
7107
7114
|
tokenAddress: U,
|
|
7108
7115
|
tokenSymbol: K,
|
|
7109
|
-
tokenDecimals:
|
|
7116
|
+
tokenDecimals: Z || 18,
|
|
7110
7117
|
tokenBalance: H
|
|
7111
7118
|
}
|
|
7112
7119
|
})
|
|
@@ -7127,15 +7134,15 @@ const oh = ({
|
|
|
7127
7134
|
},
|
|
7128
7135
|
[l, w, F, de, r]
|
|
7129
7136
|
), be = Ie(
|
|
7130
|
-
async (U, K, M,
|
|
7137
|
+
async (U, K, M, Z) => {
|
|
7131
7138
|
const ce = {
|
|
7132
7139
|
amount: (parseFloat(K) * (U / 100)).toFixed(6)
|
|
7133
7140
|
};
|
|
7134
|
-
M !== void 0 && (ce.srcTokenAddress = M),
|
|
7141
|
+
M !== void 0 && (ce.srcTokenAddress = M), Z !== void 0 && (ce.srcTokenDecimals = Z), de(ce);
|
|
7135
7142
|
const H = X(), L = wt(
|
|
7136
7143
|
H.amount,
|
|
7137
7144
|
H.srcTokenDecimals || 18
|
|
7138
|
-
).toString(),
|
|
7145
|
+
).toString(), D = await Wn({
|
|
7139
7146
|
chainId: w,
|
|
7140
7147
|
tokenIn: H.srcTokenAddress,
|
|
7141
7148
|
tokenInAmount: L,
|
|
@@ -7144,19 +7151,19 @@ const oh = ({
|
|
|
7144
7151
|
slippage: "auto",
|
|
7145
7152
|
accesstoken: "d6c45897b8f6"
|
|
7146
7153
|
});
|
|
7147
|
-
if (
|
|
7148
|
-
const
|
|
7149
|
-
Me(BigInt(
|
|
7154
|
+
if (D.success && D.data) {
|
|
7155
|
+
const _ = D.data, te = _.tokenIn, W = _.tokenOut, A = ie(
|
|
7156
|
+
Me(BigInt(te.amount || 0), te.decimals)
|
|
7150
7157
|
).decimalPlaces(6).toFormat(), R = ie(
|
|
7151
|
-
Me(BigInt(
|
|
7158
|
+
Me(BigInt(W.amount || 0), W.decimals)
|
|
7152
7159
|
).decimalPlaces(6).toFormat(), le = H.srcTokenAddress === Ge || H.srcTokenAddress === "";
|
|
7153
7160
|
let ae = !1;
|
|
7154
|
-
if (!le && u?.address &&
|
|
7161
|
+
if (!le && u?.address && _.tx?.to)
|
|
7155
7162
|
try {
|
|
7156
7163
|
const ue = await Yn({
|
|
7157
7164
|
tokenAddress: H.srcTokenAddress,
|
|
7158
7165
|
ownerAddress: u.address,
|
|
7159
|
-
spenderAddress:
|
|
7166
|
+
spenderAddress: _.tx.to,
|
|
7160
7167
|
chainId: w,
|
|
7161
7168
|
rpcUrl: F
|
|
7162
7169
|
});
|
|
@@ -7166,15 +7173,16 @@ const oh = ({
|
|
|
7166
7173
|
} catch (ue) {
|
|
7167
7174
|
console.warn("Allowance check failed:", ue), ae = !0;
|
|
7168
7175
|
}
|
|
7169
|
-
const ke =
|
|
7176
|
+
const ke = _.estimatedTransactionFee?.total ? ie(_.estimatedTransactionFee.total) : ie(0);
|
|
7170
7177
|
let Se = ie(0);
|
|
7171
7178
|
if (ae && u?.address)
|
|
7172
7179
|
try {
|
|
7173
7180
|
const ue = vn({
|
|
7174
7181
|
tokenAddress: H.srcTokenAddress,
|
|
7175
|
-
spenderAddress:
|
|
7182
|
+
spenderAddress: _.tx?.to || "",
|
|
7176
7183
|
fromAddress: u.address,
|
|
7177
|
-
chainId: w
|
|
7184
|
+
chainId: w,
|
|
7185
|
+
amount: L
|
|
7178
7186
|
});
|
|
7179
7187
|
Se = await en({
|
|
7180
7188
|
from: u.address,
|
|
@@ -7187,7 +7195,7 @@ const oh = ({
|
|
|
7187
7195
|
console.warn("Approve fee estimation failed:", ue);
|
|
7188
7196
|
}
|
|
7189
7197
|
const se = ke.plus(Se), z = g?.nativeCurrency?.symbol || "native";
|
|
7190
|
-
let ee = "",
|
|
7198
|
+
let ee = "", V = !1;
|
|
7191
7199
|
if (u?.address && se.isGreaterThan(0))
|
|
7192
7200
|
try {
|
|
7193
7201
|
const ue = await kn({
|
|
@@ -7196,7 +7204,7 @@ const oh = ({
|
|
|
7196
7204
|
rpcUrl: F
|
|
7197
7205
|
});
|
|
7198
7206
|
if (ue.isLessThan(se)) {
|
|
7199
|
-
|
|
7207
|
+
V = !0;
|
|
7200
7208
|
const re = ie(
|
|
7201
7209
|
Me(BigInt(ue.toFixed(0)), 18)
|
|
7202
7210
|
).decimalPlaces(6).toFormat(), Te = ie(
|
|
@@ -7211,27 +7219,28 @@ const oh = ({
|
|
|
7211
7219
|
} catch (ue) {
|
|
7212
7220
|
console.warn("Fee balance check failed:", ue);
|
|
7213
7221
|
}
|
|
7214
|
-
const
|
|
7222
|
+
const $ = `From: ${A} ${te.symbol}
|
|
7215
7223
|
⬇️
|
|
7216
|
-
To: ${R} ${
|
|
7224
|
+
To: ${R} ${W.symbol}
|
|
7217
7225
|
|
|
7218
7226
|
` + ee + `
|
|
7219
7227
|
`;
|
|
7220
|
-
if (
|
|
7221
|
-
l(
|
|
7228
|
+
if (V)
|
|
7229
|
+
l($, "bot");
|
|
7222
7230
|
else if (ae) {
|
|
7223
|
-
const ue =
|
|
7231
|
+
const ue = $ + r("swapNeedApprove", { symbol: te.symbol }), re = [
|
|
7224
7232
|
{
|
|
7225
7233
|
id: "approve-for-swap",
|
|
7226
|
-
text: r("swapApproveButton", { symbol:
|
|
7227
|
-
value: r("swapApproveValue", { symbol:
|
|
7234
|
+
text: r("swapApproveButton", { symbol: te.symbol }),
|
|
7235
|
+
value: r("swapApproveValue", { symbol: te.symbol }),
|
|
7228
7236
|
action: "approve_for_swap",
|
|
7229
7237
|
fullWidth: !0,
|
|
7230
7238
|
extraData: {
|
|
7231
7239
|
tokenAddress: H.srcTokenAddress,
|
|
7232
|
-
spenderAddress:
|
|
7233
|
-
tokenSymbol:
|
|
7234
|
-
|
|
7240
|
+
spenderAddress: _.tx.to,
|
|
7241
|
+
tokenSymbol: te.symbol,
|
|
7242
|
+
amountInWei: L,
|
|
7243
|
+
tx: _.tx
|
|
7235
7244
|
}
|
|
7236
7245
|
}
|
|
7237
7246
|
];
|
|
@@ -7244,12 +7253,12 @@ To: ${R} ${V.symbol}
|
|
|
7244
7253
|
value: a("swapConfirmValue"),
|
|
7245
7254
|
action: "confirm_swap",
|
|
7246
7255
|
extraData: {
|
|
7247
|
-
tx:
|
|
7256
|
+
tx: _.tx
|
|
7248
7257
|
}
|
|
7249
7258
|
}
|
|
7250
7259
|
];
|
|
7251
7260
|
l(
|
|
7252
|
-
|
|
7261
|
+
$ + a("swapReadyToProceed"),
|
|
7253
7262
|
"bot",
|
|
7254
7263
|
void 0,
|
|
7255
7264
|
ue
|
|
@@ -7258,7 +7267,7 @@ To: ${R} ${V.symbol}
|
|
|
7258
7267
|
} else
|
|
7259
7268
|
l(
|
|
7260
7269
|
r("swapEstimationError", {
|
|
7261
|
-
error:
|
|
7270
|
+
error: D.errorMessage || D.error || "Unknown error"
|
|
7262
7271
|
}),
|
|
7263
7272
|
"bot"
|
|
7264
7273
|
);
|
|
@@ -7281,7 +7290,7 @@ To: ${R} ${V.symbol}
|
|
|
7281
7290
|
c.current = U, B(U);
|
|
7282
7291
|
return;
|
|
7283
7292
|
}
|
|
7284
|
-
if (l(U, "user"),
|
|
7293
|
+
if (l(U, "user"), y(!1), k(!0), K)
|
|
7285
7294
|
switch (await $e(500), K) {
|
|
7286
7295
|
case "click_buy_item_token_button":
|
|
7287
7296
|
await xe(
|
|
@@ -7307,23 +7316,23 @@ To: ${R} ${V.symbol}
|
|
|
7307
7316
|
break;
|
|
7308
7317
|
case "confirm_swap":
|
|
7309
7318
|
if (M?.tx && n) {
|
|
7310
|
-
const
|
|
7319
|
+
const Z = M.tx, ce = {
|
|
7311
7320
|
from: u?.address || "",
|
|
7312
|
-
to:
|
|
7313
|
-
data:
|
|
7314
|
-
value:
|
|
7321
|
+
to: Z.to,
|
|
7322
|
+
data: Z.data,
|
|
7323
|
+
value: Z.value,
|
|
7315
7324
|
chainId: w
|
|
7316
7325
|
}, H = l(a("txProcessing"), "bot");
|
|
7317
7326
|
try {
|
|
7318
7327
|
k(!1);
|
|
7319
7328
|
const L = await n(ce);
|
|
7320
7329
|
if (L.status === "success" && L.transactionHash) {
|
|
7321
|
-
const
|
|
7322
|
-
[View on Explorer](${
|
|
7330
|
+
const D = g?.blockExplorers?.default?.url, _ = D ? `
|
|
7331
|
+
[View on Explorer](${D}/tx/${L.transactionHash})` : `
|
|
7323
7332
|
Tx: ${L.transactionHash}`;
|
|
7324
7333
|
O(
|
|
7325
7334
|
H.id,
|
|
7326
|
-
a("txSubmitted") +
|
|
7335
|
+
a("txSubmitted") + _
|
|
7327
7336
|
);
|
|
7328
7337
|
try {
|
|
7329
7338
|
await $e(2e3), (await Gn({
|
|
@@ -7332,25 +7341,25 @@ Tx: ${L.transactionHash}`;
|
|
|
7332
7341
|
rpcUrl: F
|
|
7333
7342
|
})).status === "success" ? O(
|
|
7334
7343
|
H.id,
|
|
7335
|
-
a("txConfirmedSwap") +
|
|
7344
|
+
a("txConfirmedSwap") + _
|
|
7336
7345
|
) : O(
|
|
7337
7346
|
H.id,
|
|
7338
|
-
a("txRevertedSwap") +
|
|
7347
|
+
a("txRevertedSwap") + _
|
|
7339
7348
|
);
|
|
7340
|
-
} catch (
|
|
7341
|
-
console.warn("Transaction tracking timeout:",
|
|
7349
|
+
} catch (te) {
|
|
7350
|
+
console.warn("Transaction tracking timeout:", te), O(
|
|
7342
7351
|
H.id,
|
|
7343
|
-
a("txTimeout") +
|
|
7352
|
+
a("txTimeout") + _
|
|
7344
7353
|
);
|
|
7345
7354
|
}
|
|
7346
7355
|
} else if (L.status === "success")
|
|
7347
7356
|
O(H.id, a("txSuccessfulSwap"));
|
|
7348
7357
|
else {
|
|
7349
|
-
const
|
|
7358
|
+
const D = L.error ? `
|
|
7350
7359
|
Error: ${L.error}` : "";
|
|
7351
7360
|
O(
|
|
7352
7361
|
H.id,
|
|
7353
|
-
a("txFailed") +
|
|
7362
|
+
a("txFailed") + D
|
|
7354
7363
|
);
|
|
7355
7364
|
}
|
|
7356
7365
|
} catch (L) {
|
|
@@ -7360,45 +7369,46 @@ Error: ${L.error}` : "";
|
|
|
7360
7369
|
l(a("txDataNotAvailable"), "bot");
|
|
7361
7370
|
break;
|
|
7362
7371
|
case "approve_for_swap": {
|
|
7363
|
-
const
|
|
7364
|
-
if (!
|
|
7372
|
+
const Z = M?.tokenAddress || "", ce = M?.spenderAddress || "", H = M?.tokenSymbol || "token", L = M?.tx;
|
|
7373
|
+
if (!Z || !ce || !n) {
|
|
7365
7374
|
l(a("approvalDataNotAvailable"), "bot");
|
|
7366
7375
|
break;
|
|
7367
7376
|
}
|
|
7368
|
-
const
|
|
7369
|
-
tokenAddress:
|
|
7377
|
+
const D = M?.amountInWei || void 0, _ = vn({
|
|
7378
|
+
tokenAddress: Z,
|
|
7370
7379
|
spenderAddress: ce,
|
|
7371
7380
|
fromAddress: u?.address || "",
|
|
7372
7381
|
chainId: w,
|
|
7373
|
-
tokenSymbol: H
|
|
7374
|
-
|
|
7375
|
-
|
|
7376
|
-
|
|
7377
|
-
|
|
7378
|
-
|
|
7379
|
-
|
|
7382
|
+
tokenSymbol: H,
|
|
7383
|
+
amount: D
|
|
7384
|
+
}), te = {
|
|
7385
|
+
from: _.from,
|
|
7386
|
+
to: _.to,
|
|
7387
|
+
data: _.data,
|
|
7388
|
+
value: _.value,
|
|
7389
|
+
chainId: _.chainId
|
|
7380
7390
|
};
|
|
7381
7391
|
l(r("approving", { symbol: H }), "bot");
|
|
7382
7392
|
try {
|
|
7383
7393
|
k(!1);
|
|
7384
|
-
const
|
|
7385
|
-
let
|
|
7386
|
-
if (
|
|
7394
|
+
const W = await n(te);
|
|
7395
|
+
let A = W.status === "success";
|
|
7396
|
+
if (W.status === "success" && W.transactionHash)
|
|
7387
7397
|
try {
|
|
7388
|
-
|
|
7389
|
-
transactionHash:
|
|
7398
|
+
A = (await Gn({
|
|
7399
|
+
transactionHash: W.transactionHash,
|
|
7390
7400
|
chainId: w || 1,
|
|
7391
7401
|
rpcUrl: F
|
|
7392
7402
|
})).status === "success";
|
|
7393
|
-
} catch (
|
|
7394
|
-
console.warn("Approval tracking timeout:",
|
|
7403
|
+
} catch (R) {
|
|
7404
|
+
console.warn("Approval tracking timeout:", R), A = !0;
|
|
7395
7405
|
}
|
|
7396
|
-
if (
|
|
7406
|
+
if (A) {
|
|
7397
7407
|
l(
|
|
7398
7408
|
r("approvalSuccess", { symbol: H }),
|
|
7399
7409
|
"bot"
|
|
7400
7410
|
);
|
|
7401
|
-
const
|
|
7411
|
+
const R = [
|
|
7402
7412
|
{
|
|
7403
7413
|
id: "confirm-swap-after-approve",
|
|
7404
7414
|
text: a("confirmSwapButton"),
|
|
@@ -7412,64 +7422,64 @@ Error: ${L.error}` : "";
|
|
|
7412
7422
|
a("approvalConfirmSwap"),
|
|
7413
7423
|
"bot",
|
|
7414
7424
|
void 0,
|
|
7415
|
-
|
|
7425
|
+
R
|
|
7416
7426
|
);
|
|
7417
7427
|
} else {
|
|
7418
|
-
const
|
|
7419
|
-
Error: ${
|
|
7420
|
-
l(a("approvalFailed") +
|
|
7428
|
+
const R = W.error ? `
|
|
7429
|
+
Error: ${W.error}` : "";
|
|
7430
|
+
l(a("approvalFailed") + R, "bot");
|
|
7421
7431
|
}
|
|
7422
|
-
} catch (
|
|
7423
|
-
console.error("Approval error:",
|
|
7432
|
+
} catch (W) {
|
|
7433
|
+
console.error("Approval error:", W), l(a("approvalFailed"), "bot");
|
|
7424
7434
|
}
|
|
7425
7435
|
break;
|
|
7426
7436
|
}
|
|
7427
7437
|
case "click_swap_dest_token": {
|
|
7428
|
-
const
|
|
7438
|
+
const Z = M?.tokenAddress || "", ce = M?.symbol || "", H = M?.decimals || 18;
|
|
7429
7439
|
de({
|
|
7430
|
-
descTokenAddress:
|
|
7440
|
+
descTokenAddress: Z,
|
|
7431
7441
|
descTokenDecimals: H
|
|
7432
7442
|
});
|
|
7433
|
-
const L = X(),
|
|
7443
|
+
const L = X(), D = L.srcTokenAddress || "", _ = D === Ge;
|
|
7434
7444
|
try {
|
|
7435
|
-
const
|
|
7445
|
+
const te = await Qe({
|
|
7436
7446
|
address: u?.address || "",
|
|
7437
7447
|
chain: h
|
|
7438
7448
|
});
|
|
7439
|
-
if (
|
|
7440
|
-
const
|
|
7441
|
-
let
|
|
7442
|
-
if (
|
|
7443
|
-
const le =
|
|
7449
|
+
if (te?.success && te?.data?.result) {
|
|
7450
|
+
const W = te.data.result;
|
|
7451
|
+
let A = "", R = "0";
|
|
7452
|
+
if (_) {
|
|
7453
|
+
const le = W.find(
|
|
7444
7454
|
(ae) => ae.native_token
|
|
7445
7455
|
);
|
|
7446
|
-
|
|
7456
|
+
A = g?.nativeCurrency?.symbol || "ETH", R = le?.balance_formatted || "0";
|
|
7447
7457
|
} else {
|
|
7448
|
-
const le =
|
|
7449
|
-
(ae) => ae.token_address.toLowerCase() ===
|
|
7458
|
+
const le = W.find(
|
|
7459
|
+
(ae) => ae.token_address.toLowerCase() === D.toLowerCase()
|
|
7450
7460
|
);
|
|
7451
|
-
le && (
|
|
7461
|
+
le && (A = le.symbol, R = le.balance_formatted);
|
|
7452
7462
|
}
|
|
7453
|
-
if (
|
|
7463
|
+
if (A && parseFloat(R) > 0) {
|
|
7454
7464
|
const le = [25, 50, 75, 100], ae = L.srcTokenDecimals || 18, ke = le.map((Se) => ({
|
|
7455
7465
|
id: `percent-${Se}`,
|
|
7456
7466
|
text: `${Se}%`,
|
|
7457
7467
|
value: r("buttonUsePercent", {
|
|
7458
7468
|
percent: String(Se),
|
|
7459
|
-
symbol:
|
|
7469
|
+
symbol: A
|
|
7460
7470
|
}),
|
|
7461
7471
|
action: "select_percent",
|
|
7462
7472
|
extraData: {
|
|
7463
7473
|
percent: Se,
|
|
7464
|
-
tokenAddress:
|
|
7465
|
-
tokenSymbol:
|
|
7474
|
+
tokenAddress: D,
|
|
7475
|
+
tokenSymbol: A,
|
|
7466
7476
|
tokenDecimals: ae,
|
|
7467
7477
|
tokenBalance: R
|
|
7468
7478
|
}
|
|
7469
7479
|
}));
|
|
7470
7480
|
l(
|
|
7471
7481
|
r("swapSelectAmount", {
|
|
7472
|
-
from:
|
|
7482
|
+
from: A,
|
|
7473
7483
|
to: ce,
|
|
7474
7484
|
balance: R
|
|
7475
7485
|
}),
|
|
@@ -7481,24 +7491,24 @@ Error: ${$.error}` : "";
|
|
|
7481
7491
|
l(a("swapNoSourceToken"), "bot");
|
|
7482
7492
|
} else
|
|
7483
7493
|
l(a("couldNotFetchBalance"), "bot");
|
|
7484
|
-
} catch (
|
|
7485
|
-
console.error("Error in click_swap_dest_token:",
|
|
7494
|
+
} catch (te) {
|
|
7495
|
+
console.error("Error in click_swap_dest_token:", te), l(a("couldNotLoadBalance"), "bot");
|
|
7486
7496
|
}
|
|
7487
7497
|
break;
|
|
7488
7498
|
}
|
|
7489
7499
|
case "select_nft_to_send": {
|
|
7490
|
-
const
|
|
7500
|
+
const Z = M?.name || "NFT", ce = M?.contractAddress || "", H = M?.tokenId || "", L = M?.tokenStandard || "ERC721", D = M?.amount || "1", _ = M?.image || "", te = M?.toAddress || "", W = {
|
|
7491
7501
|
contract_address: ce,
|
|
7492
7502
|
token_id: H,
|
|
7493
|
-
to_address:
|
|
7503
|
+
to_address: te,
|
|
7494
7504
|
token_standard: L,
|
|
7495
7505
|
amount: "1",
|
|
7496
|
-
maxAmount:
|
|
7497
|
-
nft_name:
|
|
7506
|
+
maxAmount: D,
|
|
7507
|
+
nft_name: Z
|
|
7498
7508
|
};
|
|
7499
7509
|
l(
|
|
7500
7510
|
r("nftSendReview", {
|
|
7501
|
-
name:
|
|
7511
|
+
name: Z,
|
|
7502
7512
|
standard: L,
|
|
7503
7513
|
tokenId: H
|
|
7504
7514
|
}),
|
|
@@ -7507,11 +7517,11 @@ Error: ${$.error}` : "";
|
|
|
7507
7517
|
void 0,
|
|
7508
7518
|
{
|
|
7509
7519
|
action: "send_nft",
|
|
7510
|
-
parameters:
|
|
7520
|
+
parameters: W,
|
|
7511
7521
|
status: "pending",
|
|
7512
7522
|
nftInfo: {
|
|
7513
|
-
name:
|
|
7514
|
-
image:
|
|
7523
|
+
name: Z,
|
|
7524
|
+
image: _ || void 0,
|
|
7515
7525
|
tokenId: H,
|
|
7516
7526
|
contractAddress: ce,
|
|
7517
7527
|
tokenStandard: L
|
|
@@ -7529,8 +7539,8 @@ Error: ${$.error}` : "";
|
|
|
7529
7539
|
else
|
|
7530
7540
|
await $e(500), l(r("receivedButtonValue", { value: U }), "bot");
|
|
7531
7541
|
k(!1), Nt.isDesktop && Ee.current?.focus();
|
|
7532
|
-
} catch (
|
|
7533
|
-
l(a("errorProcessingRequest"), "bot"), k(!1), console.error("Error handling button click:",
|
|
7542
|
+
} catch (Z) {
|
|
7543
|
+
l(a("errorProcessingRequest"), "bot"), k(!1), console.error("Error handling button click:", Z);
|
|
7534
7544
|
}
|
|
7535
7545
|
},
|
|
7536
7546
|
[
|
|
@@ -7558,13 +7568,13 @@ Error: ${$.error}` : "";
|
|
|
7558
7568
|
tt.getTopGainers(E, "24h", 5),
|
|
7559
7569
|
tt.getTokensDetails(U, E)
|
|
7560
7570
|
]);
|
|
7561
|
-
let
|
|
7562
|
-
K.status === "fulfilled" && K.value?.data ?
|
|
7563
|
-
(L,
|
|
7564
|
-
(
|
|
7571
|
+
let Z = [];
|
|
7572
|
+
K.status === "fulfilled" && K.value?.data ? Z = [...K.value.data] : console.warn("⚠️ Top gainers failed:"), M.status === "fulfilled" && M.value?.data ? Z = [...M.value.data, ...Z] : console.warn("⚠️ Default tokens failed:"), Z = Z.filter(
|
|
7573
|
+
(L, D, _) => D === _.findIndex(
|
|
7574
|
+
(te) => te.address.toLowerCase() === L.address.toLowerCase()
|
|
7565
7575
|
)
|
|
7566
7576
|
);
|
|
7567
|
-
const ce =
|
|
7577
|
+
const ce = Z.map((L) => ({
|
|
7568
7578
|
id: L?.symbol,
|
|
7569
7579
|
text: L?.symbol,
|
|
7570
7580
|
value: r("buttonBuyToken", {
|
|
@@ -7582,8 +7592,8 @@ Error: ${$.error}` : "";
|
|
|
7582
7592
|
r("trendingTokensHeader", { chain: g?.name || "Unknown" }),
|
|
7583
7593
|
"bot"
|
|
7584
7594
|
);
|
|
7585
|
-
const H =
|
|
7586
|
-
(L,
|
|
7595
|
+
const H = Z.map(
|
|
7596
|
+
(L, D) => `${D + 1}. ${L.name} (${L?.auditGoplus?.token_symbol || L.symbol || "Unknown"})
|
|
7587
7597
|
$${ie(
|
|
7588
7598
|
L?.price || 0
|
|
7589
7599
|
).decimalPlaces(4).toFormat()} (${L.price_change_percentage_24h || L.priceChange}%)
|
|
@@ -7622,32 +7632,32 @@ $${ie(
|
|
|
7622
7632
|
exclude_spam: !1
|
|
7623
7633
|
});
|
|
7624
7634
|
if (M?.success && M?.data?.result && M.data.result.length > 0) {
|
|
7625
|
-
const
|
|
7635
|
+
const Z = M.data.result;
|
|
7626
7636
|
let ce = M.data.result;
|
|
7627
7637
|
K && K > 0 && (ce = ce.slice(0, K));
|
|
7628
|
-
const H = ce.map((
|
|
7629
|
-
const
|
|
7638
|
+
const H = ce.map((D) => {
|
|
7639
|
+
const _ = D.normalized_metadata?.name || D.name || `#${D.token_id}`, te = D.normalized_metadata?.image || D.media?.original_media_url || "";
|
|
7630
7640
|
return {
|
|
7631
|
-
id: `${
|
|
7632
|
-
text: `${
|
|
7633
|
-
value: r("buttonSendNft", { name:
|
|
7641
|
+
id: `${D.token_address}-${D.token_id}`,
|
|
7642
|
+
text: `${_} (${D.symbol || D.contract_type}) - ${D.token_id}`,
|
|
7643
|
+
value: r("buttonSendNft", { name: _ }),
|
|
7634
7644
|
action: "select_nft_to_send",
|
|
7635
7645
|
fullWidth: !0,
|
|
7636
7646
|
extraData: {
|
|
7637
|
-
contractAddress:
|
|
7638
|
-
tokenId:
|
|
7639
|
-
tokenStandard:
|
|
7640
|
-
name:
|
|
7641
|
-
symbol:
|
|
7642
|
-
amount:
|
|
7643
|
-
image:
|
|
7647
|
+
contractAddress: D.token_address,
|
|
7648
|
+
tokenId: D.token_id,
|
|
7649
|
+
tokenStandard: D.contract_type,
|
|
7650
|
+
name: _,
|
|
7651
|
+
symbol: D.symbol,
|
|
7652
|
+
amount: D.amount,
|
|
7653
|
+
image: te
|
|
7644
7654
|
}
|
|
7645
7655
|
};
|
|
7646
|
-
}), L = ce.map((
|
|
7647
|
-
const
|
|
7656
|
+
}), L = ce.map((D, _) => {
|
|
7657
|
+
const te = D.normalized_metadata?.name || D.name || `#${D.token_id}`, W = D.contract_type === "ERC1155" ? ` (x${D.amount})` : "", A = D.normalized_metadata?.image || D.media?.original_media_url || "", R = A ? `
|
|
7648
7658
|
` : "🖼️ ";
|
|
7649
|
-
return `${
|
|
7650
|
-
${
|
|
7659
|
+
return `${_ + 1}. ${R}**${te}**${W}
|
|
7660
|
+
${D.symbol || D.contract_type} | Token ID: ${D.token_id}`;
|
|
7651
7661
|
}).join(`
|
|
7652
7662
|
|
|
7653
7663
|
`);
|
|
@@ -7655,13 +7665,13 @@ $${ie(
|
|
|
7655
7665
|
`${r("nftCollectionHeader", {
|
|
7656
7666
|
count: String(ce.length),
|
|
7657
7667
|
list: L
|
|
7658
|
-
})}${K && K > 0 &&
|
|
7659
|
-
count: String(
|
|
7668
|
+
})}${K && K > 0 && Z.length > K ? r("nftMoreItems", {
|
|
7669
|
+
count: String(Z.length - K)
|
|
7660
7670
|
}) : ""}${a("nftSelectBelow")}`,
|
|
7661
7671
|
"bot",
|
|
7662
7672
|
void 0,
|
|
7663
7673
|
H
|
|
7664
|
-
), K && K > 0 &&
|
|
7674
|
+
), K && K > 0 && Z.length > K && l(a("sendOtherNfts"), "bot");
|
|
7665
7675
|
} else
|
|
7666
7676
|
k(!1), l(a("nftNoCollection"), "bot");
|
|
7667
7677
|
} catch (M) {
|
|
@@ -7701,7 +7711,7 @@ $${ie(
|
|
|
7701
7711
|
fullWidth: !!Nt.isMobile
|
|
7702
7712
|
}
|
|
7703
7713
|
]
|
|
7704
|
-
),
|
|
7714
|
+
), Z = K.map((ce, H) => {
|
|
7705
7715
|
const L = ce.usd_value !== void 0 ? ` ≈ $${ie(ce.usd_value).decimalPlaces(2).toFormat()}` : "";
|
|
7706
7716
|
return `${H + 1}. **${ce.name}** (${ce.symbol})
|
|
7707
7717
|
Balance: ${ce.balance_formatted}${L}`;
|
|
@@ -7711,7 +7721,7 @@ $${ie(
|
|
|
7711
7721
|
await $e(500), k(!1), l(
|
|
7712
7722
|
r("viewBalancesHeader", {
|
|
7713
7723
|
chain: g?.name || "this chain",
|
|
7714
|
-
list:
|
|
7724
|
+
list: Z
|
|
7715
7725
|
}),
|
|
7716
7726
|
"bot",
|
|
7717
7727
|
void 0,
|
|
@@ -7729,7 +7739,7 @@ $${ie(
|
|
|
7729
7739
|
icon: "❓",
|
|
7730
7740
|
text: a("suggestionAskText"),
|
|
7731
7741
|
action: async () => {
|
|
7732
|
-
|
|
7742
|
+
y(!1), k(!0), l(a("suggestionAskUserMessage"), "user"), await $e(1e3), k(!1), l(a("suggestionAskBotReply"), "bot");
|
|
7733
7743
|
}
|
|
7734
7744
|
},
|
|
7735
7745
|
{
|
|
@@ -7737,20 +7747,20 @@ $${ie(
|
|
|
7737
7747
|
icon: "💰",
|
|
7738
7748
|
text: a("suggestionBuyText"),
|
|
7739
7749
|
action: async () => {
|
|
7740
|
-
|
|
7750
|
+
y(!1), l(a("suggestionBuyText"), "user"), He(u?.address || "") && I ? await qe() : (k(!0), await $e(1e3), He(u?.address || "") && !I ? l(a("walletConnectedChainUnsupported"), "bot") : l(a("walletNotConnected"), "bot"), k(!1));
|
|
7741
7751
|
}
|
|
7742
7752
|
}
|
|
7743
7753
|
],
|
|
7744
7754
|
[l, u?.address, qe, a, I]
|
|
7745
7755
|
), at = (U) => {
|
|
7746
7756
|
if (U === 0) return !0;
|
|
7747
|
-
const K = i[U], M = i[U - 1],
|
|
7748
|
-
return
|
|
7757
|
+
const K = i[U], M = i[U - 1], Z = new Date(K.timestamp), ce = new Date(M.timestamp);
|
|
7758
|
+
return Z.setHours(0, 0, 0, 0), ce.setHours(0, 0, 0, 0), Z.getTime() !== ce.getTime();
|
|
7749
7759
|
};
|
|
7750
7760
|
ct(() => {
|
|
7751
7761
|
me.current?.scrollIntoView({ behavior: "smooth" });
|
|
7752
7762
|
}, [i]), ct(() => {
|
|
7753
|
-
e ? (Ee.current && Nt.isDesktop && Ee.current.focus(), me.current?.scrollIntoView({ behavior: "instant" }), m.current && d.current ? Date.now() - d.current > 5e3 &&
|
|
7763
|
+
e ? (Ee.current && Nt.isDesktop && Ee.current.focus(), me.current?.scrollIntoView({ behavior: "instant" }), m.current && d.current ? Date.now() - d.current > 5e3 && y(!0) : y(!0), d.current = null, m.current = !1, setTimeout(() => {
|
|
7754
7764
|
me.current?.scrollIntoView({ behavior: "smooth" });
|
|
7755
7765
|
}, 50)) : (d.current = Date.now(), m.current = !C.current);
|
|
7756
7766
|
}, [e]), ct(() => {
|
|
@@ -7766,9 +7776,9 @@ $${ie(
|
|
|
7766
7776
|
"user",
|
|
7767
7777
|
J?.id
|
|
7768
7778
|
);
|
|
7769
|
-
B(""), Q(null), k(!0),
|
|
7779
|
+
B(""), Q(null), k(!0), y(!1), k(!0);
|
|
7770
7780
|
try {
|
|
7771
|
-
let M,
|
|
7781
|
+
let M, Z;
|
|
7772
7782
|
const ce = i.slice(-20);
|
|
7773
7783
|
let H = "";
|
|
7774
7784
|
if (ce.length > 0) {
|
|
@@ -7776,13 +7786,13 @@ $${ie(
|
|
|
7776
7786
|
|
|
7777
7787
|
## CONVERSATION HISTORY:
|
|
7778
7788
|
`;
|
|
7779
|
-
for (const
|
|
7780
|
-
if (
|
|
7781
|
-
H += `User: ${
|
|
7789
|
+
for (const te of ce)
|
|
7790
|
+
if (te.sender === "user")
|
|
7791
|
+
H += `User: ${te.text}
|
|
7782
7792
|
`;
|
|
7783
7793
|
else {
|
|
7784
|
-
const
|
|
7785
|
-
H += `Assistant: ${
|
|
7794
|
+
const W = te.text.length > 400 ? te.text.substring(0, 400) + "..." : te.text;
|
|
7795
|
+
H += `Assistant: ${W}
|
|
7786
7796
|
`;
|
|
7787
7797
|
}
|
|
7788
7798
|
H += `
|
|
@@ -7798,26 +7808,26 @@ ${L}`);
|
|
|
7798
7808
|
L,
|
|
7799
7809
|
H
|
|
7800
7810
|
))?.startsWith("no")) {
|
|
7801
|
-
const
|
|
7811
|
+
const W = await ns.generateContent(
|
|
7802
7812
|
L,
|
|
7803
7813
|
H
|
|
7804
7814
|
);
|
|
7805
|
-
let
|
|
7815
|
+
let A = null;
|
|
7806
7816
|
try {
|
|
7807
|
-
let R =
|
|
7808
|
-
R.startsWith("```json") ? R = R.replace(/^```json\s*/, "").replace(/\s*```$/, "") : R.startsWith("```") && (R = R.replace(/^```\s*/, "").replace(/\s*```$/, "")),
|
|
7817
|
+
let R = W?.trim();
|
|
7818
|
+
R.startsWith("```json") ? R = R.replace(/^```json\s*/, "").replace(/\s*```$/, "") : R.startsWith("```") && (R = R.replace(/^```\s*/, "").replace(/\s*```$/, "")), A = JSON.parse(R);
|
|
7809
7819
|
} catch {
|
|
7810
|
-
|
|
7820
|
+
A = null;
|
|
7811
7821
|
}
|
|
7812
|
-
k(!1), l(
|
|
7822
|
+
k(!1), l(A?.message || W, "bot");
|
|
7813
7823
|
return;
|
|
7814
7824
|
}
|
|
7815
|
-
} catch (
|
|
7816
|
-
console.warn("Error checking question type with Gemini:",
|
|
7825
|
+
} catch (te) {
|
|
7826
|
+
console.warn("Error checking question type with Gemini:", te);
|
|
7817
7827
|
}
|
|
7818
7828
|
if (u?.address && I)
|
|
7819
7829
|
try {
|
|
7820
|
-
const [
|
|
7830
|
+
const [te, W] = await Promise.allSettled([
|
|
7821
7831
|
Qe({
|
|
7822
7832
|
address: u.address,
|
|
7823
7833
|
chain: h
|
|
@@ -7829,50 +7839,50 @@ ${L}`);
|
|
|
7829
7839
|
exclude_spam: !0
|
|
7830
7840
|
})
|
|
7831
7841
|
]);
|
|
7832
|
-
|
|
7833
|
-
symbol:
|
|
7834
|
-
name:
|
|
7835
|
-
balance_formatted:
|
|
7836
|
-
usd_value:
|
|
7837
|
-
native_token:
|
|
7838
|
-
token_address:
|
|
7839
|
-
}))),
|
|
7840
|
-
(
|
|
7841
|
-
name:
|
|
7842
|
-
token_address:
|
|
7843
|
-
token_id:
|
|
7844
|
-
contract_type:
|
|
7845
|
-
amount:
|
|
7842
|
+
te.status === "fulfilled" && te.value?.success && te.value?.data?.result && (M = te.value.data.result.map((A) => ({
|
|
7843
|
+
symbol: A.symbol,
|
|
7844
|
+
name: A.name,
|
|
7845
|
+
balance_formatted: A.balance_formatted,
|
|
7846
|
+
usd_value: A.usd_value,
|
|
7847
|
+
native_token: A.native_token,
|
|
7848
|
+
token_address: A.token_address
|
|
7849
|
+
}))), W.status === "fulfilled" && W.value?.success && W.value?.data?.result && (Z = W.value.data.result.map(
|
|
7850
|
+
(A) => ({
|
|
7851
|
+
name: A.normalized_metadata?.name || A.name || `#${A.token_id}`,
|
|
7852
|
+
token_address: A.token_address,
|
|
7853
|
+
token_id: A.token_id,
|
|
7854
|
+
contract_type: A.contract_type || "",
|
|
7855
|
+
amount: A.amount || "1"
|
|
7846
7856
|
})
|
|
7847
7857
|
));
|
|
7848
7858
|
} catch {
|
|
7849
7859
|
}
|
|
7850
|
-
const
|
|
7860
|
+
const D = Wp({
|
|
7851
7861
|
walletAddress: u?.address || void 0,
|
|
7852
7862
|
chainName: g?.name || void 0,
|
|
7853
7863
|
chainId: w || void 0,
|
|
7854
7864
|
nativeSymbol: g?.nativeCurrency?.symbol || void 0,
|
|
7855
7865
|
walletTokens: M,
|
|
7856
|
-
walletNfts:
|
|
7857
|
-
}),
|
|
7866
|
+
walletNfts: Z
|
|
7867
|
+
}), _ = await Sp({
|
|
7858
7868
|
prompt: L,
|
|
7859
7869
|
model: "gpt-4.1-mini",
|
|
7860
7870
|
stream: !1,
|
|
7861
|
-
systemPrompt:
|
|
7871
|
+
systemPrompt: D + H
|
|
7862
7872
|
});
|
|
7863
|
-
if (
|
|
7864
|
-
const
|
|
7865
|
-
let
|
|
7873
|
+
if (_.success && _.data) {
|
|
7874
|
+
const te = _.data.text || "";
|
|
7875
|
+
let W = null;
|
|
7866
7876
|
try {
|
|
7867
|
-
let
|
|
7868
|
-
|
|
7877
|
+
let A = te?.trim();
|
|
7878
|
+
A.startsWith("```json") ? A = A.replace(/^```json\s*/, "").replace(/\s*```$/, "") : A.startsWith("```") && (A = A.replace(/^```\s*/, "").replace(/\s*```$/, "")), W = JSON.parse(A);
|
|
7869
7879
|
} catch {
|
|
7870
|
-
|
|
7880
|
+
W = null;
|
|
7871
7881
|
}
|
|
7872
|
-
if (
|
|
7873
|
-
if (
|
|
7874
|
-
const
|
|
7875
|
-
let R =
|
|
7882
|
+
if (W && W.action && W.action !== "chat")
|
|
7883
|
+
if (W.action === "buy_token") {
|
|
7884
|
+
const A = W.parameters?.token_symbol || "";
|
|
7885
|
+
let R = W.parameters?.contract_address || "", le = 18;
|
|
7876
7886
|
if (R.toLowerCase() === "native" && (R = Ge), R && R !== Ge)
|
|
7877
7887
|
try {
|
|
7878
7888
|
const ae = await tt.getTokensDetails(
|
|
@@ -7883,7 +7893,7 @@ ${L}`);
|
|
|
7883
7893
|
} catch (ae) {
|
|
7884
7894
|
console.warn("getTokensDetails for buy_token failed:", ae);
|
|
7885
7895
|
}
|
|
7886
|
-
if (!R &&
|
|
7896
|
+
if (!R && A && u?.address)
|
|
7887
7897
|
try {
|
|
7888
7898
|
const ae = await Qe({
|
|
7889
7899
|
address: u.address,
|
|
@@ -7893,7 +7903,7 @@ ${L}`);
|
|
|
7893
7903
|
const ke = ae.data.result, Se = ke.find(
|
|
7894
7904
|
(se) => se.token_address.toLowerCase() === R.toLowerCase()
|
|
7895
7905
|
) || ke.find(
|
|
7896
|
-
(se) => se.symbol.toUpperCase() ===
|
|
7906
|
+
(se) => se.symbol.toUpperCase() === A.toUpperCase()
|
|
7897
7907
|
);
|
|
7898
7908
|
Se && (R = Se.token_address, le = Se.decimals);
|
|
7899
7909
|
}
|
|
@@ -7907,9 +7917,9 @@ ${L}`);
|
|
|
7907
7917
|
]), z = [];
|
|
7908
7918
|
Se.status === "fulfilled" && Se.value?.data && z.push(...Se.value.data), se.status === "fulfilled" && se.value?.data && z.push(...se.value.data);
|
|
7909
7919
|
const ee = z.find(
|
|
7910
|
-
(
|
|
7920
|
+
(V) => V.address?.toLowerCase() === R.toLowerCase()
|
|
7911
7921
|
) || z.find(
|
|
7912
|
-
(
|
|
7922
|
+
(V) => V.symbol?.toUpperCase() === A.toUpperCase()
|
|
7913
7923
|
);
|
|
7914
7924
|
ee && (R = ee.address, le = ee.decimals || 18);
|
|
7915
7925
|
}
|
|
@@ -7917,60 +7927,60 @@ ${L}`);
|
|
|
7917
7927
|
console.warn("Token lookup for buy failed:", ae);
|
|
7918
7928
|
}
|
|
7919
7929
|
R ? (l(
|
|
7920
|
-
|
|
7930
|
+
W.message || r("buyTokenHelp", { symbol: A }),
|
|
7921
7931
|
"bot",
|
|
7922
7932
|
K.id
|
|
7923
7933
|
), await xe(R, le)) : (l(
|
|
7924
|
-
|
|
7934
|
+
W.message || r("tokenNotFoundOnChain", { symbol: A }),
|
|
7925
7935
|
"bot",
|
|
7926
7936
|
K.id
|
|
7927
7937
|
), await qe());
|
|
7928
|
-
} else if (
|
|
7929
|
-
const
|
|
7930
|
-
if (le && (
|
|
7938
|
+
} else if (W.action === "swap_token") {
|
|
7939
|
+
const A = { ...W.parameters || {} }, R = A.token_in === "native" || A.token_in_symbol?.toUpperCase() === g?.nativeCurrency?.symbol?.toUpperCase(), le = A.token_out === "native" || A.token_out_symbol?.toUpperCase() === g?.nativeCurrency?.symbol?.toUpperCase();
|
|
7940
|
+
if (le && (A.token_out = Ge), !R && (A.token_in || A.token_in_symbol) && u?.address)
|
|
7931
7941
|
try {
|
|
7932
7942
|
const se = await Qe({
|
|
7933
7943
|
address: u.address,
|
|
7934
7944
|
chain: h
|
|
7935
7945
|
});
|
|
7936
7946
|
if (se?.success && se?.data?.result) {
|
|
7937
|
-
const z = se.data.result, ee =
|
|
7938
|
-
(
|
|
7947
|
+
const z = se.data.result, ee = A.token_in ? z.find(
|
|
7948
|
+
(V) => V.token_address.toLowerCase() === A.token_in.toLowerCase()
|
|
7939
7949
|
) : z.find(
|
|
7940
|
-
(
|
|
7950
|
+
(V) => V.symbol.toUpperCase() === A.token_in_symbol.toUpperCase()
|
|
7941
7951
|
);
|
|
7942
|
-
ee && (
|
|
7952
|
+
ee && (A.token_in = ee.token_address, A.token_in_decimals = String(ee.decimals));
|
|
7943
7953
|
}
|
|
7944
7954
|
} catch (se) {
|
|
7945
7955
|
console.warn("Resolve token_in failed:", se);
|
|
7946
7956
|
}
|
|
7947
|
-
if (!le && (
|
|
7957
|
+
if (!le && (A.token_out || A.token_out_symbol) && u?.address)
|
|
7948
7958
|
try {
|
|
7949
7959
|
const se = await Qe({
|
|
7950
7960
|
address: u.address,
|
|
7951
7961
|
chain: h
|
|
7952
7962
|
});
|
|
7953
7963
|
if (se?.success && se?.data?.result) {
|
|
7954
|
-
const z = se.data.result, ee =
|
|
7955
|
-
(
|
|
7964
|
+
const z = se.data.result, ee = A.token_out ? z.find(
|
|
7965
|
+
(V) => V.token_address.toLowerCase() === A.token_out.toLowerCase()
|
|
7956
7966
|
) : z.find(
|
|
7957
|
-
(
|
|
7967
|
+
(V) => V.symbol.toUpperCase() === A.token_out_symbol.toUpperCase()
|
|
7958
7968
|
);
|
|
7959
|
-
ee && (
|
|
7969
|
+
ee && (A.token_out = ee.token_address, A.token_out_decimals = String(ee.decimals));
|
|
7960
7970
|
}
|
|
7961
7971
|
} catch (se) {
|
|
7962
7972
|
console.warn("Resolve token_out failed:", se);
|
|
7963
7973
|
}
|
|
7964
|
-
const ae = !!(
|
|
7974
|
+
const ae = !!(A.token_in || R), ke = !!A.token_out, Se = !!A.amount;
|
|
7965
7975
|
if (ae && ke && Se) {
|
|
7966
7976
|
l(
|
|
7967
|
-
|
|
7977
|
+
W.message || a("swapPreparing"),
|
|
7968
7978
|
"bot",
|
|
7969
7979
|
K.id
|
|
7970
7980
|
);
|
|
7971
7981
|
try {
|
|
7972
7982
|
const se = [];
|
|
7973
|
-
|
|
7983
|
+
A.token_out && se.push(A.token_out), A.token_in && !R && se.push(A.token_in);
|
|
7974
7984
|
let z = 18, ee = 18;
|
|
7975
7985
|
if (se.length > 0)
|
|
7976
7986
|
try {
|
|
@@ -7980,7 +7990,7 @@ ${L}`);
|
|
|
7980
7990
|
);
|
|
7981
7991
|
if (re?.data)
|
|
7982
7992
|
for (const Te of re.data)
|
|
7983
|
-
!R && Te.address.toLowerCase() ===
|
|
7993
|
+
!R && Te.address.toLowerCase() === A.token_in?.toLowerCase() && (z = Te.decimals || 18), Te.address.toLowerCase() === A.token_out?.toLowerCase() && (ee = Te.decimals || 18);
|
|
7984
7994
|
} catch (re) {
|
|
7985
7995
|
console.warn(
|
|
7986
7996
|
"getTokensDetails failed, using default decimals:",
|
|
@@ -8022,14 +8032,14 @@ ${L}`);
|
|
|
8022
8032
|
Ye
|
|
8023
8033
|
);
|
|
8024
8034
|
}
|
|
8025
|
-
|
|
8026
|
-
|
|
8035
|
+
A.amount = qn(
|
|
8036
|
+
A.amount,
|
|
8027
8037
|
Ne
|
|
8028
8038
|
);
|
|
8029
8039
|
const Pe = parseFloat(
|
|
8030
8040
|
Ne
|
|
8031
8041
|
), Ze = parseFloat(
|
|
8032
|
-
|
|
8042
|
+
A.amount
|
|
8033
8043
|
);
|
|
8034
8044
|
if (ie(Pe).lte(0)) {
|
|
8035
8045
|
l(
|
|
@@ -8046,7 +8056,7 @@ ${L}`);
|
|
|
8046
8056
|
r("swapInsufficientNativeBalance", {
|
|
8047
8057
|
balance: ie(Pe).decimalPlaces(6).toFixed(),
|
|
8048
8058
|
symbol: g?.nativeCurrency?.symbol || "native",
|
|
8049
|
-
amount:
|
|
8059
|
+
amount: A.amount
|
|
8050
8060
|
}),
|
|
8051
8061
|
"bot"
|
|
8052
8062
|
), k(!1);
|
|
@@ -8054,32 +8064,32 @@ ${L}`);
|
|
|
8054
8064
|
}
|
|
8055
8065
|
} else {
|
|
8056
8066
|
const Re = Te.find(
|
|
8057
|
-
(Ze) => Ze.token_address.toLowerCase() ===
|
|
8067
|
+
(Ze) => Ze.token_address.toLowerCase() === A.token_in?.toLowerCase()
|
|
8058
8068
|
);
|
|
8059
8069
|
if (!Re) {
|
|
8060
8070
|
l(
|
|
8061
8071
|
r("swapTokenNotInWallet", {
|
|
8062
|
-
symbol:
|
|
8072
|
+
symbol: A.token_in_symbol || A.token_in
|
|
8063
8073
|
}),
|
|
8064
8074
|
"bot"
|
|
8065
8075
|
), k(!1);
|
|
8066
8076
|
return;
|
|
8067
8077
|
}
|
|
8068
|
-
|
|
8069
|
-
|
|
8078
|
+
A.amount = qn(
|
|
8079
|
+
A.amount,
|
|
8070
8080
|
Re.balance_formatted || "0"
|
|
8071
8081
|
);
|
|
8072
8082
|
const Ne = parseFloat(
|
|
8073
8083
|
Re.balance_formatted || "0"
|
|
8074
8084
|
), Pe = parseFloat(
|
|
8075
|
-
|
|
8085
|
+
A.amount
|
|
8076
8086
|
);
|
|
8077
8087
|
if (ie(Ne).lt(Pe)) {
|
|
8078
8088
|
l(
|
|
8079
8089
|
r("swapInsufficientTokenBalance", {
|
|
8080
8090
|
balance: ie(Ne).decimalPlaces(6).toFixed(),
|
|
8081
8091
|
symbol: Re.symbol,
|
|
8082
|
-
amount:
|
|
8092
|
+
amount: A.amount
|
|
8083
8093
|
}),
|
|
8084
8094
|
"bot"
|
|
8085
8095
|
), k(!1);
|
|
@@ -8090,22 +8100,22 @@ ${L}`);
|
|
|
8090
8100
|
} catch (re) {
|
|
8091
8101
|
console.warn("Balance check failed:", re);
|
|
8092
8102
|
}
|
|
8093
|
-
const
|
|
8103
|
+
const V = R ? Ge : A.token_in;
|
|
8094
8104
|
de({
|
|
8095
|
-
srcTokenAddress:
|
|
8096
|
-
descTokenAddress:
|
|
8097
|
-
amount:
|
|
8105
|
+
srcTokenAddress: V,
|
|
8106
|
+
descTokenAddress: A.token_out,
|
|
8107
|
+
amount: A.amount,
|
|
8098
8108
|
srcTokenDecimals: z,
|
|
8099
8109
|
descTokenDecimals: ee
|
|
8100
8110
|
});
|
|
8101
|
-
const
|
|
8102
|
-
|
|
8111
|
+
const $ = wt(
|
|
8112
|
+
A.amount,
|
|
8103
8113
|
z
|
|
8104
8114
|
).toString(), ue = await Wn({
|
|
8105
8115
|
chainId: w,
|
|
8106
|
-
tokenIn:
|
|
8107
|
-
tokenInAmount:
|
|
8108
|
-
tokenOut:
|
|
8116
|
+
tokenIn: V,
|
|
8117
|
+
tokenInAmount: $,
|
|
8118
|
+
tokenOut: A.token_out,
|
|
8109
8119
|
tokenOutRecipient: u?.address || "",
|
|
8110
8120
|
slippage: "auto",
|
|
8111
8121
|
accesstoken: "d6c45897b8f6"
|
|
@@ -8120,7 +8130,7 @@ ${L}`);
|
|
|
8120
8130
|
if (!R && u?.address && re.tx?.to)
|
|
8121
8131
|
try {
|
|
8122
8132
|
const Le = await Yn({
|
|
8123
|
-
tokenAddress:
|
|
8133
|
+
tokenAddress: V,
|
|
8124
8134
|
ownerAddress: u.address,
|
|
8125
8135
|
spenderAddress: re.tx.to,
|
|
8126
8136
|
chainId: w,
|
|
@@ -8128,7 +8138,7 @@ ${L}`);
|
|
|
8128
8138
|
});
|
|
8129
8139
|
Ze = ie(
|
|
8130
8140
|
Le.toString()
|
|
8131
|
-
).isLessThan(
|
|
8141
|
+
).isLessThan($);
|
|
8132
8142
|
} catch (Le) {
|
|
8133
8143
|
console.warn("Allowance check failed (CASE 1):", Le), Ze = !0;
|
|
8134
8144
|
}
|
|
@@ -8137,10 +8147,11 @@ ${L}`);
|
|
|
8137
8147
|
if (Ze && u?.address)
|
|
8138
8148
|
try {
|
|
8139
8149
|
const Le = vn({
|
|
8140
|
-
tokenAddress:
|
|
8150
|
+
tokenAddress: V,
|
|
8141
8151
|
spenderAddress: re.tx?.to || "",
|
|
8142
8152
|
fromAddress: u.address,
|
|
8143
|
-
chainId: w
|
|
8153
|
+
chainId: w,
|
|
8154
|
+
amount: $
|
|
8144
8155
|
});
|
|
8145
8156
|
dt = await en({
|
|
8146
8157
|
from: u.address,
|
|
@@ -8198,9 +8209,10 @@ To: ${Pe} ${Re.symbol}
|
|
|
8198
8209
|
action: "approve_for_swap",
|
|
8199
8210
|
fullWidth: !0,
|
|
8200
8211
|
extraData: {
|
|
8201
|
-
tokenAddress:
|
|
8212
|
+
tokenAddress: V,
|
|
8202
8213
|
spenderAddress: re.tx.to,
|
|
8203
8214
|
tokenSymbol: Te.symbol,
|
|
8215
|
+
amountInWei: $,
|
|
8204
8216
|
tx: re.tx
|
|
8205
8217
|
}
|
|
8206
8218
|
}
|
|
@@ -8239,37 +8251,37 @@ To: ${Pe} ${Re.symbol}
|
|
|
8239
8251
|
console.error("Swap estimation error:", se), l(a("swapEstimationFailed"), "bot");
|
|
8240
8252
|
}
|
|
8241
8253
|
} else if (ae && ke && !Se) {
|
|
8242
|
-
let se = R ? 18 : parseInt(
|
|
8243
|
-
|
|
8254
|
+
let se = R ? 18 : parseInt(A.token_in_decimals || "18", 10), z = parseInt(
|
|
8255
|
+
A.token_out_decimals || "18",
|
|
8244
8256
|
10
|
|
8245
8257
|
);
|
|
8246
8258
|
const ee = [];
|
|
8247
|
-
if (
|
|
8259
|
+
if (A.token_out && ee.push(A.token_out), A.token_in && !R && ee.push(A.token_in), ee.length > 0)
|
|
8248
8260
|
try {
|
|
8249
|
-
const
|
|
8261
|
+
const V = await tt.getTokensDetails(
|
|
8250
8262
|
ee,
|
|
8251
8263
|
E
|
|
8252
8264
|
);
|
|
8253
|
-
if (
|
|
8254
|
-
for (const
|
|
8255
|
-
!R &&
|
|
8256
|
-
} catch (
|
|
8265
|
+
if (V?.data)
|
|
8266
|
+
for (const $ of V.data)
|
|
8267
|
+
!R && $.address.toLowerCase() === A.token_in?.toLowerCase() && (se = $.decimals || se), $.address.toLowerCase() === A.token_out?.toLowerCase() && (z = $.decimals || z);
|
|
8268
|
+
} catch (V) {
|
|
8257
8269
|
console.warn(
|
|
8258
8270
|
"getTokensDetails failed in CASE 2, using fallback decimals:",
|
|
8259
|
-
|
|
8271
|
+
V
|
|
8260
8272
|
);
|
|
8261
8273
|
}
|
|
8262
8274
|
if (de({
|
|
8263
|
-
descTokenAddress:
|
|
8275
|
+
descTokenAddress: A.token_out,
|
|
8264
8276
|
descTokenDecimals: z
|
|
8265
8277
|
}), R)
|
|
8266
8278
|
try {
|
|
8267
|
-
const
|
|
8279
|
+
const V = await Qe({
|
|
8268
8280
|
address: u?.address || "",
|
|
8269
8281
|
chain: h
|
|
8270
8282
|
});
|
|
8271
|
-
if (
|
|
8272
|
-
const ue =
|
|
8283
|
+
if (V?.success && V?.data?.result) {
|
|
8284
|
+
const ue = V.data.result.find(
|
|
8273
8285
|
(Pe) => Pe.native_token
|
|
8274
8286
|
), re = g?.nativeCurrency?.symbol || "ETH";
|
|
8275
8287
|
let Te = ue?.balance_formatted || "0";
|
|
@@ -8326,27 +8338,27 @@ To: ${Pe} ${Re.symbol}
|
|
|
8326
8338
|
);
|
|
8327
8339
|
} else
|
|
8328
8340
|
l(a("couldNotFetchBalance"), "bot");
|
|
8329
|
-
} catch (
|
|
8330
|
-
console.warn("Native balance fetch failed:",
|
|
8341
|
+
} catch (V) {
|
|
8342
|
+
console.warn("Native balance fetch failed:", V), l(a("couldNotFetchBalanceRetry"), "bot");
|
|
8331
8343
|
}
|
|
8332
8344
|
else {
|
|
8333
|
-
const
|
|
8345
|
+
const V = A.token_in_symbol || "Token";
|
|
8334
8346
|
de({
|
|
8335
|
-
srcTokenAddress:
|
|
8347
|
+
srcTokenAddress: A.token_in,
|
|
8336
8348
|
srcTokenDecimals: se
|
|
8337
8349
|
});
|
|
8338
8350
|
try {
|
|
8339
|
-
const
|
|
8351
|
+
const $ = await Qe({
|
|
8340
8352
|
address: u?.address || "",
|
|
8341
8353
|
chain: h
|
|
8342
8354
|
});
|
|
8343
|
-
if (
|
|
8344
|
-
const re =
|
|
8345
|
-
(Ne) => Ne.token_address.toLowerCase() ===
|
|
8355
|
+
if ($?.success && $?.data?.result) {
|
|
8356
|
+
const re = $.data.result.find(
|
|
8357
|
+
(Ne) => Ne.token_address.toLowerCase() === A.token_in?.toLowerCase()
|
|
8346
8358
|
);
|
|
8347
8359
|
if (!re) {
|
|
8348
8360
|
l(
|
|
8349
|
-
r("swapTokenNotInWallet", { symbol:
|
|
8361
|
+
r("swapTokenNotInWallet", { symbol: V }),
|
|
8350
8362
|
"bot"
|
|
8351
8363
|
), k(!1);
|
|
8352
8364
|
return;
|
|
@@ -8378,24 +8390,24 @@ To: ${Pe} ${Re.symbol}
|
|
|
8378
8390
|
);
|
|
8379
8391
|
} else
|
|
8380
8392
|
l(a("couldNotFetchBalance"), "bot");
|
|
8381
|
-
} catch (
|
|
8382
|
-
console.warn("Token balance fetch failed:",
|
|
8393
|
+
} catch ($) {
|
|
8394
|
+
console.warn("Token balance fetch failed:", $), l(a("couldNotFetchBalanceRetry"), "bot");
|
|
8383
8395
|
}
|
|
8384
8396
|
}
|
|
8385
8397
|
} else if (!ae && ke) {
|
|
8386
8398
|
l(
|
|
8387
|
-
|
|
8399
|
+
W.message || a("swapChooseFrom"),
|
|
8388
8400
|
"bot",
|
|
8389
8401
|
K.id
|
|
8390
8402
|
);
|
|
8391
8403
|
let se = parseInt(
|
|
8392
|
-
|
|
8404
|
+
A.token_out_decimals || "18",
|
|
8393
8405
|
10
|
|
8394
8406
|
);
|
|
8395
|
-
if (
|
|
8407
|
+
if (A.token_out)
|
|
8396
8408
|
try {
|
|
8397
8409
|
const z = await tt.getTokensDetails(
|
|
8398
|
-
[
|
|
8410
|
+
[A.token_out],
|
|
8399
8411
|
E
|
|
8400
8412
|
);
|
|
8401
8413
|
z?.data?.[0] && (se = z.data[0].decimals || se);
|
|
@@ -8406,15 +8418,15 @@ To: ${Pe} ${Re.symbol}
|
|
|
8406
8418
|
);
|
|
8407
8419
|
}
|
|
8408
8420
|
await xe(
|
|
8409
|
-
|
|
8421
|
+
A.token_out,
|
|
8410
8422
|
se
|
|
8411
8423
|
);
|
|
8412
8424
|
} else if (ae && !ke) {
|
|
8413
|
-
let se = R ? 18 : parseInt(
|
|
8414
|
-
if (
|
|
8425
|
+
let se = R ? 18 : parseInt(A.token_in_decimals || "18", 10);
|
|
8426
|
+
if (A.token_in && !R)
|
|
8415
8427
|
try {
|
|
8416
8428
|
const z = await tt.getTokensDetails(
|
|
8417
|
-
[
|
|
8429
|
+
[A.token_in],
|
|
8418
8430
|
E
|
|
8419
8431
|
);
|
|
8420
8432
|
z?.data?.[0] && (se = z.data[0].decimals || se);
|
|
@@ -8428,28 +8440,28 @@ To: ${Pe} ${Re.symbol}
|
|
|
8428
8440
|
srcTokenAddress: Ge,
|
|
8429
8441
|
srcTokenDecimals: 18
|
|
8430
8442
|
} : {
|
|
8431
|
-
srcTokenAddress:
|
|
8443
|
+
srcTokenAddress: A.token_in,
|
|
8432
8444
|
srcTokenDecimals: se
|
|
8433
8445
|
}), l(
|
|
8434
|
-
|
|
8435
|
-
symbol:
|
|
8446
|
+
W.message || r("swapChooseTo", {
|
|
8447
|
+
symbol: A.token_in_symbol || "your token"
|
|
8436
8448
|
}),
|
|
8437
8449
|
"bot",
|
|
8438
8450
|
K.id
|
|
8439
8451
|
);
|
|
8440
8452
|
try {
|
|
8441
8453
|
k(!0);
|
|
8442
|
-
const z = g?.tokenTrendingDefault || [], [ee,
|
|
8454
|
+
const z = g?.tokenTrendingDefault || [], [ee, V] = await Promise.allSettled([
|
|
8443
8455
|
tt.getTopGainers(E, "24h", 5),
|
|
8444
8456
|
tt.getTokensDetails(z, E)
|
|
8445
8457
|
]);
|
|
8446
|
-
let
|
|
8447
|
-
ee.status === "fulfilled" && ee.value?.data && (
|
|
8458
|
+
let $ = [];
|
|
8459
|
+
ee.status === "fulfilled" && ee.value?.data && ($ = [...ee.value.data]), V.status === "fulfilled" && V.value?.data && ($ = [...V.value.data, ...$]), $ = $.filter(
|
|
8448
8460
|
(re, Te, Re) => Te === Re.findIndex(
|
|
8449
8461
|
(Ne) => Ne.address.toLowerCase() === re.address.toLowerCase()
|
|
8450
8462
|
)
|
|
8451
8463
|
);
|
|
8452
|
-
const ue =
|
|
8464
|
+
const ue = $.map((re) => ({
|
|
8453
8465
|
id: re?.symbol,
|
|
8454
8466
|
text: re?.symbol,
|
|
8455
8467
|
value: r("buttonSwapTo", {
|
|
@@ -8477,7 +8489,7 @@ To: ${Pe} ${Re.symbol}
|
|
|
8477
8489
|
k(!1);
|
|
8478
8490
|
}
|
|
8479
8491
|
} else if (l(
|
|
8480
|
-
|
|
8492
|
+
W.message || a("swapChooseToken"),
|
|
8481
8493
|
"bot",
|
|
8482
8494
|
K.id
|
|
8483
8495
|
), u?.address)
|
|
@@ -8489,10 +8501,10 @@ To: ${Pe} ${Re.symbol}
|
|
|
8489
8501
|
});
|
|
8490
8502
|
if (se?.success && se?.data?.result && se.data.result.length > 0) {
|
|
8491
8503
|
const ee = se.data.result.map(
|
|
8492
|
-
(
|
|
8493
|
-
id: `swap-select-${
|
|
8494
|
-
text: `${
|
|
8495
|
-
value: `Swap ${
|
|
8504
|
+
(V) => ({
|
|
8505
|
+
id: `swap-select-${V.token_address}`,
|
|
8506
|
+
text: `${V.name}: ${V.balance_formatted} ${V.symbol} ($${ie(V?.usd_value || 0).decimalPlaces(2).toFixed() || "0"})`,
|
|
8507
|
+
value: `Swap ${V.symbol}`,
|
|
8496
8508
|
action: "suggested_action",
|
|
8497
8509
|
fullWidth: !0
|
|
8498
8510
|
})
|
|
@@ -8515,27 +8527,27 @@ To: ${Pe} ${Re.symbol}
|
|
|
8515
8527
|
} catch (se) {
|
|
8516
8528
|
console.warn("Failed to fetch balance for swap picker:", se), k(!1), l(a("walletFetchError"), "bot");
|
|
8517
8529
|
}
|
|
8518
|
-
} else if (
|
|
8530
|
+
} else if (W.action === "view_balances")
|
|
8519
8531
|
l(
|
|
8520
|
-
|
|
8532
|
+
W.message || a("viewBalancesLoading"),
|
|
8521
8533
|
"bot",
|
|
8522
8534
|
K.id
|
|
8523
8535
|
), await st();
|
|
8524
|
-
else if (
|
|
8536
|
+
else if (W.action === "view_nfts")
|
|
8525
8537
|
l(
|
|
8526
|
-
|
|
8538
|
+
W.message || a("viewNftsLoading"),
|
|
8527
8539
|
"bot",
|
|
8528
8540
|
K.id
|
|
8529
8541
|
), await ze();
|
|
8530
|
-
else if (
|
|
8542
|
+
else if (W.action === "send_token" && !W.parameters?.contract_address && !W.parameters?.token_symbol && u?.address)
|
|
8531
8543
|
try {
|
|
8532
|
-
const
|
|
8544
|
+
const A = await Qe({
|
|
8533
8545
|
address: u.address,
|
|
8534
8546
|
chain: h
|
|
8535
8547
|
});
|
|
8536
|
-
if (
|
|
8548
|
+
if (A?.success && A?.data?.result && A.data.result.length > 0) {
|
|
8537
8549
|
l(a("sendTokenChoose"), "bot", K.id), k(!0), await $e(500);
|
|
8538
|
-
const le =
|
|
8550
|
+
const le = A.data.result.map(
|
|
8539
8551
|
(ae) => ({
|
|
8540
8552
|
id: `send-select-${ae.token_address}`,
|
|
8541
8553
|
text: `${ae.name}: ${ae.balance_formatted} ${ae.symbol} ($${ie(ae?.usd_value || 0).decimalPlaces(2).toFixed() || "0"})`,
|
|
@@ -8559,57 +8571,57 @@ To: ${Pe} ${Re.symbol}
|
|
|
8559
8571
|
}),
|
|
8560
8572
|
"bot"
|
|
8561
8573
|
);
|
|
8562
|
-
} catch (
|
|
8574
|
+
} catch (A) {
|
|
8563
8575
|
console.warn(
|
|
8564
8576
|
"Failed to fetch balance for send_token picker:",
|
|
8565
|
-
|
|
8577
|
+
A
|
|
8566
8578
|
), k(!1), l(a("walletFetchError"), "bot");
|
|
8567
8579
|
}
|
|
8568
|
-
else if (
|
|
8580
|
+
else if (W.action === "send_nft" && !W.parameters?.contract_address && !W.parameters?.token_id && !W.parameters?.nft_name && u?.address)
|
|
8569
8581
|
l(a("sendNftChoose"), "bot", K.id), await ze({
|
|
8570
8582
|
numberOfView: 5
|
|
8571
8583
|
});
|
|
8572
|
-
else if (
|
|
8584
|
+
else if (W.action === "send_nft" && !He(W.parameters?.contract_address || "") && (W.parameters?.nft_name || W.parameters?.token_id) && u?.address)
|
|
8573
8585
|
try {
|
|
8574
8586
|
k(!0);
|
|
8575
|
-
const
|
|
8587
|
+
const A = await An({
|
|
8576
8588
|
address: u.address,
|
|
8577
8589
|
chain: h,
|
|
8578
8590
|
limit: 100,
|
|
8579
8591
|
exclude_spam: !1
|
|
8580
8592
|
});
|
|
8581
|
-
if (
|
|
8582
|
-
const R =
|
|
8583
|
-
const
|
|
8593
|
+
if (A?.success && A?.data?.result) {
|
|
8594
|
+
const R = A.data.result, le = (W.parameters?.nft_name || "").toLowerCase(), ae = W.parameters?.token_id || "", ke = (ee) => {
|
|
8595
|
+
const V = (ee.normalized_metadata?.name || ee.name || "").toLowerCase(), $ = (ee.name || "").toLowerCase(), ue = le && (V.includes(le) || $.includes(le)), re = ae && ee.token_id === ae;
|
|
8584
8596
|
return le && ae ? ue && re : le ? ue : re;
|
|
8585
8597
|
}, Se = !le && !!ae, se = Se ? R.filter(ke) : [], z = Se ? se.length === 1 ? se[0] : null : R.find(ke);
|
|
8586
8598
|
if (Se && se.length > 1) {
|
|
8587
8599
|
const ee = se.map(
|
|
8588
|
-
(
|
|
8589
|
-
const ue =
|
|
8600
|
+
($) => {
|
|
8601
|
+
const ue = $.normalized_metadata?.name || $.name || `#${$.token_id}`, re = $.normalized_metadata?.image || $.media?.original_media_url || "";
|
|
8590
8602
|
return {
|
|
8591
|
-
id: `${
|
|
8592
|
-
text: `${ue} (${
|
|
8603
|
+
id: `${$.token_address}-${$.token_id}`,
|
|
8604
|
+
text: `${ue} (${$.symbol || $.contract_type}) #${$.token_id}`,
|
|
8593
8605
|
value: r("buttonSendNft", { name: ue }),
|
|
8594
8606
|
action: "select_nft_to_send",
|
|
8595
8607
|
fullWidth: !0,
|
|
8596
8608
|
extraData: {
|
|
8597
|
-
contractAddress:
|
|
8598
|
-
tokenId:
|
|
8599
|
-
tokenStandard:
|
|
8609
|
+
contractAddress: $.token_address,
|
|
8610
|
+
tokenId: $.token_id,
|
|
8611
|
+
tokenStandard: $.contract_type,
|
|
8600
8612
|
name: ue,
|
|
8601
|
-
symbol:
|
|
8602
|
-
amount:
|
|
8613
|
+
symbol: $.symbol,
|
|
8614
|
+
amount: $.amount,
|
|
8603
8615
|
image: re,
|
|
8604
|
-
toAddress:
|
|
8616
|
+
toAddress: W.parameters?.to_address || ""
|
|
8605
8617
|
}
|
|
8606
8618
|
};
|
|
8607
8619
|
}
|
|
8608
|
-
),
|
|
8609
|
-
const re =
|
|
8620
|
+
), V = se.map(($, ue) => {
|
|
8621
|
+
const re = $.normalized_metadata?.name || $.name || `#${$.token_id}`, Te = $.normalized_metadata?.image || $.media?.original_media_url || "", Re = Te ? `
|
|
8610
8622
|
` : "🖼️ ";
|
|
8611
8623
|
return `${ue + 1}. ${Re}**${re}**
|
|
8612
|
-
${
|
|
8624
|
+
${$.symbol || $.contract_type} | Token ID: ${$.token_id}`;
|
|
8613
8625
|
}).join(`
|
|
8614
8626
|
|
|
8615
8627
|
`);
|
|
@@ -8619,23 +8631,23 @@ To: ${Pe} ${Re.symbol}
|
|
|
8619
8631
|
tokenId: ae
|
|
8620
8632
|
}) + `
|
|
8621
8633
|
|
|
8622
|
-
` +
|
|
8634
|
+
` + V,
|
|
8623
8635
|
"bot",
|
|
8624
8636
|
K.id,
|
|
8625
8637
|
ee
|
|
8626
8638
|
);
|
|
8627
8639
|
} else if (z) {
|
|
8628
|
-
const ee = z.normalized_metadata?.name || z.name || `#${z.token_id}`,
|
|
8640
|
+
const ee = z.normalized_metadata?.name || z.name || `#${z.token_id}`, V = z.normalized_metadata?.image || z.media?.original_media_url || "", $ = {
|
|
8629
8641
|
contract_address: z.token_address,
|
|
8630
8642
|
token_id: z.token_id,
|
|
8631
|
-
to_address:
|
|
8643
|
+
to_address: W.parameters?.to_address || "",
|
|
8632
8644
|
token_standard: z.contract_type || "",
|
|
8633
8645
|
amount: "1",
|
|
8634
8646
|
maxAmount: z.amount || "1",
|
|
8635
8647
|
nft_name: ee
|
|
8636
8648
|
};
|
|
8637
8649
|
l(
|
|
8638
|
-
|
|
8650
|
+
W.message || r("nftSendReview", {
|
|
8639
8651
|
name: ee,
|
|
8640
8652
|
standard: z.contract_type || "NFT",
|
|
8641
8653
|
tokenId: z.token_id
|
|
@@ -8645,11 +8657,11 @@ To: ${Pe} ${Re.symbol}
|
|
|
8645
8657
|
void 0,
|
|
8646
8658
|
{
|
|
8647
8659
|
action: "send_nft",
|
|
8648
|
-
parameters:
|
|
8660
|
+
parameters: $,
|
|
8649
8661
|
status: "pending",
|
|
8650
8662
|
nftInfo: {
|
|
8651
8663
|
name: ee,
|
|
8652
|
-
image:
|
|
8664
|
+
image: V || void 0,
|
|
8653
8665
|
tokenId: z.token_id,
|
|
8654
8666
|
contractAddress: z.token_address,
|
|
8655
8667
|
tokenStandard: z.contract_type || void 0
|
|
@@ -8658,7 +8670,7 @@ To: ${Pe} ${Re.symbol}
|
|
|
8658
8670
|
);
|
|
8659
8671
|
} else
|
|
8660
8672
|
l(
|
|
8661
|
-
|
|
8673
|
+
W.message || r("nftNotFoundInWallet", {
|
|
8662
8674
|
name: le || ae
|
|
8663
8675
|
}),
|
|
8664
8676
|
"bot",
|
|
@@ -8666,17 +8678,17 @@ To: ${Pe} ${Re.symbol}
|
|
|
8666
8678
|
), await ze();
|
|
8667
8679
|
} else
|
|
8668
8680
|
l(a("nftNoCollection"), "bot", K.id);
|
|
8669
|
-
} catch (
|
|
8670
|
-
console.error("NFT lookup by name failed:",
|
|
8681
|
+
} catch (A) {
|
|
8682
|
+
console.error("NFT lookup by name failed:", A), l(a("nftFetchError"), "bot", K.id);
|
|
8671
8683
|
} finally {
|
|
8672
8684
|
k(!1);
|
|
8673
8685
|
}
|
|
8674
8686
|
else {
|
|
8675
|
-
const
|
|
8676
|
-
|
|
8687
|
+
const A = Kp(
|
|
8688
|
+
W.action
|
|
8677
8689
|
);
|
|
8678
|
-
let R = { ...
|
|
8679
|
-
const ke = ["send_token", "approve_token"].includes(
|
|
8690
|
+
let R = { ...W.parameters || {} }, le, ae;
|
|
8691
|
+
const ke = ["send_token", "approve_token"].includes(W.action) && (R.contract_address || R.token_symbol), Se = W.action === "send_native", se = W.action === "send_nft" && R.contract_address;
|
|
8680
8692
|
if (ke && u?.address)
|
|
8681
8693
|
try {
|
|
8682
8694
|
const z = await Qe({
|
|
@@ -8684,25 +8696,25 @@ To: ${Pe} ${Re.symbol}
|
|
|
8684
8696
|
chain: h
|
|
8685
8697
|
});
|
|
8686
8698
|
if (z?.success && z?.data?.result) {
|
|
8687
|
-
const ee = z.data.result,
|
|
8688
|
-
(
|
|
8699
|
+
const ee = z.data.result, V = R.contract_address ? ee.find(
|
|
8700
|
+
($) => $.token_address.toLowerCase() === R.contract_address.toLowerCase()
|
|
8689
8701
|
) : ee.find(
|
|
8690
|
-
(
|
|
8702
|
+
($) => $.symbol.toUpperCase() === R.token_symbol.toUpperCase()
|
|
8691
8703
|
);
|
|
8692
|
-
|
|
8704
|
+
V && (R = {
|
|
8693
8705
|
...R,
|
|
8694
|
-
contract_address:
|
|
8695
|
-
decimals: String(
|
|
8706
|
+
contract_address: V.token_address,
|
|
8707
|
+
decimals: String(V.decimals)
|
|
8696
8708
|
}, le = {
|
|
8697
|
-
symbol:
|
|
8698
|
-
name:
|
|
8699
|
-
balance:
|
|
8700
|
-
balanceFormatted:
|
|
8701
|
-
usdValue:
|
|
8702
|
-
usdPrice:
|
|
8703
|
-
decimals:
|
|
8704
|
-
logo:
|
|
8705
|
-
contractAddress:
|
|
8709
|
+
symbol: V.symbol,
|
|
8710
|
+
name: V.name,
|
|
8711
|
+
balance: V.balance,
|
|
8712
|
+
balanceFormatted: V.balance_formatted,
|
|
8713
|
+
usdValue: V.usd_value,
|
|
8714
|
+
usdPrice: V.usd_price,
|
|
8715
|
+
decimals: V.decimals,
|
|
8716
|
+
logo: V.logo || V.thumbnail,
|
|
8717
|
+
contractAddress: V.token_address
|
|
8706
8718
|
});
|
|
8707
8719
|
}
|
|
8708
8720
|
} catch (z) {
|
|
@@ -8740,14 +8752,14 @@ To: ${Pe} ${Re.symbol}
|
|
|
8740
8752
|
chain: h
|
|
8741
8753
|
});
|
|
8742
8754
|
if (z?.success && z?.data?.result) {
|
|
8743
|
-
const
|
|
8744
|
-
(
|
|
8755
|
+
const V = z.data.result.find(
|
|
8756
|
+
($) => $.native_token
|
|
8745
8757
|
);
|
|
8746
|
-
if (
|
|
8747
|
-
let
|
|
8758
|
+
if (V) {
|
|
8759
|
+
let $ = V.balance_formatted, ue = V.balance;
|
|
8748
8760
|
try {
|
|
8749
8761
|
const re = new ie(
|
|
8750
|
-
|
|
8762
|
+
V.balance
|
|
8751
8763
|
), Te = "0x" + BigInt(re.toFixed(0)).toString(16), Re = await en({
|
|
8752
8764
|
from: u.address,
|
|
8753
8765
|
to: u.address,
|
|
@@ -8758,12 +8770,12 @@ To: ${Pe} ${Re.symbol}
|
|
|
8758
8770
|
});
|
|
8759
8771
|
if (Re.isGreaterThan(0)) {
|
|
8760
8772
|
const Ne = re.minus(Re);
|
|
8761
|
-
Ne.isGreaterThan(0) ? (ue = Ne.toFixed(0),
|
|
8773
|
+
Ne.isGreaterThan(0) ? (ue = Ne.toFixed(0), $ = ie(
|
|
8762
8774
|
Me(
|
|
8763
8775
|
BigInt(Ne.toFixed(0)),
|
|
8764
|
-
|
|
8776
|
+
V.decimals
|
|
8765
8777
|
)
|
|
8766
|
-
).toFixed()) : (ue = "0",
|
|
8778
|
+
).toFixed()) : (ue = "0", $ = "0");
|
|
8767
8779
|
}
|
|
8768
8780
|
} catch (re) {
|
|
8769
8781
|
console.warn(
|
|
@@ -8772,23 +8784,23 @@ To: ${Pe} ${Re.symbol}
|
|
|
8772
8784
|
);
|
|
8773
8785
|
}
|
|
8774
8786
|
le = {
|
|
8775
|
-
symbol:
|
|
8776
|
-
name:
|
|
8787
|
+
symbol: V.symbol,
|
|
8788
|
+
name: V.name,
|
|
8777
8789
|
balance: ue,
|
|
8778
|
-
balanceFormatted:
|
|
8779
|
-
usdValue:
|
|
8780
|
-
usdPrice:
|
|
8781
|
-
decimals:
|
|
8782
|
-
logo:
|
|
8790
|
+
balanceFormatted: $,
|
|
8791
|
+
usdValue: V.usd_value,
|
|
8792
|
+
usdPrice: V.usd_price,
|
|
8793
|
+
decimals: V.decimals,
|
|
8794
|
+
logo: V.logo || V.thumbnail,
|
|
8783
8795
|
contractAddress: Ge
|
|
8784
8796
|
};
|
|
8785
8797
|
} else {
|
|
8786
|
-
const
|
|
8798
|
+
const $ = await Zo({
|
|
8787
8799
|
address: Ge,
|
|
8788
8800
|
chain: h
|
|
8789
8801
|
});
|
|
8790
|
-
if (
|
|
8791
|
-
const ue =
|
|
8802
|
+
if ($?.success && $?.data) {
|
|
8803
|
+
const ue = $.data;
|
|
8792
8804
|
le = {
|
|
8793
8805
|
symbol: ue.symbol,
|
|
8794
8806
|
name: ue.name,
|
|
@@ -8835,7 +8847,7 @@ To: ${Pe} ${Re.symbol}
|
|
|
8835
8847
|
});
|
|
8836
8848
|
if (z?.success && z?.data?.result) {
|
|
8837
8849
|
const ee = z.data.result.find(
|
|
8838
|
-
(
|
|
8850
|
+
(V) => V.token_address.toLowerCase() === R.contract_address.toLowerCase() && V.token_id === R.token_id
|
|
8839
8851
|
);
|
|
8840
8852
|
if (ee) {
|
|
8841
8853
|
R = {
|
|
@@ -8843,10 +8855,10 @@ To: ${Pe} ${Re.symbol}
|
|
|
8843
8855
|
amount: "1",
|
|
8844
8856
|
maxAmount: ee.amount || "1"
|
|
8845
8857
|
};
|
|
8846
|
-
const
|
|
8858
|
+
const V = ee.normalized_metadata?.image || ee.media?.original_media_url || "";
|
|
8847
8859
|
ae = {
|
|
8848
8860
|
name: ee.normalized_metadata?.name || ee.name || R.nft_name || `#${ee.token_id}`,
|
|
8849
|
-
image:
|
|
8861
|
+
image: V || void 0,
|
|
8850
8862
|
tokenId: ee.token_id,
|
|
8851
8863
|
contractAddress: ee.token_address,
|
|
8852
8864
|
tokenStandard: ee.contract_type || R.token_standard || void 0
|
|
@@ -8857,18 +8869,18 @@ To: ${Pe} ${Re.symbol}
|
|
|
8857
8869
|
console.warn("NFT ownership lookup failed:", z);
|
|
8858
8870
|
}
|
|
8859
8871
|
}
|
|
8860
|
-
if (R.amount && le?.balanceFormatted && (
|
|
8872
|
+
if (R.amount && le?.balanceFormatted && (W.action === "send_token" || W.action === "send_native") && (R.amount = qn(
|
|
8861
8873
|
R.amount,
|
|
8862
8874
|
le.balanceFormatted
|
|
8863
|
-
)),
|
|
8864
|
-
const z =
|
|
8875
|
+
)), A) {
|
|
8876
|
+
const z = W.message || "Please review and complete the form below.";
|
|
8865
8877
|
l(
|
|
8866
8878
|
z,
|
|
8867
8879
|
"bot",
|
|
8868
8880
|
K.id,
|
|
8869
8881
|
void 0,
|
|
8870
8882
|
{
|
|
8871
|
-
action:
|
|
8883
|
+
action: W.action,
|
|
8872
8884
|
parameters: R,
|
|
8873
8885
|
status: "pending",
|
|
8874
8886
|
tokenInfo: le,
|
|
@@ -8876,11 +8888,11 @@ To: ${Pe} ${Re.symbol}
|
|
|
8876
8888
|
}
|
|
8877
8889
|
);
|
|
8878
8890
|
} else
|
|
8879
|
-
l(
|
|
8891
|
+
l(W.message || te, "bot", K.id);
|
|
8880
8892
|
}
|
|
8881
|
-
else if (
|
|
8882
|
-
const
|
|
8883
|
-
|
|
8893
|
+
else if (W && W.action === "chat") {
|
|
8894
|
+
const A = W.token_mentions || [], R = W.suggested_actions || [], le = [];
|
|
8895
|
+
A.length > 0 && A.forEach((ae) => {
|
|
8884
8896
|
le.push({
|
|
8885
8897
|
id: `buy-${ae.symbol}`,
|
|
8886
8898
|
text: `💰 Buy ${ae.symbol}`,
|
|
@@ -8902,13 +8914,13 @@ To: ${Pe} ${Re.symbol}
|
|
|
8902
8914
|
fullWidth: !0
|
|
8903
8915
|
});
|
|
8904
8916
|
}), le.length > 0 ? l(
|
|
8905
|
-
|
|
8917
|
+
W.message || te,
|
|
8906
8918
|
"bot",
|
|
8907
8919
|
K.id,
|
|
8908
8920
|
le
|
|
8909
|
-
) : l(
|
|
8921
|
+
) : l(W.message || te, "bot", K.id);
|
|
8910
8922
|
} else
|
|
8911
|
-
l(
|
|
8923
|
+
l(te, "bot", K.id);
|
|
8912
8924
|
} else
|
|
8913
8925
|
l(a("errorProcessingRequest"), "bot", K.id);
|
|
8914
8926
|
} catch (M) {
|
|
@@ -8944,15 +8956,15 @@ To: ${Pe} ${Re.symbol}
|
|
|
8944
8956
|
const Oe = Ie(
|
|
8945
8957
|
async (U, K, M) => {
|
|
8946
8958
|
try {
|
|
8947
|
-
if (
|
|
8948
|
-
let
|
|
8959
|
+
if (y(!1), b(M, "submitted"), U === "swap_token") {
|
|
8960
|
+
let Z = 18;
|
|
8949
8961
|
if (K.token_in && K.token_in !== Ge)
|
|
8950
8962
|
try {
|
|
8951
8963
|
const L = await tt.getTokensDetails(
|
|
8952
8964
|
[K.token_in],
|
|
8953
8965
|
E
|
|
8954
8966
|
);
|
|
8955
|
-
L?.data?.[0] && (
|
|
8967
|
+
L?.data?.[0] && (Z = L.data[0].decimals || 18);
|
|
8956
8968
|
} catch (L) {
|
|
8957
8969
|
console.warn(
|
|
8958
8970
|
"getTokensDetails failed in ActionForm swap, using default 18:",
|
|
@@ -8961,7 +8973,7 @@ To: ${Pe} ${Re.symbol}
|
|
|
8961
8973
|
}
|
|
8962
8974
|
const ce = wt(
|
|
8963
8975
|
K.amount || "0",
|
|
8964
|
-
|
|
8976
|
+
Z
|
|
8965
8977
|
).toString(), H = await Wn({
|
|
8966
8978
|
chainId: w,
|
|
8967
8979
|
tokenIn: K.token_in || "",
|
|
@@ -8972,15 +8984,15 @@ To: ${Pe} ${Re.symbol}
|
|
|
8972
8984
|
accesstoken: "d6c45897b8f6"
|
|
8973
8985
|
});
|
|
8974
8986
|
if (H.success && H.data) {
|
|
8975
|
-
const L = H.data,
|
|
8976
|
-
Me(BigInt(
|
|
8977
|
-
).decimalPlaces(6).toFormat(),
|
|
8978
|
-
Me(BigInt(
|
|
8979
|
-
).decimalPlaces(6).toFormat(),
|
|
8987
|
+
const L = H.data, D = L.tokenIn, _ = L.tokenOut, te = ie(
|
|
8988
|
+
Me(BigInt(D.amount || 0), D.decimals)
|
|
8989
|
+
).decimalPlaces(6).toFormat(), W = ie(
|
|
8990
|
+
Me(BigInt(_.amount || 0), _.decimals)
|
|
8991
|
+
).decimalPlaces(6).toFormat(), A = !K.token_in || K.token_in === Ge;
|
|
8980
8992
|
let R = !1;
|
|
8981
|
-
if (!
|
|
8993
|
+
if (!A && u?.address && L.tx?.to)
|
|
8982
8994
|
try {
|
|
8983
|
-
const
|
|
8995
|
+
const V = await Yn({
|
|
8984
8996
|
tokenAddress: K.token_in,
|
|
8985
8997
|
ownerAddress: u.address,
|
|
8986
8998
|
spenderAddress: L.tx.to,
|
|
@@ -8988,88 +9000,90 @@ To: ${Pe} ${Re.symbol}
|
|
|
8988
9000
|
rpcUrl: F
|
|
8989
9001
|
});
|
|
8990
9002
|
R = ie(
|
|
8991
|
-
|
|
9003
|
+
V.toString()
|
|
8992
9004
|
).isLessThan(ce);
|
|
8993
|
-
} catch (
|
|
8994
|
-
console.warn("Allowance check failed in ActionForm swap:",
|
|
9005
|
+
} catch (V) {
|
|
9006
|
+
console.warn("Allowance check failed in ActionForm swap:", V);
|
|
8995
9007
|
}
|
|
8996
9008
|
const le = L.estimatedTransactionFee?.total ? ie(L.estimatedTransactionFee.total) : ie(0);
|
|
8997
9009
|
let ae = ie(0);
|
|
8998
9010
|
if (R && u?.address)
|
|
8999
9011
|
try {
|
|
9000
|
-
const
|
|
9012
|
+
const V = vn({
|
|
9001
9013
|
tokenAddress: K.token_in,
|
|
9002
9014
|
spenderAddress: L.tx?.to || "",
|
|
9003
9015
|
fromAddress: u.address,
|
|
9004
|
-
chainId: w
|
|
9016
|
+
chainId: w,
|
|
9017
|
+
amount: ce
|
|
9005
9018
|
});
|
|
9006
9019
|
ae = await en({
|
|
9007
9020
|
from: u.address,
|
|
9008
|
-
to:
|
|
9009
|
-
data:
|
|
9021
|
+
to: V.to,
|
|
9022
|
+
data: V.data,
|
|
9010
9023
|
chainId: w,
|
|
9011
9024
|
rpcUrl: F
|
|
9012
9025
|
});
|
|
9013
|
-
} catch (
|
|
9014
|
-
console.warn("Approve fee estimation failed:",
|
|
9026
|
+
} catch (V) {
|
|
9027
|
+
console.warn("Approve fee estimation failed:", V);
|
|
9015
9028
|
}
|
|
9016
9029
|
const ke = le.plus(ae), Se = g?.nativeCurrency?.symbol || "native";
|
|
9017
9030
|
let se = "", z = !1;
|
|
9018
9031
|
if (u?.address && ke.isGreaterThan(0))
|
|
9019
9032
|
try {
|
|
9020
|
-
const
|
|
9033
|
+
const V = await kn({
|
|
9021
9034
|
address: u.address,
|
|
9022
9035
|
chainId: w,
|
|
9023
9036
|
rpcUrl: F
|
|
9024
9037
|
});
|
|
9025
|
-
if (
|
|
9038
|
+
if (V.isLessThan(ke)) {
|
|
9026
9039
|
z = !0;
|
|
9027
|
-
const
|
|
9028
|
-
Me(BigInt(
|
|
9040
|
+
const $ = ie(
|
|
9041
|
+
Me(BigInt(V.toFixed(0)), 18)
|
|
9029
9042
|
).decimalPlaces(6).toFormat(), ue = ie(
|
|
9030
9043
|
Me(BigInt(ke.toFixed(0)), 18)
|
|
9031
9044
|
).decimalPlaces(6).toFormat();
|
|
9032
9045
|
se = r("swapFeeWarning", {
|
|
9033
9046
|
symbol: Se,
|
|
9034
|
-
balance:
|
|
9047
|
+
balance: $,
|
|
9035
9048
|
needed: ue
|
|
9036
9049
|
});
|
|
9037
9050
|
}
|
|
9038
|
-
} catch (
|
|
9039
|
-
console.warn("Fee balance check failed:",
|
|
9051
|
+
} catch (V) {
|
|
9052
|
+
console.warn("Fee balance check failed:", V);
|
|
9040
9053
|
}
|
|
9041
|
-
const ee = `From: ${
|
|
9054
|
+
const ee = `From: ${te} ${D.symbol}
|
|
9042
9055
|
⬇️
|
|
9043
|
-
To: ${
|
|
9056
|
+
To: ${W} ${_.symbol}
|
|
9044
9057
|
|
|
9045
9058
|
` + se + `
|
|
9046
9059
|
`;
|
|
9047
9060
|
if (z)
|
|
9048
|
-
|
|
9061
|
+
b(M, "pending"), l(ee, "bot");
|
|
9049
9062
|
else if (R) {
|
|
9050
|
-
const
|
|
9063
|
+
const V = [
|
|
9051
9064
|
{
|
|
9052
9065
|
id: "approve-swap-actionform",
|
|
9053
|
-
text: r("swapApproveButton", { symbol:
|
|
9054
|
-
value: r("swapApproveValue", { symbol:
|
|
9066
|
+
text: r("swapApproveButton", { symbol: D.symbol }),
|
|
9067
|
+
value: r("swapApproveValue", { symbol: D.symbol }),
|
|
9055
9068
|
action: "approve_for_swap",
|
|
9056
9069
|
extraData: {
|
|
9057
9070
|
tokenAddress: K.token_in,
|
|
9058
9071
|
spenderAddress: L.tx.to,
|
|
9059
|
-
tokenSymbol:
|
|
9072
|
+
tokenSymbol: D.symbol,
|
|
9073
|
+
amountInWei: ce,
|
|
9060
9074
|
tx: L.tx
|
|
9061
9075
|
},
|
|
9062
9076
|
fullWidth: !0
|
|
9063
9077
|
}
|
|
9064
9078
|
];
|
|
9065
|
-
|
|
9066
|
-
ee + r("swapApprovalRequired", { symbol:
|
|
9079
|
+
b(M, "success"), l(
|
|
9080
|
+
ee + r("swapApprovalRequired", { symbol: D.symbol }),
|
|
9067
9081
|
"bot",
|
|
9068
9082
|
void 0,
|
|
9069
|
-
|
|
9083
|
+
V
|
|
9070
9084
|
);
|
|
9071
9085
|
} else {
|
|
9072
|
-
const
|
|
9086
|
+
const V = [
|
|
9073
9087
|
{
|
|
9074
9088
|
id: "confirm-swap-actionform",
|
|
9075
9089
|
text: a("swapConfirmYes"),
|
|
@@ -9078,60 +9092,60 @@ To: ${V} ${Z.symbol}
|
|
|
9078
9092
|
extraData: { tx: L.tx }
|
|
9079
9093
|
}
|
|
9080
9094
|
];
|
|
9081
|
-
|
|
9095
|
+
b(M, "success"), l(
|
|
9082
9096
|
ee + a("swapReadyToProceed"),
|
|
9083
9097
|
"bot",
|
|
9084
9098
|
void 0,
|
|
9085
|
-
|
|
9099
|
+
V
|
|
9086
9100
|
);
|
|
9087
9101
|
}
|
|
9088
9102
|
} else
|
|
9089
|
-
|
|
9103
|
+
b(M, "pending"), l(
|
|
9090
9104
|
r("swapEstimationError", {
|
|
9091
9105
|
error: H.errorMessage || H.error || "Unknown error"
|
|
9092
9106
|
}),
|
|
9093
9107
|
"bot"
|
|
9094
9108
|
);
|
|
9095
9109
|
} else {
|
|
9096
|
-
const
|
|
9110
|
+
const Z = Yp({
|
|
9097
9111
|
action: U,
|
|
9098
9112
|
parameters: K,
|
|
9099
9113
|
fromAddress: u?.address || "",
|
|
9100
9114
|
chainId: w || 1
|
|
9101
9115
|
}), ce = {
|
|
9102
|
-
from:
|
|
9103
|
-
to:
|
|
9104
|
-
data:
|
|
9105
|
-
value:
|
|
9106
|
-
chainId:
|
|
9116
|
+
from: Z.from,
|
|
9117
|
+
to: Z.to,
|
|
9118
|
+
data: Z.data,
|
|
9119
|
+
value: Z.value,
|
|
9120
|
+
chainId: Z.chainId
|
|
9107
9121
|
};
|
|
9108
9122
|
if ((U === "send_token" || U === "send_native" || U === "send_nft") && u?.address)
|
|
9109
9123
|
try {
|
|
9110
|
-
const L = g?.nativeCurrency?.symbol || "native",
|
|
9111
|
-
from:
|
|
9112
|
-
to:
|
|
9113
|
-
data:
|
|
9114
|
-
value:
|
|
9124
|
+
const L = g?.nativeCurrency?.symbol || "native", D = await en({
|
|
9125
|
+
from: Z.from,
|
|
9126
|
+
to: Z.to,
|
|
9127
|
+
data: Z.data,
|
|
9128
|
+
value: Z.value && Z.value !== "0" ? `0x${BigInt(Z.value).toString(16)}` : void 0,
|
|
9115
9129
|
chainId: w,
|
|
9116
9130
|
rpcUrl: F
|
|
9117
9131
|
});
|
|
9118
|
-
if (
|
|
9119
|
-
const
|
|
9132
|
+
if (D.isGreaterThan(0)) {
|
|
9133
|
+
const _ = await kn({
|
|
9120
9134
|
address: u.address,
|
|
9121
9135
|
chainId: w,
|
|
9122
9136
|
rpcUrl: F
|
|
9123
9137
|
});
|
|
9124
|
-
if (
|
|
9125
|
-
const
|
|
9126
|
-
Me(BigInt(
|
|
9127
|
-
).decimalPlaces(6).toFormat(),
|
|
9128
|
-
Me(BigInt(
|
|
9138
|
+
if (_.isLessThan(D)) {
|
|
9139
|
+
const te = ie(
|
|
9140
|
+
Me(BigInt(_.toFixed(0)), 18)
|
|
9141
|
+
).decimalPlaces(6).toFormat(), W = ie(
|
|
9142
|
+
Me(BigInt(D.toFixed(0)), 18)
|
|
9129
9143
|
).decimalPlaces(6).toFormat();
|
|
9130
|
-
|
|
9144
|
+
b(M, "pending"), l(
|
|
9131
9145
|
r("txInsufficientGas", {
|
|
9132
9146
|
symbol: L,
|
|
9133
|
-
balance:
|
|
9134
|
-
fee:
|
|
9147
|
+
balance: te,
|
|
9148
|
+
fee: W
|
|
9135
9149
|
}),
|
|
9136
9150
|
"bot"
|
|
9137
9151
|
);
|
|
@@ -9146,46 +9160,46 @@ To: ${V} ${Z.symbol}
|
|
|
9146
9160
|
k(!1);
|
|
9147
9161
|
const L = await n(ce);
|
|
9148
9162
|
if (L.status === "success" && L.transactionHash) {
|
|
9149
|
-
const
|
|
9150
|
-
[View on Explorer](${
|
|
9163
|
+
const D = g?.blockExplorers?.default?.url, _ = D ? `
|
|
9164
|
+
[View on Explorer](${D}/tx/${L.transactionHash})` : `
|
|
9151
9165
|
Tx: ${L.transactionHash}`;
|
|
9152
9166
|
try {
|
|
9153
9167
|
await $e(2e3), (await Gn({
|
|
9154
9168
|
transactionHash: L.transactionHash,
|
|
9155
9169
|
chainId: w || 1,
|
|
9156
9170
|
rpcUrl: F
|
|
9157
|
-
})).status === "success" ? (
|
|
9171
|
+
})).status === "success" ? (b(M, "success"), O(
|
|
9158
9172
|
M,
|
|
9159
9173
|
H?.text + `
|
|
9160
|
-
` +
|
|
9161
|
-
)) : (
|
|
9162
|
-
` +
|
|
9163
|
-
} catch (
|
|
9164
|
-
console.warn("Transaction tracking timeout:",
|
|
9165
|
-
` +
|
|
9174
|
+
` + _
|
|
9175
|
+
)) : (b(M, "pending"), l(a("txReverted") + `
|
|
9176
|
+
` + _, "bot"));
|
|
9177
|
+
} catch (te) {
|
|
9178
|
+
console.warn("Transaction tracking timeout:", te), b(M, "success"), l(a("txTimeout") + `
|
|
9179
|
+
` + _, "bot");
|
|
9166
9180
|
}
|
|
9167
9181
|
} else if (L.status === "success")
|
|
9168
|
-
|
|
9182
|
+
b(M, "success");
|
|
9169
9183
|
else {
|
|
9170
|
-
|
|
9171
|
-
const
|
|
9184
|
+
b(M, "pending");
|
|
9185
|
+
const D = L.error ? `
|
|
9172
9186
|
Error: ${L.error}` : "";
|
|
9173
|
-
l(a("txFailed") +
|
|
9187
|
+
l(a("txFailed") + D, "bot");
|
|
9174
9188
|
}
|
|
9175
9189
|
} else
|
|
9176
|
-
|
|
9190
|
+
b(M, "pending"), l(a("txNoHandler"), "bot");
|
|
9177
9191
|
}
|
|
9178
|
-
} catch (
|
|
9179
|
-
console.error("Action form submit error:",
|
|
9192
|
+
} catch (Z) {
|
|
9193
|
+
console.error("Action form submit error:", Z), b(M, "pending"), l(
|
|
9180
9194
|
r("txError", {
|
|
9181
|
-
message:
|
|
9195
|
+
message: Z instanceof Error ? Z.message : "Unknown error"
|
|
9182
9196
|
}),
|
|
9183
9197
|
"bot"
|
|
9184
9198
|
);
|
|
9185
9199
|
}
|
|
9186
9200
|
},
|
|
9187
9201
|
[
|
|
9188
|
-
|
|
9202
|
+
b,
|
|
9189
9203
|
w,
|
|
9190
9204
|
u?.address,
|
|
9191
9205
|
E,
|
|
@@ -9206,11 +9220,11 @@ Error: ${L.error}` : "";
|
|
|
9206
9220
|
[v]
|
|
9207
9221
|
), [Lt, pt] = Xe({}), lt = Ie(
|
|
9208
9222
|
async (U, K, M) => {
|
|
9209
|
-
pt((
|
|
9223
|
+
pt((Z) => ({ ...Z, [M]: !0 }));
|
|
9210
9224
|
try {
|
|
9211
9225
|
await Oe(U, K, M);
|
|
9212
9226
|
} finally {
|
|
9213
|
-
pt((
|
|
9227
|
+
pt((Z) => ({ ...Z, [M]: !1 }));
|
|
9214
9228
|
}
|
|
9215
9229
|
},
|
|
9216
9230
|
[Oe]
|
|
@@ -9343,8 +9357,8 @@ Error: ${L.error}` : "";
|
|
|
9343
9357
|
{
|
|
9344
9358
|
action: U.actionData.action,
|
|
9345
9359
|
initialValues: U.actionData.parameters,
|
|
9346
|
-
onSubmit: (M,
|
|
9347
|
-
lt(M,
|
|
9360
|
+
onSubmit: (M, Z) => {
|
|
9361
|
+
lt(M, Z, U.id), setTimeout(() => {
|
|
9348
9362
|
me.current?.scrollIntoView({
|
|
9349
9363
|
behavior: "smooth"
|
|
9350
9364
|
});
|
|
@@ -9495,20 +9509,20 @@ Error: ${L.error}` : "";
|
|
|
9495
9509
|
onClose: o,
|
|
9496
9510
|
onTransaction: a
|
|
9497
9511
|
}) => {
|
|
9498
|
-
const { account: r, chainId: i } = Bn(), [l,
|
|
9512
|
+
const { account: r, chainId: i } = Bn(), [l, b] = Xe(n);
|
|
9499
9513
|
ct(() => {
|
|
9500
9514
|
n && s && s();
|
|
9501
9515
|
}, []), ct(() => {
|
|
9502
9516
|
if (typeof window > "u") return;
|
|
9503
|
-
const B = document.body, x = document.documentElement, k = B.style.overscrollBehavior, he = x.style.overscrollBehavior,
|
|
9517
|
+
const B = document.body, x = document.documentElement, k = B.style.overscrollBehavior, he = x.style.overscrollBehavior, y = B.style.overflow;
|
|
9504
9518
|
return l && (B.style.overscrollBehavior = "none", x.style.overscrollBehavior = "none", B.style.overflow = "hidden"), () => {
|
|
9505
|
-
B.style.overscrollBehavior = k, x.style.overscrollBehavior = he, B.style.overflow =
|
|
9519
|
+
B.style.overscrollBehavior = k, x.style.overscrollBehavior = he, B.style.overflow = y;
|
|
9506
9520
|
};
|
|
9507
9521
|
}, [l]);
|
|
9508
9522
|
const O = Ie(() => {
|
|
9509
|
-
|
|
9523
|
+
b(!0), s?.();
|
|
9510
9524
|
}, [s]), q = Ie(() => {
|
|
9511
|
-
|
|
9525
|
+
b(!1), o?.();
|
|
9512
9526
|
}, [o]), v = Ie(() => {
|
|
9513
9527
|
l ? q() : O();
|
|
9514
9528
|
}, [l, O, q]), S = {
|
|
@@ -9541,12 +9555,12 @@ Error: ${L.error}` : "";
|
|
|
9541
9555
|
language: i = "en",
|
|
9542
9556
|
rpcUrls: l
|
|
9543
9557
|
}) => {
|
|
9544
|
-
const
|
|
9558
|
+
const b = {
|
|
9545
9559
|
position: e,
|
|
9546
9560
|
theme: t,
|
|
9547
9561
|
rpcUrls: l
|
|
9548
9562
|
};
|
|
9549
|
-
return typeof window > "u" ? null : /* @__PURE__ */ G(Tp, { initialConfig:
|
|
9563
|
+
return typeof window > "u" ? null : /* @__PURE__ */ G(Tp, { initialConfig: b, children: /* @__PURE__ */ G(gp, { initialAccount: a, children: /* @__PURE__ */ G(x1, { initialLanguage: i, children: /* @__PURE__ */ G(
|
|
9550
9564
|
sh,
|
|
9551
9565
|
{
|
|
9552
9566
|
position: e,
|