PageSourceSearch

https://assetswap.ai/assets/index-Bx5mf5uv.js

js assetswap.ai collected 2026-10-05 11:49:58 UTC 15,653 bytes, 279 lines download raw bytes

1import{de as R,df as k,dh as a,dn as Y,ds as v,dY as p,dr as O,dw as L,dF as V,dt as z,dq as E,du as F}from"./index-CCYt6XTw.js";import{n as l,c as _,o as j,r as b}from"./if-defined-B-yJhiO2.js";import{T as A,D as W}from"./index-AD2TRzo0.js";import"./index-DPjwRnih.js";import"./index-dXtAx3mP.js";import"./index-3ytlcsv2.js";var N;(function(s){s.approve="approved",s.bought="bought",s.borrow="borrowed",s.burn="burnt",s.cancel="canceled",s.claim="claimed",s.deploy="deployed",s.deposit="deposited",s.execute="executed",s.mint="minted",s.receive="received",s.repay="repaid",s.send="sent",s.sell="sold",s.stake="staked",s.trade="swapped",s.unstake="unstaked",s.withdraw="withdrawn"})(N||(N={}));const U=R`
2  :host > wui-flex {
3    display: flex;
4    justify-content: center;
5    align-items: center;
6    position: relative;
7    width: 40px;
8    height: 40px;
9    box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005);
10    background-color: var(--wui-color-gray-glass-005);
11  }
12
13  :host > wui-flex wui-image {
14    display: block;
15  }
16
17  :host > wui-flex,
18  :host > wui-flex wui-image,
19  .swap-images-container,
20  .swap-images-container.nft,
21  wui-image.nft {
22    border-top-left-radius: var(--local-left-border-radius);
23    border-top-right-radius: var(--local-right-border-radius);
24    border-bottom-left-radius: var(--local-left-border-radius);
25    border-bottom-right-radius: var(--local-right-border-radius);
26  }
27
28  wui-icon {
29    width: 20px;
30    height: 20px;
31  }
32
33  wui-icon-box {
34    position: absolute;
35    right: 0;
36    bottom: 0;
37    transform: translate(20%, 20%);
38  }
39
40  .swap-images-container {
41    position: relative;
42    width: 40px;
43    height: 40px;
44    overflow: hidden;
45  }
46
47  .swap-images-container wui-image:first-child {
48    position: absolute;
49    width: 40px;
50    height: 40px;
51    top: 0;
52    left: 0%;
53    clip-path: inset(0px calc(50% + 2px) 0px 0%);
54  }
55
56  .swap-images-container wui-image:last-child {
57    clip-path: inset(0px 0px 0px calc(50% + 2px));
58  }
59`;var m=function(s,t,e,r){var o=arguments.length,i=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(s,t,e,r);else for(var c=s.length-1;c>=0;c--)(n=s[c])&&(i=(o<3?n(i):o>3?n(t,e,i):n(t,e))||i);return o>3&&i&&Object.defineProperty(t,e,i),i};let f=class extends k{constructor(){super(...arguments),this.images=[],this.secondImage={type:void 0,url:""}}render(){const[t,e]=this.images,r=(t==null?void 0:t.type)==="NFT",o=e!=null&&e.url?e.type==="NFT":r,i=r?"var(--wui-border-radius-xxs)":"var(--wui-border-radius-s)",n=o?"var(--wui-border-radius-xxs)":"var(--wui-border-radius-s)";return this.style.cssText=`
60    --local-left-border-radius: ${i};
61    --local-right-border-radius: ${n};
62    `,a`<wui-flex> ${this.templateVisual()} ${this.templateIcon()} </wui-flex>`}templateVisual(){const[t,e]=this.images,r=t==null?void 0:t.type;return this.images.length===2&&(t!=null&&t.url||e!=null&&e.url)?a`<div class="swap-images-container">
63        ${t!=null&&t.url?a`<wui-image src=${t.url} alt="Transaction image"></wui-image>`:null}
64        ${e!=null&&e.url?a`<wui-image src=${e.url} alt="Transaction image"></wui-image>`:null}
65      </div>`:t!=null&&t.url?a`<wui-image src=${t.url} alt="Transaction image"></wui-image>`:r==="NFT"?a`<wui-icon size="inherit" color="fg-200" name="nftPlaceholder"></wui-icon>`:a`<wui-icon size="inherit" color="fg-200" name="coinPlaceholder"></wui-icon>`}templateIcon(){let t="accent-100",e;return e=this.getIcon(),this.status&&(t=this.getStatusColor()),e?a`
66      <wui-icon-box
67        size="xxs"
68        iconColor=${t}
69        backgroundColor=${t}
70        background="opaque"
71        icon=${e}
72        ?border=${!0}
73        borderColor="wui-color-bg-125"
74      ></wui-icon-box>
75    `:null}getDirectionIcon(){switch(this.direction){case"in":return"arrowBottom";case"out":return"arrowTop";default:return}}getIcon(){return this.onlyDirectionIcon?this.getDirectionIcon():this.type==="trade"?"swapHorizontalBold":this.type==="approve"?"checkmark":this.type==="cancel"?"close":this.getDirectionIcon()}getStatusColor(){switch(this.status){case"confirmed":return"success-100";case"failed":return"error-100";
75case"pending":return"inverse-100";default:return"accent-100"}}};f.styles=[U];m([l()],f.prototype,"type",void 0);m([l()],f.prototype,"status",void 0);m([l()],f.prototype,"direction",void 0);m([l({type:Boolean})],f.prototype,"onlyDirectionIcon",void 0);m([l({type:Array})],f.prototype,"images",void 0);m([l({type:Object})],f.prototype,"secondImage",void 0);f=m([_("wui-transaction-visual")],f);const G=R`
76  :host > wui-flex:first-child {
77    align-items: center;
78    column-gap: var(--wui-spacing-s);
79    padding: 6.5px var(--wui-spacing-xs) 6.5px var(--wui-spacing-xs);
80    width: 100%;
81  }
82
83  :host > wui-flex:first-child wui-text:nth-child(1) {
84    text-transform: capitalize;
85  }
86
87  wui-transaction-visual {
88    width: 40px;
89    height: 40px;
90  }
91
92  wui-flex {
93    flex: 1;
94  }
95
96  :host wui-flex wui-flex {
97    overflow: hidden;
98  }
99
100  :host .description-container wui-text span {
101    word-break: break-all;
102  }
103
104  :host .description-container wui-text {
105    overflow: hidden;
106  }
107
108  :host .description-separator-icon {
109    margin: 0px 6px;
110  }
111
112  :host wui-text > span {
113    overflow: hidden;
114    display: -webkit-box;
115    -webkit-box-orient: vertical;
116    -webkit-line-clamp: 1;
117  }
118`;var w=function(s,t,e,r){var o=arguments.length,i=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(s,t,e,r);else for(var c=s.length-1;c>=0;c--)(n=s[c])&&(i=(o<3?n(i):o>3?n(t,e,i):n(t,e))||i);return o>3&&i&&Object.defineProperty(t,e,i),i};let d=class extends k{constructor(){super(...arguments),this.type="approve",this.onlyDirectionIcon=!1,this.images=[],this.price=[],this.amount=[],this.symbol=[]}render(){return a`
119      <wui-flex>
120        <wui-transaction-visual
121          .status=${this.status}
122          direction=${j(this.direction)}
123          type=${this.type}
124          onlyDirectionIcon=${j(this.onlyDirectionIcon)}
125          .images=${this.images}
126        ></wui-transaction-visual>
127        <wui-flex flexDirection="column" gap="3xs">
128          <wui-text variant="paragraph-600" color="fg-100">
129            ${N[this.type]||this.type}
130          </wui-text>
131          <wui-flex class="description-container">
132            ${this.templateDescription()} ${this.templateSecondDescription()}
133          </wui-flex>
134        </wui-flex>
135        <wui-text variant="micro-700" color="fg-300"><span>${this.date}</span></wui-text>
136      </wui-flex>
137    `}templateDescription(){var e;const t=(e=this.descriptions)==null?void 0:e[0];return t?a`
138          <wui-text variant="small-500" color="fg-200">
139            <span>${t}</span>
140          </wui-text>
141        `:null}templateSecondDescription(){var e;const t=(e=this.descriptions)==null?void 0:e[1];return t?a`
142          <wui-icon class="description-separator-icon" size="xxs" name="arrowRight"></wui-icon>
143          <wui-text variant="small-400" color="fg-200">
144            <span>${t}</span>
145          </wui-text>
146        `:null}};d.styles=[Y,G];w([l()],d.prototype,"type",void 0);w([l({type:Array})],d.prototype,"descriptions",void 0);w([l()],d.prototype,"date",void 0);w([l({type:Boolean})],d.prototype,"onlyDirectionIcon",void 0);w([l()],d.prototype,"status",void 0);w([l()],d.prototype,"direction",void 0);w([l({type:Array})],d.prototype,"images",void 0);w([l({type:Array})],d.prototype,"price",void 0);w([l({type:Array})],d.prototype,"amount",void 0);w([l({type:Array})],d.prototype,"symbol",void 0);d=w([_("wui-transaction-list-item")],d);const M=R`
147  :host {
148    min-height: 100%;
149  }
150
151  .group-container[last-group='true'] {
152    padding-bottom: var(--wui-spacing-m);
153  }
154
155  .contentContainer {
156    height: 280px;
157  }
158
159  .contentContainer > wui-icon-box {
160    width: 40px;
161    height: 40px;
162    border-radius: var(--wui-border-radius-xxs);
163  }
164
165  .contentContainer > .textContent {
166    width: 65%;
167  }
168
169  .emptyContainer {
170    height: 100%;
171  }
172`;var x=function(s,t,e,r){var o=arguments.length,i=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(s,t,e,r);else for(var c=s.length-1;c>=0;c--)(n=s[c])&&(i=(o<3?n(i):o>3?n(t,e,i):n(t,e))||i);return o>3&&i&&Object.defineProperty(t,e,i),i};const D="last-transaction",K=7;let g=class extends k{constructor(){super(),this.unsubscribe=[],this.paginationObserver=void 0,this.page="activity",this.caipAddress=v.state.activeCaipAddress,this.transactionsByYear=p.state.transactionsByYear,this.loading=p.state.loading,this.empty=p.state.empty,this.next=p.state.next,p.clearCursor(
172),this.unsubscribe.push(v.subscribeKey("activeCaipAddress",t=>{t&&this.caipAddress!==t&&(p.resetTransactions(),p.fetchTransactions(t)),this.caipAddress=t}),v.subscribeKey("activeCaipNetwork",()=>{this.updateTransactionView()}),p.subscribe(t=>{this.transactionsByYear=t.transactionsByYear,this.loading=t.loading,this.empty=t.empty,this.next=t.next}))}firstUpdated(){this.updateTransactionView(),this.createPaginationObserver()}updated(){this.setPaginationObserver()}disconnectedCallback(){this.unsubscribe.forEach(t=>t())}render(){return a` ${this.empty?null:this.templateTransactionsByYear()}
173    ${this.loading?this.templateLoading():null}
174    ${!this.loading&&this.empty?this.templateEmpty():null}`}updateTransactionView(){var r;const t=(r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId;p.state.lastNetworkInView!==t&&(p.resetTransactions(),this.caipAddress&&p.fetchTransactions(O.getPlainAddress(this.caipAddress))),p.setLastNetworkInView(t)}templateTransactionsByYear(){return Object.keys(this.transactionsByYear).sort().reverse().map(e=>{const r=parseInt(e,10),o=new Array(12).fill(null).map((i,n)=>{var u;const c=A.getTransactionGroupTitle(r,n),h=(u=this.transactionsByYear[r])==null?void 0:u[n];return{groupTitle:c,transactions:h}}).filter(({transactions:i})=>i).reverse();return o.map(({groupTitle:i,transactions:n},c)=>{const h=c===o.length-1;return n?a`
175          <wui-flex
176            flexDirection="column"
177            class="group-container"
178            last-group="${h?"true":"false"}"
179            data-testid="month-indexes"
180          >
181            <wui-flex
182              alignItems="center"
183              flexDirection="row"
184              .padding=${["xs","s","s","s"]}
185            >
186              <wui-text variant="paragraph-500" color="fg-200" data-testid="group-title"
187                >${i}</wui-text
188              >
189            </wui-flex>
190            <wui-flex flexDirection="column" gap="xs">
191              ${this.templateTransactions(n,h)}
192            </wui-flex>
193          </wui-flex>
194        `:null})})}templateRenderTransaction(t,e){const{date:r,descriptions:o,direction:i,isAllNFT:n,images:c,status:h,transfers:u,type:y}=this.getTransactionListItemProps(t),$=(u==null?void 0:u.length)>1;return(u==null?void 0:u.length)===2&&!n?a`
195        <wui-transaction-list-item
196          date=${r}
197          .direction=${i}
198          id=${e&&this.next?D:""}
199          status=${h}
200          type=${y}
201          .images=${c}
202          .descriptions=${o}
203        ></wui-transaction-list-item>
204      `:$?u.map((C,S)=>{const B=A.getTransferDescription(C),T=e&&S===u.length-1;return a` <wui-transaction-list-item
205          date=${r}
206          direction=${C.direction}
207          id=${T&&this.next?D:""}
208          status=${h}
209          type=${y}
210          .onlyDirectionIcon=${!0}
211          .images=${[c[S]]}
212          .descriptions=${[B]}
213        ></wui-transaction-list-item>`}):a`
214      <wui-transaction-list-item
215        date=${r}
216        .direction=${i}
217        id=${e&&this.next?D:""}
218        status=${h}
219        type=${y}
220        .images=${c}
221        .descriptions=${o}
222      ></wui-transaction-list-item>
223    `}templateTransactions(t,e){return t.map((r,o)=>{const i=e&&o===t.length-1;return a`${this.templateRenderTransaction(r,i)}`})}emptyStateActivity(){return a`<wui-flex
224      class="emptyContainer"
225      flexGrow="1"
226      flexDirection="column"
227      justifyContent="center"
228      alignItems="center"
229      .padding=${["3xl","xl","3xl","xl"]}
230      gap="xl"
231      data-testid="empty-activity-state"
232    >
233      <wui-icon-box
234        backgroundColor="gray-glass-005"
235        background="gray"
236        iconColor="fg-200"
237        icon="wallet"
238        size="lg"
239        ?border=${!0}
240        borderColor="wui-color-bg-125"
241      ></wui-icon-box>
242      <wui-flex flexDirection="column" alignItems="center" gap="xs">
243        <wui-text align="center" variant="paragraph-500" color="fg-100"
244          >No Transactions yet</wui-text
245        >
246        <wui-text align="center" variant="small-500" color="fg-200"
247          >Start trading on dApps <br />
248          to grow your wallet!</wui-text
249        >
250      </wui-flex>
251    </wui-flex>`}emptyStateAccount(){return a`<wui-flex
252      class="contentContainer"
253      alignItems="center"
254      justifyContent="center"
255      flexDirection="column"
256      gap="l"
257      data-testid="empty-account-state"
258    >
259      <wui-icon-box
260        icon="swapHorizontal"
261        size="inherit"
262        iconColor="fg-200"
263        backgroundColor="fg-200"
264        iconSize="lg"
265      ></wui-icon-box>
266      <wui-flex
267        class="textContent"
268        gap="xs"
269        flexDirection="column"
270        justifyContent="center"
271        flexDirection="column"
272      >
273        <wui-text variant="paragraph-500" align="center" color="fg-100">No activity yet</wui-text>
274        <wui-text variant="small-400" align="center" color="fg-200"
275          >Your next transactions will appear here</wui-text
276        >
277      </wui-flex>
278      <wui-link @click=${this.onReceiveClick.bind(this)}>Trade</wui-link>
279    </wui-flex>`}templateEmpty(){return this.page==="account"?a`${this.emptyStateAccount()}`:a`${this.emptyStateActivity()}`}templateLoading(){return this.page==="activity"?Array(K).fill(a` <wui-transaction-list-item-loader></wui-transaction-list-item-loader> `).map(t=>t):null}onReceiveClick(){L.push("WalletReceive")}createPaginationObserver(){const t=v.state.activeChain,{projectId:e}=V.state;this.paginationObserver=new IntersectionObserver(([r])=>{var o;r!=null&&r.isIntersecting&&!this.loading&&(p.fetchTransactions(O.getPlainAddress(this.caipAddress)),z.sendEvent({type:"track",event:"LOAD_MORE_TRANSACTIONS",properties:{address:O.getPlainAddress(this.caipAddress),projectId:e,cursor:this.next,isSmartAccount:((o=E.state.preferredAccountTypes)==null?void 0:o[t])===F.ACCOUNT_TYPES.SMART_ACCOUNT}}))},{}),this.setPaginationObserver()}setPaginationObserver(){var e,r,o;(e=this.paginationObserver)==null||e.disconnect();const t=(r=this.shadowRoot)==null?void 0:r.querySelector(`#${D}`);t&&((o=this.paginationObserver)==null||o.observe(t))}getTransactionListItemProps(t){var h,u,y,$,I;const e=W.formatDate((h=t==null?void 0:t.metadata)==null?void 0:h.minedAt),r=A.getTransactionDescriptions(t),o=t==null?void 0:t.transfers,i=(u=t==null?void 0:t.transfers)==null?void 0:u[0],n=!!i&&((y=t==null?void 0:t.transfers)==null?void 0:y.every(C=>!!C.nft_info)),c=A.getTransactionImages(o);return{date:e,direction:i==null?void 0:i.direction,descriptions:r,isAllNFT:n,images:c,status:($=t.metadata)==null?void 0:$.status,transfers:o,type:(I=t.metadata)==null?void 0:I.operationType}}};g.styles=M;x([l()],g.prototype,"page",void 0);x([b()],g.prototype,"caipAddress",void 0);x([b()],g.prototype,"transactionsByYear",void 0);x([b()],g.prototype,"loading",void 0);x([b()],g.prototype,"empty",void 0);x([b()],g.prototype,"next",void 0);g=x([_("w3m-activity-list")],g);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.