@canton-network/wallet-gateway-remote 1.3.0 → 1.5.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 (141) hide show
  1. package/README.md +1 -1
  2. package/dist/auth/jwt-auth-service.d.ts.map +1 -1
  3. package/dist/auth/jwt-auth-service.js +6 -5
  4. package/dist/auth/jwt-auth-service.test.d.ts +2 -0
  5. package/dist/auth/jwt-auth-service.test.d.ts.map +1 -0
  6. package/dist/auth/jwt-auth-service.test.js +259 -0
  7. package/dist/auth/jwt-unsafe-auth-service.test.d.ts +2 -0
  8. package/dist/auth/jwt-unsafe-auth-service.test.d.ts.map +1 -0
  9. package/dist/auth/jwt-unsafe-auth-service.test.js +120 -0
  10. package/dist/config/Config.d.ts +64 -8
  11. package/dist/config/Config.d.ts.map +1 -1
  12. package/dist/config/Config.js +1 -0
  13. package/dist/config/ConfigUtils.d.ts.map +1 -1
  14. package/dist/config/ConfigUtils.js +3 -0
  15. package/dist/dapp-api/controller.d.ts +1 -0
  16. package/dist/dapp-api/controller.d.ts.map +1 -1
  17. package/dist/dapp-api/controller.js +87 -26
  18. package/dist/dapp-api/controller.test.d.ts +2 -0
  19. package/dist/dapp-api/controller.test.d.ts.map +1 -0
  20. package/dist/dapp-api/controller.test.js +516 -0
  21. package/dist/dapp-api/rpc-gen/index.d.ts +3 -0
  22. package/dist/dapp-api/rpc-gen/index.d.ts.map +1 -1
  23. package/dist/dapp-api/rpc-gen/index.js +1 -0
  24. package/dist/dapp-api/rpc-gen/typings.d.ts +99 -14
  25. package/dist/dapp-api/rpc-gen/typings.d.ts.map +1 -1
  26. package/dist/dapp-api/server.d.ts.map +1 -1
  27. package/dist/dapp-api/server.js +5 -0
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +10 -0
  30. package/dist/init.d.ts.map +1 -1
  31. package/dist/init.js +4 -6
  32. package/dist/ledger/transaction-service.d.ts +14 -11
  33. package/dist/ledger/transaction-service.d.ts.map +1 -1
  34. package/dist/ledger/transaction-service.js +95 -8
  35. package/dist/ledger/transaction-service.test.d.ts +2 -0
  36. package/dist/ledger/transaction-service.test.d.ts.map +1 -0
  37. package/dist/ledger/transaction-service.test.js +356 -0
  38. package/dist/ledger/wallet-allocation/signing-providers/fireblocks-wallet-allocator.d.ts +5 -2
  39. package/dist/ledger/wallet-allocation/signing-providers/fireblocks-wallet-allocator.d.ts.map +1 -1
  40. package/dist/ledger/wallet-allocation/signing-providers/fireblocks-wallet-allocator.js +7 -6
  41. package/dist/ledger/wallet-allocation/wallet-allocation-service.d.ts +11 -5
  42. package/dist/ledger/wallet-allocation/wallet-allocation-service.d.ts.map +1 -1
  43. package/dist/ledger/wallet-allocation/wallet-allocation-service.js +28 -14
  44. package/dist/ledger/wallet-allocation/wallet-allocation-service.test.js +550 -19
  45. package/dist/ledger/wallet-sync-service.js +3 -3
  46. package/dist/middleware/apiKeyAuth.d.ts +6 -0
  47. package/dist/middleware/apiKeyAuth.d.ts.map +1 -0
  48. package/dist/middleware/apiKeyAuth.js +88 -0
  49. package/dist/middleware/apiKeyAuth.test.d.ts +2 -0
  50. package/dist/middleware/apiKeyAuth.test.d.ts.map +1 -0
  51. package/dist/middleware/apiKeyAuth.test.js +126 -0
  52. package/dist/middleware/jsonRpcHandler.d.ts +11 -1
  53. package/dist/middleware/jsonRpcHandler.d.ts.map +1 -1
  54. package/dist/middleware/jsonRpcHandler.js +14 -15
  55. package/dist/middleware/jsonRpcHandler.test.d.ts +2 -0
  56. package/dist/middleware/jsonRpcHandler.test.d.ts.map +1 -0
  57. package/dist/middleware/jsonRpcHandler.test.js +254 -0
  58. package/dist/middleware/jwtAuth.d.ts.map +1 -1
  59. package/dist/middleware/jwtAuth.js +4 -0
  60. package/dist/middleware/jwtAuth.test.d.ts +2 -0
  61. package/dist/middleware/jwtAuth.test.d.ts.map +1 -0
  62. package/dist/middleware/jwtAuth.test.js +93 -0
  63. package/dist/middleware/rateLimit.js +2 -2
  64. package/dist/middleware/rateLimit.test.js +26 -0
  65. package/dist/middleware/sessionHandler.js +1 -1
  66. package/dist/middleware/sessionHandler.test.d.ts +2 -0
  67. package/dist/middleware/sessionHandler.test.d.ts.map +1 -0
  68. package/dist/middleware/sessionHandler.test.js +121 -0
  69. package/dist/notification/NotificationService.test.d.ts +2 -0
  70. package/dist/notification/NotificationService.test.d.ts.map +1 -0
  71. package/dist/notification/NotificationService.test.js +110 -0
  72. package/dist/signing/signing-drivers.d.ts +7 -0
  73. package/dist/signing/signing-drivers.d.ts.map +1 -0
  74. package/dist/signing/signing-drivers.js +3 -0
  75. package/dist/user-api/controller.d.ts +12 -4
  76. package/dist/user-api/controller.d.ts.map +1 -1
  77. package/dist/user-api/controller.js +330 -95
  78. package/dist/user-api/controller.test.d.ts +2 -0
  79. package/dist/user-api/controller.test.d.ts.map +1 -0
  80. package/dist/user-api/controller.test.js +862 -0
  81. package/dist/user-api/rpc-gen/index.d.ts +30 -0
  82. package/dist/user-api/rpc-gen/index.d.ts.map +1 -1
  83. package/dist/user-api/rpc-gen/index.js +10 -0
  84. package/dist/user-api/rpc-gen/typings.d.ts +170 -25
  85. package/dist/user-api/rpc-gen/typings.d.ts.map +1 -1
  86. package/dist/user-api/server.test.js +53 -0
  87. package/dist/utils.d.ts +19 -5
  88. package/dist/utils.d.ts.map +1 -1
  89. package/dist/utils.js +53 -2
  90. package/dist/utils.test.d.ts +2 -0
  91. package/dist/utils.test.d.ts.map +1 -0
  92. package/dist/utils.test.js +24 -0
  93. package/dist/web/frontend/404/index.html +2 -2
  94. package/dist/web/frontend/activities/index.html +3 -3
  95. package/dist/web/frontend/approve/index.html +4 -5
  96. package/dist/web/frontend/assets/404-MVLWUPwN.js +5 -0
  97. package/dist/web/frontend/assets/activities-DaWkmGqA.js +61 -0
  98. package/dist/web/frontend/assets/addIdentityProvider--rBb0ihb.js +28 -0
  99. package/dist/web/frontend/assets/addNetwork-C6UDsRkU.js +38 -0
  100. package/dist/web/frontend/assets/addParty-B3fFD1eM.js +45 -0
  101. package/dist/web/frontend/assets/approve-WbGL4E82.js +21 -0
  102. package/dist/web/frontend/assets/callback--tihEryB.js +1 -0
  103. package/dist/web/frontend/assets/identityProviders-Dra4qG6t.js +71 -0
  104. package/dist/web/frontend/assets/index-Bm76pXA_.js +91 -0
  105. package/dist/web/frontend/assets/index-D1dC4Cl9.js +4477 -0
  106. package/dist/web/frontend/assets/login-BC8a-kD_.js +10 -0
  107. package/dist/web/frontend/assets/networks-B3ztsogL.js +73 -0
  108. package/dist/web/frontend/assets/reviewIdentityProvider-Co420Dbk.js +43 -0
  109. package/dist/web/frontend/assets/reviewNetwork-B-Sh8pCH.js +43 -0
  110. package/dist/web/frontend/assets/{settings-B1ga2TK0.js → settings-DvyUjqLl.js} +1 -1
  111. package/dist/web/frontend/assets/state-Bq65GwdF.js +1 -0
  112. package/dist/web/frontend/assets/{utils-CT9Hzi7v.js → utils-B2iziW8V.js} +1 -1
  113. package/dist/web/frontend/callback/index.html +2 -2
  114. package/dist/web/frontend/identity-providers/add/index.html +3 -3
  115. package/dist/web/frontend/identity-providers/index.html +3 -3
  116. package/dist/web/frontend/identity-providers/review/index.html +3 -3
  117. package/dist/web/frontend/index.html +1 -1
  118. package/dist/web/frontend/login/index.html +3 -4
  119. package/dist/web/frontend/networks/add/index.html +3 -3
  120. package/dist/web/frontend/networks/index.html +3 -3
  121. package/dist/web/frontend/networks/review/index.html +3 -3
  122. package/dist/web/frontend/parties/add/index.html +5 -5
  123. package/dist/web/frontend/parties/index.html +4 -4
  124. package/dist/web/frontend/settings/index.html +3 -3
  125. package/package.json +40 -33
  126. package/dist/web/frontend/assets/404-B-o9ppJB.js +0 -5
  127. package/dist/web/frontend/assets/activities-CGjCIjUH.js +0 -61
  128. package/dist/web/frontend/assets/addIdentityProvider-CR4Wm9Tl.js +0 -28
  129. package/dist/web/frontend/assets/addNetwork-Dx0-SN4j.js +0 -38
  130. package/dist/web/frontend/assets/addParty-COhk_rFn.js +0 -41
  131. package/dist/web/frontend/assets/approve-B2w66l0J.js +0 -21
  132. package/dist/web/frontend/assets/callback-BTVon_yQ.js +0 -1
  133. package/dist/web/frontend/assets/identityProviders-CK8zSrd3.js +0 -71
  134. package/dist/web/frontend/assets/index-CF4BKzgl.js +0 -91
  135. package/dist/web/frontend/assets/index-DWz_3f3y.js +0 -1
  136. package/dist/web/frontend/assets/index-_pMHlJoE.js +0 -4042
  137. package/dist/web/frontend/assets/login-CVoPNVDw.js +0 -10
  138. package/dist/web/frontend/assets/networks-D1nPvUzM.js +0 -73
  139. package/dist/web/frontend/assets/reviewIdentityProvider-CNSf2qQv.js +0 -43
  140. package/dist/web/frontend/assets/reviewNetwork-DGLK-Ume.js +0 -43
  141. package/dist/web/frontend/assets/state-B2k3ak7d.js +0 -1
