@bonfida/spl-name-service 3.0.3-alpha.0 → 3.0.3
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/node_modules/@bonfida/sns-records/dist/index.cjs +1 -1
- package/dist/cjs/node_modules/@bonfida/sns-records/dist/index.cjs.map +1 -1
- package/dist/cjs/node_modules/@noble/curves/esm/abstract/utils.cjs.map +1 -1
- package/dist/cjs/node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.cjs +1 -1
- package/dist/cjs/node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.cjs.map +1 -1
- package/dist/cjs/node_modules/@solana/spl-token/lib/esm/state/account.cjs.map +1 -1
- package/dist/cjs/node_modules/@solana/spl-token/lib/esm/state/mint.cjs +1 -1
- package/dist/cjs/node_modules/@solana/spl-token/lib/esm/state/mint.cjs.map +1 -1
- package/dist/cjs/node_modules/@solana/spl-token/lib/esm/state/multisig.cjs.map +1 -1
- package/dist/cjs/node_modules/js-base64/base64.cjs +1 -1
- package/dist/cjs/node_modules/js-base64/base64.cjs.map +1 -1
- package/dist/cjs/record_v2/serializeRecordV2Content.cjs +1 -1
- package/dist/cjs/record_v2/serializeRecordV2Content.cjs.map +1 -1
- package/dist/cjs/resolve/resolve.cjs +1 -1
- package/dist/cjs/resolve/resolve.cjs.map +1 -1
- package/dist/esm/node_modules/@bonfida/sns-records/dist/index.mjs +1 -1
- package/dist/esm/node_modules/@bonfida/sns-records/dist/index.mjs.map +1 -1
- package/dist/esm/node_modules/@noble/curves/esm/abstract/utils.mjs.map +1 -1
- package/dist/esm/node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.mjs +1 -1
- package/dist/esm/node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.mjs.map +1 -1
- package/dist/esm/node_modules/@solana/spl-token/lib/esm/state/account.mjs.map +1 -1
- package/dist/esm/node_modules/@solana/spl-token/lib/esm/state/mint.mjs +1 -1
- package/dist/esm/node_modules/@solana/spl-token/lib/esm/state/mint.mjs.map +1 -1
- package/dist/esm/node_modules/@solana/spl-token/lib/esm/state/multisig.mjs.map +1 -1
- package/dist/esm/node_modules/js-base64/base64.mjs +1 -1
- package/dist/esm/node_modules/js-base64/base64.mjs.map +1 -1
- package/dist/esm/record_v2/serializeRecordV2Content.mjs +1 -1
- package/dist/esm/record_v2/serializeRecordV2Content.mjs.map +1 -1
- package/dist/esm/resolve/resolve.mjs +1 -1
- package/dist/esm/resolve/resolve.mjs.map +1 -1
- package/dist/types/record_v2/serializeRecordV2Content.d.ts +1 -0
- package/package.json +2 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e,t=require("@solana/web3.js"),r=["u8","u16","u32","u64","u128","i8","i16","i32","i64","i128","f32","f64"],i=function(){function e(){this.offset=0,this.buffer_size=256,this.buffer=new ArrayBuffer(this.buffer_size),this.view=new DataView(this.buffer)}return e.prototype.resize_if_necessary=function(e){if(this.buffer_size-this.offset<e){this.buffer_size=Math.max(2*this.buffer_size,this.buffer_size+e);var t=new ArrayBuffer(this.buffer_size);new Uint8Array(t).set(new Uint8Array(this.buffer)),this.buffer=t,this.view=new DataView(t)}},e.prototype.get_used_buffer=function(){return new Uint8Array(this.buffer).slice(0,this.offset)},e.prototype.store_value=function(e,t){var r=t.substring(1),i=parseInt(r)/8;this.resize_if_necessary(i);var n="f"===t[0]?"setFloat".concat(r):"i"===t[0]?"setInt".concat(r):"setUint".concat(r);this.view[n](this.offset,e,!0),this.offset+=i},e.prototype.store_bytes=function(e){this.resize_if_necessary(e.length),new Uint8Array(this.buffer).set(new Uint8Array(e),this.offset),this.offset+=e.length},e}(),n=function(){function e(e){this.offset=0,this.buffer_size=e.length,this.buffer=new ArrayBuffer(e.length),new Uint8Array(this.buffer).set(e),this.view=new DataView(this.buffer)}return e.prototype.assert_enough_buffer=function(e){if(this.offset+e>this.buffer.byteLength)throw new Error("Error in schema, the buffer is smaller than expected")},e.prototype.consume_value=function(e){var t=e.substring(1),r=parseInt(t)/8;this.assert_enough_buffer(r);var i="f"===e[0]?"getFloat".concat(t):"i"===e[0]?"getInt".concat(t):"getUint".concat(t),n=this.view[i](this.offset,!0);return this.offset+=r,n},e.prototype.consume_bytes=function(e){this.assert_enough_buffer(e);var t=this.buffer.slice(this.offset,this.offset+e);return this.offset+=e,t},e}(),s=(e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},e(t,r)},function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function i(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(i.prototype=r.prototype,new i)});function o(e,t,r){if(typeof e!==t)throw new Error("Expected ".concat(t," not ").concat(typeof e,"(").concat(e,") at ").concat(r.join(".")))}function a(e,t,r){if(e!==t)throw new Error("Array length ".concat(e," does not match schema length ").concat(t," at ").concat(r.join(".")))}var u=r.concat(["bool","string"]),c=["option","enum","array","set","map","struct"],h=function(e){function t(t,r){var i="Invalid schema: ".concat(JSON.stringify(t)," expected ").concat(r);return e.call(this,i)||this}return s(t,e),t}(Error);function f(e){if("string"!=typeof e||!u.includes(e)){if(e&&"object"==typeof e){var t=Object.keys(e);if(1===t.length&&c.includes(t[0])){var r=t[0];if("option"===r)return f(e[r]);if("enum"===r)return function(e){if(!Array.isArray(e))throw new h(e,"Array");for(var t=0,r=e;t<r.length;t++){var i=r[t];if("object"!=typeof i||!("struct"in i))throw new Error('Missing "struct" key in enum schema');if("object"!=typeof i.struct||1!==Object.keys(i.struct).length)throw new Error('The "struct" in each enum must have a single key');f({struct:i.struct})}}(e[r]);if("array"===r)return function(e){if("object"!=typeof e)throw new h(e,"{ type, len? }");if(e.len&&"number"!=typeof e.len)throw new Error("Invalid schema: ".concat(e));if("type"in e)return f(e.type);throw new h(e,"{ type, len? }")}(e[r]);if("set"===r)return f(e[r]);if("map"===r)return function(e){if("object"!=typeof e||!("key"in e)||!("value"in e))throw new h(e,"{ key, value }");f(e.key),f(e.value)}(e[r]);if("struct"===r)return function(e){if("object"!=typeof e)throw new h(e,"object");for(var t in e)f(e[t])}(e[r])}}throw new h(e,c.join(", ")+" or "+u.join(", "))}}var d=function(){function e(e){this.encoded=new i,this.fieldPath=["value"],this.checkTypes=e}return e.prototype.encode=function(e,t){return this.encode_value(e,t),this.encoded.get_used_buffer()},e.prototype.encode_value=function(e,t){if("string"==typeof t){if(r.includes(t))return this.encode_integer(e,t);if("string"===t)return this.encode_string(e);if("bool"===t)return this.encode_boolean(e)}if("object"==typeof t){if("option"in t)return this.encode_option(e,t);if("enum"in t)return this.encode_enum(e,t);if("array"in t)return this.encode_array(e,t);if("set"in t)return this.encode_set(e,t);if("map"in t)return this.encode_map(e,t);if("struct"in t)return this.encode_struct(e,t)}},e.prototype.encode_integer=function(e,t){var r=parseInt(t.substring(1));r<=32||"f64"==t?(this.checkTypes&&o(e,"number",this.fieldPath),this.encoded.store_value(e,t)):(this.checkTypes&&function(e,t){if(!(["number","string","bigint","boolean"].includes(typeof e)||"object"==typeof e&&null!==e&&"toString"in e))throw new Error("Expected bigint, number, boolean or string not ".concat(typeof e,"(").concat(e,") at ").concat(t.join(".")))}(e,this.fieldPath),this.encode_bigint(BigInt(e),r))},e.prototype.encode_bigint=function(e,t){for(var r=t/8,i=new Uint8Array(r),n=0;n<r;n++)i[n]=Number(e&BigInt(255)),e>>=BigInt(8);this.encoded.store_bytes(new Uint8Array(i))},e.prototype.encode_string=function(e){this.checkTypes&&o(e,"string",this.fieldPath);var t=e;this.encoded.store_value(t.length,"u32");for(var r=0;r<t.length;r++)this.encoded.store_value(t.charCodeAt(r),"u8")},e.prototype.encode_boolean=function(e){this.checkTypes&&o(e,"boolean",this.fieldPath),this.encoded.store_value(e?1:0,"u8")},e.prototype.encode_option=function(e,t){null==e?this.encoded.store_value(0,"u8"):(this.encoded.store_value(1,"u8"),this.encode_value(e,t.option))},e.prototype.encode_enum=function(e,t){this.checkTypes&&function(e,t){if("object"!=typeof e||null===e)throw new Error("Expected object not ".concat(typeof e,"(").concat(e,") at ").concat(t.join(".")))}(e,this.fieldPath);for(var r=Object.keys(e)[0],i=0;i<t.enum.length;i++){var n=t.enum[i];if(r===Object.keys(n.struct)[0])return this.encoded.store_value(i,"u8"),this.encode_struct(e,n)}throw new Error("Enum key (".concat(r,") not found in enum schema: ").concat(JSON.stringify(t)," at ").concat(this.fieldPath.join(".")))},e.prototype.encode_array=function(e,t){if(function(e){return Array.isArray(e)||!!e&&"object"==typeof e&&"length"in e&&"number"==typeof e.length&&(0===e.length||e.length>0&&e.length-1 in e)}(e))return this.encode_arraylike(e,t);if(e instanceof ArrayBuffer)return this.encode_buffer(e,t);throw new Error("Expected Array-like not ".concat(typeof e,"(").concat(e,") at ").concat(this.fieldPath.join(".")))},e.prototype.encode_arraylike=function(e,t){t.array.len?a(e.length,t.array.len,this.fieldPath):this.encoded.store_value(e.length,"u32");for(var r=0;r<e.length;r++)this.encode_value(e[r],t.array.type)},e.prototype.encode_buffer=function(e,t){t.array.len?a(e.byteLength,t.array.len,this.fieldPath):this.encoded.store_value(e.byteLength,"u32"),this.encoded.store_bytes(new Uint8Array(e))},e.prototype.encode_set=function(e,t){this.checkTypes&&o(e,"object",this.fieldPath);var r=e instanceof Set?Array.from(e.values()):Object.values(e);this.encoded.store_value(r.length,"u32");for(var i=0,n=r;i<n.length;i++){var s=n[i];this.encode_value(s,t.set)}},e.prototype.encode_map=function(e,t){this.checkTypes&&o(e,"object",this.fieldPath);var r=e instanceof Map,i=r?Array.from(e.keys()):Object.keys(e);this.encoded.store_value(i.length,"u32");for(var n=0,s=i;n<s.length;n++){var a=s[n];this.encode_value(a,t.map.key),this.encode_value(r?e.get(a):e[a],t.map.value)}},e.prototype.encode_struct=function(e,t){this.checkTypes&&o(e,"object",this.fieldPath);for(var r=0,i=Object.keys(t.struct);r<i.length;r++){var n=i[r];this.fieldPath.push(n),this.encode_value(e[n],t.struct[n]),this.fieldPath.pop()}},e}(),p=function(){function e(e){this.buffer=new n(e)}return e.prototype.decode=function(e){return this.decode_value(e)},e.prototype.decode_value=function(e){if("string"==typeof e){if(r.includes(e))return this.decode_integer(e);if("string"===e)return this.decode_string();if("bool"===e)return this.decode_boolean()}if("object"==typeof e){if("option"in e)return this.decode_option(e);if("enum"in e)return this.decode_enum(e);if("array"in e)return this.decode_array(e);if("set"in e)return this.decode_set(e);if("map"in e)return this.decode_map(e);if("struct"in e)return this.decode_struct(e)}throw new Error("Unsupported type: ".concat(e))},e.prototype.decode_integer=function(e){var t=parseInt(e.substring(1));return t<=32||"f64"==e?this.buffer.consume_value(e):this.decode_bigint(t,e.startsWith("i"))},e.prototype.decode_bigint=function(e,t){void 0===t&&(t=!1);var r=e/8,i=new Uint8Array(this.buffer.consume_bytes(r)),n=i.reduceRight((function(e,t){return e+t.toString(16).padStart(2,"0")}),"");return t&&i[r-1]?BigInt.asIntN(e,BigInt("0x".concat(n))):BigInt("0x".concat(n))},e.prototype.decode_string=function(){var e=this.decode_integer("u32"),t=new Uint8Array(this.buffer.consume_bytes(e));return String.fromCharCode.apply(null,t)},e.prototype.decode_boolean=function(){return this.buffer.consume_value("u8")>0},e.prototype.decode_option=function(e){var t=this.buffer.consume_value("u8");if(1===t)return this.decode_value(e.option);if(0!==t)throw new Error("Invalid option ".concat(t));return null},e.prototype.decode_enum=function(e){var t,r=this.buffer.consume_value("u8");if(r>e.enum.length)throw new Error("Enum option ".concat(r," is not available"));var i=e.enum[r].struct,n=Object.keys(i)[0];return(t={})[n]=this.decode_value(i[n]),t},e.prototype.decode_array=function(e){for(var t=[],r=e.array.len?e.array.len:this.decode_integer("u32"),i=0;i<r;++i)t.push(this.decode_value(e.array.type));return t},e.prototype.decode_set=function(e){for(var t=this.decode_integer("u32"),r=new Set,i=0;i<t;++i)r.add(this.decode_value(e.set));return r},e.prototype.decode_map=function(e){for(var t=this.decode_integer("u32"),r=new Map,i=0;i<t;++i){var n=this.decode_value(e.map.key),s=this.decode_value(e.map.value);r.set(n,s)}return r},e.prototype.decode_struct=function(e){var t={};for(var r in e.struct)t[r]=this.decode_value(e.struct[r]);return t},e}();function l(e,t,r){return void 0===r&&(r=!0),r&&f(e),new d(r).encode(t,e)}class y{constructor(e){this.tag=1,this.record=e.record,this.content=e.content}serialize(){return l(y.schema,this)}getInstruction(e,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:h,programId:e,data:c})}}y.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class g{constructor(e){this.tag=4,this.validation=e.validation,this.signature=e.signature,this.expectedPubkey=e.expectedPubkey}serialize(){return l(g.schema,this)}getInstruction(e,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:h,programId:e,data:c})}}g.schema={struct:{tag:"u8",validation:"u8",signature:{array:{type:"u8"}},expectedPubkey:{array:{type:"u8"}}}};class b{constructor(e){this.tag=3,this.staleness=e.staleness}serialize(){return l(b.schema,this)}getInstruction(e,r,i,n,s,o,a,u,c){const h=Buffer.from(this.serialize());let f=[];return f.push({pubkey:r,isSigner:!1,isWritable:!1}),f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!0,isWritable:!0}),f.push({pubkey:s,isSigner:!1,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!1,isWritable:!1}),f.push({pubkey:c,isSigner:!0,isWritable:!0}),new t.TransactionInstruction({keys:f,programId:e,data:h})}}b.schema={struct:{tag:"u8",staleness:"bool"}};class _{constructor(e){this.tag=2,this.record=e.record,this.content=e.content}serialize(){return l(_.schema,this)}getInstruction(e,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:h,programId:e,data:c})}}_.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class v{constructor(){this.tag=5}serialize(){return l(v.schema,this)}getInstruction(e,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:h,programId:e,data:c})}}v.schema={struct:{tag:"u8"}};class m{constructor(e){this.tag=6,this.roaId=e.roaId}serialize(){return l(m.schema,this)}getInstruction(e,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:h,programId:e,data:c})}}m.schema={struct:{tag:"u8",roaId:{array:{type:"u8"}}}};const w=new t.PublicKey("HP3D4D1ZCmohQGFVms2SS4LCANgJyksBf5s1F77FuFjZ"),[k]=t.PublicKey.findProgramAddressSync([w.toBuffer()],w);var S;exports.Validation=void 0,(S=exports.Validation||(exports.Validation={}))[S.None=0]="None",S[S.Solana=1]="Solana",S[S.Ethereum=2]="Ethereum",S[S.UnverifiedSolana=3]="UnverifiedSolana";const I=e=>{switch(e){case exports.Validation.None:return 0;case exports.Validation.Ethereum:return 20;case exports.Validation.Solana:case exports.Validation.UnverifiedSolana:return 32;default:throw new Error("Invalid validation enum")}};class A{constructor(e){this.stalenessValidation=e.stalenessValidation,this.rightOfAssociationValidation=e.rightOfAssociationValidation,this.contentLength=e.contentLength}static deserialize(e){return new A((t=this.schema,r=e,void 0===(i=!0)&&(i=!0),i&&f(t),new p(r).decode(t)));var t,r,i}static async retrieve(e,t){const r=await e.getAccountInfo(t);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data.slice(96,96+this.LEN))}}A.LEN=8,A.schema={struct:{stalenessValidation:"u16",rightOfAssociationValidation:"u16",contentLength:"u32"}};class W{constructor(e,t){this.data=t,this.header=e}static deserialize(e){const t=A.deserialize(e.slice(96,96+A.LEN)),r=e.slice(96+A.LEN);return new W(t,r)}static async retrieve(e,t){const r=await e.getAccountInfo(t);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data)}static async retrieveBatch(e,t){return(await e.getMultipleAccountsInfo(t)).map((e=>{if(null==e?void 0:e.data)return this.deserialize(e.data)}))}getContent(){let e=I(this.header.stalenessValidation)+I(this.header.rightOfAssociationValidation);return this.data.slice(e)}getStalenessId(){let e=I(this.header.stalenessValidation);return this.data.slice(0,e)}getRoAId(){let e=I(this.header.stalenessValidation),t=e+I(this.header.rightOfAssociationValidation);return this.data.slice(e,t)}}exports.CENTRAL_STATE_SNS_RECORDS=k,exports.Record=W,exports.RecordHeader=A,exports.SNS_RECORDS_ID=w,exports.allocateAndPostRecord=(e,r,i,n,s,o,a,u)=>new y({record:o,content:Array.from(a)}).getInstruction(u,t.SystemProgram.programId,s,e,r,i,n,k),exports.allocateAndPostRecordInstruction=y,exports.deleteRecord=(e,r,i,n,s,o)=>(new v).getInstruction(o,t.SystemProgram.programId,s,e,n,r,i,k),exports.deleteRecordInstruction=v,exports.editRecord=(e,r,i,n,s,o,a,u)=>new _({record:o,content:Array.from(a)}).getInstruction(u,t.SystemProgram.programId,s,e,r,i,n,k),exports.editRecordInstruction=_,exports.getValidationLength=I,exports.validateEthSignature=(e,r,i,n,s,o,a,u,c)=>new g({validation:o,signature:Array.from(a),expectedPubkey:Array.from(u)}).getInstruction(c,t.SystemProgram.programId,s,e,r,i,n,k),exports.validateEthereumSignatureInstruction=g,exports.validateSolanaSignature=(e,r,i,n,s,o,a,u)=>new b({staleness:a}).getInstruction(u,t.SystemProgram.programId,o,e,r,i,n,k,s),exports.validateSolanaSignatureInstruction=b,exports.writeRoa=(e,r,i,n,s,o,a)=>new m({roaId:Array.from(o.toBuffer())}).getInstruction(a,t.SystemProgram.programId,r,e,i,n,s,k),exports.writeRoaInstruction=m;
|
|
1
|
+
"use strict";require("../../../buffer/index.cjs");var e,t=require("@solana/web3.js"),r=require("../../../../_virtual/index.cjs"),i=["u8","u16","u32","u64","u128","i8","i16","i32","i64","i128","f32","f64"],n=function(){function e(){this.offset=0,this.buffer_size=256,this.buffer=new ArrayBuffer(this.buffer_size),this.view=new DataView(this.buffer)}return e.prototype.resize_if_necessary=function(e){if(this.buffer_size-this.offset<e){this.buffer_size=Math.max(2*this.buffer_size,this.buffer_size+e);var t=new ArrayBuffer(this.buffer_size);new Uint8Array(t).set(new Uint8Array(this.buffer)),this.buffer=t,this.view=new DataView(t)}},e.prototype.get_used_buffer=function(){return new Uint8Array(this.buffer).slice(0,this.offset)},e.prototype.store_value=function(e,t){var r=t.substring(1),i=parseInt(r)/8;this.resize_if_necessary(i);var n="f"===t[0]?"setFloat".concat(r):"i"===t[0]?"setInt".concat(r):"setUint".concat(r);this.view[n](this.offset,e,!0),this.offset+=i},e.prototype.store_bytes=function(e){this.resize_if_necessary(e.length),new Uint8Array(this.buffer).set(new Uint8Array(e),this.offset),this.offset+=e.length},e}(),s=function(){function e(e){this.offset=0,this.buffer_size=e.length,this.buffer=new ArrayBuffer(e.length),new Uint8Array(this.buffer).set(e),this.view=new DataView(this.buffer)}return e.prototype.assert_enough_buffer=function(e){if(this.offset+e>this.buffer.byteLength)throw new Error("Error in schema, the buffer is smaller than expected")},e.prototype.consume_value=function(e){var t=e.substring(1),r=parseInt(t)/8;this.assert_enough_buffer(r);var i="f"===e[0]?"getFloat".concat(t):"i"===e[0]?"getInt".concat(t):"getUint".concat(t),n=this.view[i](this.offset,!0);return this.offset+=r,n},e.prototype.consume_bytes=function(e){this.assert_enough_buffer(e);var t=this.buffer.slice(this.offset,this.offset+e);return this.offset+=e,t},e}(),o=(e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},e(t,r)},function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function i(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(i.prototype=r.prototype,new i)});function a(e,t,r){if(typeof e!==t)throw new Error("Expected ".concat(t," not ").concat(typeof e,"(").concat(e,") at ").concat(r.join(".")))}function u(e,t,r){if(e!==t)throw new Error("Array length ".concat(e," does not match schema length ").concat(t," at ").concat(r.join(".")))}var c=i.concat(["bool","string"]),h=["option","enum","array","set","map","struct"],f=function(e){function t(t,r){var i="Invalid schema: ".concat(JSON.stringify(t)," expected ").concat(r);return e.call(this,i)||this}return o(t,e),t}(Error);function p(e){if("string"!=typeof e||!c.includes(e)){if(e&&"object"==typeof e){var t=Object.keys(e);if(1===t.length&&h.includes(t[0])){var r=t[0];if("option"===r)return p(e[r]);if("enum"===r)return function(e){if(!Array.isArray(e))throw new f(e,"Array");for(var t=0,r=e;t<r.length;t++){var i=r[t];if("object"!=typeof i||!("struct"in i))throw new Error('Missing "struct" key in enum schema');if("object"!=typeof i.struct||1!==Object.keys(i.struct).length)throw new Error('The "struct" in each enum must have a single key');p({struct:i.struct})}}(e[r]);if("array"===r)return function(e){if("object"!=typeof e)throw new f(e,"{ type, len? }");if(e.len&&"number"!=typeof e.len)throw new Error("Invalid schema: ".concat(e));if("type"in e)return p(e.type);throw new f(e,"{ type, len? }")}(e[r]);if("set"===r)return p(e[r]);if("map"===r)return function(e){if("object"!=typeof e||!("key"in e)||!("value"in e))throw new f(e,"{ key, value }");p(e.key),p(e.value)}(e[r]);if("struct"===r)return function(e){if("object"!=typeof e)throw new f(e,"object");for(var t in e)p(e[t])}(e[r])}}throw new f(e,h.join(", ")+" or "+c.join(", "))}}var d=function(){function e(e){this.encoded=new n,this.fieldPath=["value"],this.checkTypes=e}return e.prototype.encode=function(e,t){return this.encode_value(e,t),this.encoded.get_used_buffer()},e.prototype.encode_value=function(e,t){if("string"==typeof t){if(i.includes(t))return this.encode_integer(e,t);if("string"===t)return this.encode_string(e);if("bool"===t)return this.encode_boolean(e)}if("object"==typeof t){if("option"in t)return this.encode_option(e,t);if("enum"in t)return this.encode_enum(e,t);if("array"in t)return this.encode_array(e,t);if("set"in t)return this.encode_set(e,t);if("map"in t)return this.encode_map(e,t);if("struct"in t)return this.encode_struct(e,t)}},e.prototype.encode_integer=function(e,t){var r=parseInt(t.substring(1));r<=32||"f64"==t?(this.checkTypes&&a(e,"number",this.fieldPath),this.encoded.store_value(e,t)):(this.checkTypes&&function(e,t){if(!(["number","string","bigint","boolean"].includes(typeof e)||"object"==typeof e&&null!==e&&"toString"in e))throw new Error("Expected bigint, number, boolean or string not ".concat(typeof e,"(").concat(e,") at ").concat(t.join(".")))}(e,this.fieldPath),this.encode_bigint(BigInt(e),r))},e.prototype.encode_bigint=function(e,t){for(var r=t/8,i=new Uint8Array(r),n=0;n<r;n++)i[n]=Number(e&BigInt(255)),e>>=BigInt(8);this.encoded.store_bytes(new Uint8Array(i))},e.prototype.encode_string=function(e){this.checkTypes&&a(e,"string",this.fieldPath);var t=e;this.encoded.store_value(t.length,"u32");for(var r=0;r<t.length;r++)this.encoded.store_value(t.charCodeAt(r),"u8")},e.prototype.encode_boolean=function(e){this.checkTypes&&a(e,"boolean",this.fieldPath),this.encoded.store_value(e?1:0,"u8")},e.prototype.encode_option=function(e,t){null==e?this.encoded.store_value(0,"u8"):(this.encoded.store_value(1,"u8"),this.encode_value(e,t.option))},e.prototype.encode_enum=function(e,t){this.checkTypes&&function(e,t){if("object"!=typeof e||null===e)throw new Error("Expected object not ".concat(typeof e,"(").concat(e,") at ").concat(t.join(".")))}(e,this.fieldPath);for(var r=Object.keys(e)[0],i=0;i<t.enum.length;i++){var n=t.enum[i];if(r===Object.keys(n.struct)[0])return this.encoded.store_value(i,"u8"),this.encode_struct(e,n)}throw new Error("Enum key (".concat(r,") not found in enum schema: ").concat(JSON.stringify(t)," at ").concat(this.fieldPath.join(".")))},e.prototype.encode_array=function(e,t){if(function(e){return Array.isArray(e)||!!e&&"object"==typeof e&&"length"in e&&"number"==typeof e.length&&(0===e.length||e.length>0&&e.length-1 in e)}(e))return this.encode_arraylike(e,t);if(e instanceof ArrayBuffer)return this.encode_buffer(e,t);throw new Error("Expected Array-like not ".concat(typeof e,"(").concat(e,") at ").concat(this.fieldPath.join(".")))},e.prototype.encode_arraylike=function(e,t){t.array.len?u(e.length,t.array.len,this.fieldPath):this.encoded.store_value(e.length,"u32");for(var r=0;r<e.length;r++)this.encode_value(e[r],t.array.type)},e.prototype.encode_buffer=function(e,t){t.array.len?u(e.byteLength,t.array.len,this.fieldPath):this.encoded.store_value(e.byteLength,"u32"),this.encoded.store_bytes(new Uint8Array(e))},e.prototype.encode_set=function(e,t){this.checkTypes&&a(e,"object",this.fieldPath);var r=e instanceof Set?Array.from(e.values()):Object.values(e);this.encoded.store_value(r.length,"u32");for(var i=0,n=r;i<n.length;i++){var s=n[i];this.encode_value(s,t.set)}},e.prototype.encode_map=function(e,t){this.checkTypes&&a(e,"object",this.fieldPath);var r=e instanceof Map,i=r?Array.from(e.keys()):Object.keys(e);this.encoded.store_value(i.length,"u32");for(var n=0,s=i;n<s.length;n++){var o=s[n];this.encode_value(o,t.map.key),this.encode_value(r?e.get(o):e[o],t.map.value)}},e.prototype.encode_struct=function(e,t){this.checkTypes&&a(e,"object",this.fieldPath);for(var r=0,i=Object.keys(t.struct);r<i.length;r++){var n=i[r];this.fieldPath.push(n),this.encode_value(e[n],t.struct[n]),this.fieldPath.pop()}},e}(),l=function(){function e(e){this.buffer=new s(e)}return e.prototype.decode=function(e){return this.decode_value(e)},e.prototype.decode_value=function(e){if("string"==typeof e){if(i.includes(e))return this.decode_integer(e);if("string"===e)return this.decode_string();if("bool"===e)return this.decode_boolean()}if("object"==typeof e){if("option"in e)return this.decode_option(e);if("enum"in e)return this.decode_enum(e);if("array"in e)return this.decode_array(e);if("set"in e)return this.decode_set(e);if("map"in e)return this.decode_map(e);if("struct"in e)return this.decode_struct(e)}throw new Error("Unsupported type: ".concat(e))},e.prototype.decode_integer=function(e){var t=parseInt(e.substring(1));return t<=32||"f64"==e?this.buffer.consume_value(e):this.decode_bigint(t,e.startsWith("i"))},e.prototype.decode_bigint=function(e,t){void 0===t&&(t=!1);var r=e/8,i=new Uint8Array(this.buffer.consume_bytes(r)),n=i.reduceRight((function(e,t){return e+t.toString(16).padStart(2,"0")}),"");return t&&i[r-1]?BigInt.asIntN(e,BigInt("0x".concat(n))):BigInt("0x".concat(n))},e.prototype.decode_string=function(){var e=this.decode_integer("u32"),t=new Uint8Array(this.buffer.consume_bytes(e));return String.fromCharCode.apply(null,t)},e.prototype.decode_boolean=function(){return this.buffer.consume_value("u8")>0},e.prototype.decode_option=function(e){var t=this.buffer.consume_value("u8");if(1===t)return this.decode_value(e.option);if(0!==t)throw new Error("Invalid option ".concat(t));return null},e.prototype.decode_enum=function(e){var t,r=this.buffer.consume_value("u8");if(r>e.enum.length)throw new Error("Enum option ".concat(r," is not available"));var i=e.enum[r].struct,n=Object.keys(i)[0];return(t={})[n]=this.decode_value(i[n]),t},e.prototype.decode_array=function(e){for(var t=[],r=e.array.len?e.array.len:this.decode_integer("u32"),i=0;i<r;++i)t.push(this.decode_value(e.array.type));return t},e.prototype.decode_set=function(e){for(var t=this.decode_integer("u32"),r=new Set,i=0;i<t;++i)r.add(this.decode_value(e.set));return r},e.prototype.decode_map=function(e){for(var t=this.decode_integer("u32"),r=new Map,i=0;i<t;++i){var n=this.decode_value(e.map.key),s=this.decode_value(e.map.value);r.set(n,s)}return r},e.prototype.decode_struct=function(e){var t={};for(var r in e.struct)t[r]=this.decode_value(e.struct[r]);return t},e}();function y(e,t,r){return void 0===r&&(r=!0),r&&p(e),new d(r).encode(t,e)}class g{constructor(e){this.tag=1,this.record=e.record,this.content=e.content}serialize(){return y(g.schema,this)}getInstruction(e,i,n,s,o,a,u,c){const h=r.__exports.Buffer.from(this.serialize());let f=[];return f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!0,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!0,isWritable:!0}),f.push({pubkey:c,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:f,programId:e,data:h})}}g.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class b{constructor(e){this.tag=4,this.validation=e.validation,this.signature=e.signature,this.expectedPubkey=e.expectedPubkey}serialize(){return y(b.schema,this)}getInstruction(e,i,n,s,o,a,u,c){const h=r.__exports.Buffer.from(this.serialize());let f=[];return f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!0,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!0,isWritable:!0}),f.push({pubkey:c,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:f,programId:e,data:h})}}b.schema={struct:{tag:"u8",validation:"u8",signature:{array:{type:"u8"}},expectedPubkey:{array:{type:"u8"}}}};class _{constructor(e){this.tag=3,this.staleness=e.staleness}serialize(){return y(_.schema,this)}getInstruction(e,i,n,s,o,a,u,c,h){const f=r.__exports.Buffer.from(this.serialize());let p=[];return p.push({pubkey:i,isSigner:!1,isWritable:!1}),p.push({pubkey:n,isSigner:!1,isWritable:!1}),p.push({pubkey:s,isSigner:!0,isWritable:!0}),p.push({pubkey:o,isSigner:!1,isWritable:!0}),p.push({pubkey:a,isSigner:!1,isWritable:!0}),p.push({pubkey:u,isSigner:!1,isWritable:!0}),p.push({pubkey:c,isSigner:!1,isWritable:!1}),p.push({pubkey:h,isSigner:!0,isWritable:!0}),new t.TransactionInstruction({keys:p,programId:e,data:f})}}_.schema={struct:{tag:"u8",staleness:"bool"}};class v{constructor(e){this.tag=2,this.record=e.record,this.content=e.content}serialize(){return y(v.schema,this)}getInstruction(e,i,n,s,o,a,u,c){const h=r.__exports.Buffer.from(this.serialize());let f=[];return f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!0,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!0,isWritable:!0}),f.push({pubkey:c,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:f,programId:e,data:h})}}v.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class m{constructor(){this.tag=5}serialize(){return y(m.schema,this)}getInstruction(e,i,n,s,o,a,u,c){const h=r.__exports.Buffer.from(this.serialize());let f=[];return f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!0,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!0,isWritable:!0}),f.push({pubkey:c,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:f,programId:e,data:h})}}m.schema={struct:{tag:"u8"}};class w{constructor(e){this.tag=6,this.roaId=e.roaId}serialize(){return y(w.schema,this)}getInstruction(e,i,n,s,o,a,u,c){const h=r.__exports.Buffer.from(this.serialize());let f=[];return f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!0,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!0,isWritable:!0}),f.push({pubkey:c,isSigner:!1,isWritable:!1}),new t.TransactionInstruction({keys:f,programId:e,data:h})}}w.schema={struct:{tag:"u8",roaId:{array:{type:"u8"}}}};const k=new t.PublicKey("HP3D4D1ZCmohQGFVms2SS4LCANgJyksBf5s1F77FuFjZ"),[S]=t.PublicKey.findProgramAddressSync([k.toBuffer()],k);var I;exports.Validation=void 0,(I=exports.Validation||(exports.Validation={}))[I.None=0]="None",I[I.Solana=1]="Solana",I[I.Ethereum=2]="Ethereum",I[I.UnverifiedSolana=3]="UnverifiedSolana";const x=e=>{switch(e){case exports.Validation.None:return 0;case exports.Validation.Ethereum:return 20;case exports.Validation.Solana:case exports.Validation.UnverifiedSolana:return 32;default:throw new Error("Invalid validation enum")}};class A{constructor(e){this.stalenessValidation=e.stalenessValidation,this.rightOfAssociationValidation=e.rightOfAssociationValidation,this.contentLength=e.contentLength}static deserialize(e){return new A((t=this.schema,r=e,void 0===(i=!0)&&(i=!0),i&&p(t),new l(r).decode(t)));var t,r,i}static async retrieve(e,t){const r=await e.getAccountInfo(t);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data.slice(96,96+this.LEN))}}A.LEN=8,A.schema={struct:{stalenessValidation:"u16",rightOfAssociationValidation:"u16",contentLength:"u32"}};class W{constructor(e,t){this.data=t,this.header=e}static deserialize(e){const t=A.deserialize(e.slice(96,96+A.LEN)),r=e.slice(96+A.LEN);return new W(t,r)}static async retrieve(e,t){const r=await e.getAccountInfo(t);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data)}static async retrieveBatch(e,t){return(await e.getMultipleAccountsInfo(t)).map((e=>{if(null==e?void 0:e.data)return this.deserialize(e.data)}))}getContent(){let e=x(this.header.stalenessValidation)+x(this.header.rightOfAssociationValidation);return this.data.slice(e)}getStalenessId(){let e=x(this.header.stalenessValidation);return this.data.slice(0,e)}getRoAId(){let e=x(this.header.stalenessValidation),t=e+x(this.header.rightOfAssociationValidation);return this.data.slice(e,t)}}exports.CENTRAL_STATE_SNS_RECORDS=S,exports.Record=W,exports.RecordHeader=A,exports.SNS_RECORDS_ID=k,exports.allocateAndPostRecord=(e,r,i,n,s,o,a,u)=>new g({record:o,content:Array.from(a)}).getInstruction(u,t.SystemProgram.programId,s,e,r,i,n,S),exports.allocateAndPostRecordInstruction=g,exports.deleteRecord=(e,r,i,n,s,o)=>(new m).getInstruction(o,t.SystemProgram.programId,s,e,n,r,i,S),exports.deleteRecordInstruction=m,exports.editRecord=(e,r,i,n,s,o,a,u)=>new v({record:o,content:Array.from(a)}).getInstruction(u,t.SystemProgram.programId,s,e,r,i,n,S),exports.editRecordInstruction=v,exports.getValidationLength=x,exports.validateEthSignature=(e,r,i,n,s,o,a,u,c)=>new b({validation:o,signature:Array.from(a),expectedPubkey:Array.from(u)}).getInstruction(c,t.SystemProgram.programId,s,e,r,i,n,S),exports.validateEthereumSignatureInstruction=b,exports.validateSolanaSignature=(e,r,i,n,s,o,a,u)=>new _({staleness:a}).getInstruction(u,t.SystemProgram.programId,o,e,r,i,n,S,s),exports.validateSolanaSignatureInstruction=_,exports.writeRoa=(e,r,i,n,s,o,a)=>new w({roaId:Array.from(o.toBuffer())}).getInstruction(a,t.SystemProgram.programId,r,e,i,n,s,S),exports.writeRoaInstruction=w;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../../../../node_modules/@bonfida/sns-records/dist/index.mjs"],"sourcesContent":["import{TransactionInstruction as e,PublicKey as t,SystemProgram as r}from\"@solana/web3.js\";var i,n=[\"u8\",\"u16\",\"u32\",\"u64\",\"u128\",\"i8\",\"i16\",\"i32\",\"i64\",\"i128\",\"f32\",\"f64\"],s=function(){function e(){this.offset=0,this.buffer_size=256,this.buffer=new ArrayBuffer(this.buffer_size),this.view=new DataView(this.buffer)}return e.prototype.resize_if_necessary=function(e){if(this.buffer_size-this.offset<e){this.buffer_size=Math.max(2*this.buffer_size,this.buffer_size+e);var t=new ArrayBuffer(this.buffer_size);new Uint8Array(t).set(new Uint8Array(this.buffer)),this.buffer=t,this.view=new DataView(t)}},e.prototype.get_used_buffer=function(){return new Uint8Array(this.buffer).slice(0,this.offset)},e.prototype.store_value=function(e,t){var r=t.substring(1),i=parseInt(r)/8;this.resize_if_necessary(i);var n=\"f\"===t[0]?\"setFloat\".concat(r):\"i\"===t[0]?\"setInt\".concat(r):\"setUint\".concat(r);this.view[n](this.offset,e,!0),this.offset+=i},e.prototype.store_bytes=function(e){this.resize_if_necessary(e.length),new Uint8Array(this.buffer).set(new Uint8Array(e),this.offset),this.offset+=e.length},e}(),o=function(){function e(e){this.offset=0,this.buffer_size=e.length,this.buffer=new ArrayBuffer(e.length),new Uint8Array(this.buffer).set(e),this.view=new DataView(this.buffer)}return e.prototype.assert_enough_buffer=function(e){if(this.offset+e>this.buffer.byteLength)throw new Error(\"Error in schema, the buffer is smaller than expected\")},e.prototype.consume_value=function(e){var t=e.substring(1),r=parseInt(t)/8;this.assert_enough_buffer(r);var i=\"f\"===e[0]?\"getFloat\".concat(t):\"i\"===e[0]?\"getInt\".concat(t):\"getUint\".concat(t),n=this.view[i](this.offset,!0);return this.offset+=r,n},e.prototype.consume_bytes=function(e){this.assert_enough_buffer(e);var t=this.buffer.slice(this.offset,this.offset+e);return this.offset+=e,t},e}(),a=(i=function(e,t){return i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},i(e,t)},function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});function u(e,t,r){if(typeof e!==t)throw new Error(\"Expected \".concat(t,\" not \").concat(typeof e,\"(\").concat(e,\") at \").concat(r.join(\".\")))}function c(e,t,r){if(e!==t)throw new Error(\"Array length \".concat(e,\" does not match schema length \").concat(t,\" at \").concat(r.join(\".\")))}var h=n.concat([\"bool\",\"string\"]),f=[\"option\",\"enum\",\"array\",\"set\",\"map\",\"struct\"],p=function(e){function t(t,r){var i=\"Invalid schema: \".concat(JSON.stringify(t),\" expected \").concat(r);return e.call(this,i)||this}return a(t,e),t}(Error);function l(e){if(\"string\"!=typeof e||!h.includes(e)){if(e&&\"object\"==typeof e){var t=Object.keys(e);if(1===t.length&&f.includes(t[0])){var r=t[0];if(\"option\"===r)return l(e[r]);if(\"enum\"===r)return function(e){if(!Array.isArray(e))throw new p(e,\"Array\");for(var t=0,r=e;t<r.length;t++){var i=r[t];if(\"object\"!=typeof i||!(\"struct\"in i))throw new Error('Missing \"struct\" key in enum schema');if(\"object\"!=typeof i.struct||1!==Object.keys(i.struct).length)throw new Error('The \"struct\" in each enum must have a single key');l({struct:i.struct})}}(e[r]);if(\"array\"===r)return function(e){if(\"object\"!=typeof e)throw new p(e,\"{ type, len? }\");if(e.len&&\"number\"!=typeof e.len)throw new Error(\"Invalid schema: \".concat(e));if(\"type\"in e)return l(e.type);throw new p(e,\"{ type, len? }\")}(e[r]);if(\"set\"===r)return l(e[r]);if(\"map\"===r)return function(e){if(\"object\"!=typeof e||!(\"key\"in e)||!(\"value\"in e))throw new p(e,\"{ key, value }\");l(e.key),l(e.value)}(e[r]);if(\"struct\"===r)return function(e){if(\"object\"!=typeof e)throw new p(e,\"object\");for(var t in e)l(e[t])}(e[r])}}throw new p(e,f.join(\", \")+\" or \"+h.join(\", \"))}}var d=function(){function e(e){this.encoded=new s,this.fieldPath=[\"value\"],this.checkTypes=e}return e.prototype.encode=function(e,t){return this.encode_value(e,t),this.encoded.get_used_buffer()},e.prototype.encode_value=function(e,t){if(\"string\"==typeof t){if(n.includes(t))return this.encode_integer(e,t);if(\"string\"===t)return this.encode_string(e);if(\"bool\"===t)return this.encode_boolean(e)}if(\"object\"==typeof t){if(\"option\"in t)return this.encode_option(e,t);if(\"enum\"in t)return this.encode_enum(e,t);if(\"array\"in t)return this.encode_array(e,t);if(\"set\"in t)return this.encode_set(e,t);if(\"map\"in t)return this.encode_map(e,t);if(\"struct\"in t)return this.encode_struct(e,t)}},e.prototype.encode_integer=function(e,t){var r=parseInt(t.substring(1));r<=32||\"f64\"==t?(this.checkTypes&&u(e,\"number\",this.fieldPath),this.encoded.store_value(e,t)):(this.checkTypes&&function(e,t){if(!([\"number\",\"string\",\"bigint\",\"boolean\"].includes(typeof e)||\"object\"==typeof e&&null!==e&&\"toString\"in e))throw new Error(\"Expected bigint, number, boolean or string not \".concat(typeof e,\"(\").concat(e,\") at \").concat(t.join(\".\")))}(e,this.fieldPath),this.encode_bigint(BigInt(e),r))},e.prototype.encode_bigint=function(e,t){for(var r=t/8,i=new Uint8Array(r),n=0;n<r;n++)i[n]=Number(e&BigInt(255)),e>>=BigInt(8);this.encoded.store_bytes(new Uint8Array(i))},e.prototype.encode_string=function(e){this.checkTypes&&u(e,\"string\",this.fieldPath);var t=e;this.encoded.store_value(t.length,\"u32\");for(var r=0;r<t.length;r++)this.encoded.store_value(t.charCodeAt(r),\"u8\")},e.prototype.encode_boolean=function(e){this.checkTypes&&u(e,\"boolean\",this.fieldPath),this.encoded.store_value(e?1:0,\"u8\")},e.prototype.encode_option=function(e,t){null==e?this.encoded.store_value(0,\"u8\"):(this.encoded.store_value(1,\"u8\"),this.encode_value(e,t.option))},e.prototype.encode_enum=function(e,t){this.checkTypes&&function(e,t){if(\"object\"!=typeof e||null===e)throw new Error(\"Expected object not \".concat(typeof e,\"(\").concat(e,\") at \").concat(t.join(\".\")))}(e,this.fieldPath);for(var r=Object.keys(e)[0],i=0;i<t.enum.length;i++){var n=t.enum[i];if(r===Object.keys(n.struct)[0])return this.encoded.store_value(i,\"u8\"),this.encode_struct(e,n)}throw new Error(\"Enum key (\".concat(r,\") not found in enum schema: \").concat(JSON.stringify(t),\" at \").concat(this.fieldPath.join(\".\")))},e.prototype.encode_array=function(e,t){if(function(e){return Array.isArray(e)||!!e&&\"object\"==typeof e&&\"length\"in e&&\"number\"==typeof e.length&&(0===e.length||e.length>0&&e.length-1 in e)}(e))return this.encode_arraylike(e,t);if(e instanceof ArrayBuffer)return this.encode_buffer(e,t);throw new Error(\"Expected Array-like not \".concat(typeof e,\"(\").concat(e,\") at \").concat(this.fieldPath.join(\".\")))},e.prototype.encode_arraylike=function(e,t){t.array.len?c(e.length,t.array.len,this.fieldPath):this.encoded.store_value(e.length,\"u32\");for(var r=0;r<e.length;r++)this.encode_value(e[r],t.array.type)},e.prototype.encode_buffer=function(e,t){t.array.len?c(e.byteLength,t.array.len,this.fieldPath):this.encoded.store_value(e.byteLength,\"u32\"),this.encoded.store_bytes(new Uint8Array(e))},e.prototype.encode_set=function(e,t){this.checkTypes&&u(e,\"object\",this.fieldPath);var r=e instanceof Set?Array.from(e.values()):Object.values(e);this.encoded.store_value(r.length,\"u32\");for(var i=0,n=r;i<n.length;i++){var s=n[i];this.encode_value(s,t.set)}},e.prototype.encode_map=function(e,t){this.checkTypes&&u(e,\"object\",this.fieldPath);var r=e instanceof Map,i=r?Array.from(e.keys()):Object.keys(e);this.encoded.store_value(i.length,\"u32\");for(var n=0,s=i;n<s.length;n++){var o=s[n];this.encode_value(o,t.map.key),this.encode_value(r?e.get(o):e[o],t.map.value)}},e.prototype.encode_struct=function(e,t){this.checkTypes&&u(e,\"object\",this.fieldPath);for(var r=0,i=Object.keys(t.struct);r<i.length;r++){var n=i[r];this.fieldPath.push(n),this.encode_value(e[n],t.struct[n]),this.fieldPath.pop()}},e}(),y=function(){function e(e){this.buffer=new o(e)}return e.prototype.decode=function(e){return this.decode_value(e)},e.prototype.decode_value=function(e){if(\"string\"==typeof e){if(n.includes(e))return this.decode_integer(e);if(\"string\"===e)return this.decode_string();if(\"bool\"===e)return this.decode_boolean()}if(\"object\"==typeof e){if(\"option\"in e)return this.decode_option(e);if(\"enum\"in e)return this.decode_enum(e);if(\"array\"in e)return this.decode_array(e);if(\"set\"in e)return this.decode_set(e);if(\"map\"in e)return this.decode_map(e);if(\"struct\"in e)return this.decode_struct(e)}throw new Error(\"Unsupported type: \".concat(e))},e.prototype.decode_integer=function(e){var t=parseInt(e.substring(1));return t<=32||\"f64\"==e?this.buffer.consume_value(e):this.decode_bigint(t,e.startsWith(\"i\"))},e.prototype.decode_bigint=function(e,t){void 0===t&&(t=!1);var r=e/8,i=new Uint8Array(this.buffer.consume_bytes(r)),n=i.reduceRight((function(e,t){return e+t.toString(16).padStart(2,\"0\")}),\"\");return t&&i[r-1]?BigInt.asIntN(e,BigInt(\"0x\".concat(n))):BigInt(\"0x\".concat(n))},e.prototype.decode_string=function(){var e=this.decode_integer(\"u32\"),t=new Uint8Array(this.buffer.consume_bytes(e));return String.fromCharCode.apply(null,t)},e.prototype.decode_boolean=function(){return this.buffer.consume_value(\"u8\")>0},e.prototype.decode_option=function(e){var t=this.buffer.consume_value(\"u8\");if(1===t)return this.decode_value(e.option);if(0!==t)throw new Error(\"Invalid option \".concat(t));return null},e.prototype.decode_enum=function(e){var t,r=this.buffer.consume_value(\"u8\");if(r>e.enum.length)throw new Error(\"Enum option \".concat(r,\" is not available\"));var i=e.enum[r].struct,n=Object.keys(i)[0];return(t={})[n]=this.decode_value(i[n]),t},e.prototype.decode_array=function(e){for(var t=[],r=e.array.len?e.array.len:this.decode_integer(\"u32\"),i=0;i<r;++i)t.push(this.decode_value(e.array.type));return t},e.prototype.decode_set=function(e){for(var t=this.decode_integer(\"u32\"),r=new Set,i=0;i<t;++i)r.add(this.decode_value(e.set));return r},e.prototype.decode_map=function(e){for(var t=this.decode_integer(\"u32\"),r=new Map,i=0;i<t;++i){var n=this.decode_value(e.map.key),s=this.decode_value(e.map.value);r.set(n,s)}return r},e.prototype.decode_struct=function(e){var t={};for(var r in e.struct)t[r]=this.decode_value(e.struct[r]);return t},e}();function b(e,t,r){return void 0===r&&(r=!0),r&&l(e),new d(r).encode(t,e)}class g{constructor(e){this.tag=1,this.record=e.record,this.content=e.content}serialize(){return b(g.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new e({keys:h,programId:t,data:c})}}g.schema={struct:{tag:\"u8\",record:\"string\",content:{array:{type:\"u8\"}}}};class _{constructor(e){this.tag=4,this.validation=e.validation,this.signature=e.signature,this.expectedPubkey=e.expectedPubkey}serialize(){return b(_.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new e({keys:h,programId:t,data:c})}}_.schema={struct:{tag:\"u8\",validation:\"u8\",signature:{array:{type:\"u8\"}},expectedPubkey:{array:{type:\"u8\"}}}};class v{constructor(e){this.tag=0,this.contentLength=e.contentLength,this.record=e.record}serialize(){return b(v.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new e({keys:h,programId:t,data:c})}}v.schema={struct:{tag:\"u8\",contentLength:\"u32\",record:\"string\"}};class m{constructor(e){this.tag=3,this.staleness=e.staleness}serialize(){return b(m.schema,this)}getInstruction(t,r,i,n,s,o,a,u,c){const h=Buffer.from(this.serialize());let f=[];return f.push({pubkey:r,isSigner:!1,isWritable:!1}),f.push({pubkey:i,isSigner:!1,isWritable:!1}),f.push({pubkey:n,isSigner:!0,isWritable:!0}),f.push({pubkey:s,isSigner:!1,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!1,isWritable:!1}),f.push({pubkey:c,isSigner:!0,isWritable:!0}),new e({keys:f,programId:t,data:h})}}m.schema={struct:{tag:\"u8\",staleness:\"bool\"}};class w{constructor(e){this.tag=2,this.record=e.record,this.content=e.content}serialize(){return b(w.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new e({keys:h,programId:t,data:c})}}w.schema={struct:{tag:\"u8\",record:\"string\",content:{array:{type:\"u8\"}}}};class k{constructor(){this.tag=5}serialize(){return b(k.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new e({keys:h,programId:t,data:c})}}k.schema={struct:{tag:\"u8\"}};class S{constructor(e){this.tag=6,this.roaId=e.roaId}serialize(){return b(S.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!0,isWritable:!0}),h.push({pubkey:u,isSigner:!1,isWritable:!1}),new e({keys:h,programId:t,data:c})}}S.schema={struct:{tag:\"u8\",roaId:{array:{type:\"u8\"}}}};class I{constructor(){this.tag=7}serialize(){return b(I.schema,this)}getInstruction(t,r,i,n,s,o,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:i,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!1,isWritable:!1}),h.push({pubkey:u,isSigner:!0,isWritable:!0}),new e({keys:h,programId:t,data:c})}}I.schema={struct:{tag:\"u8\"}};const W=new t(\"HP3D4D1ZCmohQGFVms2SS4LCANgJyksBf5s1F77FuFjZ\"),[A]=t.findProgramAddressSync([W.toBuffer()],W),j=(e,t,i,n,s,o,a,u)=>new g({record:o,content:Array.from(a)}).getInstruction(u,r.programId,s,e,t,i,n,A),z=(e,t,i,n,s,o,a,u)=>new v({contentLength:a,record:o}).getInstruction(u,r.programId,s,e,t,i,n,A),E=(e,t,i,n,s,o)=>(new k).getInstruction(o,r.programId,s,e,n,t,i,A),P=(e,t,i,n,s,o,a,u)=>new w({record:o,content:Array.from(a)}).getInstruction(u,r.programId,s,e,t,i,n,A),B=(e,t,i,n,s,o,a,u,c)=>new _({validation:o,signature:Array.from(a),expectedPubkey:Array.from(u)}).getInstruction(c,r.programId,s,e,t,i,n,A),O=(e,t,i,n,s,o,a,u)=>new m({staleness:a}).getInstruction(u,r.programId,o,e,t,i,n,A,s),U=(e,t,i,n,s,o,a)=>new S({roaId:Array.from(o.toBuffer())}).getInstruction(a,r.programId,t,e,i,n,s,A),x=(e,t,i,n,s,o)=>(new I).getInstruction(o,r.programId,t,e,i,n,A,s),L=96;var V;!function(e){e[e.None=0]=\"None\",e[e.Solana=1]=\"Solana\",e[e.Ethereum=2]=\"Ethereum\",e[e.UnverifiedSolana=3]=\"UnverifiedSolana\"}(V||(V={}));const N=e=>{switch(e){case V.None:return 0;case V.Ethereum:return 20;case V.Solana:case V.UnverifiedSolana:return 32;default:throw new Error(\"Invalid validation enum\")}};class T{constructor(e){this.stalenessValidation=e.stalenessValidation,this.rightOfAssociationValidation=e.rightOfAssociationValidation,this.contentLength=e.contentLength}static deserialize(e){return new T((t=this.schema,r=e,void 0===(i=!0)&&(i=!0),i&&l(t),new y(r).decode(t)));var t,r,i}static async retrieve(e,t){const r=await e.getAccountInfo(t);if(!r||!r.data)throw new Error(\"Record header account not found\");return this.deserialize(r.data.slice(96,96+this.LEN))}}T.LEN=8,T.schema={struct:{stalenessValidation:\"u16\",rightOfAssociationValidation:\"u16\",contentLength:\"u32\"}};class C{constructor(e,t){this.data=t,this.header=e}static deserialize(e){const t=T.deserialize(e.slice(96,96+T.LEN)),r=e.slice(96+T.LEN);return new C(t,r)}static async retrieve(e,t){const r=await e.getAccountInfo(t);if(!r||!r.data)throw new Error(\"Record header account not found\");return this.deserialize(r.data)}static async retrieveBatch(e,t){return(await e.getMultipleAccountsInfo(t)).map((e=>{if(null==e?void 0:e.data)return this.deserialize(e.data)}))}getContent(){let e=N(this.header.stalenessValidation)+N(this.header.rightOfAssociationValidation);return this.data.slice(e)}getStalenessId(){let e=N(this.header.stalenessValidation);return this.data.slice(0,e)}getRoAId(){let e=N(this.header.stalenessValidation),t=e+N(this.header.rightOfAssociationValidation);return this.data.slice(e,t)}}export{A as CENTRAL_STATE_SNS_RECORDS,L as NAME_REGISTRY_LEN,C as Record,T as RecordHeader,W as SNS_RECORDS_ID,V as Validation,j as allocateAndPostRecord,g as allocateAndPostRecordInstruction,z as allocateRecord,v as allocateRecordInstruction,E as deleteRecord,k as deleteRecordInstruction,P as editRecord,w as editRecordInstruction,N as getValidationLength,x as unverifyRoa,I as unverifyRoaInstruction,B as validateEthSignature,_ as validateEthereumSignatureInstruction,O as validateSolanaSignature,m as validateSolanaSignatureInstruction,U as writeRoa,S as writeRoaInstruction};\n//# sourceMappingURL=index.mjs.map\n"],"names":["n"],"mappings":"gDAAWA,EAAW,CAAC,KAAM,MAAO,MAAO,MAAO,OAAQ,KAAM,MAAO,MAAO,MAAO,OAAQ,MAAO","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.cjs","sources":["../../../../../../../node_modules/@noble/curves/esm/abstract/utils.js"],"sourcesContent":["/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// 100 lines of code in the file are duplicated from noble-hashes (utils).\n// This is OK: `abstract` directory does not use noble-hashes.\n// User may opt-in into using different hashing library. This way, noble-hashes\n// won't be included into their bundle.\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nexport function isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nexport function abytes(item) {\n if (!isBytes(item))\n throw new Error('Uint8Array expected');\n}\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nexport function bytesToHex(bytes) {\n abytes(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\nexport function numberToHexUnpadded(num) {\n const hex = num.toString(16);\n return hex.length & 1 ? `0${hex}` : hex;\n}\nexport function hexToNumber(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // Big Endian\n return BigInt(hex === '' ? '0' : `0x${hex}`);\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nexport function hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\n// BE: Big Endian, LE: Little Endian\nexport function bytesToNumberBE(bytes) {\n return hexToNumber(bytesToHex(bytes));\n}\nexport function bytesToNumberLE(bytes) {\n abytes(bytes);\n return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));\n}\nexport function numberToBytesBE(n, len) {\n return hexToBytes(n.toString(16).padStart(len * 2, '0'));\n}\nexport function numberToBytesLE(n, len) {\n return numberToBytesBE(n, len).reverse();\n}\n// Unpadded, rarely used\nexport function numberToVarBytesBE(n) {\n return hexToBytes(numberToHexUnpadded(n));\n}\n/**\n * Takes hex string or Uint8Array, converts to Uint8Array.\n * Validates output length.\n * Will throw error for other types.\n * @param title descriptive title for an error e.g. 'private key'\n * @param hex hex string or Uint8Array\n * @param expectedLength optional, will compare to result array's length\n * @returns\n */\nexport function ensureBytes(title, hex, expectedLength) {\n let res;\n if (typeof hex === 'string') {\n try {\n res = hexToBytes(hex);\n }\n catch (e) {\n throw new Error(`${title} must be valid hex string, got \"${hex}\". Cause: ${e}`);\n }\n }\n else if (isBytes(hex)) {\n // Uint8Array.from() instead of hash.slice() because node.js Buffer\n // is instance of Uint8Array, and its slice() creates **mutable** copy\n res = Uint8Array.from(hex);\n }\n else {\n throw new Error(`${title} must be hex string or Uint8Array`);\n }\n const len = res.length;\n if (typeof expectedLength === 'number' && len !== expectedLength)\n throw new Error(`${title} expected ${expectedLength} bytes, got ${len}`);\n return res;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nexport function concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n// Compares 2 u8a-s in kinda constant time\nexport function equalBytes(a, b) {\n if (a.length !== b.length)\n return false;\n let diff = 0;\n for (let i = 0; i < a.length; i++)\n diff |= a[i] ^ b[i];\n return diff === 0;\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nexport function utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n// Bit operations\n/**\n * Calculates amount of bits in a bigint.\n * Same as `n.toString(2).length`\n */\nexport function bitLen(n) {\n let len;\n for (len = 0; n > _0n; n >>= _1n, len += 1)\n ;\n return len;\n}\n/**\n * Gets single bit at position.\n * NOTE: first bit position is 0 (same as arrays)\n * Same as `!!+Array.from(n.toString(2)).reverse()[pos]`\n */\nexport function bitGet(n, pos) {\n return (n >> BigInt(pos)) & _1n;\n}\n/**\n * Sets single bit at position.\n */\nexport function bitSet(n, pos, value) {\n return n | ((value ? _1n : _0n) << BigInt(pos));\n}\n/**\n * Calculate mask for N bits. Not using ** operator with bigints because of old engines.\n * Same as BigInt(`0b${Array(i).fill('1').join('')}`)\n */\nexport const bitMask = (n) => (_2n << BigInt(n - 1)) - _1n;\n// DRBG\nconst u8n = (data) => new Uint8Array(data); // creates Uint8Array\nconst u8fr = (arr) => Uint8Array.from(arr); // another shortcut\n/**\n * Minimal HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n * @returns function that will call DRBG until 2nd arg returns something meaningful\n * @example\n * const drbg = createHmacDRBG<Key>(32, 32, hmac);\n * drbg(seed, bytesToKey); // bytesToKey must return Key or undefined\n */\nexport function createHmacDrbg(hashLen, qByteLen, hmacFn) {\n if (typeof hashLen !== 'number' || hashLen < 2)\n throw new Error('hashLen must be a number');\n if (typeof qByteLen !== 'number' || qByteLen < 2)\n throw new Error('qByteLen must be a number');\n if (typeof hmacFn !== 'function')\n throw new Error('hmacFn must be a function');\n // Step B, Step C: set hashLen to 8*ceil(hlen/8)\n let v = u8n(hashLen); // Minimal non-full-spec HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n let k = u8n(hashLen); // Steps B and C of RFC6979 3.2: set hashLen, in our case always same\n let i = 0; // Iterations counter, will throw when over 1000\n const reset = () => {\n v.fill(1);\n k.fill(0);\n i = 0;\n };\n const h = (...b) => hmacFn(k, v, ...b); // hmac(k)(v, ...values)\n const reseed = (seed = u8n()) => {\n // HMAC-DRBG reseed() function. Steps D-G\n k = h(u8fr([0x00]), seed); // k = hmac(k || v || 0x00 || seed)\n v = h(); // v = hmac(k || v)\n if (seed.length === 0)\n return;\n k = h(u8fr([0x01]), seed); // k = hmac(k || v || 0x01 || seed)\n v = h(); // v = hmac(k || v)\n };\n const gen = () => {\n // HMAC-DRBG generate() function\n if (i++ >= 1000)\n throw new Error('drbg: tried 1000 values');\n let len = 0;\n const out = [];\n while (len < qByteLen) {\n v = h();\n const sl = v.slice();\n out.push(sl);\n len += v.length;\n }\n return concatBytes(...out);\n };\n const genUntil = (seed, pred) => {\n reset();\n reseed(seed); // Steps D-G\n let res = undefined; // Step H: grind until k is in [1..n-1]\n while (!(res = pred(gen())))\n reseed();\n reset();\n return res;\n };\n return genUntil;\n}\n// Validating curves and fields\nconst validatorFns = {\n bigint: (val) => typeof val === 'bigint',\n function: (val) => typeof val === 'function',\n boolean: (val) => typeof val === 'boolean',\n string: (val) => typeof val === 'string',\n stringOrUint8Array: (val) => typeof val === 'string' || isBytes(val),\n isSafeInteger: (val) => Number.isSafeInteger(val),\n array: (val) => Array.isArray(val),\n field: (val, object) => object.Fp.isValid(val),\n hash: (val) => typeof val === 'function' && Number.isSafeInteger(val.outputLen),\n};\n// type Record<K extends string | number | symbol, T> = { [P in K]: T; }\nexport function validateObject(object, validators, optValidators = {}) {\n const checkField = (fieldName, type, isOptional) => {\n const checkVal = validatorFns[type];\n if (typeof checkVal !== 'function')\n throw new Error(`Invalid validator \"${type}\", expected function`);\n const val = object[fieldName];\n if (isOptional && val === undefined)\n return;\n if (!checkVal(val, object)) {\n throw new Error(`Invalid param ${String(fieldName)}=${val} (${typeof val}), expected ${type}`);\n }\n };\n for (const [fieldName, type] of Object.entries(validators))\n checkField(fieldName, type, false);\n for (const [fieldName, type] of Object.entries(optValidators))\n checkField(fieldName, type, true);\n return object;\n}\n// validate type tests\n// const o: { a: number; b: number; c: number } = { a: 1, b: 5, c: 6 };\n// const z0 = validateObject(o, { a: 'isSafeInteger' }, { c: 'bigint' }); // Ok!\n// // Should fail type-check\n// const z1 = validateObject(o, { a: 'tmp' }, { c: 'zz' });\n// const z2 = validateObject(o, { a: 'isSafeInteger' }, { c: 'zz' });\n// const z3 = validateObject(o, { test: 'boolean', z: 'bug' });\n// const z4 = validateObject(o, { a: 'boolean', z: 'bug' });\n//# sourceMappingURL=utils.js.map"],"names":["BigInt","_1n","_2n","isBytes","a","Uint8Array","constructor","name","abytes","item","Error","hexes","Array","from","length","_","i","toString","padStart","bytesToHex","bytes","hex","hexToNumber","asciis","_0","_9","_A","_F","_a","_f","asciiToBase16","char","hexToBytes","hl","al","array","ai","hi","n1","charCodeAt","n2","undefined","numberToBytesBE","n","len","bitMask","validatorFns","bigint","val","function","boolean","string","stringOrUint8Array","isSafeInteger","Number","isArray","field","object","Fp","isValid","hash","outputLen","reverse","arrays","sum","res","pad","set","title","expectedLength","e","validators","optValidators","checkField","fieldName","type","isOptional","checkVal","String","Object","entries"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"utils.cjs","sources":["../../../../../../../node_modules/@noble/curves/esm/abstract/utils.js"],"sourcesContent":["/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// 100 lines of code in the file are duplicated from noble-hashes (utils).\n// This is OK: `abstract` directory does not use noble-hashes.\n// User may opt-in into using different hashing library. This way, noble-hashes\n// won't be included into their bundle.\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nexport function isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nexport function abytes(item) {\n if (!isBytes(item))\n throw new Error('Uint8Array expected');\n}\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nexport function bytesToHex(bytes) {\n abytes(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\nexport function numberToHexUnpadded(num) {\n const hex = num.toString(16);\n return hex.length & 1 ? `0${hex}` : hex;\n}\nexport function hexToNumber(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // Big Endian\n return BigInt(hex === '' ? '0' : `0x${hex}`);\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nexport function hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\n// BE: Big Endian, LE: Little Endian\nexport function bytesToNumberBE(bytes) {\n return hexToNumber(bytesToHex(bytes));\n}\nexport function bytesToNumberLE(bytes) {\n abytes(bytes);\n return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));\n}\nexport function numberToBytesBE(n, len) {\n return hexToBytes(n.toString(16).padStart(len * 2, '0'));\n}\nexport function numberToBytesLE(n, len) {\n return numberToBytesBE(n, len).reverse();\n}\n// Unpadded, rarely used\nexport function numberToVarBytesBE(n) {\n return hexToBytes(numberToHexUnpadded(n));\n}\n/**\n * Takes hex string or Uint8Array, converts to Uint8Array.\n * Validates output length.\n * Will throw error for other types.\n * @param title descriptive title for an error e.g. 'private key'\n * @param hex hex string or Uint8Array\n * @param expectedLength optional, will compare to result array's length\n * @returns\n */\nexport function ensureBytes(title, hex, expectedLength) {\n let res;\n if (typeof hex === 'string') {\n try {\n res = hexToBytes(hex);\n }\n catch (e) {\n throw new Error(`${title} must be valid hex string, got \"${hex}\". Cause: ${e}`);\n }\n }\n else if (isBytes(hex)) {\n // Uint8Array.from() instead of hash.slice() because node.js Buffer\n // is instance of Uint8Array, and its slice() creates **mutable** copy\n res = Uint8Array.from(hex);\n }\n else {\n throw new Error(`${title} must be hex string or Uint8Array`);\n }\n const len = res.length;\n if (typeof expectedLength === 'number' && len !== expectedLength)\n throw new Error(`${title} expected ${expectedLength} bytes, got ${len}`);\n return res;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nexport function concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n// Compares 2 u8a-s in kinda constant time\nexport function equalBytes(a, b) {\n if (a.length !== b.length)\n return false;\n let diff = 0;\n for (let i = 0; i < a.length; i++)\n diff |= a[i] ^ b[i];\n return diff === 0;\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nexport function utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n// Bit operations\n/**\n * Calculates amount of bits in a bigint.\n * Same as `n.toString(2).length`\n */\nexport function bitLen(n) {\n let len;\n for (len = 0; n > _0n; n >>= _1n, len += 1)\n ;\n return len;\n}\n/**\n * Gets single bit at position.\n * NOTE: first bit position is 0 (same as arrays)\n * Same as `!!+Array.from(n.toString(2)).reverse()[pos]`\n */\nexport function bitGet(n, pos) {\n return (n >> BigInt(pos)) & _1n;\n}\n/**\n * Sets single bit at position.\n */\nexport function bitSet(n, pos, value) {\n return n | ((value ? _1n : _0n) << BigInt(pos));\n}\n/**\n * Calculate mask for N bits. Not using ** operator with bigints because of old engines.\n * Same as BigInt(`0b${Array(i).fill('1').join('')}`)\n */\nexport const bitMask = (n) => (_2n << BigInt(n - 1)) - _1n;\n// DRBG\nconst u8n = (data) => new Uint8Array(data); // creates Uint8Array\nconst u8fr = (arr) => Uint8Array.from(arr); // another shortcut\n/**\n * Minimal HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n * @returns function that will call DRBG until 2nd arg returns something meaningful\n * @example\n * const drbg = createHmacDRBG<Key>(32, 32, hmac);\n * drbg(seed, bytesToKey); // bytesToKey must return Key or undefined\n */\nexport function createHmacDrbg(hashLen, qByteLen, hmacFn) {\n if (typeof hashLen !== 'number' || hashLen < 2)\n throw new Error('hashLen must be a number');\n if (typeof qByteLen !== 'number' || qByteLen < 2)\n throw new Error('qByteLen must be a number');\n if (typeof hmacFn !== 'function')\n throw new Error('hmacFn must be a function');\n // Step B, Step C: set hashLen to 8*ceil(hlen/8)\n let v = u8n(hashLen); // Minimal non-full-spec HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n let k = u8n(hashLen); // Steps B and C of RFC6979 3.2: set hashLen, in our case always same\n let i = 0; // Iterations counter, will throw when over 1000\n const reset = () => {\n v.fill(1);\n k.fill(0);\n i = 0;\n };\n const h = (...b) => hmacFn(k, v, ...b); // hmac(k)(v, ...values)\n const reseed = (seed = u8n()) => {\n // HMAC-DRBG reseed() function. Steps D-G\n k = h(u8fr([0x00]), seed); // k = hmac(k || v || 0x00 || seed)\n v = h(); // v = hmac(k || v)\n if (seed.length === 0)\n return;\n k = h(u8fr([0x01]), seed); // k = hmac(k || v || 0x01 || seed)\n v = h(); // v = hmac(k || v)\n };\n const gen = () => {\n // HMAC-DRBG generate() function\n if (i++ >= 1000)\n throw new Error('drbg: tried 1000 values');\n let len = 0;\n const out = [];\n while (len < qByteLen) {\n v = h();\n const sl = v.slice();\n out.push(sl);\n len += v.length;\n }\n return concatBytes(...out);\n };\n const genUntil = (seed, pred) => {\n reset();\n reseed(seed); // Steps D-G\n let res = undefined; // Step H: grind until k is in [1..n-1]\n while (!(res = pred(gen())))\n reseed();\n reset();\n return res;\n };\n return genUntil;\n}\n// Validating curves and fields\nconst validatorFns = {\n bigint: (val) => typeof val === 'bigint',\n function: (val) => typeof val === 'function',\n boolean: (val) => typeof val === 'boolean',\n string: (val) => typeof val === 'string',\n stringOrUint8Array: (val) => typeof val === 'string' || isBytes(val),\n isSafeInteger: (val) => Number.isSafeInteger(val),\n array: (val) => Array.isArray(val),\n field: (val, object) => object.Fp.isValid(val),\n hash: (val) => typeof val === 'function' && Number.isSafeInteger(val.outputLen),\n};\n// type Record<K extends string | number | symbol, T> = { [P in K]: T; }\nexport function validateObject(object, validators, optValidators = {}) {\n const checkField = (fieldName, type, isOptional) => {\n const checkVal = validatorFns[type];\n if (typeof checkVal !== 'function')\n throw new Error(`Invalid validator \"${type}\", expected function`);\n const val = object[fieldName];\n if (isOptional && val === undefined)\n return;\n if (!checkVal(val, object)) {\n throw new Error(`Invalid param ${String(fieldName)}=${val} (${typeof val}), expected ${type}`);\n }\n };\n for (const [fieldName, type] of Object.entries(validators))\n checkField(fieldName, type, false);\n for (const [fieldName, type] of Object.entries(optValidators))\n checkField(fieldName, type, true);\n return object;\n}\n// validate type tests\n// const o: { a: number; b: number; c: number } = { a: 1, b: 5, c: 6 };\n// const z0 = validateObject(o, { a: 'isSafeInteger' }, { c: 'bigint' }); // Ok!\n// // Should fail type-check\n// const z1 = validateObject(o, { a: 'tmp' }, { c: 'zz' });\n// const z2 = validateObject(o, { a: 'isSafeInteger' }, { c: 'zz' });\n// const z3 = validateObject(o, { test: 'boolean', z: 'bug' });\n// const z4 = validateObject(o, { a: 'boolean', z: 'bug' });\n//# sourceMappingURL=utils.js.map"],"names":["BigInt","_1n","_2n","isBytes","a","Uint8Array","constructor","name","abytes","item","Error","hexes","Array","from","length","_","i","toString","padStart","bytesToHex","bytes","hex","hexToNumber","asciis","_0","_9","_A","_F","_a","_f","asciiToBase16","char","hexToBytes","hl","al","array","ai","hi","n1","charCodeAt","n2","undefined","numberToBytesBE","n","len","bitMask","validatorFns","bigint","val","function","boolean","string","stringOrUint8Array","isSafeInteger","Number","isArray","field","object","Fp","isValid","hash","outputLen","reverse","arrays","sum","res","pad","set","title","expectedLength","e"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/cjs/node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@solana/web3.js"),r=require("../constants.cjs");exports.createAssociatedTokenAccountIdempotentInstruction=function(
|
|
1
|
+
"use strict";require("../../../../../buffer/index.cjs");var e=require("@solana/web3.js"),r=require("../constants.cjs"),i=require("../../../../../../_virtual/index.cjs");exports.createAssociatedTokenAccountIdempotentInstruction=function(s,t,n,u,a=r.TOKEN_PROGRAM_ID,o=r.ASSOCIATED_TOKEN_PROGRAM_ID){return function(i,s,t,n,u,a=r.TOKEN_PROGRAM_ID,o=r.ASSOCIATED_TOKEN_PROGRAM_ID){const c=[{pubkey:i,isSigner:!0,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:t,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:e.SystemProgram.programId,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!1}];return new e.TransactionInstruction({keys:c,programId:o,data:u})}(s,t,n,u,i.__exports.Buffer.from([1]),a,o)};
|
|
2
2
|
//# sourceMappingURL=associatedTokenAccount.cjs.map
|
package/dist/cjs/node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"associatedTokenAccount.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.js"],"sourcesContent":["import { SystemProgram, TransactionInstruction } from '@solana/web3.js';\nimport { ASSOCIATED_TOKEN_PROGRAM_ID, TOKEN_PROGRAM_ID } from '../constants.js';\n/**\n * Construct a CreateAssociatedTokenAccount instruction\n *\n * @param payer Payer of the initialization fees\n * @param associatedToken New associated token account\n * @param owner Owner of the new account\n * @param mint Token mint account\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function createAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n return buildAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, Buffer.alloc(0), programId, associatedTokenProgramId);\n}\n/**\n * Construct a CreateAssociatedTokenAccountIdempotent instruction\n *\n * @param payer Payer of the initialization fees\n * @param associatedToken New associated token account\n * @param owner Owner of the new account\n * @param mint Token mint account\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function createAssociatedTokenAccountIdempotentInstruction(payer, associatedToken, owner, mint, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n return buildAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, Buffer.from([1]), programId, associatedTokenProgramId);\n}\nfunction buildAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, instructionData, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n const keys = [\n { pubkey: payer, isSigner: true, isWritable: true },\n { pubkey: associatedToken, isSigner: false, isWritable: true },\n { pubkey: owner, isSigner: false, isWritable: false },\n { pubkey: mint, isSigner: false, isWritable: false },\n { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },\n { pubkey: programId, isSigner: false, isWritable: false },\n ];\n return new TransactionInstruction({\n keys,\n programId: associatedTokenProgramId,\n data: instructionData,\n });\n}\n/**\n * Construct a RecoverNested instruction\n *\n * @param nestedAssociatedToken Nested associated token account (must be owned by `ownerAssociatedToken`)\n * @param nestedMint Token mint for the nested associated token account\n * @param destinationAssociatedToken Wallet's associated token account\n * @param ownerAssociatedToken Owner associated token account address (must be owned by `owner`)\n * @param ownerMint Token mint for the owner associated token account\n * @param owner Wallet address for the owner associated token account\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function createRecoverNestedInstruction(nestedAssociatedToken, nestedMint, destinationAssociatedToken, ownerAssociatedToken, ownerMint, owner, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n const keys = [\n { pubkey: nestedAssociatedToken, isSigner: false, isWritable: true },\n { pubkey: nestedMint, isSigner: false, isWritable: false },\n { pubkey: destinationAssociatedToken, isSigner: false, isWritable: true },\n { pubkey: ownerAssociatedToken, isSigner: false, isWritable: true },\n { pubkey: ownerMint, isSigner: false, isWritable: false },\n { pubkey: owner, isSigner: true, isWritable: true },\n { pubkey: programId, isSigner: false, isWritable: false },\n ];\n return new TransactionInstruction({\n keys,\n programId: associatedTokenProgramId,\n data: Buffer.from([2]),\n });\n}\n//# sourceMappingURL=associatedTokenAccount.js.map"],"names":["payer","associatedToken","owner","mint","programId","TOKEN_PROGRAM_ID","associatedTokenProgramId","ASSOCIATED_TOKEN_PROGRAM_ID","instructionData","keys","pubkey","isSigner","isWritable","
|
|
1
|
+
{"version":3,"file":"associatedTokenAccount.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.js"],"sourcesContent":["import { SystemProgram, TransactionInstruction } from '@solana/web3.js';\nimport { ASSOCIATED_TOKEN_PROGRAM_ID, TOKEN_PROGRAM_ID } from '../constants.js';\n/**\n * Construct a CreateAssociatedTokenAccount instruction\n *\n * @param payer Payer of the initialization fees\n * @param associatedToken New associated token account\n * @param owner Owner of the new account\n * @param mint Token mint account\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function createAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n return buildAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, Buffer.alloc(0), programId, associatedTokenProgramId);\n}\n/**\n * Construct a CreateAssociatedTokenAccountIdempotent instruction\n *\n * @param payer Payer of the initialization fees\n * @param associatedToken New associated token account\n * @param owner Owner of the new account\n * @param mint Token mint account\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function createAssociatedTokenAccountIdempotentInstruction(payer, associatedToken, owner, mint, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n return buildAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, Buffer.from([1]), programId, associatedTokenProgramId);\n}\nfunction buildAssociatedTokenAccountInstruction(payer, associatedToken, owner, mint, instructionData, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n const keys = [\n { pubkey: payer, isSigner: true, isWritable: true },\n { pubkey: associatedToken, isSigner: false, isWritable: true },\n { pubkey: owner, isSigner: false, isWritable: false },\n { pubkey: mint, isSigner: false, isWritable: false },\n { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },\n { pubkey: programId, isSigner: false, isWritable: false },\n ];\n return new TransactionInstruction({\n keys,\n programId: associatedTokenProgramId,\n data: instructionData,\n });\n}\n/**\n * Construct a RecoverNested instruction\n *\n * @param nestedAssociatedToken Nested associated token account (must be owned by `ownerAssociatedToken`)\n * @param nestedMint Token mint for the nested associated token account\n * @param destinationAssociatedToken Wallet's associated token account\n * @param ownerAssociatedToken Owner associated token account address (must be owned by `owner`)\n * @param ownerMint Token mint for the owner associated token account\n * @param owner Wallet address for the owner associated token account\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function createRecoverNestedInstruction(nestedAssociatedToken, nestedMint, destinationAssociatedToken, ownerAssociatedToken, ownerMint, owner, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n const keys = [\n { pubkey: nestedAssociatedToken, isSigner: false, isWritable: true },\n { pubkey: nestedMint, isSigner: false, isWritable: false },\n { pubkey: destinationAssociatedToken, isSigner: false, isWritable: true },\n { pubkey: ownerAssociatedToken, isSigner: false, isWritable: true },\n { pubkey: ownerMint, isSigner: false, isWritable: false },\n { pubkey: owner, isSigner: true, isWritable: true },\n { pubkey: programId, isSigner: false, isWritable: false },\n ];\n return new TransactionInstruction({\n keys,\n programId: associatedTokenProgramId,\n data: Buffer.from([2]),\n });\n}\n//# sourceMappingURL=associatedTokenAccount.js.map"],"names":["payer","associatedToken","owner","mint","programId","TOKEN_PROGRAM_ID","associatedTokenProgramId","ASSOCIATED_TOKEN_PROGRAM_ID","buildAssociatedTokenAccountInstruction","instructionData","keys","pubkey","isSigner","isWritable","Buffer","from"],"mappings":"mOA8DC,SAAAA,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAA,iBAAAC,EAAAC,+BAED,OAUQC,SAAuBR,EAAAC,EAAAC,EAAAC,EAAAM,EAAAL,EAAAC,EAAAA,iBAAAC,EAAAC,+BACxBG,MAAAA,EAAA,CACN,CAAAC,OAAAX,EAAAY,UAAA,EAAAC,YAAA,GACO,CAAEF,OAAQV,EAAgBW,UAAO,EAAQC,YAAA,iPAbxCL,CACLR,EACAC,EACAC,EACAC,EACAW,EAAAA,UAAAA,OAAAC,KAAA,CAAuB,IACvBX,EAAEE","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/state/account.js"],"sourcesContent":["import { struct, u32, u8 } from '@solana/buffer-layout';\nimport { publicKey, u64 } from '@solana/buffer-layout-utils';\nimport { TOKEN_PROGRAM_ID } from '../constants.js';\nimport { TokenAccountNotFoundError, TokenInvalidAccountError, TokenInvalidAccountOwnerError, TokenInvalidAccountSizeError, } from '../errors.js';\nimport { ACCOUNT_TYPE_SIZE, AccountType } from '../extensions/accountType.js';\nimport { getAccountLen } from '../extensions/extensionType.js';\nimport { MULTISIG_SIZE } from './multisig.js';\n/** Token account state as stored by the program */\nexport var AccountState;\n(function (AccountState) {\n AccountState[AccountState[\"Uninitialized\"] = 0] = \"Uninitialized\";\n AccountState[AccountState[\"Initialized\"] = 1] = \"Initialized\";\n AccountState[AccountState[\"Frozen\"] = 2] = \"Frozen\";\n})(AccountState || (AccountState = {}));\n/** Buffer layout for de/serializing a token account */\nexport const AccountLayout = struct([\n publicKey('mint'),\n publicKey('owner'),\n u64('amount'),\n u32('delegateOption'),\n publicKey('delegate'),\n u8('state'),\n u32('isNativeOption'),\n u64('isNative'),\n u64('delegatedAmount'),\n u32('closeAuthorityOption'),\n publicKey('closeAuthority'),\n]);\n/** Byte length of a token account */\nexport const ACCOUNT_SIZE = AccountLayout.span;\n/**\n * Retrieve information about a token account\n *\n * @param connection Connection to use\n * @param address Token account\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Token account information\n */\nexport async function getAccount(connection, address, commitment, programId = TOKEN_PROGRAM_ID) {\n const info = await connection.getAccountInfo(address, commitment);\n return unpackAccount(address, info, programId);\n}\n/**\n * Retrieve information about multiple token accounts in a single RPC call\n *\n * @param connection Connection to use\n * @param addresses Token accounts\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Token account information\n */\nexport async function getMultipleAccounts(connection, addresses, commitment, programId = TOKEN_PROGRAM_ID) {\n const infos = await connection.getMultipleAccountsInfo(addresses, commitment);\n return addresses.map((address, i) => unpackAccount(address, infos[i], programId));\n}\n/** Get the minimum lamport balance for a base token account to be rent exempt\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptAccount(connection, commitment) {\n return await getMinimumBalanceForRentExemptAccountWithExtensions(connection, [], commitment);\n}\n/** Get the minimum lamport balance for a rent-exempt token account with extensions\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptAccountWithExtensions(connection, extensions, commitment) {\n const accountLen = getAccountLen(extensions);\n return await connection.getMinimumBalanceForRentExemption(accountLen, commitment);\n}\n/**\n * Unpack a token account\n *\n * @param address Token account\n * @param info Token account data\n * @param programId SPL Token program account\n *\n * @return Unpacked token account\n */\nexport function unpackAccount(address, info, programId = TOKEN_PROGRAM_ID) {\n if (!info)\n throw new TokenAccountNotFoundError();\n if (!info.owner.equals(programId))\n throw new TokenInvalidAccountOwnerError();\n if (info.data.length < ACCOUNT_SIZE)\n throw new TokenInvalidAccountSizeError();\n const rawAccount = AccountLayout.decode(info.data.slice(0, ACCOUNT_SIZE));\n let tlvData = Buffer.alloc(0);\n if (info.data.length > ACCOUNT_SIZE) {\n if (info.data.length === MULTISIG_SIZE)\n throw new TokenInvalidAccountSizeError();\n if (info.data[ACCOUNT_SIZE] != AccountType.Account)\n throw new TokenInvalidAccountError();\n tlvData = info.data.slice(ACCOUNT_SIZE + ACCOUNT_TYPE_SIZE);\n }\n return {\n address,\n mint: rawAccount.mint,\n owner: rawAccount.owner,\n amount: rawAccount.amount,\n delegate: rawAccount.delegateOption ? rawAccount.delegate : null,\n delegatedAmount: rawAccount.delegatedAmount,\n isInitialized: rawAccount.state !== AccountState.Uninitialized,\n isFrozen: rawAccount.state === AccountState.Frozen,\n isNative: !!rawAccount.isNativeOption,\n rentExemptReserve: rawAccount.isNativeOption ? rawAccount.isNative : null,\n closeAuthority: rawAccount.closeAuthorityOption ? rawAccount.closeAuthority : null,\n tlvData,\n };\n}\n//# sourceMappingURL=account.js.map"],"names":["AccountState","AccountLayout","struct","publicKey","u64","u32","u8"
|
|
1
|
+
{"version":3,"file":"account.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/state/account.js"],"sourcesContent":["import { struct, u32, u8 } from '@solana/buffer-layout';\nimport { publicKey, u64 } from '@solana/buffer-layout-utils';\nimport { TOKEN_PROGRAM_ID } from '../constants.js';\nimport { TokenAccountNotFoundError, TokenInvalidAccountError, TokenInvalidAccountOwnerError, TokenInvalidAccountSizeError, } from '../errors.js';\nimport { ACCOUNT_TYPE_SIZE, AccountType } from '../extensions/accountType.js';\nimport { getAccountLen } from '../extensions/extensionType.js';\nimport { MULTISIG_SIZE } from './multisig.js';\n/** Token account state as stored by the program */\nexport var AccountState;\n(function (AccountState) {\n AccountState[AccountState[\"Uninitialized\"] = 0] = \"Uninitialized\";\n AccountState[AccountState[\"Initialized\"] = 1] = \"Initialized\";\n AccountState[AccountState[\"Frozen\"] = 2] = \"Frozen\";\n})(AccountState || (AccountState = {}));\n/** Buffer layout for de/serializing a token account */\nexport const AccountLayout = struct([\n publicKey('mint'),\n publicKey('owner'),\n u64('amount'),\n u32('delegateOption'),\n publicKey('delegate'),\n u8('state'),\n u32('isNativeOption'),\n u64('isNative'),\n u64('delegatedAmount'),\n u32('closeAuthorityOption'),\n publicKey('closeAuthority'),\n]);\n/** Byte length of a token account */\nexport const ACCOUNT_SIZE = AccountLayout.span;\n/**\n * Retrieve information about a token account\n *\n * @param connection Connection to use\n * @param address Token account\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Token account information\n */\nexport async function getAccount(connection, address, commitment, programId = TOKEN_PROGRAM_ID) {\n const info = await connection.getAccountInfo(address, commitment);\n return unpackAccount(address, info, programId);\n}\n/**\n * Retrieve information about multiple token accounts in a single RPC call\n *\n * @param connection Connection to use\n * @param addresses Token accounts\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Token account information\n */\nexport async function getMultipleAccounts(connection, addresses, commitment, programId = TOKEN_PROGRAM_ID) {\n const infos = await connection.getMultipleAccountsInfo(addresses, commitment);\n return addresses.map((address, i) => unpackAccount(address, infos[i], programId));\n}\n/** Get the minimum lamport balance for a base token account to be rent exempt\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptAccount(connection, commitment) {\n return await getMinimumBalanceForRentExemptAccountWithExtensions(connection, [], commitment);\n}\n/** Get the minimum lamport balance for a rent-exempt token account with extensions\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptAccountWithExtensions(connection, extensions, commitment) {\n const accountLen = getAccountLen(extensions);\n return await connection.getMinimumBalanceForRentExemption(accountLen, commitment);\n}\n/**\n * Unpack a token account\n *\n * @param address Token account\n * @param info Token account data\n * @param programId SPL Token program account\n *\n * @return Unpacked token account\n */\nexport function unpackAccount(address, info, programId = TOKEN_PROGRAM_ID) {\n if (!info)\n throw new TokenAccountNotFoundError();\n if (!info.owner.equals(programId))\n throw new TokenInvalidAccountOwnerError();\n if (info.data.length < ACCOUNT_SIZE)\n throw new TokenInvalidAccountSizeError();\n const rawAccount = AccountLayout.decode(info.data.slice(0, ACCOUNT_SIZE));\n let tlvData = Buffer.alloc(0);\n if (info.data.length > ACCOUNT_SIZE) {\n if (info.data.length === MULTISIG_SIZE)\n throw new TokenInvalidAccountSizeError();\n if (info.data[ACCOUNT_SIZE] != AccountType.Account)\n throw new TokenInvalidAccountError();\n tlvData = info.data.slice(ACCOUNT_SIZE + ACCOUNT_TYPE_SIZE);\n }\n return {\n address,\n mint: rawAccount.mint,\n owner: rawAccount.owner,\n amount: rawAccount.amount,\n delegate: rawAccount.delegateOption ? rawAccount.delegate : null,\n delegatedAmount: rawAccount.delegatedAmount,\n isInitialized: rawAccount.state !== AccountState.Uninitialized,\n isFrozen: rawAccount.state === AccountState.Frozen,\n isNative: !!rawAccount.isNativeOption,\n rentExemptReserve: rawAccount.isNativeOption ? rawAccount.isNative : null,\n closeAuthority: rawAccount.closeAuthorityOption ? rawAccount.closeAuthority : null,\n tlvData,\n };\n}\n//# sourceMappingURL=account.js.map"],"names":["AccountState","AccountLayout","struct","publicKey","u64","u32","u8"],"mappings":"iBA8CEA,8EADEA,QAAAA,kBAAA,GACFA,EAoBFA,uBAAaA,QAAAA,aAAsB,CAAa,IAnB5CA,EAAU,cAAA,GAAA,gBAHXA,EAAAA,EAIF,YAAA,GAAA,cAiBDA,EAAAA,EAAuD,OAAA,GAAA,SAGnD,MAASC,EAASC,EAAAA,OACpBC,CAAAA,EAAAA,kBACEA,EAAIA,UACJC,SAAAA,EAAAA,cACFC,EAAAA,IAAA,kBACEF,EAAAA,UAAoB,YACrBG,EAAAA,GAAA,SACCD,EAAAA,IAAI,kBACJD,EAAGA,IAAC,YACJA,EAAAA,IAAU,mBACbC,EAAAA,IAAA,wBAEDF,EAAAA,UACA","x_google_ignoreList":[0]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@solana/buffer-layout"),t=require("@solana/buffer-layout-utils"),r=require("@solana/web3.js"),
|
|
1
|
+
"use strict";require("../../../../../buffer/index.cjs");var e=require("@solana/buffer-layout"),t=require("@solana/buffer-layout-utils"),r=require("@solana/web3.js"),i=require("../constants.cjs"),n=require("../errors.cjs"),o=require("../extensions/accountType.cjs"),u=require("./account.cjs"),s=require("./multisig.cjs"),a=require("../../../../../../_virtual/index.cjs");const c=e.struct([e.u32("mintAuthorityOption"),t.publicKey("mintAuthority"),t.u64("supply"),e.u8("decimals"),t.bool("isInitialized"),e.u32("freezeAuthorityOption"),t.publicKey("freezeAuthority")]),l=c.span;function f(e,t,r=i.TOKEN_PROGRAM_ID){if(!t)throw new n.TokenAccountNotFoundError;if(!t.owner.equals(r))throw new n.TokenInvalidAccountOwnerError;if(t.data.length<l)throw new n.TokenInvalidAccountSizeError;const f=c.decode(t.data.slice(0,l));let d=a.__exports.Buffer.alloc(0);if(t.data.length>l){if(t.data.length<=u.ACCOUNT_SIZE)throw new n.TokenInvalidAccountSizeError;if(t.data.length===s.MULTISIG_SIZE)throw new n.TokenInvalidAccountSizeError;if(t.data[u.ACCOUNT_SIZE]!=o.AccountType.Mint)throw new n.TokenInvalidMintError;d=t.data.slice(u.ACCOUNT_SIZE+o.ACCOUNT_TYPE_SIZE)}return{address:e,mintAuthority:f.mintAuthorityOption?f.mintAuthority:null,supply:f.supply,decimals:f.decimals,isInitialized:f.isInitialized,freezeAuthority:f.freezeAuthorityOption?f.freezeAuthority:null,tlvData:d}}exports.MINT_SIZE=l,exports.MintLayout=c,exports.getAssociatedTokenAddressSync=function(e,t,o=!1,u=i.TOKEN_PROGRAM_ID,s=i.ASSOCIATED_TOKEN_PROGRAM_ID){if(!o&&!r.PublicKey.isOnCurve(t.toBuffer()))throw new n.TokenOwnerOffCurveError;const[a]=r.PublicKey.findProgramAddressSync([t.toBuffer(),u.toBuffer(),e.toBuffer()],s);return a},exports.getMint=async function(e,t,r,n=i.TOKEN_PROGRAM_ID){return f(t,await e.getAccountInfo(t,r),n)},exports.unpackMint=f;
|
|
2
2
|
//# sourceMappingURL=mint.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mint.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/state/mint.js"],"sourcesContent":["import { struct, u32, u8 } from '@solana/buffer-layout';\nimport { bool, publicKey, u64 } from '@solana/buffer-layout-utils';\nimport { PublicKey } from '@solana/web3.js';\nimport { ASSOCIATED_TOKEN_PROGRAM_ID, TOKEN_PROGRAM_ID } from '../constants.js';\nimport { TokenAccountNotFoundError, TokenInvalidAccountOwnerError, TokenInvalidAccountSizeError, TokenInvalidMintError, TokenOwnerOffCurveError, } from '../errors.js';\nimport { ACCOUNT_TYPE_SIZE, AccountType } from '../extensions/accountType.js';\nimport { getMintLen } from '../extensions/extensionType.js';\nimport { ACCOUNT_SIZE } from './account.js';\nimport { MULTISIG_SIZE } from './multisig.js';\n/** Buffer layout for de/serializing a mint */\nexport const MintLayout = struct([\n u32('mintAuthorityOption'),\n publicKey('mintAuthority'),\n u64('supply'),\n u8('decimals'),\n bool('isInitialized'),\n u32('freezeAuthorityOption'),\n publicKey('freezeAuthority'),\n]);\n/** Byte length of a mint */\nexport const MINT_SIZE = MintLayout.span;\n/**\n * Retrieve information about a mint\n *\n * @param connection Connection to use\n * @param address Mint account\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Mint information\n */\nexport async function getMint(connection, address, commitment, programId = TOKEN_PROGRAM_ID) {\n const info = await connection.getAccountInfo(address, commitment);\n return unpackMint(address, info, programId);\n}\n/**\n * Unpack a mint\n *\n * @param address Mint account\n * @param info Mint account data\n * @param programId SPL Token program account\n *\n * @return Unpacked mint\n */\nexport function unpackMint(address, info, programId = TOKEN_PROGRAM_ID) {\n if (!info)\n throw new TokenAccountNotFoundError();\n if (!info.owner.equals(programId))\n throw new TokenInvalidAccountOwnerError();\n if (info.data.length < MINT_SIZE)\n throw new TokenInvalidAccountSizeError();\n const rawMint = MintLayout.decode(info.data.slice(0, MINT_SIZE));\n let tlvData = Buffer.alloc(0);\n if (info.data.length > MINT_SIZE) {\n if (info.data.length <= ACCOUNT_SIZE)\n throw new TokenInvalidAccountSizeError();\n if (info.data.length === MULTISIG_SIZE)\n throw new TokenInvalidAccountSizeError();\n if (info.data[ACCOUNT_SIZE] != AccountType.Mint)\n throw new TokenInvalidMintError();\n tlvData = info.data.slice(ACCOUNT_SIZE + ACCOUNT_TYPE_SIZE);\n }\n return {\n address,\n mintAuthority: rawMint.mintAuthorityOption ? rawMint.mintAuthority : null,\n supply: rawMint.supply,\n decimals: rawMint.decimals,\n isInitialized: rawMint.isInitialized,\n freezeAuthority: rawMint.freezeAuthorityOption ? rawMint.freezeAuthority : null,\n tlvData,\n };\n}\n/** Get the minimum lamport balance for a mint to be rent exempt\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptMint(connection, commitment) {\n return await getMinimumBalanceForRentExemptMintWithExtensions(connection, [], commitment);\n}\n/** Get the minimum lamport balance for a rent-exempt mint with extensions\n *\n * @param connection Connection to use\n * @param extensions Extension types included in the mint\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptMintWithExtensions(connection, extensions, commitment) {\n const mintLen = getMintLen(extensions);\n return await connection.getMinimumBalanceForRentExemption(mintLen, commitment);\n}\n/**\n * Async version of getAssociatedTokenAddressSync\n * For backwards compatibility\n *\n * @param mint Token mint account\n * @param owner Owner of the new account\n * @param allowOwnerOffCurve Allow the owner account to be a PDA (Program Derived Address)\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Promise containing the address of the associated token account\n */\nexport async function getAssociatedTokenAddress(mint, owner, allowOwnerOffCurve = false, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n if (!allowOwnerOffCurve && !PublicKey.isOnCurve(owner.toBuffer()))\n throw new TokenOwnerOffCurveError();\n const [address] = await PublicKey.findProgramAddress([owner.toBuffer(), programId.toBuffer(), mint.toBuffer()], associatedTokenProgramId);\n return address;\n}\n/**\n * Get the address of the associated token account for a given mint and owner\n *\n * @param mint Token mint account\n * @param owner Owner of the new account\n * @param allowOwnerOffCurve Allow the owner account to be a PDA (Program Derived Address)\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Address of the associated token account\n */\nexport function getAssociatedTokenAddressSync(mint, owner, allowOwnerOffCurve = false, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n if (!allowOwnerOffCurve && !PublicKey.isOnCurve(owner.toBuffer()))\n throw new TokenOwnerOffCurveError();\n const [address] = PublicKey.findProgramAddressSync([owner.toBuffer(), programId.toBuffer(), mint.toBuffer()], associatedTokenProgramId);\n return address;\n}\n//# sourceMappingURL=mint.js.map"],"names":["MintLayout","struct","u32","publicKey","u64","u8","bool","
|
|
1
|
+
{"version":3,"file":"mint.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/state/mint.js"],"sourcesContent":["import { struct, u32, u8 } from '@solana/buffer-layout';\nimport { bool, publicKey, u64 } from '@solana/buffer-layout-utils';\nimport { PublicKey } from '@solana/web3.js';\nimport { ASSOCIATED_TOKEN_PROGRAM_ID, TOKEN_PROGRAM_ID } from '../constants.js';\nimport { TokenAccountNotFoundError, TokenInvalidAccountOwnerError, TokenInvalidAccountSizeError, TokenInvalidMintError, TokenOwnerOffCurveError, } from '../errors.js';\nimport { ACCOUNT_TYPE_SIZE, AccountType } from '../extensions/accountType.js';\nimport { getMintLen } from '../extensions/extensionType.js';\nimport { ACCOUNT_SIZE } from './account.js';\nimport { MULTISIG_SIZE } from './multisig.js';\n/** Buffer layout for de/serializing a mint */\nexport const MintLayout = struct([\n u32('mintAuthorityOption'),\n publicKey('mintAuthority'),\n u64('supply'),\n u8('decimals'),\n bool('isInitialized'),\n u32('freezeAuthorityOption'),\n publicKey('freezeAuthority'),\n]);\n/** Byte length of a mint */\nexport const MINT_SIZE = MintLayout.span;\n/**\n * Retrieve information about a mint\n *\n * @param connection Connection to use\n * @param address Mint account\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Mint information\n */\nexport async function getMint(connection, address, commitment, programId = TOKEN_PROGRAM_ID) {\n const info = await connection.getAccountInfo(address, commitment);\n return unpackMint(address, info, programId);\n}\n/**\n * Unpack a mint\n *\n * @param address Mint account\n * @param info Mint account data\n * @param programId SPL Token program account\n *\n * @return Unpacked mint\n */\nexport function unpackMint(address, info, programId = TOKEN_PROGRAM_ID) {\n if (!info)\n throw new TokenAccountNotFoundError();\n if (!info.owner.equals(programId))\n throw new TokenInvalidAccountOwnerError();\n if (info.data.length < MINT_SIZE)\n throw new TokenInvalidAccountSizeError();\n const rawMint = MintLayout.decode(info.data.slice(0, MINT_SIZE));\n let tlvData = Buffer.alloc(0);\n if (info.data.length > MINT_SIZE) {\n if (info.data.length <= ACCOUNT_SIZE)\n throw new TokenInvalidAccountSizeError();\n if (info.data.length === MULTISIG_SIZE)\n throw new TokenInvalidAccountSizeError();\n if (info.data[ACCOUNT_SIZE] != AccountType.Mint)\n throw new TokenInvalidMintError();\n tlvData = info.data.slice(ACCOUNT_SIZE + ACCOUNT_TYPE_SIZE);\n }\n return {\n address,\n mintAuthority: rawMint.mintAuthorityOption ? rawMint.mintAuthority : null,\n supply: rawMint.supply,\n decimals: rawMint.decimals,\n isInitialized: rawMint.isInitialized,\n freezeAuthority: rawMint.freezeAuthorityOption ? rawMint.freezeAuthority : null,\n tlvData,\n };\n}\n/** Get the minimum lamport balance for a mint to be rent exempt\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptMint(connection, commitment) {\n return await getMinimumBalanceForRentExemptMintWithExtensions(connection, [], commitment);\n}\n/** Get the minimum lamport balance for a rent-exempt mint with extensions\n *\n * @param connection Connection to use\n * @param extensions Extension types included in the mint\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptMintWithExtensions(connection, extensions, commitment) {\n const mintLen = getMintLen(extensions);\n return await connection.getMinimumBalanceForRentExemption(mintLen, commitment);\n}\n/**\n * Async version of getAssociatedTokenAddressSync\n * For backwards compatibility\n *\n * @param mint Token mint account\n * @param owner Owner of the new account\n * @param allowOwnerOffCurve Allow the owner account to be a PDA (Program Derived Address)\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Promise containing the address of the associated token account\n */\nexport async function getAssociatedTokenAddress(mint, owner, allowOwnerOffCurve = false, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n if (!allowOwnerOffCurve && !PublicKey.isOnCurve(owner.toBuffer()))\n throw new TokenOwnerOffCurveError();\n const [address] = await PublicKey.findProgramAddress([owner.toBuffer(), programId.toBuffer(), mint.toBuffer()], associatedTokenProgramId);\n return address;\n}\n/**\n * Get the address of the associated token account for a given mint and owner\n *\n * @param mint Token mint account\n * @param owner Owner of the new account\n * @param allowOwnerOffCurve Allow the owner account to be a PDA (Program Derived Address)\n * @param programId SPL Token program account\n * @param associatedTokenProgramId SPL Associated Token program account\n *\n * @return Address of the associated token account\n */\nexport function getAssociatedTokenAddressSync(mint, owner, allowOwnerOffCurve = false, programId = TOKEN_PROGRAM_ID, associatedTokenProgramId = ASSOCIATED_TOKEN_PROGRAM_ID) {\n if (!allowOwnerOffCurve && !PublicKey.isOnCurve(owner.toBuffer()))\n throw new TokenOwnerOffCurveError();\n const [address] = PublicKey.findProgramAddressSync([owner.toBuffer(), programId.toBuffer(), mint.toBuffer()], associatedTokenProgramId);\n return address;\n}\n//# sourceMappingURL=mint.js.map"],"names":["MintLayout","struct","u32","publicKey","u64","u8","bool","unpackMint","address","info","programId","TOKEN_PROGRAM_ID","TokenAccountNotFoundError","owner","equals","TokenInvalidAccountOwnerError","data","length","MINT_SIZE","TokenInvalidAccountSizeError","rawMint","decode","slice","tlvData","Buffer","alloc","ACCOUNT_SIZE","MULTISIG_SIZE","AccountType","Mint","TokenInvalidMintError","ACCOUNT_TYPE_SIZE","mintAuthority","mintAuthorityOption","supply","decimals","isInitialized","freezeAuthority","freezeAuthorityOption","async","connection","commitment","getAccountInfo"],"mappings":"kXAmDaA,MAAAA,EAACC,EAAAA,OACVC,CAAAA,EAAAA,IAAI,uBACJC,EAAAA,UAAc,iBACdC,EAAAA,IAAI,UACJC,EAAAA,GAAG,YACHC,OAAU,iBACXJ,EAAAA,IAAA,yBAEHC,EAAAA,UAAA,8BAiCqBI,SAAAA,EAAIC,EAAAC,EAAAC,EAA4BC,EAAAA,kBACpD,IAAAF,EAAA,MAAA,IAAAG,EAAAA,0BACE,IAAAH,EAAAI,MAAAC,OAAAJ,GAAA,MAAA,IAAAK,EAAAA,8BAEC,GAAAN,EAAMO,KAAOC,OAAGC,EAClB,MAAA,IAAAC,EAAAA,6BACE,MAAIC,EAAUpB,EAASqB,OAAWZ,EAACO,KAAAM,MAAA,EAAAJ,IAC/BK,IAAAA,EAASC,EAAAA,UAAAA,OAAKC,MAAU,GAAc,GAAAhB,EAAAO,KAAMC,OAAIC,EAAA,CAChD,GAAIT,EAAKO,KAAKC,QAAMS,EAAAA,aAAoB,MAAM,IAAIP,EAAAA,6BAClD,GAAIV,EAAKO,KAAKC,SAAAU,EAAAA,cAAmC,MAAG,IAAAR,EAAAA,6BACpD,GAAAV,EAAOO,KAAOU,iBAAYE,EAAeA,YAAAC,KAC/C,MAAA,IAAAC,EAAAA,sBAECP,EAAAd,EAAAO,KAAAM,MAAAI,EAAAA,aAAAK,EAAAA,mBAEK,MAAA,CACAvB,UACAwB,cAAUZ,EAAQa,oBAAQb,EAAAY,cAAA,KAC1BE,OAAAd,EAAWc,OAClBC,SAAAf,EAAAe,SACEC,cAAAhB,EAAAgB,cACGC,gBAAAjB,EAAAkB,sBAAAlB,EAAAiB,gBAAA,KACLd,oWAnCGgB,eAAyBC,EAAQhC,EAAWiC,EAAA/B,EAAAC,EAAAA,kBAGhD,OAAAJ,EAAAC,QAFCgC,EAAAE,eAAAlC,EAAAiC,GAED/B","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multisig.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/state/multisig.js"],"sourcesContent":["import { struct, u8 } from '@solana/buffer-layout';\nimport { bool, publicKey } from '@solana/buffer-layout-utils';\nimport { TOKEN_PROGRAM_ID } from '../constants.js';\nimport { TokenAccountNotFoundError, TokenInvalidAccountOwnerError, TokenInvalidAccountSizeError } from '../errors.js';\n/** Buffer layout for de/serializing a multisig */\nexport const MultisigLayout = struct([\n u8('m'),\n u8('n'),\n bool('isInitialized'),\n publicKey('signer1'),\n publicKey('signer2'),\n publicKey('signer3'),\n publicKey('signer4'),\n publicKey('signer5'),\n publicKey('signer6'),\n publicKey('signer7'),\n publicKey('signer8'),\n publicKey('signer9'),\n publicKey('signer10'),\n publicKey('signer11'),\n]);\n/** Byte length of a multisig */\nexport const MULTISIG_SIZE = MultisigLayout.span;\n/**\n * Retrieve information about a multisig\n *\n * @param connection Connection to use\n * @param address Multisig account\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Multisig information\n */\nexport async function getMultisig(connection, address, commitment, programId = TOKEN_PROGRAM_ID) {\n const info = await connection.getAccountInfo(address, commitment);\n return unpackMultisig(address, info, programId);\n}\n/**\n * Unpack a multisig\n *\n * @param address Multisig account\n * @param info Multisig account data\n * @param programId SPL Token program account\n *\n * @return Unpacked multisig\n */\nexport function unpackMultisig(address, info, programId = TOKEN_PROGRAM_ID) {\n if (!info)\n throw new TokenAccountNotFoundError();\n if (!info.owner.equals(programId))\n throw new TokenInvalidAccountOwnerError();\n if (info.data.length != MULTISIG_SIZE)\n throw new TokenInvalidAccountSizeError();\n const multisig = MultisigLayout.decode(info.data);\n return { address, ...multisig };\n}\n/** Get the minimum lamport balance for a multisig to be rent exempt\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptMultisig(connection, commitment) {\n return await connection.getMinimumBalanceForRentExemption(MULTISIG_SIZE, commitment);\n}\n//# sourceMappingURL=multisig.js.map"],"names":["MultisigLayout","struct","u8","bool","publicKey","MULTISIG_SIZE","span"],"mappings":"mGAkCaA,EAAiBC,EAAMA,OAAc,CAC9CC,EAAEA,GAAC,
|
|
1
|
+
{"version":3,"file":"multisig.cjs","sources":["../../../../../../../../node_modules/@solana/spl-token/lib/esm/state/multisig.js"],"sourcesContent":["import { struct, u8 } from '@solana/buffer-layout';\nimport { bool, publicKey } from '@solana/buffer-layout-utils';\nimport { TOKEN_PROGRAM_ID } from '../constants.js';\nimport { TokenAccountNotFoundError, TokenInvalidAccountOwnerError, TokenInvalidAccountSizeError } from '../errors.js';\n/** Buffer layout for de/serializing a multisig */\nexport const MultisigLayout = struct([\n u8('m'),\n u8('n'),\n bool('isInitialized'),\n publicKey('signer1'),\n publicKey('signer2'),\n publicKey('signer3'),\n publicKey('signer4'),\n publicKey('signer5'),\n publicKey('signer6'),\n publicKey('signer7'),\n publicKey('signer8'),\n publicKey('signer9'),\n publicKey('signer10'),\n publicKey('signer11'),\n]);\n/** Byte length of a multisig */\nexport const MULTISIG_SIZE = MultisigLayout.span;\n/**\n * Retrieve information about a multisig\n *\n * @param connection Connection to use\n * @param address Multisig account\n * @param commitment Desired level of commitment for querying the state\n * @param programId SPL Token program account\n *\n * @return Multisig information\n */\nexport async function getMultisig(connection, address, commitment, programId = TOKEN_PROGRAM_ID) {\n const info = await connection.getAccountInfo(address, commitment);\n return unpackMultisig(address, info, programId);\n}\n/**\n * Unpack a multisig\n *\n * @param address Multisig account\n * @param info Multisig account data\n * @param programId SPL Token program account\n *\n * @return Unpacked multisig\n */\nexport function unpackMultisig(address, info, programId = TOKEN_PROGRAM_ID) {\n if (!info)\n throw new TokenAccountNotFoundError();\n if (!info.owner.equals(programId))\n throw new TokenInvalidAccountOwnerError();\n if (info.data.length != MULTISIG_SIZE)\n throw new TokenInvalidAccountSizeError();\n const multisig = MultisigLayout.decode(info.data);\n return { address, ...multisig };\n}\n/** Get the minimum lamport balance for a multisig to be rent exempt\n *\n * @param connection Connection to use\n * @param commitment Desired level of commitment for querying the state\n *\n * @return Amount of lamports required\n */\nexport async function getMinimumBalanceForRentExemptMultisig(connection, commitment) {\n return await connection.getMinimumBalanceForRentExemption(MULTISIG_SIZE, commitment);\n}\n//# sourceMappingURL=multisig.js.map"],"names":["MultisigLayout","struct","u8","bool","publicKey","MULTISIG_SIZE","span"],"mappings":"mGAkCaA,EAAiBC,EAAMA,OAAc,CAC9CC,EAAEA,GAAC,KACNA,EAAAA,GAAA,KACEC,EAAAA,KAAA,iBACCC,EAASA,UAAC,WACZA,EAAAA,UAAA,WACEA,EAASA,UAAC,WACVA,EAASA,UAAC,WACVA,EAASA,UAAC,WACZA,EAAAA,UAAA,WACEA,EAASA,UAAC,WACXA,EAAAA,UAAA,WACCA,EAASA,UAAC,WACVA,EAASA,UAAC,YACVA,EAASA,UAAC,cAIDC,EAAgBL,EAAeM","x_google_ignoreList":[0]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var r,t,n,
|
|
1
|
+
"use strict";require("../buffer/index.cjs");var r,t,e,n,o,u,i,c,f,a,s,d,l,p,h,A,y,b,x,g,m,_,B,v,C,U,F,w,j,E,S,D,R,z,T,Z,q,I,O,P,L,G,V=require("../../_virtual/_commonjsHelpers.cjs"),k=require("../../_virtual/base64.cjs"),H=require("../../_virtual/index.cjs");r=k.__module,"undefined"!=typeof self?self:"undefined"!=typeof window?window:(V.commonjsGlobal,V.commonjsGlobal),r.exports=(e=t="3.7.5",n="function"==typeof atob,o="function"==typeof btoa,u="function"==typeof H.__exports.Buffer,i="function"==typeof TextDecoder?new TextDecoder:void 0,c="function"==typeof TextEncoder?new TextEncoder:void 0,f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",a=Array.prototype.slice.call(f),G={},a.forEach((function(r,t){return G[r]=t})),s=G,d=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,l=String.fromCharCode.bind(String),p="function"==typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):function(r){return new Uint8Array(Array.prototype.slice.call(r,0))},h=function(r){return r.replace(/=/g,"").replace(/[+\/]/g,(function(r){return"+"==r?"-":"_"}))},A=function(r){return r.replace(/[^A-Za-z0-9\+\/]/g,"")},y=function(r){for(var t,e,n,o,u="",i=r.length%3,c=0;c<r.length;){if((e=r.charCodeAt(c++))>255||(n=r.charCodeAt(c++))>255||(o=r.charCodeAt(c++))>255)throw new TypeError("invalid character found");u+=a[(t=e<<16|n<<8|o)>>18&63]+a[t>>12&63]+a[t>>6&63]+a[63&t]}return i?u.slice(0,i-3)+"===".substring(i):u},x=u?function(r){return H.__exports.Buffer.from(r).toString("base64")}:function(r){for(var t=4096,e=[],n=0,o=r.length;n<o;n+=t)e.push(l.apply(null,r.subarray(n,n+t)));return b(e.join(""))},m=function(r){if(r.length<2)return(t=r.charCodeAt(0))<128?r:t<2048?l(192|t>>>6)+l(128|63&t):l(224|t>>>12&15)+l(128|t>>>6&63)+l(128|63&t);var t=65536+1024*(r.charCodeAt(0)-55296)+(r.charCodeAt(1)-56320);return l(240|t>>>18&7)+l(128|t>>>12&63)+l(128|t>>>6&63)+l(128|63&t)},_=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,v=u?function(r){return H.__exports.Buffer.from(r,"utf8").toString("base64")}:c?function(r){return x(c.encode(r))}:function(r){return b(B(r))},U=function(r){return C(r,!0)},F=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,w=function(r){switch(r.length){case 4:var t=((7&r.charCodeAt(0))<<18|(63&r.charCodeAt(1))<<12|(63&r.charCodeAt(2))<<6|63&r.charCodeAt(3))-65536;return l(55296+(t>>>10))+l(56320+(1023&t));case 3:return l((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return l((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},E=function(r){if(r=r.replace(/\s+/g,""),!d.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(3&r.length));for(var t,e,n,o="",u=0;u<r.length;)t=s[r.charAt(u++)]<<18|s[r.charAt(u++)]<<12|(e=s[r.charAt(u++)])<<6|(n=s[r.charAt(u++)]),o+=64===e?l(t>>16&255):64===n?l(t>>16&255,t>>8&255):l(t>>16&255,t>>8&255,255&t);return o},D=u?function(r){return p(H.__exports.Buffer.from(r,"base64"))}:function(r){return p(S(r).split("").map((function(r){return r.charCodeAt(0)})))},R=function(r){return D(T(r))},z=u?function(r){return H.__exports.Buffer.from(r,"base64").toString("utf8")}:i?function(r){return i.decode(D(r))}:function(r){return j(S(r))},T=function(r){return A(r.replace(/[-_]/g,(function(r){return"-"==r?"+":"/"})))},q=function(r){return{value:r,enumerable:!1,writable:!0,configurable:!0}},I=function(){var r=function(r,t){return Object.defineProperty(String.prototype,r,q(t))};r("fromBase64",(function(){return Z(this)})),r("toBase64",(function(r){return C(this,r)})),r("toBase64URI",(function(){return C(this,!0)})),r("toBase64URL",(function(){return C(this,!0)})),r("toUint8Array",(function(){return R(this)}))},O=function(){var r=function(r,t){return Object.defineProperty(Uint8Array.prototype,r,q(t))};r("toBase64",(function(r){return g(this,r)})),r("toBase64URI",(function(){return g(this,!0)})),r("toBase64URL",(function(){return g(this,!0)}))},P=function(){I(),O()},L={version:t,VERSION:e,atob:S=n?function(r){return atob(A(r))}:u?function(r){return H.__exports.Buffer.from(r,"base64").toString("binary")}:E,atobPolyfill:E,btoa:b=o?function(r){return btoa(r)}:u?function(r){return H.__exports.Buffer.from(r,"binary").toString("base64")}:y,btoaPolyfill:y,fromBase64:Z=function(r){return z(T(r))},toBase64:C=function(r,t){return void 0===t&&(t=!1),t?h(v(r)):v(r)},encode:C,encodeURI:U,encodeURL:U,utob:B=function(r){return r.replace(_,m)},btou:j=function(r){return r.replace(F,w)},decode:Z,isValid:function(r){if("string"!=typeof r)return!1;var t=r.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(t)||!/[^\s0-9a-zA-Z\-_]/.test(t)},fromUint8Array:g=function(r,t){return void 0===t&&(t=!1),t?h(x(r)):x(r)},toUint8Array:R,extendString:I,extendUint8Array:O,extendBuiltins:P,Base64:{}},Object.keys(L).forEach((function(r){return L.Base64[r]=L[r]})),L);var N=k.__module.exports;exports.base64Exports=N;
|
|
2
2
|
//# sourceMappingURL=base64.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base64.cjs","sources":["../../../../node_modules/js-base64/base64.js"],"sourcesContent":["//\n// THIS FILE IS AUTOMATICALLY GENERATED! DO NOT EDIT BY HAND!\n//\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? module.exports = factory()\n : typeof define === 'function' && define.amd\n ? define(factory) :\n // cf. https://github.com/dankogai/js-base64/issues/119\n (function () {\n // existing version for noConflict()\n var _Base64 = global.Base64;\n var gBase64 = factory();\n gBase64.noConflict = function () {\n global.Base64 = _Base64;\n return gBase64;\n };\n if (global.Meteor) { // Meteor.js\n Base64 = gBase64;\n }\n global.Base64 = gBase64;\n })();\n}((typeof self !== 'undefined' ? self\n : typeof window !== 'undefined' ? window\n : typeof global !== 'undefined' ? global\n : this), function () {\n 'use strict';\n /**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\n var version = '3.7.5';\n /**\n * @deprecated use lowercase `version`.\n */\n var VERSION = version;\n var _hasatob = typeof atob === 'function';\n var _hasbtoa = typeof btoa === 'function';\n var _hasBuffer = typeof Buffer === 'function';\n var _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\n var _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\n var b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var b64chs = Array.prototype.slice.call(b64ch);\n var b64tab = (function (a) {\n var tab = {};\n a.forEach(function (c, i) { return tab[c] = i; });\n return tab;\n })(b64chs);\n var b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\n var _fromCC = String.fromCharCode.bind(String);\n var _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : function (it) { return new Uint8Array(Array.prototype.slice.call(it, 0)); };\n var _mkUriSafe = function (src) { return src\n .replace(/=/g, '').replace(/[+\\/]/g, function (m0) { return m0 == '+' ? '-' : '_'; }); };\n var _tidyB64 = function (s) { return s.replace(/[^A-Za-z0-9\\+\\/]/g, ''); };\n /**\n * polyfill version of `btoa`\n */\n var btoaPolyfill = function (bin) {\n // console.log('polyfilled');\n var u32, c0, c1, c2, asc = '';\n var pad = bin.length % 3;\n for (var i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n };\n /**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\n var _btoa = _hasbtoa ? function (bin) { return btoa(bin); }\n : _hasBuffer ? function (bin) { return Buffer.from(bin, 'binary').toString('base64'); }\n : btoaPolyfill;\n var _fromUint8Array = _hasBuffer\n ? function (u8a) { return Buffer.from(u8a).toString('base64'); }\n : function (u8a) {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n var maxargs = 0x1000;\n var strs = [];\n for (var i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n /**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 §5\n * @returns {string} Base64 string\n */\n var fromUint8Array = function (u8a, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const utob = (src: string) => unescape(encodeURIComponent(src));\n // reverting good old fationed regexp\n var cb_utob = function (c) {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n };\n var re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\n var utob = function (u) { return u.replace(re_utob, cb_utob); };\n //\n var _encode = _hasBuffer\n ? function (s) { return Buffer.from(s, 'utf8').toString('base64'); }\n : _TE\n ? function (s) { return _fromUint8Array(_TE.encode(s)); }\n : function (s) { return _btoa(utob(s)); };\n /**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\n var encode = function (src, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n };\n /**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 §5.\n * @returns {string} Base64 string\n */\n var encodeURI = function (src) { return encode(src, true); };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const btou = (src: string) => decodeURIComponent(escape(src));\n // reverting good old fationed regexp\n var re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\n var cb_btou = function (cccc) {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n };\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\n var btou = function (b) { return b.replace(re_btou, cb_btou); };\n /**\n * polyfill version of `atob`\n */\n var atobPolyfill = function (asc) {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n var u24, bin = '', r1, r2;\n for (var i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n };\n /**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\n var _atob = _hasatob ? function (asc) { return atob(_tidyB64(asc)); }\n : _hasBuffer ? function (asc) { return Buffer.from(asc, 'base64').toString('binary'); }\n : atobPolyfill;\n //\n var _toUint8Array = _hasBuffer\n ? function (a) { return _U8Afrom(Buffer.from(a, 'base64')); }\n : function (a) { return _U8Afrom(_atob(a).split('').map(function (c) { return c.charCodeAt(0); })); };\n /**\n * converts a Base64 string to a Uint8Array.\n */\n var toUint8Array = function (a) { return _toUint8Array(_unURI(a)); };\n //\n var _decode = _hasBuffer\n ? function (a) { return Buffer.from(a, 'base64').toString('utf8'); }\n : _TD\n ? function (a) { return _TD.decode(_toUint8Array(a)); }\n : function (a) { return btou(_atob(a)); };\n var _unURI = function (a) { return _tidyB64(a.replace(/[-_]/g, function (m0) { return m0 == '-' ? '+' : '/'; })); };\n /**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\n var decode = function (src) { return _decode(_unURI(src)); };\n /**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\n var isValid = function (src) {\n if (typeof src !== 'string')\n return false;\n var s = src.replace(/\\s+/g, '').replace(/={0,2}$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n };\n //\n var _noEnum = function (v) {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n };\n /**\n * extend String.prototype with relevant methods\n */\n var extendString = function () {\n var _add = function (name, body) { return Object.defineProperty(String.prototype, name, _noEnum(body)); };\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n };\n /**\n * extend Uint8Array.prototype with relevant methods\n */\n var extendUint8Array = function () {\n var _add = function (name, body) { return Object.defineProperty(Uint8Array.prototype, name, _noEnum(body)); };\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n };\n /**\n * extend Builtin prototypes with relevant methods\n */\n var extendBuiltins = function () {\n extendString();\n extendUint8Array();\n };\n var gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins\n };\n //\n // export Base64 to the namespace\n //\n // ES5 is yet to have Object.assign() that may make transpilers unhappy.\n // gBase64.Base64 = Object.assign({}, gBase64);\n gBase64.Base64 = {};\n Object.keys(gBase64).forEach(function (k) { return gBase64.Base64[k] = gBase64[k]; });\n return gBase64;\n}));\n"],"names":["version","VERSION","_hasatob","_hasbtoa","_hasBuffer","_TD","_TE","b64ch","b64chs","b64tab","b64re","_fromCC","_U8Afrom","_mkUriSafe","_tidyB64","btoaPolyfill","_btoa","_fromUint8Array","fromUint8Array","cb_utob","re_utob","utob","_encode","encode","encodeURI","re_btou","cb_btou","btou","atobPolyfill","_atob","_toUint8Array","toUint8Array","_decode","_unURI","decode","_noEnum","extendString","extendUint8Array","extendBuiltins","gBase64","tab","self","window","global","commonjsGlobal","module","exports","atob","btoa","Buffer","TextDecoder","undefined","TextEncoder","Array","prototype","slice","call","forEach","c","i","String","fromCharCode","bind","Uint8Array","from","it","src","replace","m0","s","bin","u32","c0","c1","c2","asc","pad","length","charCodeAt","TypeError","substring","u8a","toString","maxargs","strs","l","push","apply","subarray","join","cc","cccc","offset","test","u24","r1","r2","charAt","a","split","map","v","value","enumerable","writable","configurable","_add","name","body","Object","defineProperty","this","urlsafe","fromBase64","toBase64","encodeURL","u","b","isValid","keys","k","Base64"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"base64.cjs","sources":["../../../../node_modules/js-base64/base64.js"],"sourcesContent":["//\n// THIS FILE IS AUTOMATICALLY GENERATED! DO NOT EDIT BY HAND!\n//\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? module.exports = factory()\n : typeof define === 'function' && define.amd\n ? define(factory) :\n // cf. https://github.com/dankogai/js-base64/issues/119\n (function () {\n // existing version for noConflict()\n var _Base64 = global.Base64;\n var gBase64 = factory();\n gBase64.noConflict = function () {\n global.Base64 = _Base64;\n return gBase64;\n };\n if (global.Meteor) { // Meteor.js\n Base64 = gBase64;\n }\n global.Base64 = gBase64;\n })();\n}((typeof self !== 'undefined' ? self\n : typeof window !== 'undefined' ? window\n : typeof global !== 'undefined' ? global\n : this), function () {\n 'use strict';\n /**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\n var version = '3.7.5';\n /**\n * @deprecated use lowercase `version`.\n */\n var VERSION = version;\n var _hasatob = typeof atob === 'function';\n var _hasbtoa = typeof btoa === 'function';\n var _hasBuffer = typeof Buffer === 'function';\n var _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\n var _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\n var b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var b64chs = Array.prototype.slice.call(b64ch);\n var b64tab = (function (a) {\n var tab = {};\n a.forEach(function (c, i) { return tab[c] = i; });\n return tab;\n })(b64chs);\n var b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\n var _fromCC = String.fromCharCode.bind(String);\n var _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : function (it) { return new Uint8Array(Array.prototype.slice.call(it, 0)); };\n var _mkUriSafe = function (src) { return src\n .replace(/=/g, '').replace(/[+\\/]/g, function (m0) { return m0 == '+' ? '-' : '_'; }); };\n var _tidyB64 = function (s) { return s.replace(/[^A-Za-z0-9\\+\\/]/g, ''); };\n /**\n * polyfill version of `btoa`\n */\n var btoaPolyfill = function (bin) {\n // console.log('polyfilled');\n var u32, c0, c1, c2, asc = '';\n var pad = bin.length % 3;\n for (var i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n };\n /**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\n var _btoa = _hasbtoa ? function (bin) { return btoa(bin); }\n : _hasBuffer ? function (bin) { return Buffer.from(bin, 'binary').toString('base64'); }\n : btoaPolyfill;\n var _fromUint8Array = _hasBuffer\n ? function (u8a) { return Buffer.from(u8a).toString('base64'); }\n : function (u8a) {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n var maxargs = 0x1000;\n var strs = [];\n for (var i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n /**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 §5\n * @returns {string} Base64 string\n */\n var fromUint8Array = function (u8a, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const utob = (src: string) => unescape(encodeURIComponent(src));\n // reverting good old fationed regexp\n var cb_utob = function (c) {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n };\n var re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\n var utob = function (u) { return u.replace(re_utob, cb_utob); };\n //\n var _encode = _hasBuffer\n ? function (s) { return Buffer.from(s, 'utf8').toString('base64'); }\n : _TE\n ? function (s) { return _fromUint8Array(_TE.encode(s)); }\n : function (s) { return _btoa(utob(s)); };\n /**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\n var encode = function (src, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n };\n /**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 §5.\n * @returns {string} Base64 string\n */\n var encodeURI = function (src) { return encode(src, true); };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const btou = (src: string) => decodeURIComponent(escape(src));\n // reverting good old fationed regexp\n var re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\n var cb_btou = function (cccc) {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n };\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\n var btou = function (b) { return b.replace(re_btou, cb_btou); };\n /**\n * polyfill version of `atob`\n */\n var atobPolyfill = function (asc) {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n var u24, bin = '', r1, r2;\n for (var i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n };\n /**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\n var _atob = _hasatob ? function (asc) { return atob(_tidyB64(asc)); }\n : _hasBuffer ? function (asc) { return Buffer.from(asc, 'base64').toString('binary'); }\n : atobPolyfill;\n //\n var _toUint8Array = _hasBuffer\n ? function (a) { return _U8Afrom(Buffer.from(a, 'base64')); }\n : function (a) { return _U8Afrom(_atob(a).split('').map(function (c) { return c.charCodeAt(0); })); };\n /**\n * converts a Base64 string to a Uint8Array.\n */\n var toUint8Array = function (a) { return _toUint8Array(_unURI(a)); };\n //\n var _decode = _hasBuffer\n ? function (a) { return Buffer.from(a, 'base64').toString('utf8'); }\n : _TD\n ? function (a) { return _TD.decode(_toUint8Array(a)); }\n : function (a) { return btou(_atob(a)); };\n var _unURI = function (a) { return _tidyB64(a.replace(/[-_]/g, function (m0) { return m0 == '-' ? '+' : '/'; })); };\n /**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\n var decode = function (src) { return _decode(_unURI(src)); };\n /**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\n var isValid = function (src) {\n if (typeof src !== 'string')\n return false;\n var s = src.replace(/\\s+/g, '').replace(/={0,2}$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n };\n //\n var _noEnum = function (v) {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n };\n /**\n * extend String.prototype with relevant methods\n */\n var extendString = function () {\n var _add = function (name, body) { return Object.defineProperty(String.prototype, name, _noEnum(body)); };\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n };\n /**\n * extend Uint8Array.prototype with relevant methods\n */\n var extendUint8Array = function () {\n var _add = function (name, body) { return Object.defineProperty(Uint8Array.prototype, name, _noEnum(body)); };\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n };\n /**\n * extend Builtin prototypes with relevant methods\n */\n var extendBuiltins = function () {\n extendString();\n extendUint8Array();\n };\n var gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins\n };\n //\n // export Base64 to the namespace\n //\n // ES5 is yet to have Object.assign() that may make transpilers unhappy.\n // gBase64.Base64 = Object.assign({}, gBase64);\n gBase64.Base64 = {};\n Object.keys(gBase64).forEach(function (k) { return gBase64.Base64[k] = gBase64[k]; });\n return gBase64;\n}));\n"],"names":["version","VERSION","_hasatob","_hasbtoa","_hasBuffer","_TD","_TE","b64ch","b64chs","b64tab","b64re","_fromCC","_U8Afrom","_mkUriSafe","_tidyB64","btoaPolyfill","_btoa","_fromUint8Array","fromUint8Array","cb_utob","re_utob","utob","_encode","encode","encodeURI","re_btou","cb_btou","btou","atobPolyfill","_atob","_toUint8Array","toUint8Array","_decode","_unURI","decode","_noEnum","extendString","extendUint8Array","extendBuiltins","gBase64","tab","self","window","global","commonjsGlobal","module","exports","atob","btoa","Buffer","__exports","TextDecoder","undefined","TextEncoder","Array","prototype","slice","call","forEach","c","i","String","fromCharCode","bind","Uint8Array","from","it","src","replace","m0","s","bin","u32","c0","c1","c2","asc","pad","length","charCodeAt","TypeError","substring","u8a","toString","maxargs","strs","l","push","apply","subarray","join","cc","cccc","offset","test","u24","r1","r2","charAt","a","split","map","v","value","enumerable","writable","configurable","_add","name","body","Object","defineProperty","this","urlsafe","fromBase64","toBase64","encodeURL","u","b","isValid","keys","k","Base64"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@solana/web3.js"),r=require("../node_modules/punycode/punycode.es6.cjs"),o=require("../node_modules/@scure/base/lib/esm/index.cjs"),t=require("../node_modules/ipaddr.js/lib/ipaddr.cjs"),
|
|
1
|
+
"use strict";var e=require("@solana/web3.js"),r=require("../node_modules/punycode/punycode.es6.cjs"),o=require("../node_modules/@scure/base/lib/esm/index.cjs"),t=require("../node_modules/ipaddr.js/lib/ipaddr.cjs"),s=require("../utils/check.cjs"),c=require("../types/record.cjs"),n=require("../error.cjs");require("../node_modules/buffer/index.cjs");var d=require("./const.cjs"),i=require("../_virtual/index.cjs");exports.serializeRecordV2Content=(u,a)=>{if(d.UTF8_ENCODED.has(a))return a!==c.Record.CNAME&&a!==c.Record.TXT||(u=r.encode(u)),i.__exports.Buffer.from(u,"utf-8");if(a===c.Record.SOL)return new e.PublicKey(u).toBuffer();if(d.EVM_RECORDS.has(a))return s.check("0x"===u.slice(0,2),new n.InvalidEvmAddressError("The record content must start with `0x`")),i.__exports.Buffer.from(u.slice(2),"hex");if(a===c.Record.Injective){const e=o.bech32.decodeToBytes(u);return s.check("inj"===e.prefix,new n.InvalidInjectiveAddressError("The record content must start with `inj")),s.check(20===e.bytes.length,new n.InvalidInjectiveAddressError("The record data must be 20 bytes long")),i.__exports.Buffer.from(e.bytes)}if(a===c.Record.A){const e=t.ipaddrExports.parse(u).toByteArray();return s.check(4===e.length,new n.InvalidARecordError("The record content must be 4 bytes long")),i.__exports.Buffer.from(e)}if(a===c.Record.AAAA){const e=t.ipaddrExports.parse(u).toByteArray();return s.check(16===e.length,new n.InvalidAAAARecordError("The record content must be 16 bytes long")),i.__exports.Buffer.from(e)}throw new n.InvalidRecordInputError("The record content is malformed")};
|
|
2
2
|
//# sourceMappingURL=serializeRecordV2Content.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializeRecordV2Content.cjs","sources":["../../../src/record_v2/serializeRecordV2Content.ts"],"sourcesContent":[null],"names":["content","record","UTF8_ENCODED","has","Record","CNAME","TXT","encodePunycode","Buffer","from","SOL","PublicKey","toBuffer","EVM_RECORDS","check","slice","InvalidEvmAddressError","Injective","decoded","bech32","decodeToBytes","prefix","InvalidInjectiveAddressError","bytes","length","A","array","parseIp","ipaddrExports","parse","toByteArray","InvalidARecordError","AAAA","InvalidAAAARecordError","InvalidRecordInputError"],"mappings":"
|
|
1
|
+
{"version":3,"file":"serializeRecordV2Content.cjs","sources":["../../../src/record_v2/serializeRecordV2Content.ts"],"sourcesContent":[null],"names":["content","record","UTF8_ENCODED","has","Record","CNAME","TXT","encodePunycode","Buffer","from","SOL","PublicKey","toBuffer","EVM_RECORDS","check","slice","InvalidEvmAddressError","Injective","decoded","bech32","decodeToBytes","prefix","InvalidInjectiveAddressError","bytes","length","A","array","parseIp","ipaddrExports","parse","toByteArray","InvalidARecordError","__exports","AAAA","InvalidAAAARecordError","InvalidRecordInputError"],"mappings":"8bAuBwC,CACtCA,EACAC,KAGA,GADoBC,EAAAA,aAAaC,IAAIF,GAKnC,OAHIA,IAAWG,EAAAA,OAAOC,OAASJ,IAAWG,EAAAA,OAAOE,MAC/CN,EAAUO,EAAAA,OAAeP,IAEpBQ,mBAAOC,KAAKT,EAAS,SACvB,GAAIC,IAAWG,EAAMA,OAACM,IAC3B,OAAO,IAAIC,EAASA,UAACX,GAASY,WACzB,GAAIC,EAAWA,YAACV,IAAIF,GAKzB,OAJAa,QAC0B,OAAxBd,EAAQe,MAAM,EAAG,GACjB,IAAIC,EAAAA,uBAAuB,4CAEtBR,EAAAA,UAAAA,OAAOC,KAAKT,EAAQe,MAAM,GAAI,OAChC,GAAId,IAAWG,EAAMA,OAACa,UAAW,CACtC,MAAMC,EAAUC,EAAAA,OAAOC,cAAcpB,GAWrC,OAVAc,EAAKA,MACgB,QAAnBI,EAAQG,OACR,IAAIC,EAA4BA,6BAC9B,4CAGJR,QAC2B,KAAzBI,EAAQK,MAAMC,OACd,IAAIF,+BAA6B,0CAE5Bd,mBAAOC,KAAKS,EAAQK,MAC5B,CAAM,GAAItB,IAAWG,EAAMA,OAACqB,EAAG,CAC9B,MAAMC,EAAQC,EAAOC,cAAAC,MAAC7B,GAAS8B,cAK/B,OAJAhB,EAAKA,MACc,IAAjBY,EAAMF,OACN,IAAIO,EAAmBA,oBAAC,4CAEnBvB,EAAMwB,UAAAxB,OAACC,KAAKiB,EACpB,CAAM,GAAIzB,IAAWG,EAAMA,OAAC6B,KAAM,CACjC,MAAMP,EAAQC,EAAOC,cAAAC,MAAC7B,GAAS8B,cAK/B,OAJAhB,EAAKA,MACc,KAAjBY,EAAMF,OACN,IAAIU,EAAsBA,uBAAC,6CAEtB1B,EAAMwB,UAAAxB,OAACC,KAAKiB,EACpB,CACC,MAAM,IAAIS,EAAAA,wBAAwB,kCACnC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@solana/web3.js"),r=require("../utils/getDomainKeySync.cjs"),t=require("../nft/state.cjs"),o=require("../nft/const.cjs"),
|
|
1
|
+
"use strict";require("../node_modules/buffer/index.cjs");var e=require("@solana/web3.js"),r=require("../utils/getDomainKeySync.cjs"),t=require("../nft/state.cjs"),o=require("../nft/const.cjs"),i=require("../record/getRecordKeySync.cjs"),a=require("../types/record.cjs"),n=require("../record_v2/getRecordV2Key.cjs"),d=require("../node_modules/@bonfida/sns-records/dist/index.cjs"),s=require("../error.cjs"),c=require("../state.cjs"),l=require("../record/checkSolRecord.cjs"),u=require("../nft/retrieveNftOwnerV2.cjs"),w=require("../_virtual/index.cjs");exports.resolve=async(f,R,y={allowPda:!1})=>{var E;const{pubkey:N}=r.getDomainKeySync(R),[g]=t.NftRecord.findKeySync(N,o.NAME_TOKENIZER_ID),S=i.getRecordKeySync(R,a.Record.SOL),v=n.getRecordV2Key(R,a.Record.SOL),[m,h,q,A]=await f.getMultipleAccountsInfo([g,S,v,N]);if(!(null==A?void 0:A.data))throw new s.DomainDoesNotExist(`Domain ${R} does not exist`);const _=c.NameRegistryState.deserialize(A.data);if(null==m?void 0:m.data){if(t.NftRecord.deserialize(m.data).tag===t.Tag.ActiveRecord){const e=await u.retrieveNftOwnerV2(f,N);if(!e)throw new s.CouldNotFindNftOwner;return e}}e:if(null==q?void 0:q.data){const r=d.Record.deserialize(q.data),t=r.getStalenessId(),o=r.getRoAId(),i=r.getContent();if(32!==i.length)throw new s.RecordMalformed("Record is malformed");if(r.header.rightOfAssociationValidation!==d.Validation.Solana||r.header.stalenessValidation!==d.Validation.Solana)throw new s.WrongValidation;if(!t.equals(_.owner.toBuffer()))break e;if(o.equals(i))return new e.PublicKey(i);throw new s.InvalidRoAError(`The RoA ID shoudl be ${new e.PublicKey(i).toBase58()} but is ${new e.PublicKey(o).toBase58()} `)}if(null==h?void 0:h.data){const r=new TextEncoder,t=w.__exports.Buffer.concat([h.data.slice(c.NameRegistryState.HEADER_LEN,c.NameRegistryState.HEADER_LEN+32),S.toBuffer()]),o=r.encode(t.toString("hex"));if(l.checkSolRecord(o,h.data.slice(c.NameRegistryState.HEADER_LEN+32,c.NameRegistryState.HEADER_LEN+32+e.SIGNATURE_LENGTH_IN_BYTES),_.owner))return new e.PublicKey(h.data.slice(c.NameRegistryState.HEADER_LEN,c.NameRegistryState.HEADER_LEN+32))}if(!e.PublicKey.isOnCurve(_.owner)){if("any"===y.allowPda)return _.owner;if(y.allowPda){const e=await f.getAccountInfo(_.owner);if(null===(E=y.programIds)||void 0===E?void 0:E.some((r=>{var t;return null===(t=null==e?void 0:e.owner)||void 0===t?void 0:t.equals(r)})))return _.owner;throw new s.PdaOwnerNotAllowed(`The Program ${null==e?void 0:e.owner.toBase58()} is not allowed`)}throw new s.PdaOwnerNotAllowed}return _.owner};
|
|
2
2
|
//# sourceMappingURL=resolve.cjs.map
|