Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 0 additions & 79 deletions .eslintrc.js

This file was deleted.

111 changes: 111 additions & 0 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
const {
defineConfig,
} = require("eslint/config");

const globals = require("globals");
const security = require("eslint-plugin-security");
const cypress = require("eslint-plugin-cypress");
const typescriptEslint = require("@typescript-eslint/eslint-plugin");
const tsParser = require("@typescript-eslint/parser");
const js = require("@eslint/js");

const {
FlatCompat,
} = require("@eslint/eslintrc");

const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all
});

module.exports = defineConfig([{
languageOptions: {
globals: {
...globals.browser,
...globals.amd,
...globals.jquery,
...cypress.environments.globals.globals,
},
},

plugins: {
security,
cypress,
"@typescript-eslint": typescriptEslint,
},

extends: compat.extends(
"eslint:recommended",
"plugin:security/recommended-legacy",
"plugin:react/recommended",
),

"rules": {
"indent": ["error", 4],
"linebreak-style": ["error", "unix"],

"no-unused-vars": ["error", {
"vars": "all",
"args": "none",
}],

"quotes": ["error", "single"],
"semi": ["error", "always"],

"max-len": [2, {
"code": 80,
"tabWidth": 4,
"ignoreUrls": true,
}],

"space-before-function-paren": ["error", "never"],
"space-in-parens": ["error", "never"],
"no-trailing-spaces": ["error"],

"key-spacing": ["error", {
"beforeColon": false,
}],

"func-call-spacing": ["error", "never"],
"react/prop-types": [0],
"security/detect-buffer-noassert": 1,
"security/detect-child-process": 1,
"security/detect-disable-mustache-escape": 1,
"security/detect-eval-with-expression": 1,
"security/detect-new-buffer": 1,
"security/detect-no-csrf-before-method-override": 1,
"security/detect-non-literal-fs-filename": 1,
"security/detect-non-literal-regexp": 1,
"security/detect-non-literal-require": 0,
"security/detect-object-injection": 0,
"security/detect-possible-timing-attacks": 1,
"security/detect-pseudoRandomBytes": 1,
"security/detect-unsafe-regex": 1,
},
}, {
files: ["**/*.{ts,tsx}"],

"rules": {
"max-len": [2, {
"code": 100,
"tabWidth": 4,
"ignoreUrls": true,
}],
},

languageOptions: {
parser: tsParser,

parserOptions: {
tsconfigRootDir: __dirname,
project: ["./tsconfig.json"],
},
},

extends: compat.extends(
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking",
),
}]);
17 changes: 10 additions & 7 deletions media/src/activity.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
import React from 'react';
import ReactDOM from 'react-dom';
import { createRoot } from 'react-dom/client';
import { ActivityMap } from './activity/activity-map';

ReactDOM.render(
<React.StrictMode>
<ActivityMap />
</React.StrictMode>,
document.getElementById('activity-map-container')
);
const container = document.getElementById('activity-map-container');
if (container) {
const root = createRoot(container);
root.render(
<React.StrictMode>
<ActivityMap />
</React.StrictMode>
);
}
1 change: 0 additions & 1 deletion media/src/activity/activity-map-pane-panels.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,6 @@ export const DefaultPanel: React.FC<DefaultPanelProps> = (
// const [reflectionSubmittedAt, setReflectionSubmittedAt] = useState<string>('');
const [reflectionModifiedAt, setReflectionModifiedAt] = useState<string>('');
// TODO: display response status
// eslint-disable-next-line @typescript-eslint/no-unused-vars
const [reflectionStatus, setReflectionStatus] = useState<string>('DRAFT');
const [feedback, setFeedback] = useState<string>('');
const [feedbackSubmittedDate, setFeedbackSubmittedDate] = useState<string>('');
Expand Down
4 changes: 0 additions & 4 deletions media/src/activity/activity-map.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -378,15 +378,13 @@ export const ActivityMap: React.FC = () => {
}
let layerPk = activeLayer;
if (isFaculty && !projectLayerData.has(layerPk)) {
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
const firstLayerPk = projectLayerData.keys().next().value;
if (typeof firstLayerPk == 'number') {
layerPk = firstLayerPk;
} else {
throw new Error('Add Event failed: no active layer can be found');
}
} else if (!isFaculty && !layerData.has(layerPk)) {
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
const firstLayerPk = layerData.keys().next().value;
if (typeof firstLayerPk == 'number') {
layerPk = firstLayerPk;
Expand Down Expand Up @@ -686,7 +684,6 @@ export const ActivityMap: React.FC = () => {
}));
}
const handleViewportChange = useCallback(
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
(newViewport: React.SetStateAction<ViewportState>) => setViewportState(newViewport),
[]
);
Expand All @@ -710,7 +707,6 @@ export const ActivityMap: React.FC = () => {
// if no date with events, we don't include the layer.

let layersForZoom: LayerData[] = [];
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
const rangeEpoch1 = Date.parse(range1);
const rangeEpoch2 = Date.parse(range2);
const filteredLayers: Map<number, LayerData> = new Map();
Expand Down
17 changes: 10 additions & 7 deletions media/src/project.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
import React from 'react';
import ReactDOM from 'react-dom';
import { createRoot } from 'react-dom/client';
import { ProjectMap } from './project/project-map';

ReactDOM.render(
<React.StrictMode>
<ProjectMap />
</React.StrictMode>,
document.getElementById('project-map-container')
);
const container = document.getElementById('project-map-container');
if (container) {
const root = createRoot(container);
root.render(
<React.StrictMode>
<ProjectMap />
</React.StrictMode>
);
}
3 changes: 1 addition & 2 deletions media/src/project/project-map.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,6 @@ export const ProjectMap: React.FC = () => {
}

const handleViewportChange = useCallback(
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
(newViewport: React.SetStateAction<ViewportState>) => setViewportState(newViewport),
[]
);
Expand Down Expand Up @@ -570,7 +569,7 @@ export const ProjectMap: React.FC = () => {
/>
<DeckGL
layers={[
...rasterLayers as any, // eslint-disable-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, max-len
...rasterLayers as any, // eslint-disable-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, max-len
...mapLayers
]}
viewState={viewportState}
Expand Down
Loading
Loading