Giter Site home page Giter Site logo

Comments (2)

0x009922 avatar 0x009922 commented on June 24, 2024

Are you talking about Iroha 1 or Iroha 2 SDK?

from iroha-javascript.

lutfiblog avatar lutfiblog commented on June 24, 2024

I am working with Iroha 2:
Here are my approach:

export const setRole = async () => {
  //   let role_id = <Role as Identifiable>::Id::from_str("ACCESS_TO_MOUSE_METADATA")?;
  // let role = iroha_data_model::role::Role::new(role_id)
  //     .add_permission(CanSetKeyValueInUserMetadata::new(mouse_id))
  //     .add_permission(CanRemoveKeyValueInUserMetadata::new(mouse_id));
  // let register_role = RegisterBox::new(role);
  const role = Role({
    id: RoleId({
      name: "ACCESS_TO_PCHAIN_METADATA",
    }),
    permissions: VecToken([]),
  });

  const registerRole = RegisterBox({
    object: EvaluatesToRegistrableBox({
      expression: Expression(
        "Raw",
        Value(
          "Identifiable",
          IdentifiableBox(
            "NewRole",
            NewRole({
              inner: role,
            })
          )
        )
      ),
    }),
  });
};

export const canMintUserAsset = () => {
  const accountBox = AccountId({
    name: "lutfi",
    domain_id: DomainId({
      name: "prifa",
    }),
  });

  const assetDefinition = AssetDefinition({
    value_type: AssetValueType("Quantity"),
    id: AssetDefinitionId({
      name: "pchain",
      domain_id: DomainId({ name: "prifa" }),
    }),
    metadata: Metadata({ map: MapNameValue(new Map()) }),
    mintable: Mintable("Infinitely"), // If only we could mint more time.
  });



//   let mut genesis = RawGenesisBlock::new(
//     "alice".parse(),
//     "wonderland".parse(),
//     get_key_pair().public_key().clone(),
// );
// let rose_definition_id =
//     <AssetDefinition as Identifiable>::Id::from_str("rose#wonderland")?;
// let alice_id =
//     <Account as Identifiable>::Id::from_str("alice@wonderland")?;

// // Create a new `CanMintUserAssetDefinitions` permission token
// // to mint rose assets (`rose_definition_id`)
// let mint_rose_permission: PermissionToken =
//     CanMintUserAssetDefinitions::new(rose_definition_id).into();

// // Grant Alice permission to mint rose assets
// genesis.transactions[0]
//     .isi
//     .push(GrantBox::new(mint_rose_permission, alice_id).into());
}

The function for "PermissionToken" and "CanMintUserAssetDefinitions" not found in from "@iroha2/data-model", however i found this "FindAllPermissionTokenDefinitions"

Is there available solution to do it in Typescript?
or maybe, i need to define it in genesis.json?
Thanks

from iroha-javascript.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.