@atlaskit/eslint-plugin-design-system 10.22.1 → 10.23.1

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 (43) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +2 -1
  3. package/dist/cjs/index.codegen.js +45 -10
  4. package/dist/cjs/index.js +23 -2
  5. package/dist/cjs/presets/all-flat.codegen.js +61 -0
  6. package/dist/cjs/presets/all.codegen.js +2 -1
  7. package/dist/cjs/presets/recommended-flat.codegen.js +45 -0
  8. package/dist/cjs/presets/recommended.codegen.js +2 -1
  9. package/dist/cjs/rules/index.codegen.js +6 -3
  10. package/dist/cjs/rules/no-separator-with-list-elements/index.js +62 -0
  11. package/dist/es2019/index.codegen.js +50 -6
  12. package/dist/es2019/index.js +1 -1
  13. package/dist/es2019/presets/all-flat.codegen.js +55 -0
  14. package/dist/es2019/presets/all.codegen.js +2 -1
  15. package/dist/es2019/presets/recommended-flat.codegen.js +39 -0
  16. package/dist/es2019/presets/recommended.codegen.js +2 -1
  17. package/dist/es2019/rules/index.codegen.js +4 -2
  18. package/dist/es2019/rules/no-separator-with-list-elements/index.js +50 -0
  19. package/dist/esm/index.codegen.js +46 -6
  20. package/dist/esm/index.js +1 -1
  21. package/dist/esm/presets/all-flat.codegen.js +55 -0
  22. package/dist/esm/presets/all.codegen.js +2 -1
  23. package/dist/esm/presets/recommended-flat.codegen.js +39 -0
  24. package/dist/esm/presets/recommended.codegen.js +2 -1
  25. package/dist/esm/rules/index.codegen.js +4 -2
  26. package/dist/esm/rules/no-separator-with-list-elements/index.js +56 -0
  27. package/dist/types/index.codegen.d.ts +510 -77
  28. package/dist/types/index.d.ts +1 -1
  29. package/dist/types/presets/all-flat.codegen.d.ts +55 -0
  30. package/dist/types/presets/all.codegen.d.ts +47 -46
  31. package/dist/types/presets/recommended-flat.codegen.d.ts +39 -0
  32. package/dist/types/presets/recommended.codegen.d.ts +31 -30
  33. package/dist/types/rules/index.codegen.d.ts +2 -2
  34. package/dist/types/rules/no-separator-with-list-elements/index.d.ts +3 -0
  35. package/dist/types-ts4.5/index.codegen.d.ts +594 -77
  36. package/dist/types-ts4.5/index.d.ts +1 -1
  37. package/dist/types-ts4.5/presets/all-flat.codegen.d.ts +63 -0
  38. package/dist/types-ts4.5/presets/all.codegen.d.ts +57 -46
  39. package/dist/types-ts4.5/presets/recommended-flat.codegen.d.ts +47 -0
  40. package/dist/types-ts4.5/presets/recommended.codegen.d.ts +41 -30
  41. package/dist/types-ts4.5/rules/index.codegen.d.ts +2 -2
  42. package/dist/types-ts4.5/rules/no-separator-with-list-elements/index.d.ts +3 -0
  43. package/package.json +7 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @atlaskit/eslint-plugin-design-system
2
2
 
