mirror of
https://github.com/mifi/lossless-cut.git
synced 2024-11-21 18:02:35 +01:00
436 lines
12 KiB
JSON
436 lines
12 KiB
JSON
{
|
|
"name": "lossless-cut",
|
|
"productName": "LosslessCut",
|
|
"description": "The swiss army knife of lossless video/audio editing",
|
|
"copyright": "Copyright © 2021 ${author}",
|
|
"version": "3.58.0",
|
|
"main": "public/electron.js",
|
|
"homepage": "./",
|
|
"scripts": {
|
|
"start": "concurrently -k \"npm run start:frontend\" \"npm run start:electron\"",
|
|
"start:frontend": "cross-env vite --port 3001",
|
|
"start:electron": "wait-on tcp:3001 && electron .",
|
|
"icon-gen": "mkdirp icon-build build-resources/appx && node script/icon-gen.mjs",
|
|
"download-ffmpeg-darwin-x64": "mkdirp ffmpeg/darwin-x64 && cd ffmpeg/darwin-x64 && wget https://github.com/mifi/ffmpeg-build-script/releases/download/6.0/ffmpeg -O ffmpeg && wget https://github.com/mifi/ffmpeg-build-script/releases/download/6.0/ffprobe -O ffprobe && chmod +x ffmpeg && chmod +x ffprobe",
|
|
"download-ffmpeg-darwin-arm64": "mkdirp ffmpeg/darwin-arm64 && cd ffmpeg/darwin-arm64 && wget https://github.com/mifi/ffmpeg-builds/releases/download/6.0/ffmpeg-darwin-arm64-v6.0 -O ffmpeg && wget https://github.com/mifi/ffmpeg-builds/releases/download/6.0/ffprobe-darwin-arm64-v6.0 -O ffprobe && chmod +x ffmpeg && chmod +x ffprobe",
|
|
"download-ffmpeg-linux-x64": "mkdirp ffmpeg/linux-x64 && cd ffmpeg/linux-x64 && wget https://github.com/mifi/ffmpeg-builds/releases/download/6.0/ffmpeg-n6.0-12-ga6dc92968a-linux64-gpl-shared-6.0.tar.xz -O ffmpeg-ffprobe.xz && tar -xv -f ffmpeg-ffprobe.xz && mv ffmpeg-n6.0-12-ga6dc92968a-linux64-gpl-shared-6.0 extracted && mkdirp lib && mv extracted/bin/{ffmpeg,ffprobe} extracted/lib/lib*.so* lib",
|
|
"download-ffmpeg-win32-x64": "mkdirp ffmpeg/win32-x64 && cd ffmpeg/win32-x64 && npx download-cli https://github.com/mifi/ffmpeg-builds/releases/download/6.0/ffmpeg-n6.0-12-ga6dc92968a-win64-gpl-shared-6.0.zip --out . --filename ffmpeg-ffprobe.zip && 7z x ffmpeg-ffprobe.zip && mkdirp lib && cd ffmpeg-n6.0-12-ga6dc92968a-win64-gpl-shared-6.0/bin && npx shx mv ffmpeg.exe ffprobe.exe *.dll ../../lib",
|
|
"build": "yarn icon-gen && vite build --outDir vite-dist",
|
|
"test": "vitest",
|
|
"lint": "eslint --ext .jsx --ext .js . --ext .mjs",
|
|
"pack-mac": "electron-builder --mac -m dmg",
|
|
"prepack-mac": "yarn build",
|
|
"pack-mas-dev": "electron-builder --mac -m mas-dev -c.mas.provisioningProfile=LosslessCut_Dev.provisionprofile -c.mas.identity='Apple Development: Mikael Finstad (JH4PH8B3C8)'",
|
|
"prepack-mas-dev": "yarn build",
|
|
"pack-win": "electron-builder --win",
|
|
"prepack-win": "yarn build",
|
|
"postinstall": "patch-package && electron-builder install-app-deps",
|
|
"version": "node script/postversion.mjs && git add no.mifi.losslesscut.appdata.xml",
|
|
"pack-linux": "electron-builder --linux",
|
|
"prepack-linux": "yarn build",
|
|
"scan-i18n": "i18next --config i18next-parser.config.mjs",
|
|
"generate-licenses": "yarn licenses generate-disclaimer > licenses.txt && echo '\n\nffmpeg is licensed under GPL v2+:\n\nhttp://www.gnu.org/licenses/old-licenses/gpl-2.0.html' >> licenses.txt"
|
|
},
|
|
"author": {
|
|
"name": "Mikael Finstad",
|
|
"email": "finstaden@gmail.com",
|
|
"url": "https://mifi.no/losslesscut/"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/mifi/lossless-cut.git"
|
|
},
|
|
"license": "GPL-2.0-only",
|
|
"devDependencies": {
|
|
"@fontsource/open-sans": "^4.5.14",
|
|
"@radix-ui/react-switch": "^1.0.1",
|
|
"@types/sortablejs": "^1.15.0",
|
|
"@vitejs/plugin-react": "^3.1.0",
|
|
"color": "^3.1.0",
|
|
"concurrently": "^6.0.0",
|
|
"cross-env": "^7.0.3",
|
|
"csv-parse": "^4.15.3",
|
|
"csv-stringify": "^5.6.2",
|
|
"electron": "^27.0.0",
|
|
"electron-builder": "^24.6.3",
|
|
"electron-builder-notarize": "^1.5.1",
|
|
"electron-devtools-installer": "^3.2.0",
|
|
"eslint": "^7.32.0 || ^8.2.0",
|
|
"eslint-config-airbnb": "^19.0.4",
|
|
"eslint-plugin-import": "^2.25.3",
|
|
"eslint-plugin-jsx-a11y": "^6.5.1",
|
|
"eslint-plugin-react": "^7.28.0",
|
|
"eslint-plugin-react-hooks": "^4.3.0",
|
|
"evergreen-ui": "^6.13.1",
|
|
"fast-xml-parser": "^4.2.5",
|
|
"framer-motion": "^9.0.3",
|
|
"i18next-parser": "^7.6.0",
|
|
"icon-gen": "^3.0.0",
|
|
"immer": "^10.0.2",
|
|
"ky": "^0.33.1",
|
|
"luxon": "^3.3.0",
|
|
"mkdirp": "^1.0.3",
|
|
"mousetrap": "^1.6.5",
|
|
"p-map": "^5.5.0",
|
|
"patch-package": "^6.2.1",
|
|
"pify": "^5.0.0",
|
|
"pretty-bytes": "^6.0.0",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-i18next": "^12.1.5",
|
|
"react-icons": "^4.1.0",
|
|
"react-lottie-player": "^1.5.0",
|
|
"react-sortablejs": "^6.1.4",
|
|
"react-syntax-highlighter": "^15.4.3",
|
|
"react-use": "^17.4.0",
|
|
"scroll-into-view-if-needed": "^2.2.28",
|
|
"sharp": "^0.30.5",
|
|
"smpte-timecode": "^1.2.3",
|
|
"sortablejs": "^1.13.0",
|
|
"sweetalert2": "^11.0.0",
|
|
"sweetalert2-react-content": "^5.0.7",
|
|
"use-debounce": "^5.1.0",
|
|
"use-trace-update": "^1.3.0",
|
|
"uuid": "^8.3.2",
|
|
"vite": "^4.1.5",
|
|
"vitest": "^0.28.5",
|
|
"wait-on": "^7.0.1"
|
|
},
|
|
"dependencies": {
|
|
"@electron/remote": "^2.0.10",
|
|
"@radix-ui/colors": "^0.1.8",
|
|
"cue-parser": "^0.3.0",
|
|
"data-uri-to-buffer": "^4.0.0",
|
|
"electron-is-dev": "^2.0.0",
|
|
"electron-store": "5.1.1",
|
|
"electron-unhandled": "^4.0.1",
|
|
"execa": "5",
|
|
"express": "^4.18.2",
|
|
"express-async-handler": "^1.2.0",
|
|
"file-type": "16",
|
|
"file-url": "^3.0.0",
|
|
"fs-extra": "^8.1.0",
|
|
"github-api": "^3.2.2",
|
|
"i18next": "^22.4.10",
|
|
"i18next-fs-backend": "^2.1.1",
|
|
"json5": "^2.2.2",
|
|
"lodash": "^4.17.19",
|
|
"mime-types": "^2.1.14",
|
|
"morgan": "^1.10.0",
|
|
"semver": "^7.5.2",
|
|
"string-to-stream": "^1.1.1",
|
|
"strtok3": "^6.0.0",
|
|
"winston": "^3.8.1",
|
|
"yargs-parser": "^21.0.0"
|
|
},
|
|
"eslintConfig": {
|
|
"extends": "react-app"
|
|
},
|
|
"build": {
|
|
"directories": {
|
|
"buildResources": "build-resources"
|
|
},
|
|
"extraMetadata": {
|
|
"main": "vite-dist/electron.js"
|
|
},
|
|
"files": [
|
|
"vite-dist/**/*"
|
|
],
|
|
"asar": {
|
|
"smartUnpack": false
|
|
},
|
|
"appId": "no.mifi.losslesscut",
|
|
"artifactName": "${productName}-${os}-${arch}.${ext}",
|
|
"afterSign": "electron-builder-notarize",
|
|
"mac": {
|
|
"hardenedRuntime": true,
|
|
"appId": "no.mifi.losslesscut-mac",
|
|
"category": "public.app-category.productivity",
|
|
"target": [
|
|
{
|
|
"target": "mas",
|
|
"arch": "universal"
|
|
},
|
|
{
|
|
"target": "dmg",
|
|
"arch": [
|
|
"x64",
|
|
"arm64"
|
|
]
|
|
}
|
|
],
|
|
"electronLanguages": [
|
|
"en"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "ffmpeg/darwin-${arch}",
|
|
"to": "."
|
|
}
|
|
],
|
|
"icon": "icon-build/app.icns",
|
|
"fileAssociations": [
|
|
{
|
|
"ext": [
|
|
"webm",
|
|
"mkv",
|
|
"flv",
|
|
"vob",
|
|
"ogv",
|
|
"drc",
|
|
"gif",
|
|
"gifv",
|
|
"mng",
|
|
"avi",
|
|
"mts",
|
|
"m2ts",
|
|
"ts",
|
|
"mov",
|
|
"qt",
|
|
"wmv",
|
|
"yuv",
|
|
"rm",
|
|
"rmvb",
|
|
"asf",
|
|
"amv",
|
|
"mp4",
|
|
"m4v",
|
|
"mpg",
|
|
"mp2",
|
|
"mpeg",
|
|
"mpe",
|
|
"mpv",
|
|
"m2v",
|
|
"svi",
|
|
"3gp",
|
|
"3g2",
|
|
"mxf",
|
|
"roq",
|
|
"nsv",
|
|
"f4v",
|
|
"f4p",
|
|
"f4a",
|
|
"f4b"
|
|
],
|
|
"name": "Video",
|
|
"description": "Video files",
|
|
"role": "Viewer"
|
|
},
|
|
{
|
|
"ext": [
|
|
"aa",
|
|
"aac",
|
|
"aax",
|
|
"act",
|
|
"aiff",
|
|
"alac",
|
|
"amr",
|
|
"ape",
|
|
"au",
|
|
"awb",
|
|
"dct",
|
|
"dss",
|
|
"dvf",
|
|
"flac",
|
|
"gsm",
|
|
"iklax",
|
|
"ivs",
|
|
"m4a",
|
|
"m4b",
|
|
"m4p",
|
|
"mmf",
|
|
"mp3",
|
|
"mpc",
|
|
"msv",
|
|
"nmf",
|
|
"nsf",
|
|
"ogg",
|
|
"oga",
|
|
"mogg",
|
|
"opus",
|
|
"ra",
|
|
"rf64",
|
|
"sln",
|
|
"tta",
|
|
"voc",
|
|
"vox",
|
|
"wav",
|
|
"wma",
|
|
"wv",
|
|
"8svx",
|
|
"cda"
|
|
],
|
|
"name": "Audio",
|
|
"description": "Audio files",
|
|
"role": "Viewer"
|
|
}
|
|
]
|
|
},
|
|
"mas": {
|
|
"hardenedRuntime": false,
|
|
"entitlements": "entitlements.mas.plist",
|
|
"entitlementsInherit": "entitlements.mas.inherit.plist",
|
|
"provisioningProfile": "LosslessCut_Mac_App_Store_provisioning_profile.provisionprofile",
|
|
"binaries": [
|
|
"Contents/Resources/ffmpeg",
|
|
"Contents/Resources/ffprobe"
|
|
]
|
|
},
|
|
"win": {
|
|
"target": [
|
|
"7z",
|
|
"appx"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "ffmpeg/win32-${arch}/lib",
|
|
"to": "."
|
|
}
|
|
],
|
|
"icon": "icon-build/app.ico",
|
|
"fileAssociations": [
|
|
{
|
|
"ext": [
|
|
"webm",
|
|
"mkv",
|
|
"flv",
|
|
"vob",
|
|
"ogv",
|
|
"drc",
|
|
"gif",
|
|
"gifv",
|
|
"mng",
|
|
"avi",
|
|
"mts",
|
|
"m2ts",
|
|
"ts",
|
|
"mov",
|
|
"qt",
|
|
"wmv",
|
|
"yuv",
|
|
"rm",
|
|
"rmvb",
|
|
"asf",
|
|
"amv",
|
|
"mp4",
|
|
"m4v",
|
|
"mpg",
|
|
"mp2",
|
|
"mpeg",
|
|
"mpe",
|
|
"mpv",
|
|
"m2v",
|
|
"svi",
|
|
"3gp",
|
|
"3g2",
|
|
"mxf",
|
|
"roq",
|
|
"nsv",
|
|
"f4v",
|
|
"f4p",
|
|
"f4a",
|
|
"f4b"
|
|
],
|
|
"name": "Video",
|
|
"description": "Video files",
|
|
"role": "Viewer"
|
|
},
|
|
{
|
|
"ext": [
|
|
"aa",
|
|
"aac",
|
|
"aax",
|
|
"act",
|
|
"aiff",
|
|
"alac",
|
|
"amr",
|
|
"ape",
|
|
"au",
|
|
"awb",
|
|
"dct",
|
|
"dss",
|
|
"dvf",
|
|
"flac",
|
|
"gsm",
|
|
"iklax",
|
|
"ivs",
|
|
"m4a",
|
|
"m4b",
|
|
"m4p",
|
|
"mmf",
|
|
"mp3",
|
|
"mpc",
|
|
"msv",
|
|
"nmf",
|
|
"nsf",
|
|
"ogg",
|
|
"oga",
|
|
"mogg",
|
|
"opus",
|
|
"ra",
|
|
"rf64",
|
|
"sln",
|
|
"tta",
|
|
"voc",
|
|
"vox",
|
|
"wav",
|
|
"wma",
|
|
"wv",
|
|
"8svx",
|
|
"cda"
|
|
],
|
|
"name": "Audio",
|
|
"description": "Audio files",
|
|
"role": "Viewer"
|
|
}
|
|
]
|
|
},
|
|
"appx": {
|
|
"applicationId": "LosslessCut",
|
|
"identityName": "57275mifi.no.LosslessCut",
|
|
"publisher": "CN=2C479316-22A8-4D63-BC38-F0FB9AB0B974",
|
|
"publisherDisplayName": "mifi.no"
|
|
},
|
|
"linux": {
|
|
"executableName": "losslesscut",
|
|
"extraResources": [
|
|
{
|
|
"from": "ffmpeg/linux-${arch}/lib",
|
|
"to": "."
|
|
}
|
|
],
|
|
"category": "AudioVideo",
|
|
"icon": "icon-build/app-512.png",
|
|
"target": [
|
|
{
|
|
"arch": "x64",
|
|
"target": "tar.bz2"
|
|
},
|
|
{
|
|
"arch": "x64",
|
|
"target": "AppImage"
|
|
},
|
|
{
|
|
"arch": "x64",
|
|
"target": "snap"
|
|
},
|
|
{
|
|
"arch": "arm64",
|
|
"target": "tar.bz2"
|
|
},
|
|
{
|
|
"arch": "armv7l",
|
|
"target": "tar.bz2"
|
|
}
|
|
]
|
|
},
|
|
"snap": {
|
|
"plugs": [
|
|
"default",
|
|
"removable-media"
|
|
]
|
|
}
|
|
},
|
|
"packageManager": "yarn@3.3.0"
|
|
}
|