JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 471
  • Score
    100M100P100Q69102F
  • License MIT

Authentication library for Solid browser-based clients

Package Exports

  • solid-auth-tls

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (solid-auth-tls) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

solid-auth-tls

NPM Version Build Status Coverage Status

JS client authentication library for Solid browser-based clients. Used inside solid-client.

Usage

The solid-auth-tls client can be used from Node as well as browser processes.

Within Node

const auth = require('solid-auth-tls')

auth.login({ key: 'path/to/tls-key.pem', cert: 'path/to/tls-cert.pem' })
  .then(webId => /* ... */)
  .catch(err => /* ... */)

Within the Browser

A UMD bundle is provided so that you can do the following (after including the bundle via an HTML <script> tag):

SolidAuthTLS.login() // the browser automatically provides the client key/cert for you
  .then(webId => /* ... */)
  .catch(err => /* ... */)

You can also use a module bundler such as webpack and require the module like in the node example. When using webpack you need to include the following plugin(s) in order to keep webpack from trying to resolve node modules such as fs and https. Add this to your webpack.config.js:

const webpack = require('webpack')

module.exports = {
  // ...
  plugins: [
    new webpack.DefinePlugin({ 'global.IS_BROWSER': true })
    new webpack.optimize.UglifyJsPlugin(/* ... */)
  ]
}

This makes sure that code paths that require node modules (for use within node) become dead code and get removed by the UglifyJsPlugin's dead code eliminator.