booleanStyle.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports["default"] = void 0;
  6. var schema = [{
  7. "enum": ['bool', 'boolean'],
  8. type: 'string'
  9. }];
  10. var create = function create(context) {
  11. var longForm = (context.options[0] || 'boolean') === 'boolean';
  12. return {
  13. BooleanTypeAnnotation: function BooleanTypeAnnotation(node) {
  14. var diff = node.range[1] - node.range[0];
  15. if (longForm && diff === 4) {
  16. context.report({
  17. fix: function fix(fixer) {
  18. return fixer.replaceText(node, 'boolean');
  19. },
  20. message: 'Use "boolean", not "bool"',
  21. node: node
  22. });
  23. }
  24. if (!longForm && diff !== 4) {
  25. context.report({
  26. fix: function fix(fixer) {
  27. return fixer.replaceText(node, 'bool');
  28. },
  29. message: 'Use "bool", not "boolean"',
  30. node: node
  31. });
  32. }
  33. }
  34. };
  35. };
  36. var _default = {
  37. create: create,
  38. meta: {
  39. fixable: 'code'
  40. },
  41. schema: schema
  42. };
  43. exports["default"] = _default;
  44. module.exports = exports.default;