mirror of
https://github.com/GiriNeko/YesPlayMusic.git
synced 2025-12-16 13:17:46 +00:00
feat: updates
This commit is contained in:
parent
ccebe0a67a
commit
9a52681687
37 changed files with 160 additions and 55332 deletions
|
|
@ -5,13 +5,12 @@
|
||||||
|
|
||||||
const pkg = require('./package.json')
|
const pkg = require('./package.json')
|
||||||
const electronVersion = pkg.devDependencies.electron.replaceAll('^', '')
|
const electronVersion = pkg.devDependencies.electron.replaceAll('^', '')
|
||||||
const isDev = process.env.NODE_ENV === 'development'
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
appId: 'app.r3play',
|
appId: 'app.r3play',
|
||||||
productName: pkg.productName,
|
productName: pkg.productName,
|
||||||
copyright: 'Copyright © 2022 qier222',
|
copyright: 'Copyright © 2022 qier222',
|
||||||
asar: isDev ? true : false,
|
asar: true,
|
||||||
directories: {
|
directories: {
|
||||||
output: 'release',
|
output: 'release',
|
||||||
buildResources: 'build',
|
buildResources: 'build',
|
||||||
|
|
|
||||||
|
|
@ -9,27 +9,32 @@ import netease from './routes/netease/netease'
|
||||||
import appleMusic from './routes/r3play/appleMusic'
|
import appleMusic from './routes/r3play/appleMusic'
|
||||||
import audio from './routes/r3play/audio'
|
import audio from './routes/r3play/audio'
|
||||||
|
|
||||||
const server = fastify({
|
const initAppServer = async () => {
|
||||||
|
const server = fastify({
|
||||||
ignoreTrailingSlash: true,
|
ignoreTrailingSlash: true,
|
||||||
})
|
})
|
||||||
|
|
||||||
server.register(fastifyCookie)
|
server.register(fastifyCookie)
|
||||||
server.register(fastifyMultipart)
|
server.register(fastifyMultipart)
|
||||||
if (isProd) {
|
if (isProd) {
|
||||||
server.register(fastifyStatic, {
|
server.register(fastifyStatic, {
|
||||||
root: path.join(__dirname, '../web'),
|
root: path.join(__dirname, '../web'),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
server.register(netease)
|
server.register(netease)
|
||||||
server.register(audio)
|
server.register(audio)
|
||||||
server.register(appleMusic)
|
server.register(appleMusic)
|
||||||
|
|
||||||
const port = Number(
|
const port = Number(
|
||||||
isProd
|
isProd
|
||||||
? process.env.ELECTRON_WEB_SERVER_PORT || 42710
|
? process.env.ELECTRON_WEB_SERVER_PORT || 42710
|
||||||
: process.env.ELECTRON_DEV_NETEASE_API_PORT || 30001
|
: process.env.ELECTRON_DEV_NETEASE_API_PORT || 30001
|
||||||
)
|
)
|
||||||
server.listen({ port })
|
await server.listen({ port })
|
||||||
|
log.info(`[appServer] http server listening on port ${port}`)
|
||||||
|
|
||||||
log.info(`[appServer] http server listening on port ${port}`)
|
return server
|
||||||
|
}
|
||||||
|
|
||||||
|
export default initAppServer
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,8 @@ async function netease(fastify: FastifyInstance) {
|
||||||
req: FastifyRequest<{ Querystring: { [key: string]: string } }>,
|
req: FastifyRequest<{ Querystring: { [key: string]: string } }>,
|
||||||
reply: FastifyReply
|
reply: FastifyReply
|
||||||
) => {
|
) => {
|
||||||
// // Get track details from cache
|
console.log(req.routerPath)
|
||||||
|
// Get track details from cache
|
||||||
if (name === CacheAPIs.Track) {
|
if (name === CacheAPIs.Track) {
|
||||||
const cacheData = await cache.get(name, req.query as any)
|
const cacheData = await cache.get(name, req.query as any)
|
||||||
if (cacheData) {
|
if (cacheData) {
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,8 @@ import { createTaskbar, Thumbar } from './windowsTaskbar'
|
||||||
import { createMenu } from './menu'
|
import { createMenu } from './menu'
|
||||||
import { isDev, isWindows, isLinux, isMac, appName } from './env'
|
import { isDev, isWindows, isLinux, isMac, appName } from './env'
|
||||||
import store from './store'
|
import store from './store'
|
||||||
import './appServer/appServer'
|
import initAppServer from './appServer/appServer'
|
||||||
|
import { initDatabase } from './prisma'
|
||||||
|
|
||||||
class Main {
|
class Main {
|
||||||
win: BrowserWindow | null = null
|
win: BrowserWindow | null = null
|
||||||
|
|
@ -32,8 +33,10 @@ class Main {
|
||||||
process.exit(0)
|
process.exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
app.whenReady().then(() => {
|
app.whenReady().then(async () => {
|
||||||
log.info('[index] App ready')
|
log.info('[index] App ready')
|
||||||
|
await initDatabase()
|
||||||
|
await initAppServer()
|
||||||
this.createWindow()
|
this.createWindow()
|
||||||
this.handleAppEvents()
|
this.handleAppEvents()
|
||||||
this.handleWindowEvents()
|
this.handleWindowEvents()
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,15 @@
|
||||||
import { app } from 'electron'
|
import { app } from 'electron'
|
||||||
import path from 'path'
|
import path from 'path'
|
||||||
import { PrismaClient } from '../prisma/client'
|
import { PrismaClient } from '../prisma/client'
|
||||||
import { isDev } from './env'
|
import { isDev, isWindows } from './env'
|
||||||
import log from './log'
|
import log from './log'
|
||||||
import { createFileIfNotExist, dirname, isFileExist } from './utils'
|
import { createFileIfNotExist, dirname, isFileExist } from './utils'
|
||||||
import fs from 'fs'
|
import fs from 'fs'
|
||||||
|
import { dialog } from 'electron'
|
||||||
|
|
||||||
export const dbPath = path.join(app.getPath('userData'), 'r3play.db')
|
export const dbPath = path.join(app.getPath('userData'), 'r3play.db')
|
||||||
export const dbUrl = 'file://' + dbPath
|
export const dbUrl = 'file:' + (isWindows ? '' : '//') + dbPath
|
||||||
|
log.info('[prisma] dbUrl', dbUrl)
|
||||||
|
|
||||||
const extraResourcesPath = app.getAppPath().replace('app.asar', '') // impacted by extraResources setting in electron-builder.yml
|
const extraResourcesPath = app.getAppPath().replace('app.asar', '') // impacted by extraResources setting in electron-builder.yml
|
||||||
function getPlatformName(): string {
|
function getPlatformName(): string {
|
||||||
|
|
@ -49,16 +51,9 @@ log.info('[prisma] dbUrl', dbUrl)
|
||||||
// the dbUrl into the prisma client constructor in datasources.db.url
|
// the dbUrl into the prisma client constructor in datasources.db.url
|
||||||
process.env.DATABASE_URL = dbUrl
|
process.env.DATABASE_URL = dbUrl
|
||||||
|
|
||||||
const isInitialized = isFileExist(dbPath)
|
createFileIfNotExist(dbPath)
|
||||||
if (!isInitialized) {
|
|
||||||
const from = isDev ? path.join(dirname, './prisma/r3play.db') : path.join(dirname, './r3play.db')
|
|
||||||
log.info(`[prisma] copy r3play.db file from ${from} to ${dbPath}`)
|
|
||||||
fs.copyFileSync(from, dbPath)
|
|
||||||
log.info('[prisma] Database tables initialized.')
|
|
||||||
} else {
|
|
||||||
log.info('[prisma] Database tables already initialized before.')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
// @ts-expect-error
|
||||||
let prisma: PrismaClient = null
|
let prisma: PrismaClient = null
|
||||||
try {
|
try {
|
||||||
prisma = new PrismaClient({
|
prisma = new PrismaClient({
|
||||||
|
|
@ -79,6 +74,29 @@ try {
|
||||||
log.info('[prisma] prisma initialized')
|
log.info('[prisma] prisma initialized')
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log.error('[prisma] failed to init prisma', e)
|
log.error('[prisma] failed to init prisma', e)
|
||||||
|
dialog.showErrorBox('Failed to init prisma', String(e))
|
||||||
|
app.exit()
|
||||||
|
}
|
||||||
|
|
||||||
|
export const initDatabase = async () => {
|
||||||
|
try {
|
||||||
|
const initSQLFile = fs
|
||||||
|
.readFileSync(path.join(dirname, 'migrations/init.sql'), 'utf-8')
|
||||||
|
.toString()
|
||||||
|
const tables = initSQLFile.split(';')
|
||||||
|
await Promise.all(
|
||||||
|
tables.map(sql => {
|
||||||
|
if (!sql.trim()) return
|
||||||
|
return prisma.$executeRawUnsafe(sql.trim()).catch(() => {
|
||||||
|
log.error('[prisma] failed to execute init sql >>> ', sql.trim())
|
||||||
|
})
|
||||||
|
})
|
||||||
|
)
|
||||||
|
} catch (e) {
|
||||||
|
dialog.showErrorBox('Failed to init prisma database', String(e))
|
||||||
|
app.exit()
|
||||||
|
}
|
||||||
|
log.info('[prisma] database initialized')
|
||||||
}
|
}
|
||||||
|
|
||||||
export default prisma
|
export default prisma
|
||||||
|
|
|
||||||
|
|
@ -1,58 +1,51 @@
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "AccountData" (
|
||||||
CREATE TABLE "AccountData" IF NOT EXISTS (
|
|
||||||
"id" TEXT NOT NULL PRIMARY KEY,
|
"id" TEXT NOT NULL PRIMARY KEY,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "AppData" (
|
||||||
CREATE TABLE "AppData" IF NOT EXISTS (
|
|
||||||
"id" TEXT NOT NULL PRIMARY KEY,
|
"id" TEXT NOT NULL PRIMARY KEY,
|
||||||
"value" TEXT NOT NULL
|
"value" TEXT NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "Track" (
|
||||||
CREATE TABLE "Track" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "Album" (
|
||||||
CREATE TABLE "Album" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "Artist" (
|
||||||
CREATE TABLE "Artist" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
|
||||||
CREATE TABLE "ArtistAlbum" IF NOT EXISTS (
|
CREATE TABLE IF NOT EXISTS "ArtistAlbum" (
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"hotAlbums" TEXT NOT NULL,
|
"hotAlbums" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "Playlist" (
|
||||||
CREATE TABLE "Playlist" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "Audio" (
|
||||||
CREATE TABLE "Audio" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"bitRate" INTEGER NOT NULL,
|
"bitRate" INTEGER NOT NULL,
|
||||||
"format" TEXT NOT NULL,
|
"format" TEXT NOT NULL,
|
||||||
|
|
@ -62,59 +55,23 @@ CREATE TABLE "Audio" IF NOT EXISTS (
|
||||||
"queriedAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
"queriedAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "Lyrics" (
|
||||||
CREATE TABLE "Lyrics" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "AppleMusicAlbum" (
|
||||||
CREATE TABLE "AppleMusicAlbum" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateTable
|
CREATE TABLE IF NOT EXISTS "AppleMusicArtist" (
|
||||||
CREATE TABLE "AppleMusicArtist" IF NOT EXISTS (
|
|
||||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
"json" TEXT NOT NULL,
|
"json" TEXT NOT NULL,
|
||||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
"updatedAt" DATETIME NOT NULL
|
"updatedAt" DATETIME NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "AccountData_id_key" ON "AccountData"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "AppData_id_key" ON "AppData"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "Track_id_key" ON "Track"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "Album_id_key" ON "Album"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "Artist_id_key" ON "Artist"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "ArtistAlbum_id_key" ON "ArtistAlbum"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "Playlist_id_key" ON "Playlist"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "Audio_id_key" ON "Audio"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "Lyrics_id_key" ON "Lyrics"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "AppleMusicAlbum_id_key" ON "AppleMusicAlbum"("id");
|
|
||||||
|
|
||||||
-- CreateIndex
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS "AppleMusicArtist_id_key" ON "AppleMusicArtist"("id");
|
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
"main": "./main/index.js",
|
"main": "./main/index.js",
|
||||||
"author": "*",
|
"author": "*",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"post-install": "tsx scripts/build.sqlite3.ts",
|
"postinstall": "prisma generate",
|
||||||
"dev": "tsx scripts/build.main.ts --watch",
|
"dev": "tsx scripts/build.main.ts --watch",
|
||||||
"build": "tsx scripts/build.main.ts",
|
"build": "tsx scripts/build.main.ts",
|
||||||
"pack": "electron-builder build -c .electron-builder.config.js",
|
"pack": "electron-builder build -c .electron-builder.config.js",
|
||||||
|
|
@ -25,6 +25,7 @@
|
||||||
"@fastify/cookie": "^8.3.0",
|
"@fastify/cookie": "^8.3.0",
|
||||||
"@fastify/http-proxy": "^8.4.0",
|
"@fastify/http-proxy": "^8.4.0",
|
||||||
"@fastify/multipart": "^7.4.0",
|
"@fastify/multipart": "^7.4.0",
|
||||||
|
"@fastify/static": "^6.6.1",
|
||||||
"@prisma/client": "^4.8.1",
|
"@prisma/client": "^4.8.1",
|
||||||
"@prisma/engines": "^4.9.0",
|
"@prisma/engines": "^4.9.0",
|
||||||
"@sentry/electron": "^3.0.7",
|
"@sentry/electron": "^3.0.7",
|
||||||
|
|
@ -35,6 +36,7 @@
|
||||||
"electron-log": "^4.4.8",
|
"electron-log": "^4.4.8",
|
||||||
"electron-store": "^8.1.0",
|
"electron-store": "^8.1.0",
|
||||||
"fast-folder-size": "^1.7.1",
|
"fast-folder-size": "^1.7.1",
|
||||||
|
"fastify": "^4.5.3",
|
||||||
"pretty-bytes": "^6.0.0",
|
"pretty-bytes": "^6.0.0",
|
||||||
"prisma": "^4.8.1",
|
"prisma": "^4.8.1",
|
||||||
"ytdl-core": "^4.11.2"
|
"ytdl-core": "^4.11.2"
|
||||||
|
|
@ -44,7 +46,7 @@
|
||||||
"axios": "^1.2.1",
|
"axios": "^1.2.1",
|
||||||
"cross-env": "^7.0.3",
|
"cross-env": "^7.0.3",
|
||||||
"dotenv": "^16.0.3",
|
"dotenv": "^16.0.3",
|
||||||
"electron": "^22.0.0",
|
"electron": "^22.1.0",
|
||||||
"electron-builder": "23.6.0",
|
"electron-builder": "23.6.0",
|
||||||
"electron-devtools-installer": "^3.2.0",
|
"electron-devtools-installer": "^3.2.0",
|
||||||
"electron-rebuild": "^3.2.9",
|
"electron-rebuild": "^3.2.9",
|
||||||
|
|
|
||||||
|
|
@ -1,206 +0,0 @@
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
|
|
||||||
const {
|
|
||||||
Decimal,
|
|
||||||
objectEnumValues,
|
|
||||||
makeStrictEnum
|
|
||||||
} = require('./runtime/index-browser')
|
|
||||||
|
|
||||||
|
|
||||||
const Prisma = {}
|
|
||||||
|
|
||||||
exports.Prisma = Prisma
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Prisma Client JS version: 4.8.1
|
|
||||||
* Query Engine version: d6e67a83f971b175a593ccc12e15c4a757f93ffe
|
|
||||||
*/
|
|
||||||
Prisma.prismaVersion = {
|
|
||||||
client: "4.8.1",
|
|
||||||
engine: "d6e67a83f971b175a593ccc12e15c4a757f93ffe"
|
|
||||||
}
|
|
||||||
|
|
||||||
Prisma.PrismaClientKnownRequestError = () => {
|
|
||||||
throw new Error(`PrismaClientKnownRequestError is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)};
|
|
||||||
Prisma.PrismaClientUnknownRequestError = () => {
|
|
||||||
throw new Error(`PrismaClientUnknownRequestError is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.PrismaClientRustPanicError = () => {
|
|
||||||
throw new Error(`PrismaClientRustPanicError is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.PrismaClientInitializationError = () => {
|
|
||||||
throw new Error(`PrismaClientInitializationError is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.PrismaClientValidationError = () => {
|
|
||||||
throw new Error(`PrismaClientValidationError is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.NotFoundError = () => {
|
|
||||||
throw new Error(`NotFoundError is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.Decimal = Decimal
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Re-export of sql-template-tag
|
|
||||||
*/
|
|
||||||
Prisma.sql = () => {
|
|
||||||
throw new Error(`sqltag is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.empty = () => {
|
|
||||||
throw new Error(`empty is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.join = () => {
|
|
||||||
throw new Error(`join is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.raw = () => {
|
|
||||||
throw new Error(`raw is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)}
|
|
||||||
Prisma.validator = () => (val) => val
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Shorthand utilities for JSON filtering
|
|
||||||
*/
|
|
||||||
Prisma.DbNull = objectEnumValues.instances.DbNull
|
|
||||||
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
|
||||||
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
|
||||||
|
|
||||||
Prisma.NullTypes = {
|
|
||||||
DbNull: objectEnumValues.classes.DbNull,
|
|
||||||
JsonNull: objectEnumValues.classes.JsonNull,
|
|
||||||
AnyNull: objectEnumValues.classes.AnyNull
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enums
|
|
||||||
*/
|
|
||||||
// Based on
|
|
||||||
// https://github.com/microsoft/TypeScript/issues/3192#issuecomment-261720275
|
|
||||||
function makeEnum(x) { return x; }
|
|
||||||
|
|
||||||
exports.Prisma.AccountDataScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.AlbumScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.AppDataScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
value: 'value'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.AppleMusicAlbumScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.AppleMusicArtistScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.ArtistAlbumScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
hotAlbums: 'hotAlbums',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.ArtistScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.AudioScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
bitRate: 'bitRate',
|
|
||||||
format: 'format',
|
|
||||||
source: 'source',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt',
|
|
||||||
queriedAt: 'queriedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.LyricsScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.PlaylistScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.SortOrder = makeEnum({
|
|
||||||
asc: 'asc',
|
|
||||||
desc: 'desc'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.TrackScalarFieldEnum = makeEnum({
|
|
||||||
id: 'id',
|
|
||||||
json: 'json',
|
|
||||||
createdAt: 'createdAt',
|
|
||||||
updatedAt: 'updatedAt'
|
|
||||||
});
|
|
||||||
|
|
||||||
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
|
||||||
Serializable: 'Serializable'
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
exports.Prisma.ModelName = makeEnum({
|
|
||||||
AccountData: 'AccountData',
|
|
||||||
AppData: 'AppData',
|
|
||||||
Track: 'Track',
|
|
||||||
Album: 'Album',
|
|
||||||
Artist: 'Artist',
|
|
||||||
ArtistAlbum: 'ArtistAlbum',
|
|
||||||
Playlist: 'Playlist',
|
|
||||||
Audio: 'Audio',
|
|
||||||
Lyrics: 'Lyrics',
|
|
||||||
AppleMusicAlbum: 'AppleMusicAlbum',
|
|
||||||
AppleMusicArtist: 'AppleMusicArtist'
|
|
||||||
});
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create the Client
|
|
||||||
*/
|
|
||||||
class PrismaClient {
|
|
||||||
constructor() {
|
|
||||||
throw new Error(
|
|
||||||
`PrismaClient is unable to be run in the browser.
|
|
||||||
In case this error is unexpected for you, please report it in https://github.com/prisma/prisma/issues`,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.PrismaClient = PrismaClient
|
|
||||||
|
|
||||||
Object.assign(exports, Prisma)
|
|
||||||
12729
packages/desktop/prisma/client/index.d.ts
vendored
12729
packages/desktop/prisma/client/index.d.ts
vendored
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
|
|
@ -1,6 +0,0 @@
|
||||||
{
|
|
||||||
"name": ".prisma/client",
|
|
||||||
"main": "index.js",
|
|
||||||
"types": "index.d.ts",
|
|
||||||
"browser": "index-browser.js"
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,323 +0,0 @@
|
||||||
declare class AnyNull extends NullTypesEnumValue {
|
|
||||||
}
|
|
||||||
|
|
||||||
declare class DbNull extends NullTypesEnumValue {
|
|
||||||
}
|
|
||||||
|
|
||||||
export declare namespace Decimal {
|
|
||||||
export type Constructor = typeof Decimal;
|
|
||||||
export type Instance = Decimal;
|
|
||||||
export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
||||||
export type Modulo = Rounding | 9;
|
|
||||||
export type Value = string | number | Decimal;
|
|
||||||
|
|
||||||
// http://mikemcl.github.io/decimal.js/#constructor-properties
|
|
||||||
export interface Config {
|
|
||||||
precision?: number;
|
|
||||||
rounding?: Rounding;
|
|
||||||
toExpNeg?: number;
|
|
||||||
toExpPos?: number;
|
|
||||||
minE?: number;
|
|
||||||
maxE?: number;
|
|
||||||
crypto?: boolean;
|
|
||||||
modulo?: Modulo;
|
|
||||||
defaults?: boolean;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export declare class Decimal {
|
|
||||||
readonly d: number[];
|
|
||||||
readonly e: number;
|
|
||||||
readonly s: number;
|
|
||||||
private readonly toStringTag: string;
|
|
||||||
|
|
||||||
constructor(n: Decimal.Value);
|
|
||||||
|
|
||||||
absoluteValue(): Decimal;
|
|
||||||
abs(): Decimal;
|
|
||||||
|
|
||||||
ceil(): Decimal;
|
|
||||||
|
|
||||||
clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal;
|
|
||||||
clamp(min: Decimal.Value, max: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
comparedTo(n: Decimal.Value): number;
|
|
||||||
cmp(n: Decimal.Value): number;
|
|
||||||
|
|
||||||
cosine(): Decimal;
|
|
||||||
cos(): Decimal;
|
|
||||||
|
|
||||||
cubeRoot(): Decimal;
|
|
||||||
cbrt(): Decimal;
|
|
||||||
|
|
||||||
decimalPlaces(): number;
|
|
||||||
dp(): number;
|
|
||||||
|
|
||||||
dividedBy(n: Decimal.Value): Decimal;
|
|
||||||
div(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
dividedToIntegerBy(n: Decimal.Value): Decimal;
|
|
||||||
divToInt(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
equals(n: Decimal.Value): boolean;
|
|
||||||
eq(n: Decimal.Value): boolean;
|
|
||||||
|
|
||||||
floor(): Decimal;
|
|
||||||
|
|
||||||
greaterThan(n: Decimal.Value): boolean;
|
|
||||||
gt(n: Decimal.Value): boolean;
|
|
||||||
|
|
||||||
greaterThanOrEqualTo(n: Decimal.Value): boolean;
|
|
||||||
gte(n: Decimal.Value): boolean;
|
|
||||||
|
|
||||||
hyperbolicCosine(): Decimal;
|
|
||||||
cosh(): Decimal;
|
|
||||||
|
|
||||||
hyperbolicSine(): Decimal;
|
|
||||||
sinh(): Decimal;
|
|
||||||
|
|
||||||
hyperbolicTangent(): Decimal;
|
|
||||||
tanh(): Decimal;
|
|
||||||
|
|
||||||
inverseCosine(): Decimal;
|
|
||||||
acos(): Decimal;
|
|
||||||
|
|
||||||
inverseHyperbolicCosine(): Decimal;
|
|
||||||
acosh(): Decimal;
|
|
||||||
|
|
||||||
inverseHyperbolicSine(): Decimal;
|
|
||||||
asinh(): Decimal;
|
|
||||||
|
|
||||||
inverseHyperbolicTangent(): Decimal;
|
|
||||||
atanh(): Decimal;
|
|
||||||
|
|
||||||
inverseSine(): Decimal;
|
|
||||||
asin(): Decimal;
|
|
||||||
|
|
||||||
inverseTangent(): Decimal;
|
|
||||||
atan(): Decimal;
|
|
||||||
|
|
||||||
isFinite(): boolean;
|
|
||||||
|
|
||||||
isInteger(): boolean;
|
|
||||||
isInt(): boolean;
|
|
||||||
|
|
||||||
isNaN(): boolean;
|
|
||||||
|
|
||||||
isNegative(): boolean;
|
|
||||||
isNeg(): boolean;
|
|
||||||
|
|
||||||
isPositive(): boolean;
|
|
||||||
isPos(): boolean;
|
|
||||||
|
|
||||||
isZero(): boolean;
|
|
||||||
|
|
||||||
lessThan(n: Decimal.Value): boolean;
|
|
||||||
lt(n: Decimal.Value): boolean;
|
|
||||||
|
|
||||||
lessThanOrEqualTo(n: Decimal.Value): boolean;
|
|
||||||
lte(n: Decimal.Value): boolean;
|
|
||||||
|
|
||||||
logarithm(n?: Decimal.Value): Decimal;
|
|
||||||
log(n?: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
minus(n: Decimal.Value): Decimal;
|
|
||||||
sub(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
modulo(n: Decimal.Value): Decimal;
|
|
||||||
mod(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
naturalExponential(): Decimal;
|
|
||||||
exp(): Decimal;
|
|
||||||
|
|
||||||
naturalLogarithm(): Decimal;
|
|
||||||
ln(): Decimal;
|
|
||||||
|
|
||||||
negated(): Decimal;
|
|
||||||
neg(): Decimal;
|
|
||||||
|
|
||||||
plus(n: Decimal.Value): Decimal;
|
|
||||||
add(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
precision(includeZeros?: boolean): number;
|
|
||||||
sd(includeZeros?: boolean): number;
|
|
||||||
|
|
||||||
round(): Decimal;
|
|
||||||
|
|
||||||
sine() : Decimal;
|
|
||||||
sin() : Decimal;
|
|
||||||
|
|
||||||
squareRoot(): Decimal;
|
|
||||||
sqrt(): Decimal;
|
|
||||||
|
|
||||||
tangent() : Decimal;
|
|
||||||
tan() : Decimal;
|
|
||||||
|
|
||||||
times(n: Decimal.Value): Decimal;
|
|
||||||
mul(n: Decimal.Value) : Decimal;
|
|
||||||
|
|
||||||
toBinary(significantDigits?: number): string;
|
|
||||||
toBinary(significantDigits: number, rounding: Decimal.Rounding): string;
|
|
||||||
|
|
||||||
toDecimalPlaces(decimalPlaces?: number): Decimal;
|
|
||||||
toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal;
|
|
||||||
toDP(decimalPlaces?: number): Decimal;
|
|
||||||
toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal;
|
|
||||||
|
|
||||||
toExponential(decimalPlaces?: number): string;
|
|
||||||
toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string;
|
|
||||||
|
|
||||||
toFixed(decimalPlaces?: number): string;
|
|
||||||
toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string;
|
|
||||||
|
|
||||||
toFraction(max_denominator?: Decimal.Value): Decimal[];
|
|
||||||
|
|
||||||
toHexadecimal(significantDigits?: number): string;
|
|
||||||
toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string;
|
|
||||||
toHex(significantDigits?: number): string;
|
|
||||||
toHex(significantDigits: number, rounding?: Decimal.Rounding): string;
|
|
||||||
|
|
||||||
toJSON(): string;
|
|
||||||
|
|
||||||
toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal;
|
|
||||||
|
|
||||||
toNumber(): number;
|
|
||||||
|
|
||||||
toOctal(significantDigits?: number): string;
|
|
||||||
toOctal(significantDigits: number, rounding: Decimal.Rounding): string;
|
|
||||||
|
|
||||||
toPower(n: Decimal.Value): Decimal;
|
|
||||||
pow(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
toPrecision(significantDigits?: number): string;
|
|
||||||
toPrecision(significantDigits: number, rounding: Decimal.Rounding): string;
|
|
||||||
|
|
||||||
toSignificantDigits(significantDigits?: number): Decimal;
|
|
||||||
toSignificantDigits(significantDigits: number, rounding: Decimal.Rounding): Decimal;
|
|
||||||
toSD(significantDigits?: number): Decimal;
|
|
||||||
toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal;
|
|
||||||
|
|
||||||
toString(): string;
|
|
||||||
|
|
||||||
truncated(): Decimal;
|
|
||||||
trunc(): Decimal;
|
|
||||||
|
|
||||||
valueOf(): string;
|
|
||||||
|
|
||||||
static abs(n: Decimal.Value): Decimal;
|
|
||||||
static acos(n: Decimal.Value): Decimal;
|
|
||||||
static acosh(n: Decimal.Value): Decimal;
|
|
||||||
static add(x: Decimal.Value, y: Decimal.Value): Decimal;
|
|
||||||
static asin(n: Decimal.Value): Decimal;
|
|
||||||
static asinh(n: Decimal.Value): Decimal;
|
|
||||||
static atan(n: Decimal.Value): Decimal;
|
|
||||||
static atanh(n: Decimal.Value): Decimal;
|
|
||||||
static atan2(y: Decimal.Value, x: Decimal.Value): Decimal;
|
|
||||||
static cbrt(n: Decimal.Value): Decimal;
|
|
||||||
static ceil(n: Decimal.Value): Decimal;
|
|
||||||
static clamp(n: Decimal.Value, min: Decimal.Value, max: Decimal.Value): Decimal;
|
|
||||||
static clone(object?: Decimal.Config): Decimal.Constructor;
|
|
||||||
static config(object: Decimal.Config): Decimal.Constructor;
|
|
||||||
static cos(n: Decimal.Value): Decimal;
|
|
||||||
static cosh(n: Decimal.Value): Decimal;
|
|
||||||
static div(x: Decimal.Value, y: Decimal.Value): Decimal;
|
|
||||||
static exp(n: Decimal.Value): Decimal;
|
|
||||||
static floor(n: Decimal.Value): Decimal;
|
|
||||||
static hypot(...n: Decimal.Value[]): Decimal;
|
|
||||||
static isDecimal(object: any): object is Decimal;
|
|
||||||
static ln(n: Decimal.Value): Decimal;
|
|
||||||
static log(n: Decimal.Value, base?: Decimal.Value): Decimal;
|
|
||||||
static log2(n: Decimal.Value): Decimal;
|
|
||||||
static log10(n: Decimal.Value): Decimal;
|
|
||||||
static max(...n: Decimal.Value[]): Decimal;
|
|
||||||
static min(...n: Decimal.Value[]): Decimal;
|
|
||||||
static mod(x: Decimal.Value, y: Decimal.Value): Decimal;
|
|
||||||
static mul(x: Decimal.Value, y: Decimal.Value): Decimal;
|
|
||||||
static noConflict(): Decimal.Constructor; // Browser only
|
|
||||||
static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal;
|
|
||||||
static random(significantDigits?: number): Decimal;
|
|
||||||
static round(n: Decimal.Value): Decimal;
|
|
||||||
static set(object: Decimal.Config): Decimal.Constructor;
|
|
||||||
static sign(n: Decimal.Value): number;
|
|
||||||
static sin(n: Decimal.Value): Decimal;
|
|
||||||
static sinh(n: Decimal.Value): Decimal;
|
|
||||||
static sqrt(n: Decimal.Value): Decimal;
|
|
||||||
static sub(x: Decimal.Value, y: Decimal.Value): Decimal;
|
|
||||||
static sum(...n: Decimal.Value[]): Decimal;
|
|
||||||
static tan(n: Decimal.Value): Decimal;
|
|
||||||
static tanh(n: Decimal.Value): Decimal;
|
|
||||||
static trunc(n: Decimal.Value): Decimal;
|
|
||||||
|
|
||||||
static readonly default?: Decimal.Constructor;
|
|
||||||
static readonly Decimal?: Decimal.Constructor;
|
|
||||||
|
|
||||||
static readonly precision: number;
|
|
||||||
static readonly rounding: Decimal.Rounding;
|
|
||||||
static readonly toExpNeg: number;
|
|
||||||
static readonly toExpPos: number;
|
|
||||||
static readonly minE: number;
|
|
||||||
static readonly maxE: number;
|
|
||||||
static readonly crypto: boolean;
|
|
||||||
static readonly modulo: Decimal.Modulo;
|
|
||||||
|
|
||||||
static readonly ROUND_UP: 0;
|
|
||||||
static readonly ROUND_DOWN: 1;
|
|
||||||
static readonly ROUND_CEIL: 2;
|
|
||||||
static readonly ROUND_FLOOR: 3;
|
|
||||||
static readonly ROUND_HALF_UP: 4;
|
|
||||||
static readonly ROUND_HALF_DOWN: 5;
|
|
||||||
static readonly ROUND_HALF_EVEN: 6;
|
|
||||||
static readonly ROUND_HALF_CEIL: 7;
|
|
||||||
static readonly ROUND_HALF_FLOOR: 8;
|
|
||||||
static readonly EUCLID: 9;
|
|
||||||
}
|
|
||||||
|
|
||||||
declare class JsonNull extends NullTypesEnumValue {
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generates more strict variant of an enum which, unlike regular enum,
|
|
||||||
* throws on non-existing property access. This can be useful in following situations:
|
|
||||||
* - we have an API, that accepts both `undefined` and `SomeEnumType` as an input
|
|
||||||
* - enum values are generated dynamically from DMMF.
|
|
||||||
*
|
|
||||||
* In that case, if using normal enums and no compile-time typechecking, using non-existing property
|
|
||||||
* will result in `undefined` value being used, which will be accepted. Using strict enum
|
|
||||||
* in this case will help to have a runtime exception, telling you that you are probably doing something wrong.
|
|
||||||
*
|
|
||||||
* Note: if you need to check for existence of a value in the enum you can still use either
|
|
||||||
* `in` operator or `hasOwnProperty` function.
|
|
||||||
*
|
|
||||||
* @param definition
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export declare function makeStrictEnum<T extends Record<PropertyKey, string | number>>(definition: T): T;
|
|
||||||
|
|
||||||
declare class NullTypesEnumValue extends ObjectEnumValue {
|
|
||||||
_getNamespace(): string;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Base class for unique values of object-valued enums.
|
|
||||||
*/
|
|
||||||
declare abstract class ObjectEnumValue {
|
|
||||||
constructor(arg?: symbol);
|
|
||||||
abstract _getNamespace(): string;
|
|
||||||
_getName(): string;
|
|
||||||
toString(): string;
|
|
||||||
}
|
|
||||||
|
|
||||||
export declare const objectEnumValues: {
|
|
||||||
classes: {
|
|
||||||
DbNull: typeof DbNull;
|
|
||||||
JsonNull: typeof JsonNull;
|
|
||||||
AnyNull: typeof AnyNull;
|
|
||||||
};
|
|
||||||
instances: {
|
|
||||||
DbNull: DbNull;
|
|
||||||
JsonNull: JsonNull;
|
|
||||||
AnyNull: AnyNull;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
export { }
|
|
||||||
File diff suppressed because it is too large
Load diff
2075
packages/desktop/prisma/client/runtime/index.d.ts
vendored
2075
packages/desktop/prisma/client/runtime/index.d.ts
vendored
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
|
|
@ -1,87 +0,0 @@
|
||||||
generator client {
|
|
||||||
provider = "prisma-client-js"
|
|
||||||
output = "./client"
|
|
||||||
binaryTargets = ["native", "darwin", "darwin-arm64"]
|
|
||||||
}
|
|
||||||
|
|
||||||
datasource db {
|
|
||||||
provider = "sqlite"
|
|
||||||
url = env("DATABASE_URL")
|
|
||||||
}
|
|
||||||
|
|
||||||
model AccountData {
|
|
||||||
id String @id @unique
|
|
||||||
json String
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model AppData {
|
|
||||||
id String @id @unique
|
|
||||||
value String
|
|
||||||
}
|
|
||||||
|
|
||||||
model Track {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model Album {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model Artist {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model ArtistAlbum {
|
|
||||||
id Int @id @unique
|
|
||||||
hotAlbums String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model Playlist {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model Audio {
|
|
||||||
id Int @id @unique
|
|
||||||
bitRate Int
|
|
||||||
format String
|
|
||||||
source String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
queriedAt DateTime @default(now())
|
|
||||||
}
|
|
||||||
|
|
||||||
model Lyrics {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model AppleMusicAlbum {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
|
|
||||||
model AppleMusicArtist {
|
|
||||||
id Int @id @unique
|
|
||||||
json String
|
|
||||||
createdAt DateTime @default(now())
|
|
||||||
updatedAt DateTime @updatedAt
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
|
@ -1,155 +0,0 @@
|
||||||
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
||||||
const { rebuild } = require('electron-rebuild')
|
|
||||||
const fs = require('fs')
|
|
||||||
const minimist = require('minimist')
|
|
||||||
const pc = require('picocolors')
|
|
||||||
const releases = require('electron-releases')
|
|
||||||
const pkg = require(`${process.cwd()}/package.json`)
|
|
||||||
const axios = require('axios')
|
|
||||||
const { execSync } = require('child_process')
|
|
||||||
const { resolve } = require('path')
|
|
||||||
|
|
||||||
const isWindows = process.platform === 'win32'
|
|
||||||
const isMac = process.platform === 'darwin'
|
|
||||||
const isLinux = process.platform === 'linux'
|
|
||||||
|
|
||||||
const electronVersion = pkg.devDependencies.electron.replaceAll('^', '')
|
|
||||||
const betterSqlite3Version = pkg.dependencies['better-sqlite3'].replaceAll(
|
|
||||||
'^',
|
|
||||||
''
|
|
||||||
)
|
|
||||||
const electronModuleVersion = releases.find(r =>
|
|
||||||
r.version.includes(electronVersion)
|
|
||||||
)?.deps?.modules
|
|
||||||
if (!electronModuleVersion) {
|
|
||||||
console.error(
|
|
||||||
pc.red('Can not find electron module version in electron-releases')
|
|
||||||
)
|
|
||||||
process.exit(1)
|
|
||||||
}
|
|
||||||
const argv = minimist(process.argv.slice(2))
|
|
||||||
|
|
||||||
const projectDir = resolve(process.cwd(), '../../')
|
|
||||||
const tmpDir = resolve(projectDir, `./tmp/better-sqlite3`)
|
|
||||||
const binDir = resolve(projectDir, `./tmp/bin`)
|
|
||||||
console.log(pc.cyan(`projectDir=${projectDir}`))
|
|
||||||
console.log(pc.cyan(`binDir=${binDir}`))
|
|
||||||
|
|
||||||
if (!fs.existsSync(binDir)) {
|
|
||||||
console.log(pc.cyan(`Creating dist/binary directory: ${binDir}`))
|
|
||||||
fs.mkdirSync(binDir, {
|
|
||||||
recursive: true,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const download = async arch => {
|
|
||||||
console.log(pc.cyan(`Downloading for ${arch}...`))
|
|
||||||
if (!electronModuleVersion) {
|
|
||||||
console.log(pc.red('No electron module version found! Skip download.'))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
const fileName = `better-sqlite3-v${betterSqlite3Version}-electron-v${electronModuleVersion}-${process.platform}-${arch}`
|
|
||||||
const zipFileName = `${fileName}.tar.gz`
|
|
||||||
const url = `https://github.com/JoshuaWise/better-sqlite3/releases/download/v${betterSqlite3Version}/${zipFileName}`
|
|
||||||
if (!fs.existsSync(tmpDir)) {
|
|
||||||
fs.mkdirSync(tmpDir, {
|
|
||||||
recursive: true,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
await axios({
|
|
||||||
method: 'get',
|
|
||||||
url,
|
|
||||||
responseType: 'stream',
|
|
||||||
}).then(response => {
|
|
||||||
response.data.pipe(
|
|
||||||
fs.createWriteStream(resolve(tmpDir, `./${zipFileName}`))
|
|
||||||
)
|
|
||||||
return true
|
|
||||||
})
|
|
||||||
} catch (e) {
|
|
||||||
console.log(pc.red('Download failed! Skip download.'))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
execSync(`tar -xvzf ${tmpDir}/${zipFileName} -C ${tmpDir}`)
|
|
||||||
} catch (e) {
|
|
||||||
console.log(pc.red('Extract failed! Skip extract.'))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
fs.copyFileSync(
|
|
||||||
resolve(tmpDir, './build/Release/better_sqlite3.node'),
|
|
||||||
resolve(binDir, `./better_sqlite3_${process.platform}_${arch}.node`)
|
|
||||||
)
|
|
||||||
} catch (e) {
|
|
||||||
console.log(pc.red('Copy failed! Skip copy.', e))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
fs.rmSync(resolve(tmpDir, `./build`), { recursive: true, force: true })
|
|
||||||
} catch (e) {
|
|
||||||
console.log(pc.red('Delete failed! Skip delete.'))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
|
|
||||||
const build = async arch => {
|
|
||||||
const downloaded = await download(arch)
|
|
||||||
if (downloaded) return
|
|
||||||
|
|
||||||
console.log(pc.cyan(`Building for ${arch}...`))
|
|
||||||
await rebuild({
|
|
||||||
projectRootPath: projectDir,
|
|
||||||
buildPath: process.cwd(),
|
|
||||||
electronVersion,
|
|
||||||
arch,
|
|
||||||
onlyModules: ['better-sqlite3'],
|
|
||||||
force: true,
|
|
||||||
})
|
|
||||||
.then(() => {
|
|
||||||
console.info('Build succeeded')
|
|
||||||
|
|
||||||
const from = resolve(
|
|
||||||
projectDir,
|
|
||||||
`./node_modules/better-sqlite3/build/Release/better_sqlite3.node`
|
|
||||||
)
|
|
||||||
const to = resolve(
|
|
||||||
binDir,
|
|
||||||
`./better_sqlite3_${process.platform}_${arch}.node`
|
|
||||||
)
|
|
||||||
console.info(`copy ${from} to ${to}`)
|
|
||||||
fs.copyFileSync(from, to)
|
|
||||||
})
|
|
||||||
.catch(e => {
|
|
||||||
console.error(pc.red('Build failed!'))
|
|
||||||
console.error(pc.red(e))
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const main = async () => {
|
|
||||||
if (argv.x64 || argv.arm64 || argv.arm) {
|
|
||||||
if (argv.x64) await build('x64')
|
|
||||||
if (argv.arm64) await build('arm64')
|
|
||||||
if (argv.arm) await build('arm')
|
|
||||||
} else {
|
|
||||||
if (isWindows) {
|
|
||||||
await build('x64')
|
|
||||||
} else if (isMac) {
|
|
||||||
await build('x64')
|
|
||||||
await build('arm64')
|
|
||||||
} else if (isLinux) {
|
|
||||||
await build('x64')
|
|
||||||
await build('arm64')
|
|
||||||
await build('arm')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
main()
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
||||||
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
||||||
const path = require('path')
|
|
||||||
const pc = require('picocolors')
|
|
||||||
const fs = require('fs')
|
|
||||||
|
|
||||||
const archs = ['ia32', 'x64', 'armv7l', 'arm64', 'universal']
|
|
||||||
|
|
||||||
const projectDir = path.resolve(process.cwd(), '../../')
|
|
||||||
const binDir = `${projectDir}/tmp/bin`
|
|
||||||
console.log(pc.cyan(`projectDir=${projectDir}`))
|
|
||||||
console.log(pc.cyan(`binDir=${binDir}`))
|
|
||||||
|
|
||||||
exports.default = async function (context) {
|
|
||||||
// console.log(context)
|
|
||||||
const platform = context.electronPlatformName
|
|
||||||
const arch = archs?.[context.arch]
|
|
||||||
|
|
||||||
// Mac
|
|
||||||
if (platform === 'darwin') {
|
|
||||||
if (arch === 'universal') return // Skip universal we already copy binary for x64 and arm64
|
|
||||||
if (arch !== 'x64' && arch !== 'arm64') return // Skip other archs
|
|
||||||
|
|
||||||
const from = `${binDir}/better_sqlite3_darwin_${arch}.node`
|
|
||||||
const to = `${context.appOutDir}/${context.packager.appInfo.productFilename}.app/Contents/Resources/bin/better_sqlite3.node`
|
|
||||||
console.info(`copy ${from} to ${to}`)
|
|
||||||
|
|
||||||
const toFolder = to.replace('/better_sqlite3.node', '')
|
|
||||||
if (!fs.existsSync(toFolder)) {
|
|
||||||
fs.mkdirSync(toFolder, {
|
|
||||||
recursive: true,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
fs.copyFileSync(from, to)
|
|
||||||
} catch (e) {
|
|
||||||
console.log(pc.red('Copy failed! Process stopped.'))
|
|
||||||
throw e
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (platform === 'win32') {
|
|
||||||
if (arch !== 'x64') return // Skip other archs
|
|
||||||
|
|
||||||
const from = `${binDir}/better_sqlite3_win32_${arch}.node`
|
|
||||||
const to = `${context.appOutDir}/resources/bin/better_sqlite3.node`
|
|
||||||
console.info(`copy ${from} to ${to}`)
|
|
||||||
|
|
||||||
const toFolder = to.replace('/better_sqlite3.node', '')
|
|
||||||
if (!fs.existsSync(toFolder)) {
|
|
||||||
fs.mkdirSync(toFolder, {
|
|
||||||
recursive: true,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
fs.copyFileSync(from, to)
|
|
||||||
} catch (e) {
|
|
||||||
console.log(pc.red('Copy failed! Process stopped.'))
|
|
||||||
throw e
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -3,12 +3,12 @@ import AutoLoad, { AutoloadPluginOptions } from '@fastify/autoload'
|
||||||
import { FastifyPluginAsync } from 'fastify'
|
import { FastifyPluginAsync } from 'fastify'
|
||||||
|
|
||||||
const app: FastifyPluginAsync<AutoloadPluginOptions> = async (fastify, opts) => {
|
const app: FastifyPluginAsync<AutoloadPluginOptions> = async (fastify, opts) => {
|
||||||
void fastify.register(AutoLoad, {
|
fastify.register(AutoLoad, {
|
||||||
dir: join(__dirname, 'plugins'),
|
dir: join(__dirname, 'plugins'),
|
||||||
options: opts,
|
options: opts,
|
||||||
})
|
})
|
||||||
|
|
||||||
void fastify.register(AutoLoad, {
|
fastify.register(AutoLoad, {
|
||||||
dir: join(__dirname, 'routes'),
|
dir: join(__dirname, 'routes'),
|
||||||
options: opts,
|
options: opts,
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,6 @@ const album: FastifyPluginAsync = async (fastify, opts): Promise<void> => {
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
url: `/albums/${album.id}`,
|
url: `/albums/${album.id}`,
|
||||||
params: {
|
params: {
|
||||||
'fields[albums]': 'editorialNotes',
|
|
||||||
'omit[resource:albums]': 'relationships',
|
'omit[resource:albums]': 'relationships',
|
||||||
l: lang === 'zh-CN' ? 'en-US' : 'zh-CN',
|
l: lang === 'zh-CN' ? 'en-US' : 'zh-CN',
|
||||||
},
|
},
|
||||||
|
|
@ -114,7 +113,12 @@ const album: FastifyPluginAsync = async (fastify, opts): Promise<void> => {
|
||||||
.create({
|
.create({
|
||||||
data: {
|
data: {
|
||||||
...data,
|
...data,
|
||||||
editorialNote: { create: editorialNote },
|
editorialNote: {
|
||||||
|
connectOrCreate: {
|
||||||
|
where: { id: data.id },
|
||||||
|
create: editorialNote,
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
.catch(e => console.error(e))
|
.catch(e => console.error(e))
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,12 @@ const artist: FastifyPluginAsync = async (fastify, opts): Promise<void> => {
|
||||||
.create({
|
.create({
|
||||||
data: {
|
data: {
|
||||||
...data,
|
...data,
|
||||||
artistBio: { create: artistBio },
|
artistBio: {
|
||||||
|
connectOrCreate: {
|
||||||
|
where: { id: data.id },
|
||||||
|
create: artistBio,
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
.catch(e => console.error(e))
|
.catch(e => console.error(e))
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,11 @@
|
||||||
import axios, {
|
import axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'
|
||||||
AxiosError,
|
|
||||||
AxiosInstance,
|
|
||||||
AxiosRequestConfig,
|
|
||||||
AxiosResponse,
|
|
||||||
} from 'axios'
|
|
||||||
|
|
||||||
export const baseURL = 'https://amp-api.music.apple.com/v1/catalog/us'
|
export const baseURL = 'https://amp-api.music.apple.com/v1/catalog/us'
|
||||||
|
|
||||||
export const headers = {
|
export const headers = {
|
||||||
Authority: 'amp-api.music.apple.com',
|
Authority: 'amp-api.music.apple.com',
|
||||||
Accept: '*/*',
|
Accept: '*/*',
|
||||||
Authorization:
|
Authorization: process.env.APPLE_MUSIC_TOKEN || '',
|
||||||
'Bearer eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IldlYlBsYXlLaWQifQ.eyJpc3MiOiJBTVBXZWJQbGF5IiwiaWF0IjoxNjYxNDQwNDMyLCJleHAiOjE2NzY5OTI0MzIsInJvb3RfaHR0cHNfb3JpZ2luIjpbImFwcGxlLmNvbSJdfQ.z4BMv9_O4MpMK2iFhYkDqPsx53soPSnlXXK3jm99pHqGOrZADvTgEUw2U7_B1W0MAtFiWBYhYcGvWrzaOig6Bw',
|
|
||||||
Referer: 'https://music.apple.com/',
|
Referer: 'https://music.apple.com/',
|
||||||
'Sec-Fetch-Dest': 'empty',
|
'Sec-Fetch-Dest': 'empty',
|
||||||
'Sec-Fetch-Mode': 'cors',
|
'Sec-Fetch-Mode': 'cors',
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ export default function useLyric(params: FetchLyricParams) {
|
||||||
key,
|
key,
|
||||||
async () => {
|
async () => {
|
||||||
// fetch from cache as initial data
|
// fetch from cache as initial data
|
||||||
const cache = window.ipcRenderer?.invoke(IpcChannels.GetApiCache, {
|
const cache = await window.ipcRenderer?.invoke(IpcChannels.GetApiCache, {
|
||||||
api: CacheAPIs.Lyric,
|
api: CacheAPIs.Lyric,
|
||||||
query: {
|
query: {
|
||||||
id: params.id,
|
id: params.id,
|
||||||
|
|
|
||||||
|
|
@ -12,10 +12,7 @@ const Artist = ({ artist }: { artist: Artist }) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div className='text-center' onMouseOver={() => prefetchArtist({ id: artist.id })}>
|
||||||
className='text-center'
|
|
||||||
onMouseOver={() => prefetchArtist({ id: artist.id })}
|
|
||||||
>
|
|
||||||
<Image
|
<Image
|
||||||
onClick={to}
|
onClick={to}
|
||||||
src={resizeImage(artist.img1v1Url, 'md')}
|
src={resizeImage(artist.img1v1Url, 'md')}
|
||||||
|
|
@ -41,10 +38,7 @@ const Placeholder = ({ row }: { row: number }) => {
|
||||||
return (
|
return (
|
||||||
<div className='no-scrollbar flex snap-x overflow-x-scroll lg:grid lg:w-auto lg:grid-cols-5 lg:gap-10'>
|
<div className='no-scrollbar flex snap-x overflow-x-scroll lg:grid lg:w-auto lg:grid-cols-5 lg:gap-10'>
|
||||||
{[...new Array(row * 5).keys()].map(i => (
|
{[...new Array(row * 5).keys()].map(i => (
|
||||||
<div
|
<div className='flex snap-start flex-col items-center px-2.5 lg:px-0' key={i}>
|
||||||
className='flex snap-start flex-col items-center px-2.5 lg:px-0'
|
|
||||||
key={i}
|
|
||||||
>
|
|
||||||
<div
|
<div
|
||||||
className='aspect-square w-full rounded-full bg-white dark:bg-neutral-800'
|
className='aspect-square w-full rounded-full bg-white dark:bg-neutral-800'
|
||||||
style={{
|
style={{
|
||||||
|
|
@ -73,7 +67,7 @@ const ArtistRow = ({
|
||||||
placeholderRow?: number
|
placeholderRow?: number
|
||||||
}) => {
|
}) => {
|
||||||
return (
|
return (
|
||||||
<div className={className}>
|
<div className={cx('@container', className)}>
|
||||||
{/* Title */}
|
{/* Title */}
|
||||||
{title && (
|
{title && (
|
||||||
<h4 className='mx-2.5 mb-6 text-12 font-medium uppercase dark:text-neutral-300 lg:mx-0 lg:text-14 lg:font-bold'>
|
<h4 className='mx-2.5 mb-6 text-12 font-medium uppercase dark:text-neutral-300 lg:mx-0 lg:text-14 lg:font-bold'>
|
||||||
|
|
@ -83,7 +77,7 @@ const ArtistRow = ({
|
||||||
|
|
||||||
{/* Artists */}
|
{/* Artists */}
|
||||||
{artists && (
|
{artists && (
|
||||||
<div className='no-scrollbar flex snap-x overflow-x-scroll lg:grid lg:w-auto lg:grid-cols-5 lg:gap-x-10 lg:gap-y-8'>
|
<div className='no-scrollbar grid w-auto grid-cols-4 gap-x-10 gap-y-8 @3xl:grid-cols-5 @7xl:grid-cols-7'>
|
||||||
{artists.map(artist => (
|
{artists.map(artist => (
|
||||||
<div className='snap-start px-2.5 lg:px-0' key={artist.id}>
|
<div className='snap-start px-2.5 lg:px-0' key={artist.id}>
|
||||||
<Artist artist={artist} key={artist.id} />
|
<Artist artist={artist} key={artist.id} />
|
||||||
|
|
|
||||||
|
|
@ -99,12 +99,12 @@ const CoverRow = ({
|
||||||
itemSubtitle?: ItemSubTitle
|
itemSubtitle?: ItemSubTitle
|
||||||
}) => {
|
}) => {
|
||||||
return (
|
return (
|
||||||
<div className={className}>
|
<div className={cx('@container', className)}>
|
||||||
{/* Title */}
|
{/* Title */}
|
||||||
{title && <h4 className='mb-6 text-14 font-bold uppercase dark:text-neutral-300'>{title}</h4>}
|
{title && <h4 className='mb-6 text-14 font-bold uppercase dark:text-neutral-300'>{title}</h4>}
|
||||||
|
|
||||||
{/* Items */}
|
{/* Items */}
|
||||||
<div className='grid grid-cols-3 gap-4 lg:gap-6 xl:grid-cols-4 2xl:grid-cols-5'>
|
<div className='grid grid-cols-3 gap-4 @lg:gap-6 @4xl:grid-cols-4 @7xl:grid-cols-5'>
|
||||||
{albums?.map(album => (
|
{albums?.map(album => (
|
||||||
<Album key={album.id} album={album} itemTitle={itemTitle} itemSubtitle={itemSubtitle} />
|
<Album key={album.id} album={album} itemTitle={itemTitle} itemSubtitle={itemSubtitle} />
|
||||||
))}
|
))}
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,10 @@ import uiStates from '../states/uiStates'
|
||||||
|
|
||||||
const VideoRow = ({ videos }: { videos: Video[] }) => {
|
const VideoRow = ({ videos }: { videos: Video[] }) => {
|
||||||
return (
|
return (
|
||||||
<div className='grid grid-cols-3 gap-6'>
|
<div className='@container'>
|
||||||
|
<div className='grid grid-cols-2 gap-6 @3xl:grid-cols-3 @7xl:grid-cols-4'>
|
||||||
{videos.map(video => (
|
{videos.map(video => (
|
||||||
<div
|
<div key={video.vid} onClick={() => (uiStates.playingVideoID = Number(video.vid))}>
|
||||||
key={video.vid}
|
|
||||||
onClick={() => (uiStates.playingVideoID = Number(video.vid))}
|
|
||||||
>
|
|
||||||
<img
|
<img
|
||||||
src={video.coverUrl}
|
src={video.coverUrl}
|
||||||
className='aspect-video w-full rounded-24 border border-white/5 object-contain'
|
className='aspect-video w-full rounded-24 border border-white/5 object-contain'
|
||||||
|
|
@ -19,6 +17,7 @@ const VideoRow = ({ videos }: { videos: Video[] }) => {
|
||||||
</div>
|
</div>
|
||||||
))}
|
))}
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@
|
||||||
"@emotion/css": "^11.10.5",
|
"@emotion/css": "^11.10.5",
|
||||||
"@sentry/react": "^7.29.0",
|
"@sentry/react": "^7.29.0",
|
||||||
"@sentry/tracing": "^7.29.0",
|
"@sentry/tracing": "^7.29.0",
|
||||||
|
"@tailwindcss/container-queries": "^0.1.0",
|
||||||
"@tanstack/react-query": "^4.20.9",
|
"@tanstack/react-query": "^4.20.9",
|
||||||
"@tanstack/react-query-devtools": "^4.20.9",
|
"@tanstack/react-query-devtools": "^4.20.9",
|
||||||
"ahooks": "^3.7.4",
|
"ahooks": "^3.7.4",
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,9 @@ const Header = () => {
|
||||||
const creatorLink = `/artist/${album?.artist.id}`
|
const creatorLink = `/artist/${album?.artist.id}`
|
||||||
const description = isLoadingAppleMusicAlbum
|
const description = isLoadingAppleMusicAlbum
|
||||||
? ''
|
? ''
|
||||||
: appleMusicAlbum?.editorialNote?.[i18n.language.replace('-', '_')] || album?.description
|
: appleMusicAlbum?.editorialNote?.[i18n.language.replace('-', '_')] ||
|
||||||
|
album?.description ||
|
||||||
|
appleMusicAlbum?.editorialNote?.en_US
|
||||||
const extraInfo = useMemo(() => {
|
const extraInfo = useMemo(() => {
|
||||||
const duration = album?.songs?.reduce((acc, cur) => acc + cur.dt, 0) || 0
|
const duration = album?.songs?.reduce((acc, cur) => acc + cur.dt, 0) || 0
|
||||||
const albumDuration = formatDuration(duration, i18n.language, 'hh[hr] mm[min]')
|
const albumDuration = formatDuration(duration, i18n.language, 'hh[hr] mm[min]')
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,9 @@ const ArtistInfo = ({ artist, isLoading }: { artist?: Artist; isLoading: boolean
|
||||||
|
|
||||||
const [isOpenDescription, setIsOpenDescription] = useState(false)
|
const [isOpenDescription, setIsOpenDescription] = useState(false)
|
||||||
const description =
|
const description =
|
||||||
artistFromApple?.artistBio?.[i18n.language.replace('-', '_')] || artist?.briefDesc
|
artistFromApple?.artistBio?.[i18n.language.replace('-', '_')] ||
|
||||||
|
artist?.briefDesc ||
|
||||||
|
artistFromApple?.artistBio?.en_US
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
|
|
|
||||||
|
|
@ -121,4 +121,7 @@ module.exports = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
plugins: [
|
||||||
|
require('@tailwindcss/container-queries'),
|
||||||
|
],
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,8 +21,8 @@ export function resizeImage(url: string, size: 'xs' | 'sm' | 'md' | 'lg'): strin
|
||||||
lg: '1024',
|
lg: '1024',
|
||||||
}
|
}
|
||||||
|
|
||||||
if (url.includes('mzstatic.com')) {
|
|
||||||
// from Apple Music
|
// from Apple Music
|
||||||
|
if (url.includes('mzstatic.com')) {
|
||||||
return url.replace('{w}', sizeMap[size]).replace('{h}', sizeMap[size])
|
return url.replace('{w}', sizeMap[size]).replace('{h}', sizeMap[size])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
220
pnpm-lock.yaml
generated
220
pnpm-lock.yaml
generated
|
|
@ -25,6 +25,7 @@ importers:
|
||||||
'@fastify/cookie': ^8.3.0
|
'@fastify/cookie': ^8.3.0
|
||||||
'@fastify/http-proxy': ^8.4.0
|
'@fastify/http-proxy': ^8.4.0
|
||||||
'@fastify/multipart': ^7.4.0
|
'@fastify/multipart': ^7.4.0
|
||||||
|
'@fastify/static': ^6.6.1
|
||||||
'@prisma/client': ^4.8.1
|
'@prisma/client': ^4.8.1
|
||||||
'@prisma/engines': ^4.9.0
|
'@prisma/engines': ^4.9.0
|
||||||
'@sentry/electron': ^3.0.7
|
'@sentry/electron': ^3.0.7
|
||||||
|
|
@ -36,7 +37,7 @@ importers:
|
||||||
compare-versions: ^4.1.3
|
compare-versions: ^4.1.3
|
||||||
cross-env: ^7.0.3
|
cross-env: ^7.0.3
|
||||||
dotenv: ^16.0.3
|
dotenv: ^16.0.3
|
||||||
electron: ^22.0.0
|
electron: ^22.1.0
|
||||||
electron-builder: 23.6.0
|
electron-builder: 23.6.0
|
||||||
electron-devtools-installer: ^3.2.0
|
electron-devtools-installer: ^3.2.0
|
||||||
electron-log: ^4.4.8
|
electron-log: ^4.4.8
|
||||||
|
|
@ -45,6 +46,7 @@ importers:
|
||||||
electron-store: ^8.1.0
|
electron-store: ^8.1.0
|
||||||
esbuild: ^0.16.10
|
esbuild: ^0.16.10
|
||||||
fast-folder-size: ^1.7.1
|
fast-folder-size: ^1.7.1
|
||||||
|
fastify: ^4.5.3
|
||||||
minimist: ^1.2.7
|
minimist: ^1.2.7
|
||||||
music-metadata: ^8.1.0
|
music-metadata: ^8.1.0
|
||||||
open-cli: ^7.1.0
|
open-cli: ^7.1.0
|
||||||
|
|
@ -58,12 +60,11 @@ importers:
|
||||||
vitest: ^0.20.3
|
vitest: ^0.20.3
|
||||||
wait-on: ^7.0.1
|
wait-on: ^7.0.1
|
||||||
ytdl-core: ^4.11.2
|
ytdl-core: ^4.11.2
|
||||||
ytsr: ^3.8.0
|
|
||||||
zx: ^7.1.1
|
|
||||||
dependencies:
|
dependencies:
|
||||||
'@fastify/cookie': 8.3.0
|
'@fastify/cookie': 8.3.0
|
||||||
'@fastify/http-proxy': 8.4.0
|
'@fastify/http-proxy': 8.4.0
|
||||||
'@fastify/multipart': 7.4.0
|
'@fastify/multipart': 7.4.0
|
||||||
|
'@fastify/static': 6.6.1
|
||||||
'@prisma/client': 4.8.1_prisma@4.8.1
|
'@prisma/client': 4.8.1_prisma@4.8.1
|
||||||
'@prisma/engines': 4.9.0
|
'@prisma/engines': 4.9.0
|
||||||
'@sentry/electron': 3.0.7
|
'@sentry/electron': 3.0.7
|
||||||
|
|
@ -74,17 +75,16 @@ importers:
|
||||||
electron-log: 4.4.8
|
electron-log: 4.4.8
|
||||||
electron-store: 8.1.0
|
electron-store: 8.1.0
|
||||||
fast-folder-size: 1.7.1
|
fast-folder-size: 1.7.1
|
||||||
|
fastify: 4.5.3
|
||||||
pretty-bytes: 6.0.0
|
pretty-bytes: 6.0.0
|
||||||
prisma: 4.8.1
|
prisma: 4.8.1
|
||||||
ytdl-core: 4.11.2
|
ytdl-core: 4.11.2
|
||||||
ytsr: 3.8.0
|
|
||||||
zx: 7.1.1
|
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@vitest/ui': 0.20.3
|
'@vitest/ui': 0.20.3
|
||||||
axios: 1.2.1
|
axios: 1.2.1
|
||||||
cross-env: 7.0.3
|
cross-env: 7.0.3
|
||||||
dotenv: 16.0.3
|
dotenv: 16.0.3
|
||||||
electron: 22.0.0
|
electron: 22.2.0
|
||||||
electron-builder: 23.6.0
|
electron-builder: 23.6.0
|
||||||
electron-devtools-installer: 3.2.0
|
electron-devtools-installer: 3.2.0
|
||||||
electron-rebuild: 3.2.9
|
electron-rebuild: 3.2.9
|
||||||
|
|
@ -150,6 +150,7 @@ importers:
|
||||||
'@storybook/builder-vite': ^0.1.35
|
'@storybook/builder-vite': ^0.1.35
|
||||||
'@storybook/react': ^6.5.5
|
'@storybook/react': ^6.5.5
|
||||||
'@storybook/testing-library': ^0.0.11
|
'@storybook/testing-library': ^0.0.11
|
||||||
|
'@tailwindcss/container-queries': ^0.1.0
|
||||||
'@tanstack/react-query': ^4.20.9
|
'@tanstack/react-query': ^4.20.9
|
||||||
'@tanstack/react-query-devtools': ^4.20.9
|
'@tanstack/react-query-devtools': ^4.20.9
|
||||||
'@testing-library/react': ^13.3.0
|
'@testing-library/react': ^13.3.0
|
||||||
|
|
@ -205,6 +206,7 @@ importers:
|
||||||
'@emotion/css': 11.10.5
|
'@emotion/css': 11.10.5
|
||||||
'@sentry/react': 7.29.0_react@18.2.0
|
'@sentry/react': 7.29.0_react@18.2.0
|
||||||
'@sentry/tracing': 7.29.0
|
'@sentry/tracing': 7.29.0
|
||||||
|
'@tailwindcss/container-queries': 0.1.0_tailwindcss@3.2.4
|
||||||
'@tanstack/react-query': 4.20.9_biqbaboplfbrettd7655fr4n2y
|
'@tanstack/react-query': 4.20.9_biqbaboplfbrettd7655fr4n2y
|
||||||
'@tanstack/react-query-devtools': 4.20.9_hin5uqs2feg5fwcu6eooischsu
|
'@tanstack/react-query-devtools': 4.20.9_hin5uqs2feg5fwcu6eooischsu
|
||||||
ahooks: 3.7.4_react@18.2.0
|
ahooks: 3.7.4_react@18.2.0
|
||||||
|
|
@ -3375,7 +3377,7 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/istanbul-lib-coverage': 2.0.4
|
'@types/istanbul-lib-coverage': 2.0.4
|
||||||
'@types/istanbul-reports': 3.0.1
|
'@types/istanbul-reports': 3.0.1
|
||||||
'@types/node': 18.6.4
|
'@types/node': 18.11.17
|
||||||
'@types/yargs': 15.0.14
|
'@types/yargs': 15.0.14
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
@ -5470,6 +5472,14 @@ packages:
|
||||||
defer-to-connect: 2.0.1
|
defer-to-connect: 2.0.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
/@tailwindcss/container-queries/0.1.0_tailwindcss@3.2.4:
|
||||||
|
resolution: {integrity: sha512-t1GeJ9P8ual160BvKy6Y1sG7bjChArMaK6iRXm3ZYjZGN2FTzmqb5ztsTDb9AsTSJD4NMHtsnaI2ielrXEk+hw==}
|
||||||
|
peerDependencies:
|
||||||
|
tailwindcss: '>=3.2.0'
|
||||||
|
dependencies:
|
||||||
|
tailwindcss: 3.2.4_postcss@8.4.20
|
||||||
|
dev: false
|
||||||
|
|
||||||
/@tanstack/match-sorter-utils/8.7.2:
|
/@tanstack/match-sorter-utils/8.7.2:
|
||||||
resolution: {integrity: sha512-bptNeoexeDB947fWoCPwUchPSx5FA9gwzU0bkXz0du5pT8Ud2+1ob+xOgHj6EF3VN0kdXtLhwjPyhY7/dJglkg==}
|
resolution: {integrity: sha512-bptNeoexeDB947fWoCPwUchPSx5FA9gwzU0bkXz0du5pT8Ud2+1ob+xOgHj6EF3VN0kdXtLhwjPyhY7/dJglkg==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
|
|
@ -5649,6 +5659,7 @@ packages:
|
||||||
resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
|
resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 18.11.17
|
'@types/node': 18.11.17
|
||||||
|
dev: true
|
||||||
|
|
||||||
/@types/glob/7.2.0:
|
/@types/glob/7.2.0:
|
||||||
resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
|
resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
|
||||||
|
|
@ -5750,6 +5761,7 @@ packages:
|
||||||
|
|
||||||
/@types/minimist/1.2.2:
|
/@types/minimist/1.2.2:
|
||||||
resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==}
|
resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/@types/ms/0.7.31:
|
/@types/ms/0.7.31:
|
||||||
resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==}
|
resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==}
|
||||||
|
|
@ -5768,6 +5780,7 @@ packages:
|
||||||
|
|
||||||
/@types/node/18.11.17:
|
/@types/node/18.11.17:
|
||||||
resolution: {integrity: sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==}
|
resolution: {integrity: sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/@types/node/18.6.4:
|
/@types/node/18.6.4:
|
||||||
resolution: {integrity: sha512-I4BD3L+6AWiUobfxZ49DlU43gtI+FTHSv9pE2Zekg6KjMpre4ByusaljW3vYSLJrvQ1ck1hUaeVu8HVlY3vzHg==}
|
resolution: {integrity: sha512-I4BD3L+6AWiUobfxZ49DlU43gtI+FTHSv9pE2Zekg6KjMpre4ByusaljW3vYSLJrvQ1ck1hUaeVu8HVlY3vzHg==}
|
||||||
|
|
@ -5804,10 +5817,6 @@ packages:
|
||||||
resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==}
|
resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@types/ps-tree/1.1.2:
|
|
||||||
resolution: {integrity: sha512-ZREFYlpUmPQJ0esjxoG1fMvB2HNaD3z+mjqdSosZvd3RalncI9NEur73P8ZJz4YQdL64CmV1w0RuqoRUlhQRBw==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/@types/qrcode/1.4.2:
|
/@types/qrcode/1.4.2:
|
||||||
resolution: {integrity: sha512-7uNT9L4WQTNJejHTSTdaJhfBSCN73xtXaHFyBJ8TSwiLhe4PRuTue7Iph0s2nG9R/ifUaSnGhLUOZavlBEqDWQ==}
|
resolution: {integrity: sha512-7uNT9L4WQTNJejHTSTdaJhfBSCN73xtXaHFyBJ8TSwiLhe4PRuTue7Iph0s2nG9R/ifUaSnGhLUOZavlBEqDWQ==}
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
@ -5904,10 +5913,6 @@ packages:
|
||||||
source-map: 0.6.1
|
source-map: 0.6.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@types/which/2.0.1:
|
|
||||||
resolution: {integrity: sha512-Jjakcv8Roqtio6w1gr0D7y6twbhx6gGgFGF5BLwajPpnOIOxFkakFhCq+LmyyeAz7BX6ULrjBOxdKaCDy+4+dQ==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/@types/yargs-parser/21.0.0:
|
/@types/yargs-parser/21.0.0:
|
||||||
resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==}
|
resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
@ -5934,7 +5939,7 @@ packages:
|
||||||
resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==}
|
resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==}
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 18.6.4
|
'@types/node': 18.11.17
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
|
@ -6351,12 +6356,10 @@ packages:
|
||||||
acorn: 7.4.1
|
acorn: 7.4.1
|
||||||
acorn-walk: 7.2.0
|
acorn-walk: 7.2.0
|
||||||
xtend: 4.0.2
|
xtend: 4.0.2
|
||||||
dev: true
|
|
||||||
|
|
||||||
/acorn-walk/7.2.0:
|
/acorn-walk/7.2.0:
|
||||||
resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
|
resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
|
||||||
engines: {node: '>=0.4.0'}
|
engines: {node: '>=0.4.0'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/acorn-walk/8.2.0:
|
/acorn-walk/8.2.0:
|
||||||
resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==}
|
resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==}
|
||||||
|
|
@ -6372,7 +6375,6 @@ packages:
|
||||||
resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
|
resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
|
||||||
engines: {node: '>=0.4.0'}
|
engines: {node: '>=0.4.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dev: true
|
|
||||||
|
|
||||||
/acorn/8.8.0:
|
/acorn/8.8.0:
|
||||||
resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==}
|
resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==}
|
||||||
|
|
@ -6661,7 +6663,6 @@ packages:
|
||||||
|
|
||||||
/arg/5.0.2:
|
/arg/5.0.2:
|
||||||
resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
|
resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/argparse/1.0.10:
|
/argparse/1.0.10:
|
||||||
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
|
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
|
||||||
|
|
@ -7654,7 +7655,6 @@ packages:
|
||||||
/camelcase-css/2.0.1:
|
/camelcase-css/2.0.1:
|
||||||
resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
|
resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
|
||||||
engines: {node: '>= 6'}
|
engines: {node: '>= 6'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/camelcase-keys/2.1.0:
|
/camelcase-keys/2.1.0:
|
||||||
resolution: {integrity: sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==}
|
resolution: {integrity: sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==}
|
||||||
|
|
@ -7779,6 +7779,7 @@ packages:
|
||||||
/chalk/5.0.1:
|
/chalk/5.0.1:
|
||||||
resolution: {integrity: sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==}
|
resolution: {integrity: sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==}
|
||||||
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
|
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/change-case/4.1.2:
|
/change-case/4.1.2:
|
||||||
resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==}
|
resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==}
|
||||||
|
|
@ -8531,7 +8532,6 @@ packages:
|
||||||
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
|
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dev: true
|
|
||||||
|
|
||||||
/csso/4.2.0:
|
/csso/4.2.0:
|
||||||
resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==}
|
resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==}
|
||||||
|
|
@ -8575,11 +8575,6 @@ packages:
|
||||||
engines: {node: '>= 6'}
|
engines: {node: '>= 6'}
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/data-uri-to-buffer/4.0.0:
|
|
||||||
resolution: {integrity: sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==}
|
|
||||||
engines: {node: '>= 12'}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/data-urls/3.0.2:
|
/data-urls/3.0.2:
|
||||||
resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==}
|
resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
|
|
@ -8763,7 +8758,6 @@ packages:
|
||||||
|
|
||||||
/defined/1.0.0:
|
/defined/1.0.0:
|
||||||
resolution: {integrity: sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==}
|
resolution: {integrity: sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/degenerator/3.0.2:
|
/degenerator/3.0.2:
|
||||||
resolution: {integrity: sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==}
|
resolution: {integrity: sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==}
|
||||||
|
|
@ -8859,11 +8853,9 @@ packages:
|
||||||
acorn-node: 1.8.2
|
acorn-node: 1.8.2
|
||||||
defined: 1.0.0
|
defined: 1.0.0
|
||||||
minimist: 1.2.7
|
minimist: 1.2.7
|
||||||
dev: true
|
|
||||||
|
|
||||||
/didyoumean/1.2.2:
|
/didyoumean/1.2.2:
|
||||||
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
|
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/diff/4.0.2:
|
/diff/4.0.2:
|
||||||
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
|
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
|
||||||
|
|
@ -8904,10 +8896,10 @@ packages:
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
dependencies:
|
dependencies:
|
||||||
path-type: 4.0.0
|
path-type: 4.0.0
|
||||||
|
dev: true
|
||||||
|
|
||||||
/dlv/1.1.3:
|
/dlv/1.1.3:
|
||||||
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
|
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/dmg-builder/23.6.0:
|
/dmg-builder/23.6.0:
|
||||||
resolution: {integrity: sha512-jFZvY1JohyHarIAlTbfQOk+HnceGjjAdFjVn3n8xlDWKsYNqbO4muca6qXEZTfGXeQMG7TYim6CeS5XKSfSsGA==}
|
resolution: {integrity: sha512-jFZvY1JohyHarIAlTbfQOk+HnceGjjAdFjVn3n8xlDWKsYNqbO4muca6qXEZTfGXeQMG7TYim6CeS5XKSfSsGA==}
|
||||||
|
|
@ -9064,10 +9056,6 @@ packages:
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/duplexer/0.1.2:
|
|
||||||
resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/duplexer2/0.1.4:
|
/duplexer2/0.1.4:
|
||||||
resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
|
resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
@ -9197,8 +9185,8 @@ packages:
|
||||||
resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==}
|
resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/electron/22.0.0:
|
/electron/22.2.0:
|
||||||
resolution: {integrity: sha512-cgRc4wjyM+81A0E8UGv1HNJjL1HBI5cWNh/DUIjzYvoUuiEM0SS0hAH/zaFQ18xOz2ced6Yih8SybpOiOYJhdg==}
|
resolution: {integrity: sha512-puRZSF2vWJ4pz3oetL5Td8LcuivTWz3MoAk/gjImHSN1B/2VJNEQlw1jGdkte+ppid2craOswE2lmCOZ7SwF1g==}
|
||||||
engines: {node: '>= 12.20.55'}
|
engines: {node: '>= 12.20.55'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
|
|
@ -10111,18 +10099,6 @@ packages:
|
||||||
resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
|
resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
|
||||||
engines: {node: '>= 0.6'}
|
engines: {node: '>= 0.6'}
|
||||||
|
|
||||||
/event-stream/3.3.4:
|
|
||||||
resolution: {integrity: sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==}
|
|
||||||
dependencies:
|
|
||||||
duplexer: 0.1.2
|
|
||||||
from: 0.1.7
|
|
||||||
map-stream: 0.1.0
|
|
||||||
pause-stream: 0.0.11
|
|
||||||
split: 0.3.3
|
|
||||||
stream-combiner: 0.0.4
|
|
||||||
through: 2.3.8
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/event-target-shim/5.0.1:
|
/event-target-shim/5.0.1:
|
||||||
resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
|
resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
|
|
@ -10454,14 +10430,6 @@ packages:
|
||||||
pend: 1.2.0
|
pend: 1.2.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/fetch-blob/3.2.0:
|
|
||||||
resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==}
|
|
||||||
engines: {node: ^12.20 || >= 14.13}
|
|
||||||
dependencies:
|
|
||||||
node-domexception: 1.0.0
|
|
||||||
web-streams-polyfill: 3.2.1
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/fetch-retry/5.0.3:
|
/fetch-retry/5.0.3:
|
||||||
resolution: {integrity: sha512-uJQyMrX5IJZkhoEUBQ3EjxkeiZkppBd5jS/fMTJmfZxLSiaQjv2zD0kTvuvkSH89uFvgSlB6ueGpjD3HWN7Bxw==}
|
resolution: {integrity: sha512-uJQyMrX5IJZkhoEUBQ3EjxkeiZkppBd5jS/fMTJmfZxLSiaQjv2zD0kTvuvkSH89uFvgSlB6ueGpjD3HWN7Bxw==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
@ -10741,13 +10709,6 @@ packages:
|
||||||
combined-stream: 1.0.8
|
combined-stream: 1.0.8
|
||||||
mime-types: 2.1.35
|
mime-types: 2.1.35
|
||||||
|
|
||||||
/formdata-polyfill/4.0.10:
|
|
||||||
resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==}
|
|
||||||
engines: {node: '>=12.20.0'}
|
|
||||||
dependencies:
|
|
||||||
fetch-blob: 3.2.0
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/forwarded/0.2.0:
|
/forwarded/0.2.0:
|
||||||
resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
|
resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
|
||||||
engines: {node: '>= 0.6'}
|
engines: {node: '>= 0.6'}
|
||||||
|
|
@ -10782,10 +10743,6 @@ packages:
|
||||||
resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
|
resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
|
||||||
engines: {node: '>= 0.6'}
|
engines: {node: '>= 0.6'}
|
||||||
|
|
||||||
/from/0.1.7:
|
|
||||||
resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/from2/2.3.0:
|
/from2/2.3.0:
|
||||||
resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
|
resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
@ -10800,6 +10757,7 @@ packages:
|
||||||
graceful-fs: 4.2.10
|
graceful-fs: 4.2.10
|
||||||
jsonfile: 6.1.0
|
jsonfile: 6.1.0
|
||||||
universalify: 2.0.0
|
universalify: 2.0.0
|
||||||
|
dev: true
|
||||||
|
|
||||||
/fs-extra/8.1.0:
|
/fs-extra/8.1.0:
|
||||||
resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
|
resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
|
||||||
|
|
@ -11051,7 +11009,6 @@ packages:
|
||||||
engines: {node: '>=10.13.0'}
|
engines: {node: '>=10.13.0'}
|
||||||
dependencies:
|
dependencies:
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
dev: true
|
|
||||||
|
|
||||||
/glob-promise/3.4.0_glob@7.2.3:
|
/glob-promise/3.4.0_glob@7.2.3:
|
||||||
resolution: {integrity: sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw==}
|
resolution: {integrity: sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw==}
|
||||||
|
|
@ -11153,17 +11110,6 @@ packages:
|
||||||
slash: 3.0.0
|
slash: 3.0.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/globby/13.1.2:
|
|
||||||
resolution: {integrity: sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==}
|
|
||||||
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
|
|
||||||
dependencies:
|
|
||||||
dir-glob: 3.0.1
|
|
||||||
fast-glob: 3.2.12
|
|
||||||
ignore: 5.2.0
|
|
||||||
merge2: 1.4.1
|
|
||||||
slash: 4.0.0
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/globby/9.2.0:
|
/globby/9.2.0:
|
||||||
resolution: {integrity: sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==}
|
resolution: {integrity: sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
|
|
@ -11685,6 +11631,7 @@ packages:
|
||||||
/ignore/5.2.0:
|
/ignore/5.2.0:
|
||||||
resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
|
resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
|
||||||
engines: {node: '>= 4'}
|
engines: {node: '>= 4'}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/image-size/0.5.5:
|
/image-size/0.5.5:
|
||||||
resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==}
|
resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==}
|
||||||
|
|
@ -12219,6 +12166,7 @@ packages:
|
||||||
|
|
||||||
/isexe/2.0.0:
|
/isexe/2.0.0:
|
||||||
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
|
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/isobject/2.1.0:
|
/isobject/2.1.0:
|
||||||
resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==}
|
resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==}
|
||||||
|
|
@ -12308,7 +12256,7 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 26.6.2
|
'@jest/types': 26.6.2
|
||||||
'@types/graceful-fs': 4.1.5
|
'@types/graceful-fs': 4.1.5
|
||||||
'@types/node': 18.6.4
|
'@types/node': 18.11.17
|
||||||
anymatch: 3.1.2
|
anymatch: 3.1.2
|
||||||
fb-watchman: 2.0.1
|
fb-watchman: 2.0.1
|
||||||
graceful-fs: 4.2.10
|
graceful-fs: 4.2.10
|
||||||
|
|
@ -12351,7 +12299,7 @@ packages:
|
||||||
engines: {node: '>= 10.14.2'}
|
engines: {node: '>= 10.14.2'}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 26.6.2
|
'@jest/types': 26.6.2
|
||||||
'@types/node': 18.6.4
|
'@types/node': 18.11.17
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
graceful-fs: 4.2.10
|
graceful-fs: 4.2.10
|
||||||
is-ci: 2.0.0
|
is-ci: 2.0.0
|
||||||
|
|
@ -12371,7 +12319,7 @@ packages:
|
||||||
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
|
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
|
||||||
engines: {node: '>= 10.13.0'}
|
engines: {node: '>= 10.13.0'}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 18.6.4
|
'@types/node': 18.11.17
|
||||||
merge-stream: 2.0.0
|
merge-stream: 2.0.0
|
||||||
supports-color: 8.1.1
|
supports-color: 8.1.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
@ -12552,6 +12500,7 @@ packages:
|
||||||
universalify: 2.0.0
|
universalify: 2.0.0
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
graceful-fs: 4.2.10
|
graceful-fs: 4.2.10
|
||||||
|
dev: true
|
||||||
|
|
||||||
/jsonpointer/5.0.1:
|
/jsonpointer/5.0.1:
|
||||||
resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==}
|
resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==}
|
||||||
|
|
@ -12664,7 +12613,6 @@ packages:
|
||||||
/lilconfig/2.0.6:
|
/lilconfig/2.0.6:
|
||||||
resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==}
|
resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/lines-and-columns/1.2.4:
|
/lines-and-columns/1.2.4:
|
||||||
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
|
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
|
||||||
|
|
@ -12952,10 +12900,6 @@ packages:
|
||||||
resolution: {integrity: sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==}
|
resolution: {integrity: sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/map-stream/0.1.0:
|
|
||||||
resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/map-visit/1.0.0:
|
/map-visit/1.0.0:
|
||||||
resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==}
|
resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==}
|
||||||
engines: {node: '>=0.10.0'}
|
engines: {node: '>=0.10.0'}
|
||||||
|
|
@ -13557,11 +13501,6 @@ packages:
|
||||||
minimatch: 3.1.2
|
minimatch: 3.1.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/node-domexception/1.0.0:
|
|
||||||
resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
|
|
||||||
engines: {node: '>=10.5.0'}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/node-fetch/2.6.7:
|
/node-fetch/2.6.7:
|
||||||
resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==}
|
resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==}
|
||||||
engines: {node: 4.x || >=6.0.0}
|
engines: {node: 4.x || >=6.0.0}
|
||||||
|
|
@ -13574,15 +13513,6 @@ packages:
|
||||||
whatwg-url: 5.0.0
|
whatwg-url: 5.0.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/node-fetch/3.2.10:
|
|
||||||
resolution: {integrity: sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==}
|
|
||||||
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
|
|
||||||
dependencies:
|
|
||||||
data-uri-to-buffer: 4.0.0
|
|
||||||
fetch-blob: 3.2.0
|
|
||||||
formdata-polyfill: 4.0.10
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/node-gyp-build/4.5.0:
|
/node-gyp-build/4.5.0:
|
||||||
resolution: {integrity: sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==}
|
resolution: {integrity: sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
|
|
@ -13756,7 +13686,6 @@ packages:
|
||||||
/object-hash/3.0.0:
|
/object-hash/3.0.0:
|
||||||
resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
|
resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
|
||||||
engines: {node: '>= 6'}
|
engines: {node: '>= 6'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/object-inspect/1.12.2:
|
/object-inspect/1.12.2:
|
||||||
resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==}
|
resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==}
|
||||||
|
|
@ -14254,12 +14183,6 @@ packages:
|
||||||
resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
|
resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/pause-stream/0.0.11:
|
|
||||||
resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==}
|
|
||||||
dependencies:
|
|
||||||
through: 2.3.8
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/pbkdf2/3.1.2:
|
/pbkdf2/3.1.2:
|
||||||
resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==}
|
resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==}
|
||||||
engines: {node: '>=0.12'}
|
engines: {node: '>=0.12'}
|
||||||
|
|
@ -14298,7 +14221,6 @@ packages:
|
||||||
/pify/2.3.0:
|
/pify/2.3.0:
|
||||||
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
|
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
|
||||||
engines: {node: '>=0.10.0'}
|
engines: {node: '>=0.10.0'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/pify/3.0.0:
|
/pify/3.0.0:
|
||||||
resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
|
resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
|
||||||
|
|
@ -14463,7 +14385,6 @@ packages:
|
||||||
postcss-value-parser: 4.2.0
|
postcss-value-parser: 4.2.0
|
||||||
read-cache: 1.0.0
|
read-cache: 1.0.0
|
||||||
resolve: 1.22.1
|
resolve: 1.22.1
|
||||||
dev: true
|
|
||||||
|
|
||||||
/postcss-js/4.0.0_postcss@8.4.20:
|
/postcss-js/4.0.0_postcss@8.4.20:
|
||||||
resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==}
|
resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==}
|
||||||
|
|
@ -14473,7 +14394,6 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
camelcase-css: 2.0.1
|
camelcase-css: 2.0.1
|
||||||
postcss: 8.4.20
|
postcss: 8.4.20
|
||||||
dev: true
|
|
||||||
|
|
||||||
/postcss-load-config/3.1.4_postcss@8.4.20:
|
/postcss-load-config/3.1.4_postcss@8.4.20:
|
||||||
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
|
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
|
||||||
|
|
@ -14490,7 +14410,6 @@ packages:
|
||||||
lilconfig: 2.0.6
|
lilconfig: 2.0.6
|
||||||
postcss: 8.4.20
|
postcss: 8.4.20
|
||||||
yaml: 1.10.2
|
yaml: 1.10.2
|
||||||
dev: true
|
|
||||||
|
|
||||||
/postcss-loader/4.3.0_gzaxsinx64nntyd3vmdqwl7coe:
|
/postcss-loader/4.3.0_gzaxsinx64nntyd3vmdqwl7coe:
|
||||||
resolution: {integrity: sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q==}
|
resolution: {integrity: sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q==}
|
||||||
|
|
@ -14563,7 +14482,6 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
postcss: 8.4.20
|
postcss: 8.4.20
|
||||||
postcss-selector-parser: 6.0.10
|
postcss-selector-parser: 6.0.10
|
||||||
dev: true
|
|
||||||
|
|
||||||
/postcss-prefix-selector/1.16.0_postcss@5.2.18:
|
/postcss-prefix-selector/1.16.0_postcss@5.2.18:
|
||||||
resolution: {integrity: sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q==}
|
resolution: {integrity: sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q==}
|
||||||
|
|
@ -14579,11 +14497,9 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
cssesc: 3.0.0
|
cssesc: 3.0.0
|
||||||
util-deprecate: 1.0.2
|
util-deprecate: 1.0.2
|
||||||
dev: true
|
|
||||||
|
|
||||||
/postcss-value-parser/4.2.0:
|
/postcss-value-parser/4.2.0:
|
||||||
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
|
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/postcss/5.2.18:
|
/postcss/5.2.18:
|
||||||
resolution: {integrity: sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==}
|
resolution: {integrity: sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==}
|
||||||
|
|
@ -14835,14 +14751,6 @@ packages:
|
||||||
resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
|
resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/ps-tree/1.2.0:
|
|
||||||
resolution: {integrity: sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==}
|
|
||||||
engines: {node: '>= 0.10'}
|
|
||||||
hasBin: true
|
|
||||||
dependencies:
|
|
||||||
event-stream: 3.3.4
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/psl/1.9.0:
|
/psl/1.9.0:
|
||||||
resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
|
resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
@ -14947,7 +14855,6 @@ packages:
|
||||||
/quick-lru/5.1.1:
|
/quick-lru/5.1.1:
|
||||||
resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==}
|
resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/ramda/0.28.0:
|
/ramda/0.28.0:
|
||||||
resolution: {integrity: sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==}
|
resolution: {integrity: sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==}
|
||||||
|
|
@ -15219,7 +15126,6 @@ packages:
|
||||||
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
|
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
|
||||||
dependencies:
|
dependencies:
|
||||||
pify: 2.3.0
|
pify: 2.3.0
|
||||||
dev: true
|
|
||||||
|
|
||||||
/read-config-file/6.2.0:
|
/read-config-file/6.2.0:
|
||||||
resolution: {integrity: sha512-gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==}
|
resolution: {integrity: sha512-gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==}
|
||||||
|
|
@ -16075,11 +15981,6 @@ packages:
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/slash/4.0.0:
|
|
||||||
resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
|
|
||||||
engines: {node: '>=12'}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/slice-ansi/3.0.0:
|
/slice-ansi/3.0.0:
|
||||||
resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==}
|
resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
|
|
@ -16266,12 +16167,6 @@ packages:
|
||||||
extend-shallow: 3.0.2
|
extend-shallow: 3.0.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/split/0.3.3:
|
|
||||||
resolution: {integrity: sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==}
|
|
||||||
dependencies:
|
|
||||||
through: 2.3.8
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/split2/3.2.2:
|
/split2/3.2.2:
|
||||||
resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==}
|
resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==}
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
@ -16393,12 +16288,6 @@ packages:
|
||||||
readable-stream: 2.3.7
|
readable-stream: 2.3.7
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/stream-combiner/0.0.4:
|
|
||||||
resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==}
|
|
||||||
dependencies:
|
|
||||||
duplexer: 0.1.2
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/stream-each/1.2.3:
|
/stream-each/1.2.3:
|
||||||
resolution: {integrity: sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==}
|
resolution: {integrity: sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==}
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
@ -16785,7 +16674,6 @@ packages:
|
||||||
resolve: 1.22.1
|
resolve: 1.22.1
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- ts-node
|
- ts-node
|
||||||
dev: true
|
|
||||||
|
|
||||||
/tapable/1.1.3:
|
/tapable/1.1.3:
|
||||||
resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==}
|
resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==}
|
||||||
|
|
@ -16977,10 +16865,6 @@ packages:
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/through/2.3.8:
|
|
||||||
resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/through2/2.0.5:
|
/through2/2.0.5:
|
||||||
resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
|
resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
@ -17577,6 +17461,7 @@ packages:
|
||||||
/universalify/2.0.0:
|
/universalify/2.0.0:
|
||||||
resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
|
resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
|
||||||
engines: {node: '>= 10.0.0'}
|
engines: {node: '>= 10.0.0'}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/unpipe/1.0.0:
|
/unpipe/1.0.0:
|
||||||
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
|
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
|
||||||
|
|
@ -18160,11 +18045,6 @@ packages:
|
||||||
resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==}
|
resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/web-streams-polyfill/3.2.1:
|
|
||||||
resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==}
|
|
||||||
engines: {node: '>= 8'}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/webidl-conversions/3.0.1:
|
/webidl-conversions/3.0.1:
|
||||||
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
|
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
@ -18380,6 +18260,7 @@ packages:
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
isexe: 2.0.0
|
isexe: 2.0.0
|
||||||
|
dev: true
|
||||||
|
|
||||||
/wide-align/1.1.5:
|
/wide-align/1.1.5:
|
||||||
resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==}
|
resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==}
|
||||||
|
|
@ -18642,7 +18523,6 @@ packages:
|
||||||
/xtend/4.0.2:
|
/xtend/4.0.2:
|
||||||
resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
|
resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
|
||||||
engines: {node: '>=0.4'}
|
engines: {node: '>=0.4'}
|
||||||
dev: true
|
|
||||||
|
|
||||||
/y18n/4.0.3:
|
/y18n/4.0.3:
|
||||||
resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==}
|
resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==}
|
||||||
|
|
@ -18666,11 +18546,6 @@ packages:
|
||||||
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
|
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
|
||||||
engines: {node: '>= 6'}
|
engines: {node: '>= 6'}
|
||||||
|
|
||||||
/yaml/2.1.1:
|
|
||||||
resolution: {integrity: sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw==}
|
|
||||||
engines: {node: '>= 14'}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/yargs-parser/18.1.3:
|
/yargs-parser/18.1.3:
|
||||||
resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
|
resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
|
|
@ -18754,33 +18629,6 @@ packages:
|
||||||
sax: 1.2.4
|
sax: 1.2.4
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/ytsr/3.8.0:
|
|
||||||
resolution: {integrity: sha512-R+RfYXvBBMAr2e4OxrQ5SBv5x/Mdhmcj1Q8TH0f2HK5d2jbhHOtK4BdzPvLriA6MDoMwqqX04GD8Rpf9UNtSTg==}
|
|
||||||
engines: {node: '>=8'}
|
|
||||||
dependencies:
|
|
||||||
miniget: 4.2.2
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/zwitch/1.0.5:
|
/zwitch/1.0.5:
|
||||||
resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==}
|
resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/zx/7.1.1:
|
|
||||||
resolution: {integrity: sha512-5YlTO2AJ+Ku2YuZKSSSqnUKuagcM/f/j4LmHs15O84Ch80Z9gzR09ZK3gR7GV+rc8IFpz2H/XNFtFVmj31yrZA==}
|
|
||||||
engines: {node: '>= 16.0.0'}
|
|
||||||
hasBin: true
|
|
||||||
dependencies:
|
|
||||||
'@types/fs-extra': 9.0.13
|
|
||||||
'@types/minimist': 1.2.2
|
|
||||||
'@types/node': 18.11.17
|
|
||||||
'@types/ps-tree': 1.1.2
|
|
||||||
'@types/which': 2.0.1
|
|
||||||
chalk: 5.0.1
|
|
||||||
fs-extra: 10.1.0
|
|
||||||
globby: 13.1.2
|
|
||||||
minimist: 1.2.7
|
|
||||||
node-fetch: 3.2.10
|
|
||||||
ps-tree: 1.2.0
|
|
||||||
which: 2.0.2
|
|
||||||
yaml: 2.1.1
|
|
||||||
dev: false
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue