JSPM

sticky-module

0.1.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 18303
  • Score
    100M100P100Q126910F
  • License ISC

A Symbol based leaky utility to store or retrieve a module

Package Exports

  • sticky-module
  • sticky-module/package.json

Readme

sticky-module

build status Coverage Status

A Symbol based leaky utility to store or retrieve a module, so that libraries can actually be sure if these are re-bundled elsewhere they still work as expected or do not bootstrap twice.

import stickyModule from 'sticky-module';

let [{a, b}, known] = stickyModule('@custom/name', {
  a: Math.random(),
  b: 'let it'
});

known;    // `false`
({a, b}); // the random value and the string "let it"

// on a further attempt it will return exact same object
// hence exact same random value `a` had before
[{a, b}, known] = stickyModule('@custom/name', {
  a: Math.random(),
  b: 'nope, already there'
});

known;    // this time it's `true`
({a, b}); // the same previous random value and the same string "let it"