Commit graph

247 commits

Author SHA1 Message Date
Henrik Giesel
dcb9c672e0 Add jquery-ui bazel build file 2020-12-30 11:56:20 +01:00
Damien Elmes
9b92d3ce1f Revert "Merge pull request #873 from hgiesel/otherjsdeps"
This reverts commit ad7491a9ae, reversing
changes made to 5a79515f2a.

- Standard graphs render incorrectly on latest version - the wrong number
of days are shown, and the grid lines look wrong. Any version after 0.8.3
seems to suffer from this problem.
- Pie graphs and stack graphs don't render - they are provided in separate
files, and plot.js in previous Anki versions has them included in the one
file. To maintain compatibility with add-ons, we'd need to create a single
file as before, instead of importing multiple files.

If the above issues are fixed I'd be happy to merge this in again, but
as the old graphs are on the way out, it's probably not worth the effort.
2020-12-30 14:13:52 +10:00
Henrik Giesel
fe7d1aef2b Copy flot file to vendor directory 2020-12-29 12:11:28 +01:00
Henrik Giesel
3a64d47786 Install flot 4.2.1
Old version was 0.8.3
2020-12-29 12:02:41 +01:00
Damien Elmes
f42e62aca6 controller should be marked nullable
While 'SvelteComponent | null' seems to make it into the .tsx file
created by svelte2tsx, the subsequent tsc call seems to discard the
'| null' part when creating the .d.ts file. Hack around it with a cast
for now; this may be fixed if we move to ts_project in the future.
2020-12-29 15:21:46 +10:00
Damien Elmes
8388b1d838 use local strategy for Svelte on CI
Allows some type errors to surface that were only being picked up
on Windows.

The root cause seems to be TypeScript picking up other .d.ts/.tsx
files in the same folder, which it can only do on Windows due to the
lack of sandboxing. On other platforms the other files can't be found,
and tsc changes the types into 'any'.

I experimented with modifying rules_svelte to build all .tsx files up
front and convert them to .d.ts in bulk, but ran into further issues
with conflicting types, as the typings in svelte2tsx seem to conflict
with Svelte's built-in types, and passing the dependencies in explicitly
causes them to be checked even though --skipLibCheck is passed in to
TypeScript.

Forcing sandboxing off is an ugly hack, and our best approach moving
forward may be to switch to ts_project for the Svelte generation -
it does appear that rules_nodejs favours it over ts_library anyway.
2020-12-29 14:50:33 +10:00
Damien Elmes
34884a2e8f Merge pull request #864 from hgiesel/graphs
Decouple GraphsPage from individual graphs and RangeBox
2020-12-29 10:14:04 +10:00
Henrik Giesel
b6fba45ad5 Remove jquery from Anki repo and replace with Bazel BUILD 2020-12-28 13:16:12 +01:00
Damien Elmes
e80674b793 Merge pull request #863 from hgiesel/statsoverscroll
Prevent stats screen from overscrolling
2020-12-28 10:34:06 +10:00
Henrik Giesel
71149656fc Fix typo 2020-12-27 02:04:45 +01:00
Henrik Giesel
20c2d55059 Fix formatting 2020-12-26 18:24:24 +01:00
Henrik Giesel
0afed11159 Prevent stats screen from overscrolling 2020-12-26 15:29:45 +01:00
Henrik Giesel
d8f57cecd0 Add svelte lib as bazel dependency 2020-12-26 15:17:30 +01:00
Henrik Giesel
f9229be1ff Pass in RangeBox as an argument, decoupling it from GraphsPage 2020-12-26 14:40:55 +01:00
Henrik Giesel
4309b6f7a5 Fix displaying issue with active spinner 2020-12-26 00:16:54 +01:00
Henrik Giesel
1b4fd39d70 Make Year/All display correctly 2020-12-26 00:08:24 +01:00
Henrik Giesel
4f28750dff Move spinner back to RangeBox 2020-12-25 22:59:11 +01:00
Henrik Giesel
13acbe131c Put RangeBox into its own component 2020-12-25 22:29:42 +01:00
Henrik Giesel
3373cf7ad0 Make spinner's position sticky in relation to graphsContainer 2020-12-25 21:49:56 +01:00
Henrik Giesel
2362ba36d8 Put a transition:fade on the spinner 2020-12-25 20:11:46 +01:00
Henrik Giesel
73c17f9abd Remove .active class from .spin 2020-12-25 20:07:52 +01:00
Henrik Giesel
ee0bbd8fda Turn async function into svelte statement 2020-12-23 16:45:00 +01:00
Henrik Giesel
fa5e2407f3 Making days settable does not make sense, as it will be overwritten 2020-12-23 16:20:12 +01:00
Damien Elmes
1bdb1b9633 update to rules_nodejs 3.0.0
Seems to fix the rollup issues on Windows.
2020-12-23 16:05:15 +10:00
Henrik Giesel
ef7f2ba2a6 Move infile to css to scss file 2020-12-22 22:39:22 +01:00
Henrik Giesel
0967308e53 Make showing of rangeBox based on parameter 2020-12-22 22:36:39 +01:00
Henrik Giesel
d5e9ce4b1d Bubble up days and search to caller 2020-12-22 22:25:47 +01:00
Henrik Giesel
9f8a9ad540 Pass in graphs as arguments into graphs() 2020-12-22 22:09:23 +01:00
Damien Elmes
15c41b008c fix path to anki lib in ts/ when editing 2020-12-16 14:15:49 +10:00
Damien Elmes
3973266596 plural rules and decimal separator should use bundle's language
Instead of providing the list of languages in preferred order, when
creating a bundle we need to specify the bundle language as the first
language, so that the correct plural rules are used. Fluent's docs
are misleading here; I will submit a PR to fix them.

