@atlaskit/eslint-plugin-platform 2.7.0 → 2.7.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 (114) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/cjs/index.js +0 -2
  3. package/dist/cjs/rules/ensure-critical-dependency-resolutions/index.js +2 -2
  4. package/dist/cjs/rules/ensure-native-and-af-exports-synced/index.js +3 -0
  5. package/dist/cjs/rules/feature-gating/no-alias/index.js +1 -1
  6. package/dist/cjs/rules/util/context-compat.js +4 -2
  7. package/dist/es2019/index.js +0 -2
  8. package/dist/es2019/rules/ensure-critical-dependency-resolutions/index.js +2 -2
  9. package/dist/es2019/rules/ensure-native-and-af-exports-synced/index.js +3 -0
  10. package/dist/es2019/rules/feature-gating/no-alias/index.js +1 -1
  11. package/dist/es2019/rules/util/context-compat.js +4 -2
  12. package/dist/esm/index.js +0 -2
  13. package/dist/esm/rules/ensure-critical-dependency-resolutions/index.js +2 -2
  14. package/dist/esm/rules/ensure-native-and-af-exports-synced/index.js +3 -0
  15. package/dist/esm/rules/feature-gating/no-alias/index.js +1 -1
  16. package/dist/esm/rules/util/context-compat.js +4 -2
  17. package/dist/types/index.d.ts +4 -6
  18. package/dist/types/rules/util/handle-ast-object.d.ts +1 -1
  19. package/dist/types-ts4.5/index.d.ts +4 -6
  20. package/dist/types-ts4.5/rules/util/handle-ast-object.d.ts +1 -1
  21. package/package.json +2 -2
  22. package/afm-cc/tsconfig.json +0 -24
  23. package/afm-jira/tsconfig.json +0 -24
  24. package/build/tsconfig.json +0 -17
  25. package/dist/cjs/rules/ensure-valid-platform-yarn-protocol-usage/index.js +0 -79
  26. package/dist/es2019/rules/ensure-valid-platform-yarn-protocol-usage/index.js +0 -62
  27. package/dist/esm/rules/ensure-valid-platform-yarn-protocol-usage/index.js +0 -75
  28. package/dist/types/rules/ensure-valid-platform-yarn-protocol-usage/index.d.ts +0 -3
  29. package/dist/types-ts4.5/rules/ensure-valid-platform-yarn-protocol-usage/index.d.ts +0 -3
  30. package/src/__tests__/utils/_tester.tsx +0 -26
  31. package/src/index.tsx +0 -254
  32. package/src/rules/compiled/README.md +0 -3
  33. package/src/rules/compiled/expand-background-shorthand/README.md +0 -23
  34. package/src/rules/compiled/expand-background-shorthand/__tests__/rule.test.ts +0 -160
  35. package/src/rules/compiled/expand-background-shorthand/index.tsx +0 -43
  36. package/src/rules/compiled/expand-border-shorthand/README.md +0 -51
  37. package/src/rules/compiled/expand-border-shorthand/__tests__/rule.test.ts +0 -211
  38. package/src/rules/compiled/expand-border-shorthand/index.ts +0 -103
  39. package/src/rules/compiled/expand-spacing-shorthand/README.md +0 -38
  40. package/src/rules/compiled/expand-spacing-shorthand/__tests__/rule.test.ts +0 -448
  41. package/src/rules/compiled/expand-spacing-shorthand/index.ts +0 -240
  42. package/src/rules/constants.tsx +0 -20
  43. package/src/rules/ensure-atlassian-team/__tests__/unit/rule.test.ts +0 -24
  44. package/src/rules/ensure-atlassian-team/index.ts +0 -51
  45. package/src/rules/ensure-critical-dependency-resolutions/__test__/unit/rule.test.tsx +0 -200
  46. package/src/rules/ensure-critical-dependency-resolutions/index.tsx +0 -172
  47. package/src/rules/ensure-feature-flag-prefix/__tests__/unit/rule.test.tsx +0 -65
  48. package/src/rules/ensure-feature-flag-prefix/index.tsx +0 -81
  49. package/src/rules/ensure-feature-flag-registration/__tests__/unit/rule.test.tsx +0 -115
  50. package/src/rules/ensure-feature-flag-registration/index.tsx +0 -106
  51. package/src/rules/ensure-native-and-af-exports-synced/__tests__/unit/rule.test.tsx +0 -199
  52. package/src/rules/ensure-native-and-af-exports-synced/index.tsx +0 -188
  53. package/src/rules/ensure-no-private-dependencies/__tests__/unit/rule.test.ts +0 -212
  54. package/src/rules/ensure-no-private-dependencies/index.ts +0 -64
  55. package/src/rules/ensure-publish-valid/__tests__/unit/rule.test.ts +0 -39
  56. package/src/rules/ensure-publish-valid/index.ts +0 -81
  57. package/src/rules/ensure-test-runner-arguments/__tests__/unit/rule.test.tsx +0 -298
  58. package/src/rules/ensure-test-runner-arguments/index.tsx +0 -121
  59. package/src/rules/ensure-test-runner-nested-count/__tests__/unit/rule.test.tsx +0 -308
  60. package/src/rules/ensure-test-runner-nested-count/index.tsx +0 -82
  61. package/src/rules/ensure-valid-bin-values/__tests__/unit/rule.test.ts +0 -159
  62. package/src/rules/ensure-valid-bin-values/index.ts +0 -70
  63. package/src/rules/ensure-valid-platform-yarn-protocol-usage/__tests__/unit/rule.test.ts +0 -147
  64. package/src/rules/ensure-valid-platform-yarn-protocol-usage/index.ts +0 -67
  65. package/src/rules/feature-gating/README.md +0 -8
  66. package/src/rules/feature-gating/inline-usage/README.md +0 -53
  67. package/src/rules/feature-gating/inline-usage/__tests__/rule.test.tsx +0 -106
  68. package/src/rules/feature-gating/inline-usage/index.tsx +0 -135
  69. package/src/rules/feature-gating/no-alias/README.md +0 -29
  70. package/src/rules/feature-gating/no-alias/__tests__/rule.test.tsx +0 -76
  71. package/src/rules/feature-gating/no-alias/index.tsx +0 -80
  72. package/src/rules/feature-gating/no-module-level-eval/README.md +0 -53
  73. package/src/rules/feature-gating/no-module-level-eval/__tests__/test.tsx +0 -133
  74. package/src/rules/feature-gating/no-module-level-eval/index.tsx +0 -54
  75. package/src/rules/feature-gating/no-module-level-eval-nav4/README.md +0 -8
  76. package/src/rules/feature-gating/no-module-level-eval-nav4/__tests__/test.tsx +0 -130
  77. package/src/rules/feature-gating/no-module-level-eval-nav4/index.tsx +0 -73
  78. package/src/rules/feature-gating/no-preconditioning/README.md +0 -69
  79. package/src/rules/feature-gating/no-preconditioning/__tests__/rule.test.tsx +0 -164
  80. package/src/rules/feature-gating/no-preconditioning/index.tsx +0 -138
  81. package/src/rules/feature-gating/prefer-fg/README.md +0 -3
  82. package/src/rules/feature-gating/prefer-fg/__tests__/rule.test.tsx +0 -83
  83. package/src/rules/feature-gating/prefer-fg/index.tsx +0 -110
  84. package/src/rules/feature-gating/static-feature-flags/README.md +0 -3
  85. package/src/rules/feature-gating/static-feature-flags/__tests__/test.tsx +0 -135
  86. package/src/rules/feature-gating/static-feature-flags/index.tsx +0 -103
  87. package/src/rules/feature-gating/use-recommended-utils/README.md +0 -67
  88. package/src/rules/feature-gating/use-recommended-utils/__tests__/rule.test.tsx +0 -78
  89. package/src/rules/feature-gating/use-recommended-utils/index.tsx +0 -57
  90. package/src/rules/feature-gating/utils.tsx +0 -48
  91. package/src/rules/no-direct-document-usage/index.tsx +0 -111
  92. package/src/rules/no-duplicate-dependencies/__tests__/unit/rule.test.ts +0 -116
  93. package/src/rules/no-duplicate-dependencies/index.ts +0 -79
  94. package/src/rules/no-invalid-feature-flag-usage/__tests__/unit/rule.test.tsx +0 -69
  95. package/src/rules/no-invalid-feature-flag-usage/index.tsx +0 -128
  96. package/src/rules/no-invalid-storybook-decorator-usage/__tests__/unit/rule.test.tsx +0 -18
  97. package/src/rules/no-invalid-storybook-decorator-usage/index.tsx +0 -39
  98. package/src/rules/no-pre-post-installs/__tests__/unit/rule.test.ts +0 -41
  99. package/src/rules/no-pre-post-installs/index.ts +0 -35
  100. package/src/rules/no-set-immediate/index.tsx +0 -43
  101. package/src/rules/no-sparse-checkout/__tests__/unit/rule.test.tsx +0 -48
  102. package/src/rules/no-sparse-checkout/index.tsx +0 -54
  103. package/src/rules/use-entrypoints-in-examples/README.md +0 -27
  104. package/src/rules/use-entrypoints-in-examples/__tests__/rule.test.tsx +0 -34
  105. package/src/rules/use-entrypoints-in-examples/index.tsx +0 -43
  106. package/src/rules/util/__tests__/context-compat.test.ts +0 -122
  107. package/src/rules/util/compiled-utils.ts +0 -27
  108. package/src/rules/util/context-compat.ts +0 -41
  109. package/src/rules/util/file-exclusions.ts +0 -39
  110. package/src/rules/util/handle-ast-object.ts +0 -33
  111. package/src/rules/util/registration-utils.ts +0 -59
  112. package/tsconfig.app.json +0 -43
  113. package/tsconfig.dev.json +0 -40
  114. package/tsconfig.json +0 -23
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @atlaskit/eslint-plugin-platform
2
2
 
