diff --git a/.github/workflows/build_ubi.yml b/.github/workflows/build_ubi.yml
index 921b839704..d52b09683f 100644
--- a/.github/workflows/build_ubi.yml
+++ b/.github/workflows/build_ubi.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
- node-version: 20
+ node-version: 22
# cache: "yarn"
# cache-dependency-path: "**/yarn.lock"
- name: login to ironbank
diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml
index ea7aa176f3..a49f2e3d84 100644
--- a/.github/workflows/playwright.yml
+++ b/.github/workflows/playwright.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
- node-version: 20
+ node-version: 22
# cache: "yarn"
# cache-dependency-path: "**/yarn.lock"
- name: openc3.sh build
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 03fc00a7fa..98b5a094de 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -39,7 +39,7 @@ jobs:
working-directory: openc3
- uses: actions/setup-node@v4
with:
- node-version: 20
+ node-version: 22
registry-url: "https://registry.npmjs.org"
- name: Set up Python
uses: actions/setup-python@v5
diff --git a/openc3-cosmos-init/Dockerfile b/openc3-cosmos-init/Dockerfile
index 168882fbea..330f2b82c3 100644
--- a/openc3-cosmos-init/Dockerfile
+++ b/openc3-cosmos-init/Dockerfile
@@ -36,7 +36,7 @@ COPY ./plugins/packages/openc3-cosmos-demo/*.json packages/openc3-cosmos-demo/
ARG NPM_URL=https://registry.npmjs.org
RUN yarn config set registry $NPM_URL && yarn --network-timeout 600000
-COPY ./plugins/docker-package-build.sh ./plugins/.eslintrc.cjs ./plugins/.nycrc ./
+COPY ./plugins/docker-package-build.sh ./plugins/eslint.config.mjs ./plugins/.nycrc ./
RUN chmod +x ./docker-package-build.sh
COPY ./plugins/packages/openc3-tool-base/ packages/openc3-tool-base/
RUN ["/openc3/plugins/docker-package-build.sh", "openc3-tool-base"]
diff --git a/openc3-cosmos-init/plugins/.eslintrc.cjs b/openc3-cosmos-init/plugins/.eslintrc.cjs
deleted file mode 100644
index 1550d0a714..0000000000
--- a/openc3-cosmos-init/plugins/.eslintrc.cjs
+++ /dev/null
@@ -1,42 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parserOptions: {
- parser: '@babel/eslint-parser',
- },
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/.yarn/install-state.gz b/openc3-cosmos-init/plugins/.yarn/install-state.gz
index a99ed10a54..6d8d6038ca 100644
Binary files a/openc3-cosmos-init/plugins/.yarn/install-state.gz and b/openc3-cosmos-init/plugins/.yarn/install-state.gz differ
diff --git a/openc3-cosmos-init/plugins/.yarnrc.yml b/openc3-cosmos-init/plugins/.yarnrc.yml
new file mode 100644
index 0000000000..3186f3f079
--- /dev/null
+++ b/openc3-cosmos-init/plugins/.yarnrc.yml
@@ -0,0 +1 @@
+nodeLinker: node-modules
diff --git a/openc3-cosmos-init/plugins/eslint.config.mjs b/openc3-cosmos-init/plugins/eslint.config.mjs
new file mode 100644
index 0000000000..7ba5354a51
--- /dev/null
+++ b/openc3-cosmos-init/plugins/eslint.config.mjs
@@ -0,0 +1,54 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ ecmaVersion: 5,
+ sourceType: "commonjs",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/package.json b/openc3-cosmos-init/plugins/package.json
index dd4f133b98..21cc699e80 100644
--- a/openc3-cosmos-init/plugins/package.json
+++ b/openc3-cosmos-init/plugins/package.json
@@ -3,5 +3,6 @@
"private": true,
"workspaces": [
"packages/*"
- ]
+ ],
+ "packageManager": "yarn@1.22.22"
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/.eslintrc.js b/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/.eslintrc.js
deleted file mode 100644
index 753d3b863d..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/.eslintrc.js
+++ /dev/null
@@ -1,21 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: ['plugin:prettier/recommended'],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- },
- parserOptions: {
- parser: '@babel/eslint-parser',
- },
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/eslint.config.mjs
new file mode 100644
index 0000000000..adfd651238
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/eslint.config.mjs
@@ -0,0 +1,42 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends("plugin:prettier/recommended"), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ ecmaVersion: 5,
+ sourceType: "commonjs",
+
+ parserOptions: {
+ parser: "@babel/eslint-parser",
+ },
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/package.json
index 87b8b04e54..5388f34fcf 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-ace-diff/package.json
@@ -27,7 +27,7 @@
"@webpack-cli/generators": "^3.0.7",
"babel-loader": "^9.2.1",
"babel-plugin-istanbul": "7.0.0",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"file-loader": "^6.2.0",
"prettier": "3.3.3",
"sass": "1.80.4",
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/eslint.config.mjs
new file mode 100644
index 0000000000..f5b062c816
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/eslint.config.mjs
@@ -0,0 +1,62 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 5,
+ sourceType: "commonjs",
+
+ parserOptions: {
+ parser: "@babel/eslint-parser",
+ },
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/package.json
index 9c3a9ec18b..319215d347 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/package.json
@@ -14,7 +14,7 @@
"@rushstack/eslint-patch": "1.10.4",
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/package.json
index 3feb537689..3f65928264 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-admin/package.json
@@ -20,13 +20,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/package.json
index f6b3b94e2d..417ffe7160 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-bucketexplorer/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/package.json
index 42cfdf3b58..57f7357a5d 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdsender/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/eslint.config.mjs
new file mode 100644
index 0000000000..b256144eee
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2022,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/package.json
index c49240619c..4a10fdd3d0 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-cmdtlmserver/package.json
@@ -21,13 +21,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/package.json
index 31f239113c..761b7e3444 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/package.json
@@ -21,13 +21,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/src/tools/DataExtractor/DataExtractor.vue b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/src/tools/DataExtractor/DataExtractor.vue
index 05569c93ab..dacaddff1d 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/src/tools/DataExtractor/DataExtractor.vue
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataextractor/src/tools/DataExtractor/DataExtractor.vue
@@ -727,8 +727,8 @@ export default {
} catch (e) {
return
}
- this.startDateTime = startTemp.getTime() * 1_000_000
- this.endDateTime = endTemp.getTime() * 1_000_000
+ this.startDateTime = startTemp.getTime() * 1000000 // TODO: eslint parser doesn't like 1_000_000
+ this.endDateTime = endTemp.getTime() * 1000000
},
processItems: function () {
// Check for a process in progress
@@ -757,14 +757,12 @@ export default {
return
}
// Check for a future End Time
- if (new Date(this.endDateTime / 1_000_000) > Date.now()) {
+ if (new Date(this.endDateTime / 1000000) > Date.now()) {
this.$notify.caution({
title: 'Note',
body: `End date/time is greater than current date/time. Data will
continue to stream in real-time until
- ${new Date(
- this.endDateTime / 1_000_000,
- ).toISOString()} is reached.`,
+ ${new Date(this.endDateTime / 1000000).toISOString()} is reached.`,
})
}
@@ -999,7 +997,7 @@ export default {
valueType,
reducedType,
] = regularKey.split('__')
- row[0] = new Date(packet['__time'] / 1_000_000).toISOString()
+ row[0] = new Date(packet['__time'] / 1000000).toISOString()
row[1] = targetName
row[2] = packetName
}
@@ -1048,8 +1046,8 @@ export default {
if (dataExtractorRawData.length !== 0) {
await this.createFile()
} else if (this.fileCount === 0) {
- let start = new Date(this.startDateTime / 1_000_000).toISOString()
- let end = new Date(this.endDateTime / 1_000_000).toISOString()
+ let start = new Date(this.startDateTime / 1000000).toISOString()
+ let end = new Date(this.endDateTime / 1000000).toISOString()
this.$notify.caution({
body: `No data found for the items in the requested time range of ${start} to ${end}`,
})
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/package.json
index 6c7075d7d9..407ea5e93f 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DataViewer.vue b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DataViewer.vue
index 73f2975acb..bf34e57cfa 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DataViewer.vue
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DataViewer.vue
@@ -380,8 +380,8 @@ export default {
return
}
return {
- start_time: startTemp.getTime() * 1_000_000,
- end_time: endTemp ? endTemp.getTime() * 1_000_000 : null,
+ start_time: startTemp.getTime() * 1000000,
+ end_time: endTemp ? endTemp.getTime() * 1000000 : null,
}
},
allPackets: function () {
@@ -477,7 +477,7 @@ export default {
start: function () {
this.autoStart = false
// Check for a future start time
- if (this.startEndTime.start_time > new Date().getTime() * 1_000_000) {
+ if (this.startEndTime.start_time > new Date().getTime() * 1000000) {
this.warningText = 'Start date/time is in the future!'
this.warning = true
return
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DynamicComponent.vue b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DynamicComponent.vue
index 7420a44e02..6972825168 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DynamicComponent.vue
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-dataviewer/src/tools/DataViewer/DynamicComponent.vue
@@ -53,8 +53,7 @@ export default {
},
async mounted() {
try {
- /* eslint-disable-next-line */
- this.widgetType = await System.import(/* webpackIgnore: true */ this.url)
+ this.widgetType = await System.import(this.url)
} catch (e) {
throw new Error(`Unknown widget: ${this.name}`)
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/package.json
index 090bebfb8f..abca8bf2b2 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-handbooks/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/package.json
index e0a8c4c284..11fcee69f9 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-iframe/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/package.json
index 467b45fd8f..7c361801ed 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-limitsmonitor/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/package.json
index 4c790f08a9..cc60c20135 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-packetviewer/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/package.json
index 2ecfdb68b3..633f010d47 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/package.json
@@ -24,13 +24,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue
index b3d3b60743..60447caba5 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue
@@ -1644,7 +1644,6 @@ export default {
let count = 0
for (let data of this.receivedEvents) {
count += 1
- // eslint-disable-next-line
// console.log(data) // Uncomment for debugging
let index = 0
switch (data.type) {
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/regexAnnotator.js b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/regexAnnotator.js
index 7a17d194b1..7d0de43884 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/regexAnnotator.js
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/regexAnnotator.js
@@ -21,6 +21,8 @@
*/
export default class RegexAnnotator {
+ // TODO: the eslint parser errors on these because of the #
+ // Not sure if this naming is needed for the Ace editor or something?
#id
#editor
#pattern
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/mnemonicChecker.js b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/mnemonicChecker.js
index 2680cf5327..bfaed44cb6 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/mnemonicChecker.js
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/mnemonicChecker.js
@@ -57,7 +57,7 @@ export default class MnemonicChecker {
})
}
- checkText = async function (text) {
+ async checkText(text) {
const { linesToCheck, linesToSkip } = text.split('\n').reduce(
(result, line, index) => {
line = line.trim()
@@ -140,7 +140,7 @@ export default class MnemonicChecker {
}
}
- _checkLines = async (linesToCheck) => {
+ async _checkLines(linesToCheck) {
const problemLines = []
const targetGroups = groupBy(
linesToCheck,
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/packetCompleter.js b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/packetCompleter.js
index c02e4e70f5..978cfbc33d 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/packetCompleter.js
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/packetCompleter.js
@@ -49,7 +49,7 @@ export default class PacketCompleter {
})
}
- getCompletions = function (editor, session, position, prefix, callback) {
+ getCompletions(_editor, session, position, _prefix, callback) {
let matches = []
const lineBeforeCursor = session.doc.$lines[position.row].slice(
0,
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/tlmCompleter.js b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/tlmCompleter.js
index af6b7b0d6a..580f86b9a9 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/tlmCompleter.js
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/tlmCompleter.js
@@ -54,7 +54,7 @@ export default class TlmCompleter extends PacketCompleter {
}
// Override the parent's getCompletions to take advantage of the grouping by packet done in the constructor
- getCompletions = function (editor, session, position, prefix, callback) {
+ getCompletions(_editor, session, position, _prefix, callback) {
let matches = []
const lineBeforeCursor = session.doc.$lines[position.row].slice(
0,
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/package.json
index 17de752ca7..687203d741 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tablemanager/package.json
@@ -22,13 +22,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/package.json
index d64b9c97c2..c478c31d11 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmgrapher/package.json
@@ -24,13 +24,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/.eslintrc.cjs
deleted file mode 100644
index 3e278f14fe..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/.eslintrc.cjs
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/multi-word-component-names': 'off',
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- parser: 'vue-eslint-parser',
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/eslint.config.mjs
new file mode 100644
index 0000000000..f099ec3f9e
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/eslint.config.mjs
@@ -0,0 +1,58 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2020,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/multi-word-component-names": "off",
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/package.json b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/package.json
index baa8c9b05f..16e9f4457a 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-cosmos-tool-tlmviewer/package.json
@@ -25,13 +25,14 @@
"@vitejs/plugin-vue": "5.1.5",
"@vue/eslint-config-prettier": "9.0.0",
"@vue/test-utils": "2.4.6",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.30.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-tool-base/.eslintrc.cjs b/openc3-cosmos-init/plugins/packages/openc3-tool-base/.eslintrc.cjs
deleted file mode 100644
index 9548a63cec..0000000000
--- a/openc3-cosmos-init/plugins/packages/openc3-tool-base/.eslintrc.cjs
+++ /dev/null
@@ -1,39 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true,
- },
- extends: [
- 'plugin:vue/vue3-essential',
- 'plugin:prettier/recommended',
- '@vue/prettier',
- ],
- plugins: ['prettier'],
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
- 'prettier/prettier': [
- 'warn',
- {
- endOfLine: 'auto',
- },
- ],
- 'vue/valid-v-slot': [
- 'error',
- {
- allowModifiers: true,
- },
- ],
- },
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)',
- ],
- env: {
- jest: true,
- },
- },
- ],
-}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-tool-base/.prettierrc.js b/openc3-cosmos-init/plugins/packages/openc3-tool-base/.prettierrc.cjs
similarity index 100%
rename from openc3-cosmos-init/plugins/packages/openc3-tool-base/.prettierrc.js
rename to openc3-cosmos-init/plugins/packages/openc3-tool-base/.prettierrc.cjs
diff --git a/openc3-cosmos-init/plugins/packages/openc3-tool-base/eslint.config.mjs b/openc3-cosmos-init/plugins/packages/openc3-tool-base/eslint.config.mjs
new file mode 100644
index 0000000000..c3b2f3b2d5
--- /dev/null
+++ b/openc3-cosmos-init/plugins/packages/openc3-tool-base/eslint.config.mjs
@@ -0,0 +1,56 @@
+import prettier from "eslint-plugin-prettier";
+import globals from "globals";
+import parser from "vue-eslint-parser";
+import path from "node:path";
+import { fileURLToPath } from "node:url";
+import js from "@eslint/js";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+ recommendedConfig: js.configs.recommended,
+ allConfig: js.configs.all
+});
+
+export default [...compat.extends(
+ "plugin:vue/vue3-essential",
+ "plugin:prettier/recommended",
+ "@vue/prettier",
+), {
+ plugins: {
+ prettier,
+ },
+
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+
+ parser: parser,
+ ecmaVersion: 2022,
+ sourceType: "module",
+ },
+
+ rules: {
+ "no-console": "error",
+ "no-debugger": "error",
+
+ "prettier/prettier": ["warn", {
+ endOfLine: "auto",
+ }],
+
+ "vue/valid-v-slot": ["error", {
+ allowModifiers: true,
+ }],
+ },
+}, {
+ files: ["**/__tests__/*.{j,t}s?(x)", "**/tests/unit/**/*.spec.{j,t}s?(x)"],
+
+ languageOptions: {
+ globals: {
+ ...globals.jest,
+ },
+ },
+}];
diff --git a/openc3-cosmos-init/plugins/packages/openc3-tool-base/package.json b/openc3-cosmos-init/plugins/packages/openc3-tool-base/package.json
index 1c51f82296..6d85ba0bbe 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-tool-base/package.json
+++ b/openc3-cosmos-init/plugins/packages/openc3-tool-base/package.json
@@ -5,7 +5,7 @@
"scripts": {
"dev": "vite",
"serve": "vite preview",
- "lint": "eslint src --ext js",
+ "lint": "eslint src",
"format": "prettier --write \"./**\"",
"build": "vite build"
},
@@ -23,11 +23,12 @@
"@babel/plugin-transform-modules-systemjs": "7.25.9",
"@types/systemjs": "6.15.1",
"@vitejs/plugin-vue": "5.1.5",
- "eslint": "8.56.0",
+ "eslint": "9.16.0",
"prettier": "3.3.3",
"sass": "1.80.4",
"serve": "14.2.4",
"vite": "5.4.11",
- "vue": "3.5.13"
+ "vue": "3.5.13",
+ "vue-eslint-parser": "9.4.3"
}
}
diff --git a/openc3-cosmos-init/plugins/packages/openc3-tool-base/public/index-allow-http.html b/openc3-cosmos-init/plugins/packages/openc3-tool-base/public/index-allow-http.html
index 3494baf3bd..ae480434b8 100644
--- a/openc3-cosmos-init/plugins/packages/openc3-tool-base/public/index-allow-http.html
+++ b/openc3-cosmos-init/plugins/packages/openc3-tool-base/public/index-allow-http.html
@@ -44,7 +44,7 @@
-
+
@@ -97,4 +97,4 @@