@canton-network/wallet-gateway-remote 0.18.0 → 0.20.0

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.
Files changed (59) hide show
  1. package/dist/config/Config.d.ts +19 -15
  2. package/dist/config/Config.d.ts.map +1 -1
  3. package/dist/config/Config.js +5 -1
  4. package/dist/config/Config.test.js +8 -8
  5. package/dist/config/ConfigUtils.js +6 -6
  6. package/dist/dapp-api/controller.d.ts.map +1 -1
  7. package/dist/dapp-api/controller.js +80 -33
  8. package/dist/dapp-api/rpc-gen/typings.d.ts +41 -54
  9. package/dist/dapp-api/rpc-gen/typings.d.ts.map +1 -1
  10. package/dist/dapp-api/server.test.js +1 -5
  11. package/dist/example-config.d.ts +3 -0
  12. package/dist/example-config.d.ts.map +1 -1
  13. package/dist/example-config.js +3 -0
  14. package/dist/index.js +2 -2
  15. package/dist/init.d.ts.map +1 -1
  16. package/dist/init.js +12 -7
  17. package/dist/ledger/wallet-sync-service.test.js +3 -0
  18. package/dist/user-api/controller.d.ts +3 -1
  19. package/dist/user-api/controller.d.ts.map +1 -1
  20. package/dist/user-api/controller.js +123 -41
  21. package/dist/user-api/rpc-gen/index.d.ts +6 -0
  22. package/dist/user-api/rpc-gen/index.d.ts.map +1 -1
  23. package/dist/user-api/rpc-gen/index.js +2 -0
  24. package/dist/user-api/rpc-gen/typings.d.ts +37 -25
  25. package/dist/user-api/rpc-gen/typings.d.ts.map +1 -1
  26. package/dist/user-api/server.d.ts +1 -1
  27. package/dist/user-api/server.d.ts.map +1 -1
  28. package/dist/user-api/server.js +2 -2
  29. package/dist/user-api/server.test.js +1 -1
  30. package/dist/utils.d.ts +2 -3
  31. package/dist/utils.d.ts.map +1 -1
  32. package/dist/web/frontend/404/index.html +5 -5
  33. package/dist/web/frontend/approve/index.html +6 -6
  34. package/dist/web/frontend/assets/404-CKmKuu6H.js +8 -0
  35. package/dist/web/frontend/assets/approve-MzXNo4XO.js +17 -0
  36. package/dist/web/frontend/assets/callback-CcXLRr7Q.js +1 -0
  37. package/dist/web/frontend/assets/index-BnEARqU4.js +1679 -0
  38. package/dist/web/frontend/assets/{decode-CLJkuAIr.js → index-NP2zGQqX.js} +1 -1
  39. package/dist/web/frontend/assets/login-Btlo0Zla.js +7 -0
  40. package/dist/web/frontend/assets/settings-Br8FgNOa.js +37 -0
  41. package/dist/web/frontend/assets/{state-D-NnR2Q_.js → state-1o1CuDWy.js} +1 -1
  42. package/dist/web/frontend/assets/transactions-Cnu9eUFe.js +28 -0
  43. package/dist/web/frontend/assets/wallets-Dj5yeBJd.js +63 -0
  44. package/dist/web/frontend/callback/index.html +4 -4
  45. package/dist/web/frontend/index.html +3 -4
  46. package/dist/web/frontend/login/index.html +5 -5
  47. package/dist/web/frontend/settings/index.html +5 -5
  48. package/dist/web/frontend/transactions/index.html +6 -6
  49. package/dist/web/frontend/wallets/index.html +5 -5
  50. package/package.json +29 -29
  51. package/dist/web/frontend/assets/404-Cdu0PFS_.js +0 -16
  52. package/dist/web/frontend/assets/approve-B-AjC3qs.js +0 -227
  53. package/dist/web/frontend/assets/callback-CVGmyjFw.js +0 -1
  54. package/dist/web/frontend/assets/index-7OK83THX.css +0 -1
  55. package/dist/web/frontend/assets/index-DUTzHvwi.js +0 -1158
  56. package/dist/web/frontend/assets/login-BpjPKEmn.js +0 -186
  57. package/dist/web/frontend/assets/settings-DFCq6vOq.js +0 -28
  58. package/dist/web/frontend/assets/transactions-Cn8Y2p7-.js +0 -140
  59. package/dist/web/frontend/assets/wallets-B4lynciv.js +0 -267
