Whalebird-desktop-client-ma.../package.json

308 lines
9.2 KiB
JSON

{
"name": "Whalebird",
"version": "4.4.1",
"author": "AkiraFukushima <h3.poteto@gmail.com>",
"description": "An Electron based Mastodon client for Windows, Mac and Linux",
"license": "MIT",
"keywords": [
"mastodon",
"client",
"electron",
"vue"
],
"repository": {
"type": "git",
"url": "https://github.com/h3poteto/whalebird-desktop.git"
},
"config": {
"buildVersion": "110",
"appVersion": "4.4.1"
},
"main": "./dist/electron/main.js",
"scripts": {
"dev": "node .electron-vue/dev-runner.js",
"lint": "eslint --ext .js,.vue,.ts -f ./node_modules/eslint-friendly-formatter src spec",
"lint:fix": "eslint --ext .js,.vue,.ts -f ./node_modules/eslint-friendly-formatter --fix src spec",
"stylelint": "stylelint '**/*.vue' --syntax scss",
"build": "node .electron-vue/build.js",
"build:clean": "cross-env BUILD_TARGET=clean node .electron-vue/build.js",
"build:web": "cross-env BUILD_TARGET=web node .electron-vue/build.js",
"build:mac": "yarn run build && yarn run package:mac",
"build:linux": "yarn run build && yarn run package:linux",
"build:win32": "yarn run build && yarn run package:win32",
"build:win64": "yarn run build && yarn run package:win64",
"build:mas": "yarn run build:clean && yarn run pack && electron-packager ./ 'Whalebird' --platform=mas --arch=x64 --arch=arm64 --electron-version=12.0.9 --asar.unpackDir='build/sounds' --out=packages --ignore='^/src' --ignore='^/.electron-vue' --ignore='^/.envrc' --ignore='^/packages' --ignore='^/plist' --ignore='^/static' --ignore='^/whalebird.db' --ignore='^/screenshot.png' --prune=true --icon=./build/icons/icon.icns --overwrite --app-bundle-id=org.whalebird.desktop --app-version=$npm_package_config_appVersion --build-version=$npm_package_config_buildVersion --extend-info='./plist/team.plist' --app-category-type=public.app-category.social-networking && node ./packages/universal.js",
"package:mac": "electron-builder --mac",
"package:linux": "electron-builder --linux",
"package:win32": "electron-builder --win --ia32",
"package:win64": "electron-builder --win --x64",
"pack": "yarn run pack:main && yarn run pack:renderer",
"pack:main": "webpack --node-env=production --mode production --progress --config .electron-vue/webpack.main.config.js",
"pack:renderer": "webpack --node-env=production --mode production --progress --config .electron-vue/webpack.renderer.config.js",
"postinstall": "yarn run lint:fix",
"spec": "NODE_ENV=test jest -u --maxWorkers=3"
},
"build": {
"productName": "Whalebird",
"appId": "org.whalebird.desktop",
"artifactName": "${productName}-${version}-${os}-${arch}.${ext}",
"directories": {
"output": "build"
},
"extraResources": [
"build/sounds/*",
"build/icons/*"
],
"files": [
"dist/electron/**/*",
"build/icons/*"
],
"afterSign": "build/notarize.js",
"dmg": {
"sign": false,
"contents": [
{
"x": 410,
"y": 150,
"type": "link",
"path": "/Applications"
},
{
"x": 130,
"y": 150,
"type": "file"
}
]
},
"mac": {
"icon": "build/icons/icon.icns",
"target": [
{
"target": "dmg",
"arch": [
"x64",
"arm64",
"universal"
]
}
],
"category": "public.app-category.social-networking",
"entitlements": "plist/entitlements.mac.plist",
"entitlementsInherit": "plist/entitlements.mac.plist",
"hardenedRuntime" : true,
"gatekeeperAssess": false
},
"win": {
"icon": "build/icons/icon.ico",
"target": "nsis"
},
"nsis": {
"oneClick": false,
"allowToChangeInstallationDirectory": true
},
"linux": {
"icon": "build/icons",
"target": [
{
"target": "AppImage",
"arch": [
"x64"
]
},
{
"target": "deb",
"arch": [
"x64",
"ia32"
]
},
{
"target": "rpm",
"arch": [
"x64",
"ia32"
]
},
{
"target": "tar.bz2",
"arch": [
"x64",
"ia32",
"armv7l",
"arm64"
]
},
{
"target": "pacman",
"arch": [
"x64",
"ia32"
]
},
{
"target": "snap",
"arch": [
"x64"
]
}
],
"category": "Network"
}
},
"jest": {
"moduleFileExtensions": [
"ts",
"js",
"json"
],
"moduleNameMapper": {
"@/router": "<rootDir>/spec/mock/router.ts",
"^@/(.+)": "<rootDir>/src/renderer/$1",
"^~/(.+)": "<rootDir>/$1"
},
"testMatch": [
"**/spec/**/*.spec.ts"
],
"preset": "ts-jest/presets/js-with-ts",
"transform": {
"^.+\\.(js|jsx)$": "babel-jest",
"^.+\\.(ts|tsx)$": "ts-jest"
},
"setupFiles": [
"core-js"
],
"globals": {
"ts-jest": {
"tsConfig": "tsconfig.json"
}
}
},
"dependencies": {
"@panter/vue-i18next": "^0.15.2",
"@trodi/electron-splashscreen": "^1.0.0",
"about-window": "^1.14.0",
"animate.css": "^4.1.0",
"auto-launch": "^5.0.5",
"axios": "^0.21.1",
"blueimp-load-image": "^5.14.0",
"deep-extend": "^0.6.0",
"electron-context-menu": "^3.1.1",
"electron-json-storage": "^4.5.0",
"electron-log": "^4.3.5",
"electron-window-state": "^5.0.3",
"element-ui": "2.15.1",
"emoji-mart-vue": "^2.6.6",
"i18next": "^20.3.4",
"lodash": "^4.17.21",
"megalodon": "3.6.5",
"minimist": "^1.2.5",
"moment": "^2.29.1",
"mousetrap": "^1.6.5",
"nedb": "^1.8.0",
"object-assign-deep": "^0.4.0",
"parse-link-header": "^1.0.1",
"rc": "^1.2.7",
"sanitize-html": "^2.4.0",
"simplayer": "0.0.8",
"system-font-families": "^0.4.1",
"tunnel-agent": "^0.6.0",
"unicode-emoji-json": "^0.2.1",
"vue": "^2.6.11",
"vue-awesome": "^4.3.1",
"vue-click-outside": "^1.1.0",
"vue-electron": "^1.0.6",
"vue-popperjs": "^2.3.0",
"vue-resize": "^1.0.1",
"vue-router": "^3.5.1",
"vue-shortkey": "^3.1.7",
"vue-virtual-scroller": "^1.0.10",
"vuex": "^3.6.2",
"vuex-router-sync": "^5.0.0"
},
"devDependencies": {
"@babel/core": "^7.14.8",
"@babel/plugin-proposal-class-properties": "^7.12.1",
"@babel/plugin-proposal-object-rest-spread": "^7.14.2",
"@babel/plugin-transform-runtime": "^7.14.5",
"@babel/preset-env": "^7.14.2",
"@babel/runtime": "7.14.0",
"@electron/universal": "^1.0.5",
"@mapbox/stylelint-processor-arbitrary-tags": "^0.4.0",
"@types/auto-launch": "^5.0.1",
"@types/electron-json-storage": "^4.5.0",
"@types/i18next": "^13.0.0",
"@types/jest": "26.0.23",
"@types/lodash": "^4.14.171",
"@types/nedb": "^1.8.12",
"@types/node": "^16.4.1",
"@types/parse-link-header": "^1.0.0",
"@typescript-eslint/eslint-plugin": "^4.28.4",
"@typescript-eslint/parser": "^4.28.4",
"@typescript-eslint/typescript-estree": "^4.21.0",
"@vue/test-utils": "^1.2.2",
"ajv": "^8.6.2",
"all-object-keys": "^2.2.0",
"babel-eslint": "^10.1.0",
"babel-jest": "^26.6.3",
"babel-loader": "^8.2.2",
"babel-plugin-istanbul": "^6.0.0",
"babel-register": "^6.26.0",
"cfonts": "^2.9.3",
"chai": "^4.3.4",
"chalk": "^4.1.1",
"copy-webpack-plugin": "^9.0.1",
"core-js": "^3.12.1",
"cross-env": "^7.0.3",
"css-loader": "^5.2.5",
"del": "^6.0.0",
"devtron": "^1.4.0",
"electron": "13.1.7",
"electron-builder": "^22.10.5",
"electron-debug": "^3.2.0",
"electron-devtools-installer": "^3.2.0",
"electron-mock-ipc": "^0.3.9",
"electron-packager": "^15.3.0",
"eslint": "^7.31.0",
"eslint-config-prettier": "^8.3.0",
"eslint-config-standard": "^16.0.3",
"eslint-friendly-formatter": "^4.0.1",
"eslint-loader": "^4.0.2",
"eslint-plugin-html": "^6.1.2",
"eslint-plugin-import": "^2.23.4",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^3.4.0",
"eslint-plugin-promise": "^4.3.1",
"eslint-plugin-standard": "^5.0.0",
"eslint-plugin-vue": "^7.9.0",
"file-loader": "^6.2.0",
"html-webpack-plugin": "^5.3.2",
"jest": "^26.6.3",
"jsdom": "^16.6.0",
"json-loader": "^0.5.7",
"listr": "^0.14.3",
"mini-css-extract-plugin": "^1.6.0",
"node-loader": "^2.0.0",
"node-sass": "^6.0.0",
"prettier": "^2.3.0",
"prettier-stylelint": "^0.4.2",
"regenerator-runtime": "^0.13.7",
"sass-loader": "^11.1.1",
"style-loader": "^2.0.0",
"stylelint": "^13.13.1",
"stylelint-config-standard": "^22.0.0",
"ts-jest": "^26.5.6",
"ts-loader": "^9.2.3",
"ttfinfo": "^0.2.0",
"typescript": "^4.2.4",
"url-loader": "^4.1.1",
"vue-html-loader": "^1.2.4",
"vue-loader": "^15.9.7",
"vue-style-loader": "^4.1.3",
"vue-template-compiler": "^2.6.11",
"webpack": "^5.37.1",
"webpack-cli": "^4.7.2",
"webpack-dev-server": "^3.11.2",
"webpack-hot-middleware": "^2.25.0"
}
}