The old behaviour caused:
https://forums.ankiweb.net/t/bug-in-review-intervals-for-some-languages-in-number-of-cards/5744
2020-12-14 14:23:49 +10:00
Damien Elmes
f7b87bb716 minor doc updates 2020-12-11 22:37:12 +10:00
Damien Elmes
d2ac536e1e bump ts deps 2020-12-09 15:47:34 +10:00
Damien Elmes
896a1e44b1 add rule to copy mathjax from node_modules 2020-11-15 20:22:28 +10:00
Henrik Giesel
d82d7bc95b Add Mathjax filegroup 2020-11-14 14:14:25 +01:00
Henrik Giesel
06bd0376b1 Remove @types/mathjax as it is for MathJax 2 2020-11-14 14:14:25 +01:00
Henrik Giesel
6a29e0cd4d Rip out MathJax 2 and setup MathJax 3 environment 2020-11-14 14:14:25 +01:00
Damien Elmes
f823c442ec relative js package paths 2020-11-12 21:07:59 +10:00
Damien Elmes
5e9cb92095 make 'bazel run ts:format' work
We're cheating a bit by having it fix files in qt's data folder
as well, but this makes it easier to share the config file.
2020-11-12 20:49:00 +10:00
Damien Elmes
a4af59fc4d format_fix -> format; rename svelte-check for consistency 2020-11-12 20:19:32 +10:00
Damien Elmes
db1ed6f01f export runtime js licenses 2020-11-12 20:03:41 +10:00
Damien Elmes
9da61c111e update ts deps 2020-11-12 20:03:41 +10:00
Damien Elmes
4f8b19dcfb fix external consumption of ts rules, and simplify import path 2020-11-05 11:01:52 +10:00
Damien Elmes
7c27c4b9a0 move backend.proto into rslib/ 2020-11-02 16:28:31 +10:00
Damien Elmes
f9171eb3d3 remove old makefiles 2020-11-01 14:41:01 +10:00
Damien Elmes
ce3b08ac58 initial Bazel conversion
Running and testing should be working on the three platforms, but
there's still a fair bit that needs to be done:

