mirror of
https://github.com/discourse/discourse.git
synced 2026-08-06 07:23:30 +08:00
We've been using basic type-checking via JSDoc for some time. This commit allows us to author proper `.ts`/`.gts` files, and use the full typescript syntax. Initially, only d-button and a single chat file are migrated, as proof of functionality. In future, we may migrate more files, and consider making our tsconfig more strict.
83 lines
4.2 KiB
JSON
Vendored
83 lines
4.2 KiB
JSON
Vendored
{
|
|
"private": true,
|
|
"repository": "https://github.com/discourse/discourse",
|
|
"author": "Discourse",
|
|
"license": "GPL-2.0-only",
|
|
"devDependencies": {
|
|
"@discourse/lint-configs": "^3.2.0",
|
|
"@discourse/moment-timezone-names-translations": "^1.0.0",
|
|
"@fortawesome/fontawesome-free": "7.2.0",
|
|
"@glint/ember-tsc": "^1.8.11",
|
|
"@glint/tsserver-plugin": "^2.5.17",
|
|
"@rdil/parallel-prettier": "^3.0.0",
|
|
"concurrently": "^9.2.1",
|
|
"eslint": "10.6.0",
|
|
"execa": "^9.6.0",
|
|
"jsdoc": "^4.0.5",
|
|
"lefthook": "^2.1.9",
|
|
"licensee": "^11.1.1",
|
|
"lint-to-the-future": "^3.2.0",
|
|
"lint-to-the-future-eslint": "^4.0.0",
|
|
"playwright": "1.59.1",
|
|
"prettier": "3.8.1",
|
|
"stylelint": "17.5.0",
|
|
"typescript": "^5.9.3"
|
|
},
|
|
"scripts": {
|
|
"dev": "bin/dev",
|
|
"lint": "concurrently \"pnpm:lint:*(!fix)\" --names \"lint:\"",
|
|
"lint:fix": "concurrently \"pnpm:lint:*:fix\" --names \"fix:\"",
|
|
"lint:css": "pnpm stylelint 'app/assets/stylesheets/**/*.scss' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss') 'themes/**/*.scss'",
|
|
"lint:css:fix": "pnpm stylelint --fix 'app/assets/stylesheets/**/*.scss' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss') 'themes/**/*.scss'",
|
|
"lint:js": "eslint ./frontend $(script/list_bundled_plugins) ./themes --cache --no-error-on-unmatched-pattern --max-warnings 0",
|
|
"lint:js:fix": "eslint --fix ./frontend $(script/list_bundled_plugins) ./themes --no-error-on-unmatched-pattern",
|
|
"lint:prettier": "pnpm pprettier --list-different 'app/assets/stylesheets/**/*.scss' 'frontend/**/*.{js,gjs,ts,gts,mts,cts,css}' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss') $(script/list_bundled_plugins '/{assets,admin/assets,test}/javascripts/**/*.{js,gjs,ts,gts,mts,cts}') 'themes/**/*.{js,gjs,ts,gts,scss}'",
|
|
"lint:prettier:fix": "pnpm prettier -w --no-error-on-unmatched-pattern 'app/assets/stylesheets/**/*.scss' 'frontend/**/*.{js,gjs,ts,gts,mts,cts,css}' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss') $(script/list_bundled_plugins '/{assets,admin/assets,test}/javascripts/**/*.{js,gjs,ts,gts,mts,cts}') 'themes/**/*.{js,gjs,ts,gts,scss}'",
|
|
"lint:types": "ember-tsc -b",
|
|
"types:generate": "pnpm --dir=frontend/discourse-i18n ember-tsc && pnpm --dir=frontend/discourse-types generate-external",
|
|
"types:watch": "pnpm types:generate && pnpm ember-tsc -b --watch --preserveWatchOutput",
|
|
"lttf:ignore": "lint-to-the-future ignore",
|
|
"lttf:output": "lint-to-the-future output -o ./lint-progress/",
|
|
"lint-progress": "pnpm lttf:output && npx html-pages ./lint-progress --no-cache",
|
|
"playwright-install": "playwright install --no-shell chromium",
|
|
"build": "pnpm --silent --dir=frontend/discourse build",
|
|
"start": "pnpm --silent --dir=frontend/discourse start"
|
|
},
|
|
"engines": {
|
|
"node": ">= 20",
|
|
"npm": "please-use-pnpm",
|
|
"yarn": "please-use-pnpm",
|
|
"pnpm": "^10"
|
|
},
|
|
"packageManager": "pnpm@10.28.0",
|
|
"pnpm": {
|
|
"patchedDependencies": {
|
|
"ember-this-fallback@0.4.0": "patches/ember-this-fallback@0.4.0.patch",
|
|
"babel-plugin-debug-macros@0.3.4": "patches/babel-plugin-debug-macros@0.3.4.patch",
|
|
"licensee@11.1.1": "patches/licensee@11.1.1.patch",
|
|
"@ember-compat/tracked-built-ins@0.9.1": "patches/@ember-compat__tracked-built-ins@0.9.1.patch",
|
|
"ember-source@6.10.1": "patches/ember-source@6.10.1.patch",
|
|
"http-proxy@1.18.1": "patches/http-proxy@1.18.1.patch",
|
|
"ember-exam@10.1.0": "patches/ember-exam@10.1.0.patch",
|
|
"message-bus-client": "patches/message-bus-client.patch",
|
|
"ember-buffered-proxy": "patches/ember-buffered-proxy.patch",
|
|
"pikaday": "patches/pikaday.patch"
|
|
},
|
|
"peerDependencyRules": {
|
|
"allowedVersions": {
|
|
"@mixer/parallel-prettier>prettier": "*",
|
|
"ember-this-fallback>ember-source": "*",
|
|
"ember-this-fallback>ember-cli-htmlbars": "*",
|
|
"@fullcalendar/moment-timezone>moment-timezone": "*"
|
|
},
|
|
"ignoreMissing": [
|
|
"webpack"
|
|
]
|
|
},
|
|
"overrides": {
|
|
"@ember/test-waiters": "4.1.1",
|
|
"babel-plugin-ember-template-compilation@~2.3.0": "2.4.1",
|
|
"broccoli-babel-transpiler@8.0.0": "^8.0.2"
|
|
}
|
|
}
|
|
}
|