@notabene/javascript-sdk 2.10.0-next.4 → 2.11.0-next.2
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/cjs/notabene.cjs +1 -1
- package/dist/cjs/notabene.d.ts +74 -1
- package/dist/cjs/package.json +1 -1
- package/dist/esm/notabene.d.ts +74 -1
- package/dist/esm/notabene.js +18 -18
- package/dist/esm/package.json +1 -1
- package/dist/notabene.d.ts +74 -1
- package/dist/notabene.js +18 -18
- package/docs/README.md +9 -4
- package/docs/_media/TransactionOptions.md +17 -7
- package/docs/_media/getRefreshResult.md +1 -1
- package/docs/ivms/types/enumerations/PayloadVersionCode.md +2 -2
- package/docs/ivms/types/interfaces/PayloadMetadata.md +2 -2
- package/docs/ivms/types/type-aliases/Address.md +1 -1
- package/docs/ivms/types/type-aliases/AddressTypeCode.md +1 -1
- package/docs/ivms/types/type-aliases/Beneficiary.md +1 -1
- package/docs/ivms/types/type-aliases/BeneficiaryVASP.md +1 -1
- package/docs/ivms/types/type-aliases/DateAndPlaceOfBirth.md +1 -1
- package/docs/ivms/types/type-aliases/ISOCountryCode.md +1 -1
- package/docs/ivms/types/type-aliases/ISODate.md +1 -1
- package/docs/ivms/types/type-aliases/IVMS101.md +1 -1
- package/docs/ivms/types/type-aliases/IntermediaryVASP.md +1 -1
- package/docs/ivms/types/type-aliases/LegalPerson.md +1 -1
- package/docs/ivms/types/type-aliases/LegalPersonName.md +1 -1
- package/docs/ivms/types/type-aliases/LegalPersonNameID.md +1 -1
- package/docs/ivms/types/type-aliases/LegalPersonNameTypeCode.md +1 -1
- package/docs/ivms/types/type-aliases/LocalLegalPersonNameID.md +1 -1
- package/docs/ivms/types/type-aliases/LocalNaturalPersonNameID.md +1 -1
- package/docs/ivms/types/type-aliases/NationalIdentification.md +1 -1
- package/docs/ivms/types/type-aliases/NationalIdentifierTypeCode.md +1 -1
- package/docs/ivms/types/type-aliases/NaturalPerson.md +1 -1
- package/docs/ivms/types/type-aliases/NaturalPersonName.md +1 -1
- package/docs/ivms/types/type-aliases/NaturalPersonNameID.md +1 -1
- package/docs/ivms/types/type-aliases/NaturalPersonNameTypeCode.md +1 -1
- package/docs/ivms/types/type-aliases/OriginatingVASP.md +1 -1
- package/docs/ivms/types/type-aliases/Originator.md +1 -1
- package/docs/ivms/types/type-aliases/Person.md +1 -1
- package/docs/ivms/types/type-aliases/TransferPath.md +1 -1
- package/docs/ivms/types/type-aliases/TransliterationMethodCode.md +1 -1
- package/docs/notabene/classes/ConnectionManager.md +5 -5
- package/docs/notabene/classes/EmbeddedComponent.md +17 -17
- package/docs/notabene/classes/default.md +7 -7
- package/docs/notabene/functions/decodeFragmentToObject.md +1 -1
- package/docs/notabene/functions/getRefreshResult.md +1 -1
- package/docs/notabene/interfaces/ConnectionData.md +4 -4
- package/docs/notabene/interfaces/ConnectionMetadata.md +3 -3
- package/docs/notabene/interfaces/ConnectionResponse.md +6 -6
- package/docs/notabene/interfaces/NotabeneConfig.md +5 -5
- package/docs/notabene/type-aliases/ConnectionResult.md +1 -1
- package/docs/notabene/type-aliases/ConnectionStatus.md +1 -1
- package/docs/notabene/type-aliases/MessageCallback.md +1 -1
- package/docs/notabene/type-aliases/TransactionType.md +1 -1
- package/docs/types/README.md +2 -0
- package/docs/types/enumerations/AgentType.md +2 -2
- package/docs/types/enumerations/CMType.md +27 -7
- package/docs/types/enumerations/ErrorIdentifierCode.md +4 -4
- package/docs/types/enumerations/HMType.md +2 -2
- package/docs/types/enumerations/PersonType.md +3 -3
- package/docs/types/enumerations/ProofStatus.md +4 -4
- package/docs/types/enumerations/ProofTypes.md +30 -18
- package/docs/types/enumerations/Status.md +5 -5
- package/docs/types/enumerations/VASPSearchControl.md +2 -2
- package/docs/types/enumerations/ValidationSections.md +4 -4
- package/docs/types/interfaces/Account.md +5 -5
- package/docs/types/interfaces/Agent.md +6 -6
- package/docs/types/interfaces/CallbackOptions.md +2 -2
- package/docs/types/interfaces/ComponentRequest.md +2 -2
- package/docs/types/interfaces/ComponentResponse.md +4 -4
- package/docs/types/interfaces/ConnectionRecord.md +7 -7
- package/docs/types/interfaces/ConnectionRequest.md +3 -3
- package/docs/types/interfaces/Counterparty.md +10 -10
- package/docs/types/interfaces/DeclarationProof.md +6 -6
- package/docs/types/interfaces/Deposit.md +12 -12
- package/docs/types/interfaces/DepositRequest.md +7 -7
- package/docs/types/interfaces/DepositRequestOptions.md +1 -1
- package/docs/types/interfaces/DepositTransaction.md +10 -10
- package/docs/types/interfaces/LegalPerson.md +13 -13
- package/docs/types/interfaces/MicroTransferProof.md +9 -9
- package/docs/types/interfaces/NaturalPerson.md +13 -13
- package/docs/types/interfaces/OwnershipProof.md +4 -4
- package/docs/types/interfaces/RefreshSource.md +2 -2
- package/docs/types/interfaces/Refreshable.md +1 -1
- package/docs/types/interfaces/ScreenshotProof.md +5 -5
- package/docs/types/interfaces/SignatureProof.md +14 -12
- package/docs/types/interfaces/ThresholdOptions.md +3 -3
- package/docs/types/interfaces/Transaction.md +9 -9
- package/docs/types/interfaces/TransactionOptions.md +17 -7
- package/docs/types/interfaces/TransactionResponse.md +9 -9
- package/docs/types/interfaces/VASP.md +19 -9
- package/docs/types/interfaces/Wallet.md +8 -8
- package/docs/types/interfaces/Withdrawal.md +11 -11
- package/docs/types/type-aliases/BlockchainAddress.md +1 -1
- package/docs/types/type-aliases/CAIP10.md +1 -1
- package/docs/types/type-aliases/CAIP19.md +1 -1
- package/docs/types/type-aliases/CAIP2.md +1 -1
- package/docs/types/type-aliases/CAIP220.md +1 -1
- package/docs/types/type-aliases/Cancel.md +1 -1
- package/docs/types/type-aliases/Completed.md +1 -1
- package/docs/types/type-aliases/ComponentMessage.md +5 -2
- package/docs/types/type-aliases/ConnectionOptions.md +1 -1
- package/docs/types/type-aliases/CounterpartyAssistConfig.md +1 -1
- package/docs/types/type-aliases/CryptoCredential.md +1 -1
- package/docs/types/type-aliases/DID.md +1 -1
- package/docs/types/type-aliases/DTI.md +1 -1
- package/docs/types/type-aliases/Destination.md +1 -1
- package/docs/types/type-aliases/Error.md +1 -1
- package/docs/types/type-aliases/FieldOptions.md +2 -2
- package/docs/types/type-aliases/FieldTypes.md +1 -1
- package/docs/types/type-aliases/HostMessage.md +1 -1
- package/docs/types/type-aliases/ISOCurrency.md +1 -1
- package/docs/types/type-aliases/Info.md +37 -0
- package/docs/types/type-aliases/InvalidValue.md +1 -1
- package/docs/types/type-aliases/LEI.md +1 -1
- package/docs/types/type-aliases/LegalPersonFieldName.md +1 -1
- package/docs/types/type-aliases/LegalPersonFields.md +1 -1
- package/docs/types/type-aliases/NationalIdentifierTypeFieldOptions.md +1 -1
- package/docs/types/type-aliases/NaturalPersonFieldName.md +1 -1
- package/docs/types/type-aliases/NaturalPersonFields.md +1 -1
- package/docs/types/type-aliases/NotabeneAsset.md +1 -1
- package/docs/types/type-aliases/Ready.md +1 -1
- package/docs/types/type-aliases/ResizeRequest.md +1 -1
- package/docs/types/type-aliases/Source.md +1 -1
- package/docs/types/type-aliases/Theme.md +1 -1
- package/docs/types/type-aliases/TransactionAsset.md +1 -1
- package/docs/types/type-aliases/TravelAddress.md +1 -1
- package/docs/types/type-aliases/URI.md +1 -1
- package/docs/types/type-aliases/UUID.md +1 -1
- package/docs/types/type-aliases/UpdateValue.md +1 -1
- package/docs/types/type-aliases/V1Asset.md +1 -1
- package/docs/types/type-aliases/V1Transaction.md +1 -1
- package/docs/types/type-aliases/VASPOptions.md +1 -1
- package/docs/types/type-aliases/ValidationError.md +1 -1
- package/docs/types/type-aliases/Warning.md +37 -0
- package/package.json +1 -1
- package/src/notabene.ts +6 -0
- package/src/types.ts +79 -4
package/dist/cjs/notabene.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var U=Object.defineProperty;var
|
|
1
|
+
"use strict";var U=Object.defineProperty;var O=(t,e,n)=>e in t?U(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var a=(t,e,n)=>O(t,typeof e!="symbol"?e+"":e,n);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var f=(t=>(t.PRIVATE="WALLET",t.VASP="VASP",t))(f||{}),w=(t=>(t.NATURAL="natural",t.LEGAL="legal",t.SELF="self",t))(w||{}),g=(t=>(t.EMPTY="empty",t.VERIFY="verify",t.PENDING="pending",t.VERIFIED="verified",t.BANNED="banned",t))(g||{}),v=(t=>(t.ALLOWED="allowed",t.PENDING="pending",t))(v||{}),A=(t=>(t.ASSET="asset",t.DESTINATION="destination",t.COUNTERPARTY="counterparty",t.AGENT="agent",t))(A||{}),l=(t=>(t.COMPLETE="complete",t.RESIZE="resize",t.RESULT="result",t.READY="ready",t.INVALID="invalid",t.ERROR="error",t.CANCEL="cancel",t.WARNING="warning",t.INFO="info",t))(l||{}),y=(t=>(t.SERVICE_UNAVAILABLE="SERVICE_UNAVAILABLE",t.WALLET_CONNECTION_FAILED="WALLET_CONNECTION_FAILED",t.WALLET_NOT_SUPPORTED="WALLET_NOT_SUPPORTED",t.TOKEN_INVALID="TOKEN_INVALID",t))(y||{}),p=(t=>(t.UPDATE="update",t.REQUEST_RESPONSE="requestResponse",t))(p||{}),C=(t=>(t.PENDING="pending",t.FAILED="rejected",t.FLAGGED="flagged",t.VERIFIED="verified",t))(C||{}),I=(t=>(t.SelfDeclaration="self-declaration",t.SIWE="siwe",t.SIWX="siwx",t.SOL_SIWX="sol-siwx",t.EIP191="eip-191",t.EIP712="eip-712",t.EIP1271="eip-1271",t.BIP137="bip-137",t.BIP322="bip-322",t.BIP137_XPUB="xpub",t.TIP191="tip-191",t.ED25519="ed25519",t.XRP_ED25519="xrp-ed25519",t.XLM_ED25519="xlm-ed25519",t.CIP8="cip-8",t.COSMOS="cosmos-ecdsa",t.MicroTransfer="microtransfer",t.Screenshot="screenshot",t.Connect="connect",t.CONCORDIUM="concordium",t))(I||{});class _{constructor(){a(this,"listeners",new Map);a(this,"port");this.handleMessage=this.handleMessage.bind(this)}setPort(e){this.port=e,this.port.onmessage=this.handleMessage,this.port.start()}on(e,n){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(n),()=>this.off(e,n)}off(e,n){const r=this.listeners.get(e);r&&(r.delete(n),r.size===0&&this.listeners.delete(e))}handleMessage(e){const n=e.data;if(typeof n=="object"&&n!==null&&"type"in n){const r=n.type,s=this.listeners.get(r);s&&s.forEach(i=>i(n))}}send(e){this.port&&this.port.postMessage(e)}}class b{constructor(e,n,r){a(this,"_url");a(this,"_value");a(this,"_options");a(this,"_errors",[]);a(this,"iframe");a(this,"eventManager");a(this,"modal");this._url=e,this._value=n,this._options=r,this.eventManager=new _,this.on(l.INVALID,s=>{s.type===l.INVALID&&(this._errors=s.errors,this._value=s.value)}),this.on(l.RESIZE,s=>{s.type===l.RESIZE&&this.iframe&&(this.iframe.style.height=`${s.height}px`)})}get url(){return this._url}get value(){return this._value}get options(){return this._options}get errors(){return this._errors}open(){document.location.href=this.url}mount(e){const n=document.querySelector(e);if(!n)throw new Error(`parentID ${e} not found`);this.embed(n)}embed(e,n=!1){var r,s;this.removeEmbed(),this.iframe=document.createElement("iframe"),this.iframe.src=this.url+(n?"":"&embedded=true"),this.iframe.allow="web-share; clipboard-write; hid; bluetooth;",this.iframe.style.width="100%",this.iframe.style.height="0px",this.iframe.style.border="none",this.iframe.style.overflow="hidden",this.iframe.scrolling="no",e.appendChild(this.iframe),window.addEventListener("message",i=>{var o,c;i.source===((o=this.iframe)==null?void 0:o.contentWindow)&&((c=this.eventManager)==null||c.setPort(i.ports[0]))}),(s=(r=this.iframe)==null?void 0:r.contentWindow)==null||s.focus()}removeEmbed(){this.iframe&&this.iframe.remove()}send(e){this.eventManager.send(e)}on(e,n){return this.eventManager.on(e,n)}off(e,n){this.eventManager.off(e,n)}update(e,n){this._value=e,n&&(this._options=n),this.send({type:p.UPDATE,value:e,options:this._options})}completion(){return new Promise((e,n)=>{let r,s,i;function o(){r&&r(),s&&s(),i&&i()}r=this.on(l.COMPLETE,c=>{e(c.response),o()}),s=this.on(l.CANCEL,()=>{n(new Error("User cancelled")),o()}),i=this.on("error",c=>{n(new Error(c.message)),o()})})}async openModal(){this.modal&&this.closeModal(),this.modal=document.createElement("dialog"),this.modal.style.border="none",this.modal.style.backgroundColor="white",this.modal.style.maxWidth="100vw",this.modal.style.maxHeight="100vh",this.modal.style.width="600px",this.modal.style.height="600px",document.body.appendChild(this.modal),this.embed(this.modal,!0);const e=this.on(l.CANCEL,()=>{this.closeModal()}),n=this.on(l.COMPLETE,()=>{this.closeModal()});return this.modal.showModal(),this.modal.addEventListener("click",()=>{this.closeModal()}),this.completion().finally(()=>{e(),n()})}closeModal(){var e;this.modal&&((e=this.modal)==null||e.close(),this.modal.remove(),this.modal=void 0)}async popup(){const e=window.open(this.url,"_blank","popup=true,width=600,height=600");window.addEventListener("message",s=>{var i;s.source===e&&(console.log("received message from popup",s.data),(i=this.eventManager)==null||i.setPort(s.ports[0]))});const n=this.on(l.CANCEL,()=>{e==null||e.close()}),r=this.on(l.COMPLETE,()=>{e==null||e.close()});return this.completion().finally(()=>{n(),r()})}}function R(t){return Object.entries(t).map(([e,n])=>{if(n==null)return;const r=encodeURIComponent(e),s=encodeURIComponent(typeof n=="object"?JSON.stringify(n):String(n));return`${r}=${s}`}).filter(e=>e!==void 0).join("&")}function S(t){const e=t.slice(1);return e?e.split("&").filter(Boolean).reduce((r,s)=>{const[i,o]=s.split("=");return i&&(r[decodeURIComponent(i)]=o?decodeURIComponent(o):""),r},{}):{}}async function E(t,e){const n=JSON.stringify(t),r=new TextEncoder,s=e?m(e):crypto.getRandomValues(new Uint8Array(32)),i=await crypto.subtle.importKey("raw",s,{name:"AES-GCM"},!1,["encrypt"]),o=crypto.getRandomValues(new Uint8Array(12)),c=await crypto.subtle.encrypt({name:"AES-GCM",iv:o},i,r.encode(n));return{ciphertext:`${u(o)}-${u(c)}`,key:u(s)}}async function N({ciphertext:t,key:e}){const[n,r]=t.split("-"),s=new Uint8Array(atob(e).split("").map(L=>L.charCodeAt(0))),i=m(n),o=m(r),c=await crypto.subtle.importKey("raw",s,{name:"AES-GCM"},!1,["decrypt"]),d=new TextDecoder,h=await crypto.subtle.decrypt({name:"AES-GCM",iv:new Uint8Array(i)},c,o);return JSON.parse(d.decode(h))}function u(t){const e=new Uint8Array(t);let n="";for(let r=0;r<e.length;r++)n+=String.fromCharCode(e[r]);return btoa(n)}function m(t){const e=atob(t),n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e.charCodeAt(r);return n}async function x(t){const e=await fetch(t.url,{method:"GET"});if(!e.ok)throw new Error(`Failed to get connection: ${await e.text()}`);const n=await e.json();if(!n.id||!n.metadata||!n.status||!n.sealed)throw new Error("Data missing from server response");const r={id:n.id,metadata:n.metadata,status:n.status};if(n.status==="closed")return r;const s=n.sealed[n.sealed.length-1],i=await N({ciphertext:s,key:t.key});return n.status==="completed"?{...r,result:i.result}:{...r,tx:i.tx}}class D{constructor(e){a(this,"endpoint");this.endpoint=e}async create(e,n){const r=await E(e),s={metadata:n,sealed:r.ciphertext},i=await fetch(this.endpoint,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)});if(!i.ok)throw new Error(`Failed to create connection: ${await i.text()}`);const o=await i.json();return{id:o.id,version:o.version,status:o.status,metadata:n,data:e,key:r.key}}async update(e,n,r,s,i){const o=await E(n,i),c={sealed:o.ciphertext,version:r,status:s},d=await fetch(`${this.endpoint}/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!d.ok)throw new Error(`Failed to update connection: ${await d.text()}`);const h=await d.json();return{id:h.id,metadata:h.metadata,version:h.version,status:h.status,data:n,key:o.key}}async get(e,n){const r=await fetch(`${this.endpoint}/${e}`,{method:"GET"});if(!r.ok)throw new Error(`Failed to get connection: ${await r.text()}`);const s=await r.json(),i=s.sealed[s.sealed.length-1],o=await N({ciphertext:i,key:n});return{id:s.id,status:s.status,version:s.version,metadata:s.metadata,data:o,key:n}}async close(e){const n=await fetch(`${this.endpoint}/${e}`,{method:"DELETE"});if(!n.ok)throw new Error(`Failed to close connection: ${await n.text()}`)}}class M{constructor(e){a(this,"nodeUrl");a(this,"authToken");a(this,"uxUrl");a(this,"theme");a(this,"locale");this.uxUrl=e.uxUrl||"https://connect.notabene.id",this.nodeUrl=e.nodeUrl,this.authToken=e.authToken,this.theme=e.theme,this.locale=e.locale}componentUrl(e,n,r,s){const i=new URL(this.uxUrl);i.pathname=e;const o=R({authToken:this.authToken,value:n,configuration:r});return i.hash=o,this.nodeUrl&&i.searchParams.set("nodeUrl",this.nodeUrl),this.theme&&i.searchParams.set("theme",JSON.stringify(this.theme)),this.locale&&i.searchParams.set("locale",this.locale),s&&(s.callback&&i.searchParams.set("callback_url",s.callback),s.redirectUri&&i.searchParams.set("redirect_uri",s.redirectUri)),i.toString()}createComponent(e,n,r,s){return new b(this.componentUrl(e,n,r,s),n,r)}createWithdrawalAssist(e,n,r){return this.createComponent("withdrawal-assist",e,n,r)}createConnectWallet(e,n,r){return this.createComponent("connect",e,n,r)}createDepositRequest(e,n,r){return this.createComponent("deposit-request",e,n,r)}createDepositAssist(e,n,r){return this.createComponent("deposit-assist",e,n,r)}}exports.AgentType=f;exports.CMType=l;exports.ConnectionManager=D;exports.EmbeddedComponent=b;exports.ErrorIdentifierCode=y;exports.HMType=p;exports.PersonType=w;exports.ProofStatus=C;exports.ProofTypes=I;exports.Status=g;exports.VASPSearchControl=v;exports.ValidationSections=A;exports.decodeFragmentToObject=S;exports.default=M;exports.getRefreshResult=x;
|
package/dist/cjs/notabene.d.ts
CHANGED
|
@@ -403,6 +403,19 @@ export declare type ConnectionResult<T extends ComponentRequest> = {
|
|
|
403
403
|
|
|
404
404
|
export declare type ConnectionStatus = 'active' | 'completed' | 'closed';
|
|
405
405
|
|
|
406
|
+
/**
|
|
407
|
+
* Metadata for Cosmos ownership proofs
|
|
408
|
+
* @remarks
|
|
409
|
+
* - Includes the public key
|
|
410
|
+
* @public
|
|
411
|
+
*/
|
|
412
|
+
export declare interface CosmosMetadata {
|
|
413
|
+
pub_key: {
|
|
414
|
+
type: string;
|
|
415
|
+
value: string;
|
|
416
|
+
};
|
|
417
|
+
}
|
|
418
|
+
|
|
406
419
|
/**
|
|
407
420
|
* The counterparty of a transaction.
|
|
408
421
|
* @public
|
|
@@ -1377,6 +1390,8 @@ export declare enum ProofStatus {
|
|
|
1377
1390
|
* - SelfDeclaration: User self-declares ownership without cryptographic proof
|
|
1378
1391
|
* - EIP191: Ethereum personal signature following EIP-191 standard
|
|
1379
1392
|
* - SIWE: Sign-In with Ethereum message signature (EIP-4361)
|
|
1393
|
+
* - SIWX: Sign-In with X message signature
|
|
1394
|
+
* - SOL_SIWX: Sign-In with Solana message signature (SIWE for Solana)
|
|
1380
1395
|
* - EIP712: Ethereum typed data signature following EIP-712 standard
|
|
1381
1396
|
* - BIP137: Bitcoin message signature following BIP-137
|
|
1382
1397
|
* - BIP322: Bitcoin message signature following BIP-322
|
|
@@ -1399,6 +1414,7 @@ export declare enum ProofTypes {
|
|
|
1399
1414
|
SelfDeclaration = "self-declaration",
|
|
1400
1415
|
SIWE = "siwe",
|
|
1401
1416
|
SIWX = "siwx",
|
|
1417
|
+
SOL_SIWX = "sol-siwx",
|
|
1402
1418
|
EIP191 = "eip-191",
|
|
1403
1419
|
EIP712 = "eip-712",
|
|
1404
1420
|
EIP1271 = "eip-1271",
|
|
@@ -1410,6 +1426,7 @@ export declare enum ProofTypes {
|
|
|
1410
1426
|
XRP_ED25519 = "xrp-ed25519",
|
|
1411
1427
|
XLM_ED25519 = "xlm-ed25519",
|
|
1412
1428
|
CIP8 = "cip-8",
|
|
1429
|
+
COSMOS = "cosmos-ecdsa",
|
|
1413
1430
|
MicroTransfer = "microtransfer",
|
|
1414
1431
|
Screenshot = "screenshot",
|
|
1415
1432
|
Connect = "connect",
|
|
@@ -1471,14 +1488,70 @@ export declare interface ScreenshotProof extends OwnershipProof {
|
|
|
1471
1488
|
* @public
|
|
1472
1489
|
*/
|
|
1473
1490
|
export declare interface SignatureProof extends OwnershipProof {
|
|
1474
|
-
type: ProofTypes.EIP191 | ProofTypes.EIP712 | ProofTypes.EIP1271 | ProofTypes.BIP137 | ProofTypes.BIP322 | ProofTypes.BIP137_XPUB | ProofTypes.ED25519 | ProofTypes.TIP191 | ProofTypes.SIWX | ProofTypes.SIWE | ProofTypes.CIP8 | ProofTypes.XRP_ED25519 | ProofTypes.CONCORDIUM | ProofTypes.XLM_ED25519;
|
|
1491
|
+
type: ProofTypes.EIP191 | ProofTypes.EIP712 | ProofTypes.EIP1271 | ProofTypes.BIP137 | ProofTypes.BIP322 | ProofTypes.BIP137_XPUB | ProofTypes.ED25519 | ProofTypes.TIP191 | ProofTypes.SIWX | ProofTypes.SOL_SIWX | ProofTypes.SIWE | ProofTypes.CIP8 | ProofTypes.XRP_ED25519 | ProofTypes.CONCORDIUM | ProofTypes.XLM_ED25519 | ProofTypes.COSMOS;
|
|
1475
1492
|
proof: string;
|
|
1476
1493
|
attestation: string;
|
|
1477
1494
|
wallet_provider: string;
|
|
1478
1495
|
xpub?: string;
|
|
1479
1496
|
chainSpecificData?: {
|
|
1480
1497
|
cardanoCoseKey?: string;
|
|
1498
|
+
} | SolanaMetadata | CosmosMetadata;
|
|
1499
|
+
}
|
|
1500
|
+
|
|
1501
|
+
/**
|
|
1502
|
+
* Input for SIWX message signing
|
|
1503
|
+
* Every SIWX message must include the following fields:
|
|
1504
|
+
* - domain
|
|
1505
|
+
* - address
|
|
1506
|
+
* - statement
|
|
1507
|
+
* - uri
|
|
1508
|
+
* - version
|
|
1509
|
+
* - chainId
|
|
1510
|
+
*
|
|
1511
|
+
* Optional fields:
|
|
1512
|
+
* - nonce
|
|
1513
|
+
* - issuedAt
|
|
1514
|
+
* - expirationTime
|
|
1515
|
+
* - notBefore
|
|
1516
|
+
* - requestId
|
|
1517
|
+
* - resources
|
|
1518
|
+
*
|
|
1519
|
+
* @public
|
|
1520
|
+
*/
|
|
1521
|
+
export declare interface SIWXInput {
|
|
1522
|
+
domain: string;
|
|
1523
|
+
address: string;
|
|
1524
|
+
statement?: string;
|
|
1525
|
+
uri?: string;
|
|
1526
|
+
version?: string;
|
|
1527
|
+
chainId?: string;
|
|
1528
|
+
nonce?: string;
|
|
1529
|
+
issuedAt?: string;
|
|
1530
|
+
expirationTime?: string;
|
|
1531
|
+
notBefore?: string;
|
|
1532
|
+
requestId?: string;
|
|
1533
|
+
resources?: readonly string[];
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
/**
|
|
1537
|
+
* Metadata for Solana SIWX ownership proofs
|
|
1538
|
+
* @remarks
|
|
1539
|
+
* - Includes the account public key and address
|
|
1540
|
+
* - Includes the signed message
|
|
1541
|
+
* - Includes the signature
|
|
1542
|
+
* - Includes the message
|
|
1543
|
+
*
|
|
1544
|
+
* @see {@link SignatureProof} For signature-based proofs
|
|
1545
|
+
* @public
|
|
1546
|
+
*/
|
|
1547
|
+
export declare interface SolanaMetadata {
|
|
1548
|
+
account: {
|
|
1549
|
+
address: string;
|
|
1550
|
+
publicKey: Uint8Array;
|
|
1481
1551
|
};
|
|
1552
|
+
signedMessage: Uint8Array;
|
|
1553
|
+
signature: Uint8Array;
|
|
1554
|
+
message: SIWXInput;
|
|
1482
1555
|
}
|
|
1483
1556
|
|
|
1484
1557
|
/**
|
package/dist/cjs/package.json
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"author": "Notabene <developers@notabene.id>",
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"packageManager": "yarn@4.5.1",
|
|
13
|
-
"version": "2.
|
|
13
|
+
"version": "2.11.0-next.2",
|
|
14
14
|
"source": "src/notabene.ts",
|
|
15
15
|
"main": "dist/cjs/notabene.cjs",
|
|
16
16
|
"module": "dist/esm/notabene.js",
|
package/dist/esm/notabene.d.ts
CHANGED
|
@@ -403,6 +403,19 @@ export declare type ConnectionResult<T extends ComponentRequest> = {
|
|
|
403
403
|
|
|
404
404
|
export declare type ConnectionStatus = 'active' | 'completed' | 'closed';
|
|
405
405
|
|
|
406
|
+
/**
|
|
407
|
+
* Metadata for Cosmos ownership proofs
|
|
408
|
+
* @remarks
|
|
409
|
+
* - Includes the public key
|
|
410
|
+
* @public
|
|
411
|
+
*/
|
|
412
|
+
export declare interface CosmosMetadata {
|
|
413
|
+
pub_key: {
|
|
414
|
+
type: string;
|
|
415
|
+
value: string;
|
|
416
|
+
};
|
|
417
|
+
}
|
|
418
|
+
|
|
406
419
|
/**
|
|
407
420
|
* The counterparty of a transaction.
|
|
408
421
|
* @public
|
|
@@ -1377,6 +1390,8 @@ export declare enum ProofStatus {
|
|
|
1377
1390
|
* - SelfDeclaration: User self-declares ownership without cryptographic proof
|
|
1378
1391
|
* - EIP191: Ethereum personal signature following EIP-191 standard
|
|
1379
1392
|
* - SIWE: Sign-In with Ethereum message signature (EIP-4361)
|
|
1393
|
+
* - SIWX: Sign-In with X message signature
|
|
1394
|
+
* - SOL_SIWX: Sign-In with Solana message signature (SIWE for Solana)
|
|
1380
1395
|
* - EIP712: Ethereum typed data signature following EIP-712 standard
|
|
1381
1396
|
* - BIP137: Bitcoin message signature following BIP-137
|
|
1382
1397
|
* - BIP322: Bitcoin message signature following BIP-322
|
|
@@ -1399,6 +1414,7 @@ export declare enum ProofTypes {
|
|
|
1399
1414
|
SelfDeclaration = "self-declaration",
|
|
1400
1415
|
SIWE = "siwe",
|
|
1401
1416
|
SIWX = "siwx",
|
|
1417
|
+
SOL_SIWX = "sol-siwx",
|
|
1402
1418
|
EIP191 = "eip-191",
|
|
1403
1419
|
EIP712 = "eip-712",
|
|
1404
1420
|
EIP1271 = "eip-1271",
|
|
@@ -1410,6 +1426,7 @@ export declare enum ProofTypes {
|
|
|
1410
1426
|
XRP_ED25519 = "xrp-ed25519",
|
|
1411
1427
|
XLM_ED25519 = "xlm-ed25519",
|
|
1412
1428
|
CIP8 = "cip-8",
|
|
1429
|
+
COSMOS = "cosmos-ecdsa",
|
|
1413
1430
|
MicroTransfer = "microtransfer",
|
|
1414
1431
|
Screenshot = "screenshot",
|
|
1415
1432
|
Connect = "connect",
|
|
@@ -1471,14 +1488,70 @@ export declare interface ScreenshotProof extends OwnershipProof {
|
|
|
1471
1488
|
* @public
|
|
1472
1489
|
*/
|
|
1473
1490
|
export declare interface SignatureProof extends OwnershipProof {
|
|
1474
|
-
type: ProofTypes.EIP191 | ProofTypes.EIP712 | ProofTypes.EIP1271 | ProofTypes.BIP137 | ProofTypes.BIP322 | ProofTypes.BIP137_XPUB | ProofTypes.ED25519 | ProofTypes.TIP191 | ProofTypes.SIWX | ProofTypes.SIWE | ProofTypes.CIP8 | ProofTypes.XRP_ED25519 | ProofTypes.CONCORDIUM | ProofTypes.XLM_ED25519;
|
|
1491
|
+
type: ProofTypes.EIP191 | ProofTypes.EIP712 | ProofTypes.EIP1271 | ProofTypes.BIP137 | ProofTypes.BIP322 | ProofTypes.BIP137_XPUB | ProofTypes.ED25519 | ProofTypes.TIP191 | ProofTypes.SIWX | ProofTypes.SOL_SIWX | ProofTypes.SIWE | ProofTypes.CIP8 | ProofTypes.XRP_ED25519 | ProofTypes.CONCORDIUM | ProofTypes.XLM_ED25519 | ProofTypes.COSMOS;
|
|
1475
1492
|
proof: string;
|
|
1476
1493
|
attestation: string;
|
|
1477
1494
|
wallet_provider: string;
|
|
1478
1495
|
xpub?: string;
|
|
1479
1496
|
chainSpecificData?: {
|
|
1480
1497
|
cardanoCoseKey?: string;
|
|
1498
|
+
} | SolanaMetadata | CosmosMetadata;
|
|
1499
|
+
}
|
|
1500
|
+
|
|
1501
|
+
/**
|
|
1502
|
+
* Input for SIWX message signing
|
|
1503
|
+
* Every SIWX message must include the following fields:
|
|
1504
|
+
* - domain
|
|
1505
|
+
* - address
|
|
1506
|
+
* - statement
|
|
1507
|
+
* - uri
|
|
1508
|
+
* - version
|
|
1509
|
+
* - chainId
|
|
1510
|
+
*
|
|
1511
|
+
* Optional fields:
|
|
1512
|
+
* - nonce
|
|
1513
|
+
* - issuedAt
|
|
1514
|
+
* - expirationTime
|
|
1515
|
+
* - notBefore
|
|
1516
|
+
* - requestId
|
|
1517
|
+
* - resources
|
|
1518
|
+
*
|
|
1519
|
+
* @public
|
|
1520
|
+
*/
|
|
1521
|
+
export declare interface SIWXInput {
|
|
1522
|
+
domain: string;
|
|
1523
|
+
address: string;
|
|
1524
|
+
statement?: string;
|
|
1525
|
+
uri?: string;
|
|
1526
|
+
version?: string;
|
|
1527
|
+
chainId?: string;
|
|
1528
|
+
nonce?: string;
|
|
1529
|
+
issuedAt?: string;
|
|
1530
|
+
expirationTime?: string;
|
|
1531
|
+
notBefore?: string;
|
|
1532
|
+
requestId?: string;
|
|
1533
|
+
resources?: readonly string[];
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
/**
|
|
1537
|
+
* Metadata for Solana SIWX ownership proofs
|
|
1538
|
+
* @remarks
|
|
1539
|
+
* - Includes the account public key and address
|
|
1540
|
+
* - Includes the signed message
|
|
1541
|
+
* - Includes the signature
|
|
1542
|
+
* - Includes the message
|
|
1543
|
+
*
|
|
1544
|
+
* @see {@link SignatureProof} For signature-based proofs
|
|
1545
|
+
* @public
|
|
1546
|
+
*/
|
|
1547
|
+
export declare interface SolanaMetadata {
|
|
1548
|
+
account: {
|
|
1549
|
+
address: string;
|
|
1550
|
+
publicKey: Uint8Array;
|
|
1481
1551
|
};
|
|
1552
|
+
signedMessage: Uint8Array;
|
|
1553
|
+
signature: Uint8Array;
|
|
1554
|
+
message: SIWXInput;
|
|
1482
1555
|
}
|
|
1483
1556
|
|
|
1484
1557
|
/**
|
package/dist/esm/notabene.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var v = Object.defineProperty;
|
|
2
2
|
var g = (t, e, n) => e in t ? v(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
3
|
var a = (t, e, n) => g(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
|
-
var A = /* @__PURE__ */ ((t) => (t.PRIVATE = "WALLET", t.VASP = "VASP", t))(A || {}),
|
|
5
|
-
class
|
|
4
|
+
var A = /* @__PURE__ */ ((t) => (t.PRIVATE = "WALLET", t.VASP = "VASP", t))(A || {}), I = /* @__PURE__ */ ((t) => (t.NATURAL = "natural", t.LEGAL = "legal", t.SELF = "self", t))(I || {}), y = /* @__PURE__ */ ((t) => (t.EMPTY = "empty", t.VERIFY = "verify", t.PENDING = "pending", t.VERIFIED = "verified", t.BANNED = "banned", t))(y || {}), N = /* @__PURE__ */ ((t) => (t.ALLOWED = "allowed", t.PENDING = "pending", t))(N || {}), L = /* @__PURE__ */ ((t) => (t.ASSET = "asset", t.DESTINATION = "destination", t.COUNTERPARTY = "counterparty", t.AGENT = "agent", t))(L || {}), l = /* @__PURE__ */ ((t) => (t.COMPLETE = "complete", t.RESIZE = "resize", t.RESULT = "result", t.READY = "ready", t.INVALID = "invalid", t.ERROR = "error", t.CANCEL = "cancel", t.WARNING = "warning", t.INFO = "info", t))(l || {}), C = /* @__PURE__ */ ((t) => (t.SERVICE_UNAVAILABLE = "SERVICE_UNAVAILABLE", t.WALLET_CONNECTION_FAILED = "WALLET_CONNECTION_FAILED", t.WALLET_NOT_SUPPORTED = "WALLET_NOT_SUPPORTED", t.TOKEN_INVALID = "TOKEN_INVALID", t))(C || {}), p = /* @__PURE__ */ ((t) => (t.UPDATE = "update", t.REQUEST_RESPONSE = "requestResponse", t))(p || {}), b = /* @__PURE__ */ ((t) => (t.PENDING = "pending", t.FAILED = "rejected", t.FLAGGED = "flagged", t.VERIFIED = "verified", t))(b || {}), U = /* @__PURE__ */ ((t) => (t.SelfDeclaration = "self-declaration", t.SIWE = "siwe", t.SIWX = "siwx", t.SOL_SIWX = "sol-siwx", t.EIP191 = "eip-191", t.EIP712 = "eip-712", t.EIP1271 = "eip-1271", t.BIP137 = "bip-137", t.BIP322 = "bip-322", t.BIP137_XPUB = "xpub", t.TIP191 = "tip-191", t.ED25519 = "ed25519", t.XRP_ED25519 = "xrp-ed25519", t.XLM_ED25519 = "xlm-ed25519", t.CIP8 = "cip-8", t.COSMOS = "cosmos-ecdsa", t.MicroTransfer = "microtransfer", t.Screenshot = "screenshot", t.Connect = "connect", t.CONCORDIUM = "concordium", t))(U || {});
|
|
5
|
+
class O {
|
|
6
6
|
constructor() {
|
|
7
7
|
a(this, "listeners", /* @__PURE__ */ new Map());
|
|
8
8
|
a(this, "port");
|
|
@@ -82,7 +82,7 @@ class _ {
|
|
|
82
82
|
a(this, "iframe");
|
|
83
83
|
a(this, "eventManager");
|
|
84
84
|
a(this, "modal");
|
|
85
|
-
this._url = e, this._value = n, this._options = s, this.eventManager = new
|
|
85
|
+
this._url = e, this._value = n, this._options = s, this.eventManager = new O(), this.on(l.INVALID, (r) => {
|
|
86
86
|
r.type === l.INVALID && (this._errors = r.errors, this._value = r.value);
|
|
87
87
|
}), this.on(l.RESIZE, (r) => {
|
|
88
88
|
r.type === l.RESIZE && this.iframe && (this.iframe.style.height = `${r.height}px`);
|
|
@@ -166,7 +166,7 @@ class _ {
|
|
|
166
166
|
* @param value - The new transaction value
|
|
167
167
|
*/
|
|
168
168
|
update(e, n) {
|
|
169
|
-
this._value = e, n && (this._options = n), this.send({ type:
|
|
169
|
+
this._value = e, n && (this._options = n), this.send({ type: p.UPDATE, value: e, options: this._options });
|
|
170
170
|
}
|
|
171
171
|
/**
|
|
172
172
|
* Waits for the component to complete and returns the transaction response
|
|
@@ -247,7 +247,7 @@ function x(t) {
|
|
|
247
247
|
return `${s}=${r}`;
|
|
248
248
|
}).filter((e) => e !== void 0).join("&");
|
|
249
249
|
}
|
|
250
|
-
function
|
|
250
|
+
function D(t) {
|
|
251
251
|
const e = t.slice(1);
|
|
252
252
|
return e ? e.split("&").filter(Boolean).reduce(
|
|
253
253
|
(s, r) => {
|
|
@@ -257,7 +257,7 @@ function O(t) {
|
|
|
257
257
|
{}
|
|
258
258
|
) : {};
|
|
259
259
|
}
|
|
260
|
-
async function
|
|
260
|
+
async function E(t, e) {
|
|
261
261
|
const n = JSON.stringify(t), s = new TextEncoder(), r = e ? m(e) : crypto.getRandomValues(new Uint8Array(32)), i = await crypto.subtle.importKey(
|
|
262
262
|
"raw",
|
|
263
263
|
r,
|
|
@@ -303,7 +303,7 @@ function m(t) {
|
|
|
303
303
|
n[s] = e.charCodeAt(s);
|
|
304
304
|
return n;
|
|
305
305
|
}
|
|
306
|
-
async function
|
|
306
|
+
async function S(t) {
|
|
307
307
|
const e = await fetch(t.url, {
|
|
308
308
|
method: "GET"
|
|
309
309
|
});
|
|
@@ -331,7 +331,7 @@ async function M(t) {
|
|
|
331
331
|
tx: i.tx
|
|
332
332
|
};
|
|
333
333
|
}
|
|
334
|
-
class
|
|
334
|
+
class M {
|
|
335
335
|
constructor(e) {
|
|
336
336
|
a(this, "endpoint");
|
|
337
337
|
this.endpoint = e;
|
|
@@ -344,7 +344,7 @@ class S {
|
|
|
344
344
|
* @returns Promise resolving to connection details including ID, version, and encryption key
|
|
345
345
|
*/
|
|
346
346
|
async create(e, n) {
|
|
347
|
-
const s = await
|
|
347
|
+
const s = await E(e), r = {
|
|
348
348
|
metadata: n,
|
|
349
349
|
sealed: s.ciphertext
|
|
350
350
|
}, i = await fetch(this.endpoint, {
|
|
@@ -377,7 +377,7 @@ class S {
|
|
|
377
377
|
* @returns Promise resolving to updated connection details including new encryption key
|
|
378
378
|
*/
|
|
379
379
|
async update(e, n, s, r, i) {
|
|
380
|
-
const o = await
|
|
380
|
+
const o = await E(n, i), c = {
|
|
381
381
|
sealed: o.ciphertext,
|
|
382
382
|
version: s,
|
|
383
383
|
status: r
|
|
@@ -561,17 +561,17 @@ class k {
|
|
|
561
561
|
export {
|
|
562
562
|
A as AgentType,
|
|
563
563
|
l as CMType,
|
|
564
|
-
|
|
564
|
+
M as ConnectionManager,
|
|
565
565
|
_ as EmbeddedComponent,
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
566
|
+
C as ErrorIdentifierCode,
|
|
567
|
+
p as HMType,
|
|
568
|
+
I as PersonType,
|
|
569
|
+
b as ProofStatus,
|
|
570
570
|
U as ProofTypes,
|
|
571
|
-
|
|
571
|
+
y as Status,
|
|
572
572
|
N as VASPSearchControl,
|
|
573
573
|
L as ValidationSections,
|
|
574
|
-
|
|
574
|
+
D as decodeFragmentToObject,
|
|
575
575
|
k as default,
|
|
576
|
-
|
|
576
|
+
S as getRefreshResult
|
|
577
577
|
};
|
package/dist/esm/package.json
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"author": "Notabene <developers@notabene.id>",
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"packageManager": "yarn@4.5.1",
|
|
13
|
-
"version": "2.
|
|
13
|
+
"version": "2.11.0-next.2",
|
|
14
14
|
"source": "src/notabene.ts",
|
|
15
15
|
"main": "dist/cjs/notabene.cjs",
|
|
16
16
|
"module": "dist/esm/notabene.js",
|
package/dist/notabene.d.ts
CHANGED
|
@@ -403,6 +403,19 @@ export declare type ConnectionResult<T extends ComponentRequest> = {
|
|
|
403
403
|
|
|
404
404
|
export declare type ConnectionStatus = 'active' | 'completed' | 'closed';
|
|
405
405
|
|
|
406
|
+
/**
|
|
407
|
+
* Metadata for Cosmos ownership proofs
|
|
408
|
+
* @remarks
|
|
409
|
+
* - Includes the public key
|
|
410
|
+
* @public
|
|
411
|
+
*/
|
|
412
|
+
export declare interface CosmosMetadata {
|
|
413
|
+
pub_key: {
|
|
414
|
+
type: string;
|
|
415
|
+
value: string;
|
|
416
|
+
};
|
|
417
|
+
}
|
|
418
|
+
|
|
406
419
|
/**
|
|
407
420
|
* The counterparty of a transaction.
|
|
408
421
|
* @public
|
|
@@ -1377,6 +1390,8 @@ export declare enum ProofStatus {
|
|
|
1377
1390
|
* - SelfDeclaration: User self-declares ownership without cryptographic proof
|
|
1378
1391
|
* - EIP191: Ethereum personal signature following EIP-191 standard
|
|
1379
1392
|
* - SIWE: Sign-In with Ethereum message signature (EIP-4361)
|
|
1393
|
+
* - SIWX: Sign-In with X message signature
|
|
1394
|
+
* - SOL_SIWX: Sign-In with Solana message signature (SIWE for Solana)
|
|
1380
1395
|
* - EIP712: Ethereum typed data signature following EIP-712 standard
|
|
1381
1396
|
* - BIP137: Bitcoin message signature following BIP-137
|
|
1382
1397
|
* - BIP322: Bitcoin message signature following BIP-322
|
|
@@ -1399,6 +1414,7 @@ export declare enum ProofTypes {
|
|
|
1399
1414
|
SelfDeclaration = "self-declaration",
|
|
1400
1415
|
SIWE = "siwe",
|
|
1401
1416
|
SIWX = "siwx",
|
|
1417
|
+
SOL_SIWX = "sol-siwx",
|
|
1402
1418
|
EIP191 = "eip-191",
|
|
1403
1419
|
EIP712 = "eip-712",
|
|
1404
1420
|
EIP1271 = "eip-1271",
|
|
@@ -1410,6 +1426,7 @@ export declare enum ProofTypes {
|
|
|
1410
1426
|
XRP_ED25519 = "xrp-ed25519",
|
|
1411
1427
|
XLM_ED25519 = "xlm-ed25519",
|
|
1412
1428
|
CIP8 = "cip-8",
|
|
1429
|
+
COSMOS = "cosmos-ecdsa",
|
|
1413
1430
|
MicroTransfer = "microtransfer",
|
|
1414
1431
|
Screenshot = "screenshot",
|
|
1415
1432
|
Connect = "connect",
|
|
@@ -1471,14 +1488,70 @@ export declare interface ScreenshotProof extends OwnershipProof {
|
|
|
1471
1488
|
* @public
|
|
1472
1489
|
*/
|
|
1473
1490
|
export declare interface SignatureProof extends OwnershipProof {
|
|
1474
|
-
type: ProofTypes.EIP191 | ProofTypes.EIP712 | ProofTypes.EIP1271 | ProofTypes.BIP137 | ProofTypes.BIP322 | ProofTypes.BIP137_XPUB | ProofTypes.ED25519 | ProofTypes.TIP191 | ProofTypes.SIWX | ProofTypes.SIWE | ProofTypes.CIP8 | ProofTypes.XRP_ED25519 | ProofTypes.CONCORDIUM | ProofTypes.XLM_ED25519;
|
|
1491
|
+
type: ProofTypes.EIP191 | ProofTypes.EIP712 | ProofTypes.EIP1271 | ProofTypes.BIP137 | ProofTypes.BIP322 | ProofTypes.BIP137_XPUB | ProofTypes.ED25519 | ProofTypes.TIP191 | ProofTypes.SIWX | ProofTypes.SOL_SIWX | ProofTypes.SIWE | ProofTypes.CIP8 | ProofTypes.XRP_ED25519 | ProofTypes.CONCORDIUM | ProofTypes.XLM_ED25519 | ProofTypes.COSMOS;
|
|
1475
1492
|
proof: string;
|
|
1476
1493
|
attestation: string;
|
|
1477
1494
|
wallet_provider: string;
|
|
1478
1495
|
xpub?: string;
|
|
1479
1496
|
chainSpecificData?: {
|
|
1480
1497
|
cardanoCoseKey?: string;
|
|
1498
|
+
} | SolanaMetadata | CosmosMetadata;
|
|
1499
|
+
}
|
|
1500
|
+
|
|
1501
|
+
/**
|
|
1502
|
+
* Input for SIWX message signing
|
|
1503
|
+
* Every SIWX message must include the following fields:
|
|
1504
|
+
* - domain
|
|
1505
|
+
* - address
|
|
1506
|
+
* - statement
|
|
1507
|
+
* - uri
|
|
1508
|
+
* - version
|
|
1509
|
+
* - chainId
|
|
1510
|
+
*
|
|
1511
|
+
* Optional fields:
|
|
1512
|
+
* - nonce
|
|
1513
|
+
* - issuedAt
|
|
1514
|
+
* - expirationTime
|
|
1515
|
+
* - notBefore
|
|
1516
|
+
* - requestId
|
|
1517
|
+
* - resources
|
|
1518
|
+
*
|
|
1519
|
+
* @public
|
|
1520
|
+
*/
|
|
1521
|
+
export declare interface SIWXInput {
|
|
1522
|
+
domain: string;
|
|
1523
|
+
address: string;
|
|
1524
|
+
statement?: string;
|
|
1525
|
+
uri?: string;
|
|
1526
|
+
version?: string;
|
|
1527
|
+
chainId?: string;
|
|
1528
|
+
nonce?: string;
|
|
1529
|
+
issuedAt?: string;
|
|
1530
|
+
expirationTime?: string;
|
|
1531
|
+
notBefore?: string;
|
|
1532
|
+
requestId?: string;
|
|
1533
|
+
resources?: readonly string[];
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
/**
|
|
1537
|
+
* Metadata for Solana SIWX ownership proofs
|
|
1538
|
+
* @remarks
|
|
1539
|
+
* - Includes the account public key and address
|
|
1540
|
+
* - Includes the signed message
|
|
1541
|
+
* - Includes the signature
|
|
1542
|
+
* - Includes the message
|
|
1543
|
+
*
|
|
1544
|
+
* @see {@link SignatureProof} For signature-based proofs
|
|
1545
|
+
* @public
|
|
1546
|
+
*/
|
|
1547
|
+
export declare interface SolanaMetadata {
|
|
1548
|
+
account: {
|
|
1549
|
+
address: string;
|
|
1550
|
+
publicKey: Uint8Array;
|
|
1481
1551
|
};
|
|
1552
|
+
signedMessage: Uint8Array;
|
|
1553
|
+
signature: Uint8Array;
|
|
1554
|
+
message: SIWXInput;
|
|
1482
1555
|
}
|
|
1483
1556
|
|
|
1484
1557
|
/**
|
package/dist/notabene.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var v = Object.defineProperty;
|
|
2
2
|
var g = (t, e, n) => e in t ? v(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
3
|
var a = (t, e, n) => g(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
|
-
var A = /* @__PURE__ */ ((t) => (t.PRIVATE = "WALLET", t.VASP = "VASP", t))(A || {}),
|
|
5
|
-
class
|
|
4
|
+
var A = /* @__PURE__ */ ((t) => (t.PRIVATE = "WALLET", t.VASP = "VASP", t))(A || {}), I = /* @__PURE__ */ ((t) => (t.NATURAL = "natural", t.LEGAL = "legal", t.SELF = "self", t))(I || {}), y = /* @__PURE__ */ ((t) => (t.EMPTY = "empty", t.VERIFY = "verify", t.PENDING = "pending", t.VERIFIED = "verified", t.BANNED = "banned", t))(y || {}), N = /* @__PURE__ */ ((t) => (t.ALLOWED = "allowed", t.PENDING = "pending", t))(N || {}), L = /* @__PURE__ */ ((t) => (t.ASSET = "asset", t.DESTINATION = "destination", t.COUNTERPARTY = "counterparty", t.AGENT = "agent", t))(L || {}), l = /* @__PURE__ */ ((t) => (t.COMPLETE = "complete", t.RESIZE = "resize", t.RESULT = "result", t.READY = "ready", t.INVALID = "invalid", t.ERROR = "error", t.CANCEL = "cancel", t.WARNING = "warning", t.INFO = "info", t))(l || {}), C = /* @__PURE__ */ ((t) => (t.SERVICE_UNAVAILABLE = "SERVICE_UNAVAILABLE", t.WALLET_CONNECTION_FAILED = "WALLET_CONNECTION_FAILED", t.WALLET_NOT_SUPPORTED = "WALLET_NOT_SUPPORTED", t.TOKEN_INVALID = "TOKEN_INVALID", t))(C || {}), p = /* @__PURE__ */ ((t) => (t.UPDATE = "update", t.REQUEST_RESPONSE = "requestResponse", t))(p || {}), b = /* @__PURE__ */ ((t) => (t.PENDING = "pending", t.FAILED = "rejected", t.FLAGGED = "flagged", t.VERIFIED = "verified", t))(b || {}), U = /* @__PURE__ */ ((t) => (t.SelfDeclaration = "self-declaration", t.SIWE = "siwe", t.SIWX = "siwx", t.SOL_SIWX = "sol-siwx", t.EIP191 = "eip-191", t.EIP712 = "eip-712", t.EIP1271 = "eip-1271", t.BIP137 = "bip-137", t.BIP322 = "bip-322", t.BIP137_XPUB = "xpub", t.TIP191 = "tip-191", t.ED25519 = "ed25519", t.XRP_ED25519 = "xrp-ed25519", t.XLM_ED25519 = "xlm-ed25519", t.CIP8 = "cip-8", t.COSMOS = "cosmos-ecdsa", t.MicroTransfer = "microtransfer", t.Screenshot = "screenshot", t.Connect = "connect", t.CONCORDIUM = "concordium", t))(U || {});
|
|
5
|
+
class O {
|
|
6
6
|
constructor() {
|
|
7
7
|
a(this, "listeners", /* @__PURE__ */ new Map());
|
|
8
8
|
a(this, "port");
|
|
@@ -82,7 +82,7 @@ class _ {
|
|
|
82
82
|
a(this, "iframe");
|
|
83
83
|
a(this, "eventManager");
|
|
84
84
|
a(this, "modal");
|
|
85
|
-
this._url = e, this._value = n, this._options = s, this.eventManager = new
|
|
85
|
+
this._url = e, this._value = n, this._options = s, this.eventManager = new O(), this.on(l.INVALID, (r) => {
|
|
86
86
|
r.type === l.INVALID && (this._errors = r.errors, this._value = r.value);
|
|
87
87
|
}), this.on(l.RESIZE, (r) => {
|
|
88
88
|
r.type === l.RESIZE && this.iframe && (this.iframe.style.height = `${r.height}px`);
|
|
@@ -166,7 +166,7 @@ class _ {
|
|
|
166
166
|
* @param value - The new transaction value
|
|
167
167
|
*/
|
|
168
168
|
update(e, n) {
|
|
169
|
-
this._value = e, n && (this._options = n), this.send({ type:
|
|
169
|
+
this._value = e, n && (this._options = n), this.send({ type: p.UPDATE, value: e, options: this._options });
|
|
170
170
|
}
|
|
171
171
|
/**
|
|
172
172
|
* Waits for the component to complete and returns the transaction response
|
|
@@ -247,7 +247,7 @@ function x(t) {
|
|
|
247
247
|
return `${s}=${r}`;
|
|
248
248
|
}).filter((e) => e !== void 0).join("&");
|
|
249
249
|
}
|
|
250
|
-
function
|
|
250
|
+
function D(t) {
|
|
251
251
|
const e = t.slice(1);
|
|
252
252
|
return e ? e.split("&").filter(Boolean).reduce(
|
|
253
253
|
(s, r) => {
|
|
@@ -257,7 +257,7 @@ function O(t) {
|
|
|
257
257
|
{}
|
|
258
258
|
) : {};
|
|
259
259
|
}
|
|
260
|
-
async function
|
|
260
|
+
async function E(t, e) {
|
|
261
261
|
const n = JSON.stringify(t), s = new TextEncoder(), r = e ? m(e) : crypto.getRandomValues(new Uint8Array(32)), i = await crypto.subtle.importKey(
|
|
262
262
|
"raw",
|
|
263
263
|
r,
|
|
@@ -303,7 +303,7 @@ function m(t) {
|
|
|
303
303
|
n[s] = e.charCodeAt(s);
|
|
304
304
|
return n;
|
|
305
305
|
}
|
|
306
|
-
async function
|
|
306
|
+
async function S(t) {
|
|
307
307
|
const e = await fetch(t.url, {
|
|
308
308
|
method: "GET"
|
|
309
309
|
});
|
|
@@ -331,7 +331,7 @@ async function M(t) {
|
|
|
331
331
|
tx: i.tx
|
|
332
332
|
};
|
|
333
333
|
}
|
|
334
|
-
class
|
|
334
|
+
class M {
|
|
335
335
|
constructor(e) {
|
|
336
336
|
a(this, "endpoint");
|
|
337
337
|
this.endpoint = e;
|
|
@@ -344,7 +344,7 @@ class S {
|
|
|
344
344
|
* @returns Promise resolving to connection details including ID, version, and encryption key
|
|
345
345
|
*/
|
|
346
346
|
async create(e, n) {
|
|
347
|
-
const s = await
|
|
347
|
+
const s = await E(e), r = {
|
|
348
348
|
metadata: n,
|
|
349
349
|
sealed: s.ciphertext
|
|
350
350
|
}, i = await fetch(this.endpoint, {
|
|
@@ -377,7 +377,7 @@ class S {
|
|
|
377
377
|
* @returns Promise resolving to updated connection details including new encryption key
|
|
378
378
|
*/
|
|
379
379
|
async update(e, n, s, r, i) {
|
|
380
|
-
const o = await
|
|
380
|
+
const o = await E(n, i), c = {
|
|
381
381
|
sealed: o.ciphertext,
|
|
382
382
|
version: s,
|
|
383
383
|
status: r
|
|
@@ -561,17 +561,17 @@ class k {
|
|
|
561
561
|
export {
|
|
562
562
|
A as AgentType,
|
|
563
563
|
l as CMType,
|
|
564
|
-
|
|
564
|
+
M as ConnectionManager,
|
|
565
565
|
_ as EmbeddedComponent,
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
566
|
+
C as ErrorIdentifierCode,
|
|
567
|
+
p as HMType,
|
|
568
|
+
I as PersonType,
|
|
569
|
+
b as ProofStatus,
|
|
570
570
|
U as ProofTypes,
|
|
571
|
-
|
|
571
|
+
y as Status,
|
|
572
572
|
N as VASPSearchControl,
|
|
573
573
|
L as ValidationSections,
|
|
574
|
-
|
|
574
|
+
D as decodeFragmentToObject,
|
|
575
575
|
k as default,
|
|
576
|
-
|
|
576
|
+
S as getRefreshResult
|
|
577
577
|
};
|