@storm-software/eslint 0.85.0 → 0.85.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.
package/README.md CHANGED
@@ -21,7 +21,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
21
21
 
22
22
  <h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
23
23
 
24
- [![Version](https://img.shields.io/badge/version-0.84.1-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-ops/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
24
+ [![Version](https://img.shields.io/badge/version-0.85.0-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-ops/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
25
25
 
26
26
  <!-- prettier-ignore-start -->
27
27
  <!-- markdownlint-disable -->
package/dist/preset.mjs CHANGED
@@ -18,7 +18,7 @@ import unicorn from 'eslint-plugin-unicorn';
18
18
  import yml from 'eslint-plugin-yml';
19
19
  import globals from 'globals';
20
20
  import { writeInfo, writeDebug } from '@storm-software/config-tools';
21
- import { merge } from 'radash';
21
+ import { defu } from 'defu';
22
22
  import tsEslint$1 from 'typescript-eslint';
23
23
  import require$$0 from 'eslint/use-at-your-own-risk';
24
24
  import require$$0$1 from 'eslint';
@@ -13175,10 +13175,17 @@ function getStormConfig(options = {
13175
13175
  }
13176
13176
  const result = formatConfig(
13177
13177
  "Preset",
13178
- configs.reduce(
13179
- (ret, config) => merge(ret, [config], (c) => c.files),
13180
- []
13181
- )
13178
+ configs.reduce((ret, config) => {
13179
+ const existingIndex = ret.findIndex(
13180
+ (existing) => areFilesEqual(existing.files, config.files)
13181
+ );
13182
+ if (existingIndex) {
13183
+ ret[existingIndex] = defu(ret[existingIndex], config);
13184
+ } else {
13185
+ ret.push(config);
13186
+ }
13187
+ return ret;
13188
+ }, [])
13182
13189
  );
13183
13190
  writeInfo("\u2699\uFE0F Completed generated Storm ESLint configuration objects", {
13184
13191
  logLevel: "all"
@@ -13186,5 +13193,19 @@ function getStormConfig(options = {
13186
13193
  writeDebug(result, { logLevel: "all" });
13187
13194
  return result;
13188
13195
  }
13196
+ const areFilesEqual = (files1, files2) => {
13197
+ if (files1 === files2) {
13198
+ return true;
13199
+ }
13200
+ if (files1 == null || files2 == null) {
13201
+ return false;
13202
+ }
13203
+ if (files1.length !== files2.length) {
13204
+ return false;
13205
+ }
13206
+ return files1.every(
13207
+ (file, index) => Array.isArray(file) && Array.isArray(files2?.[index]) ? areFilesEqual(file, files2?.[index]) : file === files2?.[index]
13208
+ );
13209
+ };
13189
13210
 
13190
13211
  export { getStormConfig };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storm-software/eslint",
3
- "version": "0.85.0",
3
+ "version": "0.85.1",
4
4
  "type": "module",
5
5
  "description": "⚡ A package containing the base ESLint configuration used by Storm Software across many projects.",
6
6
  "repository": {
@@ -74,6 +74,7 @@
74
74
  "@cspell/eslint-plugin": "8.13.1",
75
75
  "@graphql-eslint/eslint-plugin": "3.20.1",
76
76
  "@next/eslint-plugin-next": "14.2.4",
77
+ "defu": "6.1.4",
77
78
  "eslint-plugin-es-x": "7.6.0",
78
79
  "eslint-plugin-import": "^2.29.1",
79
80
  "eslint-plugin-json": "4.0.0",
@@ -95,7 +96,6 @@
95
96
  "eslint-plugin-yml": "1.14.0",
96
97
  "globals": "^15.8.0",
97
98
  "jsonc-eslint-parser": "2.4.0",
98
- "radash": "12.1.0",
99
99
  "synckit": "0.9.0",
100
100
  "typescript-eslint": "8.10.0",
101
101
  "ws": "8.17.1",