@atlaskit/eslint-plugin-design-system 11.10.0 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/ast-nodes/object-entry.js +1 -1
  3. package/dist/cjs/ast-nodes/root.js +1 -1
  4. package/dist/cjs/presets/all.codegen.js +1 -1
  5. package/dist/cjs/presets/recommended.codegen.js +1 -1
  6. package/dist/cjs/rules/consistent-css-prop-usage/index.js +1 -1
  7. package/dist/cjs/rules/ensure-design-token-usage/color.js +10 -10
  8. package/dist/cjs/rules/ensure-design-token-usage/index.js +12 -5
  9. package/dist/cjs/rules/ensure-design-token-usage/utils.js +3 -3
  10. package/dist/cjs/rules/no-deprecated-apis/index.js +1 -1
  11. package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind-all.js +1 -1
  12. package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind.js +1 -1
  13. package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-jsx-attribute.js +1 -1
  14. package/dist/cjs/rules/no-empty-styled-expression/index.js +1 -1
  15. package/dist/cjs/rules/no-html-anchor/node-types/jsx-element/index.js +1 -1
  16. package/dist/cjs/rules/no-html-anchor/node-types/styled-component/index.js +1 -1
  17. package/dist/cjs/rules/no-html-button/node-types/styled-component/index.js +1 -1
  18. package/dist/cjs/rules/no-invalid-css-map/index.js +1 -1
  19. package/dist/cjs/rules/no-invalid-css-map/utils.js +1 -1
  20. package/dist/cjs/rules/no-legacy-icons/helpers.js +40 -3
  21. package/dist/cjs/rules/no-margin/index.js +4 -4
  22. package/dist/cjs/rules/no-nested-styles/index.js +2 -2
  23. package/dist/cjs/rules/no-physical-properties/index.js +1 -1
  24. package/dist/cjs/rules/no-unsafe-design-token-usage/index.js +2 -2
  25. package/dist/cjs/rules/no-unsafe-style-overrides/index.js +1 -1
  26. package/dist/cjs/rules/use-heading/config/index.js +1 -1
  27. package/dist/cjs/rules/use-heading/index.js +13 -1
  28. package/dist/cjs/rules/use-heading-level-in-spotlight-card/index.js +1 -1
  29. package/dist/cjs/rules/use-href-in-link-item/index.js +1 -1
  30. package/dist/cjs/rules/use-latest-xcss-syntax/index.js +1 -1
  31. package/dist/cjs/rules/use-latest-xcss-syntax/transformers/style-property/index.js +1 -1
  32. package/dist/cjs/rules/use-latest-xcss-syntax-typography/config/index.js +3 -2
  33. package/dist/cjs/rules/use-latest-xcss-syntax-typography/index.js +24 -6
  34. package/dist/cjs/rules/use-primitives/config/index.js +41 -1
  35. package/dist/cjs/rules/use-primitives/index.js +14 -0
  36. package/dist/cjs/rules/use-primitives/transformers/compiled-styled/index.js +1 -1
  37. package/dist/cjs/rules/use-primitives/transformers/css-to-xcss.js +1 -1
  38. package/dist/cjs/rules/use-primitives/transformers/emotion-css/index.js +1 -1
  39. package/dist/cjs/rules/use-primitives/utils/get-variable-usage-count.js +1 -1
  40. package/dist/cjs/rules/use-primitives-text/config/index.js +11 -2
  41. package/dist/cjs/rules/use-primitives-text/index.js +27 -0
  42. package/dist/cjs/rules/use-primitives-text/transformers/emphasis-elements.js +1 -1
  43. package/dist/cjs/rules/use-primitives-text/transformers/paragraph-elements.js +1 -1
  44. package/dist/cjs/rules/use-primitives-text/transformers/span-elements.js +1 -1
  45. package/dist/cjs/rules/use-primitives-text/transformers/strong-elements.js +1 -1
  46. package/dist/cjs/rules/use-tokens-space/index.js +5 -5
  47. package/dist/cjs/rules/use-tokens-typography/config/index.js +1 -1
  48. package/dist/cjs/rules/use-tokens-typography/index.js +7 -6
  49. package/dist/cjs/rules/use-tokens-typography/transformers/font-family.js +3 -2
  50. package/dist/cjs/rules/use-tokens-typography/transformers/font-weight.js +3 -2
  51. package/dist/cjs/rules/use-tokens-typography/transformers/style-object.js +3 -9
  52. package/dist/cjs/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -1
  53. package/dist/cjs/rules/use-visually-hidden/index.js +2 -2
  54. package/dist/cjs/rules/utils/create-no-exported-rule/check-if-supported-export.js +3 -3
  55. package/dist/cjs/rules/utils/create-no-exported-rule/main.js +1 -1
  56. package/dist/cjs/rules/utils/create-no-tagged-template-expression-rule/index.js +1 -1
  57. package/dist/cjs/rules/utils/get-first-supported-import.js +1 -1
  58. package/dist/cjs/rules/utils/get-is-exception.js +3 -3
  59. package/dist/cjs/rules/utils/is-node.js +16 -16
  60. package/dist/es2019/ast-nodes/object-entry.js +1 -1
  61. package/dist/es2019/ast-nodes/root.js +1 -1
  62. package/dist/es2019/presets/all.codegen.js +1 -1
  63. package/dist/es2019/presets/recommended.codegen.js +1 -1
  64. package/dist/es2019/rules/consistent-css-prop-usage/index.js +1 -1
  65. package/dist/es2019/rules/ensure-design-token-usage/color.js +10 -10
  66. package/dist/es2019/rules/ensure-design-token-usage/index.js +8 -1
  67. package/dist/es2019/rules/ensure-design-token-usage/utils.js +1 -1
  68. package/dist/es2019/rules/no-deprecated-apis/index.js +1 -1
  69. package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind-all.js +1 -1
  70. package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind.js +1 -1
  71. package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-jsx-attribute.js +1 -1
  72. package/dist/es2019/rules/no-empty-styled-expression/index.js +1 -1
  73. package/dist/es2019/rules/no-html-anchor/node-types/jsx-element/index.js +1 -1
  74. package/dist/es2019/rules/no-html-anchor/node-types/styled-component/index.js +1 -1
  75. package/dist/es2019/rules/no-html-button/node-types/styled-component/index.js +1 -1
  76. package/dist/es2019/rules/no-invalid-css-map/index.js +1 -1
  77. package/dist/es2019/rules/no-invalid-css-map/utils.js +1 -1
  78. package/dist/es2019/rules/no-legacy-icons/helpers.js +38 -3
  79. package/dist/es2019/rules/no-nested-styles/index.js +1 -1
  80. package/dist/es2019/rules/no-unsafe-style-overrides/index.js +1 -1
  81. package/dist/es2019/rules/use-heading/config/index.js +1 -1
  82. package/dist/es2019/rules/use-heading/index.js +12 -0
  83. package/dist/es2019/rules/use-heading-level-in-spotlight-card/index.js +1 -1
  84. package/dist/es2019/rules/use-href-in-link-item/index.js +1 -1
  85. package/dist/es2019/rules/use-latest-xcss-syntax/transformers/style-property/index.js +1 -1
  86. package/dist/es2019/rules/use-latest-xcss-syntax-typography/config/index.js +2 -1
  87. package/dist/es2019/rules/use-latest-xcss-syntax-typography/index.js +19 -1
  88. package/dist/es2019/rules/use-primitives/config/index.js +40 -0
  89. package/dist/es2019/rules/use-primitives/index.js +15 -1
  90. package/dist/es2019/rules/use-primitives/transformers/compiled-styled/index.js +1 -1
  91. package/dist/es2019/rules/use-primitives/transformers/css-to-xcss.js +1 -1
  92. package/dist/es2019/rules/use-primitives/transformers/emotion-css/index.js +1 -1
  93. package/dist/es2019/rules/use-primitives/utils/get-variable-usage-count.js +1 -1
  94. package/dist/es2019/rules/use-primitives-text/config/index.js +10 -1
  95. package/dist/es2019/rules/use-primitives-text/index.js +28 -1
  96. package/dist/es2019/rules/use-primitives-text/transformers/emphasis-elements.js +1 -1
  97. package/dist/es2019/rules/use-primitives-text/transformers/paragraph-elements.js +1 -1
  98. package/dist/es2019/rules/use-primitives-text/transformers/span-elements.js +1 -1
  99. package/dist/es2019/rules/use-primitives-text/transformers/strong-elements.js +1 -1
  100. package/dist/es2019/rules/use-tokens-typography/config/index.js +1 -1
  101. package/dist/es2019/rules/use-tokens-typography/index.js +2 -1
  102. package/dist/es2019/rules/use-tokens-typography/transformers/font-family.js +3 -2
  103. package/dist/es2019/rules/use-tokens-typography/transformers/font-weight.js +3 -2
  104. package/dist/es2019/rules/use-tokens-typography/transformers/style-object.js +3 -9
  105. package/dist/es2019/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -1
  106. package/dist/es2019/rules/use-visually-hidden/index.js +2 -2
  107. package/dist/es2019/rules/utils/create-no-exported-rule/check-if-supported-export.js +1 -1
  108. package/dist/es2019/rules/utils/create-no-exported-rule/main.js +1 -1
  109. package/dist/es2019/rules/utils/create-no-tagged-template-expression-rule/index.js +1 -1
  110. package/dist/es2019/rules/utils/get-first-supported-import.js +1 -1
  111. package/dist/es2019/rules/utils/is-node.js +1 -1
  112. package/dist/esm/ast-nodes/object-entry.js +1 -1
  113. package/dist/esm/ast-nodes/root.js +1 -1
  114. package/dist/esm/presets/all.codegen.js +1 -1
  115. package/dist/esm/presets/recommended.codegen.js +1 -1
  116. package/dist/esm/rules/consistent-css-prop-usage/index.js +1 -1
  117. package/dist/esm/rules/ensure-design-token-usage/color.js +10 -10
  118. package/dist/esm/rules/ensure-design-token-usage/index.js +12 -5
  119. package/dist/esm/rules/ensure-design-token-usage/utils.js +4 -3
  120. package/dist/esm/rules/no-deprecated-apis/index.js +1 -1
  121. package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind-all.js +1 -1
  122. package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind.js +1 -1
  123. package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-jsx-attribute.js +1 -1
  124. package/dist/esm/rules/no-empty-styled-expression/index.js +1 -1
  125. package/dist/esm/rules/no-html-anchor/node-types/jsx-element/index.js +1 -1
  126. package/dist/esm/rules/no-html-anchor/node-types/styled-component/index.js +1 -1
  127. package/dist/esm/rules/no-html-button/node-types/styled-component/index.js +1 -1
  128. package/dist/esm/rules/no-invalid-css-map/index.js +1 -1
  129. package/dist/esm/rules/no-invalid-css-map/utils.js +1 -1
  130. package/dist/esm/rules/no-legacy-icons/helpers.js +40 -3
  131. package/dist/esm/rules/no-margin/index.js +4 -4
  132. package/dist/esm/rules/no-nested-styles/index.js +2 -2
  133. package/dist/esm/rules/no-physical-properties/index.js +1 -1
  134. package/dist/esm/rules/no-unsafe-design-token-usage/index.js +2 -2
  135. package/dist/esm/rules/no-unsafe-style-overrides/index.js +1 -1
  136. package/dist/esm/rules/use-heading/config/index.js +1 -1
  137. package/dist/esm/rules/use-heading/index.js +13 -1
  138. package/dist/esm/rules/use-heading-level-in-spotlight-card/index.js +1 -1
  139. package/dist/esm/rules/use-href-in-link-item/index.js +1 -1
  140. package/dist/esm/rules/use-latest-xcss-syntax/index.js +1 -1
  141. package/dist/esm/rules/use-latest-xcss-syntax/transformers/style-property/index.js +1 -1
  142. package/dist/esm/rules/use-latest-xcss-syntax-typography/config/index.js +2 -1
  143. package/dist/esm/rules/use-latest-xcss-syntax-typography/index.js +25 -7
  144. package/dist/esm/rules/use-primitives/config/index.js +40 -0
  145. package/dist/esm/rules/use-primitives/index.js +15 -1
  146. package/dist/esm/rules/use-primitives/transformers/compiled-styled/index.js +1 -1
  147. package/dist/esm/rules/use-primitives/transformers/css-to-xcss.js +1 -1
  148. package/dist/esm/rules/use-primitives/transformers/emotion-css/index.js +1 -1
  149. package/dist/esm/rules/use-primitives/utils/get-variable-usage-count.js +1 -1
  150. package/dist/esm/rules/use-primitives-text/config/index.js +10 -1
  151. package/dist/esm/rules/use-primitives-text/index.js +28 -1
  152. package/dist/esm/rules/use-primitives-text/transformers/emphasis-elements.js +1 -1
  153. package/dist/esm/rules/use-primitives-text/transformers/paragraph-elements.js +1 -1
  154. package/dist/esm/rules/use-primitives-text/transformers/span-elements.js +1 -1
  155. package/dist/esm/rules/use-primitives-text/transformers/strong-elements.js +1 -1
  156. package/dist/esm/rules/use-tokens-space/index.js +5 -5
  157. package/dist/esm/rules/use-tokens-typography/config/index.js +1 -1
  158. package/dist/esm/rules/use-tokens-typography/index.js +7 -6
  159. package/dist/esm/rules/use-tokens-typography/transformers/font-family.js +3 -2
  160. package/dist/esm/rules/use-tokens-typography/transformers/font-weight.js +3 -2
  161. package/dist/esm/rules/use-tokens-typography/transformers/style-object.js +3 -9
  162. package/dist/esm/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -1
  163. package/dist/esm/rules/use-visually-hidden/index.js +2 -2
  164. package/dist/esm/rules/utils/create-no-exported-rule/check-if-supported-export.js +5 -4
  165. package/dist/esm/rules/utils/create-no-exported-rule/main.js +1 -1
  166. package/dist/esm/rules/utils/create-no-tagged-template-expression-rule/index.js +1 -1
  167. package/dist/esm/rules/utils/get-first-supported-import.js +1 -1
  168. package/dist/esm/rules/utils/get-is-exception.js +3 -3
  169. package/dist/esm/rules/utils/is-node.js +23 -16
  170. package/dist/types/rules/use-latest-xcss-syntax-typography/config/index.d.ts +2 -1
  171. package/dist/types/rules/use-primitives/config/index.d.ts +2 -1
  172. package/dist/types/rules/use-primitives-text/config/index.d.ts +2 -1
  173. package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/config/index.d.ts +6 -1
  174. package/dist/types-ts4.5/rules/use-primitives/config/index.d.ts +2 -1
  175. package/dist/types-ts4.5/rules/use-primitives-text/config/index.d.ts +2 -1
  176. package/package.json +3 -3
  177. package/dist/cjs/rules/utils/context-compat.js +0 -35
  178. package/dist/es2019/rules/utils/context-compat.js +0 -29
  179. package/dist/esm/rules/utils/context-compat.js +0 -29
  180. package/dist/types/rules/utils/context-compat.d.ts +0 -19
  181. package/dist/types-ts4.5/rules/utils/context-compat.d.ts +0 -19
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @atlaskit/eslint-plugin-design-system
2
2
 
