can-namespace

Namespace where can-* packages are registered

Usage no npm install needed!

<script type="module">
  import canNamespace from 'https://cdn.skypack.dev/can-namespace';
</script>

README

can-namespace

Namespace where can-* packages are registered

Usage

can-namespace exports an object that can be used to ensure only one version of a module is loaded in an app.

For example, if you have a module can-unicorn that you want to make sure is only loaded a single time, you can use can-namespace:

var namespace = require('can-namespace');

var unicorn = {
    // ...
};

if (namespace.unicorn) {
    throw new Error("You can't have two versions of can-unicorn, check your dependencies");
} else {
    module.exports = namespace.unicorn = unicorn;
}

Any module requiring can-namespace will receive the same module because only one version of can-namespace will ever be published.