{
  "name": "root",
  "private": true,
  "workspaces": [
    "packages/*"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/laurent22/joplin.git"
  },
  "engines": {
    "node": ">=18",
    "yarn": "3.8.3"
  },
  "scripts": {
    "buildApiDoc": "yarn workspace joplin start apidoc ../../readme/api/references/rest_api.md",
    "buildScriptIndexes": "node packages/tools/gulp/tasks/buildScriptIndexesRun.js",
    "buildParallel": "yarn workspaces foreach --verbose --interlaced --parallel --jobs 2 --topological run build && yarn tsc",
    "buildPluginDoc": "cd packages/generate-plugin-doc && yarn buildPluginDoc_",
    "buildSequential": "yarn workspaces foreach --verbose --interlaced --topological run build && yarn tsc",
    "buildServerDocker": "node packages/tools/buildServerDocker.js",
    "buildSettingJsonSchema": "yarn workspace joplin start settingschema ../../../joplin-website/docs/schema/settings.json",
    "buildTranslations": "node packages/tools/build-translation.js",
    "buildWebsite": "node ./packages/tools/website/processDocs.js --env prod && node ./packages/tools/website/build.js && yarn buildPluginDoc && yarn buildSettingJsonSchema",
    "buildWebsiteTranslations": "node packages/tools/website/buildTranslations.js",
    "checkIgnoredFiles": "node ./packages/tools/checkIgnoredFiles.js",
    "checkLibPaths": "node ./packages/tools/checkLibPaths.js",
    "circularDependencyCheck": "madge --warning --circular --extensions js ./",
    "clean": "npm run clean --workspaces --if-present && node packages/tools/clean && yarn cache clean",
    "crowdin": "crowdin",
    "crowdinDownload": "crowdin download",
    "crowdinUpload": "crowdin upload",
    "dependencyTree": "madge",
    "generateTypes": "node packages/tools/generate-database-types",
    "linkChecker": "linkchecker https://joplinapp.org/ && linkchecker --check-extern https://joplinapp.org/api/references/plugin_api/classes/joplin.html",
    "linter-ci": "eslint --resolve-plugins-relative-to . --quiet --ext .js --ext .jsx --ext .ts --ext .tsx",
    "linter-interactive": "eslint-interactive --resolve-plugins-relative-to . --fix --quiet --ext .js --ext .jsx --ext .ts --ext .tsx",
    "linter-precommit": "eslint --resolve-plugins-relative-to . --fix --ext .js --ext .jsx --ext .ts --ext .tsx",
    "linter": "eslint --resolve-plugins-relative-to . --fix --quiet --ext .js --ext .jsx --ext .ts --ext .tsx",
    "packageJsonLint": "node ./packages/tools/packageJsonLint.js",
    "postinstall": "gulp build",
    "postPreReleasesToForum": "node ./packages/tools/postPreReleasesToForum",
    "publishAll": "git pull && yarn buildParallel && lerna version --yes --no-private --no-git-tag-version && gulp completePublishAll",
    "releaseAndroid": "PATH=\"/usr/local/opt/openjdk@17/bin:$PATH\" node packages/tools/release-android.js",
    "releaseAndroidClean": "node packages/tools/release-android.js",
    "releaseCli": "node packages/tools/release-cli.js",
    "releaseClipper": "node packages/tools/release-clipper.js",
    "releaseDesktop": "node packages/tools/release-electron.js",
    "releaseIOS": "node packages/tools/release-ios.js",
    "releasePluginGenerator": "node packages/tools/release-plugin-generator.js",
    "releasePluginRepoCli": "node packages/tools/release-plugin-repo-cli.js",
    "releaseServer": "node packages/tools/release-server.js",
    "setupNewRelease": "node ./packages/tools/setupNewRelease",
    "spellcheck": "node packages/tools/spellcheck.js",
    "tagServerLatest": "node packages/tools/tagServerLatest.js",
    "test-ci": "yarn workspaces foreach --parallel --verbose --interlaced --jobs 2 run test-ci",
    "test": "yarn workspaces foreach --parallel --verbose --interlaced --jobs 2 run test",
    "tsc": "yarn workspaces foreach --parallel --verbose --interlaced run tsc",
    "updateIgnored": "node packages/tools/gulp/tasks/updateIgnoredTypeScriptBuildRun.js",
    "updateMarkdownDoc": "node ./packages/tools/updateMarkdownDoc",
    "updateNews": "node ./packages/tools/website/updateNews",
    "updatePluginTypes": "./packages/generator-joplin/updateTypes.sh",
    "validateFilenames": "node ./packages/tools/validateFilenames.js",
    "watch": "yarn workspaces foreach --parallel --verbose --interlaced --jobs 999 run watch",
    "watchWebsite": "nodemon --delay 1 --watch Assets/WebsiteAssets --watch packages/tools/website --watch packages/tools/website/utils --watch packages/doc-builder/build --ext md,ts,js,mustache,css,tsx,gif,png,svg --exec \"node packages/tools/website/build.js && http-server --port 8077 ../joplin-website/docs -a localhost\""
  },
  "husky": {
    "hooks": {
      "pre-commit": "yarn lint-staged"
    }
  },
  "devDependencies": {
    "@crowdin/cli": "3",
    "@joplin/utils": "~2.12",
    "@seiyab/eslint-plugin-react-hooks": "4.5.1-beta.0",
    "@typescript-eslint/eslint-plugin": "6.21.0",
    "@typescript-eslint/parser": "6.21.0",
    "cspell": "5.21.2",
    "eslint": "8.57.0",
    "eslint-interactive": "10.8.0",
    "eslint-plugin-import": "2.29.1",
    "eslint-plugin-jest": "27.9.0",
    "eslint-plugin-promise": "6.2.0",
    "eslint-plugin-react": "7.34.3",
    "execa": "5.1.1",
    "fs-extra": "11.2.0",
    "glob": "10.4.5",
    "gulp": "4.0.2",
    "husky": "3.1.0",
    "lerna": "3.22.1",
    "lint-staged": "15.2.8",
    "madge": "7.0.0",
    "npm-package-json-lint": "7.1.0",
    "typescript": "5.4.5"
  },
  "dependencies": {
    "@types/fs-extra": "11.0.4",
    "eslint-plugin-github": "4.10.2",
    "http-server": "14.1.1",
    "node-gyp": "9.4.1",
    "nodemon": "3.1.7"
  },
  "packageManager": "yarn@3.8.3",
  "resolutions": {
    "react-native-camera@4.2.1": "patch:react-native-camera@npm%3A4.2.1#./.yarn/patches/react-native-camera-npm-4.2.1-24b2600a7e.patch",
    "react-native-vosk@0.1.12": "patch:react-native-vosk@npm%3A0.1.12#./.yarn/patches/react-native-vosk-npm-0.1.12-76b1caaae8.patch",
    "eslint": "patch:eslint@8.57.0#./.yarn/patches/eslint-npm-8.39.0-d92bace04d.patch",
    "app-builder-lib@24.4.0": "patch:app-builder-lib@npm%3A24.4.0#./.yarn/patches/app-builder-lib-npm-24.4.0-05322ff057.patch",
    "nanoid": "patch:nanoid@npm%3A3.3.7#./.yarn/patches/nanoid-npm-3.3.7-98824ba130.patch",
    "pdfjs-dist": "patch:pdfjs-dist@npm%3A3.11.174#./.yarn/patches/pdfjs-dist-npm-3.11.174-67f2fee6d6.patch",
    "@react-native-community/slider": "patch:@react-native-community/slider@npm%3A4.4.4#./.yarn/patches/@react-native-community-slider-npm-4.4.4-d78e472f48.patch",
    "husky": "patch:husky@npm%3A3.1.0#./.yarn/patches/husky-npm-3.1.0-5cc13e4e34.patch",
    "chokidar@^2.0.0": "3.5.3",
    "react-native@0.74.1": "patch:react-native@npm%3A0.74.1#./.yarn/patches/react-native-npm-0.74.1-754c02ae9e.patch",
    "rn-fetch-blob@0.12.0": "patch:rn-fetch-blob@npm%3A0.12.0#./.yarn/patches/rn-fetch-blob-npm-0.12.0-cf02e3c544.patch"
  }
}