@@ -1,10 +0,0 @@
1
- import{c as z,e as w,g as R,r as Z,T as j,j as ee,b as F,f as te,t as ne}from"./index-_pMHlJoE.js";import{r as S}from"./state-B2k3ak7d.js";import{A as se}from"./index-DWz_3f3y.js";var ie=Object.create,O=Object.defineProperty,oe=Object.getOwnPropertyDescriptor,G=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),f=t=>{throw TypeError(t)},re=(t,e,n)=>e in t?O(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,W=(t,e)=>O(t,"name",{value:e,configurable:!0}),ae=t=>[,,,ie(t?.[G("metadata")]??null)],H=["class","method","getter","setter","accessor","field","value","get","set"],m=t=>t!==void 0&&typeof t!="function"?f("Function expected"):t,ce=(t,e,n,r,i)=>({kind:H[t],name:e,metadata:r,addInitializer:o=>n._?f("Already initialized"):i.push(m(o||null))}),de=(t,e)=>re(e,G("metadata"),t[3]),g=(t,e,n,r)=>{for(var i=0,o=t[e>>1],c=o&&o.length;i<c;i++)e&1?o[i].call(n):r=o[i].call(n,r);return r},I=(t,e,n,r,i,o)=>{var c,d,v,_,k,s=e&7,y=!!(e&8),p=!!(e&16),U=s>3?t.length+1:s?y?1:2:0,D=H[s+5],N=s>3&&(t[U-1]=[]),Y=t[U]||(t[U]=[]),h=s&&(!p&&!y&&(i=i.prototype),s<5&&(s>3||!p)&&oe(s<4?i:{get[n](){return x(this,o)},set[n](l){return q(this,o,l)}},n));s?p&&s<4&&W(o,(s>2?"set ":s>1?"get ":"")+n):W(i,n);for(var M=r.length-1;M>=0;M--)_=ce(s,n,v={},t[3],Y),s&&(_.static=y,_.private=p,k=_.access={has:p?l=>le(i,l):l=>n in l},s^3&&(k.get=p?l=>(s^1?x:he)(l,i,s^4?o:h.get):l=>l[n]),s>2&&(k.set=p?(l,T)=>q(l,i,T,s^4?o:h.set):(l,T)=>l[n]=T)),d=(0,r[M])(s?s<4?p?o:h[D]:s>4?void 0:{get:h.get,set:h.set}:i,_),v._=1,s^4||d===void 0?m(d)&&(s>4?N.unshift(d):s?p?o=d:h[D]=d:i=d):typeof d!="object"||d===null?f("Object expected"):(m(c=d.get)&&(h.get=c),m(c=d.set)&&(h.set=c),m(c=d.init)&&N.unshift(c));return s||de(t,i),h&&O(i,n,h),p?s^4?o:h:i},P=(t,e,n)=>e.has(t)||f("Cannot "+n),le=(t,e)=>Object(e)!==e?f('Cannot use the "in" operator on this value'):t.has(e),x=(t,e,n)=>(P(t,e,"read from private field"),n?n.call(t):e.get(t)),C=(t,e,n)=>e.has(t)?f("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),q=(t,e,n,r)=>(P(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),he=(t,e,n)=>(P(t,e,"access private method"),n),J,V,K,Q,E,X,a,$,b,L,A;const pe=64,B=t=>{const e=String.fromCharCode(...t);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")},ge=async()=>{const t=crypto.getRandomValues(new Uint8Array(pe)),e=B(t),n=await crypto.subtle.digest("SHA-256",new TextEncoder().encode(e));return{verifier:e,challenge:B(new Uint8Array(n))}};X=[ne("user-ui-login")];class u extends(E=te,Q=[S()],K=[S()],V=[S()],J=[S()],E){constructor(){super(...arguments),C(this,$,g(a,8,this,[])),g(a,11,this),C(this,b,g(a,12,this,[])),g(a,15,this),C(this,L,g(a,16,this,!1)),g(a,19,this),C(this,A,g(a,20,this,"Connecting...")),g(a,23,this)}async loadNetworks(){return(await(await z(w.accessToken.get())).request({method:"listNetworks"})).networks}async loadIdps(){return(await(await z(w.accessToken.get())).request({method:"listIdps"})).idps}async connectedCallback(){super.connectedCallback();try{this.networks=await this.loadNetworks(),this.idps=await this.loadIdps()}catch(e){R(e)}}get _loginForm(){return this.renderRoot.querySelector("wg-login-form")}async showLoginError(e){this.connecting=!1,await this.updateComplete,this._loginForm?.setMessage(e,"error")}async handleConnect(e){const{selectedNetwork:n,selectedIdp:r,clientId:i}=e;this.connecting=!0,this.connectingMessage=`Connecting to ${n.name}...`,w.networkId.set(n.id);try{if(r.type==="self_signed"){await this.selfSign({clientId:i,clientSecret:n.auth.clientSecret||"",scope:n.auth.scope,audience:n.auth.audience}),Z();return}if(r.type==="oauth"){if(n.auth.method==="authorization_code"){const o=new URL(j("/callback"),window.location.origin).toString(),c=n.auth,d=await fetch(r.configUrl||"").then(y=>y.json()),v={configUrl:r.configUrl,clientId:c.clientId,audience:c.audience,stateId:crypto.randomUUID()},{verifier:_,challenge:k}=await ge();sessionStorage.setItem(`oauth-pkce-${v.stateId}`,_);const s=new URLSearchParams({response_type:"code",client_id:c.clientId||"",redirect_uri:o,nonce:crypto.randomUUID(),scope:c.scope||"",audience:c.audience||"",state:btoa(JSON.stringify(v)),code_challenge:k,code_challenge_method:"S256"});this.connectingMessage=`Redirecting to ${n.name}...`,setTimeout(()=>{window.location.href=`${d.authorization_endpoint}?${s.toString()}`},250);return}await this.showLoginError("This authentication method is not valid.");return}await this.showLoginError("This authentication type is not supported yet.")}catch(o){this.connecting=!1,R(o),await this.updateComplete,this._loginForm?.setMessage("Unable to connect. Please try again.","error")}}async selfSign(e){const r=await new se({method:"self_signed",issuer:"unsafe-auth",credentials:e},console).getAccessToken(),i=JSON.parse(atob(r.split(".")[1]));w.expirationDate.set(new Date(i.exp*1e3).toISOString()),w.accessToken.set(r);const o=w.networkId.get()||"";ee(r,o)}render(){return this.connecting?F`<wg-loading-state
2
- .text=${this.connectingMessage}
3
- ></wg-loading-state>`:F`
4
- <wg-login-form
5
- .networks=${this.networks}
6
- .idps=${this.idps}
7
- .connecting=${this.connecting}
8
- @login-connect=${this.handleConnect}
9
- ></wg-login-form>
10
- `}}a=ae(E);$=new WeakMap;b=new WeakMap;L=new WeakMap;A=new WeakMap;I(a,4,"networks",Q,u,$);I(a,4,"idps",K,u,b);I(a,4,"connecting",V,u,L);I(a,4,"connectingMessage",J,u,A);u=I(a,0,"LoginUI",X,u);g(a,1,u);
@@ -1,73 +0,0 @@
1
- import{c as X,e as Y,g as Z,M as D,b as g,f as F,i as j,t as ee}from"./index-_pMHlJoE.js";import{r as m}from"./state-B2k3ak7d.js";var te=Object.create,M=Object.defineProperty,se=Object.getOwnPropertyDescriptor,G=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),u=t=>{throw TypeError(t)},ie=(t,e,s)=>e in t?M(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,T=(t,e)=>M(t,"name",{value:e,configurable:!0}),ae=t=>[,,,te(t?.[G("metadata")]??null)],B=["class","method","getter","setter","accessor","field","value","get","set"],k=t=>t!==void 0&&typeof t!="function"?u("Function expected"):t,re=(t,e,s,n,a)=>({kind:B[t],name:e,metadata:n,addInitializer:r=>s._?u("Already initialized"):a.push(k(r||null))}),ne=(t,e)=>ie(e,G("metadata"),t[3]),p=(t,e,s,n)=>{for(var a=0,r=t[e>>1],w=r&&r.length;a<w;a++)e&1?r[a].call(s):n=r[a].call(s,n);return n},f=(t,e,s,n,a,r)=>{var w,d,I,v,b,i=e&7,P=!!(e&8),l=!!(e&16),S=i>3?t.length+1:i?P?1:2:0,R=B[i+5],W=i>3&&(t[S-1]=[]),V=t[S]||(t[S]=[]),h=i&&(!l&&!P&&(a=a.prototype),i<5&&(i>3||!l)&&se(i<4?a:{get[s](){return q(this,r)},set[s](c){return E(this,r,c)}},s));i?l&&i<4&&T(r,(i>2?"set ":i>1?"get ":"")+s):T(a,s);for(var $=n.length-1;$>=0;$--)v=re(i,s,I={},t[3],V),i&&(v.static=P,v.private=l,b=v.access={has:l?c=>oe(a,c):c=>s in c},i^3&&(b.get=l?c=>(i^1?q:ce)(c,a,i^4?r:h.get):c=>c[s]),i>2&&(b.set=l?(c,z)=>E(c,a,z,i^4?r:h.set):(c,z)=>c[s]=z)),d=(0,n[$])(i?i<4?l?r:h[R]:i>4?void 0:{get:h.get,set:h.set}:a,v),I._=1,i^4||d===void 0?k(d)&&(i>4?W.unshift(d):i?l?r=d:h[R]=d:a=d):typeof d!="object"||d===null?u("Object expected"):(k(w=d.get)&&(h.get=w),k(w=d.set)&&(h.set=w),k(w=d.init)&&W.unshift(w));return i||ne(t,a),h&&M(a,s,h),l?i^4?r:h:a},A=(t,e,s)=>e.has(t)||u("Cannot "+s),oe=(t,e)=>Object(e)!==e?u('Cannot use the "in" operator on this value'):t.has(e),q=(t,e,s)=>(A(t,e,"read from private field"),s?s.call(t):e.get(t)),y=(t,e,s)=>e.has(t)?u("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,s),E=(t,e,s,n)=>(A(t,e,"write to private field"),n?n.call(t,s):e.set(t,s),s),ce=(t,e,s)=>(A(t,e,"access private method"),s),H,J,K,L,C,Q,o,N,x,U,O;Q=[ee("user-ui-networks")];class _ extends(C=F,L=[m()],K=[m()],J=[m()],H=[m()],C){constructor(){super(...arguments),y(this,N,p(o,8,this,[])),p(o,11,this),y(this,x,p(o,12,this,[])),p(o,15,this),y(this,U,p(o,16,this,!1)),p(o,19,this),y(this,O,p(o,20,this,1)),p(o,23,this),this.pageSize=3}get pagedNetworks(){const e=(this.currentPage-1)*this.pageSize;return this.networks.slice(e,e+this.pageSize)}async connectedCallback(){super.connectedCallback(),await this.loadData()}async loadData(){try{const e=await X(Y.accessToken.get()),[s,n,a]=await Promise.all([e.request({method:"listNetworks"}),e.request({method:"listSessions"}).catch(()=>({sessions:[]})),e.request({method:"getUser"}).catch(()=>({userId:"",isAdmin:!1}))]);this.networks=s.networks,this.sessions=n.sessions,this.isAdmin=a.isAdmin;const r=Math.max(1,Math.ceil(this.networks.length/this.pageSize));this.currentPage>r&&(this.currentPage=r)}catch(e){Z(e)}}_onReview(e){window.location.href=`${D("/networks/review/")}?id=${encodeURIComponent(e.network.id)}`}_onPageChange(e){this.currentPage=e.page}render(){return g`
2
- <div class="page-header">
3
- <h1 class="h4 fw-semibold mb-0">Networks</h1>
4
-
5
- ${this.isAdmin?g`
6
- <button
7
- class="btn btn-primary btn-sm rounded-pill btn-add"
8
- type="button"
9
- @click=${()=>window.location.href=D("/networks/add/")}
10
- >
11
- <span aria-hidden="true">+</span>
12
- New
13
- </button>
14
- `:""}
15
- </div>
16
-
17
- ${this.networks.length===0?g`<p class="mb-0 text-body-secondary">
18
- No networks configured.
19
- </p>`:g`
20
- <div class="network-list">
21
- ${this.pagedNetworks.map(e=>{const s=this.sessions.find(n=>n.network.id===e.id);return g`
22
- <network-card
23
- .network=${e}
24
- .activeSession=${!!s}
25
- .accessToken=${s?.accessToken??""}
26
- .readonly=${!this.isAdmin}
27
- @network-review=${this._onReview}
28
- ></network-card>
29
- `})}
30
- </div>
31
-
32
- ${this.networks.length>this.pageSize?g`
33
- <div class="pagination-wrap">
34
- <wg-pagination
35
- .total=${this.networks.length}
36
- .pageSize=${this.pageSize}
37
- .page=${this.currentPage}
38
- @page-change=${this._onPageChange}
39
- ></wg-pagination>
40
- </div>
41
- `:""}
42
- `}
43
- `}}o=ae(C);N=new WeakMap;x=new WeakMap;U=new WeakMap;O=new WeakMap;f(o,4,"networks",L,_,N);f(o,4,"sessions",K,_,x);f(o,4,"isAdmin",J,_,U);f(o,4,"currentPage",H,_,O);_=f(o,0,"UserUiNetworks",Q,_);_.styles=[F.styles,j`
44
- :host {
45
- display: block;
46
- max-width: 900px;
47
- margin: 0 auto;
48
- }
49
-
50
- .page-header {
51
- display: flex;
52
- justify-content: space-between;
53
- align-items: center;
54
- gap: var(--wg-space-3);
55
- margin-bottom: var(--wg-space-4);
56
- }
57
-
58
- .network-list {
59
- display: flex;
60
- flex-direction: column;
61
- gap: var(--wg-space-4);
62
- }
63
-
64
- .pagination-wrap {
65
- margin-top: var(--wg-space-8);
66
- display: flex;
67
- justify-content: center;
68
- }
69
-
70
- .btn-add {
71
- padding: 0.45rem 1.1rem;
72
- }
73
- `];p(o,1,_);
@@ -1,43 +0,0 @@
1
- import{c as I,e as S,g,T as V,M as D,b as R,q as X,W as Y,f as L,i as Z,t as j}from"./index-_pMHlJoE.js";import{r as W}from"./state-B2k3ak7d.js";var ee=Object.create,U=Object.defineProperty,te=Object.getOwnPropertyDescriptor,G=(e,t)=>(t=Symbol[e])?t:Symbol.for("Symbol."+e),_=e=>{throw TypeError(e)},ie=(e,t,i)=>t in e?U(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,q=(e,t)=>U(e,"name",{value:t,configurable:!0}),ae=e=>[,,,ee(e?.[G("metadata")]??null)],N=["class","method","getter","setter","accessor","field","value","get","set"],f=e=>e!==void 0&&typeof e!="function"?_("Function expected"):e,re=(e,t,i,n,r)=>({kind:N[e],name:t,metadata:n,addInitializer:s=>i._?_("Already initialized"):r.push(f(s||null))}),se=(e,t)=>ie(t,G("metadata"),e[3]),w=(e,t,i,n)=>{for(var r=0,s=e[t>>1],p=s&&s.length;r<p;r++)t&1?s[r].call(i):n=s[r].call(i,n);return n},$=(e,t,i,n,r,s)=>{var p,d,O,u,m,a=t&7,y=!!(t&8),l=!!(t&16),k=a>3?e.length+1:a?y?1:2:0,T=N[a+5],z=a>3&&(e[k-1]=[]),Q=e[k]||(e[k]=[]),c=a&&(!l&&!y&&(r=r.prototype),a<5&&(a>3||!l)&&te(a<4?r:{get[i](){return E(this,s)},set[i](o){return F(this,s,o)}},i));a?l&&a<4&&q(s,(a>2?"set ":a>1?"get ":"")+i):q(r,i);for(var b=n.length-1;b>=0;b--)u=re(a,i,O={},e[3],Q),a&&(u.static=y,u.private=l,m=u.access={has:l?o=>ne(r,o):o=>i in o},a^3&&(m.get=l?o=>(a^1?E:oe)(o,r,a^4?s:c.get):o=>o[i]),a>2&&(m.set=l?(o,C)=>F(o,r,C,a^4?s:c.set):(o,C)=>o[i]=C)),d=(0,n[b])(a?a<4?l?s:c[T]:a>4?void 0:{get:c.get,set:c.set}:r,u),O._=1,a^4||d===void 0?f(d)&&(a>4?z.unshift(d):a?l?s=d:c[T]=d:r=d):typeof d!="object"||d===null?_("Object expected"):(f(p=d.get)&&(c.get=p),f(p=d.set)&&(c.set=p),f(p=d.init)&&z.unshift(p));return a||se(e,r),c&&U(r,i,c),l?a^4?s:c:r},x=(e,t,i)=>t.has(e)||_("Cannot "+i),ne=(e,t)=>Object(t)!==t?_('Cannot use the "in" operator on this value'):e.has(t),E=(e,t,i)=>(x(e,t,"read from private field"),i?i.call(e):t.get(e)),A=(e,t,i)=>t.has(e)?_("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i),F=(e,t,i,n)=>(x(e,t,"write to private field"),n?n.call(e,i):t.set(e,i),i),oe=(e,t,i)=>(x(e,t,"access private method"),i),H,J,P,K,v,B,M;K=[j("user-ui-review-idp")];class h extends(P=L,J=[W()],H=[W()],P){constructor(){super(...arguments),A(this,B,w(v,8,this,null)),w(v,11,this),A(this,M,w(v,12,this,!0)),w(v,15,this)}async connectedCallback(){super.connectedCallback(),await this.loadIdp()}async loadIdp(){const i=new URLSearchParams(window.location.search).get("id");if(!i){this.navigateBack();return}try{const s=(await(await I(S.accessToken.get())).request({method:"listIdps"})).idps.find(p=>p.id===i);if(!s){g(new Error(`Identity provider "${i}" not found`)),this.navigateBack();return}this.idp=s}catch(n){g(n),this.navigateBack()}finally{this.loading=!1}}navigateBack(){window.location.href=V("/identity-providers")}async onSave(t){try{await(await I(S.accessToken.get())).request({method:"addIdp",params:{idp:t.idp}}),window.location.href=D("/identity-providers/")}catch(i){g(i)}}async onDelete(t){if(confirm(`Delete identity provider "${t.idp.id}"?`))try{await(await I(S.accessToken.get())).request({method:"removeIdp",params:{identityProviderId:t.idp.id}}),window.location.href=D("/identity-providers/")}catch(i){g(i)}}onCancel(){this.navigateBack()}render(){return this.loading?R`<p class="mb-0 text-body-secondary">
2
- Loading identity provider...
3
- </p>`:this.idp?R`
4
- <div class="page-header">
5
- <h1 class="h4 fw-semibold mb-0">Review Identity Provider</h1>
6
- <button
7
- class="btn btn-link btn-sm text-body text-decoration-none p-0 d-inline-flex align-items-center gap-1"
8
- type="button"
9
- @click=${this.navigateBack}
10
- >
11
- ${Y}
12
- <span>Back</span>
13
- </button>
14
- </div>
15
-
16
- <div class="form-wrap">
17
- <idp-form
18
- mode="review"
19
- .idp=${this.idp}
20
- @idp-form-save=${this.onSave}
21
- @idp-form-cancel=${this.onCancel}
22
- @idp-form-delete=${this.onDelete}
23
- ></idp-form>
24
- </div>
25
- `:X}}v=ae(P);B=new WeakMap;M=new WeakMap;$(v,4,"idp",J,h,B);$(v,4,"loading",H,h,M);h=$(v,0,"UserUiReviewIdp",K,h);h.styles=[L.styles,Z`
26
- :host {
27
- display: block;
28
- max-width: 900px;
29
- margin: 0 auto;
30
- }
31
-
32
- .page-header {
33
- display: flex;
34
- align-items: center;
35
- justify-content: space-between;
36
- margin-bottom: var(--wg-space-4);
37
- gap: var(--wg-space-3);
38
- }
39
-
40
- .form-wrap {
41
- width: 100%;
42
- }
43
- `];w(v,1,h);
@@ -1,43 +0,0 @@
1
- import{c as A,e as S,g as f,T as V,M as O,b as T,q as X,W as Y,f as F,i as Z,t as j}from"./index-_pMHlJoE.js";import{r as D}from"./state-B2k3ak7d.js";var ee=Object.create,N=Object.defineProperty,te=Object.getOwnPropertyDescriptor,L=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),k=t=>{throw TypeError(t)},re=(t,e,r)=>e in t?N(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,R=(t,e)=>N(t,"name",{value:e,configurable:!0}),ne=t=>[,,,ee(t?.[L("metadata")]??null)],G=["class","method","getter","setter","accessor","field","value","get","set"],u=t=>t!==void 0&&typeof t!="function"?k("Function expected"):t,ie=(t,e,r,o,i)=>({kind:G[t],name:e,metadata:o,addInitializer:a=>r._?k("Already initialized"):i.push(u(a||null))}),ae=(t,e)=>re(e,L("metadata"),t[3]),_=(t,e,r,o)=>{for(var i=0,a=t[e>>1],l=a&&a.length;i<l;i++)e&1?a[i].call(r):o=a[i].call(r,o);return o},U=(t,e,r,o,i,a)=>{var l,c,x,v,m,n=e&7,g=!!(e&8),w=!!(e&16),y=n>3?t.length+1:n?g?1:2:0,B=G[n+5],M=n>3&&(t[y-1]=[]),Q=t[y]||(t[y]=[]),d=n&&(!w&&!g&&(i=i.prototype),n<5&&(n>3||!w)&&te(n<4?i:{get[r](){return W(this,a)},set[r](s){return E(this,a,s)}},r));n?w&&n<4&&R(a,(n>2?"set ":n>1?"get ":"")+r):R(i,r);for(var b=o.length-1;b>=0;b--)v=ie(n,r,x={},t[3],Q),n&&(v.static=g,v.private=w,m=v.access={has:w?s=>oe(i,s):s=>r in s},n^3&&(m.get=w?s=>(n^1?W:se)(s,i,n^4?a:d.get):s=>s[r]),n>2&&(m.set=w?(s,C)=>E(s,i,C,n^4?a:d.set):(s,C)=>s[r]=C)),c=(0,o[b])(n?n<4?w?a:d[B]:n>4?void 0:{get:d.get,set:d.set}:i,v),x._=1,n^4||c===void 0?u(c)&&(n>4?M.unshift(c):n?w?a=c:d[B]=c:i=c):typeof c!="object"||c===null?k("Object expected"):(u(l=c.get)&&(d.get=l),u(l=c.set)&&(d.set=l),u(l=c.init)&&M.unshift(l));return n||ae(t,i),d&&N(i,r,d),w?n^4?a:d:i},z=(t,e,r)=>e.has(t)||k("Cannot "+r),oe=(t,e)=>Object(e)!==e?k('Cannot use the "in" operator on this value'):t.has(e),W=(t,e,r)=>(z(t,e,"read from private field"),r?r.call(t):e.get(t)),q=(t,e,r)=>e.has(t)?k("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),E=(t,e,r,o)=>(z(t,e,"write to private field"),o?o.call(t,r):e.set(t,r),r),se=(t,e,r)=>(z(t,e,"access private method"),r),H,J,I,K,h,P,$;K=[j("user-ui-review-network")];class p extends(I=F,J=[D()],H=[D()],I){constructor(){super(...arguments),q(this,P,_(h,8,this,null)),_(h,11,this),q(this,$,_(h,12,this,!0)),_(h,15,this)}async connectedCallback(){super.connectedCallback(),await this.loadNetwork()}async loadNetwork(){const r=new URLSearchParams(window.location.search).get("id");if(!r){this.navigateBack();return}try{const a=(await(await A(S.accessToken.get())).request({method:"listNetworks"})).networks.find(l=>l.id===r);if(!a){f(new Error(`Network "${r}" not found`)),this.navigateBack();return}this.network=a}catch(o){f(o),this.navigateBack()}finally{this.loading=!1}}navigateBack(){window.location.href=V("/networks")}toApiAuth(e){return{method:e.method,audience:e.audience??"",scope:e.scope??"",clientId:e.clientId??"",issuer:e.issuer??"",clientSecret:e.clientSecret??""}}async onSave(e){const r=this.toApiAuth(e.network.auth),o=e.network.adminAuth?this.toApiAuth(e.network.adminAuth):{method:"client_credentials",audience:"",scope:"",clientId:"",clientSecret:""};try{await(await A(S.accessToken.get())).request({method:"addNetwork",params:{network:{id:e.network.id,name:e.network.name,description:e.network.description,identityProviderId:e.network.identityProviderId,...e.network.synchronizerId&&{synchronizerId:e.network.synchronizerId},ledgerApi:e.network.ledgerApi.baseUrl,auth:r,adminAuth:o}}}),window.location.href=O("/networks/")}catch(i){f(i)}}async onDelete(e){if(confirm(`Delete network "${e.network.name}"?`))try{await(await A(S.accessToken.get())).request({method:"removeNetwork",params:{networkName:e.network.id}}),window.location.href=O("/networks/")}catch(r){f(r)}}onCancel(){this.navigateBack()}render(){return this.loading?T`<p class="mb-0 text-body-secondary">
2
- Loading network...
3
- </p>`:this.network?T`
4
- <div class="page-header">
5
- <h1 class="h4 fw-semibold mb-0">Review network</h1>
6
- <button
7
- class="btn btn-link btn-sm text-body text-decoration-none p-0 d-inline-flex align-items-center gap-1"
8
- type="button"
9
- @click=${this.navigateBack}
10
- >
11
- ${Y}
12
- <span>Back</span>
13
- </button>
14
- </div>
15
-
16
- <div class="form-wrap">
17
- <network-form
18
- mode="review"
19
- .network=${this.network}
20
- @network-edit-save=${this.onSave}
21
- @network-edit-cancel=${this.onCancel}
22
- @network-delete=${this.onDelete}
23
- ></network-form>
24
- </div>
25
- `:X}}h=ne(I);P=new WeakMap;$=new WeakMap;U(h,4,"network",J,p,P);U(h,4,"loading",H,p,$);p=U(h,0,"UserUiReviewNetwork",K,p);p.styles=[F.styles,Z`
26
- :host {
27
- display: block;
28
- max-width: 900px;
29
- margin: 0 auto;
30
- }
31
-
32
- .page-header {
33
- display: flex;
34
- align-items: center;
35
- justify-content: space-between;
36
- margin-bottom: var(--wg-space-4);
37
- gap: var(--wg-space-3);
38
- }
39
-
40
- .form-wrap {
41
- width: 100%;
42
- }
43
- `];_(h,1,p);
@@ -1 +0,0 @@
1
- import{u,v as l}from"./index-_pMHlJoE.js";const p={attribute:!0,type:String,converter:l,reflect:!1,hasChanged:u},d=(t=p,s,r)=>{const{kind:a,metadata:i}=r;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),a==="setter"&&((t=Object.create(t)).wrapped=!0),n.set(r.name,t),a==="accessor"){const{name:o}=r;return{set(e){const c=s.get.call(this);s.set.call(this,e),this.requestUpdate(o,c,t,!0,e)},init(e){return e!==void 0&&this.C(o,void 0,t,e),e}}}if(a==="setter"){const{name:o}=r;return function(e){const c=this[o];s.call(this,e),this.requestUpdate(o,c,t,!0,e)}}throw Error("Unsupported decorator location: "+a)};function h(t){return(s,r)=>typeof r=="object"?d(t,s,r):((a,i,n)=>{const o=i.hasOwnProperty(n);return i.constructor.createProperty(n,a),o?Object.getOwnPropertyDescriptor(i,n):void 0})(t,s,r)}function b(t){return h({...t,state:!0,attribute:!1})}export{b as r};