@node-sass/cdn-importer

    1.0.0 • Public • Published

    Build Status

    cdn-importer

    Node Sass importer for resolving from a CDN

    Disclaimer

    This is ALPHA software.

    It's messy. It's probably slow. It's probably buggy.

    Give it a shot. File bugs. Be patient.

    Support

    • Node >= 6
    • node-sass >= 4.9.0

    Install

    This package has a peer dependency on Node Sass for ensure import API compatibility.

    npm install @node-sass/cdn-importer node-sass

    Usage

    When Node Sass parses an @import with a URL prefixed by cdn: it will attempt to resolve the URL against following URL. This can be useful for directly consuming files from UNPKG or jsDelivr

    @import "cdn:https://unpkg.com/normalize.css@8.0.0/normalize.css";

    As a convenience if an @import URL is prefixed by unpgk: the importer will resolve UNPKG short-hand syntax.

    @import "unpkg:normalize.css@8.0.0/normalize.css";

    Node Sass API

    var sass = require('node-sass');
    var cdnImporter = require('@node-sass/cdn-importer');
     
    sass.render({
      file: 'index.scss',
      importer: [cdnImporter],
    }, function (err, result) {
      if (err) throw err;
      console.log(result.css.toString());
    });

    Node Sass CLI

    $ node-sass index.scss --importer node_modules/@node-sass/cdn-importer/index.js

    Caveats

    Asynchronous only

    Because of how inefficient synchronous network requests are this importer does not work with renderSync.

    Single files only

    Since @imports in the resolved file won't have the cdn: prefix this impoter is only useful for single file packages like normalize.css

    Install

    npm i @node-sass/cdn-importer

    DownloadsWeekly Downloads

    1

    Version

    1.0.0

    License

    ISC

    Unpacked Size

    5.16 kB

    Total Files

    6

    Last publish

    Collaborators

    • avatar