Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More

@magic-ext/tezos

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@magic-ext/tezos

magic tezos extension

  • 14.0.0-canary.538.5339058142.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
824
increased by95.26%
Maintainers
23
Weekly downloads
 
Created

Magic Extension Tezos blockchain

Installation

npm i magic-sdk @magic-ext/tezos

Setup

Setup TezosExtension with magic-sdk


import { Magic } from 'magic-sdk';
import { TezosExtension } from '@magic-ext/tezos';

const magic = new Magic('YOUR_API_KEY', {
    extensions: [
        new TezosExtension({
            rpcUrl: 'tezos rpc url'
        })
    ]
});

// or


const magic = new Magic('YOUR_API_KEY', {
    extensions: {
        tezos: new TezosExtension({
            rpcUrl: 'tezos rpc url'
        })
    }
});

Magic SDK

See the developer documentation to learn how you can master the Magic SDK in a matter of minutes.

Usage

Get account

Using getAccount function to get Tezos public address for current user.

const publicAddress = await magic.tezos.getAccount();
console.log('tezos public address', publicAddress);

Send Transaction

const handlerSendTransaction = async () => {

    const result = await magic.tezos.sendTransactionOperation('tz1RVcUP9nUurgEJMDou8eW3bVDs6qmP5Lnc', 500000, 1500, '');
    console.log(`Injected operation group id ${result.operationGroupID}`);
};

Send Delegation

const handleSendDelegation = async () => {
    const result = await magic.tezos.sendDelegationOperation('tz1LhS2WFCinpwUTdUb991ocL2D9Uk6FJGJK', 10000);
    console.log(`Injected operation group id`, result);
}

Send Contract Origination

const handleSendContractOrigination = async () => {
          const contract = `[
        {
           "prim":"parameter",
           "args":[ { "prim":"string" } ]
        },
        {
           "prim":"storage",
           "args":[ { "prim":"string" } ]
        },
        {
           "prim":"code",
           "args":[
              [
                 { "prim":"CAR" },
                 { "prim":"NIL", "args":[ { "prim":"operation" } ] },
                 { "prim":"PAIR" }
              ]
           ]
        }
     ]`;
          const storage = '{"string": "Sample"}';


          const params = {
              amount: 0,
              delegate: undefined,
              fee: 100000,
              derivationPath: '',
              storage_limit: 1000,
              gas_limit: 100000,
              code: contract,
              storage,
              codeFormat: 'micheline',
          }

          const result = await magic.tezos.sendContractOriginationOperation(
              params.amount,
              params.delegate,
              params.fee,
              params.derivationPath,
              params.storage_limit,
              params.gas_limit,
              params.code,
              params.storage,
              params.codeFormat
          );
          console.log(`Injected operation`, result);
};

Send Contract Invocation

const handleInvokeContract = async () => {

      const params = {
          contract: 'KT1NXXLzk3rwnawPc4HwDn8siPkMaBjT5Hdr',
          amount: 0,
          fee: 100000,
          derivationPath: '',
          storageLimit: 1000,
          gasLimit: 100000,
          entrypoint: '',
          parameters: '{"string": "Cryptonomicon"}',
          parameterFormat: 'micheline'
      };

      const result = await magic.tezos.sendContractInvocationOperation(
          params.contract,
          params.amount,
          params.fee,
          params.derivationPath,
          params.storageLimit,
          params.gasLimit,
          params.entrypoint,
          params.parameters,
          params.parameterFormat
      );
      console.log(`Injected operation`, result);
};

Send Contract Ping

const handleContractPing = async () => {

      const params = {
          contract: 'KT1NXXLzk3rwnawPc4HwDn8siPkMaBjT5Hdr',
          amount: 10000,
          fee: 100000,
          derivationPath: '',
          storageLimit: 1000,
          gasLimit: 100000,
          entrypoint: ''
      };

      const result = await magic.tezos.sendContractPing(
          params.contract,
          params.amount,
          params.fee,
          params.derivationPath,
          params.storageLimit,
          params.gasLimit,
          params.entrypoint,
      );

      console.log(`Injected operation`, result);
}

FAQs

Package last updated on 21 Jun 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts