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

@stratumn/media-sdk

Package Overview
Dependencies
Maintainers
14
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stratumn/media-sdk

SDK for media API

  • 1.12.2
  • latest
  • npm
  • Socket score

Version published
Maintainers
14
Created
Source

media-sdk

SDK for the Stratumn Media API.

Build

yarn
yarn build

Usage

import { aes } from '@stratumn/js-crypto';
import Sdk from '@stratumn/media-sdk';

const file1 = 'path/to/file1';
const file2 = 'path/to/file2';
const file3 = 'path/to/file3';
const file4 = 'path/to/file4';

const client = new Sdk('http://media-url.domain.com').setToken(
  '<stratumn_account_token>'
);

// We want to use a specific key to encrypt file1 and file2.
const encryptionKey = new aes.SymmetricKey();
console.log(encryptionKey);

const [{ digest: digest1 }, { digest: digest2 }] = await client.uploadFiles(
  [file1, file2],
  {
    key: encryptionKey.export().key
  }
);

// We let the SDK create a new symmetric key automatically for file3.
const { digest: digest3, key: encryptionKey3 } = await client.uploadFile(file3);
console.log(encryptionKey3);

// We upload file4 without encryption (it could be a user avatar for example).
const { digest: digest4 } = await client.uploadFile(file4, {
  disableEncryption: true
});

// Retrieve the file info for a single file.
const { name, download_url } = await client.getDirectDownloadInfo(digest1);
console.log(download_url);

// Download a single file.
const fileContent = await client.downloadFile(digest1);
console.log(fileContent);

// Retrieve the file info for multiple files, optionally including the
// download_url.
const files = await client.getFileInfoByDigests([digest1, digest2], true);
console.log(files);

Release Process

We are using semantic-release to publish the package on the NPM registry. Publishing can be triggered by "promoting" a successful build on master from Semaphore UI. The commit message summary should follow the following format:

Tag: Message (fixes #1234)

Where Tag is one of the following:

  • Fix - for a bug fix. (patch)
  • Update - for a backwards-compatible enhancement. (minor)
  • New - implemented a new feature. (minor)
  • Breaking - for a backwards-incompatible enhancement. (major)

The message summary should be a one-sentence description of the change. The issue number should be mentioned at the end. * The commit message should say "(fixes #1234)" at the end of the description if it closes out an existing issue (replace 1234 with the issue number). If the commit doesn't completely fix the issue, then use (refs #1234) instead of (fixes #1234).

Here are some good commit message summary examples:

Build: Update Semaphore to only test Node 0.10 (refs #734)
Fix: Semi rule incorrectly flagging extra semicolon (fixes #840)
Upgrade: Express to 13.4.2, switch to using Express comment attachment (fixes #730)

FAQs

Package last updated on 18 May 2022

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc