Merge pull request #26 from utopia-os/lint-comments

fix(other): lint comments
This commit is contained in:
Ulf Gebhardt 2024-11-02 23:32:30 +01:00 committed by GitHub
commit 0e45cd487f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
25 changed files with 45 additions and 54 deletions

View File

@ -1,4 +1,3 @@
// eslint-disable-next-line no-undef
module.exports = {
env: {
browser: true,
@ -7,7 +6,7 @@ module.exports = {
extends: [
'standard',
'eslint:recommended',
// 'plugin:@eslint-community/eslint-comments/recommended',
'plugin:@eslint-community/eslint-comments/recommended',
// 'plugin:@typescript-eslint/recommended',
// 'plugin:import/recommended',
// 'plugin:import/typescript',
@ -56,9 +55,9 @@ module.exports = {
// ignores: ['+Page'],
// },
// ],
// // Optional eslint-comments rule
// '@eslint-community/eslint-comments/no-unused-disable': 'error',
// '@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }],
// Optional eslint-comments rule
'@eslint-community/eslint-comments/no-unused-disable': 'error',
'@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }],
// // import
// 'import/export': 'error',
// 'import/no-deprecated': 'error',

34
package-lock.json generated
View File

@ -30,6 +30,7 @@
"tw-elements": "^1.0.0"
},
"devDependencies": {
"@eslint-community/eslint-plugin-eslint-comments": "^4.4.1",
"@types/leaflet": "^1.7.11",
"@types/react": "^18.2.0",
"@types/react-dom": "^18.0.5",
@ -71,6 +72,39 @@
"node": ">=0.10.0"
}
},
"node_modules/@eslint-community/eslint-plugin-eslint-comments": {
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-4.4.1.tgz",
"integrity": "sha512-lb/Z/MzbTf7CaVYM9WCFNQZ4L1yi3ev2fsFPF99h31ljhSEyUoyEsKsNWiU+qD1glbYTDJdqgyaLKtyTkkqtuQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"escape-string-regexp": "^4.0.0",
"ignore": "^5.2.4"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
},
"peerDependencies": {
"eslint": "^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0"
}
},
"node_modules/@eslint-community/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/@eslint-community/eslint-utils": {
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz",

View File

@ -18,6 +18,7 @@
"author": "Anton Tranelis",
"license": "MIT",
"devDependencies": {
"@eslint-community/eslint-plugin-eslint-comments": "^4.4.1",
"@types/leaflet": "^1.7.11",
"@types/react": "^18.2.0",
"@types/react-dom": "^18.0.5",

View File

@ -1,4 +1,3 @@
// eslint-disable-next-line no-undef
module.exports = {
plugins: {
tailwindcss: {},

View File

@ -12,7 +12,6 @@ const AssetContext = createContext<UseAssetManagerResult>({
function useAssetsManager(): {
api: AssetsApi
// eslint-disable-next-line no-unused-vars
setAssetsApi: (api: AssetsApi) => void
} {
const [api, setApi] = useState<AssetsApi>({} as AssetsApi)

View File

@ -16,18 +16,13 @@ type AuthCredentials = {
type AuthContextProps = {
isAuthenticated: boolean
user: UserItem | null
// eslint-disable-next-line no-unused-vars
login: (credentials: AuthCredentials) => Promise<UserItem | undefined>
// eslint-disable-next-line no-unused-vars
register: (credentials: AuthCredentials, userName: string) => Promise<UserItem | undefined>
loading: boolean
logout: () => Promise<any>
// eslint-disable-next-line no-unused-vars
updateUser: (user: UserItem) => any
token: string | null
// eslint-disable-next-line no-unused-vars
requestPasswordReset: (email: string, reset_url: string) => Promise<any>
// eslint-disable-next-line no-unused-vars
passwordReset: (token: string, new_password: string) => Promise<any>
}
@ -111,7 +106,6 @@ export const AuthProvider = ({ userApi, children }: AuthProviderProps) => {
const updateUser = async (user: UserItem) => {
setLoading(true)
// eslint-disable-next-line no-unused-vars
const { id, ...userRest } = user
try {

View File

@ -10,7 +10,6 @@ const QuestContext = createContext<UseQuestManagerResult>({
function useQuestsManager(initialOpen: boolean): {
open: boolean
// eslint-disable-next-line no-unused-vars
setQuestsOpen: (open: boolean) => void
} {
const [open, setOpen] = useState<boolean>(initialOpen)

View File

@ -2,7 +2,6 @@ import * as React from 'react'
import { useEffect } from 'react'
import { TagView } from '../Templates/TagView'
// eslint-disable-next-line no-unused-vars
export const Autocomplete = ({
inputProps,
suggestions,

View File

@ -5,7 +5,6 @@ interface ComboBoxProps {
id?: string
options: { value: string; label: string }[]
value: string
// eslint-disable-next-line no-unused-vars
onValueChange: (newValue: string) => void
}

View File

@ -9,7 +9,7 @@ type SelectBoxProps = {
containerStyle?: string
defaultValue: string
placeholder?: string
// eslint-disable-next-line no-unused-vars
updateFormValue: (value: string) => void
options: { name: string; value: string }[]

View File

@ -11,7 +11,6 @@ type TextAreaProps = {
inputStyle?: string
defaultValue: string
placeholder?: string
// eslint-disable-next-line no-unused-vars
updateFormValue?: (value: string) => void
}

View File

@ -11,7 +11,6 @@ type InputTextProps = {
defaultValue?: string
placeholder?: string
autocomplete?: string
// eslint-disable-next-line no-unused-vars
updateFormValue?: (value: string) => void
}

View File

@ -5,9 +5,7 @@ import { Item } from '../../../../types'
type StartEndInputProps = {
item?: Item
showLabels?: boolean
// eslint-disable-next-line no-unused-vars
updateStartValue?: (value: string) => void
// eslint-disable-next-line no-unused-vars
updateEndValue?: (value: string) => void
}

View File

@ -38,18 +38,18 @@ export const TextView = ({
if (item && text) replacedText = fixUrls(text)
// eslint-disable-next-line no-useless-escape
if (replacedText) {
replacedText = replacedText.replace(/(?<!\]?\()https?:\/\/[^\s)]+(?!\))/g, (url) => {
let shortUrl = url
// eslint-disable-next-line no-useless-escape
if (url.match('^https://')) {
shortUrl = url.split('https://')[1]
}
// eslint-disable-next-line no-useless-escape
if (url.match('^http://')) {
shortUrl = url.split('http://')[1]
}
return `[${shortUrl}](${url})`
})
}

View File

@ -32,7 +32,6 @@ const FilterContext = createContext<UseFilterManagerResult>({
toggleVisibleLayer: () => {},
resetVisibleLayers: () => {},
isLayerVisible: () => true,
addVisibleGroupType: () => {},
toggleVisibleGroupType: () => {},
isGroupTypeVisible: () => true,
@ -43,25 +42,17 @@ function useFilterManager(initialTags: Tag[]): {
searchPhrase: string
visibleLayers: LayerProps[]
visibleGroupTypes: string[]
// eslint-disable-next-line no-unused-vars
addFilterTag: (tag: Tag) => void
// eslint-disable-next-line no-unused-vars
removeFilterTag: (name: string) => void
resetFilterTags: () => void
// eslint-disable-next-line no-unused-vars
setSearchPhrase: (phrase: string) => void
// eslint-disable-next-line no-unused-vars
addVisibleLayer: (layer: LayerProps) => void
// eslint-disable-next-line no-unused-vars
toggleVisibleLayer: (layer: LayerProps) => void
resetVisibleLayers: () => void
// eslint-disable-next-line no-unused-vars
isLayerVisible: (layer: LayerProps) => boolean
// eslint-disable-next-line no-unused-vars
addVisibleGroupType: (groupType: string) => void
// eslint-disable-next-line no-unused-vars
toggleVisibleGroupType: (groupType: string) => void
// eslint-disable-next-line no-unused-vars
isGroupTypeVisible: (groupType: string) => boolean
} {
const [filterTags, dispatchTags] = useReducer((state: Tag[], action: ActionType) => {

View File

@ -25,17 +25,11 @@ const ItemContext = createContext<UseItemManagerResult>({
function useItemsManager(initialItems: Item[]): {
items: Item[]
// eslint-disable-next-line no-unused-vars
addItem: (item: Item) => void
// eslint-disable-next-line no-unused-vars
updateItem: (item: Item) => void
// eslint-disable-next-line no-unused-vars
removeItem: (item: Item) => void
// eslint-disable-next-line no-unused-vars
resetItems: (layer: LayerProps) => void
// eslint-disable-next-line no-unused-vars
setItemsApi: (layer: LayerProps) => void
// eslint-disable-next-line no-unused-vars
setItemsData: (layer: LayerProps) => void
allItemsLoaded: boolean
} {

View File

@ -13,7 +13,6 @@ const LayerContext = createContext<UseItemManagerResult>({
function useLayerManager(initialLayers: LayerProps[]): {
layers: LayerProps[]
// eslint-disable-next-line no-unused-vars
addLayer: (layer: LayerProps) => void
} {
const [layers, dispatch] = useReducer((state: LayerProps[], action: ActionType) => {

View File

@ -23,9 +23,7 @@ const LeafletRefsContext = createContext<UseLeafletRefsManagerResult>({
function useLeafletRefsManager(initialLeafletRefs: {}): {
leafletRefs: Record<string, LeafletRef>
// eslint-disable-next-line no-unused-vars
addMarker: (item: Item, marker: Marker) => void
// eslint-disable-next-line no-unused-vars
addPopup: (item: Item, popup: Popup) => void
} {
const [leafletRefs, dispatch] = useReducer(

View File

@ -17,13 +17,9 @@ const PermissionContext = createContext<UsePermissionManagerResult>({
function usePermissionsManager(initialPermissions: Permission[]): {
permissions: Permission[]
// eslint-disable-next-line no-unused-vars
setPermissionApi: (api: ItemsApi<any>) => void
// eslint-disable-next-line no-unused-vars
setPermissionData: (data: Permission[]) => void
// eslint-disable-next-line no-unused-vars
setAdminRole: (adminRole: string) => void
// eslint-disable-next-line no-unused-vars
hasUserPermission: (
collectionName: string,
action: PermissionAction,

View File

@ -1,4 +1,3 @@
/* eslint-disable no-unused-vars */
import { useCallback, useReducer, createContext, useContext, useState } from 'react'
import * as React from 'react'
import { Item, ItemsApi, Tag } from '../../../types'

View File

@ -8,7 +8,6 @@ import { TagsWidget } from '../Subcomponents/TagsWidget'
import { useNavigate } from 'react-router-dom'
import { useUpdateItem } from '../../Map/hooks/useItems'
// eslint-disable-next-line react/prop-types
export const TabsForm = ({
item,
state,

View File

@ -10,7 +10,6 @@ import { useItems } from '../../Map/hooks/useItems'
import { useAssetApi } from '../../AppShell/hooks/useAssets'
import { timeAgo } from '../../../Utils/TimeAgo'
// eslint-disable-next-line no-unused-vars
export const TabsView = ({
attestations,
userType,

View File

@ -6,7 +6,7 @@ export const mailRegex = /([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)/gi
export function fixUrls(message: string): string {
message = message.replace(urlRegex, function (url) {
let hyperlink = url.replace(' ', '')
// eslint-disable-next-line no-useless-escape
if (!hyperlink.match('^https?://')) {
hyperlink = 'https://' + hyperlink
}

View File

@ -1,5 +1,3 @@
/* eslint-disable no-unused-vars */
import * as React from 'react'
import { ItemFormPopupProps } from './Components/Map/Subcomponents/ItemFormPopup'

View File

@ -1,4 +1,3 @@
/* eslint-disable no-undef */
/** @type {import('tailwindcss').Config} */
module.exports = {
content: ['./src/**/*.{js,jsx,ts,tsx}', './node_modules/tw-elements/dist/js/**/*.js'],