diff --git a/eslint.config.mjs b/eslint.config.mjs index f098f56d10..e859a96b52 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -94,7 +94,6 @@ export default tseslint.config( '@typescript-eslint/no-useless-constructor': 'error', 'no-var': 'error', 'no-void': ['error', { 'allowAsStatement': true }], - 'no-warning-comments': ['warn', { 'terms': ['hack', 'xxx'] }], 'one-var': ['error', 'never'], 'prefer-const': ['error', { 'destructuring': 'all' }], 'prefer-promise-reject-errors': ['warn', { 'allowEmptyReject': true }], @@ -387,7 +386,6 @@ export default tseslint.config( }, rules: { 'react/jsx-filename-extension': ['error', { 'extensions': ['.jsx', '.tsx'] }], - 'react/jsx-no-bind': 'error', 'react/jsx-no-useless-fragment': 'error', 'react/no-array-index-key': 'error', 'react-hooks/rules-of-hooks': 'error', diff --git a/package.json b/package.json index 1413cee114..c338d34b72 100644 --- a/package.json +++ b/package.json @@ -173,7 +173,6 @@ }, "engines": { "node": ">=24.0.0", - "npm": ">=11.0.0", - "yarn": "YARN NO LONGER USED - use npm instead." + "npm": ">=11.0.0" } } diff --git a/src/apps/dashboard/routes/devices/index.tsx b/src/apps/dashboard/routes/devices/index.tsx index 46f656f1ef..f1d857e763 100644 --- a/src/apps/dashboard/routes/devices/index.tsx +++ b/src/apps/dashboard/routes/devices/index.tsx @@ -221,7 +221,6 @@ export const Component = () => { > table.setEditingRow(row)} > diff --git a/src/apps/dashboard/routes/keys/index.tsx b/src/apps/dashboard/routes/keys/index.tsx index 4584e50252..fba5c4448e 100644 --- a/src/apps/dashboard/routes/keys/index.tsx +++ b/src/apps/dashboard/routes/keys/index.tsx @@ -94,7 +94,6 @@ export const Component = () => { row.original?.AccessToken && onRevokeKey(row.original.AccessToken)} > diff --git a/src/apps/dashboard/routes/plugins/index.tsx b/src/apps/dashboard/routes/plugins/index.tsx index 6f6d916855..af6d4eaa1b 100644 --- a/src/apps/dashboard/routes/plugins/index.tsx +++ b/src/apps/dashboard/routes/plugins/index.tsx @@ -183,21 +183,18 @@ export const Component = () => { > setStatus(PluginStatusOption.All)} label={globalize.translate('All')} /> setStatus(PluginStatusOption.Available)} label={globalize.translate('LabelAvailable')} /> setStatus(PluginStatusOption.Installed)} label={globalize.translate('LabelInstalled')} /> @@ -206,7 +203,6 @@ export const Component = () => { setCategory('')} label={globalize.translate('All')} /> @@ -215,7 +211,6 @@ export const Component = () => { setCategory(c.toLowerCase())} label={globalize.translate(CATEGORY_LABELS[c as PluginCategory])} /> diff --git a/src/apps/dashboard/routes/tasks/task.tsx b/src/apps/dashboard/routes/tasks/task.tsx index ecceff6d1d..ffa6deac5c 100644 --- a/src/apps/dashboard/routes/tasks/task.tsx +++ b/src/apps/dashboard/routes/tasks/task.tsx @@ -126,7 +126,6 @@ export const Component = () => { onDeleteTrigger(row.original)} > diff --git a/src/apps/modern/components/AppToolbar/RemotePlayButton.tsx b/src/apps/modern/components/AppToolbar/RemotePlayButton.tsx index 8c921e89b7..e6ca79c143 100644 --- a/src/apps/modern/components/AppToolbar/RemotePlayButton.tsx +++ b/src/apps/modern/components/AppToolbar/RemotePlayButton.tsx @@ -69,7 +69,6 @@ const RemotePlayButton = () => { aria-haspopup='true' onClick={onRemotePlayActiveButtonClick} color='inherit' - // eslint-disable-next-line react/jsx-no-bind sx={(theme) => ({ color: theme.vars.palette.primary.main })} diff --git a/src/apps/modern/components/AppToolbar/menus/RemotePlayMenu.tsx b/src/apps/modern/components/AppToolbar/menus/RemotePlayMenu.tsx index 6498ee8b88..4d872060a2 100644 --- a/src/apps/modern/components/AppToolbar/menus/RemotePlayMenu.tsx +++ b/src/apps/modern/components/AppToolbar/menus/RemotePlayMenu.tsx @@ -83,8 +83,6 @@ const RemotePlayMenu: FC = ({ {playbackTargets.map(target => ( onPlayTargetClick(target)} > diff --git a/src/apps/modern/features/libraries/components/AlphabetPicker.tsx b/src/apps/modern/features/libraries/components/AlphabetPicker.tsx index 496c8a3809..80721aaf21 100644 --- a/src/apps/modern/features/libraries/components/AlphabetPicker.tsx +++ b/src/apps/modern/features/libraries/components/AlphabetPicker.tsx @@ -31,7 +31,6 @@ const AlphabetPicker: React.FC = ({ return ( ({ position: 'fixed', top: { diff --git a/src/apps/modern/features/libraries/components/LibraryViewMenu.tsx b/src/apps/modern/features/libraries/components/LibraryViewMenu.tsx index 310f7a5c1f..e7bf4b9cc0 100644 --- a/src/apps/modern/features/libraries/components/LibraryViewMenu.tsx +++ b/src/apps/modern/features/libraries/components/LibraryViewMenu.tsx @@ -60,7 +60,6 @@ const LibraryViewMenu: FC = () => { {currentRoute?.views.map(tab => ( { searchParams.set('tab', `${tab.index}`); setSearchParams(searchParams); diff --git a/src/apps/modern/features/libraries/components/SortButton.tsx b/src/apps/modern/features/libraries/components/SortButton.tsx index a53bf3e01f..77c16981f1 100644 --- a/src/apps/modern/features/libraries/components/SortButton.tsx +++ b/src/apps/modern/features/libraries/components/SortButton.tsx @@ -237,7 +237,6 @@ const SortButton: FC = ({ .map((option) => ( onMenuItemClick(option.value)} > diff --git a/src/apps/modern/features/libraries/components/ViewSettingsButton.tsx b/src/apps/modern/features/libraries/components/ViewSettingsButton.tsx index 8eb0038b35..021ee033a6 100644 --- a/src/apps/modern/features/libraries/components/ViewSettingsButton.tsx +++ b/src/apps/modern/features/libraries/components/ViewSettingsButton.tsx @@ -177,7 +177,6 @@ const ViewSettingsButton: FC = ({ {imageTypesOptions.map((imageType) => ( setImageType(imageType.value)} > diff --git a/src/components/UserAvatar.tsx b/src/components/UserAvatar.tsx index 8dc6c09c64..a066d3dc7f 100644 --- a/src/components/UserAvatar.tsx +++ b/src/components/UserAvatar.tsx @@ -24,7 +24,6 @@ const UserAvatar: FC = ({ `${api.basePath}/Users/${user.Id}/Images/Primary?tag=${user.PrimaryImageTag}` : undefined } - // eslint-disable-next-line react/jsx-no-bind sx={(theme) => ({ bgcolor: api && user.Id && user.PrimaryImageTag ? theme.vars.palette.background.paper : diff --git a/src/components/mediainfo/StarIcons.tsx b/src/components/mediainfo/StarIcons.tsx index 922ccddae9..97d0fc36dd 100644 --- a/src/components/mediainfo/StarIcons.tsx +++ b/src/components/mediainfo/StarIcons.tsx @@ -20,7 +20,6 @@ const StarIcons: FC = ({ className, communityRating }) => { ({ color: theme.vars.palette.starIcon.main })} diff --git a/src/elements/emby-progressbar/AutoTimeProgressBar.tsx b/src/elements/emby-progressbar/AutoTimeProgressBar.tsx index efba05bd89..3d733c8a2d 100644 --- a/src/elements/emby-progressbar/AutoTimeProgressBar.tsx +++ b/src/elements/emby-progressbar/AutoTimeProgressBar.tsx @@ -66,7 +66,6 @@ const AutoTimeProgressBar: FC = ({ className={progressBarClass} variant='determinate' value={progress} - // eslint-disable-next-line react/jsx-no-bind sx={(theme) => ({ [`& .${linearProgressClasses.bar}`]: { borderRadius: 5, diff --git a/webpack.common.js b/webpack.common.js index acf1971a1e..d558b8656a 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -276,7 +276,8 @@ const config = { { loader: 'ts-loader', options: { - transpileOnly: true + transpileOnly: true, + compilerOptions: { sourceMap: DEV_MODE } } } ] @@ -287,7 +288,8 @@ const config = { use: [{ loader: 'ts-loader', options: { - transpileOnly: true + transpileOnly: true, + compilerOptions: { sourceMap: DEV_MODE } } }] },