Anki/pylib/anki
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
..
_vendor Update Python deps 2023-03-31 14:04:05 +10:00
foreign_data Plaintext import/export (#1850) 2022-06-01 20:26:16 +10:00
importing Use "importing-added" string in importing detail table (#3104) 2024-03-31 07:33:31 +01:00
scheduler Dependency updates (#3040) 2024-02-28 16:28:04 +07:00
_backend.py update FSRS-rs to 0.5.0 & export benchmark API (#3056) 2024-03-08 12:37:06 +00:00
_legacy.py Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
_rsbridge.pyi Dependency updates (#3040) 2024-02-28 16:28:04 +07:00
browser.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
cards.py Drop support for checkpoints (#2742) 2023-10-17 12:43:34 +10:00
collection.py Add support for python logging (#2969) 2024-02-11 16:41:50 +10:00
config.py Import submodules directly (#1662) 2022-02-13 13:40:47 +10:00
consts.py Strip out v1/v2 code 2023-09-24 14:27:40 +10:00
db.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
dbproxy.py Drop support for checkpoints (#2742) 2023-10-17 12:43:34 +10:00
decks.py Drop support for checkpoints (#2742) 2023-10-17 12:43:34 +10:00
errors.py Remove v1/v2 support from the backend (#2727) 2023-10-14 10:50:59 +10:00
exporting.py Drop support for checkpoints (#2742) 2023-10-17 12:43:34 +10:00
find.py Add py3.9 to hooks (#1542) 2021-12-09 09:11:22 +10:00
hooks.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
httpclient.py Update Python deps 2023-03-31 14:04:05 +10:00
lang.py Fix Ukranian language name 2024-01-30 15:11:24 +10:00
latex.py Make dvipng use transparent background by default (#2036) 2022-08-31 18:49:22 +10:00
media.py Drop support for checkpoints (#2742) 2023-10-17 12:43:34 +10:00
models.py Reset original id when cloning notetypes (#3089) 2024-03-24 08:18:59 +00:00
notes.py Drop support for checkpoints (#2742) 2023-10-17 12:43:34 +10:00
py.typed mark anki and aqt modules as having typing info 2020-01-13 13:03:37 +10:00
rsbackend.py PEP8 for rest of pylib (#1451) 2021-10-25 14:50:13 +10:00
sound.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
stats.py Ignore rescheduled cards in old stats page (#2863) 2023-12-05 09:55:33 +10:00
statsbg.py Update licensing information (#2850) 2023-11-27 11:35:51 +10:00
stdmodels.py Add image occlusion to stock notetypes 2023-10-22 11:00:39 +10:00
storage.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
sync.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
syncserver.py Update Rust and Python deps (#2567) 2023-07-01 18:26:43 +10:00
tags.py Move custom study tag and limit gathering+saving into the backend 2022-03-10 16:23:03 +10:00
template.py Rework RenderCardOutput::question/answer 2023-06-27 00:37:41 +10:00
types.py Enable invalid-name globally in pylib (#1454) 2021-10-25 19:10:56 +10:00
utils.py Switch to SvelteKit (#3077) 2024-03-31 09:16:31 +01:00