kopia lustrzana https://github.com/mifi/lossless-cut
456 wiersze
12 KiB
JSON
456 wiersze
12 KiB
JSON
{
|
|
"name": "lossless-cut",
|
|
"productName": "LosslessCut",
|
|
"description": "The swiss army knife of lossless video/audio editing",
|
|
"copyright": "Copyright © 2021 ${author}",
|
|
"version": "3.61.0",
|
|
"main": "./out/main/index.js",
|
|
"homepage": "./",
|
|
"scripts": {
|
|
"clean": "rimraf dist out ts-dist build-resources icon-build",
|
|
"start": "electron-vite preview",
|
|
"dev": "electron-vite dev -w",
|
|
"icon-gen": "mkdirp icon-build build-resources/appx && tsx script/icon-gen.mts",
|
|
"download-ffmpeg-darwin-x64": "mkdirp ffmpeg/darwin-x64 && cd ffmpeg/darwin-x64 && wget https://github.com/mifi/ffmpeg-build-script/releases/download/6.0-1/ffmpeg-macos-X64 -O ffmpeg && wget https://github.com/mifi/ffmpeg-build-script/releases/download/6.0-1/ffprobe-macos-X64 -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-build-script/releases/download/6.0-1/ffmpeg-macos-ARM64 -O ffmpeg && wget https://github.com/mifi/ffmpeg-build-script/releases/download/6.0-1/ffprobe-macos-ARM64 -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 extracted/bin/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 && electron-vite build",
|
|
"tsc": "tsc --build",
|
|
"test": "vitest",
|
|
"lint": "eslint --ext .js,.ts,.jsx,.tsx,.mjs,.mts .",
|
|
"pack-mac": "yarn build && electron-builder --mac dmg",
|
|
"pack-mas-dev": "yarn build && electron-builder -mac mas-dev -c.mas.provisioningProfile=LosslessCut_Dev.provisionprofile -c.mas.identity='Apple Development: Mikael Finstad (JH4PH8B3C8)'",
|
|
"pack-win": "yarn build && electron-builder --win zip --x64",
|
|
"postinstall": "electron-builder install-app-deps",
|
|
"version": "tsx script/postversion.mts && git add no.mifi.losslesscut.appdata.xml",
|
|
"pack-linux": "yarn build && electron-builder --linux",
|
|
"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/colors": "^0.1.8",
|
|
"@radix-ui/react-switch": "^1.0.1",
|
|
"@tsconfig/node18": "^18.2.2",
|
|
"@tsconfig/strictest": "^2.0.2",
|
|
"@tsconfig/vite-react": "^3.0.0",
|
|
"@types/color": "^3.0.6",
|
|
"@types/css-modules": "^1.0.5",
|
|
"@types/eslint": "^8",
|
|
"@types/express": "^4.17.21",
|
|
"@types/lodash": "^4.14.202",
|
|
"@types/luxon": "^3.4.2",
|
|
"@types/morgan": "^1.9.9",
|
|
"@types/node": "18",
|
|
"@types/react": "^18.2.66",
|
|
"@types/react-dom": "^18.2.22",
|
|
"@types/sortablejs": "^1.15.0",
|
|
"@types/yargs-parser": "^21.0.3",
|
|
"@typescript-eslint/eslint-plugin": "^6.12.0",
|
|
"@typescript-eslint/parser": "^6.12.0",
|
|
"@uidotdev/usehooks": "^2.4.1",
|
|
"@vitejs/plugin-react": "^3.1.0",
|
|
"color": "^3.1.0",
|
|
"concurrently": "^6.0.0",
|
|
"csv-parse": "^4.15.3",
|
|
"csv-stringify": "^5.6.2",
|
|
"data-uri-to-buffer": "^4.0.0",
|
|
"electron": "^27.0.0",
|
|
"electron-builder": "^24.6.4",
|
|
"electron-devtools-installer": "^3.2.0",
|
|
"electron-vite": "^2.1.0",
|
|
"eslint": "^8.2.0",
|
|
"eslint-config-mifi": "^0.0.3",
|
|
"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",
|
|
"eslint-plugin-unicorn": "^51.0.1",
|
|
"evergreen-ui": "^6.13.1",
|
|
"fast-xml-parser": "^4.2.5",
|
|
"framer-motion": "^9.0.3",
|
|
"i18next-parser": "^7.6.0",
|
|
"icon-gen": "^4.0.0",
|
|
"immer": "^10.0.2",
|
|
"ky": "^0.33.1",
|
|
"luxon": "^3.3.0",
|
|
"mkdirp": "^1.0.3",
|
|
"mousetrap": "^1.6.5",
|
|
"nanoid": "^5.0.6",
|
|
"p-map": "^5.5.0",
|
|
"p-retry": "^6.2.0",
|
|
"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",
|
|
"rimraf": "^5.0.5",
|
|
"screenfull": "^6.0.2",
|
|
"scroll-into-view-if-needed": "^2.2.28",
|
|
"sharp": "^0.32.6",
|
|
"smpte-timecode": "^1.2.3",
|
|
"sortablejs": "^1.13.0",
|
|
"sweetalert2": "^11.11.0",
|
|
"sweetalert2-react-content": "^5.0.7",
|
|
"tiny-invariant": "^1.3.3",
|
|
"tsx": "^4.7.1",
|
|
"typescript": "~5.2.0",
|
|
"use-debounce": "^5.1.0",
|
|
"use-trace-update": "^1.3.0",
|
|
"vite": "^4.5.3",
|
|
"vitest": "^1.2.2"
|
|
},
|
|
"dependencies": {
|
|
"@electron/remote": "^2.0.10",
|
|
"@octokit/core": "5",
|
|
"cue-parser": "^0.3.0",
|
|
"electron-store": "5.1.1",
|
|
"electron-unhandled": "^4.0.1",
|
|
"execa": "^8.0.1",
|
|
"express": "^4.19.2",
|
|
"express-async-handler": "^1.2.0",
|
|
"file-type": "16",
|
|
"fs-extra": "^8.1.0",
|
|
"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.6.0",
|
|
"string-to-stream": "^3.0.1",
|
|
"winston": "^3.8.1",
|
|
"yargs-parser": "^21.1.1",
|
|
"zod": "^3.22.5"
|
|
},
|
|
"build": {
|
|
"directories": {
|
|
"buildResources": "build-resources"
|
|
},
|
|
"files": [
|
|
"out/**/*"
|
|
],
|
|
"asar": {
|
|
"smartUnpack": false
|
|
},
|
|
"appId": "no.mifi.losslesscut",
|
|
"artifactName": "${productName}-${os}-${arch}.${ext}",
|
|
"extraResources": [
|
|
{
|
|
"from": "locales",
|
|
"to": "locales"
|
|
}
|
|
],
|
|
"mac": {
|
|
"hardenedRuntime": true,
|
|
"appId": "no.mifi.losslesscut-mac",
|
|
"category": "public.app-category.productivity",
|
|
"notarize": true,
|
|
"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,
|
|
"notarize": 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@4.0.2",
|
|
"resolutions": {
|
|
"app-builder-lib@24.8.0": "patch:app-builder-lib@npm%3A24.8.0#./.yarn/patches/app-builder-lib-npm-24.8.0-51e1f5cd3f.patch"
|
|
}
|
|
}
|