HOME


sh-3ll 1.0
DIR:/proc/thread-self/cwd/bright.medisavehealthcarebd.com/node_modules/tailwindcss/lib/
Upload File :
Current File : //proc/thread-self/cwd/bright.medisavehealthcarebd.com/node_modules/tailwindcss/lib/featureFlags.js
"use strict";

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

var _lodash = _interopRequireDefault(require("lodash"));

var _chalk = _interopRequireDefault(require("chalk"));

var _log = _interopRequireDefault(require("./util/log"));

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

const featureFlags = {
  future: ['removeDeprecatedGapUtilities', 'purgeLayersByDefault'],
  experimental: ['uniformColorPalette', 'extendedSpacingScale', 'defaultLineHeights', 'extendedFontSizeScale', 'applyComplexClasses', 'darkModeVariant', 'standardFontWeights']
};

function flagEnabled(config, flag) {
  if (featureFlags.future.includes(flag)) {
    return config.future === 'all' || _lodash.default.get(config, ['future', flag], false);
  }

  if (featureFlags.experimental.includes(flag)) {
    return config.experimental === 'all' || _lodash.default.get(config, ['experimental', flag], false);
  }

  return false;
}

function experimentalFlagsEnabled(config) {
  if (config.experimental === 'all') {
    return featureFlags.experimental;
  }

  return Object.keys(_lodash.default.get(config, 'experimental', {})).filter(flag => featureFlags.experimental.includes(flag) && config.experimental[flag]);
}

function futureFlagsAvailable(config) {
  if (config.future === 'all') {
    return [];
  }

  return featureFlags.future.filter(flag => !_lodash.default.has(config, ['future', flag]));
}

function issueFlagNotices(config) {
  if (process.env.JEST_WORKER_ID !== undefined) {
    return;
  }

  if (experimentalFlagsEnabled(config).length > 0) {
    const changes = experimentalFlagsEnabled(config).map(s => _chalk.default.yellow(s)).join(', ');

    _log.default.warn([`You have enabled experimental features: ${changes}`, 'Experimental features are not covered by semver, may introduce breaking changes, and can change at any time.']);
  }

  if (futureFlagsAvailable(config).length > 0) {
    const changes = futureFlagsAvailable(config).map(s => _chalk.default.magenta(s)).join(', ');

    _log.default.risk([`There are upcoming breaking changes: ${changes}`, 'We highly recommend opting-in to these changes now to simplify upgrading Tailwind in the future.', 'https://tailwindcss.com/docs/upcoming-changes']);
  }
}

var _default = featureFlags;
exports.default = _default;