Anki/package.json
Damien Elmes 9f55cf26fc
Switch to SvelteKit (#3077)
* Update to latest Node LTS

* Add sveltekit

* Split tslib into separate @generated and @tslib components

SvelteKit's path aliases don't support multiple locations, so our old
approach of using @tslib to refer to both ts/lib and out/ts/lib will no
longer work. Instead, all generated sources and their includes are
placed in a separate out/ts/generated folder, and imported via @generated
instead. This also allows us to generate .ts files, instead of needing
to output separate .d.ts and .js files.

* Switch package.json to module type

* Avoid usage of baseUrl

Incompatible with SvelteKit

* Move sass into ts; use relative links

SvelteKit's default sass support doesn't allow overriding loadPaths

* jest->vitest, graphs example working with yarn dev

* most pages working in dev mode

* Some fixes after rebasing

* Fix/silence some svelte-check errors

* Get image-occlusion working with Fabric types

* Post-rebase lock changes

* Editor is now checked

* SvelteKit build integrated into ninja

* Use the new SvelteKit entrypoint for pages like congrats/deck options/etc

* Run eslint once for ts/**; fix some tests

* Fix a bunch of issues introduced when rebasing over latest main

* Run eslint fix

* Fix remaining eslint+pylint issues; tests now all pass

* Fix some issues with a clean build

* Latest bufbuild no longer requires @__PURE__ hack

* Add a few missed dependencies

* Add yarn.bat to fix Windows build

* Fix pages failing to show when ANKI_API_PORT not defined

* Fix svelte-check and vitest on Windows

* Set node path in ./yarn

* Move svelte-kit output to ts/.svelte-kit

Sadly, I couldn't figure out a way to store it in out/ if out/ is
a symlink, as it breaks module resolution when SvelteKit is run.

* Allow HMR inside Anki

* Skip SvelteKit build when HMR is defined

* Fix some post-rebase issues

I should have done a normal merge instead.
2024-03-31 09:16:31 +01:00

91 lines
3.3 KiB
JSON

{
"name": "anki",
"version": "0.1.0",
"private": true,
"author": "Ankitects Pty Ltd and contributors",
"license": "AGPL-3.0-or-later",
"description": "Anki JS support files",
"scripts": {
"dev": "cd ts && vite dev",
"build": "cd ts && vite build",
"preview": "cd ts && vite preview",
"svelte-check:once": "cd ts && svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --fail-on-warnings --threshold warning --compiler-warnings a11y-click-events-have-key-events:ignore,a11y-no-noninteractive-tabindex:ignore,a11y-no-static-element-interactions:ignore",
"svelte-check": "cd ts && svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch --compiler-warnings a11y-click-events-have-key-events:ignore,a11y-no-noninteractive-tabindex:ignore,a11y-no-static-element-interactions:ignore",
"vitest:once": "cd ts && vitest run",
"vitest": "cd ts && vitest"
},
"devDependencies": {
"@bufbuild/protoc-gen-es": "^1.8.0",
"@sqltools/formatter": "^1.2.2",
"@sveltejs/adapter-static": "^3.0.0",
"@sveltejs/kit": "^2.4.1",
"@sveltejs/vite-plugin-svelte": "^3.0.0",
"@types/bootstrap": "^5.0.12",
"@types/codemirror": "^5.60.0",
"@types/d3": "^7.0.0",
"@types/diff": "^5.0.0",
"@types/fabric": "^5.3.7",
"@types/jquery": "^3.5.0",
"@types/jqueryui": "^1.12.13",
"@types/lodash-es": "^4.17.4",
"@types/marked": "^5.0.0",
"@types/node": "^16.10.2",
"@typescript-eslint/eslint-plugin": "^5.60.1",
"@typescript-eslint/parser": "^5.60.1",
"caniuse-lite": "^1.0.30001431",
"cross-env": "^7.0.2",
"diff": "^5.0.0",
"dprint": "=0.35.3",
"esbuild": "^0.18.10",
"esbuild-sass-plugin": "^2",
"esbuild-svelte": "^0.7.4",
"eslint": "^8.44.0",
"eslint-plugin-compat": "^4.1.4",
"eslint-plugin-import": "^2.25.4",
"eslint-plugin-simple-import-sort": "^10.0.0",
"eslint-plugin-svelte": "^2",
"license-checker-rseidelsohn": "^4.2.6",
"prettier": "^2.4.1",
"prettier-plugin-svelte": "^2.10.1",
"svelte": "^4.0.1",
"svelte-check": "^3.4.4",
"svelte-preprocess": "^5.0.4",
"svelte-preprocess-esbuild": "^3.0.1",
"tslib": "^2.0.3",
"tsx": "^3.12.0",
"typescript": "^5.0.4",
"vite": "^5.0.12",
"vitest": "^1.2.1"
},
"dependencies": {
"@bufbuild/protobuf": "^1.2.1",
"@floating-ui/dom": "^1.4.3",
"@fluent/bundle": "^0.18.0",
"@mdi/svg": "^7.0.96",
"@popperjs/core": "^2.11.8",
"bootstrap": "^5.3.0",
"bootstrap-icons": "^1.10.5",
"canvas": "npm:empty-npm-package",
"codemirror": "^5.63.1",
"d3": "^7.0.0",
"fabric": "^5.3.0",
"intl-pluralrules": "^2.0.0",
"jquery": "^3.5.1",
"jquery-ui-dist": "^1.12.1",
"lodash-es": "^4.17.21",
"marked": "^5.1.0",
"mathjax": "^3.1.2",
"hammerjs": "^2.0.8"
},
"resolutions": {
"canvas": "npm:empty-npm-package"
},
"browserslist": [
"defaults",
"not op_mini all",
"not < 1%",
"Chrome 77",
"iOS 14.5"
],
"type": "module"
}