Henrik Giesel
2ff9e29a15
Fix ease graph building wrong query omitting ease edge cases
...
E.g. search for "prop:ease>=2.5" AND "prop:ease<2.55" instead of
"prop:ease>=2.5" AND "prop:ease<2.54"
2021-01-30 13:19:27 +01:00
Henrik Giesel
587f6dc96f
Fix histogram-graph building invalid query
2021-01-30 02:46:26 +01:00
Henrik Giesel
0168736ad8
Fix graphs tooltip position
2021-01-30 02:35:48 +01:00
Henrik Giesel
8151156b98
Install types for lodash.throttle
2021-01-30 02:12:44 +01:00
Henrik Giesel
993cca1902
Make histogram show bars again
2021-01-30 02:08:01 +01:00
Henrik Giesel
dc62e56aef
Remove modular d3 imports for imports from d3 bundle
2021-01-30 01:13:47 +01:00
Henrik Giesel
0af6d559a8
Remove d3 libraries from BUILD.bazel
2021-01-30 00:04:44 +01:00
Henrik Giesel
0527beec98
Replace individual d3 libraries with encompassing d3
2021-01-30 00:00:22 +01:00
Damien Elmes
45ec14184a
show actual error when graphData fails
...
The original reason for the catch-all message was users with bad
data such as decimal intervals, but those get automatically coerced
these days. The common case should now be invalid search strings, which
we can show verbatim.
2021-01-29 14:39:05 +10:00
Damien Elmes
4958fb30c9
Merge pull request #946 from hgiesel/dispatchtype
...
Correctly type createEventDispatch and dispatch
2021-01-27 20:27:08 +10:00
Damien Elmes
ad188b1ecf
Merge pull request #947 from hgiesel/noclickonemptybins
...
No clicking on empty bins in the Histogram
2021-01-27 19:45:07 +10:00
Henrik Giesel
e30f62c2a5
Add FutureDueShowBacklog as preferences
2021-01-27 01:15:19 +01:00
Henrik Giesel
f88aad8d85
No clicking on empty bins in the Histogram
2021-01-26 13:48:36 +01:00
Henrik Giesel
e204ddc0d4
Type createEventDispatcher and dispatch
2021-01-26 12:47:17 +01:00
Henrik Giesel
45ff094392
Add bridgeCommand helper function
2021-01-26 01:25:54 +01:00
Henrik Giesel
cf7bc58163
Use browserLinksSupported preference
2021-01-25 19:12:32 +01:00
Henrik Giesel
6b0a26e46b
Move dispatch logic from Histogram to individual graphs
2021-01-25 16:34:44 +01:00
Henrik Giesel
ad5f0e721f
Make calendar only clickable, if counts > 0
2021-01-25 13:47:20 +01:00
Henrik Giesel
11901e0e57
Add search functionality to Calendar view
2021-01-25 13:47:18 +01:00
Henrik Giesel
a26ffd9876
Add search functionality for ease graph
2021-01-25 13:46:44 +01:00
Henrik Giesel
ee5ba4e8d2
Normalize the remaining queries
2021-01-25 13:46:44 +01:00
Henrik Giesel
3c5493d424
Fix up histogram code to correctly hide tooltip again
2021-01-25 13:46:44 +01:00
Henrik Giesel
a9ccfa62a4
Normalize intervals query
2021-01-25 13:46:44 +01:00
Henrik Giesel
b8dbed44c7
Add query functionality to FutureDue graph
2021-01-25 13:46:44 +01:00
Henrik Giesel
bdacc42af3
Remove onlyReview from intervals query
2021-01-25 13:46:44 +01:00
Henrik Giesel
f3eae60773
Add search functional on interval graph
2021-01-25 13:46:44 +01:00
Henrik Giesel
31203e6d35
Add search to added graph
2021-01-25 13:46:44 +01:00
Henrik Giesel
13325e050c
Export bridgeCommandsSupported from graphs.rs for stats
2021-01-25 13:46:44 +01:00
Henrik Giesel
76691176f6
Add a working example of searching from the stats screen in the Card Counts
2021-01-25 13:46:42 +01:00
Henrik Giesel
cee2f396da
Add search event listeners on graphs
2021-01-25 13:45:42 +01:00
Henrik Giesel
f8c590c914
Fix RangeBox RevlogRange defaulting to All instead of Year
2021-01-23 13:57:43 +01:00
Damien Elmes
a6a4c0032d
Merge pull request #934 from hgiesel/graphprefs
...
Add GraphsPreferences API to graphs for setting persistent preferences
2021-01-23 21:24:41 +10:00
Damien Elmes
387be76c00
minor wording tweak: GraphsPreferences -> GraphPreferences
2021-01-23 20:47:45 +10:00
Damien Elmes
fe739f4460
fix graphs failing to load until preferences set
...
The protobuf object will be missing keys that have the default value,
so we need to fill the defaults in.
2021-01-23 20:40:43 +10:00
Henrik Giesel
4e9fff493f
Use scaleSqrt for calendar review values
2021-01-22 22:39:29 +01:00
Henrik Giesel
a5f59515e2
Rename GraphsPreferencesOut to simply GraphsPreferences
2021-01-22 19:39:03 +01:00
Henrik Giesel
0098869925
Make code typecheck, fix issue with day labels in nightMode
2021-01-22 19:02:05 +01:00
Henrik Giesel
7149c468e5
Set calendar labels to emptyColour
2021-01-22 18:15:16 +01:00
Henrik Giesel
24dd14896a
Make cardCountsSeparateInactive settable
2021-01-22 18:03:58 +01:00
Henrik Giesel
101e193add
Make first day of week settable through UI
2021-01-22 17:51:15 +01:00
Henrik Giesel
d6ba9eb61a
Uniformly rename firstWeekday to firstDayOfWeek
2021-01-22 16:53:33 +01:00
Henrik Giesel
1a75772673
Remve SeparateInactiveCheckbox and correctly use preferences values
...
* Expose issue with non-existing calendar value in GraphPreferences
2021-01-22 14:56:41 +01:00
Henrik Giesel
fe75480fea
Successfully send post request to rust
2021-01-22 14:37:24 +01:00
Henrik Giesel
846dd396a6
Add non-functioning logic for settings graphs preferences
2021-01-22 13:14:35 +01:00
Henrik Giesel
15bd2e74f8
Hook up cardCountsSeparateInactive to PreferenceStore
2021-01-22 13:14:35 +01:00
Henrik Giesel
5ee3e0d0d7
Add PreferenceStore with gettable/settable preferences
...
* setting is not yet hooked up to rslib
2021-01-22 13:14:33 +01:00
Henrik Giesel
1516f5c37e
Add GraphsPreferences endpoint to backend
2021-01-22 13:13:48 +01:00
Henrik Giesel
e8169c5b54
Add first GraphPreferences which are not hooked to backend yet
2021-01-22 13:13:48 +01:00
Damien Elmes
574836fb7b
Merge pull request #933 from hgiesel/calendardays
...
Add labels to calendar days
2021-01-22 11:52:44 +10:00
Henrik Giesel
e509b768ff
Get weekday labels via Date.prototype.toLocaleString
2021-01-21 19:38:56 +01:00
Henrik Giesel
c9544dd83d
Revert "Make weekday labels localizable"
...
This reverts commit 483b0e4698 .
2021-01-21 18:56:56 +01:00
Damien Elmes
85135d46fc
Merge pull request #930 from hgiesel/editorts
...
Refactor editor.ts
2021-01-21 10:44:11 +10:00
Henrik Giesel
c1cb227c8e
Support languages with day labels larger than one character
2021-01-20 22:07:02 +01:00
Henrik Giesel
483b0e4698
Make weekday labels localizable
2021-01-20 21:49:01 +01:00
Henrik Giesel
a9da524383
Add labels to calendar days
2021-01-20 21:17:36 +01:00
Damien Elmes
6045f07acb
Merge pull request #931 from hgiesel/reviewsgraph
...
Retouch the reviews graph a little bit
2021-01-20 09:32:42 +10:00
Henrik Giesel
4726579102
Turn Running total box transparent
2021-01-19 12:50:02 +01:00
Henrik Giesel
9d551b20cc
Change colors of Reviews graph
2021-01-19 12:22:13 +01:00
Henrik Giesel
9803a4ab00
Switch to iterables for elem.style and elem.attributes
2021-01-19 02:48:41 +01:00
Henrik Giesel
9246698d4e
Satisfy formatter
2021-01-19 00:17:30 +01:00
Henrik Giesel
705c437ffd
Use firstWeekday config in graphs data
2021-01-18 23:23:55 +01:00
Damien Elmes
4ab52b8763
move exports_files call into ts/BUILD.bazel
...
Suspect it has caused a regression when building from an external
repo.
2021-01-09 18:03:26 +10:00
Damien Elmes
b43515ceff
add .sql file formatter
...
Uses the logic from the sqltools VSCode add-on, with a workaround
for the use of 'type' in some table columns.
By detecting the presence of 'BUILD_WORKSPACE_DIRECTORY' we can tell
if the rule is running in test mode or was run directly, avoiding the
need for separate check and fix rules. It might be nice to extend this
to other formatting rules in the future as well.
2021-01-09 14:22:49 +10:00
Henrik Giesel
cef590e878
Include review and relearn cards for ease graph
2021-01-08 17:57:47 +01:00
Henrik Giesel
4e9d54940e
Add return values to increment and adjustTicks
2021-01-08 12:29:22 +01:00
Henrik Giesel
3f5d645987
Add es2019.array to TypeScript libs, so we can use .flatten and .flatMap
2021-01-08 12:23:21 +01:00
Henrik Giesel
3aa63d871c
Fix cutting off of Review Interval bins
2021-01-08 12:11:53 +01:00
Henrik Giesel
c743d956d7
Omit zero interval, and don't nice the values
...
* to keep promise of radio buttons:
* 1 month should mean 30/31 days
2021-01-08 10:07:42 +01:00
Damien Elmes
4b9e5f425b
Merge pull request #904 from hgiesel/propdue
...
Streamlining `is:due`, `prop:due`, and the FutureDue graph
2021-01-08 16:34:53 +10:00
Henrik Giesel
512248cba1
Include many more cards in the Review Intervals graph
2021-01-07 22:35:34 +01:00
Henrik Giesel
56c8773beb
Fix formatting graphs ts
2021-01-07 19:36:08 +01:00
Henrik Giesel
3fa5f20344
Fix one-off error for Histograms:
...
examples:
* x0 = -66 and x1 = -64 should yield 65-66 days ago instead of 64-65 days ago
* x0 = -2 and x1 = 0 should yield 1-2 days ago instead of 0-1 days ago
2021-01-07 17:14:31 +01:00
Henrik Giesel
629035a347
Display backlog learn cards correctly in FutureDue graph
...
* now they are shown as due in the past
* before that they were always displayed as due today
2021-01-07 16:13:59 +01:00
Henrik Giesel
e8138136f9
Default CardCounts to off
2021-01-06 11:53:58 +01:00
Henrik Giesel
0a25d3bb82
Switch relearning cards to schemeReds
2021-01-05 19:37:14 +01:00
Henrik Giesel
04cc12b248
Add label for SeparateInactiveCheckbox in ftl file
2021-01-05 19:13:57 +01:00
Henrik Giesel
213f74651f
Satisfy formatter
2021-01-05 17:22:27 +01:00
Henrik Giesel
1743f54762
Make pie graphs display correctly when switching between categories
2021-01-05 16:47:47 +01:00
Henrik Giesel
645ffe53d0
Replace CountMethodRadios with SeparateInactiveCheckbox method
...
* cards will still be mostly counted by ctype rather than queue
* if the user wants to include inactive cards buried and suspended will
be first filtered out, before the rest is counted by ctype
2021-01-05 16:13:06 +01:00
Henrik Giesel
b55e3d8792
Satisfy formatter
2021-01-04 15:36:15 +01:00
Henrik Giesel
d82f81f42b
Refresh colours on Card Count Pies
2021-01-04 15:14:50 +01:00
Henrik Giesel
45fe3794ec
Add gatherByQueue and gatherByCtype methods
2021-01-04 14:04:51 +01:00
Henrik Giesel
66ea08411c
Add CountMethodRadios and CardCountMethod enum
2021-01-04 12:21:30 +01:00
Damien Elmes
6cac9c4a5b
remove empty es6 group; reference original ts_library instead
2021-01-02 21:18:10 +10:00
Damien Elmes
f3e83dffc9
remove the unused ts/vendor folder
2021-01-02 11:25:09 +10:00
Damien Elmes
a27e94e54d
merge separate vendor rules into single rule
...
Rather than creating a separate rule for each package, we can just
create a generic one and reuse it. Also switch to keyword arguments
in the resulting macros, as it's easier to read.
2021-01-02 11:14:00 +10:00
Henrik Giesel
2e3b9b5dc0
Add base argument to copy_select_files
2021-01-01 14:39:15 +01:00
Henrik Giesel
a8b6fe99fa
Be a bit more precise when excluding mathmaps_ie.js
...
* for documentation purposes
2021-01-01 14:16:52 +01:00
Henrik Giesel
0042c897bd
Remove duplicated logic in ts bzl files by using copy_select_files
2021-01-01 13:45:25 +01:00
Henrik Giesel
6087bb9a0f
Add css-browser-selector to BAZEL build file in data/web/js/vendor
2020-12-31 16:41:31 +01:00
Henrik Giesel
7ed80466e9
Add css-browser-selector as bazel rule, and update from 0.4.0 to 0.6.5
2020-12-31 16:27:52 +01:00
Henrik Giesel
0745fe511a
Add bazel recipe and update protobufjs to 6.10.2
2020-12-31 16:06:44 +01:00
Damien Elmes
ba466808e4
use :yarn not :yarn_bin
...
The latter fails on Windows
2020-12-31 12:32:51 +10:00
Damien Elmes
a86b8bbcf8
add add.sh helper for adding dependency and updating licenses
2020-12-31 12:20:51 +10:00
Damien Elmes
56c27ab129
run ts/update.sh
2020-12-31 12:18:49 +10:00
Henrik Giesel
dda55b16f1
Add jquery-ui to vendor/BUILD.bazel
2020-12-30 12:06:06 +01:00
Henrik Giesel
ff68cd8382
Install jquery-ui-dist
2020-12-30 11:56:49 +01:00
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