diff --git a/src/apps/dashboard/controllers/library.js b/src/apps/dashboard/controllers/library.js index f174e86ff..53efa7364 100644 --- a/src/apps/dashboard/controllers/library.js +++ b/src/apps/dashboard/controllers/library.js @@ -3,7 +3,7 @@ import escapeHtml from 'escape-html'; import taskButton from 'scripts/taskbutton'; import loading from 'components/loading/loading'; import globalize from 'lib/globalize'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import imageHelper from 'utils/image'; import 'components/cardbuilder/card.scss'; import 'elements/emby-itemrefreshindicator/emby-itemrefreshindicator'; diff --git a/src/apps/dashboard/controllers/livetvstatus.js b/src/apps/dashboard/controllers/livetvstatus.js index 8220a3018..742d02a90 100644 --- a/src/apps/dashboard/controllers/livetvstatus.js +++ b/src/apps/dashboard/controllers/livetvstatus.js @@ -2,7 +2,7 @@ import 'jquery'; import globalize from 'lib/globalize'; import taskButton from 'scripts/taskbutton'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import layoutManager from 'components/layoutManager'; import loading from 'components/loading/loading'; import browser from 'scripts/browser'; diff --git a/src/apps/dashboard/controllers/livetvtuner.js b/src/apps/dashboard/controllers/livetvtuner.js index 9f37211fc..c9bafdc01 100644 --- a/src/apps/dashboard/controllers/livetvtuner.js +++ b/src/apps/dashboard/controllers/livetvtuner.js @@ -1,6 +1,6 @@ import globalize from 'lib/globalize'; import loading from 'components/loading/loading'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import 'elements/emby-input/emby-input'; import 'elements/emby-button/emby-button'; import 'elements/emby-checkbox/emby-checkbox'; diff --git a/src/apps/dashboard/features/sessions/utils/getNowPlayingImageUrl.ts b/src/apps/dashboard/features/sessions/utils/getNowPlayingImageUrl.ts index 6efbea32b..3ca7ef9a2 100644 --- a/src/apps/dashboard/features/sessions/utils/getNowPlayingImageUrl.ts +++ b/src/apps/dashboard/features/sessions/utils/getNowPlayingImageUrl.ts @@ -1,7 +1,7 @@ import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client/models/base-item-dto'; import { ImageType } from '@jellyfin/sdk/lib/generated-client/models/image-type'; import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; const getNowPlayingImageUrl = (item: BaseItemDto) => { if (!item.ServerId) return null; diff --git a/src/apps/dashboard/routes/users/index.tsx b/src/apps/dashboard/routes/users/index.tsx index e0b3f4d5d..3440264aa 100644 --- a/src/apps/dashboard/routes/users/index.tsx +++ b/src/apps/dashboard/routes/users/index.tsx @@ -4,7 +4,7 @@ import React, { useEffect, useState, useRef } from 'react'; import Dashboard from '../../../../utils/dashboard'; import globalize from '../../../../lib/globalize'; import loading from '../../../../components/loading/loading'; -import dom from '../../../../scripts/dom'; +import dom from '../../../../utils/dom'; import confirm from '../../../../components/confirm/confirm'; import UserCardBox from '../../../../components/dashboard/users/UserCardBox'; import SectionTitleContainer from '../../../../elements/SectionTitleContainer'; diff --git a/src/apps/wizard/controllers/library.js b/src/apps/wizard/controllers/library.js index dfa0f17e4..a6a7bd471 100644 --- a/src/apps/wizard/controllers/library.js +++ b/src/apps/wizard/controllers/library.js @@ -5,7 +5,7 @@ import confirm from 'components/confirm/confirm'; import loading from 'components/loading/loading'; import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import taskButton from 'scripts/taskbutton'; import Dashboard, { pageClassOn, pageIdOn } from 'utils/dashboard'; import imageHelper from 'utils/image'; diff --git a/src/apps/wizard/controllers/start/index.js b/src/apps/wizard/controllers/start/index.js index 9081a6c52..8d9b6ccc5 100644 --- a/src/apps/wizard/controllers/start/index.js +++ b/src/apps/wizard/controllers/start/index.js @@ -1,7 +1,7 @@ import loading from 'components/loading/loading'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import Dashboard from 'utils/dashboard'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import 'elements/emby-button/emby-button'; import 'elements/emby-select/emby-select'; diff --git a/src/components/actionSheet/actionSheet.ts b/src/components/actionSheet/actionSheet.ts index 54bf0804d..7e766f441 100644 --- a/src/components/actionSheet/actionSheet.ts +++ b/src/components/actionSheet/actionSheet.ts @@ -2,7 +2,7 @@ import escapeHtml from 'escape-html'; import dialogHelper from '../dialogHelper/dialogHelper'; import layoutManager from '../layoutManager'; import globalize from '../../lib/globalize'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import '../../elements/emby-button/emby-button'; import './actionSheet.scss'; import 'material-design-icons-iconfont'; diff --git a/src/components/alphaPicker/alphaPicker.js b/src/components/alphaPicker/alphaPicker.js index f787f0e6d..795309ac3 100644 --- a/src/components/alphaPicker/alphaPicker.js +++ b/src/components/alphaPicker/alphaPicker.js @@ -5,7 +5,7 @@ import focusManager from '../focusManager'; import layoutManager from '../layoutManager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import globalize from '../../lib/globalize'; import './style.scss'; import '../../elements/emby-button/paper-icon-button-light'; diff --git a/src/components/backdrop/backdrop.js b/src/components/backdrop/backdrop.js index cc7346d5f..322281591 100644 --- a/src/components/backdrop/backdrop.js +++ b/src/components/backdrop/backdrop.js @@ -2,7 +2,7 @@ import isEqual from 'lodash-es/isEqual'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import browser from '../../scripts/browser'; import { playbackManager } from '../playback/playbackmanager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import * as userSettings from '../../scripts/settings/userSettings'; import './backdrop.scss'; diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index ce408991f..60e8ffa6f 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -10,7 +10,7 @@ import escapeHtml from 'escape-html'; import browser from 'scripts/browser'; import datetime from 'scripts/datetime'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import { getBackdropShape, getPortraitShape, getSquareShape } from 'utils/card'; diff --git a/src/components/channelMapper/channelMapper.js b/src/components/channelMapper/channelMapper.js index 91caf81c9..bf66b73d5 100644 --- a/src/components/channelMapper/channelMapper.js +++ b/src/components/channelMapper/channelMapper.js @@ -1,5 +1,5 @@ import escapeHtml from 'escape-html'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import dialogHelper from '../dialogHelper/dialogHelper'; import loading from '../loading/loading'; import globalize from '../../lib/globalize'; diff --git a/src/components/collectionEditor/collectionEditor.js b/src/components/collectionEditor/collectionEditor.js index a8981f2b3..d8ff08770 100644 --- a/src/components/collectionEditor/collectionEditor.js +++ b/src/components/collectionEditor/collectionEditor.js @@ -1,5 +1,5 @@ import escapeHtml from 'escape-html'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import dialogHelper from '../dialogHelper/dialogHelper'; import loading from '../loading/loading'; import layoutManager from '../layoutManager'; diff --git a/src/components/dialog/dialog.js b/src/components/dialog/dialog.js index 48d6842a4..3c4d9e7f2 100644 --- a/src/components/dialog/dialog.js +++ b/src/components/dialog/dialog.js @@ -1,7 +1,7 @@ import DOMPurify from 'dompurify'; import escapeHtml from 'escape-html'; import dialogHelper from '../dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import layoutManager from '../layoutManager'; import scrollHelper from '../../scripts/scrollHelper'; import globalize from '../../lib/globalize'; diff --git a/src/components/dialogHelper/dialogHelper.js b/src/components/dialogHelper/dialogHelper.js index e8cc85609..6af96802f 100644 --- a/src/components/dialogHelper/dialogHelper.js +++ b/src/components/dialogHelper/dialogHelper.js @@ -4,7 +4,7 @@ import layoutManager from '../layoutManager'; import inputManager from '../../scripts/inputManager'; import { toBoolean } from '../../utils/string.ts'; import { hide } from '../loading/loading.ts'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import { history } from 'RootAppRouter'; diff --git a/src/components/directorybrowser/directorybrowser.js b/src/components/directorybrowser/directorybrowser.js index 133c66380..20db8685f 100644 --- a/src/components/directorybrowser/directorybrowser.js +++ b/src/components/directorybrowser/directorybrowser.js @@ -1,7 +1,7 @@ import escapeHtml from 'escape-html'; import loading from '../loading/loading'; import dialogHelper from '../dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import globalize from '../../lib/globalize'; import '../listview/listview.scss'; import '../../elements/emby-input/emby-input'; diff --git a/src/components/favoriteitems.js b/src/components/favoriteitems.js index 247dbcff0..3f31d95ff 100644 --- a/src/components/favoriteitems.js +++ b/src/components/favoriteitems.js @@ -1,4 +1,4 @@ -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import { getBackdropShape, getPortraitShape, getSquareShape } from 'utils/card'; import { getParameterByName } from 'utils/url'; diff --git a/src/components/filterdialog/filterdialog.js b/src/components/filterdialog/filterdialog.js index 1e192372f..208e3d431 100644 --- a/src/components/filterdialog/filterdialog.js +++ b/src/components/filterdialog/filterdialog.js @@ -1,4 +1,4 @@ -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import dialogHelper from '../dialogHelper/dialogHelper'; import globalize from '../../lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; diff --git a/src/components/filtermenu/filtermenu.js b/src/components/filtermenu/filtermenu.js index a77e7d110..ebd3b1551 100644 --- a/src/components/filtermenu/filtermenu.js +++ b/src/components/filtermenu/filtermenu.js @@ -1,5 +1,5 @@ import escapeHtml from 'escape-html'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import focusManager from '../focusManager'; import dialogHelper from '../dialogHelper/dialogHelper'; import inputManager from '../../scripts/inputManager'; diff --git a/src/components/focusManager.js b/src/components/focusManager.js index dc58fcc58..22252af4c 100644 --- a/src/components/focusManager.js +++ b/src/components/focusManager.js @@ -1,4 +1,4 @@ -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import scrollManager from './scrollManager'; const scopes = []; diff --git a/src/components/groupedcards.js b/src/components/groupedcards.js index 1756280ed..dfec24235 100644 --- a/src/components/groupedcards.js +++ b/src/components/groupedcards.js @@ -1,5 +1,5 @@ import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import { appRouter } from './router/appRouter'; import Dashboard from '../utils/dashboard'; diff --git a/src/components/guide/guide.js b/src/components/guide/guide.js index 20795ea2d..c96e2df4c 100644 --- a/src/components/guide/guide.js +++ b/src/components/guide/guide.js @@ -14,7 +14,7 @@ import * as userSettings from '../../scripts/settings/userSettings'; import imageLoader from '../images/imageLoader'; import layoutManager from '../layoutManager'; import itemShortcuts from '../shortcuts'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import './guide.scss'; import './programs.scss'; import 'material-design-icons-iconfont'; diff --git a/src/components/homeScreenSettings/homeScreenSettings.js b/src/components/homeScreenSettings/homeScreenSettings.js index d330c8f22..c433f8034 100644 --- a/src/components/homeScreenSettings/homeScreenSettings.js +++ b/src/components/homeScreenSettings/homeScreenSettings.js @@ -12,7 +12,7 @@ import globalize from '../../lib/globalize'; import loading from '../loading/loading'; import Events from '../../utils/events.ts'; import homeSections from '../homesections/homesections'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import '../listview/listview.scss'; import '../../elements/emby-select/emby-select'; import '../../elements/emby-checkbox/emby-checkbox'; diff --git a/src/components/imageDownloader/imageDownloader.js b/src/components/imageDownloader/imageDownloader.js index 77d9f1706..7dd965fe9 100644 --- a/src/components/imageDownloader/imageDownloader.js +++ b/src/components/imageDownloader/imageDownloader.js @@ -1,5 +1,5 @@ import { AppFeature } from 'constants/appFeature'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import loading from '../loading/loading'; import { appHost } from '../apphost'; import dialogHelper from '../dialogHelper/dialogHelper'; diff --git a/src/components/imageOptionsEditor/imageOptionsEditor.js b/src/components/imageOptionsEditor/imageOptionsEditor.js index 09eeacefe..b80b7a8dd 100644 --- a/src/components/imageOptionsEditor/imageOptionsEditor.js +++ b/src/components/imageOptionsEditor/imageOptionsEditor.js @@ -5,7 +5,7 @@ */ import globalize from '../../lib/globalize'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import dialogHelper from '../dialogHelper/dialogHelper'; import '../../elements/emby-checkbox/emby-checkbox'; import '../../elements/emby-select/emby-select'; diff --git a/src/components/imageUploader/imageUploader.js b/src/components/imageUploader/imageUploader.js index 1f26dbff3..ed303d4fd 100644 --- a/src/components/imageUploader/imageUploader.js +++ b/src/components/imageUploader/imageUploader.js @@ -5,7 +5,7 @@ */ import dialogHelper from '../dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import loading from '../loading/loading'; import scrollHelper from '../../scripts/scrollHelper'; import layoutManager from '../layoutManager'; diff --git a/src/components/imageeditor/imageeditor.js b/src/components/imageeditor/imageeditor.js index 28716bfa3..6fa6d03d0 100644 --- a/src/components/imageeditor/imageeditor.js +++ b/src/components/imageeditor/imageeditor.js @@ -1,7 +1,7 @@ import { AppFeature } from 'constants/appFeature'; import dialogHelper from '../dialogHelper/dialogHelper'; import loading from '../loading/loading'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import layoutManager from '../layoutManager'; import focusManager from '../focusManager'; import globalize from '../../lib/globalize'; diff --git a/src/components/itemContextMenu.js b/src/components/itemContextMenu.js index 172e77e5e..87655c718 100644 --- a/src/components/itemContextMenu.js +++ b/src/components/itemContextMenu.js @@ -1,6 +1,6 @@ import browser from '../scripts/browser'; import { copy } from '../scripts/clipboard'; -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import globalize from '../lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import actionsheet from './actionSheet/actionSheet'; diff --git a/src/components/itemMediaInfo/itemMediaInfo.js b/src/components/itemMediaInfo/itemMediaInfo.js index 7ebe7464a..5cc6bf4fd 100644 --- a/src/components/itemMediaInfo/itemMediaInfo.js +++ b/src/components/itemMediaInfo/itemMediaInfo.js @@ -14,7 +14,7 @@ import toast from 'components/toast/toast'; import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import { copy } from 'scripts/clipboard'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import { getReadableSize } from 'utils/file'; import 'components/formdialog.scss'; diff --git a/src/components/libraryoptionseditor/libraryoptionseditor.js b/src/components/libraryoptionseditor/libraryoptionseditor.js index 67c8e3a01..e364a957b 100644 --- a/src/components/libraryoptionseditor/libraryoptionseditor.js +++ b/src/components/libraryoptionseditor/libraryoptionseditor.js @@ -8,7 +8,7 @@ import { CollectionType } from '@jellyfin/sdk/lib/generated-client/models/collec import escapeHtml from 'escape-html'; import globalize from '../../lib/globalize'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import '../../elements/emby-checkbox/emby-checkbox'; import '../../elements/emby-select/emby-select'; import '../../elements/emby-input/emby-input'; diff --git a/src/components/lyricseditor/lyricseditor.js b/src/components/lyricseditor/lyricseditor.js index bb393ea48..45010e356 100644 --- a/src/components/lyricseditor/lyricseditor.js +++ b/src/components/lyricseditor/lyricseditor.js @@ -8,7 +8,7 @@ import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import loading from '../loading/loading'; import focusManager from '../focusManager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import '../../elements/emby-select/emby-select'; import '../listview/listview.scss'; import '../../elements/emby-button/paper-icon-button-light'; diff --git a/src/components/lyricsuploader/lyricsuploader.js b/src/components/lyricsuploader/lyricsuploader.js index 6755e4fc0..895d7e556 100644 --- a/src/components/lyricsuploader/lyricsuploader.js +++ b/src/components/lyricsuploader/lyricsuploader.js @@ -3,7 +3,7 @@ import escapeHtml from 'escape-html'; import { getLyricsApi } from '@jellyfin/sdk/lib/utils/api/lyrics-api'; import { toApi } from 'utils/jellyfin-apiclient/compat'; import dialogHelper from '../../components/dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import loading from '../../components/loading/loading'; import scrollHelper from '../../scripts/scrollHelper'; import layoutManager from '../layoutManager'; diff --git a/src/components/maintabsmanager.js b/src/components/maintabsmanager.js index 57cb31f75..84e48b34b 100644 --- a/src/components/maintabsmanager.js +++ b/src/components/maintabsmanager.js @@ -1,4 +1,4 @@ -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import browser from '../scripts/browser'; import Events from '../utils/events.ts'; import '../elements/emby-tabs/emby-tabs'; diff --git a/src/components/mediaLibraryCreator/mediaLibraryCreator.js b/src/components/mediaLibraryCreator/mediaLibraryCreator.js index 81e957e34..d3369553a 100644 --- a/src/components/mediaLibraryCreator/mediaLibraryCreator.js +++ b/src/components/mediaLibraryCreator/mediaLibraryCreator.js @@ -7,7 +7,7 @@ import escapeHtml from 'escape-html'; import loading from '../loading/loading'; import dialogHelper from '../dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import libraryoptionseditor from '../libraryoptionseditor/libraryoptionseditor'; import globalize from '../../lib/globalize'; import '../../elements/emby-button/emby-button'; diff --git a/src/components/mediaLibraryEditor/mediaLibraryEditor.js b/src/components/mediaLibraryEditor/mediaLibraryEditor.js index 7acf94a81..c423e9fe7 100644 --- a/src/components/mediaLibraryEditor/mediaLibraryEditor.js +++ b/src/components/mediaLibraryEditor/mediaLibraryEditor.js @@ -8,7 +8,7 @@ import escapeHtml from 'escape-html'; import 'jquery'; import loading from '../loading/loading'; import dialogHelper from '../dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import libraryoptionseditor from '../libraryoptionseditor/libraryoptionseditor'; import globalize from '../../lib/globalize'; import '../../elements/emby-button/emby-button'; diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js index 6dc155a84..7f84d1410 100644 --- a/src/components/metadataEditor/metadataEditor.js +++ b/src/components/metadataEditor/metadataEditor.js @@ -1,5 +1,5 @@ import escapeHtml from 'escape-html'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import layoutManager from '../layoutManager'; import dialogHelper from '../dialogHelper/dialogHelper'; import datetime from '../../scripts/datetime'; diff --git a/src/components/multiSelect/multiSelect.js b/src/components/multiSelect/multiSelect.js index d6ad634cf..33cb1b7a5 100644 --- a/src/components/multiSelect/multiSelect.js +++ b/src/components/multiSelect/multiSelect.js @@ -4,7 +4,7 @@ import { appHost } from '../apphost'; import loading from '../loading/loading'; import globalize from '../../lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import './multiSelect.scss'; import alert from '../alert'; import confirm from '../confirm/confirm'; diff --git a/src/components/nowPlayingBar/nowPlayingBar.js b/src/components/nowPlayingBar/nowPlayingBar.js index 9dd5d0952..c860760a3 100644 --- a/src/components/nowPlayingBar/nowPlayingBar.js +++ b/src/components/nowPlayingBar/nowPlayingBar.js @@ -11,7 +11,7 @@ import imageLoader from '../images/imageLoader'; import layoutManager from '../layoutManager'; import { playbackManager } from '../playback/playbackmanager'; import { appHost } from '../apphost'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import globalize from 'lib/globalize'; import itemContextMenu from '../itemContextMenu'; import '../../elements/emby-button/paper-icon-button-light'; diff --git a/src/components/playback/brightnessosd.js b/src/components/playback/brightnessosd.js index 37822a0fe..b1357fd01 100644 --- a/src/components/playback/brightnessosd.js +++ b/src/components/playback/brightnessosd.js @@ -1,5 +1,5 @@ import { playbackManager } from './playbackmanager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import browser from '../../scripts/browser'; import Events from '../../utils/events.ts'; diff --git a/src/components/playback/skipsegment.ts b/src/components/playback/skipsegment.ts index 83b565047..3cbfa0c11 100644 --- a/src/components/playback/skipsegment.ts +++ b/src/components/playback/skipsegment.ts @@ -6,7 +6,7 @@ import { isInSegment } from 'apps/stable/features/playback/utils/mediaSegments'; import Events, { type Event } from 'utils/events'; import { EventType } from 'types/eventType'; import './skipbutton.scss'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import * as userSettings from 'scripts/settings/userSettings'; import focusManager from 'components/focusManager'; diff --git a/src/components/playback/volumeosd.js b/src/components/playback/volumeosd.js index aec36c0f4..c97995461 100644 --- a/src/components/playback/volumeosd.js +++ b/src/components/playback/volumeosd.js @@ -1,6 +1,6 @@ import { playbackManager } from './playbackmanager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import browser from '../../scripts/browser'; import Events from '../../utils/events.ts'; diff --git a/src/components/playlisteditor/playlisteditor.ts b/src/components/playlisteditor/playlisteditor.ts index c9d9ac5af..ff5c83a4b 100644 --- a/src/components/playlisteditor/playlisteditor.ts +++ b/src/components/playlisteditor/playlisteditor.ts @@ -6,7 +6,7 @@ import { getUserLibraryApi } from '@jellyfin/sdk/lib/utils/api/user-library-api' import escapeHtml from 'escape-html'; import toast from 'components/toast/toast'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import { currentSettings as userSettings } from 'scripts/settings/userSettings'; diff --git a/src/components/prompt/prompt.js b/src/components/prompt/prompt.js index 0812b7610..64295f722 100644 --- a/src/components/prompt/prompt.js +++ b/src/components/prompt/prompt.js @@ -3,7 +3,7 @@ import dialogHelper from '../dialogHelper/dialogHelper'; import layoutManager from '../layoutManager'; import scrollHelper from '../../scripts/scrollHelper'; import globalize from '../../lib/globalize'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import 'material-design-icons-iconfont'; import '../../elements/emby-button/emby-button'; import '../../elements/emby-button/paper-icon-button-light'; diff --git a/src/components/recordingcreator/recordingbutton.js b/src/components/recordingcreator/recordingbutton.js index 90e266f7e..590b625cb 100644 --- a/src/components/recordingcreator/recordingbutton.js +++ b/src/components/recordingcreator/recordingbutton.js @@ -1,5 +1,5 @@ import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import recordingHelper from './recordinghelper'; import '../../elements/emby-button/paper-icon-button-light'; diff --git a/src/components/recordingcreator/recordingfields.js b/src/components/recordingcreator/recordingfields.js index a1d3103c8..42a25d580 100644 --- a/src/components/recordingcreator/recordingfields.js +++ b/src/components/recordingcreator/recordingfields.js @@ -3,7 +3,7 @@ import { ServerConnections } from 'lib/jellyfin-apiclient'; import Events from '../../utils/events.ts'; import serverNotifications from '../../scripts/serverNotifications'; import loading from '../loading/loading'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import recordingHelper from './recordinghelper'; import '../../elements/emby-button/emby-button'; diff --git a/src/components/refreshdialog/refreshdialog.js b/src/components/refreshdialog/refreshdialog.js index 721ba36e6..d4fccc119 100644 --- a/src/components/refreshdialog/refreshdialog.js +++ b/src/components/refreshdialog/refreshdialog.js @@ -1,4 +1,4 @@ -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import dialogHelper from '../dialogHelper/dialogHelper'; import loading from '../loading/loading'; import layoutManager from '../layoutManager'; diff --git a/src/components/scrollManager.js b/src/components/scrollManager.js index 2f0917391..4acb121b1 100644 --- a/src/components/scrollManager.js +++ b/src/components/scrollManager.js @@ -3,7 +3,7 @@ * @module components/scrollManager */ -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import appSettings from 'scripts/settings/appSettings'; import layoutManager from './layoutManager'; diff --git a/src/components/shortcuts.js b/src/components/shortcuts.js index 1ff18ef23..a8573b3ab 100644 --- a/src/components/shortcuts.js +++ b/src/components/shortcuts.js @@ -9,7 +9,7 @@ import inputManager from '../scripts/inputManager'; import { appRouter } from './router/appRouter'; import globalize from '../lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import recordingHelper from './recordingcreator/recordinghelper'; import toast from './toast/toast'; import * as userSettings from '../scripts/settings/userSettings'; diff --git a/src/components/slideshow/slideshow.js b/src/components/slideshow/slideshow.js index 04f728c37..3702db9ab 100644 --- a/src/components/slideshow/slideshow.js +++ b/src/components/slideshow/slideshow.js @@ -10,7 +10,7 @@ import layoutManager from '../layoutManager'; import focusManager from '../focusManager'; import browser from '../../scripts/browser'; import { appHost } from '../apphost'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import './style.scss'; import 'material-design-icons-iconfont'; diff --git a/src/components/subtitleeditor/subtitleeditor.js b/src/components/subtitleeditor/subtitleeditor.js index 9a110c206..8d7bc7c53 100644 --- a/src/components/subtitleeditor/subtitleeditor.js +++ b/src/components/subtitleeditor/subtitleeditor.js @@ -9,7 +9,7 @@ import { ServerConnections } from 'lib/jellyfin-apiclient'; import * as userSettings from '../../scripts/settings/userSettings'; import loading from '../loading/loading'; import focusManager from '../focusManager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import '../../elements/emby-select/emby-select'; import '../listview/listview.scss'; diff --git a/src/components/subtitlesettings/subtitlesettings.js b/src/components/subtitlesettings/subtitlesettings.js index d16662943..f8d8aea9b 100644 --- a/src/components/subtitlesettings/subtitlesettings.js +++ b/src/components/subtitlesettings/subtitlesettings.js @@ -8,7 +8,7 @@ import layoutManager from '../layoutManager'; import loading from '../loading/loading'; import subtitleAppearanceHelper from './subtitleappearancehelper'; import settingsHelper from '../settingshelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import Events from '../../utils/events.ts'; import '../listview/listview.scss'; diff --git a/src/components/subtitleuploader/subtitleuploader.js b/src/components/subtitleuploader/subtitleuploader.js index f70726577..e71d2e882 100644 --- a/src/components/subtitleuploader/subtitleuploader.js +++ b/src/components/subtitleuploader/subtitleuploader.js @@ -3,7 +3,7 @@ import escapeHtml from 'escape-html'; import { getSubtitleApi } from '@jellyfin/sdk/lib/utils/api/subtitle-api'; import { toApi } from 'utils/jellyfin-apiclient/compat'; import dialogHelper from '../../components/dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import loading from '../../components/loading/loading'; import scrollHelper from '../../scripts/scrollHelper'; import layoutManager from '../layoutManager'; diff --git a/src/components/tunerPicker.js b/src/components/tunerPicker.js index a0f015eee..3a455d9f0 100644 --- a/src/components/tunerPicker.js +++ b/src/components/tunerPicker.js @@ -1,5 +1,5 @@ import dialogHelper from './dialogHelper/dialogHelper'; -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import layoutManager from './layoutManager'; import globalize from '../lib/globalize'; import loading from './loading/loading'; diff --git a/src/components/tvproviders/xmltv.js b/src/components/tvproviders/xmltv.js index 77a9105a1..437905460 100644 --- a/src/components/tvproviders/xmltv.js +++ b/src/components/tvproviders/xmltv.js @@ -7,7 +7,7 @@ import '../listview/listview.scss'; import '../../elements/emby-button/paper-icon-button-light'; import Dashboard from '../../utils/dashboard'; import Events from '../../utils/events.ts'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; function getTunerName(providerId) { switch (providerId.toLowerCase()) { diff --git a/src/components/upnextdialog/upnextdialog.js b/src/components/upnextdialog/upnextdialog.js index 7bb40943d..fa8eed95e 100644 --- a/src/components/upnextdialog/upnextdialog.js +++ b/src/components/upnextdialog/upnextdialog.js @@ -1,4 +1,4 @@ -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import { playbackManager } from '../playback/playbackmanager'; import Events from '../../utils/events.ts'; import mediaInfo from '../mediainfo/mediainfo'; diff --git a/src/components/userdatabuttons/userdatabuttons.js b/src/components/userdatabuttons/userdatabuttons.js index 453664e39..486206403 100644 --- a/src/components/userdatabuttons/userdatabuttons.js +++ b/src/components/userdatabuttons/userdatabuttons.js @@ -1,6 +1,6 @@ import globalize from '../../lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import itemHelper from '../itemHelper'; import '../../elements/emby-button/paper-icon-button-light'; diff --git a/src/controllers/favorites.js b/src/controllers/favorites.js index b926859f0..6c72cb462 100644 --- a/src/controllers/favorites.js +++ b/src/controllers/favorites.js @@ -2,7 +2,7 @@ import cardBuilder from 'components/cardbuilder/cardBuilder'; import focusManager from 'components/focusManager'; import layoutManager from 'components/layoutManager'; import { appRouter } from 'components/router/appRouter'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import { getBackdropShape, getPortraitShape, getSquareShape } from 'utils/card'; diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index 8dd184096..ffaecb83d 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -26,7 +26,7 @@ import globalize from 'lib/globalize'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import browser from 'scripts/browser'; import datetime from 'scripts/datetime'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import { download } from 'scripts/fileDownloader'; import libraryMenu from 'scripts/libraryMenu'; import * as userSettings from 'scripts/settings/userSettings'; diff --git a/src/controllers/movies/moviesrecommended.js b/src/controllers/movies/moviesrecommended.js index 2fe0a57d2..5e476ecbc 100644 --- a/src/controllers/movies/moviesrecommended.js +++ b/src/controllers/movies/moviesrecommended.js @@ -5,7 +5,7 @@ import imageLoader from 'components/images/imageLoader'; import layoutManager from 'components/layoutManager'; import * as mainTabsManager from 'components/maintabsmanager'; import { playbackManager } from 'components/playback/playbackmanager'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import inputManager from 'scripts/inputManager'; import libraryMenu from 'scripts/libraryMenu'; diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index 06712165d..4f69ffd9e 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -4,7 +4,7 @@ import layoutManager from 'components/layoutManager'; import loading from 'components/loading/loading'; import * as mainTabsManager from 'components/maintabsmanager'; import browser from 'scripts/browser'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import inputManager from 'scripts/inputManager'; import libraryMenu from 'scripts/libraryMenu'; diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index deaeb6002..bd0dc8f6b 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -7,7 +7,7 @@ import { EventType } from 'types/eventType'; import { playbackManager } from '../../../components/playback/playbackmanager'; import browser from '../../../scripts/browser'; -import dom from '../../../scripts/dom'; +import dom from '../../../utils/dom'; import inputManager from '../../../scripts/inputManager'; import mouseManager from '../../../scripts/mouseManager'; import datetime from '../../../scripts/datetime'; diff --git a/src/controllers/session/login/index.js b/src/controllers/session/login/index.js index 2ba0ad6e3..aa9f7029f 100644 --- a/src/controllers/session/login/index.js +++ b/src/controllers/session/login/index.js @@ -6,7 +6,7 @@ import { ServerConnections } from 'lib/jellyfin-apiclient'; import { appHost } from '../../../components/apphost'; import appSettings from '../../../scripts/settings/appSettings'; -import dom from '../../../scripts/dom'; +import dom from '../../../utils/dom'; import loading from '../../../components/loading/loading'; import layoutManager from '../../../components/layoutManager'; import libraryMenu from '../../../scripts/libraryMenu'; diff --git a/src/controllers/session/selectServer/index.js b/src/controllers/session/selectServer/index.js index 3b2efb082..1da0932f7 100644 --- a/src/controllers/session/selectServer/index.js +++ b/src/controllers/session/selectServer/index.js @@ -8,7 +8,7 @@ import focusManager from '../../../components/focusManager'; import globalize from '../../../lib/globalize'; import actionSheet from '../../../components/actionSheet/actionSheet'; import confirm from '../../../components/confirm/confirm'; -import dom from '../../../scripts/dom'; +import dom from '../../../utils/dom'; import browser from '../../../scripts/browser'; import 'material-design-icons-iconfont'; import '../../../styles/flexstyles.scss'; diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index 13a728526..25c6e41e3 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -4,7 +4,7 @@ import layoutManager from 'components/layoutManager'; import loading from 'components/loading/loading'; import * as mainTabsManager from 'components/maintabsmanager'; import { playbackManager } from 'components/playback/playbackmanager'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import globalize from 'lib/globalize'; import inputManager from 'scripts/inputManager'; import libraryMenu from 'scripts/libraryMenu'; diff --git a/src/elements/emby-button/emby-button.js b/src/elements/emby-button/emby-button.js index d41474c36..ddaab09c7 100644 --- a/src/elements/emby-button/emby-button.js +++ b/src/elements/emby-button/emby-button.js @@ -4,7 +4,7 @@ import { appHost } from 'components/apphost'; import layoutManager from 'components/layoutManager'; import { appRouter } from 'components/router/appRouter'; import { AppFeature } from 'constants/appFeature'; -import { removeEventListener, addEventListener } from 'scripts/dom'; +import { removeEventListener, addEventListener } from 'utils/dom'; import shell from 'scripts/shell'; import './emby-button.scss'; diff --git a/src/elements/emby-checkbox/emby-checkbox.js b/src/elements/emby-checkbox/emby-checkbox.js index 6fed51fe2..74f56d979 100644 --- a/src/elements/emby-checkbox/emby-checkbox.js +++ b/src/elements/emby-checkbox/emby-checkbox.js @@ -1,5 +1,5 @@ import browser from '../../scripts/browser'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import './emby-checkbox.scss'; import 'webcomponents.js/webcomponents-lite'; diff --git a/src/elements/emby-input/emby-input.js b/src/elements/emby-input/emby-input.js index 81b0c3b3e..2934563f0 100644 --- a/src/elements/emby-input/emby-input.js +++ b/src/elements/emby-input/emby-input.js @@ -1,5 +1,5 @@ import browser from '../../scripts/browser'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import './emby-input.scss'; import 'webcomponents.js/webcomponents-lite'; diff --git a/src/elements/emby-itemrefreshindicator/emby-itemrefreshindicator.js b/src/elements/emby-itemrefreshindicator/emby-itemrefreshindicator.js index e2e1ec90e..428758908 100644 --- a/src/elements/emby-itemrefreshindicator/emby-itemrefreshindicator.js +++ b/src/elements/emby-itemrefreshindicator/emby-itemrefreshindicator.js @@ -1,5 +1,5 @@ import EmbyProgressRing from '../emby-progressring/emby-progressring'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import serverNotifications from '../../scripts/serverNotifications'; import Events from '../../utils/events.ts'; diff --git a/src/elements/emby-itemscontainer/ItemsContainer.tsx b/src/elements/emby-itemscontainer/ItemsContainer.tsx index 22a565829..ab69efc9f 100644 --- a/src/elements/emby-itemscontainer/ItemsContainer.tsx +++ b/src/elements/emby-itemscontainer/ItemsContainer.tsx @@ -11,7 +11,7 @@ import { usePlaylistsMoveItemMutation } from 'hooks/useFetchItems'; import Events, { type Event } from 'utils/events'; import serverNotifications from 'scripts/serverNotifications'; import inputManager from 'scripts/inputManager'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; import browser from 'scripts/browser'; import imageLoader from 'components/images/imageLoader'; import layoutManager from 'components/layoutManager'; diff --git a/src/elements/emby-itemscontainer/emby-itemscontainer.js b/src/elements/emby-itemscontainer/emby-itemscontainer.js index e1657d095..8cff9b8c3 100644 --- a/src/elements/emby-itemscontainer/emby-itemscontainer.js +++ b/src/elements/emby-itemscontainer/emby-itemscontainer.js @@ -7,7 +7,7 @@ import { playbackManager } from '../../components/playback/playbackmanager'; import imageLoader from '../../components/images/imageLoader'; import layoutManager from '../../components/layoutManager'; import browser from '../../scripts/browser'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import loading from '../../components/loading/loading'; import focusManager from '../../components/focusManager'; import { ServerConnections } from 'lib/jellyfin-apiclient'; diff --git a/src/elements/emby-scroller/Scroller.tsx b/src/elements/emby-scroller/Scroller.tsx index d50d4d61b..3aa70e6ad 100644 --- a/src/elements/emby-scroller/Scroller.tsx +++ b/src/elements/emby-scroller/Scroller.tsx @@ -2,7 +2,7 @@ import React, { type FC, type PropsWithChildren, useCallback, useEffect, useRef, import classNames from 'classnames'; import useElementSize from 'hooks/useElementSize'; import layoutManager from '../../components/layoutManager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import browser from '../../scripts/browser'; import focusManager from '../../components/focusManager'; import ScrollerFactory from 'lib/scroller'; diff --git a/src/elements/emby-scroller/emby-scroller.js b/src/elements/emby-scroller/emby-scroller.js index eafae58bc..10cc816eb 100644 --- a/src/elements/emby-scroller/emby-scroller.js +++ b/src/elements/emby-scroller/emby-scroller.js @@ -1,5 +1,5 @@ import ScrollerFactory from 'lib/scroller'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import layoutManager from '../../components/layoutManager'; import inputManager from '../../scripts/inputManager'; import focusManager from '../../components/focusManager'; diff --git a/src/elements/emby-slider/emby-slider.js b/src/elements/emby-slider/emby-slider.js index e4575ecaf..feaad9399 100644 --- a/src/elements/emby-slider/emby-slider.js +++ b/src/elements/emby-slider/emby-slider.js @@ -1,7 +1,7 @@ import isEqual from 'lodash-es/isEqual'; import browser from '../../scripts/browser'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import layoutManager from '../../components/layoutManager'; import keyboardnavigation from '../../scripts/keyboardNavigation'; import './emby-slider.scss'; diff --git a/src/elements/emby-tabs/emby-tabs.js b/src/elements/emby-tabs/emby-tabs.js index 9123eda32..a1e9ff2d1 100644 --- a/src/elements/emby-tabs/emby-tabs.js +++ b/src/elements/emby-tabs/emby-tabs.js @@ -1,5 +1,5 @@ import 'webcomponents.js/webcomponents-lite'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import ScrollerFactory from 'lib/scroller'; import browser from '../../scripts/browser'; import focusManager from '../../components/focusManager'; diff --git a/src/lib/navdrawer/navdrawer.js b/src/lib/navdrawer/navdrawer.js index 66229d910..218b0f830 100644 --- a/src/lib/navdrawer/navdrawer.js +++ b/src/lib/navdrawer/navdrawer.js @@ -4,7 +4,7 @@ */ import browser from '../../scripts/browser'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import './navdrawer.scss'; import '../../styles/scrollstyles.scss'; import globalize from '../globalize'; diff --git a/src/lib/scroller/index.js b/src/lib/scroller/index.js index d84cffc7b..64e33d579 100644 --- a/src/lib/scroller/index.js +++ b/src/lib/scroller/index.js @@ -5,7 +5,7 @@ import browser from '../../scripts/browser'; import layoutManager from '../../components/layoutManager'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import focusManager from '../../components/focusManager'; import ResizeObserver from 'resize-observer-polyfill'; import '../../styles/scrollstyles.scss'; diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index 920fd5baa..34e338627 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -10,7 +10,7 @@ import browser from '../../scripts/browser'; import appSettings from '../../scripts/settings/appSettings'; import { appHost } from '../../components/apphost'; import loading from '../../components/loading/loading'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import { playbackManager } from '../../components/playback/playbackmanager'; import { appRouter } from '../../components/router/appRouter'; import { diff --git a/src/plugins/pdfPlayer/plugin.js b/src/plugins/pdfPlayer/plugin.js index f77c01364..6a8aed0c4 100644 --- a/src/plugins/pdfPlayer/plugin.js +++ b/src/plugins/pdfPlayer/plugin.js @@ -1,7 +1,7 @@ import loading from '../../components/loading/loading'; import keyboardnavigation from '../../scripts/keyboardNavigation'; import dialogHelper from '../../components/dialogHelper/dialogHelper'; -import dom from '../../scripts/dom'; +import dom from '../../utils/dom'; import { appRouter } from '../../components/router/appRouter'; import { ServerConnections } from 'lib/jellyfin-apiclient'; import { PluginType } from '../../types/plugin.ts'; diff --git a/src/scripts/alphanumericshortcuts.js b/src/scripts/alphanumericshortcuts.js index 22d2605b3..1894c16e2 100644 --- a/src/scripts/alphanumericshortcuts.js +++ b/src/scripts/alphanumericshortcuts.js @@ -1,4 +1,4 @@ -import dom from './dom'; +import dom from '../utils/dom'; import focusManager from '../components/focusManager'; let inputDisplayElement; diff --git a/src/scripts/inputManager.js b/src/scripts/inputManager.js index 1a3276c55..4434cc54c 100644 --- a/src/scripts/inputManager.js +++ b/src/scripts/inputManager.js @@ -3,7 +3,7 @@ import focusManager from 'components/focusManager'; import { playbackManager } from 'components/playback/playbackmanager'; import { appRouter } from 'components/router/appRouter'; import { AppFeature } from 'constants/appFeature'; -import dom from 'scripts/dom'; +import dom from 'utils/dom'; let lastInputTime = new Date().getTime(); diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index e4ddf726b..0ffa8aad1 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -12,7 +12,7 @@ import { EventType } from 'types/eventType'; import { toApi } from 'utils/jellyfin-apiclient/compat'; import { queryClient } from 'utils/query/queryClient'; -import dom from './dom'; +import dom from '../utils/dom'; import layoutManager from '../components/layoutManager'; import inputManager from './inputManager'; import viewManager from '../components/viewManager/viewManager'; diff --git a/src/scripts/mouseManager.js b/src/scripts/mouseManager.js index 1ec9a72be..9082dd1ee 100644 --- a/src/scripts/mouseManager.js +++ b/src/scripts/mouseManager.js @@ -2,7 +2,7 @@ import inputManager from './inputManager'; import focusManager from '../components/focusManager'; import browser from './browser'; import layoutManager from '../components/layoutManager'; -import dom from './dom'; +import dom from '../utils/dom'; import Events from '../utils/events.ts'; const self = {}; diff --git a/src/scripts/scrollHelper.ts b/src/scripts/scrollHelper.ts index 174510d26..c51da5782 100644 --- a/src/scripts/scrollHelper.ts +++ b/src/scripts/scrollHelper.ts @@ -1,5 +1,5 @@ import focusManager from '../components/focusManager'; -import dom from './dom'; +import dom from '../utils/dom'; import '../styles/scrollstyles.scss'; function getBoundingClientRect(elem: Element) { diff --git a/src/scripts/touchHelper.js b/src/scripts/touchHelper.js index db0b2f09c..070d4023f 100644 --- a/src/scripts/touchHelper.js +++ b/src/scripts/touchHelper.js @@ -1,4 +1,4 @@ -import dom from '../scripts/dom'; +import dom from '../utils/dom'; import Events from '../utils/events.ts'; function getTouches(e) { diff --git a/src/scripts/dom.js b/src/utils/dom.js similarity index 59% rename from src/scripts/dom.js rename to src/utils/dom.js index cd0fd7184..e97b805f6 100644 --- a/src/scripts/dom.js +++ b/src/utils/dom.js @@ -1,16 +1,15 @@ /** * Useful DOM utilities. - * @module components/dom */ /** - * Returns parent of element with specified attribute value. - * @param {HTMLElement} elem - Element whose parent need to find. - * @param {string} name - Attribute name. - * @param {mixed} [value] - Attribute value. - * @returns {HTMLElement} Parent with specified attribute value. - */ + * Returns parent of element with specified attribute value. + * @param {HTMLElement} elem - Element whose parent need to find. + * @param {string} name - Attribute name. + * @param {mixed} [value] - Attribute value. + * @returns {HTMLElement} Parent with specified attribute value. + */ export function parentWithAttribute(elem, name, value) { while ((value ? elem.getAttribute(name) !== value : !elem.getAttribute(name))) { elem = elem.parentNode; @@ -24,11 +23,11 @@ export function parentWithAttribute(elem, name, value) { } /** - * Returns parent of element with one of specified tag names. - * @param {HTMLElement} elem - Element whose parent need to find. - * @param {(string|Array)} tagNames - Tag name or array of tag names. - * @returns {HTMLElement} Parent with one of specified tag names. - */ + * Returns parent of element with one of specified tag names. + * @param {HTMLElement} elem - Element whose parent need to find. + * @param {(string|Array)} tagNames - Tag name or array of tag names. + * @returns {HTMLElement} Parent with one of specified tag names. + */ export function parentWithTag(elem, tagNames) { // accept both string and array passed in if (!Array.isArray(tagNames)) { @@ -47,11 +46,11 @@ export function parentWithTag(elem, tagNames) { } /** - * Returns _true_ if class list contains one of specified names. - * @param {DOMTokenList} classList - Class list. - * @param {Array} classNames - Array of class names. - * @returns {boolean} _true_ if class list contains one of specified names. - */ + * Returns _true_ if class list contains one of specified names. + * @param {DOMTokenList} classList - Class list. + * @param {Array} classNames - Array of class names. + * @returns {boolean} _true_ if class list contains one of specified names. + */ function containsAnyClass(classList, classNames) { for (let i = 0, length = classNames.length; i < length; i++) { if (classList.contains(classNames[i])) { @@ -62,11 +61,11 @@ function containsAnyClass(classList, classNames) { } /** - * Returns parent of element with one of specified class names. - * @param {HTMLElement} elem - Element whose parent need to find. - * @param {(string|Array)} classNames - Class name or array of class names. - * @returns {HTMLElement|null} Parent with one of specified class names. - */ + * Returns parent of element with one of specified class names. + * @param {HTMLElement} elem - Element whose parent need to find. + * @param {(string|Array)} classNames - Class name or array of class names. + * @returns {HTMLElement|null} Parent with one of specified class names. + */ export function parentWithClass(elem, classNames) { // accept both string and array passed in if (!Array.isArray(classNames)) { @@ -98,12 +97,12 @@ try { } /** - * Adds event listener to specified target. - * @param {EventTarget} target - Event target. - * @param {string} type - Event type. - * @param {function} handler - Event handler. - * @param {Object} [options] - Listener options. - */ + * Adds event listener to specified target. + * @param {EventTarget} target - Event target. + * @param {string} type - Event type. + * @param {function} handler - Event handler. + * @param {Object} [options] - Listener options. + */ export function addEventListener(target, type, handler, options) { let optionsOrCapture = options || {}; if (!supportsCaptureOption) { @@ -113,12 +112,12 @@ export function addEventListener(target, type, handler, options) { } /** - * Removes event listener from specified target. - * @param {EventTarget} target - Event target. - * @param {string} type - Event type. - * @param {function} handler - Event handler. - * @param {Object} [options] - Listener options. - */ + * Removes event listener from specified target. + * @param {EventTarget} target - Event target. + * @param {string} type - Event type. + * @param {function} handler - Event handler. + * @param {Object} [options] - Listener options. + */ export function removeEventListener(target, type, handler, options) { let optionsOrCapture = options || {}; if (!supportsCaptureOption) { @@ -128,37 +127,48 @@ export function removeEventListener(target, type, handler, options) { } /** - * Cached window size. - */ + * Cached window size. + */ let windowSize; /** - * Flag of event listener bound. - */ + * Flag of event listener bound. + */ let windowSizeEventsBound; /** - * Resets cached window size. - */ + * Resets cached window size. + */ function clearWindowSize() { windowSize = null; } /** - * @typedef {Object} windowSize - * @property {number} innerHeight - window innerHeight. - * @property {number} innerWidth - window innerWidth. - */ + * @typedef {Object} windowSize + * @property {number} innerHeight - window innerHeight. + * @property {number} innerWidth - window innerWidth. + */ /** - * Returns window size. - * @returns {windowSize} Window size. - */ + * Returns window size. + * @returns {windowSize} Window size. + */ export function getWindowSize() { if (!windowSize) { + const innerWidth = window.innerWidth; + const innerHeight = window.innerHeight; + + // NOTE: webOS has a bug that reports window size as infinite on page load, so we use a fallback size of 4K + if (!Number.isFinite(innerWidth) || !Number.isFinite(innerHeight)) { + return { + innerWidth: Number.isFinite(innerWidth) ? innerWidth : 3840, + innerHeight: Number.isFinite(innerHeight) ? innerHeight : 2160 + }; + } + windowSize = { - innerHeight: window.innerHeight, - innerWidth: window.innerWidth + innerWidth, + innerHeight }; if (!windowSizeEventsBound) { @@ -172,17 +182,17 @@ export function getWindowSize() { } /** - * Standard screen widths. - */ + * Standard screen widths. + */ const standardWidths = [480, 720, 1280, 1440, 1920, 2560, 3840, 5120, 7680]; /** - * Returns screen width. - * @returns {number} Screen width. - */ + * Returns screen width. + * @returns {number} Screen width. + */ export function getScreenWidth() { - let width = window.innerWidth; - const height = window.innerHeight; + let width = Number.isFinite(window.innerWidth) ? window.innerWidth : 3840; + const height = Number.isFinite(window.innerHeight) ? window.innerHeight : 2160; if (height > width) { width = height * (16.0 / 9.0); @@ -194,14 +204,14 @@ export function getScreenWidth() { } /** - * Name of animation end event. - */ + * Name of animation end event. + */ let _animationEvent; /** - * Returns name of animation end event. - * @returns {string} Name of animation end event. - */ + * Returns name of animation end event. + * @returns {string} Name of animation end event. + */ export function whichAnimationEvent() { if (_animationEvent) { return _animationEvent; @@ -226,22 +236,22 @@ export function whichAnimationEvent() { } /** - * Returns name of animation cancel event. - * @returns {string} Name of animation cancel event. - */ + * Returns name of animation cancel event. + * @returns {string} Name of animation cancel event. + */ export function whichAnimationCancelEvent() { return whichAnimationEvent().replace('animationend', 'animationcancel').replace('AnimationEnd', 'AnimationCancel'); } /** - * Name of transition end event. - */ + * Name of transition end event. + */ let _transitionEvent; /** - * Returns name of transition end event. - * @returns {string} Name of transition end event. - */ + * Returns name of transition end event. + * @returns {string} Name of transition end event. + */ export function whichTransitionEvent() { if (_transitionEvent) { return _transitionEvent; @@ -277,15 +287,15 @@ export function setElementTitle(elem, title, ariaLabel) { } export default { - parentWithAttribute: parentWithAttribute, - parentWithClass: parentWithClass, - parentWithTag: parentWithTag, - addEventListener: addEventListener, - removeEventListener: removeEventListener, - getWindowSize: getWindowSize, - getScreenWidth: getScreenWidth, + parentWithAttribute, + parentWithClass, + parentWithTag, + addEventListener, + removeEventListener, + getWindowSize, + getScreenWidth, setElementTitle, - whichTransitionEvent: whichTransitionEvent, - whichAnimationEvent: whichAnimationEvent, - whichAnimationCancelEvent: whichAnimationCancelEvent + whichTransitionEvent, + whichAnimationEvent, + whichAnimationCancelEvent };