1.1.5 • Published 4 years ago

can-pass-js v1.1.5

Weekly downloads
6
License
MIT
Repository
github
Last release
4 years ago

can-pass-js

Build Status

NPM

https://nodei.co/npm/can-pass-js.png?downloads=true&downloadRank=true&stars=true

It is a sdk for can-pass which facilitates 3rd party 's developers experience when they are working with can-pass api.

Loading the SDK

Using script below to load the SDK.

<script src="../lib/can-pass-api.js"></script>

After the SDK has loaded, it will call the init function, so you should define that function to init the SDK.

(function () {
  const canPass = window.CanPass && window.CanPass.getInstance();

  if (canPass) {
    canPass.init({
      clientId: "leonardo",

      version: "1.0",
    });

    canPass.loginButton();
  }
})();

Replace {client-id} with your client ID and {api-version} with the API version to use. The latest version is 'v1.0'

Remember, you have to init the SDK before using any CanPass SDK methods.

The full script for embedding to your HTML

<script src="../lib/can-pass-api.js"></script>

<script>
  (function () {
    const canPass = window.CanPass && window.CanPass.getInstance();

    if (canPass) {
      canPass.init({
        clientId: "{client-id}",

        version: "{api-version}",
      });

      // Start to use CanPass SDK from here.
    }
  })();
</script>

Import via yarn or npm

Run yarn add can-pass-js from terminal.

import CanPass from "can-pass-js";

CanPass.init({
  clientId: "{client-id}",

  version: "{api-version}",
});

// Start to use CanPass SDK from here.

Login Button

Place this code wherever you want the plugin to appear login button on your page.

<button
  class="can-pass-login-button"
  data-redirect-uri="https://app.com/login-success"
  data-state="1a2b3c"
  data-domain="https://test.cryptobadge.app"
  data-text="Sign in with Cryptobadge"
></button>

Reference

Init SDK
CanPass.init(options);
Parameters

options is an object to configure the SDK.

FieldTypeDescription
clientIdstring (required)The clientId generated by CanPass Admin Console
versionstringThe version of API
storestringThe store which will be used to save data. Supported: localStore, memory
endPointstringThe endpoint to request transaction information
signTxURLstringSign transaction place
Sign a transaction

CanPass.signTx(tx, callback)

After call that, it will open a new window to operate signing transaction. Input secret code to sign transaction (Browser required)

Parameters
NameTypeDescription
txobjectThe body of transaction. For example: { actions: [] }
callback(error, tx) => voidThe callback function when sign transaction.
Set credential manually

CanPass.setCredentials(credentials)

The 3rd party can set credential manually if they use external login flow.

options is an object contains tokens.

FieldTypeDescription
accessTokenstringThe accessToken

Example

Development

Environment Variables
VariableDescription
CAN_PASS_SIGN_TRANSACTION_URLThe signing transaction URL
CAN_KEYS_ENDPOINTThe graphQL endpoint of Can Keys
LOGIN_BUTTON_CLASS_NAMEName of login button class
CB_WEBLogin with CryptoBadge URL
  • To build run yarn build
  • To test run yarn test
  • To dev run yarn watch
1.1.5

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.10

4 years ago

1.0.9

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.2

4 years ago

1.0.3

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.9.14

4 years ago

0.9.13

4 years ago

0.9.12

4 years ago

0.9.11

4 years ago

0.9.10

4 years ago

0.9.8

4 years ago

0.9.9

4 years ago

0.9.7

4 years ago

0.9.4

4 years ago

0.9.5

4 years ago

0.9.3

4 years ago

0.9.2

4 years ago

0.9.1

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago