291 lines
9.0 KiB
JSON
291 lines
9.0 KiB
JSON
{
|
|
"name": "Whalebird",
|
|
"version": "2.7.5",
|
|
"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": "71",
|
|
"appVersion": "2.7.5"
|
|
},
|
|
"main": "./dist/electron/main.js",
|
|
"scripts": {
|
|
"dev": "node .electron-vue/dev-runner.js",
|
|
"e2e": "npm run pack && mocha test/e2e",
|
|
"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 test",
|
|
"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": "npm run build && npm run package:mac",
|
|
"build:linux": "npm run build && npm run package:linux",
|
|
"build:win32": "npm run build && npm run package:win32",
|
|
"build:win64": "npm run build && npm run package:win64",
|
|
"build:mas": "npm run build:clean && npm run pack && electron-packager ./ 'Whalebird' --platform=mas --arch=x64 --electron-version=4.2.4 --asar.unpackDir='build/sounds' --out=packages --ignore='^/src' --ignore='^/test' --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' --osx-sign --app-category-type=public.app-category.social-networking",
|
|
"package:mac": "electron-builder --mac --x64",
|
|
"package:linux": "electron-builder --linux",
|
|
"package:win32": "electron-builder --win --ia32",
|
|
"package:win64": "electron-builder --win --x64",
|
|
"pack": "npm run pack:main && npm run pack:renderer",
|
|
"pack:main": "cross-env NODE_ENV=production webpack --mode production --progress --colors --config .electron-vue/webpack.main.config.js",
|
|
"pack:renderer": "cross-env NODE_ENV=production webpack --mode production --progress --colors --config .electron-vue/webpack.renderer.config.js",
|
|
"test": "npm run unit && npm run e2e",
|
|
"unit": "karma start test/unit/karma.conf.js",
|
|
"postinstall": "npm 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/*"
|
|
],
|
|
"files": [
|
|
"dist/electron/**/*",
|
|
"build/icons/*"
|
|
],
|
|
"dmg": {
|
|
"contents": [
|
|
{
|
|
"x": 410,
|
|
"y": 150,
|
|
"type": "link",
|
|
"path": "/Applications"
|
|
},
|
|
{
|
|
"x": 130,
|
|
"y": 150,
|
|
"type": "file"
|
|
}
|
|
]
|
|
},
|
|
"mac": {
|
|
"icon": "build/icons/icon.icns",
|
|
"target": [
|
|
"dmg"
|
|
],
|
|
"category": "public.app-category.social-networking"
|
|
},
|
|
"win": {
|
|
"icon": "build/icons/icon.ico",
|
|
"target": "nsis"
|
|
},
|
|
"nsis": {
|
|
"oneClick": false,
|
|
"allowToChangeInstallationDirectory": true
|
|
},
|
|
"linux": {
|
|
"icon": "build/icons",
|
|
"target": [
|
|
{
|
|
"target": "deb",
|
|
"arch": [
|
|
"x64",
|
|
"ia32"
|
|
]
|
|
},
|
|
{
|
|
"target": "rpm",
|
|
"arch": [
|
|
"x64",
|
|
"ia32"
|
|
]
|
|
},
|
|
{
|
|
"target": "tar.bz2",
|
|
"arch": [
|
|
"x64",
|
|
"ia32",
|
|
"armv7l",
|
|
"arm64"
|
|
]
|
|
},
|
|
{
|
|
"target": "snap",
|
|
"arch": [
|
|
"x64"
|
|
]
|
|
}
|
|
],
|
|
"category": "Network"
|
|
}
|
|
},
|
|
"jest": {
|
|
"moduleFileExtensions": [
|
|
"ts",
|
|
"js"
|
|
],
|
|
"moduleNameMapper": {
|
|
"@/router": "<rootDir>/spec/mock/router.ts",
|
|
"^@/(.+)": "<rootDir>/src/renderer/$1",
|
|
"^~/(.+)": "<rootDir>/$1",
|
|
"electron": "<rootDir>/spec/mock/electron.ts"
|
|
},
|
|
"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.13.0",
|
|
"@trodi/electron-splashscreen": "^0.3.4",
|
|
"about-window": "^1.11.0",
|
|
"animate.css": "^3.7.0",
|
|
"axios": "^0.18.1",
|
|
"boom": "^7.3.0",
|
|
"deep-extend": "^0.6.0",
|
|
"electron-context-menu": "^0.12.0",
|
|
"electron-json-storage": "^4.1.5",
|
|
"electron-log": "^2.2.17",
|
|
"electron-window-state": "^5.0.3",
|
|
"element-ui": "^2.4.11",
|
|
"emoji-mart-vue": "^2.6.6",
|
|
"emojilib": "^2.4.0",
|
|
"hawk": "^7.0.10",
|
|
"hoek": "^6.1.2",
|
|
"i18next": "^12.1.0",
|
|
"i18next-sync-fs-backend": "^1.1.0",
|
|
"lodash": "^4.17.11",
|
|
"megalodon": "0.8.0",
|
|
"moment": "^2.21.0",
|
|
"mousetrap": "^1.6.2",
|
|
"nedb": "^1.8.0",
|
|
"object-assign-deep": "^0.4.0",
|
|
"parse-link-header": "^1.0.1",
|
|
"rc": "^1.2.7",
|
|
"request": "^2.88.0",
|
|
"sanitize-html": "^1.19.3",
|
|
"simplayer": "0.0.8",
|
|
"system-font-families": "^0.4.1",
|
|
"tunnel-agent": "^0.6.0",
|
|
"vue": "^2.5.17",
|
|
"vue-awesome": "^3.2.0",
|
|
"vue-click-outside": "^1.0.7",
|
|
"vue-electron": "^1.0.6",
|
|
"vue-popperjs": "^1.6.1",
|
|
"vue-router": "^3.0.2",
|
|
"vue-shortkey": "^3.1.0",
|
|
"vuex": "^3.0.1",
|
|
"vuex-router-sync": "^5.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.4.3",
|
|
"@babel/plugin-proposal-class-properties": "^7.4.0",
|
|
"@babel/plugin-proposal-object-rest-spread": "^7.4.3",
|
|
"@babel/plugin-transform-runtime": "^7.4.3",
|
|
"@babel/preset-env": "^7.4.3",
|
|
"@babel/runtime": "^7.4.3",
|
|
"@mapbox/stylelint-processor-arbitrary-tags": "^0.2.0",
|
|
"@types/electron-json-storage": "^4.0.0",
|
|
"@types/i18next": "^12.1.0",
|
|
"@types/jest": "^24.0.11",
|
|
"@types/lodash": "^4.14.123",
|
|
"@types/nedb": "^1.8.7",
|
|
"@types/node": "^11.11.4",
|
|
"@types/parse-link-header": "^1.0.0",
|
|
"@typescript-eslint/eslint-plugin": "^1.5.0",
|
|
"@typescript-eslint/parser": "^1.5.0",
|
|
"@typescript-eslint/typescript-estree": "^1.5.0",
|
|
"@vue/test-utils": "^1.0.0-beta.28",
|
|
"ajv": "^6.6.1",
|
|
"babel-eslint": "^10.0.1",
|
|
"babel-jest": "^24.5.0",
|
|
"babel-loader": "^8.0.5",
|
|
"babel-minify-webpack-plugin": "^0.3.1",
|
|
"babel-plugin-istanbul": "^5.1.0",
|
|
"babel-register": "^6.26.0",
|
|
"cfonts": "^2.3.0",
|
|
"chai": "^4.2.0",
|
|
"chalk": "^2.4.1",
|
|
"copy-webpack-plugin": "^4.6.0",
|
|
"core-js": "^3.0.0",
|
|
"cross-env": "^5.1.6",
|
|
"css-loader": "^0.28.11",
|
|
"del": "^3.0.0",
|
|
"devtron": "^1.4.0",
|
|
"electron": "4.2.4",
|
|
"electron-builder": "^20.39.0",
|
|
"electron-debug": "^2.2.0",
|
|
"electron-devtools-installer": "^2.2.4",
|
|
"electron-ipc-mock": "0.0.3",
|
|
"electron-packager": "^12.2.0",
|
|
"eslint": "^5.9.0",
|
|
"eslint-config-prettier": "^4.1.0",
|
|
"eslint-config-standard": "^12.0.0",
|
|
"eslint-friendly-formatter": "^4.0.1",
|
|
"eslint-loader": "^2.1.1",
|
|
"eslint-plugin-html": "^4.0.6",
|
|
"eslint-plugin-import": "^2.14.0",
|
|
"eslint-plugin-node": "^8.0.0",
|
|
"eslint-plugin-prettier": "^3.0.1",
|
|
"eslint-plugin-promise": "^4.0.1",
|
|
"eslint-plugin-standard": "^4.0.0",
|
|
"eslint-plugin-vue": "^5.2.2",
|
|
"file-loader": "^2.0.0",
|
|
"html-webpack-plugin": "^3.2.0",
|
|
"jest": "^24.5.0",
|
|
"jsdom": "^13.0.0",
|
|
"karma": "^3.1.3",
|
|
"karma-chai": "^0.1.0",
|
|
"karma-coverage": "^1.1.2",
|
|
"karma-electron": "^6.0.0",
|
|
"karma-mocha": "^1.2.0",
|
|
"karma-sourcemap-loader": "^0.3.7",
|
|
"karma-spec-reporter": "0.0.32",
|
|
"karma-webpack": "^4.0.0-rc.5",
|
|
"mini-css-extract-plugin": "^0.4.5",
|
|
"mocha": "^5.2.0",
|
|
"multispinner": "^0.2.1",
|
|
"node-loader": "^0.6.0",
|
|
"node-sass": "^4.10.0",
|
|
"prettier": "^1.17.0",
|
|
"prettier-stylelint": "^0.4.2",
|
|
"regenerator-runtime": "^0.13.1",
|
|
"sass-loader": "^7.0.3",
|
|
"style-loader": "^0.23.1",
|
|
"stylelint": "^9.9.0",
|
|
"stylelint-config-standard": "^18.2.0",
|
|
"ts-jest": "^24.0.0",
|
|
"ts-loader": "^5.3.3",
|
|
"ttfinfo": "^0.2.0",
|
|
"typescript": "^3.3.4000",
|
|
"url-loader": "^1.1.2",
|
|
"vue-html-loader": "^1.2.4",
|
|
"vue-loader": "^15.2.4",
|
|
"vue-style-loader": "^4.1.0",
|
|
"vue-template-compiler": "^2.5.17",
|
|
"webpack": "^4.27.1",
|
|
"webpack-cli": "^3.1.2",
|
|
"webpack-dev-server": "^3.1.4",
|
|
"webpack-hot-middleware": "^2.24.3",
|
|
"webpack-merge": "^4.1.4"
|
|
}
|
|
}
|