3
+ ## 10.23.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#160428](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/160428)
8
+ [`6d4fa76f052b2`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/6d4fa76f052b2) -
9
+ Releases an unreleased fix for the '../package.json' not found in
10
+ @atlaskit/eslint-plugin-design-system@10.23.0
11
+
12
+ ## 10.23.0
13
+
14
+ ### Minor Changes
15
+
16
+ - [#153668](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/153668)
17
+ [`a6c96d74835d5`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/a6c96d74835d5) -
18
+ Added a flat config preset equivalents for included eslint configs
19
+ - [#153712](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/153712)
20
+ [`566eb89dd2b9f`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/566eb89dd2b9f) -
21
+ Introducing new rule to warn the combination of separator and `as="li|ol|dl"`
22
+
3
23
  ## 10.22.1
4
24
 
5
25
  ### Patch Changes
package/README.md CHANGED
@@ -22,7 +22,7 @@ module.exports = {
22
22
  ```
23
23
 
24
24
  We don't recommended maintaining your own configuration. If you do not use our config you will need
25
- to specify individual rules and configuration. Add the plugin to your `.eslintrc.js` file.
25
+ to specify individual rules and configuration. Add the plugin to your `eslint.config.cjs` file.
26
26
 
27
27
  ```diff
28
28
  module.exports = {
@@ -73,6 +73,7 @@ module.exports = {
73
73
  | <a href="./src/rules/no-margin/README.md">no-margin</a> | Disallow using the margin CSS property. | | | |
74
74
  | <a href="./src/rules/no-nested-styles/README.md">no-nested-styles</a> | Disallows use of nested styles in `css` functions. | Yes | | |
75
75
  | <a href="./src/rules/no-physical-properties/README.md">no-physical-properties</a> | Disallow physical properties and values in `css` function calls. | | Yes | |
76
+ | <a href="./src/rules/no-separator-with-list-elements/README.md">no-separator-with-list-elements</a> | Warn when the `separator` prop is used with `as="li"`, `as="ol"`, or `as="dl"` in the Inline component. | Yes | | |
76
77
  | <a href="./src/rules/no-styled-tagged-template-expression/README.md">no-styled-tagged-template-expression</a> | Disallows any `styled` tagged template expressions that originate from Emotion, Styled Components or Compiled | | Yes | |
77
78
  | <a href="./src/rules/no-unsafe-design-token-usage/README.md">no-unsafe-design-token-usage</a> | Enforces design token usage is statically and locally analyzable. | Yes | Yes | |
78
79
  | <a href="./src/rules/no-unsafe-style-overrides/README.md">no-unsafe-style-overrides</a> | Discourage usage of unsafe style overrides used against the Atlassian Design System. | Yes | | |
@@ -4,23 +4,58 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.configs = void 0;
7
+ exports.plugin = exports.meta = exports.default = exports.configs = void 0;
8
8
  Object.defineProperty(exports, "rules", {
9
9
  enumerable: true,
10
10
  get: function get() {
11
- return _index.default;
11
+ return _index.rules;
12
12
  }
13
13
  });
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+ var _allFlat = _interopRequireDefault(require("./presets/all-flat.codegen"));
14
16
  var _all = _interopRequireDefault(require("./presets/all.codegen"));
17
+ var _recommendedFlat = _interopRequireDefault(require("./presets/recommended-flat.codegen"));
15
18
  var _recommended = _interopRequireDefault(require("./presets/recommended.codegen"));
16
- var _index = _interopRequireDefault(require("./rules/index.codegen"));
17
- /**
19
+ var _index = require("./rules/index.codegen");
20
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /**
18
22
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
19
- * @codegen <<SignedSource::abdb6f8b0dfdc4e2489691c04488f46e>>
23
+ * @codegen <<SignedSource::c77bc1fd6f2331dc0cae4fb3a58994d3>>
20
24
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
21
25
  */
22
-
23
- var configs = exports.configs = {
24
- all: _all.default,
25
- recommended: _recommended.default
26
- };
26
+ // this uses require because not all node versions this package supports use the same import assertions/attributes
27
+ // eslint-disable-next-line import/no-extraneous-dependencies
28
+ var pkgJson = require('@atlaskit/eslint-plugin-design-system/package.json');
29
+ var version = pkgJson.version,
30
+ name = pkgJson.name;
31
+ var plugin = exports.plugin = {
32
+ meta: {
33
+ name: name,
34
+ version: version
35
+ },
36
+ rules: _index.rules,
37
+ // flat configs need to be done like this so they can get a reference to the plugin.
38
+ // see here: https://eslint.org/docs/latest/extend/plugins#configs-in-plugins
39
+ // they cannot use `Object.assign` because it will not work with the getter
40
+ configs: {
41
+ all: _all.default,
42
+ 'all/flat': _objectSpread(_objectSpread({}, _allFlat.default), {}, {
43
+ plugins: _objectSpread(_objectSpread({}, _allFlat.default.plugins), {}, {
44
+ get '@atlaskit/design-system'() {
45
+ return plugin;
46
+ }
47
+ })
48
+ }),
49
+ recommended: _recommended.default,
50
+ 'recommended/flat': _objectSpread(_objectSpread({}, _recommendedFlat.default), {}, {
51
+ plugins: _objectSpread(_objectSpread({}, _recommendedFlat.default.plugins), {}, {
52
+ get '@atlaskit/design-system'() {
53
+ return plugin;
54
+ }
55
+ })
56
+ })
57
+ }
58
+ };
59
+ var configs = exports.configs = plugin.configs,
60
+ meta = exports.meta = plugin.meta;
61
+ var _default = exports.default = plugin;
package/dist/cjs/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -9,17 +10,37 @@ Object.defineProperty(exports, "configs", {
9
10
  return _index.configs;
10
11
  }
11
12
  });
13
+ Object.defineProperty(exports, "default", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _index.default;
17
+ }
18
+ });
12
19
  Object.defineProperty(exports, "filterActionableDeprecations", {
13
20
  enumerable: true,
14
21
  get: function get() {
15
22
  return _filterActionableDeprecations.filterActionableDeprecations;
16
23
  }
17
24
  });
25
+ Object.defineProperty(exports, "meta", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _index.meta;
29
+ }
30
+ });
31
+ Object.defineProperty(exports, "plugin", {
32
+ enumerable: true,
33
+ get: function get() {
34
+ return _index.plugin;
35
+ }
36
+ });
18
37
  Object.defineProperty(exports, "rules", {
19
38
  enumerable: true,
20
39
  get: function get() {
21
40
  return _index.rules;
22
41
  }
23
42
  });