3
+ ## 12.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#111194](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/111194)
8
+ [`2e69750df9b79`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/2e69750df9b79) -
9
+ Typography lint rules enable all patterns by default:
10
+ - `use-tokens-typography` enables all patterns by default. Set lint rule config to
11
+ `patterns: ['style-object']` for old default behaviour.
12
+ - `use-primitives-text` and `use-heading` enables the `enableUnsafeReport` option by default. Set
13
+ lint rule config to `enableUnsafeReport: false` for old default behaviour.
14
+
3
15
  ## 11.10.0
4
16
 
5
17
  ### Minor Changes
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ObjectEntry = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../rules/utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  /* eslint-disable @repo/internal/react/require-jsdoc */
10
10
 
11
11
  var ObjectEntry = exports.ObjectEntry = {
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.Root = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../rules/utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _import = require("./import");
10
10
  /* eslint-disable @repo/internal/react/require-jsdoc */
11
11
 
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  /**
8
8
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
9
- * @codegen <<SignedSource::63e44eb7233c2d498e43881a7090178b>>
9
+ * @codegen <<SignedSource::75357860fd00d6fc5060362c75d5db5e>>
10
10
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
11
11
  */
12
12
  var _default = exports.default = {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  /**
8
8
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
9
- * @codegen <<SignedSource::bacf70c4f4cda24ee7278c574ff73a12>>
9
+ * @codegen <<SignedSource::1f8c75cb592edbc7ccb124c7e831e475>>
10
10
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
11
11
  */
12
12
  var _default = exports.default = {
@@ -12,10 +12,10 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
12
12
  var _eslintCodemodUtils = require("eslint-codemod-utils");
13
13
  var _estraverse = _interopRequireDefault(require("estraverse"));
14
14
  var _assign = _interopRequireDefault(require("lodash/assign"));
15
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
15
16
  var _findVariable = require("@atlaskit/eslint-utils/find-variable");
16
17
  var _isSupportedImport = require("@atlaskit/eslint-utils/is-supported-import");
17
18
  var _astNodes = require("../../ast-nodes");
18
- var _contextCompat = require("../utils/context-compat");
19
19
  var _createRule = require("../utils/create-rule");
20
20
  var _getFirstSupportedImport = require("../utils/get-first-supported-import");
21
21
  var _getImportNodeBySource = require("../utils/get-import-node-by-source");
@@ -134,25 +134,25 @@ var lintJSXLiteralForColor = exports.lintJSXLiteralForColor = function lintJSXLi
134
134
  if (node.type !== 'Literal') {
135
135
  return;
136
136
  }
137
- if (!(0, _eslintCodemodUtils.isNodeOfType)(node.parent, 'JSXAttribute')) {
138
- return;
139
- }
140
- if (!(0, _eslintCodemodUtils.isNodeOfType)(node.parent.name, 'JSXIdentifier')) {
137
+
138
+ // Changed this condition to properly handle both direct literals and expression containers
139
+ var parent = (0, _eslintCodemodUtils.isNodeOfType)(node.parent, 'JSXExpressionContainer') ? node.parent.parent : node.parent;
140
+ if (!(0, _eslintCodemodUtils.isNodeOfType)(parent, 'JSXAttribute')) {
141
141
  return;
142
142
  }
143
- if ((0, _isNode.isDecendantOfSvgElement)(node.parent)) {
143
+ if ((0, _isNode.isDecendantOfSvgElement)(parent)) {
144
144
  return;
145
145
  }
146
146
 
147
147
  // Box backgroundColor prop accepts token names directly - don't lint against this
148
- if ((0, _isNode.isDecendantOfPrimitive)(node.parent, context)) {
148
+ if ((0, _isNode.isDecendantOfPrimitive)(parent, context)) {
149
149
  return;
150
150
  }
151
- if (['alt', 'src', 'label', 'key', 'appearance'].includes(node.parent.name.name)) {
151
+ if (['alt', 'src', 'label', 'key', 'appearance'].includes(typeof parent.name.name === 'string' ? parent.name.name : parent.name.name.name)) {
152
152
  return;
153
153
  }
154
154
  var isException = (0, _getIsException.getIsException)(config.exceptions);
155
- if (isException(node.parent)) {
155
+ if (isException(parent)) {
156
156
  return;
157
157
  }
158
158
 
@@ -216,13 +216,13 @@ var getTokenSuggestion = exports.getTokenSuggestion = function getTokenSuggestio
216
216
  shouldReturnSuggestion: !(0, _isNode.isDecendantOfGlobalToken)(node) && config.shouldEnforceFallbacks === false,
217
217
  desc: "Convert to token",
218
218
  fix: function fix(fixer) {
219
- return fixer.replaceText(node, "token('')");
219
+ return fixer.replaceText((0, _eslintCodemodUtils.isNodeOfType)(node.parent, 'MemberExpression') ? node.parent : node, "token('')");
220
220
  }
221
221
  }, {
222
222
  shouldReturnSuggestion: !(0, _isNode.isDecendantOfGlobalToken)(node) && config.shouldEnforceFallbacks === true,
223
223
  desc: "Convert to token with fallback",
224
224
  fix: function fix(fixer) {
225
- return fixer.replaceText(node, (0, _eslintCodemodUtils.isNodeOfType)(node.parent, 'JSXAttribute') ? "{token('', ".concat(reference, ")}") : "token('', ".concat(reference, ")"));
225
+ return fixer.replaceText((0, _eslintCodemodUtils.isNodeOfType)(node.parent, 'MemberExpression') ? node.parent : node, (0, _eslintCodemodUtils.isNodeOfType)(node.parent, 'JSXAttribute') ? "{token('', ".concat(reference, ")}") : "token('', ".concat(reference, ")"));
226
226
  }
227
227
  }].filter(filterSuggestion);
228
228
  };
@@ -7,8 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = exports.createWithConfig = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _eslintCodemodUtils = require("eslint-codemod-utils");
10
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
10
11
  var _isSupportedImport = require("@atlaskit/eslint-utils/is-supported-import");
11
- var _contextCompat = require("../utils/context-compat");
12
12
  var _createRule = require("../utils/create-rule");
13
13
  var _errorBoundary = require("../utils/error-boundary");
14
14
  var _isColor = require("../utils/is-color");
@@ -44,7 +44,7 @@ var createWithConfig = exports.createWithConfig = function createWithConfig(init
44
44
  }
45
45
  },
46
46
  // For expressions within template literals (e.g. `color: ${red}`) - color only
47
- 'TemplateLiteral > Identifier': function TemplateLiteralIdentifier(node) {
47
+ 'TemplateLiteral > Identifier': function TemplateLiteral__Identifier(node) {
48
48
  if (config.domains.includes('color')) {
49
49
  return (0, _color.lintTemplateIdentifierForColor)(node, context, config);
50
50
  }
@@ -276,21 +276,28 @@ var createWithConfig = exports.createWithConfig = function createWithConfig(init
276
276
  }
277
277
  },
278
278
  // For inline JSX styles - literals (e.g. <Test color="red"/>) - color only
279
- 'JSXAttribute > Literal': function JSXAttributeLiteral(node) {
279
+ 'JSXAttribute > Literal': function JSXAttribute__Literal(node) {
280
+ if (config.domains.includes('color')) {
281
+ return (0, _color.lintJSXLiteralForColor)(node, context, config);
282
+ }
283
+ return;
284
+ },
285
+ // Add handling for JSXExpressionContainer with string literals
286
+ 'JSXAttribute > JSXExpressionContainer > Literal': function JSXAttribute__JSXExpressionContainer__Literal(node) {
280
287
  if (config.domains.includes('color')) {
281
288
  return (0, _color.lintJSXLiteralForColor)(node, context, config);
282
289
  }
283
290
  return;
284
291
  },
285
292
  // For inline JSX styles - members (e.g. <Test color={color.red}/>) - color only
286
- 'JSXExpressionContainer > MemberExpression': function JSXExpressionContainerMemberExpression(node) {
293
+ 'JSXExpressionContainer > MemberExpression': function JSXExpressionContainer__MemberExpression(node) {
287
294
  if (config.domains.includes('color')) {
288
295
  return (0, _color.lintJSXMemberForColor)(node, context, config);
289
296
  }
290
297
  return;
291
298
  },
292
299
  // For inline JSX styles - identifiers (e.g. <Test color={red}/>) - color only
293
- 'JSXExpressionContainer > Identifier': function JSXExpressionContainerIdentifier(node) {
300
+ 'JSXExpressionContainer > Identifier': function JSXExpressionContainer__Identifier(node) {
294
301
  if (config.domains.includes('color')) {
295
302
  return (0, _color.lintJSXIdentifierForColor)(node, context, config);
296
303
  }
@@ -28,8 +28,8 @@ exports.splitCssProperties = splitCssProperties;
28
28
  exports.splitShorthandValues = void 0;
29
29
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
30
30
  var _eslintCodemodUtils = require("eslint-codemod-utils");
31
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
31
32
  var _tokensRaw = require("@atlaskit/tokens/tokens-raw");
32
- var _contextCompat = require("../utils/context-compat");
33
33
  var _findInParent = require("../utils/find-in-parent");
34
34
  var _isColor = require("../utils/is-color");
35
35
  var _shape = require("./shape");
@@ -322,7 +322,7 @@ var convertHyphenatedNameToCamelCase = exports.convertHyphenatedNameToCamelCase
322
322
  * @param node
323
323
  * @returns The furthest parent node that is on the same line as the input node.
324
324
  */
325
- var findParentNodeForLine = exports.findParentNodeForLine = function findParentNodeForLine(node) {
325
+ var _findParentNodeForLine = exports.findParentNodeForLine = function findParentNodeForLine(node) {
326
326
  var _node$loc, _node$parent$loc;
327
327
  if (!node.parent) {
328
328
  return node;
@@ -330,7 +330,7 @@ var findParentNodeForLine = exports.findParentNodeForLine = function findParentN
330
330
  if (((_node$loc = node.loc) === null || _node$loc === void 0 ? void 0 : _node$loc.start.line) !== ((_node$parent$loc = node.parent.loc) === null || _node$parent$loc === void 0 ? void 0 : _node$parent$loc.start.line)) {
331
331
  return node;
332
332
  } else {
333
- return findParentNodeForLine(node.parent);
333
+ return _findParentNodeForLine(node.parent);
334
334
  }
335
335
  };
336
336
 
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.noDeprecatedJSXAttributeMessageId = exports.name = exports.default = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _createRule = require("../utils/create-rule");
10
10
  var _getDeprecatedConfig = require("../utils/get-deprecated-config");
11
11
  var _types = require("../utils/types");
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.isBlockedBindAll = isBlockedBindAll;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _getImportNodeBySource = require("../../utils/get-import-node-by-source");
10
10
  var _isBlockedEventBinding = require("../shared/is-blocked-event-binding");
11
11
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.isBlockedBind = isBlockedBind;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _getImportNodeBySource = require("../../utils/get-import-node-by-source");
10
10
  var _isBlockedEventBinding = require("../shared/is-blocked-event-binding");
11
11
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.isBlockedJSXAttribute = isBlockedJSXAttribute;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _getImportNodeBySource = require("../../utils/get-import-node-by-source");
10
10
  var _blocked = require("../shared/blocked");
11
11
  // eslint-disable-next-line import/no-extraneous-dependencies
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
10
  var _isSupportedImport = require("@atlaskit/eslint-utils/is-supported-import");
10
- var _contextCompat = require("../utils/context-compat");
11
11
  var _createRule = require("../utils/create-rule");
12
12
  var isEmptyStyledExpression = function isEmptyStyledExpression(node) {
13
13
  var _node$arguments = (0, _slicedToArray2.default)(node.arguments, 1),
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.JSXElement = void 0;
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
8
9
  var ast = _interopRequireWildcard(require("../../../../ast-nodes"));
9
- var _contextCompat = require("../../../utils/context-compat");
10
10
  var _supported = require("../supported");
11
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
12
12
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.StyledComponent = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../../../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _getJsxElementByName2 = require("../../utils/get-jsx-element-by-name");
10
10
  var _supported = require("../supported");
11
11
  var _getStyledComponentCall = require("./get-styled-component-call");
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.StyledComponent = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../../../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _getJsxElementByName2 = require("../../utils/get-jsx-element-by-name");
10
10
  var _supported = require("../supported");
11
11
  var _getStyledComponentCall = require("./get-styled-component-call");
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
7
8
  var _isSupportedImport = require("@atlaskit/eslint-utils/is-supported-import");
8
- var _contextCompat = require("../utils/context-compat");
9
9
  var _checkIfSupportedExport = require("../utils/create-no-exported-rule/check-if-supported-export");
10
10
  var _createRule = require("../utils/create-rule");
11
11
  var _utils = require("./utils");
@@ -8,8 +8,8 @@ exports.getCssMapObject = exports.CssMapObjectChecker = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _allowedFunctionCalls = require("@atlaskit/eslint-utils/allowed-function-calls");
11
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
11
12
  var _findVariable = require("@atlaskit/eslint-utils/find-variable");
12
- var _contextCompat = require("../utils/context-compat");
13
13
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
14
14
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
15
15
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -473,10 +473,25 @@ var createImportFix = function createImportFix(_ref6) {
473
473
  var importPath = migrationImportNode ? importSource.replace('/migration', '').split('--')[0] : getNewIconNameAndImportPath(importSource, shouldUseMigrationPath).importPath;
474
474
  var useMigrationPath = legacyImportNode && importPath;
475
475
  var useFinalPath = migrationImportNode && !shouldUseMigrationPath && importPath;
476
+ var programNode = legacyImportNode && findProgramNode(legacyImportNode);
476
477
  if (useMigrationPath) {
477
- fixes.push(newIconName ? fixer.insertTextBefore(legacyImportNode, "import ".concat(newIconName, " from '").concat(importPath, "';\n")) : fixer.replaceText(legacyImportNode.source, "'".concat((0, _eslintCodemodUtils.literal)(importPath), "'")));
478
+ if (newIconName) {
479
+ var isExisting = programNode ? alreadyHasImportedLocalName(programNode, newIconName, importPath) : false;
480
+ if (!isExisting) {
481
+ fixes.push(fixer.insertTextBefore(legacyImportNode, "import ".concat(newIconName, " from '").concat(importPath, "';\n")));
482
+ }
483
+ } else {
484
+ fixes.push(fixer.replaceText(legacyImportNode.source, "'".concat((0, _eslintCodemodUtils.literal)(importPath), "'")));
485
+ }
478
486
  } else if (useFinalPath) {
479
- fixes.push(newIconName ? fixer.insertTextBefore(migrationImportNode, "import ".concat(newIconName, " from '").concat(importPath, "';\n")) : fixer.replaceText(migrationImportNode.source, "'".concat((0, _eslintCodemodUtils.literal)(importPath), "'")));
487
+ if (newIconName) {
488
+ var _isExisting = programNode ? alreadyHasImportedLocalName(programNode, newIconName, importPath) : false;
489
+ if (!_isExisting) {
490
+ fixes.push(fixer.insertTextBefore(migrationImportNode, "import ".concat(newIconName, " from '").concat(importPath, "';\n")));
491
+ }
492
+ } else {
493
+ fixes.push(fixer.replaceText(migrationImportNode.source, "'".concat((0, _eslintCodemodUtils.literal)(importPath), "'")));
494
+ }
480
495
  }
481
496
  return fixes;
482
497
  };
@@ -779,4 +794,26 @@ var throwAutoErrors = exports.throwAutoErrors = function throwAutoErrors(_ref10)
779
794
  for (var _i3 = 0, _Object$entries3 = Object.entries(groupedErrorList); _i3 < _Object$entries3.length; _i3++) {
780
795
  _loop();
781
796
  }
782
- };
797
+ };
798
+ function findProgramNode(node) {
799
+ while (node && node.parent) {
800
+ if (node.parent.type === 'Program') {
801
+ return node.parent;
802
+ }
803
+ node = node.parent;
804
+ }
805
+ return null;
806
+ }
807
+ function alreadyHasImportedLocalName(programNode, localName, importPath) {
808
+ if (!(programNode !== null && programNode !== void 0 && programNode.body)) {
809
+ return false;
810
+ }
811
+ return programNode.body.some(function (stmt) {
812
+ if (stmt.type === 'ImportDeclaration' && stmt.source.value === importPath) {
813
+ return stmt.specifiers.some(function (s) {
814
+ return s.local.name === localName;
815
+ });
816
+ }
817
+ return false;
818
+ });
819
+ }
@@ -26,16 +26,16 @@ var rule = (0, _createRule.createLintRule)({
26
26
  // CSSObjectExpression and StyledObjectExpression
27
27
  // const cssObjectExpression = css({ margin: '4px' })
28
28
  // const styledObjectExpression = styled.div({margin: '8px'})
29
- 'CallExpression[callee.name=css] > ObjectExpression, CallExpression[callee.object.name=styled] > ObjectExpression': function CallExpressionCalleeNameCssObjectExpressionCallExpressionCalleeObjectNameStyledObjectExpression(parentNode) {
29
+ 'CallExpression[callee.name=css] > ObjectExpression, CallExpression[callee.object.name=styled] > ObjectExpression': function CallExpressionCalleeNameCss__ObjectExpression_CallExpressionCalleeObjectNameStyled__ObjectExpression(parentNode) {
30
30
  if (!(0, _eslintCodemodUtils.isNodeOfType)(parentNode, 'ObjectExpression')) {
31
31
  return;
32
32
  }
33
- var findObjectStyles = function findObjectStyles(node) {
33
+ var _findObjectStyles = function findObjectStyles(node) {
34
34
  if (!(0, _eslintCodemodUtils.isNodeOfType)(node, 'Property')) {
35
35
  return;
36
36
  }
37
37
  if ((0, _eslintCodemodUtils.isNodeOfType)(node.value, 'ObjectExpression')) {
38
- return node.value.properties.forEach(findObjectStyles);
38
+ return node.value.properties.forEach(_findObjectStyles);
39
39
  }
40
40
  if (!(0, _eslintCodemodUtils.isNodeOfType)(node.key, 'Identifier')) {
41
41
  return;
@@ -48,7 +48,7 @@ var rule = (0, _createRule.createLintRule)({
48
48
  }
49
49
  return;
50
50
  };
51
- parentNode.properties.forEach(findObjectStyles);
51
+ parentNode.properties.forEach(_findObjectStyles);
52
52
  },
53
53
  // CSSTemplateLiteral and StyledTemplateLiteral
54
54
  // const cssTemplateLiteral = css`color: red; margin: 12px`;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _createRule = require("../utils/create-rule");
10
10
  var _findInParent = require("../utils/find-in-parent");
11
11
  // eslint-disable-next-line import/no-extraneous-dependencies
@@ -110,7 +110,7 @@ var rule = (0, _createRule.createLintRule)({
110
110
  },
111
111
  create: function create(context) {
112
112
  return {
113
- 'CallExpression[callee.name=css] > ObjectExpression Property,CallExpression[callee.name=xcss] > ObjectExpression Property': function CallExpressionCalleeNameCssObjectExpressionPropertyCallExpressionCalleeNameXcssObjectExpressionProperty(node) {
113
+ 'CallExpression[callee.name=css] > ObjectExpression Property,CallExpression[callee.name=xcss] > ObjectExpression Property': function CallExpressionCalleeNameCss__ObjectExpression_PropertyCallExpressionCalleeNameXcss__ObjectExpression_Property(node) {
114
114
  if (node.type !== 'Property' || node.value.type !== 'ObjectExpression') {
115
115
  return;
116
116
  }
@@ -25,7 +25,7 @@ var rule = (0, _createRule.createLintRule)({
25
25
  },
26
26
  create: function create(context) {
27
27
  return {
28
- 'CallExpression[callee.name=css] > ObjectExpression Property,CallExpression[callee.name=xcss] > ObjectExpression Property': function CallExpressionCalleeNameCssObjectExpressionPropertyCallExpressionCalleeNameXcssObjectExpressionProperty(node) {
28
+ 'CallExpression[callee.name=css] > ObjectExpression Property,CallExpression[callee.name=xcss] > ObjectExpression Property': function CallExpressionCalleeNameCss__ObjectExpression_PropertyCallExpressionCalleeNameXcss__ObjectExpression_Property(node) {
29
29
  if (!(0, _eslintCodemodUtils.isNodeOfType)(node, 'Property')) {
30
30
  return;
31
31
  }
@@ -79,7 +79,7 @@ var rule = (0, _createRule.createLintRule)({
79
79
  return;
80
80
  }
81
81
  },
82
- 'ObjectExpression > Property > Literal': function ObjectExpressionPropertyLiteral(node) {
82
+ 'ObjectExpression > Property > Literal': function ObjectExpression__Property__Literal(node) {
83
83
  if (node.type !== 'Literal') {
84
84
  return;
85
85
  }
@@ -105,7 +105,7 @@ var rule = (0, _createRule.createLintRule)({
105
105
  return;
106
106
  }
107
107
  },
108
- 'CallExpression:matches([callee.name="token"], [callee.name="getTokenValue"])': function CallExpressionMatchesCalleeNameTokenCalleeNameGetTokenValue(node) {
108
+ 'CallExpression:matches([callee.name="token"], [callee.name="getTokenValue"])': function CallExpressionMatchesCalleeNameToken_CalleeNameGetTokenValue(node) {
109
109
  if (!(0, _eslintCodemodUtils.isNodeOfType)(node, 'CallExpression')) {
110
110
  return;
111
111
  }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _createRule = require("../utils/create-rule");
10
10
  var _getImportNodeBySource = require("../utils/get-import-node-by-source");
11
11
  var _jsx = require("../utils/jsx");
@@ -8,7 +8,7 @@ var defaults = {
8
8
  failSilently: false,
9
9
  patterns: ['native-elements'],
10
10
  enableUnsafeAutofix: false,
11
- enableUnsafeReport: false
11
+ enableUnsafeReport: true
12
12
  };
13
13
  var getConfig = exports.getConfig = function getConfig(overrides) {
14
14
  return Object.assign({}, defaults, overrides);
@@ -15,6 +15,18 @@ var rule = (0, _createRule.createLintRule)({
15
15
  type: 'suggestion',
16
16
  fixable: 'code',
17
17
  hasSuggestions: true,
18
+ schema: [{
19
+ type: 'object',
20
+ properties: {
21
+ enableUnsafeReport: {
22
+ type: 'boolean'
23
+ },
24
+ enableUnsafeAutofix: {
25
+ type: 'boolean'
26
+ }
27
+ },
28
+ additionalProperties: false
29
+ }],
18
30
  docs: {
19
31
  description: 'Encourage the usage of heading components.',
20
32
  recommended: false,
@@ -28,7 +40,7 @@ var rule = (0, _createRule.createLintRule)({
28
40
  var config = (0, _config.getConfig)(context.options[0]);
29
41
  return (0, _errorBoundary.errorBoundary)({
30
42
  // transforms <h1>...</h1> usages
31
- 'JSXElement[openingElement.name.name=/^h[0-6]$/]': function JSXElementOpeningElementNameNameH06$(node) {
43
+ 'JSXElement[openingElement.name.name=/^h[0-6]$/]': function JSXElementOpeningElementNameName_H06$_(node) {
32
44
  return _transformers.NativeElements.lint(node, {
33
45
  context: context,
34
46
  config: config
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.headingLevelRequiredSuggestionText = exports.default = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _createRule = require("../utils/create-rule");
10
10
  var _getImportName = require("../utils/get-import-name");
11
11
  // eslint-disable-next-line import/no-extraneous-dependencies
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.hrefRequiredSuggestionText = exports.default = void 0;
7
7
  var _eslintCodemodUtils = require("eslint-codemod-utils");
8
- var _contextCompat = require("../utils/context-compat");
8
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
9
9
  var _createRule = require("../utils/create-rule");
10
10
  var _getImportName = require("../utils/get-import-name");
11
11
  var _utils = require("./utils");
@@ -24,7 +24,7 @@ var rule = (0, _createRule.createLintRule)({
24
24
  },
25
25
  create: function create(context) {
26
26
  return {
27
- 'CallExpression[callee.name="xcss"] ObjectExpression Property': function CallExpressionCalleeNameXcssObjectExpressionProperty(node) {
27
+ 'CallExpression[callee.name="xcss"] ObjectExpression Property': function CallExpressionCalleeNameXcss_ObjectExpression_Property(node) {
28
28
  return _transformers.StyleProperty.lint(node, {
29
29
  context: context
30
30
  });
@@ -7,8 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.StyleProperty = void 0;
9
9
  var _eslintCodemodUtils = require("eslint-codemod-utils");
10
+ var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
10
11
  var ast = _interopRequireWildcard(require("../../../../ast-nodes"));
11
- var _contextCompat = require("../../../utils/context-compat");
12
12
  var _styleMap = require("./style-map");
13
13
  var _supported = _interopRequireDefault(require("./supported"));
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
@@ -3,10 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getConfig = void 0;
6
+ exports.getConfig = exports.PATTERNS = void 0;
7
+ var PATTERNS = exports.PATTERNS = ['restricted-property', 'wrapped-token-value', 'restricted-capitalisation'];
7
8
  var defaults = {
8
9
  failSilently: false,
9
- patterns: ['restricted-property', 'wrapped-token-value', 'restricted-capitalisation']
10
+ patterns: [].concat(PATTERNS)
10
11
  };
11
12
  var getConfig = exports.getConfig = function getConfig(overrides) {
12
13
  return Object.assign({}, defaults, overrides);