diff --git a/package.json b/package.json index f9527d2a0..33a2b20e5 100644 --- a/package.json +++ b/package.json @@ -14,9 +14,8 @@ "autoprefixer": "^9.8.6", "babel-loader": "^8.0.6", "browser-sync": "^2.26.13", - "confusing-browser-globals": "^1.0.10", "clean-webpack-plugin": "^3.0.0", - "confusing-browser-globals": "^1.0.9", + "confusing-browser-globals": "^1.0.10", "copy-webpack-plugin": "^6.0.3", "css-loader": "^5.0.0", "cssnano": "^4.1.10", @@ -67,7 +66,6 @@ "core-js": "^3.6.5", "date-fns": "^2.16.1", "epubjs": "^0.3.85", - "pdfjs-dist": "2.5.207", "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.12.0", @@ -82,7 +80,10 @@ "material-design-icons-iconfont": "^6.1.0", "native-promise-only": "^0.8.0-a", "page": "^1.11.6", + "pdfjs-dist": "2.5.207", "resize-observer-polyfill": "^1.5.1", + "sass": "^1.29.0", + "sass-loader": "^10.0.5", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", "swiper": "^6.3.5", diff --git a/src/components/collectionEditor/collectionEditor.js b/src/components/collectionEditor/collectionEditor.js index 96ee2731c..33e6fdecc 100644 --- a/src/components/collectionEditor/collectionEditor.js +++ b/src/components/collectionEditor/collectionEditor.js @@ -11,7 +11,7 @@ import '../../elements/emby-input/emby-input'; import '../../elements/emby-select/emby-select'; import 'material-design-icons-iconfont'; import '../formdialog.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; import toast from '../toast/toast'; diff --git a/src/components/dialog/dialog.js b/src/components/dialog/dialog.js index cb765242c..530b0f43f 100644 --- a/src/components/dialog/dialog.js +++ b/src/components/dialog/dialog.js @@ -8,7 +8,7 @@ import '../../elements/emby-button/emby-button'; import '../../elements/emby-button/paper-icon-button-light'; import '../../elements/emby-input/emby-input'; import '../formdialog.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; /* eslint-disable indent */ diff --git a/src/components/filtermenu/filtermenu.js b/src/components/filtermenu/filtermenu.js index 78d3d14b1..f4f6ef2d9 100644 --- a/src/components/filtermenu/filtermenu.js +++ b/src/components/filtermenu/filtermenu.js @@ -12,7 +12,7 @@ import '../../elements/emby-button/paper-icon-button-light'; import '../../elements/emby-select/emby-select'; import 'material-design-icons-iconfont'; import '../formdialog.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; function onSubmit(e) { diff --git a/src/components/guide/guide.js b/src/components/guide/guide.js index 1849c2746..2a169d094 100644 --- a/src/components/guide/guide.js +++ b/src/components/guide/guide.js @@ -22,7 +22,7 @@ import '../../elements/emby-button/emby-button'; import '../../elements/emby-button/paper-icon-button-light'; import '../../elements/emby-tabs/emby-tabs'; import '../../elements/emby-scroller/emby-scroller'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import 'webcomponents.js/webcomponents-lite'; import ServerConnections from '../ServerConnections'; diff --git a/src/components/itemMediaInfo/itemMediaInfo.js b/src/components/itemMediaInfo/itemMediaInfo.js index 7e7ae448f..2094bcdac 100644 --- a/src/components/itemMediaInfo/itemMediaInfo.js +++ b/src/components/itemMediaInfo/itemMediaInfo.js @@ -15,7 +15,7 @@ import '../../elements/emby-button/emby-button'; import '../../elements/emby-button/paper-icon-button-light'; import '../formdialog.css'; import 'material-design-icons-iconfont'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; function setMediaInfo(user, page, item) { diff --git a/src/components/mediaLibraryCreator/mediaLibraryCreator.js b/src/components/mediaLibraryCreator/mediaLibraryCreator.js index 2c7a72710..98339d429 100644 --- a/src/components/mediaLibraryCreator/mediaLibraryCreator.js +++ b/src/components/mediaLibraryCreator/mediaLibraryCreator.js @@ -18,7 +18,7 @@ import '../../elements/emby-select/emby-select'; import '../../elements/emby-toggle/emby-toggle'; import '../listview/listview.css'; import '../formdialog.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import toast from '../toast/toast'; import alert from '../alert'; diff --git a/src/components/mediaLibraryEditor/mediaLibraryEditor.js b/src/components/mediaLibraryEditor/mediaLibraryEditor.js index fa29ef25c..ee55d2ba8 100644 --- a/src/components/mediaLibraryEditor/mediaLibraryEditor.js +++ b/src/components/mediaLibraryEditor/mediaLibraryEditor.js @@ -16,7 +16,7 @@ import '../listview/listview.css'; import '../../elements/emby-button/paper-icon-button-light'; import '../formdialog.css'; import '../../elements/emby-toggle/emby-toggle'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import toast from '../toast/toast'; import confirm from '../confirm/confirm'; diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js index 1d5e52881..4fa5645f1 100644 --- a/src/components/metadataEditor/metadataEditor.js +++ b/src/components/metadataEditor/metadataEditor.js @@ -14,8 +14,8 @@ import '../../elements/emby-textarea/emby-textarea'; import '../../elements/emby-button/emby-button'; import '../../elements/emby-button/paper-icon-button-light'; import '../formdialog.css'; -import '../../assets/css/clearbutton.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/clearbutton.scss'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; import toast from '../toast/toast'; diff --git a/src/components/recordingcreator/recordingeditor.js b/src/components/recordingcreator/recordingeditor.js index efecd1c23..13066fc3c 100644 --- a/src/components/recordingcreator/recordingeditor.js +++ b/src/components/recordingcreator/recordingeditor.js @@ -12,7 +12,7 @@ import '../../elements/emby-button/paper-icon-button-light'; import '../formdialog.css'; import './recordingcreator.css'; import 'material-design-icons-iconfont'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; let currentDialog; diff --git a/src/components/recordingcreator/recordingfields.js b/src/components/recordingcreator/recordingfields.js index 8aaf8956e..84142fef6 100644 --- a/src/components/recordingcreator/recordingfields.js +++ b/src/components/recordingcreator/recordingfields.js @@ -7,7 +7,7 @@ import recordingHelper from './recordinghelper'; import '../../elements/emby-button/emby-button'; import '../../elements/emby-button/paper-icon-button-light'; import './recordingfields.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; import toast from '../toast/toast'; diff --git a/src/components/recordingcreator/seriesrecordingeditor.js b/src/components/recordingcreator/seriesrecordingeditor.js index 65264a035..c21b8c6cb 100644 --- a/src/components/recordingcreator/seriesrecordingeditor.js +++ b/src/components/recordingcreator/seriesrecordingeditor.js @@ -13,7 +13,7 @@ import '../../elements/emby-button/paper-icon-button-light'; import '../formdialog.css'; import './recordingcreator.css'; import 'material-design-icons-iconfont'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; /*eslint prefer-const: "error"*/ diff --git a/src/components/search/searchfields.js b/src/components/search/searchfields.js index c83012803..2bf5c0305 100644 --- a/src/components/search/searchfields.js +++ b/src/components/search/searchfields.js @@ -4,7 +4,7 @@ import { Events } from 'jellyfin-apiclient'; import browser from '../../scripts/browser'; import AlphaPicker from '../alphaPicker/alphaPicker'; import '../../elements/emby-input/emby-input'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import 'material-design-icons-iconfont'; import './searchfields.css'; diff --git a/src/components/sortmenu/sortmenu.js b/src/components/sortmenu/sortmenu.js index 110844845..0ec21d3b7 100644 --- a/src/components/sortmenu/sortmenu.js +++ b/src/components/sortmenu/sortmenu.js @@ -7,7 +7,7 @@ import '../../elements/emby-button/paper-icon-button-light'; import 'material-design-icons-iconfont'; import '../formdialog.css'; import '../../elements/emby-button/emby-button'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; function onSubmit(e) { e.preventDefault(); diff --git a/src/components/subtitleeditor/subtitleeditor.js b/src/components/subtitleeditor/subtitleeditor.js index 9a33b5e1c..cd1e5ca8e 100644 --- a/src/components/subtitleeditor/subtitleeditor.js +++ b/src/components/subtitleeditor/subtitleeditor.js @@ -1,4 +1,4 @@ -import appHost from '../apphost'; +import { appHost } from '../apphost'; import dialogHelper from '../dialogHelper/dialogHelper'; import layoutManager from '../layoutManager'; import globalize from '../../scripts/globalize'; @@ -13,7 +13,7 @@ import '../formdialog.css'; import 'material-design-icons-iconfont'; import './subtitleeditor.css'; import '../../elements/emby-button/emby-button'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; import toast from '../toast/toast'; import confirm from '../confirm/confirm'; diff --git a/src/components/subtitlesettings/subtitlesettings.js b/src/components/subtitlesettings/subtitlesettings.js index 88f3b680c..f49734b14 100644 --- a/src/components/subtitlesettings/subtitlesettings.js +++ b/src/components/subtitlesettings/subtitlesettings.js @@ -13,7 +13,7 @@ import '../../elements/emby-select/emby-select'; import '../../elements/emby-slider/emby-slider'; import '../../elements/emby-input/emby-input'; import '../../elements/emby-checkbox/emby-checkbox'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import './subtitlesettings.css'; import ServerConnections from '../ServerConnections'; import toast from '../toast/toast'; diff --git a/src/components/tvproviders/schedulesdirect.js b/src/components/tvproviders/schedulesdirect.js index 20ae44721..bf182ee7c 100644 --- a/src/components/tvproviders/schedulesdirect.js +++ b/src/components/tvproviders/schedulesdirect.js @@ -7,7 +7,7 @@ import '../listview/listview.css'; import '../../elements/emby-button/paper-icon-button-light'; import '../../elements/emby-select/emby-select'; import '../../elements/emby-button/emby-button'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import Dashboard from '../../scripts/clientUtils'; import { Events } from 'jellyfin-apiclient'; diff --git a/src/components/upnextdialog/upnextdialog.js b/src/components/upnextdialog/upnextdialog.js index dac14c296..702fe4dcf 100644 --- a/src/components/upnextdialog/upnextdialog.js +++ b/src/components/upnextdialog/upnextdialog.js @@ -8,7 +8,7 @@ import globalize from '../../scripts/globalize'; import itemHelper from '../itemHelper'; import './upnextdialog.css'; import '../../elements/emby-button/emby-button'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; /* eslint-disable indent */ diff --git a/src/components/viewSettings/viewSettings.js b/src/components/viewSettings/viewSettings.js index 2e54f7f22..0f32f4f6a 100644 --- a/src/components/viewSettings/viewSettings.js +++ b/src/components/viewSettings/viewSettings.js @@ -9,7 +9,7 @@ import '../../elements/emby-button/paper-icon-button-light'; import '../../elements/emby-select/emby-select'; import 'material-design-icons-iconfont'; import '../formdialog.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; function onSubmit(e) { e.preventDefault(); diff --git a/src/controllers/dashboard/dashboard.js b/src/controllers/dashboard/dashboard.js index e1892e12b..99739ad03 100644 --- a/src/controllers/dashboard/dashboard.js +++ b/src/controllers/dashboard/dashboard.js @@ -15,7 +15,7 @@ import imageHelper from '../../scripts/imagehelper'; import indicators from '../../components/indicators/indicators'; import '../../components/listview/listview.css'; import '../../elements/emby-button/emby-button'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import '../../elements/emby-itemscontainer/emby-itemscontainer'; import taskButton from '../../scripts/taskbutton'; import Dashboard from '../../scripts/clientUtils'; diff --git a/src/controllers/dashboard/devices/devices.js b/src/controllers/dashboard/devices/devices.js index bc6e7ee87..e1eb99e67 100644 --- a/src/controllers/dashboard/devices/devices.js +++ b/src/controllers/dashboard/devices/devices.js @@ -22,14 +22,12 @@ import confirm from '../../../components/confirm/confirm'; function deleteAllDevices(page) { const msg = globalize.translate('DeleteDevicesConfirmation'); - require(['confirm'], async function (confirm) { - await confirm({ - text: msg, - title: globalize.translate('HeaderDeleteDevices'), - confirmText: globalize.translate('ButtonDelete'), - primary: 'delete' - }); - + confirm({ + text: msg, + title: globalize.translate('HeaderDeleteDevices'), + confirmText: globalize.translate('ButtonDelete'), + primary: 'delete' + }).then(async () => { loading.show(); await Promise.all( deviceIds.filter(canDelete).map((id) => ApiClient.deleteDevice(id)) diff --git a/src/controllers/dashboard/logs.js b/src/controllers/dashboard/logs.js index 68431441c..06d317a8a 100644 --- a/src/controllers/dashboard/logs.js +++ b/src/controllers/dashboard/logs.js @@ -2,7 +2,7 @@ import datetime from '../../scripts/datetime'; import loading from '../../components/loading/loading'; import '../../elements/emby-button/emby-button'; import '../../components/listview/listview.css'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; /* eslint-disable indent */ diff --git a/src/controllers/dashboard/users/userprofilespage.js b/src/controllers/dashboard/users/userprofilespage.js index 07349a2b4..1a38beff2 100644 --- a/src/controllers/dashboard/users/userprofilespage.js +++ b/src/controllers/dashboard/users/userprofilespage.js @@ -7,7 +7,7 @@ import '../../../elements/emby-button/paper-icon-button-light'; import '../../../components/cardbuilder/card.css'; import '../../../elements/emby-button/emby-button'; import '../../../components/indicators/indicators.css'; -import '../../../assets/css/flexstyles.css'; +import '../../../assets/css/flexstyles.scss'; import Dashboard from '../../../scripts/clientUtils'; import confirm from '../../../components/confirm/confirm'; diff --git a/src/controllers/livetvstatus.js b/src/controllers/livetvstatus.js index 931ce228c..c1ee98f20 100644 --- a/src/controllers/livetvstatus.js +++ b/src/controllers/livetvstatus.js @@ -6,7 +6,7 @@ import layoutManager from '../components/layoutManager'; import loading from '../components/loading/loading'; import browser from '../scripts/browser'; import '../components/listview/listview.css'; -import '../assets/css/flexstyles.css'; +import '../assets/css/flexstyles.scss'; import '../elements/emby-itemscontainer/emby-itemscontainer'; import '../components/cardbuilder/card.css'; import 'material-design-icons-iconfont'; diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index a9433a615..10bbaae7d 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -13,7 +13,7 @@ import '../../assets/css/scrollstyles.css'; import '../../elements/emby-itemscontainer/emby-itemscontainer'; import '../../elements/emby-tabs/emby-tabs'; import '../../elements/emby-button/emby-button'; -import '../../assets/css/flexstyles.css'; +import '../../assets/css/flexstyles.scss'; import Dashboard from '../../scripts/clientUtils'; /* eslint-disable indent */ diff --git a/src/controllers/session/selectServer/index.js b/src/controllers/session/selectServer/index.js index b90fc5ca0..32674a806 100644 --- a/src/controllers/session/selectServer/index.js +++ b/src/controllers/session/selectServer/index.js @@ -9,7 +9,7 @@ import actionSheet from '../../../components/actionSheet/actionSheet'; import dom from '../../../scripts/dom'; import browser from '../../../scripts/browser'; import 'material-design-icons-iconfont'; -import '../../../assets/css/flexstyles.css'; +import '../../../assets/css/flexstyles.scss'; import '../../../elements/emby-scroller/emby-scroller'; import '../../../elements/emby-itemscontainer/emby-itemscontainer'; import '../../../components/cardbuilder/card.css'; diff --git a/src/plugins/pdfPlayer/plugin.js b/src/plugins/pdfPlayer/plugin.js index 480eb8054..4053343d3 100644 --- a/src/plugins/pdfPlayer/plugin.js +++ b/src/plugins/pdfPlayer/plugin.js @@ -1,12 +1,11 @@ -import loading from 'loading'; -import keyboardnavigation from 'keyboardnavigation'; -import dialogHelper from 'dialogHelper'; -import dom from 'dom'; -import appRouter from 'appRouter'; -import events from 'events'; -import 'css!./style'; -import 'material-icons'; -import 'paper-icon-button-light'; +import loading from '../../components/loading/loading'; +import keyboardnavigation from '../../scripts/keyboardNavigation'; +import dialogHelper from '../../components/dialogHelper/dialogHelper'; +import dom from '../../scripts/dom'; +import { appRouter } from '../../components/appRouter'; +import './style.css'; +import '../../elements/emby-button/paper-icon-button-light'; +import { Events } from 'jellyfin-apiclient'; export class PdfPlayer { constructor() { @@ -189,7 +188,7 @@ export class PdfPlayer { const apiClient = window.connectionManager.getApiClient(serverId); return new Promise((resolve, reject) => { - import('pdfjs').then(({default: pdfjs}) => { + import('pdfjs-dist').then(({default: pdfjs}) => { const downloadHref = apiClient.getItemDownloadUrl(item.Id); this.bindEvents(); @@ -266,7 +265,7 @@ export class PdfPlayer { renderPage(canvas, number) { this.book.getPage(number).then(page => { - events.trigger(this, 'timeupdate'); + Events.trigger(this, 'timeupdate'); const original = page.getViewport({ scale: 1 }); const context = canvas.getContext('2d'); diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index 5cca1d09e..03b28fc09 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -14,7 +14,7 @@ import imageHelper from './imagehelper'; import '../elements/emby-button/paper-icon-button-light'; import 'material-design-icons-iconfont'; import '../assets/css/scrollstyles.css'; -import '../assets/css/flexstyles.css'; +import '../assets/css/flexstyles.scss'; import Dashboard from './clientUtils'; import ServerConnections from '../components/ServerConnections'; diff --git a/src/scripts/routes.js b/src/scripts/routes.js index e31843466..ca3e75226 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -7,10 +7,10 @@ import '../elements/emby-collapse/emby-collapse'; import '../elements/emby-select/emby-select'; import '../elements/emby-checkbox/emby-checkbox'; import '../elements/emby-slider/emby-slider'; -import '../assets/css/livetv.css'; +import '../assets/css/livetv.scss'; import '../components/listview/listview.css'; import '../assets/css/dashboard.css'; -import '../assets/css/detailtable.css'; +import '../assets/css/detailtable.scss'; import { appRouter } from '../components/appRouter'; /* eslint-disable indent */ diff --git a/src/scripts/site.js b/src/scripts/site.js index 3143c9654..77dc1fe86 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -6,8 +6,7 @@ import 'intersection-observer'; import 'classlist.js'; import 'whatwg-fetch'; import 'resize-observer-polyfill'; -import 'jellyfin-noto'; -import '../assets/css/site.css'; +import '../assets/css/site.scss'; import AppInfo from '../components/AppInfo'; import { Events } from 'jellyfin-apiclient'; import ServerConnections from '../components/ServerConnections'; @@ -120,10 +119,10 @@ function onGlobalizeInit() { if (browser.tv && !browser.android) { console.debug('using system fonts with explicit sizes'); - import('../assets/css/fonts.sized.css'); + import('../assets/css/fonts.sized.scss'); } else { console.debug('using default fonts'); - import('../assets/css/fonts.css'); + import('../assets/css/fonts.scss'); } import('../assets/css/librarybrowser.css'); @@ -173,7 +172,7 @@ function onAppReady() { console.debug('onAppReady: loading dependencies'); if (browser.iOS) { - import('../assets/css/ios.css'); + import('../assets/css/ios.scss'); } Promise.all([ diff --git a/webpack.common.js b/webpack.common.js index 5fef0bd52..db163219c 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -56,6 +56,22 @@ module.exports = { } }] }, + { + test: /\.s[ac]ss$/i, + use: [ + 'style-loader', + 'css-loader', + { + loader: 'postcss-loader', + options: { + config: { + path: __dirname + } + } + }, + 'sass-loader' + ] + }, { test: /\.css$/i, use: [ diff --git a/yarn.lock b/yarn.lock index 2ac097bc0..f07c654ba 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2547,6 +2547,21 @@ character-reference-invalid@^1.0.0: resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== +"chokidar@>=2.0.0 <4.0.0", chokidar@^3.4.1: + version "3.4.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" + integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.1.2" + chokidar@^2.0.0, chokidar@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -2566,21 +2581,6 @@ chokidar@^2.0.0, chokidar@^2.1.8: optionalDependencies: fsevents "^1.2.7" -chokidar@^3.4.1: - version "3.4.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" - integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.5.0" - optionalDependencies: - fsevents "~2.1.2" - chownr@^1.1.1: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" @@ -2926,7 +2926,7 @@ config-chain@^1.1.11: ini "^1.3.4" proto-list "~1.2.1" -confusing-browser-globals@^1.0.9: +confusing-browser-globals@^1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz#30d1e7f3d1b882b25ec4933d1d1adac353d20a59" integrity sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA== @@ -7108,6 +7108,11 @@ kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== +klona@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.4.tgz#7bb1e3affb0cb8624547ef7e8f6708ea2e39dfc0" + integrity sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA== + known-css-properties@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.11.0.tgz#0da784f115ea77c76b81536d7052e90ee6c86a8a" @@ -10797,6 +10802,24 @@ sass-graph@2.2.5: scss-tokenizer "^0.2.3" yargs "^13.3.2" +sass-loader@^10.0.5: + version "10.0.5" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.0.5.tgz#f53505b5ddbedf43797470ceb34066ded82bb769" + integrity sha512-2LqoNPtKkZq/XbXNQ4C64GFEleSEHKv6NPSI+bMC/l+jpEXGJhiRYkAQToO24MR7NU4JRY2RpLpJ/gjo2Uf13w== + dependencies: + klona "^2.0.4" + loader-utils "^2.0.0" + neo-async "^2.6.2" + schema-utils "^3.0.0" + semver "^7.3.2" + +sass@^1.29.0: + version "1.29.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.29.0.tgz#ec4e1842c146d8ea9258c28c141b8c2b7c6ab7f1" + integrity sha512-ZpwAUFgnvAUCdkjwPREny+17BpUj8nh5Yr6zKPGtLNTLrmtoRYIjm7njP24COhjJldjwW1dcv52Lpf4tNZVVRA== + dependencies: + chokidar ">=2.0.0 <4.0.0" + sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"