behaviours.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.behaviours = undefined;
  6. exports.getDefaultPlugins = getDefaultPlugins;
  7. exports.isValidBehaviour = isValidBehaviour;
  8. var _postcssModulesLocalByDefault = require("postcss-modules-local-by-default");
  9. var _postcssModulesLocalByDefault2 = _interopRequireDefault(_postcssModulesLocalByDefault);
  10. var _postcssModulesExtractImports = require("postcss-modules-extract-imports");
  11. var _postcssModulesExtractImports2 = _interopRequireDefault(_postcssModulesExtractImports);
  12. var _postcssModulesScope = require("postcss-modules-scope");
  13. var _postcssModulesScope2 = _interopRequireDefault(_postcssModulesScope);
  14. var _postcssModulesValues = require("postcss-modules-values");
  15. var _postcssModulesValues2 = _interopRequireDefault(_postcssModulesValues);
  16. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  17. const behaviours = exports.behaviours = {
  18. LOCAL: "local",
  19. GLOBAL: "global"
  20. };
  21. function getDefaultPlugins({
  22. behaviour,
  23. generateScopedName,
  24. exportGlobals
  25. }) {
  26. const scope = (0, _postcssModulesScope2.default)({ generateScopedName, exportGlobals });
  27. const plugins = {
  28. [behaviours.LOCAL]: [_postcssModulesValues2.default, _postcssModulesLocalByDefault2.default, _postcssModulesExtractImports2.default, scope],
  29. [behaviours.GLOBAL]: [_postcssModulesValues2.default, _postcssModulesExtractImports2.default, scope]
  30. };
  31. return plugins[behaviour];
  32. }
  33. function isValidBehaviour(behaviour) {
  34. return Object.keys(behaviours).map(key => behaviours[key]).indexOf(behaviour) > -1;
  35. }