Commit graph

1233 commits

Author SHA1 Message Date
RumovZ
6cfccf63bd Add cutoff_in_secs_from_days() helper method 2021-04-18 12:25:44 +02:00
RumovZ
27b658fc02 Add search keyword introduced
Filters for cards that had their first review within the last x days.
2021-04-18 12:14:18 +02:00
Damien Elmes
06dea7aa0a start on making deck config and schema/mod changes undoable
+ move timestamps into a struct in a separate file for convenience
2021-04-18 17:33:12 +10:00
Damien Elmes
1f0ff0f22d add schema change prompt to removal, tweak return struct 2021-04-18 17:33:12 +10:00
RumovZ
6b5a73d3e7 Maybe normalize name when preparing deck update 2021-04-18 09:16:43 +02:00
RumovZ
6864cdb62e Remove redundant imports 2021-04-18 08:43:46 +02:00
Damien Elmes
6eb28909da as_str() -> as_native_str() 2021-04-18 09:33:39 +10:00
Damien Elmes
eece6125d8 hide NativeName inner value, and require explicit accessors 2021-04-18 09:29:35 +10:00
Damien Elmes
e0cf897104 create_missing_parents() can take a native name directly 2021-04-18 09:20:23 +10:00
RumovZ
32edd2b554 Give deck.name the newtype NativeDeckName
The deck name must be constructed by calling associated functions of
NativeDeckName, unless the name is guaranteed to be valid machine
name (like "Default").
NativeDeckName exposes methods to mutate the deck name and return
the human name.
The storage routines take &strs, but those should be slices of
NativeDeckNames to ensure machine form and normalization.
2021-04-17 22:47:04 +02:00
Damien Elmes
cd1c4d0941 Merge pull request #1132 from RumovZ/refactor-decks
Refactor decks/mod.rs
2021-04-17 18:21:56 +10:00
Damien Elmes
0645cb29b7 fix parent limit handling
We can't calculate it on the backend, as adjusting a config may alter
the parent limit.

Also fix hidden deck name and missing separator.
2021-04-17 12:53:59 +10:00
RumovZ
bca111e6b5 Split Col impls in decks in pub and private blocks 2021-04-16 08:30:16 +02:00
RumovZ
6a974a49bb Remove some imports in decks which are in prelude 2021-04-15 20:07:16 +02:00
RumovZ
7a159137cd Create decks/stats.rs 2021-04-15 20:06:16 +02:00
RumovZ
982ac0f342 Move some methods into decks/counts.rs 2021-04-15 19:53:11 +02:00
RumovZ
3f80addab7 Tidy up blocks and imports in decks/mod.rs 2021-04-15 19:43:35 +02:00
RumovZ
c2a0a0cb08 Create decks/remove.rs 2021-04-15 19:35:54 +02:00
RumovZ
dcb398558e Create decks/add.rs 2021-04-15 19:29:52 +02:00
RumovZ
6aeea5a829 Create decks/reparent.rs 2021-04-15 19:17:43 +02:00
RumovZ
e4bbb9eaa3 Create decks/name.rs 2021-04-15 18:46:01 +02:00
Damien Elmes
29d24bb2ca don't let manual rescheduling affect card stats average
https://forums.ankiweb.net/t/set-due-date-has-a-weird-effect-on-cards-table/9289/2
2021-04-15 18:51:39 +10:00
Damien Elmes
57a1651113 deck config prototype work in progress
Still in the early stages, and not hooked up yet.
2021-04-14 22:33:10 +10:00
Damien Elmes
62caec62b3 Merge pull request #1126 from RumovZ/normalising-tweaks
Drop ANDs and optional double quotes when writing searches
2021-04-14 19:15:52 +10:00
Damien Elmes
2a43d42323 run black/isort on Python scripts 2021-04-14 18:22:02 +10:00
RumovZ
564aaafa58 Drop ANDs and optional quotes when normalising 2021-04-14 09:53:45 +02:00
Damien Elmes
77c0f0effd add missing copyright headers to *.rs 2021-04-13 18:59:16 +10:00
Damien Elmes
9f218a5713 fix misnamed timer property in deck config
The old JSON stored it as an int, but it's used as a boolean
2021-04-13 14:04:33 +10:00
RumovZ
d58af0dd95 Merge branch 'master' into backend-columns 2021-04-11 11:18:15 +02:00
RumovZ
531e08a711 Remove from_config variant in pb SortOrder
Instead, fetch the config order on the frontend and pass a builtin
variant into the backend.
That makes the following unnecessary:
* Resolving the config sort in search/mod.rs
* Deserializing the Column enum
* Config accessors for the sort columns
2021-04-10 11:13:42 +02:00
RumovZ
1891ecf6e6 Rename SearchItems to ReturnItemtype 2021-04-10 10:14:41 +02:00
RumovZ
ee83528da2 Remove internal clones of pb BrowserRow structs 2021-04-10 09:49:29 +02:00
RumovZ
dd4f08a90f Rename column label fields 2021-04-10 09:14:20 +02:00
RumovZ
e2b1c0da51 Remove unused Serialize 2021-04-10 09:13:48 +02:00
RumovZ
94d52de9da Store active browser columns in col state 2021-04-09 22:53:02 +02:00
RumovZ
18b3938025 Remove superfluous muts 2021-04-09 22:51:18 +02:00
RumovZ
c81cf7ffaf Move Column logic into main rslib 2021-04-09 19:09:48 +02:00
RumovZ
3b23248983 Remove pb SortKind enum and use pb Columns instead 2021-04-09 18:50:30 +02:00
RumovZ
93c6e258aa Merge SortKind enum into Column enum 2021-04-09 18:03:29 +02:00
RumovZ
e28f2320b8 Unify state columns
* Remove duplicate backend columns
* Remove duplicate column routines
* Move columns on frontend from state to model
* Generate available columns from Colum enum
* Add second column label for notes mode
2021-04-08 23:48:24 +02:00
RumovZ
8c499ed5bf Rename columns for future mode-independent use 2021-04-08 23:43:48 +02:00
RumovZ
dc9a7b024e Merge browser row str methods 2021-04-08 20:45:47 +02:00
RumovZ
3845ccc846 Add card mod column for notes mode 2021-04-08 20:14:10 +02:00
RumovZ
f4081084a9 Add deck column for notes mode 2021-04-08 19:46:06 +02:00
RumovZ
0acab27b0a Merge row contexts 2021-04-08 13:51:46 +02:00
RumovZ
0ff193cd5d Add enum for column sorting 2021-04-08 11:40:24 +02:00
RumovZ
47eeb5da14 Add enum for column alignment 2021-04-08 11:28:29 +02:00
RumovZ
7ea1dbd4a4 Move BrowserColumn into BrowserColumns message 2021-04-08 10:16:06 +02:00
RumovZ
c316783517 Fix deck column serialization string 2021-04-06 23:03:30 +02:00
RumovZ
82b9c9f320 Add column logic on backend 2021-04-06 19:46:12 +02:00