3
+ ## 2.7.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`098cfbb01dc36`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/098cfbb01dc36) -
8
+ Add missing npmignore files to remove unnecessary files from published package
9
+
3
10
  ## 2.7.0
4
11
 
5
12
  ### Minor Changes
package/dist/cjs/index.js CHANGED
@@ -16,7 +16,6 @@ var _noDuplicateDependencies = _interopRequireDefault(require("./rules/no-duplic
16
16
  var _noInvalidFeatureFlagUsage = _interopRequireDefault(require("./rules/no-invalid-feature-flag-usage"));
17
17
  var _ensureFeatureFlagPrefix = _interopRequireDefault(require("./rules/ensure-feature-flag-prefix"));
18
18
  var _ensureCriticalDependencyResolutions = _interopRequireDefault(require("./rules/ensure-critical-dependency-resolutions"));
19
- var _ensureValidPlatformYarnProtocolUsage = _interopRequireDefault(require("./rules/ensure-valid-platform-yarn-protocol-usage"));
20
19
  var _ensureValidBinValues = _interopRequireDefault(require("./rules/ensure-valid-bin-values"));
21
20
  var _ensureNoPrivateDependencies = _interopRequireDefault(require("./rules/ensure-no-private-dependencies"));
22
21
  var _expandBorderShorthand = _interopRequireDefault(require("./rules/compiled/expand-border-shorthand"));
@@ -65,7 +64,6 @@ var rules = exports.rules = {
65
64
  'ensure-test-runner-nested-count': _ensureTestRunnerNestedCount.default,
66
65
  'ensure-atlassian-team': _ensureAtlassianTeam.default,
67
66
  'ensure-critical-dependency-resolutions': _ensureCriticalDependencyResolutions.default,
68
- 'ensure-valid-platform-yarn-protocol-usage': _ensureValidPlatformYarnProtocolUsage.default,
69
67
  'ensure-valid-bin-values': _ensureValidBinValues.default,
70
68
  'ensure-no-private-dependencies': _ensureNoPrivateDependencies.default,
71
69
  'expand-border-shorthand': _expandBorderShorthand.default,
@@ -14,8 +14,8 @@ var _handleAstObject = require("../util/handle-ast-object");
14
14
  // In matchMinorVersion, we will check if the versions in resolutions fall in the right ranges.
15
15
  //
16
16
  var DESIRED_PKG_VERSIONS = {
17
- typescript: ['5.4'],
18
- tslib: ['2.6'],
17
+ typescript: ['5.4', '5.9'],
18
+ tslib: ['2.6', '2.8'],
19
19
  '@types/react': ['16.14', '18.2'],
20
20
  'react-relay': ['npm:atl-react-relay@0.0.0-main-5980a913'],
21
21
  'relay-compiler': ['npm:atl-relay-compiler@0.0.0-main-5980a913'],
@@ -21,6 +21,9 @@ var exportsValidationExceptions = {
21
21
  },
22
22
  '@atlaskit/storybook-addon-design-system': {
23
23
  ignoredAfExportKeys: ['.']
24
+ },
25
+ '@atlassian/react-async': {
26
+ ignoredAfExportKeys: ['./mock']
24
27
  }
25
28
  };
26
29
  var rule = {
@@ -29,7 +29,7 @@ var rule = {
29
29
  return;
30
30
  }
31
31
  (_node$specifiers = node.specifiers) === null || _node$specifiers === void 0 || _node$specifiers.forEach(function (specifier) {
32
- if (specifier.type === 'ImportSpecifier') {
32
+ if (specifier.type === 'ImportSpecifier' && 'name' in specifier.imported) {
33
33
  var imported = specifier.imported,
34
34
  local = specifier.local;
35
35
  if (imported.name !== local.name) {
@@ -30,7 +30,7 @@ var getSourceCode = exports.getSourceCode = function getSourceCode(context) {
30
30
  */
31
31
  var getScope = exports.getScope = function getScope(context, node) {
32
32
  var _getSourceCode$getSco, _getSourceCode, _getSourceCode$getSco2;
33
- return (_getSourceCode$getSco = (_getSourceCode = getSourceCode(context)) === null || _getSourceCode === void 0 || (_getSourceCode$getSco2 = _getSourceCode.getScope) === null || _getSourceCode$getSco2 === void 0 ? void 0 : _getSourceCode$getSco2.call(_getSourceCode, node)) !== null && _getSourceCode$getSco !== void 0 ? _getSourceCode$getSco : context.getScope();
33
+ return (_getSourceCode$getSco = (_getSourceCode = getSourceCode(context)) === null || _getSourceCode === void 0 || (_getSourceCode$getSco2 = _getSourceCode.getScope) === null || _getSourceCode$getSco2 === void 0 ? void 0 : _getSourceCode$getSco2.call(_getSourceCode, node)) !== null && _getSourceCode$getSco !== void 0 ? _getSourceCode$getSco : context.getScope(node);
34
34
  };
35
35
 
36
36
  /**
@@ -43,5 +43,7 @@ var getScope = exports.getScope = function getScope(context, node) {
43
43
  */
44
44
  var getAncestors = exports.getAncestors = function getAncestors(context, node) {
45
45
  var _getSourceCode$getAnc, _getSourceCode2, _getSourceCode2$getAn;
46
- return (_getSourceCode$getAnc = (_getSourceCode2 = getSourceCode(context)) === null || _getSourceCode2 === void 0 || (_getSourceCode2$getAn = _getSourceCode2.getAncestors) === null || _getSourceCode2$getAn === void 0 ? void 0 : _getSourceCode2$getAn.call(_getSourceCode2, node)) !== null && _getSourceCode$getAnc !== void 0 ? _getSourceCode$getAnc : context.getAncestors();
46
+ return (_getSourceCode$getAnc = (_getSourceCode2 = getSourceCode(context)) === null || _getSourceCode2 === void 0 || (_getSourceCode2$getAn = _getSourceCode2.getAncestors) === null || _getSourceCode2$getAn === void 0 ? void 0 : _getSourceCode2$getAn.call(_getSourceCode2, node)) !== null && _getSourceCode$getAnc !== void 0 ? _getSourceCode$getAnc :
47
+ // this is needed for jira's eslint update, as otherwise there is type errors only in jira typechecking
48
+ context.getAncestors(node);
47
49
  };
@@ -9,7 +9,6 @@ import noDuplicateDependencies from './rules/no-duplicate-dependencies';
9
9
  import noInvalidFeatureFlagUsage from './rules/no-invalid-feature-flag-usage';
10
10
  import ensureFeatureFlagPrefix from './rules/ensure-feature-flag-prefix';
11
11
  import ensureCriticalDependencyResolutions from './rules/ensure-critical-dependency-resolutions';
12
- import ensureValidPlatformYarnProtocolUsage from './rules/ensure-valid-platform-yarn-protocol-usage';
13
12
  import ensureValidBinValues from './rules/ensure-valid-bin-values';
14
13
  import ensureNoPrivateDependencies from './rules/ensure-no-private-dependencies';
15
14
  import expandBorderShorthand from './rules/compiled/expand-border-shorthand';
@@ -56,7 +55,6 @@ const rules = {
56
55
  'ensure-test-runner-nested-count': ensureTestRunnerNestedCount,
57
56
  'ensure-atlassian-team': ensureAtlassianTeam,
58
57
  'ensure-critical-dependency-resolutions': ensureCriticalDependencyResolutions,
59
- 'ensure-valid-platform-yarn-protocol-usage': ensureValidPlatformYarnProtocolUsage,
60
58
  'ensure-valid-bin-values': ensureValidBinValues,
61
59
  'ensure-no-private-dependencies': ensureNoPrivateDependencies,
62
60
  'expand-border-shorthand': expandBorderShorthand,
@@ -7,8 +7,8 @@ import { getObjectPropertyAsObject } from '../util/handle-ast-object';
7
7
  // In matchMinorVersion, we will check if the versions in resolutions fall in the right ranges.
8
8
  //
9
9
  const DESIRED_PKG_VERSIONS = {
10
- typescript: ['5.4'],
11
- tslib: ['2.6'],
10
+ typescript: ['5.4', '5.9'],
11
+ tslib: ['2.6', '2.8'],
12
12
  '@types/react': ['16.14', '18.2'],
13
13
  'react-relay': ['npm:atl-react-relay@0.0.0-main-5980a913'],
14
14
  'relay-compiler': ['npm:atl-relay-compiler@0.0.0-main-5980a913'],
@@ -9,6 +9,9 @@ const exportsValidationExceptions = {
9
9
  },
10
10
  '@atlaskit/storybook-addon-design-system': {
11
11
  ignoredAfExportKeys: ['.']
12
+ },
13
+ '@atlassian/react-async': {
14
+ ignoredAfExportKeys: ['./mock']
12
15
  }
13
16
  };
14
17
  const rule = {
@@ -21,7 +21,7 @@ const rule = {
21
21
  return;
22
22
  }
23
23
  (_node$specifiers = node.specifiers) === null || _node$specifiers === void 0 ? void 0 : _node$specifiers.forEach(specifier => {
24
- if (specifier.type === 'ImportSpecifier') {
24
+ if (specifier.type === 'ImportSpecifier' && 'name' in specifier.imported) {
25
25
  const {
26
26
  imported,
27
27
  local
@@ -24,7 +24,7 @@ export const getSourceCode = context => {
24
24
  */
25
25
  export const getScope = (context, node) => {
26
26
  var _getSourceCode$getSco, _getSourceCode, _getSourceCode$getSco2;
27
- return (_getSourceCode$getSco = (_getSourceCode = getSourceCode(context)) === null || _getSourceCode === void 0 ? void 0 : (_getSourceCode$getSco2 = _getSourceCode.getScope) === null || _getSourceCode$getSco2 === void 0 ? void 0 : _getSourceCode$getSco2.call(_getSourceCode, node)) !== null && _getSourceCode$getSco !== void 0 ? _getSourceCode$getSco : context.getScope();
27
+ return (_getSourceCode$getSco = (_getSourceCode = getSourceCode(context)) === null || _getSourceCode === void 0 ? void 0 : (_getSourceCode$getSco2 = _getSourceCode.getScope) === null || _getSourceCode$getSco2 === void 0 ? void 0 : _getSourceCode$getSco2.call(_getSourceCode, node)) !== null && _getSourceCode$getSco !== void 0 ? _getSourceCode$getSco : context.getScope(node);
28
28
  };
29
29
 
30
30
  /**
@@ -37,5 +37,7 @@ export const getScope = (context, node) => {
37
37
  */
38
38
  export const getAncestors = (context, node) => {
39
39
  var _getSourceCode$getAnc, _getSourceCode2, _getSourceCode2$getAn;
40
- return (_getSourceCode$getAnc = (_getSourceCode2 = getSourceCode(context)) === null || _getSourceCode2 === void 0 ? void 0 : (_getSourceCode2$getAn = _getSourceCode2.getAncestors) === null || _getSourceCode2$getAn === void 0 ? void 0 : _getSourceCode2$getAn.call(_getSourceCode2, node)) !== null && _getSourceCode$getAnc !== void 0 ? _getSourceCode$getAnc : context.getAncestors();
40
+ return (_getSourceCode$getAnc = (_getSourceCode2 = getSourceCode(context)) === null || _getSourceCode2 === void 0 ? void 0 : (_getSourceCode2$getAn = _getSourceCode2.getAncestors) === null || _getSourceCode2$getAn === void 0 ? void 0 : _getSourceCode2$getAn.call(_getSourceCode2, node)) !== null && _getSourceCode$getAnc !== void 0 ? _getSourceCode$getAnc :
41
+ // this is needed for jira's eslint update, as otherwise there is type errors only in jira typechecking
42
+ context.getAncestors(node);
41
43
  };
package/dist/esm/index.js CHANGED
@@ -12,7 +12,6 @@ import noDuplicateDependencies from './rules/no-duplicate-dependencies';
12
12
  import noInvalidFeatureFlagUsage from './rules/no-invalid-feature-flag-usage';
13
13
  import ensureFeatureFlagPrefix from './rules/ensure-feature-flag-prefix';
14
14
  import ensureCriticalDependencyResolutions from './rules/ensure-critical-dependency-resolutions';
15
- import ensureValidPlatformYarnProtocolUsage from './rules/ensure-valid-platform-yarn-protocol-usage';
16
15
  import ensureValidBinValues from './rules/ensure-valid-bin-values';
17
16
  import ensureNoPrivateDependencies from './rules/ensure-no-private-dependencies';
18
17
  import expandBorderShorthand from './rules/compiled/expand-border-shorthand';
@@ -59,7 +58,6 @@ var rules = {
59
58
  'ensure-test-runner-nested-count': ensureTestRunnerNestedCount,
60
59
  'ensure-atlassian-team': ensureAtlassianTeam,
61
60
  'ensure-critical-dependency-resolutions': ensureCriticalDependencyResolutions,
62
- 'ensure-valid-platform-yarn-protocol-usage': ensureValidPlatformYarnProtocolUsage,
63
61
  'ensure-valid-bin-values': ensureValidBinValues,
64
62
  'ensure-no-private-dependencies': ensureNoPrivateDependencies,
65
63
  'expand-border-shorthand': expandBorderShorthand,
@@ -8,8 +8,8 @@ import { getObjectPropertyAsObject } from '../util/handle-ast-object';
8
8
  // In matchMinorVersion, we will check if the versions in resolutions fall in the right ranges.
9
9
  //
10
10
  var DESIRED_PKG_VERSIONS = {
11
- typescript: ['5.4'],
12
- tslib: ['2.6'],
11
+ typescript: ['5.4', '5.9'],
12
+ tslib: ['2.6', '2.8'],
13
13
  '@types/react': ['16.14', '18.2'],
14
14
  'react-relay': ['npm:atl-react-relay@0.0.0-main-5980a913'],
15
15
  'relay-compiler': ['npm:atl-relay-compiler@0.0.0-main-5980a913'],
@@ -14,6 +14,9 @@ var exportsValidationExceptions = {
14
14
  },
15
15
  '@atlaskit/storybook-addon-design-system': {
16
16
  ignoredAfExportKeys: ['.']
17
+ },
18
+ '@atlassian/react-async': {
19
+ ignoredAfExportKeys: ['./mock']
17
20
  }
18
21
  };
19
22
  var rule = {
@@ -22,7 +22,7 @@ var rule = {
22
22
  return;
23
23
  }
24
24
  (_node$specifiers = node.specifiers) === null || _node$specifiers === void 0 || _node$specifiers.forEach(function (specifier) {
25
- if (specifier.type === 'ImportSpecifier') {
25
+ if (specifier.type === 'ImportSpecifier' && 'name' in specifier.imported) {
26
26
  var imported = specifier.imported,
27
27
  local = specifier.local;
28
28
  if (imported.name !== local.name) {
@@ -24,7 +24,7 @@ export var getSourceCode = function getSourceCode(context) {
24
24
  */
25
25
  export var getScope = function getScope(context, node) {
26
26
  var _getSourceCode$getSco, _getSourceCode, _getSourceCode$getSco2;
27
- return (_getSourceCode$getSco = (_getSourceCode = getSourceCode(context)) === null || _getSourceCode === void 0 || (_getSourceCode$getSco2 = _getSourceCode.getScope) === null || _getSourceCode$getSco2 === void 0 ? void 0 : _getSourceCode$getSco2.call(_getSourceCode, node)) !== null && _getSourceCode$getSco !== void 0 ? _getSourceCode$getSco : context.getScope();
27
+ return (_getSourceCode$getSco = (_getSourceCode = getSourceCode(context)) === null || _getSourceCode === void 0 || (_getSourceCode$getSco2 = _getSourceCode.getScope) === null || _getSourceCode$getSco2 === void 0 ? void 0 : _getSourceCode$getSco2.call(_getSourceCode, node)) !== null && _getSourceCode$getSco !== void 0 ? _getSourceCode$getSco : context.getScope(node);
28
28
  };
29
29
 
30
30
  /**
@@ -37,5 +37,7 @@ export var getScope = function getScope(context, node) {
37
37
  */
38
38
  export var getAncestors = function getAncestors(context, node) {
39
39
  var _getSourceCode$getAnc, _getSourceCode2, _getSourceCode2$getAn;
40
- return (_getSourceCode$getAnc = (_getSourceCode2 = getSourceCode(context)) === null || _getSourceCode2 === void 0 || (_getSourceCode2$getAn = _getSourceCode2.getAncestors) === null || _getSourceCode2$getAn === void 0 ? void 0 : _getSourceCode2$getAn.call(_getSourceCode2, node)) !== null && _getSourceCode$getAnc !== void 0 ? _getSourceCode$getAnc : context.getAncestors();
40
+ return (_getSourceCode$getAnc = (_getSourceCode2 = getSourceCode(context)) === null || _getSourceCode2 === void 0 || (_getSourceCode2$getAn = _getSourceCode2.getAncestors) === null || _getSourceCode2$getAn === void 0 ? void 0 : _getSourceCode2$getAn.call(_getSourceCode2, node)) !== null && _getSourceCode$getAnc !== void 0 ? _getSourceCode$getAnc :
41
+ // this is needed for jira's eslint update, as otherwise there is type errors only in jira typechecking
42
+ context.getAncestors(node);
41
43
  };
@@ -6,7 +6,6 @@ declare const rules: {
6
6
  'ensure-test-runner-nested-count': import("eslint").Rule.RuleModule;
7
7
  'ensure-atlassian-team': import("eslint").Rule.RuleModule;
8
8
  'ensure-critical-dependency-resolutions': import("eslint").Rule.RuleModule;
9
- 'ensure-valid-platform-yarn-protocol-usage': import("eslint").Rule.RuleModule;
10
9
  'ensure-valid-bin-values': import("eslint").Rule.RuleModule;
11
10
  'ensure-no-private-dependencies': import("eslint").Rule.RuleModule;
12
11
  'expand-border-shorthand': import("eslint").Rule.RuleModule;
@@ -43,7 +42,6 @@ declare const plugin: {
43
42
  'ensure-test-runner-nested-count': import("eslint").Rule.RuleModule;
44
43
  'ensure-atlassian-team': import("eslint").Rule.RuleModule;
45
44
  'ensure-critical-dependency-resolutions': import("eslint").Rule.RuleModule;
46
- 'ensure-valid-platform-yarn-protocol-usage': import("eslint").Rule.RuleModule;
47
45
  'ensure-valid-bin-values': import("eslint").Rule.RuleModule;
48
46
  'ensure-no-private-dependencies': import("eslint").Rule.RuleModule;
49
47
  'expand-border-shorthand': import("eslint").Rule.RuleModule;
@@ -181,8 +179,8 @@ declare const plugin: {
181
179
  };
182
180
  };
183
181
  processors: {
184
- 'package-json-processor': Linter.Processor<string | Linter.ProcessorFile>;
185
- 'package-json-processor-for-flat-config': Linter.Processor<string | Linter.ProcessorFile>;
182
+ 'package-json-processor': Linter.Processor;
183
+ 'package-json-processor-for-flat-config': Linter.Processor;
186
184
  };
187
185
  };
188
186
  declare const configs: {
@@ -298,8 +296,8 @@ declare const configs: {
298
296
  };
299
297
  };
300
298
  declare const processors: {
301
- 'package-json-processor': Linter.Processor<string | Linter.ProcessorFile>;
302
- 'package-json-processor-for-flat-config': Linter.Processor<string | Linter.ProcessorFile>;
299
+ 'package-json-processor': Linter.Processor;
300
+ 'package-json-processor-for-flat-config': Linter.Processor;
303
301
  };
304
302
  export { configs, plugin, processors, rules };
305
303
  export default plugin;
@@ -1,3 +1,3 @@
1
1
  import type { ObjectExpression, SimpleLiteral, RegExpLiteral, BigIntLiteral } from 'estree';
2
- export declare const getObjectPropertyAsLiteral: (node: ObjectExpression, property: string) => SimpleLiteral['value'] | RegExpLiteral['value'] | BigIntLiteral['value'];
2
+ export declare const getObjectPropertyAsLiteral: (node: ObjectExpression, property: string) => SimpleLiteral["value"] | RegExpLiteral["value"] | BigIntLiteral["value"];
3
3
  export declare const getObjectPropertyAsObject: (node: ObjectExpression, property: string) => ObjectExpression | null;
@@ -6,7 +6,6 @@ declare const rules: {
6
6
  'ensure-test-runner-nested-count': import("eslint").Rule.RuleModule;
7
7
  'ensure-atlassian-team': import("eslint").Rule.RuleModule;
8
8
  'ensure-critical-dependency-resolutions': import("eslint").Rule.RuleModule;
9
- 'ensure-valid-platform-yarn-protocol-usage': import("eslint").Rule.RuleModule;
10
9
  'ensure-valid-bin-values': import("eslint").Rule.RuleModule;
11
10
  'ensure-no-private-dependencies': import("eslint").Rule.RuleModule;
12
11
  'expand-border-shorthand': import("eslint").Rule.RuleModule;
@@ -43,7 +42,6 @@ declare const plugin: {
43
42
  'ensure-test-runner-nested-count': import("eslint").Rule.RuleModule;
44
43
  'ensure-atlassian-team': import("eslint").Rule.RuleModule;
45
44
  'ensure-critical-dependency-resolutions': import("eslint").Rule.RuleModule;
46
- 'ensure-valid-platform-yarn-protocol-usage': import("eslint").Rule.RuleModule;
47
45
  'ensure-valid-bin-values': import("eslint").Rule.RuleModule;
48
46
  'ensure-no-private-dependencies': import("eslint").Rule.RuleModule;
49
47
  'expand-border-shorthand': import("eslint").Rule.RuleModule;
@@ -199,8 +197,8 @@ declare const plugin: {
199
197
  };
200
198
  };
201
199
  processors: {
202
- 'package-json-processor': Linter.Processor<string | Linter.ProcessorFile>;
203
- 'package-json-processor-for-flat-config': Linter.Processor<string | Linter.ProcessorFile>;
200
+ 'package-json-processor': Linter.Processor;
201
+ 'package-json-processor-for-flat-config': Linter.Processor;
204
202
  };
205
203
  };
206
204
  declare const configs: {
@@ -334,8 +332,8 @@ declare const configs: {
334
332
  };
335
333
  };
336
334
  declare const processors: {
337
- 'package-json-processor': Linter.Processor<string | Linter.ProcessorFile>;
338
- 'package-json-processor-for-flat-config': Linter.Processor<string | Linter.ProcessorFile>;
335
+ 'package-json-processor': Linter.Processor;
336
+ 'package-json-processor-for-flat-config': Linter.Processor;
339
337
  };
340
338
  export { configs, plugin, processors, rules };
341
339
  export default plugin;
@@ -1,3 +1,3 @@
1
1
  import type { ObjectExpression, SimpleLiteral, RegExpLiteral, BigIntLiteral } from 'estree';
2
- export declare const getObjectPropertyAsLiteral: (node: ObjectExpression, property: string) => SimpleLiteral['value'] | RegExpLiteral['value'] | BigIntLiteral['value'];
2
+ export declare const getObjectPropertyAsLiteral: (node: ObjectExpression, property: string) => SimpleLiteral["value"] | RegExpLiteral["value"] | BigIntLiteral["value"];
3
3
  export declare const getObjectPropertyAsObject: (node: ObjectExpression, property: string) => ObjectExpression | null;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@atlaskit/eslint-plugin-platform",
3
3
  "description": "The essential plugin for use with Atlassian frontend platform tools",
4
- "version": "2.7.0",
4
+ "version": "2.7.1",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "atlassian": {
7
7
  "team": "Build Infra",
@@ -46,7 +46,7 @@
46
46
  "@types/eslint": "^8.56.6",
47
47
  "eslint": "^8.57.0",
48
48
  "find-up": "^4 || ^5",
49
- "outdent": "^0.5.0"
49
+ "outdent": "^0.7.1"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "find-up": "^4 || ^5"
@@ -1,24 +0,0 @@
1
- {
2
- "extends": "../../../../tsconfig.entry-points.confluence.json",
3
- "compilerOptions": {
4
- "target": "es5",
5
- "composite": true,
6
- "outDir": "../../../../../confluence/tsDist/@atlaskit__eslint-plugin-platform",
7
- "rootDir": "../"
8
- },
9
- "include": [
10
- "../src/**/*.ts",
11
- "../src/**/*.tsx"
12
- ],
13
- "exclude": [
14
- "../src/**/__tests__/*",
15
- "../__tests__/*",
16
- "../src/**/*.test.*",
17
- "../src/**/test.*"
18
- ],
19
- "references": [
20
- {
21
- "path": "../../../design-system/eslint-utils/afm-cc/tsconfig.json"
22
- }
23
- ]
24
- }
@@ -1,24 +0,0 @@
1
- {
2
- "extends": "../../../../tsconfig.entry-points.jira.json",
3
- "compilerOptions": {
4
- "target": "es5",
5
- "outDir": "../../../../../tsDist/@atlaskit__eslint-plugin-platform/app",
6
- "rootDir": "../",
7
- "composite": true
8
- },
9
- "include": [
10
- "../src/**/*.ts",
11
- "../src/**/*.tsx"
12
- ],
13
- "exclude": [
14
- "../src/**/__tests__/*",
15
- "../__tests__/*",
16
- "../src/**/*.test.*",
17
- "../src/**/test.*"
18
- ],
19
- "references": [
20
- {
21
- "path": "../../../design-system/eslint-utils/afm-jira/tsconfig.json"
22
- }
23
- ]
24
- }
@@ -1,17 +0,0 @@
1
- {
2
- "extends": "../tsconfig",
3
- "compilerOptions": {
4
- "target": "es5",
5
- "paths": {}
6
- },
7
- "include": [
8
- "../src/**/*.ts",
9
- "../src/**/*.tsx"
10
- ],
11
- "exclude": [
12
- "../src/**/__tests__/*",
13
- "../__tests__/*",
14
- "../src/**/*.test.*",
15
- "../src/**/test.*"
16
- ]
17
- }
@@ -1,79 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _handleAstObject = require("../util/handle-ast-object");
8
- 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; } } }; }
9
- 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; } }
10
- 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; } // eslint-disable-next-line import/no-extraneous-dependencies
11
- var rootProtocolRegex = /^root:[\^~\*]$/;
12
-
13
- /**
14
- * Checks if the 'workspace:' and 'root:' protocol are used as either dependencies or devDependencies
15
- */
16
- function getYarnProtocolsUsed(node) {
17
- var protocolsUsed = {
18
- workspace: false,
19
- root: false
20
- };
21
- var dependencies = (0, _handleAstObject.getObjectPropertyAsObject)(node, 'dependencies');
22
- var devDependencies = (0, _handleAstObject.getObjectPropertyAsObject)(node, 'devDependencies');
23
- var peerDependencies = (0, _handleAstObject.getObjectPropertyAsObject)(node, 'peerDependencies');
24
- for (var _i = 0, _arr = [dependencies, devDependencies, peerDependencies]; _i < _arr.length; _i++) {
25
- var obj = _arr[_i];
26
- var _iterator = _createForOfIteratorHelper((obj === null || obj === void 0 ? void 0 : obj.properties) || []),
27
- _step;
28
- try {
29
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
30
- var p = _step.value;
31
- if (p.type === 'Property' && p.value.type === 'Literal') {
32
- if (typeof p.value.value === 'string') {
33
- if (rootProtocolRegex.test(p.value.value)) {
34
- protocolsUsed.root = true;
35
- }
36
- }
37
- }
38
- }
39
- } catch (err) {
40
- _iterator.e(err);
41
- } finally {
42
- _iterator.f();
43
- }
44
- }
45
- return protocolsUsed;
46
- }
47
- var rule = {
48
- meta: {
49
- type: 'problem',
50
- docs: {
51
- description: "Ensures that yarn protocols 'workspace:' and 'root:' are used correctly.",
52
- recommended: true
53
- },
54
- hasSuggestions: false,
55
- messages: {
56
- invalidWorkspaceProtocolUsage: "The 'workspace:^'protocol is Used. To resolve this error, please use the 'workspace:*' protocol instead.",
57
- invalidRootProtocolUsage: "The 'root:' protocol is not allowed in platform packages. To resolve this error, replace the 'root:' protocol with specific package versions (e.g. '^1.0.0')."
58
- }
59
- },
60
- create: function create(context) {
61
- return {
62
- ObjectExpression: function ObjectExpression(node) {
63
- if (!context.filename.endsWith('package.json') || node.type !== 'ObjectExpression') {
64
- return;
65
- }
66
- var yarnProtocolsUsed = getYarnProtocolsUsed(node);
67
-
68
- // The 'root:' protocol can not be used in any platform packages
69
- if (yarnProtocolsUsed.root) {
70
- context.report({
71
- node: node,
72
- messageId: 'invalidRootProtocolUsage'
73
- });
74
- }
75
- }
76
- };
77
- }
78
- };
79
- var _default = exports.default = rule;
@@ -1,62 +0,0 @@
1
- // eslint-disable-next-line import/no-extraneous-dependencies
2
-
3
- import { getObjectPropertyAsObject } from '../util/handle-ast-object';
4
- const rootProtocolRegex = /^root:[\^~\*]$/;
5
-
6
- /**
7
- * Checks if the 'workspace:' and 'root:' protocol are used as either dependencies or devDependencies
8
- */
9
- function getYarnProtocolsUsed(node) {
10
- const protocolsUsed = {
11
- workspace: false,
12
- root: false
13
- };
14
- const dependencies = getObjectPropertyAsObject(node, 'dependencies');
15
- const devDependencies = getObjectPropertyAsObject(node, 'devDependencies');
16
- const peerDependencies = getObjectPropertyAsObject(node, 'peerDependencies');
17
- for (const obj of [dependencies, devDependencies, peerDependencies]) {
18
- for (const p of (obj === null || obj === void 0 ? void 0 : obj.properties) || []) {
19
- if (p.type === 'Property' && p.value.type === 'Literal') {
20
- if (typeof p.value.value === 'string') {
21
- if (rootProtocolRegex.test(p.value.value)) {
22
- protocolsUsed.root = true;
23
- }
24
- }
25
- }
26
- }
27
- }
28
- return protocolsUsed;
29
- }
30
- const rule = {
31
- meta: {
32
- type: 'problem',
33
- docs: {
34
- description: `Ensures that yarn protocols 'workspace:' and 'root:' are used correctly.`,
35
- recommended: true
36
- },
37
- hasSuggestions: false,
38
- messages: {
39
- invalidWorkspaceProtocolUsage: `The 'workspace:^'protocol is Used. To resolve this error, please use the 'workspace:*' protocol instead.`,
40
- invalidRootProtocolUsage: `The 'root:' protocol is not allowed in platform packages. To resolve this error, replace the 'root:' protocol with specific package versions (e.g. '^1.0.0').`
41
- }
42
- },
43
- create(context) {
44
- return {
45
- ObjectExpression: node => {
46
- if (!context.filename.endsWith('package.json') || node.type !== 'ObjectExpression') {
47
- return;
48
- }
49
- const yarnProtocolsUsed = getYarnProtocolsUsed(node);
50
-
51
- // The 'root:' protocol can not be used in any platform packages
52
- if (yarnProtocolsUsed.root) {
53
- context.report({
54
- node,
55
- messageId: 'invalidRootProtocolUsage'
56
- });
57
- }
58
- }
59
- };
60
- }
61
- };
62
- export default rule;
@@ -1,75 +0,0 @@
1
- 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; } } }; }
2
- 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; } }
3
- 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; }
4
- // eslint-disable-next-line import/no-extraneous-dependencies
5
-
6
- import { getObjectPropertyAsObject } from '../util/handle-ast-object';
7
- var rootProtocolRegex = /^root:[\^~\*]$/;
8
-
9
- /**
10
- * Checks if the 'workspace:' and 'root:' protocol are used as either dependencies or devDependencies
11
- */
12
- function getYarnProtocolsUsed(node) {
13
- var protocolsUsed = {
14
- workspace: false,
15
- root: false
16
- };
17
- var dependencies = getObjectPropertyAsObject(node, 'dependencies');
18
- var devDependencies = getObjectPropertyAsObject(node, 'devDependencies');
19
- var peerDependencies = getObjectPropertyAsObject(node, 'peerDependencies');
20
- for (var _i = 0, _arr = [dependencies, devDependencies, peerDependencies]; _i < _arr.length; _i++) {
21
- var obj = _arr[_i];
22
- var _iterator = _createForOfIteratorHelper((obj === null || obj === void 0 ? void 0 : obj.properties) || []),
23
- _step;
24
- try {
25
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
26
- var p = _step.value;
27
- if (p.type === 'Property' && p.value.type === 'Literal') {
28
- if (typeof p.value.value === 'string') {
29
- if (rootProtocolRegex.test(p.value.value)) {
30
- protocolsUsed.root = true;
31
- }
32
- }
33
- }
34
- }
35
- } catch (err) {
36
- _iterator.e(err);
37
- } finally {
38
- _iterator.f();
39
- }
40
- }
41
- return protocolsUsed;
42
- }
43
- var rule = {
44
- meta: {
45
- type: 'problem',
46
- docs: {
47
- description: "Ensures that yarn protocols 'workspace:' and 'root:' are used correctly.",
48
- recommended: true
49
- },
50
- hasSuggestions: false,
51
- messages: {
52
- invalidWorkspaceProtocolUsage: "The 'workspace:^'protocol is Used. To resolve this error, please use the 'workspace:*' protocol instead.",
53
- invalidRootProtocolUsage: "The 'root:' protocol is not allowed in platform packages. To resolve this error, replace the 'root:' protocol with specific package versions (e.g. '^1.0.0')."
54
- }
55
- },
56
- create: function create(context) {
57
- return {
58
- ObjectExpression: function ObjectExpression(node) {
59
- if (!context.filename.endsWith('package.json') || node.type !== 'ObjectExpression') {
60
- return;
61
- }
62
- var yarnProtocolsUsed = getYarnProtocolsUsed(node);
63
-
64
- // The 'root:' protocol can not be used in any platform packages
65
- if (yarnProtocolsUsed.root) {
66
- context.report({
67
- node: node,
68
- messageId: 'invalidRootProtocolUsage'
69
- });
70
- }
71
- }
72
- };
73
- }
74
- };
75
- export default rule;
@@ -1,3 +0,0 @@
1
- import type { Rule } from 'eslint';
2
- declare const rule: Rule.RuleModule;
3
- export default rule;
@@ -1,3 +0,0 @@
1
- import type { Rule } from 'eslint';
2
- declare const rule: Rule.RuleModule;
3
- export default rule;