npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@assetlayer/sdk-client

v0.0.1-beta.6.9

Published

Manage your assets client-side with the Asset Layer SDK / API

Downloads

32

Readme

npm version npm version

Asset Layer Client SDK

Manage digital assets for your application with Asset Layer. This Client SDK provides a turn-key solution for integrating your application with Magic Auth and a proxy server.

Prerequisites

This project requires NodeJS and NPM.

Table of contents

Getting Started

These instructions will help getting started managing your digital assets with Asset Layer.

Installation

To install and set up the library, run:

$ npm install @assetlayer/sdk-client

Or if you prefer using Yarn:

$ yarn add @assetlayer/sdk-client

Usage

Reference the SDK

You can reference the SDK in two ways:

import { AssetLayer } from '@assetlayer/sdk-client';

OR

const { AssetLayer } = require('@assetlayer/sdk-client');

Instantiate the SDK

const assetlayer = new AssetLayer();

Load an App

const app = await assetlayer.apps.info({ appId: 'YOUR_APP_ID' });

By default, handlers return the payload and will throw Errors. You can get the raw response by calling the raw handler as shown below:

const response = await assetlayer.apps.raw.info({ appId: 'YOUR_APP_ID' });

The raw handlers can be useful in situations where more data from the response is required. However, it can still throw an error, to fix that we can call the safe handler:

const { result: app, error } = await assetlayer.apps.safe.info({ appId: 'YOUR_APP_ID' });

Some endpoints may have different return types depending on the provided properties. For this reason, there are more specific handlers available:

const appOrApps:App|App[] = await assetlayer.apps.info({ appId: 'YOUR_APP_ID', appIds: ['APP_ID_1', 'APP_ID_2'] });
const app:App = await assetlayer.apps.getApp({ appId: 'YOUR_APP_ID' });
const apps:App[] = await assetlayer.apps.getApps({ appIds: ['APP_ID_1', 'APP_ID_2'] });

These all call the same core endpoint (https://api-v2.assetlayer.com/api/v1/app/info), but getApp & getApps offer stricter type security when passing props and returning values. Typescript is highly recommended and the sdk includes extensive typings, useful for referencing & importing, allowing for turn-key type-safe app development.

Login a User

Logging in a user is as simple as:

assetlayer.loginUser();

This will trigger a prompt for the user to sign-in. You can skip the email prompt by providing an email like so:

assetlayer.loginUser({ email });

You can also directly pass in a did token (unregistered). With this method you can await the response:

const success = await assetlayer.loginUser({ didToken });

You can also pass it a pre-registered didtoken:

const success = await assetlayer.loginUser({ registeredDidToken });

If not passing a didToken, awaiting the response is not effective. To receive an update after success you can pass in an onSuccess handler:

assetlayer.loginUser({ onSuccess: async () => console.log(await assetlayer.users.getUser()) });

Logout a User

assetlayer.logoutUser();

Handling an active session

Using initialize, you can sign in a user if there's already an active session:

const loggedIn = await assetlayer.initialize();

This will return whether or not the user was successfully logged in. You can also pass it an onComplete handler:

assetlayer.initialize((loggedIn) => { if (!loggedIn) assetlayer.loginUser(); });

SDK Development

Connecting with the Org

$ npm init --scope=assetlayer

Building a distribution version

$ npm run build

This task will use microbundle to create a distribution version of the project inside your local dist/ folder

Deploying to NPM

$ npm login

$ npm publish --access public