1.0.5 • Published 6 years ago

sageprotocol-js v1.0.5

Weekly downloads
1
License
ISC
Repository
-
Last release
6 years ago

Synopsis

Javascript module with helper methods to interact with Sage Protocol smart contracts.

Installation

npm i sageprotocol-js

Usage

const sageJS = require('sageprotocol-js')

API Reference

Note: All methods accept from and gas parameters. Gas is in wei. From must be an address for which the private key is available from the calling client.

createProfile

Estimated Gas: 445,222

Creates Profile smart contract and returns new Ethereum address

Inputs: nonce (optional), user name (optional)

From: Address owned by individual worker

Emits: ProfileCreated(nonce, new profile address)

Example: sageJS.createProfile({nonce: 1, name: 'Username', from: '0x', gas: 1000})

createBinaryWork

Gas: 680,988

Creates BinaryWork smart contract and returns new Ethereum address

Inputs: nonce (optional), Keywords (describing work to be performed. i.e. "HelpDesk")

From: Address owned by work requestor (Nynja)

Emits: WorkCreated(nonce, new work address)

Example: sageJS.createBinaryWork({nonce: 1, keyWords: 'HelpDesk', from: '0x', gas: 1000})

setPendingProfile

Gas: 28,640

Sets the public address for the Profile smart contract of the individual that is desired to complete the work.

Inputs: profile address

From: Address owned by work requestor (Nynja)

Example: sageJS.setPendingProfile({workAddress: '0x', profileAddress: '0x', from: '0x', gas: 1000})

acceptWork

Gas: 50,161

The desired individual accepts the work to be completed.

Inputs: none

From: Address owned by pendingProfile from setPendingProfile step

Example: sageJS.acceptWork({workAddress: '0x', from: '0x', gas: 1000})

completeWork

Gas: 29,812

Called by worker when complete.

Inputs: none

From: Address owned by acceptedProfile/pendingProfile

Example: sageJS.completeWork({workAddress: '0x', profileAddress: '0x', from: '0x', gas: 1000})

validate

Gas: 33,247

Called by work requestor (Nynja) when work is validated

Inputs: boolean vote

From: Address owned by work requestor (Nynja)

Example: sageJS.validate({workAddress: '0x', vote: true, from: '0x', gas: 1000})

acceptReputation

Gas: 58,355

Called by worker when they accept the validated work reputation

Inputs: work address, profile address

From: Address owned by the Profile smart contract of the worker

Emits: ReputationAccepted(profile address, work address)

Example: sageJS.acceptReputation({workAddress: '0x', profileAddress: '0x', from: '0x', gas: 1000})

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago