Files
zulip-desktop/package.json
2020-11-17 15:41:46 -08:00

254 lines
6.1 KiB
JSON

{
"name": "zulip",
"productName": "Zulip",
"version": "5.4.3",
"main": "./app/main",
"description": "Zulip Desktop App",
"license": "Apache-2.0",
"copyright": "Kandra Labs, Inc.",
"author": {
"name": "Kandra Labs, Inc.",
"email": "support@zulip.com"
},
"repository": {
"type": "git",
"url": "https://github.com/zulip/zulip-desktop.git"
},
"bugs": {
"url": "https://github.com/zulip/zulip-desktop/issues"
},
"engines": {
"node": ">=10.0.0"
},
"scripts": {
"start": "tsc && electron .",
"clean-ts-files": "git clean app/*.js -e node_modules -xf",
"watch-ts": "tsc -w",
"reinstall": "rimraf node_modules && npm install",
"postinstall": "electron-builder install-app-deps",
"lint-css": "stylelint app/renderer/css/*.css",
"lint-html": "./node_modules/.bin/htmlhint \"app/renderer/*.html\" ",
"lint-js": "xo",
"test": "tsc --noEmit && npm run lint-html && npm run lint-css && npm run lint-js",
"test-e2e": "gulp test-e2e",
"compile": "gulp compile",
"dev": "gulp dev && npm test",
"pack": "tsc && electron-builder --dir",
"dist": "tsc && electron-builder",
"mas": "tsc && electron-builder --mac mas"
},
"pre-commit": [
"test"
],
"build": {
"afterSign": "./scripts/notarize.js",
"appId": "org.zulip.zulip-electron",
"asar": true,
"asarUnpack": [
"**/*.node"
],
"files": [
"app/**/*"
],
"copyright": "©2020 Kandra Labs, Inc.",
"mac": {
"category": "public.app-category.productivity",
"target": [
"dmg",
"pkg",
"zip"
],
"darkModeSupport": true,
"artifactName": "${productName}-${version}-${arch}.${ext}",
"hardenedRuntime": true,
"entitlements": "build/entitlements.mac.plist",
"entitlementsInherit": "build/entitlements.mac.plist",
"gatekeeperAssess": false
},
"linux": {
"category": "Chat;GNOME;GTK;Network;InstantMessaging",
"icon": "build/icon.icns",
"packageCategory": "GNOME;GTK;Network;InstantMessaging",
"description": "Zulip Desktop Client for Linux",
"target": [
"deb",
"zip",
"AppImage",
"snap"
],
"maintainer": "Akash Nimare <akash@zulip.com>",
"artifactName": "${productName}-${version}-${arch}.${ext}"
},
"deb": {
"synopsis": "Zulip Desktop App",
"afterInstall": "./scripts/debian-add-repo.sh",
"afterRemove": "./scripts/debian-uninstaller.sh"
},
"snap": {
"synopsis": "Zulip Desktop App"
},
"dmg": {
"background": "build/appdmg.png",
"icon": "build/icon.icns",
"iconSize": 100,
"contents": [
{
"x": 380,
"y": 280,
"type": "link",
"path": "/Applications"
},
{
"x": 110,
"y": 280,
"type": "file"
}
],
"window": {
"width": 500,
"height": 500
}
},
"win": {
"target": [
{
"target": "nsis-web",
"arch": [
"x64",
"ia32"
]
},
{
"target": "msi",
"arch": [
"x64",
"ia32"
]
}
],
"icon": "build/icon.ico",
"artifactName": "${productName}-Web-Setup-${version}.${ext}",
"publisherName": "Kandra Labs, Inc."
},
"nsis": {
"allowToChangeInstallationDirectory": true,
"oneClick": false,
"perMachine": false
}
},
"keywords": [
"Zulip",
"Group Chat app",
"electron-app",
"electron",
"Desktop app",
"InstantMessaging"
],
"dependencies": {
"@electron-elements/send-feedback": "^2.0.3",
"@sentry/electron": "^2.0.1",
"@yaireo/tagify": "^3.20.2",
"adm-zip": "^0.4.16",
"auto-launch": "^5.0.5",
"backoff": "^2.5.0",
"electron-is-dev": "^1.2.0",
"electron-log": "^4.2.4",
"electron-updater": "^4.3.5",
"electron-window-state": "^5.0.3",
"escape-goat": "^3.0.0",
"fs-extra": "^9.0.1",
"get-stream": "^6.0.0",
"i18n": "^0.13.2",
"iso-639-1": "^2.1.4",
"nan": "^2.14.2",
"node-json-db": "^1.1.0",
"semver": "^7.3.2"
},
"optionalDependencies": {
"node-mac-notifier": "^1.1.0"
},
"devDependencies": {
"@types/adm-zip": "^0.4.33",
"@types/auto-launch": "^5.0.1",
"@types/backoff": "^2.5.1",
"@types/fs-extra": "^9.0.2",
"@types/i18n": "^0.8.7",
"@types/node": "^14.14.2",
"@types/requestidlecallback": "^0.3.1",
"devtron": "^1.4.0",
"dotenv": "^8.2.0",
"electron": "^10.1.5",
"electron-builder": "^22.9.1",
"electron-connect": "^0.6.3",
"electron-notarize": "^1.0.0",
"glob": "^7.1.6",
"gulp": "^4.0.2",
"gulp-tape": "^1.0.0",
"gulp-typescript": "^6.0.0-alpha.1",
"htmlhint": "^0.14.1",
"nodemon": "^2.0.6",
"pre-commit": "^1.2.2",
"rimraf": "^3.0.2",
"spectron": "^12.0.0",
"stylelint": "^13.7.2",
"tap-colorize": "^1.2.0",
"tape": "^5.0.1",
"typescript": "^4.0.3",
"xo": "^0.34.1"
},
"xo": {
"rules": {
"@typescript-eslint/no-dynamic-delete": "off",
"@typescript-eslint/prefer-readonly-parameter-types": "off",
"arrow-body-style": "error",
"import/first": "error",
"import/newline-after-import": "error",
"import/order": [
"error",
{
"alphabetize": {
"order": "asc"
},
"newlines-between": "always"
}
],
"import/unambiguous": "error",
"max-lines": [
"warn",
{
"max": 900,
"skipBlankLines": true,
"skipComments": true
}
],
"no-warning-comments": "off",
"strict": "error"
},
"envs": [
"node",
"browser"
],
"overrides": [
{
"files": [
"app/renderer/js/injected.ts",
"gulpfile.js",
"scripts/notarize.js",
"tests/**/*.js"
],
"parserOptions": {
"sourceType": "script"
}
},
{
"files": [
"**/*.d.ts"
],
"rules": {
"import/unambiguous": "off"
}
}
]
}
}