@@ -1,227 +0,0 @@
1
- import{c as j,s as J,d as ue,A as y,b,a as ge,i as me,t as _e}from"./index-DUTzHvwi.js";import{r as u}from"./state-D-NnR2Q_.js";import{p as be}from"./decode-CLJkuAIr.js";var ve=Object.create,C=Object.defineProperty,xe=Object.getOwnPropertyDescriptor,X=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),x=t=>{throw TypeError(t)},fe=(t,e,a)=>e in t?C(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a,K=(t,e)=>C(t,"name",{value:e,configurable:!0}),we=t=>[,,,ve(t?.[X("metadata")]??null)],Y=["class","method","getter","setter","accessor","field","value","get","set"],w=t=>t!==void 0&&typeof t!="function"?x("Function expected"):t,ye=(t,e,a,n,o)=>({kind:Y[t],name:e,metadata:n,addInitializer:d=>a._?x("Already initialized"):o.push(w(d||null))}),ke=(t,e)=>fe(e,X("metadata"),t[3]),i=(t,e,a,n)=>{for(var o=0,d=t[e>>1],v=d&&d.length;o<v;o++)e&1?d[o].call(a):n=d[o].call(a,n);return n},l=(t,e,a,n,o,d)=>{var v,p,F,f,k,s=e&7,A=!!(e&8),_=!!(e&16),T=s>3?t.length+1:s?A?1:2:0,G=Y[s+5],L=s>3&&(t[T-1]=[]),pe=t[T]||(t[T]=[]),m=s&&(!_&&!A&&(o=o.prototype),s<5&&(s>3||!_)&&xe(s<4?o:{get[a](){return Q(this,d)},set[a](h){return V(this,d,h)}},a));s?_&&s<4&&K(d,(s>2?"set ":s>1?"get ":"")+a):K(o,a);for(var $=n.length-1;$>=0;$--)f=ye(s,a,F={},t[3],pe),s&&(f.static=A,f.private=_,k=f.access={has:_?h=>Ae(o,h):h=>a in h},s^3&&(k.get=_?h=>(s^1?Q:Te)(h,o,s^4?d:m.get):h=>h[a]),s>2&&(k.set=_?(h,I)=>V(h,o,I,s^4?d:m.set):(h,I)=>h[a]=I)),p=(0,n[$])(s?s<4?_?d:m[G]:s>4?void 0:{get:m.get,set:m.set}:o,f),F._=1,s^4||p===void 0?w(p)&&(s>4?L.unshift(p):s?_?d=p:m[G]=p:o=p):typeof p!="object"||p===null?x("Object expected"):(w(v=p.get)&&(m.get=v),w(v=p.set)&&(m.set=v),w(v=p.init)&&L.unshift(v));return s||ke(t,o),m&&C(o,a,m),_?s^4?d:m:o},z=(t,e,a)=>e.has(t)||x("Cannot "+a),Ae=(t,e)=>Object(e)!==e?x('Cannot use the "in" operator on this value'):t.has(e),Q=(t,e,a)=>(z(t,e,"read from private field"),a?a.call(t):e.get(t)),g=(t,e,a)=>e.has(t)?x("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,a),V=(t,e,a,n)=>(z(t,e,"write to private field"),n?n.call(t,a):e.set(t,a),a),Te=(t,e,a)=>(z(t,e,"access private method"),a),Z,ee,te,ae,re,se,ie,oe,ne,de,ce,he,P,le,r,S,M,W,N,H,E,O,q,U,D,R,B;le=[_e("user-ui-approve")];class c extends(P=me,he=[u()],ce=[u()],de=[u()],ne=[u()],oe=[u()],ie=[u()],se=[u()],re=[u()],ae=[u()],te=[u()],ee=[u()],Z=[u()],P){constructor(){super(...arguments),g(this,S,i(r,8,this,!1)),i(r,11,this),g(this,M,i(r,12,this,"")),i(r,15,this),g(this,W,i(r,16,this,"")),i(r,19,this),g(this,N,i(r,20,this,"")),i(r,23,this),g(this,H,i(r,24,this,"")),i(r,27,this),g(this,E,i(r,28,this,null)),i(r,31,this),g(this,O,i(r,32,this,"")),i(r,35,this),g(this,q,i(r,36,this,null)),i(r,39,this),g(this,U,i(r,40,this,null)),i(r,43,this),g(this,D,i(r,44,this,null)),i(r,47,this),g(this,R,i(r,48,this,null)),i(r,51,this),g(this,B,i(r,52,this,null)),i(r,55,this)}connectedCallback(){super.connectedCallback();const e=new URL(window.location.href);this.commandId=e.searchParams.get("commandId")||"",this.updateState()}async updateState(){const e=await j(J.accessToken.get());e.request("getTransaction",{commandId:this.commandId}).then(a=>{this.txHash=a.preparedTransactionHash,this.tx=a.preparedTransaction,this.status=a.status,this.createdAt=a.createdAt||null,this.signedAt=a.signedAt||null,this.origin=a.origin||null;try{this.txParsed=be(this.tx)}catch(n){console.error("Error parsing prepared transaction:",n),this.txParsed=null}}),e.request("listWallets",{}).then(a=>{this.partyId=a.find(n=>n.primary===!0)?.partyId||""})}async handleExecute(){this.loading=!0,this.message="Executing transaction...",this.messageType="info";try{const e={commandId:this.commandId,partyId:this.partyId,preparedTransactionHash:this.txHash,preparedTransaction:this.tx},a=await j(J.accessToken.get()),{signature:n,signedBy:o}=await a.request("sign",e),d={signature:n,signedBy:o,commandId:this.commandId,partyId:this.partyId};await a.request("execute",d),this.message="Transaction executed successfully ✅",this.messageType="info",this.status="executed",window.opener&&setTimeout(()=>window.close(),1e3)}catch(e){console.error(e),this.message=null,this.messageType=null,ue(e,{message:"Error executing transaction"})}finally{this.loading=!1}}render(){return b`
2
- <div class="card">
3
- <h1>Pending Transaction Request</h1>
4
-
5
- <h2>Transaction Details</h2>
6
-
7
- <h3>Command Id</h3>
8
- <p>${this.commandId}</p>
9
-
10
- <h3>Status</h3>
11
- <p>${this.status}</p>
12
-
13
- ${this.createdAt?b`<h3>Created At</h3>
14
- <p>${this.createdAt}</p>`:y}
15
- ${this.signedAt?b`<h3>Signed At</h3>
16
- <p>${this.signedAt}</p>`:y}
17
- ${this.origin?b`<h3>Origin</h3>
18
- <p>${this.origin}</p>`:y}
19
-
20
- <h3>Template</h3>
21
- <p>
22
- ${this.txParsed?.packageName||"N/A"}:${this.txParsed?.moduleName||"N/A"}:${this.txParsed?.entityName||"N/A"}
23
- </p>
24
-
25
- <h3>Signatories</h3>
26
- <ul>
27
- ${this.txParsed?.signatories?.map(e=>b`<li>${e}</li>`)||b`<li>N/A</li>`}
28
- </ul>
29
-
30
- <h3>Stakeholders</h3>
31
- <ul>
32
- ${this.txParsed?.stakeholders?.map(e=>b`<li>${e}</li>`)||b`<li>N/A</li>`}
33
- </ul>
34
-
35
- <h3>Transaction Hash</h3>
36
- <p>${this.txHash}</p>
37
-
38
- <div class="section-header">
39
- <h3>Base64 Transaction</h3>
40
- <button
41
- class="copy-btn"
42
- @click=${()=>this._copyToClipboard(this.tx)}
43
- title="Copy to clipboard"
44
- >
45
- 📋 Copy
46
- </button>
47
- </div>
48
- <div class="tx-box">${this.tx}</div>
49
-
50
- <div class="section-header">
51
- <h3>Decoded Transaction</h3>
52
- <button
53
- class="copy-btn"
54
- @click=${()=>this._copyToClipboard(this.txParsed?.jsonString||"")}
55
- title="Copy to clipboard"
56
- >
57
- 📋 Copy
58
- </button>
59
- </div>
60
- <div class="tx-box">${this.txParsed?.jsonString||"N/A"}</div>
61
-
62
- ${this.status==="executed"?y:b`
63
- <button
64
- ?disabled=${this.loading}
65
- @click=${this.handleExecute}
66
- >
67
- ${this.loading?"Processing...":"Approve"}
68
- </button>
69
- `}
70
- ${this.message?b`<div class="message ${this.messageType}">
71
- ${this.message}
72
- </div>`:null}
73
- </div>
74
- `}_copyToClipboard(e){navigator.clipboard.writeText(e)}}r=we(P);S=new WeakMap;M=new WeakMap;W=new WeakMap;N=new WeakMap;H=new WeakMap;E=new WeakMap;O=new WeakMap;q=new WeakMap;U=new WeakMap;D=new WeakMap;R=new WeakMap;B=new WeakMap;l(r,4,"loading",he,c,S);l(r,4,"commandId",ce,c,M);l(r,4,"partyId",de,c,W);l(r,4,"txHash",ne,c,N);l(r,4,"tx",oe,c,H);l(r,4,"txParsed",ie,c,E);l(r,4,"status",se,c,O);l(r,4,"message",re,c,q);l(r,4,"messageType",ae,c,U);l(r,4,"createdAt",te,c,D);l(r,4,"signedAt",ee,c,R);l(r,4,"origin",Z,c,B);c=l(r,0,"ApproveUi",le,c);c.styles=ge`
75
- :host {
76
- display: block;
77
- box-sizing: border-box;
78
- padding: 0rem;
79
- max-width: 900px;
80
- margin: 0 auto;
81
- font-family: var(--swk-font, Arial, sans-serif);
82
- color: var(--text-color, #222);
83
- }
84
-
85
- :host([theme='dark']) {
86
- --card-bg: #1e1e1e;
87
- --border-color: #333;
88
- --text-color: #fff;
89
- --button-bg: #4caf50;
90
- --button-hover: #66bb6a;
91
- --message-info: #81c784;
92
- --message-error: #ff6b6b;
93
- }
94
-
95
- :host(:not([theme='dark'])) {
96
- --card-bg: #fff;
97
- --border-color: #ddd;
98
- --text-color: #222;
99
- --button-bg: #4caf50;
100
- --button-hover: #43a047;
101
- --message-info: #388e3c;
102
- --message-error: #d32f2f;
103
- }
104
-
105
- .card {
106
- background: var(--card-bg);
107
- border: 1px solid var(--border-color);
108
- border-radius: 16px;
109
- padding: 1.5rem;
110
- width: 100%;
111
- box-sizing: border-box;
112
- display: flex;
113
- flex-direction: column;
114
- gap: 1rem;
115
- overflow-x: hidden;
116
- word-break: break-word;
117
- margin-top: 2rem;
118
- }
119
-
120
- h1 {
121
- font-size: 1.25rem;
122
- margin: 0;
123
- }
124
-
125
- h2 {
126
- font-size: 1rem;
127
- margin: 0.5rem 0 0.25rem 0;
128
- }
129
-
130
- h3 {
131
- font-size: 0.875rem;
132
- margin: 0.25rem 0;
133
- }
134
-
135
- p {
136
- font-size: 0.85rem;
137
- margin: 0.25rem 0;
138
- word-break: break-word;
139
- }
140
-
141
- .tx-box {
142
- background: rgba(0, 0, 0, 0.05);
143
- border-radius: 8px;
144
- padding: 0.5rem;
145
- max-height: 150px;
146
- overflow-y: auto;
147
- overflow-x: auto;
148
- font-family: monospace;
149
- color: var(--text-color);
150
- word-break: break-word;
151
- }
152
-
153
- .section-header {
154
- display: flex;
155
- justify-content: space-between;
156
- align-items: center;
157
- gap: 0.5rem;
158
- }
159
-
160
- .copy-btn {
161
- background: transparent;
162
- border: 1px solid var(--border-color);
163
- padding: 0.25rem 0.5rem;
164
- font-size: 0.75rem;
165
- color: var(--text-color);
166
- cursor: pointer;
167
- border-radius: 4px;
168
- transition: all 0.2s ease;
169
- }
170
-
171
- .copy-btn:hover {
172
- background: var(--button-bg);
173
- border-color: var(--button-bg);
174
- color: white;
175
- }
176
-
177
- button {
178
- padding: 0.75rem;
179
- border-radius: 8px;
180
- border: none;
181
- cursor: pointer;
182
- background: var(--button-bg);
183
- color: white;
184
- font-weight: 600;
185
- font-size: 1rem;
186
- transition: background 0.2s ease;
187
- }
188
-
189
- button:hover {
190
- background: var(--button-hover);
191
- }
192
-
193
- button[disabled] {
194
- opacity: 0.6;
195
- cursor: not-allowed;
196
- }
197
-
198
- .message {
199
- padding: 0.5rem;
200
- border-radius: 6px;
201
- font-size: 0.875rem;
202
- }
203
-
204
- .message.info {
205
- background-color: var(--message-info);
206
- color: white;
207
- }
208
-
209
- .message.error {
210
- background-color: var(--message-error);
211
- color: white;
212
- }
213
-
214
- @media (max-width: 480px) {
215
- .card {
216
- padding: 1rem;
217
- }
218
-
219
- h1 {
220
- font-size: 1.1rem;
221
- }
222
-
223
- button {
224
- font-size: 0.95rem;
225
- }
226
- }
227
- `;i(r,1,c);
@@ -1 +0,0 @@
1
- import{i as O,s as u,e as x,r as C,b as P,t as I}from"./index-DUTzHvwi.js";var L=Object.create,h=Object.defineProperty,z=Object.getOwnPropertyDescriptor,w=(e,t)=>(t=Symbol[e])?t:Symbol.for("Symbol."+e),b=e=>{throw TypeError(e)},D=(e,t,r)=>t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,R=(e,t)=>h(e,"name",{value:t,configurable:!0}),T=e=>[,,,L(e?.[w("metadata")]??null)],j=["class","method","getter","setter","accessor","field","value","get","set"],k=e=>e!==void 0&&typeof e!="function"?b("Function expected"):e,E=(e,t,r,o,a)=>({kind:j[e],name:t,metadata:o,addInitializer:c=>r._?b("Already initialized"):a.push(k(c||null))}),U=(e,t)=>D(t,w("metadata"),e[3]),N=(e,t,r,o)=>{for(var a=0,c=e[t>>1],i=c&&c.length;a<i;a++)c[a].call(r);return o},F=(e,t,r,o,a,c)=>{var i,s,l,n=t&7,d=!1,g=0,y=e[g]||(e[g]=[]),_=n&&(a=a.prototype,n<5&&(n>3||!d)&&z(a,r));R(a,r);for(var p=o.length-1;p>=0;p--)l=E(n,r,s={},e[3],y),i=(0,o[p])(a,l),s._=1,k(i)&&(a=i);return U(e,a),_&&h(a,r,_),d?n^4?c:_:a},m,v,S;m=[I("login-callback")];class f extends(S=O){connectedCallback(){super.connectedCallback(),this.handleRedirect()}async handleRedirect(){const t=new URL(window.location.href),r=t.searchParams.get("code"),o=t.searchParams.get("state");if(!r&&!o){console.error("missing state and code");return}if(r&&o){const a=JSON.parse(atob(o)),s=(await(await fetch(a.configUrl)).json()).token_endpoint,n=await(await fetch(s,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"authorization_code",code:r,redirect_uri:window.location.origin+"/callback/",client_id:a.clientId,audience:a.audience})})).json();if(n.access_token){const d=JSON.parse(atob(n.access_token.split(".")[1]));u.expirationDate.set(new Date(d.exp*1e3).toISOString()),u.accessToken.set(n.access_token),x(n.access_token,u.networkId.get()||"").then(()=>{C()})}}}render(){return P`<h2>Logged in!</h2>`}}v=T(S);f=F(v,0,"LoginCallback",m,f);N(v,1,f);