- Wheel building + testing in a venv still needs to be implemented.
- Python requirements still need to be compiled with piptool and pinned;
need to compile on all platforms then merge
- Cargo deps in cargo/ and rslib/ need to be cleaned up, and ideally
unified into one place
- Currently using rustls to work around openssl compilation issues
on Linux, but this will break corporate proxies with custom SSL
authorities; need to conditionally use openssl or use
https://github.com/seanmonstar/reqwest/pull/1058
- Makefiles and docs still need cleaning up
- It may make sense to reparent ts/* to the top level, as we don't
nest the other modules under a specific language.
- rspy and pylib must always be updated in lock-step, so merging
rspy into pylib as a private module would simplify things.
- Merging desktop-ftl and mobile-ftl into the core ftl would make
managing and updating translations easier.
- Obsolete scripts need removing.
- And probably more.
2020-11-01 14:26:58 +10:00
Damien Elmes
3159b66444 "fix" ts failing in CI due to improved upstream type signatures
...by throwing non-null assertions everywhere.
2020-09-29 22:13:25 +10:00
Damien Elmes
5c01268a8e use separate opacity css for Qt 5.9/Chromium 56
Fixes black area on alternate Mac build:
https://forums.ankiweb.net/t/statistics-bug-line-graph-graphic/3745
2020-09-27 11:47:08 +10:00
Damien Elmes
2d02e5ffa3 fix average added
https://forums.ankiweb.net/t/statistics-bug-cards-added-average/3556
2020-09-21 11:31:27 +10:00
Damien Elmes
c801857d64 fix padding in RTL langs
closes #757
2020-09-09 09:44:15 +10:00
Damien Elmes
dff3644875 fix custom study link being shown in filtered deck
https://forums.ankiweb.net/t/crashing-after-custom-study-learn-forgotten-cards/3013
2020-09-04 08:31:33 +10:00
Damien Elmes
366c5c4774 log manual reschedule, but ignore the log entry in the stats 2020-09-02 17:56:23 +10:00
Damien Elmes
efccdf6bf6 add a small default margin 2020-09-01 10:24:38 +10:00
Damien Elmes
7f42500e53 rename some card+note fields in backend 2020-09-01 10:24:38 +10:00
Damien Elmes
6f585a1e5a remove debug statement from graphs 2020-09-01 10:24:38 +10:00
Damien Elmes
9a3a81012a update ts deps to fix svelte-vscode 2020-09-01 10:24:38 +10:00
Damien Elmes
999b659c3a reimplement congrats screen in Rust+Typescript 2020-09-01 10:24:38 +10:00
Damien Elmes
7d84954f53 use css vars for graph styling as well; base webview.scss off core.scss 2020-09-01 10:24:38 +10:00
Damien Elmes
2411e944e4 drop the old sass vars and define the properties directly 2020-09-01 10:24:38 +10:00
Damien Elmes
514409d86f migrate the majority of the sass vars to css variables
Allows add-ons to easily override the theme, and allows us to apply
styling to elements outside of the normal document flow (like applying
the normal background colour to a position: fixed element).
2020-09-01 10:24:38 +10:00
Damien Elmes
a6aaaf8691 move _vars to outer ts folder
First step in sharing styling with graphs + future .html files
2020-09-01 10:24:38 +10:00
Damien Elmes
6e1e7fc447 allow tapping on body to clear tooltip 2020-08-21 15:16:27 +10:00
Damien Elmes
1f6f8fb1fa keep label colour box and description together on small screens 2020-08-21 15:06:03 +10:00
Damien Elmes
b32f430a34 don't fill in blanks outside of year range 2020-08-21 13:41:34 +10:00
Damien Elmes
9c14dedbe5 blank filling was off by one
leading to jan 1 of next year being included
2020-08-21 13:40:50 +10:00
Damien Elmes
3421ddf6e5 average ease + add % to ease ticks 2020-08-21 13:00:16 +10:00
Damien Elmes
80c7809d08 off-white background in graphs 2020-08-20 16:52:56 +10:00
Damien Elmes
c7b61822cf switch the card counts to a pie graph 2020-08-12 18:58:21 +10:00
Damien Elmes
a59eec97bf shift card counts down and future due up 2020-08-10 15:51:45 +10:00
Damien Elmes
c252344aef increase h1 top margin; decrease bottom graph margin 2020-08-10 15:34:06 +10:00
Damien Elmes
9cbd603e52 match card counts margin with other graphs 2020-08-10 15:32:03 +10:00
Damien Elmes
137cdaeb2e add space after colour square 2020-08-10 15:02:46 +10:00
Damien Elmes
b6bd4462b1 fix lack of padding at bottom of top range area 2020-08-10 14:39:02 +10:00
Damien Elmes
4b7c642b19 hide backlog button when there's no backlog 2020-08-10 14:37:23 +10:00
Damien Elmes
5e08358d60 fix "32 of 31 days"
https://forums.ankiweb.net/t/feedback-on-the-new-graphs-in-anki-ankimobile/1671/41?u=dae
2020-08-10 13:56:16 +10:00
Damien Elmes
809b2cbc69 more size tweaks for small screens 2020-08-05 19:05:34 +10:00
Damien Elmes
58c4f165aa reviews graph needs numbers in local locale 2020-08-05 19:05:24 +10:00
Damien Elmes
72098549a1 hide odd hours in small screen 2020-08-05 18:58:31 +10:00
Damien Elmes
909933f95e slightly darker start to reviews graph 2020-08-05 16:06:34 +10:00
Damien Elmes
00a4e99ea0 remove selective fade in answer buttons graph 2020-08-05 15:56:21 +10:00
Damien Elmes
175accf210 reduce maximum lightness in added/interval graphs 2020-08-05 15:43:44 +10:00
Damien Elmes
3cd5264fc8 make the cumulative area a bit more visible 2020-08-05 15:35:07 +10:00
Damien Elmes
da917baf41 skip missing datapoints in hour graph 2020-08-05 15:25:56 +10:00
Damien Elmes
c78a783128 right axis for reviews graph 2020-08-05 15:01:51 +10:00
Damien Elmes
2cf6fdad66 add right axis to hour graph 2020-08-05 15:01:44 +10:00
Damien Elmes
9837f80842 drop 99.9% interval 2020-08-05 14:50:08 +10:00
Damien Elmes
2de219a8cd add right axis to histograms; nice y axis 2020-08-05 14:49:57 +10:00
Damien Elmes
fc701efa34 subtitles under title 2020-08-04 17:50:47 +10:00
Damien Elmes
09e3daa2de reduce maximum width 2020-08-04 17:29:17 +10:00
Damien Elmes
638b866c6b increase axis label size at small screen widths 2020-08-04 17:29:13 +10:00
Damien Elmes
f332ff0c80 added graph table 2020-08-04 16:01:11 +10:00
Damien Elmes
51c82e5ed4 average interval 2020-08-04 15:28:41 +10:00
Damien Elmes
32304a5097 textual data for forecast
Also stick to exact xMax, so we match the old graphs.
2020-08-04 15:15:57 +10:00
Damien Elmes
2b0ffee689 factor out data table into separate file 2020-08-04 14:41:26 +10:00
Damien Elmes
56b59b24ab add textual data to reviews graph 2020-08-04 14:28:46 +10:00
Damien Elmes
1a2848c23e fix mature cutoff in reviews graph
https://forums.ankiweb.net/t/statistics-bugs-after-update-2-1-5-to-2-1-29/1620/4
2020-08-01 11:27:24 +10:00
Damien Elmes
5eaeae387e move card counts tooltip into permanent table 2020-07-31 17:19:31 +10:00
Damien Elmes
0430fc561c tweaks to print view of graphs 2020-07-31 13:33:41 +10:00
Damien Elmes
dfcf1c02b7 handle preview cards in graphs 2020-07-30 09:11:18 +10:00
Damien Elmes
4967c2571f update svelte-check minimum 2020-07-29 12:06:48 +10:00
Damien Elmes
3a1e4a6500 Revert "svelte-check doesn't want a CSS string"
This reverts commit 3f62c1f79d.

Now they do again.🤷
2020-07-29 12:06:33 +10:00