Sha256: b2da709e3eda0b04e301f01ed7c33b59b4eec047f078af75e2287de4c984b726

Contents?: true

Size: 1.51 KB

Versions: 8

Compression:

Stored size: 1.51 KB

Contents

"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _semver = _interopRequireDefault(require("semver"));

var _getDefaultSassImplementation = _interopRequireDefault(require("./getDefaultSassImplementation"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function getSassImplementation(implementation) {
  let resolvedImplementation = implementation;

  if (!resolvedImplementation) {
    // eslint-disable-next-line no-param-reassign
    resolvedImplementation = (0, _getDefaultSassImplementation.default)();
  }

  const {
    info
  } = resolvedImplementation;

  if (!info) {
    throw new Error('Unknown Sass implementation.');
  }

  const infoParts = info.split('\t');

  if (infoParts.length < 2) {
    throw new Error(`Unknown Sass implementation "${info}".`);
  }

  const [implementationName, version] = infoParts;

  if (implementationName === 'dart-sass') {
    if (!_semver.default.satisfies(version, '^1.3.0')) {
      throw new Error(`Dart Sass version ${version} is incompatible with ^1.3.0.`);
    }

    return resolvedImplementation;
  } else if (implementationName === 'node-sass') {
    if (!_semver.default.satisfies(version, '^4.0.0')) {
      throw new Error(`Node Sass version ${version} is incompatible with ^4.0.0.`);
    }

    return resolvedImplementation;
  }

  throw new Error(`Unknown Sass implementation "${implementationName}".`);
}

var _default = getSassImplementation;
exports.default = _default;

Version data entries

8 entries across 8 versions & 4 rubygems

Version Path
optimacms-0.1.61 spec/dummy/node_modules/sass-loader/dist/getSassImplementation.js
tang-0.2.1 spec/tang_app/node_modules/sass-loader/dist/getSassImplementation.js
groonga-client-model-6.0.0 test/apps/rails6.1.3/node_modules/sass-loader/dist/getSassImplementation.js
ruby2js-4.0.4 lib/tasks/testrails/node_modules/sass-loader/dist/getSassImplementation.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/sass-loader/dist/getSassImplementation.js
tang-0.2.0 spec/tang_app/node_modules/sass-loader/dist/getSassImplementation.js
tang-0.1.0 spec/tang_app/node_modules/sass-loader/dist/getSassImplementation.js
tang-0.0.9 spec/tang_app/node_modules/sass-loader/dist/getSassImplementation.js