24
- var _index = require("./index.codegen");
25
- var _filterActionableDeprecations = require("./rules/no-deprecated-apis/helpers/filter-actionable-deprecations");
43
+ var _index = _interopRequireWildcard(require("./index.codegen"));
44
+ var _filterActionableDeprecations = require("./rules/no-deprecated-apis/helpers/filter-actionable-deprecations");
45
+ 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); }
46
+ 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; }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ /**
8
+ * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
9
+ * @codegen <<SignedSource::56a9d309ec6f548dce4a4f6e99059a15>>
10
+ * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
11
+ */
12
+ var _default = exports.default = {
13
+ // NOTE: The reference to this plugin is inserted dynamically while creating the plugin in `index.codegen.tsx`
14
+ plugins: {},
15
+ rules: {
16
+ '@atlaskit/design-system/consistent-css-prop-usage': 'error',
17
+ '@atlaskit/design-system/ensure-design-token-usage': 'error',
18
+ '@atlaskit/design-system/ensure-design-token-usage/preview': 'warn',
19
+ '@atlaskit/design-system/ensure-icon-color': 'error',
20
+ '@atlaskit/design-system/icon-label': 'warn',
21
+ '@atlaskit/design-system/no-banned-imports': 'error',
22
+ '@atlaskit/design-system/no-css-tagged-template-expression': 'error',
23
+ '@atlaskit/design-system/no-custom-icons': 'warn',
24
+ '@atlaskit/design-system/no-dark-theme-vr-tests': 'error',
25
+ '@atlaskit/design-system/no-deprecated-apis': 'error',
26
+ '@atlaskit/design-system/no-deprecated-design-token-usage': 'warn',
27
+ '@atlaskit/design-system/no-deprecated-imports': 'error',
28
+ '@atlaskit/design-system/no-direct-use-of-web-platform-drag-and-drop': 'error',
29
+ '@atlaskit/design-system/no-html-anchor': 'warn',
30
+ '@atlaskit/design-system/no-html-button': 'warn',
31
+ '@atlaskit/design-system/no-invalid-css-map': ['error', {
32
+ allowedFunctionCalls: [['@atlaskit/tokens', 'token']]
33
+ }],
34
+ '@atlaskit/design-system/no-keyframes-tagged-template-expression': 'error',
35
+ '@atlaskit/design-system/no-legacy-icons': 'warn',
36
+ '@atlaskit/design-system/no-margin': 'warn',
37
+ '@atlaskit/design-system/no-nested-styles': 'error',
38
+ '@atlaskit/design-system/no-physical-properties': 'error',
39
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
40
+ '@atlaskit/design-system/no-styled-tagged-template-expression': 'error',
41
+ '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
42
+ '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
43
+ '@atlaskit/design-system/no-unsupported-drag-and-drop-libraries': 'error',
44
+ '@atlaskit/design-system/prefer-primitives': 'warn',
45
+ '@atlaskit/design-system/use-button-group-label': 'warn',
46
+ '@atlaskit/design-system/use-drawer-label': 'warn',
47
+ '@atlaskit/design-system/use-heading': 'warn',
48
+ '@atlaskit/design-system/use-heading-level-in-spotlight-card': 'warn',
49
+ '@atlaskit/design-system/use-href-in-link-item': 'warn',
50
+ '@atlaskit/design-system/use-latest-xcss-syntax': 'error',
51
+ '@atlaskit/design-system/use-latest-xcss-syntax-typography': 'warn',
52
+ '@atlaskit/design-system/use-menu-section-title': 'warn',
53
+ '@atlaskit/design-system/use-popup-label': 'warn',
54
+ '@atlaskit/design-system/use-primitives': 'warn',
55
+ '@atlaskit/design-system/use-primitives-text': 'warn',
56
+ '@atlaskit/design-system/use-tag-group-label': 'warn',
57
+ '@atlaskit/design-system/use-tokens-space': 'error',
58
+ '@atlaskit/design-system/use-tokens-typography': 'warn',
59
+ '@atlaskit/design-system/use-visually-hidden': 'error'
60
+ }
61
+ };
@@ -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::310e184a1b8eca0da1246cfe8d128e2c>>
9
+ * @codegen <<SignedSource::47f018ad98455be31dc522bcf5360adf>>
10
10
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
11
11
  */
12
12
  var _default = exports.default = {
@@ -35,6 +35,7 @@ var _default = exports.default = {
35
35
  '@atlaskit/design-system/no-margin': 'warn',
36
36
  '@atlaskit/design-system/no-nested-styles': 'error',
37
37
  '@atlaskit/design-system/no-physical-properties': 'error',
38
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
38
39
  '@atlaskit/design-system/no-styled-tagged-template-expression': 'error',
39
40
  '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
40
41
  '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ /**
8
+ * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
9
+ * @codegen <<SignedSource::9c6dda34a88386c4fa5b931ab4baf929>>
10
+ * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
11
+ */
12
+ var _default = exports.default = {
13
+ // NOTE: The reference to this plugin is inserted dynamically while creating the plugin in `index.codegen.tsx`
14
+ plugins: {},
15
+ rules: {
16
+ '@atlaskit/design-system/consistent-css-prop-usage': 'error',
17
+ '@atlaskit/design-system/ensure-design-token-usage': 'error',
18
+ '@atlaskit/design-system/icon-label': 'warn',
19
+ '@atlaskit/design-system/no-banned-imports': 'error',
20
+ '@atlaskit/design-system/no-deprecated-apis': 'error',
21
+ '@atlaskit/design-system/no-deprecated-design-token-usage': 'warn',
22
+ '@atlaskit/design-system/no-deprecated-imports': 'error',
23
+ '@atlaskit/design-system/no-direct-use-of-web-platform-drag-and-drop': 'error',
24
+ '@atlaskit/design-system/no-html-anchor': 'warn',
25
+ '@atlaskit/design-system/no-html-button': 'warn',
26
+ '@atlaskit/design-system/no-invalid-css-map': ['error', {
27
+ allowedFunctionCalls: [['@atlaskit/tokens', 'token']]
28
+ }],
29
+ '@atlaskit/design-system/no-nested-styles': 'error',
30
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
31
+ '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
32
+ '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
33
+ '@atlaskit/design-system/no-unsupported-drag-and-drop-libraries': 'error',
34
+ '@atlaskit/design-system/use-button-group-label': 'warn',
35
+ '@atlaskit/design-system/use-drawer-label': 'warn',
36
+ '@atlaskit/design-system/use-heading-level-in-spotlight-card': 'warn',
37
+ '@atlaskit/design-system/use-href-in-link-item': 'warn',
38
+ '@atlaskit/design-system/use-latest-xcss-syntax': 'error',
39
+ '@atlaskit/design-system/use-latest-xcss-syntax-typography': 'warn',
40
+ '@atlaskit/design-system/use-menu-section-title': 'warn',
41
+ '@atlaskit/design-system/use-popup-label': 'warn',
42
+ '@atlaskit/design-system/use-tag-group-label': 'warn',
43
+ '@atlaskit/design-system/use-visually-hidden': 'error'
44
+ }
45
+ };
@@ -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::9be7e90918082d78473f5d2a2271b15c>>
9
+ * @codegen <<SignedSource::f1b4aa9e656294739485e62ba4a33f9d>>
10
10
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
11
11
  */
12
12
  var _default = exports.default = {
@@ -26,6 +26,7 @@ var _default = exports.default = {
26
26
  allowedFunctionCalls: [['@atlaskit/tokens', 'token']]
27
27
  }],
28
28
  '@atlaskit/design-system/no-nested-styles': 'error',
29
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
29
30
  '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
30
31
  '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
31
32
  '@atlaskit/design-system/no-unsupported-drag-and-drop-libraries': 'error',
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.rules = void 0;
8
8
  var _consistentCssPropUsage = _interopRequireDefault(require("./consistent-css-prop-usage"));
9
9
  var _ensureDesignTokenUsage = _interopRequireDefault(require("./ensure-design-token-usage"));
10
10
  var _ensureDesignTokenUsagePreview = _interopRequireDefault(require("./ensure-design-token-usage-preview"));
@@ -29,6 +29,7 @@ var _noLegacyIcons = _interopRequireDefault(require("./no-legacy-icons"));
29
29
  var _noMargin = _interopRequireDefault(require("./no-margin"));
30
30
  var _noNestedStyles = _interopRequireDefault(require("./no-nested-styles"));
31
31
  var _noPhysicalProperties = _interopRequireDefault(require("./no-physical-properties"));
32
+ var _noSeparatorWithListElements = _interopRequireDefault(require("./no-separator-with-list-elements"));
32
33
  var _noStyledTaggedTemplateExpression = _interopRequireDefault(require("./no-styled-tagged-template-expression"));
33
34
  var _noUnsafeDesignTokenUsage = _interopRequireDefault(require("./no-unsafe-design-token-usage"));
34
35
  var _noUnsafeStyleOverrides = _interopRequireDefault(require("./no-unsafe-style-overrides"));
@@ -51,10 +52,11 @@ var _useTokensTypography = _interopRequireDefault(require("./use-tokens-typograp
51
52
  var _useVisuallyHidden = _interopRequireDefault(require("./use-visually-hidden"));
52
53
  /**
53
54
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
54
- * @codegen <<SignedSource::2c61c8c9aa86b4fb1d11e0bcba9d83a1>>
55
+ * @codegen <<SignedSource::2ab06b34c4e08cd70b0f67f5915f12c9>>
55
56
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
56
57
  */
57
- var _default = exports.default = {
58
+
59
+ var rules = exports.rules = {
58
60
  'consistent-css-prop-usage': _consistentCssPropUsage.default,
59
61
  'ensure-design-token-usage': _ensureDesignTokenUsage.default,
60
62
  'ensure-design-token-usage/preview': _ensureDesignTokenUsagePreview.default,
@@ -79,6 +81,7 @@ var _default = exports.default = {
79
81
  'no-margin': _noMargin.default,
80
82
  'no-nested-styles': _noNestedStyles.default,
81
83
  'no-physical-properties': _noPhysicalProperties.default,
84
+ 'no-separator-with-list-elements': _noSeparatorWithListElements.default,
82
85
  'no-styled-tagged-template-expression': _noStyledTaggedTemplateExpression.default,
83
86
  'no-unsafe-design-token-usage': _noUnsafeDesignTokenUsage.default,
84
87
  'no-unsafe-style-overrides': _noUnsafeStyleOverrides.default,
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _eslintCodemodUtils = require("eslint-codemod-utils");
8
+ var _createRule = require("../utils/create-rule");
9
+ var separatorAsCombinationNotAllowed = 'The combination of `separator` with `as="li"`, `as="ol"`, or `as="dl"` is not allowed.';
10
+ var rule = (0, _createRule.createLintRule)({
11
+ meta: {
12
+ name: 'no-separator-with-list-elements',
13
+ type: 'suggestion',
14
+ docs: {
15
+ description: 'Warn when the `separator` prop is used with `as="li"`, `as="ol"`, or `as="dl"` in the Inline component.',
16
+ recommended: true,
17
+ severity: 'warn'
18
+ },
19
+ messages: {
20
+ separatorAsCombinationNotAllowed: separatorAsCombinationNotAllowed
21
+ }
22
+ },
23
+ create: function create(context) {
24
+ var inlineComponentNames = [];
25
+ return {
26
+ ImportDeclaration: function ImportDeclaration(node) {
27
+ if (node.type === 'ImportDeclaration' && (node.source.value === '../src' || node.source.value === '@atlaskit/primitives')) {
28
+ node.specifiers.forEach(function (specifier) {
29
+ if (specifier.type === 'ImportSpecifier' && specifier.imported.name === 'Inline') {
30
+ inlineComponentNames.push(specifier.local.name);
31
+ }
32
+ });
33
+ }
34
+ },
35
+ JSXElement: function JSXElement(node) {
36
+ if (!(0, _eslintCodemodUtils.isNodeOfType)(node, 'JSXElement') || !(0, _eslintCodemodUtils.isNodeOfType)(node.openingElement.name, 'JSXIdentifier')) {
37
+ return;
38
+ }
39
+ var componentName = node.openingElement.name.name;
40
+ if (!inlineComponentNames.includes(componentName)) {
41
+ return;
42
+ }
43
+ var inlineProps = node.openingElement.attributes.filter(function (attr) {
44
+ return (0, _eslintCodemodUtils.isNodeOfType)(attr, 'JSXAttribute') && (0, _eslintCodemodUtils.isNodeOfType)(attr.name, 'JSXIdentifier');
45
+ });
46
+ var separatorProp = inlineProps.find(function (attr) {
47
+ return attr.name.name === 'separator';
48
+ });
49
+ var asProp = inlineProps.find(function (attr) {
50
+ return attr.name.name === 'as';
51
+ });
52
+ if (separatorProp && asProp && asProp.value && (0, _eslintCodemodUtils.isNodeOfType)(asProp.value, 'Literal') && ['li', 'ol', 'dl'].includes(asProp.value.value)) {
53
+ context.report({
54
+ node: node,
55
+ messageId: 'separatorAsCombinationNotAllowed'
56
+ });
57
+ }
58
+ }
59
+ };
60
+ }
61
+ });
62
+ var _default = exports.default = rule;
@@ -1,12 +1,56 @@
1
1
  /**
2
2
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
3
- * @codegen <<SignedSource::abdb6f8b0dfdc4e2489691c04488f46e>>
3
+ * @codegen <<SignedSource::c77bc1fd6f2331dc0cae4fb3a58994d3>>
4
4
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
5
5
  */
6
+ import allFlat from './presets/all-flat.codegen';
6
7
  import all from './presets/all.codegen';
8
+ import recommendedFlat from './presets/recommended-flat.codegen';
7
9
  import recommended from './presets/recommended.codegen';
8
- export { default as rules } from './rules/index.codegen';
9
- export const configs = {
10
- all,
11
- recommended
12
- };
10
+ import { rules } from './rules/index.codegen';
11
+
12
+ // this uses require because not all node versions this package supports use the same import assertions/attributes
13
+ // eslint-disable-next-line import/no-extraneous-dependencies
14
+ const pkgJson = require('@atlaskit/eslint-plugin-design-system/package.json');
15
+ const {
16
+ version,
17
+ name
18
+ } = pkgJson;
19
+ export const plugin = {
20
+ meta: {
21
+ name,
22
+ version
23
+ },
24
+ rules,
25
+ // flat configs need to be done like this so they can get a reference to the plugin.
26
+ // see here: https://eslint.org/docs/latest/extend/plugins#configs-in-plugins
27
+ // they cannot use `Object.assign` because it will not work with the getter
28
+ configs: {
29
+ all,
30
+ 'all/flat': {
31
+ ...allFlat,
32
+ plugins: {
33
+ ...allFlat.plugins,
34
+ get '@atlaskit/design-system'() {
35
+ return plugin;
36
+ }
37
+ }
38
+ },
39
+ recommended,
40
+ 'recommended/flat': {
41
+ ...recommendedFlat,
42
+ plugins: {
43
+ ...recommendedFlat.plugins,
44
+ get '@atlaskit/design-system'() {
45
+ return plugin;
46
+ }
47
+ }
48
+ }
49
+ }
50
+ };
51
+ export { rules } from './rules/index.codegen';
52
+ export const {
53
+ configs,
54
+ meta
55
+ } = plugin;
56
+ export default plugin;
@@ -1,2 +1,2 @@
1
- export { configs, rules } from './index.codegen';
1
+ export { meta, rules, plugin, configs, default } from './index.codegen';
2
2
  export { filterActionableDeprecations } from './rules/no-deprecated-apis/helpers/filter-actionable-deprecations';
@@ -0,0 +1,55 @@
1
+ /**
2
+ * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
3
+ * @codegen <<SignedSource::56a9d309ec6f548dce4a4f6e99059a15>>
4
+ * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
5
+ */
6
+ export default {
7
+ // NOTE: The reference to this plugin is inserted dynamically while creating the plugin in `index.codegen.tsx`
8
+ plugins: {},
9
+ rules: {
10
+ '@atlaskit/design-system/consistent-css-prop-usage': 'error',
11
+ '@atlaskit/design-system/ensure-design-token-usage': 'error',
12
+ '@atlaskit/design-system/ensure-design-token-usage/preview': 'warn',
13
+ '@atlaskit/design-system/ensure-icon-color': 'error',
14
+ '@atlaskit/design-system/icon-label': 'warn',
15
+ '@atlaskit/design-system/no-banned-imports': 'error',
16
+ '@atlaskit/design-system/no-css-tagged-template-expression': 'error',
17
+ '@atlaskit/design-system/no-custom-icons': 'warn',
18
+ '@atlaskit/design-system/no-dark-theme-vr-tests': 'error',
19
+ '@atlaskit/design-system/no-deprecated-apis': 'error',
20
+ '@atlaskit/design-system/no-deprecated-design-token-usage': 'warn',
21
+ '@atlaskit/design-system/no-deprecated-imports': 'error',
22
+ '@atlaskit/design-system/no-direct-use-of-web-platform-drag-and-drop': 'error',
23
+ '@atlaskit/design-system/no-html-anchor': 'warn',
24
+ '@atlaskit/design-system/no-html-button': 'warn',
25
+ '@atlaskit/design-system/no-invalid-css-map': ['error', {
26
+ allowedFunctionCalls: [['@atlaskit/tokens', 'token']]
27
+ }],
28
+ '@atlaskit/design-system/no-keyframes-tagged-template-expression': 'error',
29
+ '@atlaskit/design-system/no-legacy-icons': 'warn',
30
+ '@atlaskit/design-system/no-margin': 'warn',
31
+ '@atlaskit/design-system/no-nested-styles': 'error',
32
+ '@atlaskit/design-system/no-physical-properties': 'error',
33
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
34
+ '@atlaskit/design-system/no-styled-tagged-template-expression': 'error',
35
+ '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
36
+ '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
37
+ '@atlaskit/design-system/no-unsupported-drag-and-drop-libraries': 'error',
38
+ '@atlaskit/design-system/prefer-primitives': 'warn',
39
+ '@atlaskit/design-system/use-button-group-label': 'warn',
40
+ '@atlaskit/design-system/use-drawer-label': 'warn',
41
+ '@atlaskit/design-system/use-heading': 'warn',
42
+ '@atlaskit/design-system/use-heading-level-in-spotlight-card': 'warn',
43
+ '@atlaskit/design-system/use-href-in-link-item': 'warn',
44
+ '@atlaskit/design-system/use-latest-xcss-syntax': 'error',
45
+ '@atlaskit/design-system/use-latest-xcss-syntax-typography': 'warn',
46
+ '@atlaskit/design-system/use-menu-section-title': 'warn',
47
+ '@atlaskit/design-system/use-popup-label': 'warn',
48
+ '@atlaskit/design-system/use-primitives': 'warn',
49
+ '@atlaskit/design-system/use-primitives-text': 'warn',
50
+ '@atlaskit/design-system/use-tag-group-label': 'warn',
51
+ '@atlaskit/design-system/use-tokens-space': 'error',
52
+ '@atlaskit/design-system/use-tokens-typography': 'warn',
53
+ '@atlaskit/design-system/use-visually-hidden': 'error'
54
+ }
55
+ };
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
3
- * @codegen <<SignedSource::310e184a1b8eca0da1246cfe8d128e2c>>
3
+ * @codegen <<SignedSource::47f018ad98455be31dc522bcf5360adf>>
4
4
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
5
5
  */
6
6
  export default {
@@ -29,6 +29,7 @@ export default {
29
29
  '@atlaskit/design-system/no-margin': 'warn',
30
30
  '@atlaskit/design-system/no-nested-styles': 'error',
31
31
  '@atlaskit/design-system/no-physical-properties': 'error',
32
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
32
33
  '@atlaskit/design-system/no-styled-tagged-template-expression': 'error',
33
34
  '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
34
35
  '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
@@ -0,0 +1,39 @@
1
+ /**
2
+ * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
3
+ * @codegen <<SignedSource::9c6dda34a88386c4fa5b931ab4baf929>>
4
+ * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
5
+ */
6
+ export default {
7
+ // NOTE: The reference to this plugin is inserted dynamically while creating the plugin in `index.codegen.tsx`
8
+ plugins: {},
9
+ rules: {
10
+ '@atlaskit/design-system/consistent-css-prop-usage': 'error',
11
+ '@atlaskit/design-system/ensure-design-token-usage': 'error',
12
+ '@atlaskit/design-system/icon-label': 'warn',
13
+ '@atlaskit/design-system/no-banned-imports': 'error',
14
+ '@atlaskit/design-system/no-deprecated-apis': 'error',
15
+ '@atlaskit/design-system/no-deprecated-design-token-usage': 'warn',
16
+ '@atlaskit/design-system/no-deprecated-imports': 'error',
17
+ '@atlaskit/design-system/no-direct-use-of-web-platform-drag-and-drop': 'error',
18
+ '@atlaskit/design-system/no-html-anchor': 'warn',
19
+ '@atlaskit/design-system/no-html-button': 'warn',
20
+ '@atlaskit/design-system/no-invalid-css-map': ['error', {
21
+ allowedFunctionCalls: [['@atlaskit/tokens', 'token']]
22
+ }],
23
+ '@atlaskit/design-system/no-nested-styles': 'error',
24
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
25
+ '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
26
+ '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
27
+ '@atlaskit/design-system/no-unsupported-drag-and-drop-libraries': 'error',
28
+ '@atlaskit/design-system/use-button-group-label': 'warn',
29
+ '@atlaskit/design-system/use-drawer-label': 'warn',
30
+ '@atlaskit/design-system/use-heading-level-in-spotlight-card': 'warn',
31
+ '@atlaskit/design-system/use-href-in-link-item': 'warn',
32
+ '@atlaskit/design-system/use-latest-xcss-syntax': 'error',
33
+ '@atlaskit/design-system/use-latest-xcss-syntax-typography': 'warn',
34
+ '@atlaskit/design-system/use-menu-section-title': 'warn',
35
+ '@atlaskit/design-system/use-popup-label': 'warn',
36
+ '@atlaskit/design-system/use-tag-group-label': 'warn',
37
+ '@atlaskit/design-system/use-visually-hidden': 'error'
38
+ }
39
+ };
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
3
- * @codegen <<SignedSource::9be7e90918082d78473f5d2a2271b15c>>
3
+ * @codegen <<SignedSource::f1b4aa9e656294739485e62ba4a33f9d>>
4
4
  * @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen
5
5
  */
6
6
  export default {
@@ -20,6 +20,7 @@ export default {
20
20
  allowedFunctionCalls: [['@atlaskit/tokens', 'token']]
21
21
  }],
22
22
  '@atlaskit/design-system/no-nested-styles': 'error',
23
+ '@atlaskit/design-system/no-separator-with-list-elements': 'warn',
23
24
  '@atlaskit/design-system/no-unsafe-design-token-usage': 'error',
24
25
  '@atlaskit/design-system/no-unsafe-style-overrides': 'warn',
25
26
  '@atlaskit/design-system/no-unsupported-drag-and-drop-libraries': 'error',