Henrik Giesel
29d6d524d0
Introduce HandleControl
2021-09-06 21:15:37 +10:00
Henrik Giesel
fce34cafd9
Introduce HandleSelection.svelte
2021-09-06 21:15:37 +10:00
Henrik Giesel
b501326c89
Change SizeSelect.images back to const: no reactivity needed here
2021-09-06 21:15:37 +10:00
Henrik Giesel
598d3bfbc5
Also check for sizeSelect.includes
2021-09-06 21:15:37 +10:00
Henrik Giesel
76d56d73a7
Make images in SizeSelect variable again
2021-09-06 21:15:37 +10:00
Henrik Giesel
f7a99063a8
Only allow ImageHandle on valid pictures (determined in SizeSelect)
2021-09-06 21:15:37 +10:00
Henrik Giesel
299892c40f
Fix resetting image-handle-bg on no activeImage
2021-09-06 21:15:37 +10:00
Henrik Giesel
480138f8e3
Set max-width of images in the reviewer to 100%
2021-09-06 21:15:37 +10:00
Henrik Giesel
1c8d5d3fa7
Make first adjustment of size dimensions wait for setting of dimensions label
2021-09-06 21:15:37 +10:00
Henrik Giesel
55b63b9a45
Better algorithmus for minimum resize + prevent overflow of dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
62639f3108
Constrain with proportions in SizeSelect
2021-09-06 21:15:37 +10:00
Henrik Giesel
ac182473ac
Show custom dimensions again
2021-09-06 21:15:37 +10:00
Henrik Giesel
a7d117b6bc
Detect active status again
2021-09-06 21:15:37 +10:00
Henrik Giesel
027db43664
Implement new resizing algorithm
...
* resizes against the original parameters
2021-09-06 21:15:37 +10:00
Henrik Giesel
e2d345bfd2
Manage CSSStyleSheet from within SizeSelect where each image has one rule
2021-09-06 21:15:37 +10:00
Henrik Giesel
16a394fa7d
Hide Float icons when width too small + Avoid too small resizing
2021-09-06 21:15:37 +10:00
Henrik Giesel
ccc44d1632
Revert "During resizing, make the smaller dimension decide the new dimensions"
...
This reverts commit 5bad9a913ce7b4a4cc58106936203fddec37d6da.
The previous behavior was the one you can observe in most graphical editors:
The bigger dimension (width or height) will decide the size, not the smaller one.
2021-09-06 21:15:37 +10:00
Henrik Giesel
0ffa5030e5
During resizing, make the smaller dimension decide the new dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
a7fa217306
Reset height, so it defaults to "auto"
...
* This allows more flexible dynamic resizing for the image in the (p)reviewer
2021-09-06 21:15:37 +10:00
Henrik Giesel
3fe1180f39
Add margin to other side of dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
63fed87b48
Do not allow for resizing when in constrained mode
2021-09-06 21:15:37 +10:00
Henrik Giesel
c4f47be673
Don't show same dimensions twice if there are no custom dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
db558c869d
Change position of float buttons and dimension
...
* So we can show dimensions at lower image sizes
2021-09-06 21:15:37 +10:00
Henrik Giesel
fce63ed718
Deal with case where no style.{width,height} is set for size dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
460b6f33c9
Dispaly "actualHeight / actualWidth" even in constrained mode
2021-09-06 21:15:37 +10:00
Henrik Giesel
2a548f2ebd
Turn off no-explicit-warning for editing-area
2021-09-06 21:15:36 +10:00
Henrik Giesel
e8ec6b61a7
Use ResizeObserver to resize overlay if necessary
2021-09-06 21:15:36 +10:00
Henrik Giesel
2224d1c287
Reset image handle on keydown and blur
2021-09-06 21:15:36 +10:00
Henrik Giesel
796037649a
Better RTL support
2021-09-06 21:15:36 +10:00
Henrik Giesel
9342d19504
Move selector / active logic up to ImageHandle
2021-09-06 21:15:36 +10:00
Henrik Giesel
47cd308251
Do not use width/height auto important to avoid enlarging smaller images
2021-09-06 21:15:36 +10:00
Henrik Giesel
7696a181f3
Implement Maximum image size mechanism
2021-09-06 21:15:36 +10:00
Henrik Giesel
a6b071d849
Add float tooltips
2021-09-06 21:15:36 +10:00
Henrik Giesel
5257a4db26
Allow SW resize
2021-09-06 21:15:36 +10:00
Henrik Giesel
5e91108a79
Bind to style properties instead of events
2021-09-06 21:15:36 +10:00
Henrik Giesel
b919b9cb7f
Add functionality to set float of image
2021-09-06 21:15:36 +10:00
Henrik Giesel
2a81273115
Image resizes preserves ratio
2021-09-06 21:15:36 +10:00
Henrik Giesel
9b97320438
Add image-handle-dimensions to show dimensions directly on image
2021-09-06 21:15:36 +10:00
Henrik Giesel
53d1435aa7
First implementation of ImageHandle
2021-09-06 21:15:36 +10:00
Damien Elmes
3e5a2a92c7
Introduce editable-container
...
Contains the shadow root, and references to the styles.
Is ignorant of Editable.
Is necessary, so our we editable.scss does not need to contain
information about Codable, ImageHandle or all those other things which
have nothing to do with Editable
2021-09-06 21:15:36 +10:00
Damien Elmes
f07b72a708
Merge pull request #1332 from hgiesel/svelteexportcontext
...
Shorten CSS references for `@import` or `@use`
2021-09-06 21:10:27 +10:00
Henrik Giesel
dc9a65bd8b
Disallow setting, deleting or defining properties on packages
2021-09-03 00:52:39 +02:00
Henrik Giesel
7cb3c4a996
Add ts/sass/anki, a symlink to ts/sass for add-ons
2021-09-03 00:18:17 +02:00
Henrik Giesel
269b75ef4e
Fix for svelte_check
2021-09-02 23:37:17 +02:00
Henrik Giesel
1f34b666b9
Uniformly shorten SCSS imports/uses
2021-09-02 23:37:17 +02:00
Henrik Giesel
c521568303
Directly include CSS from bootstrap and codemirror packages
2021-09-02 23:37:16 +02:00
Henrik Giesel
0667706d60
Add source for block level elements
2021-09-02 22:31:25 +10:00
Henrik Giesel
f7954af1be
Remove special treatment of empty anki-editable
2021-09-02 22:31:25 +10:00
Henrik Giesel
47252983c5
Check for non-existence of block tags instead of exclusive existence of inline tags in editable
2021-09-02 22:31:25 +10:00
Damien Elmes
f5bbeba218
Merge pull request #1350 from hgiesel/exportshortcuts
...
Implement register-package and export some packages
2021-09-02 22:23:12 +10:00
Damien Elmes
575ddb6cc6
Merge pull request #1351 from hgiesel/fontisinline
...
Add FONT as an inline tag
2021-09-02 22:22:19 +10:00
Damien Elmes
3fc1ead668
don't allow | in generic family
2021-09-02 21:05:17 +10:00
Henrik Giesel
bafbdb3835
Add FONT as an inline tag
2021-08-31 13:59:07 +02:00
Henrik Giesel
76ca1356ac
Implement register-package and export some packages
...
Exported packages are:
* anki/packages
* anki/shortcuts
* anki/bridgecommand
2021-08-30 14:41:40 +02:00
Damien Elmes
481a87367c
fix incorrect calendar day labels
...
https://forums.ankiweb.net/t/day-of-the-week-legend-on-heatmap/9450/7
2021-08-24 12:17:35 +10:00
Damien Elmes
aaa6ecb7e6
Merge pull request #1340 from hgiesel/exportinternal
...
Export Svelte internals
2021-08-24 10:42:17 +10:00
Damien Elmes
875fd62264
expose require() instead of the svelte global
...
- Means add-on authors should not need to inject any code in their build
- Should be more flexible - we can export multiple libraries if we wish,
and don't have to worry about require() being clobbered by old add-ons.
2021-08-24 10:22:07 +10:00
Henrik Giesel
119d2e0eb4
Rename cross-unit to export-internal
2021-08-23 23:45:50 +02:00
Henrik Giesel
8f8914f3c7
Update Svelte to 3.42.2
2021-08-23 23:38:16 +02:00
Henrik Giesel
0585a5da3e
Export WithShortcut
2021-08-23 21:23:04 +02:00
Henrik Giesel
5c987896cf
Export svelte_internal as library on window object
...
Closes https://github.com/ankitects/anki/issues/1328 .
2021-08-23 21:16:15 +02:00
Damien Elmes
21c2fe7b2d
add note about interday learning cards being fetched preferentially
...
+ priority->order
2021-08-22 15:32:46 +10:00
Damien Elmes
0aae073056
adding options to sort by ascending/descending ease
2021-08-22 15:32:46 +10:00
Damien Elmes
3ec3b4242f
Merge pull request #1335 from hikaru-y/fix-editor-fontfamily
...
Quote font family names
2021-08-20 14:39:29 +10:00
Damien Elmes
104a24bc1d
add options to v3 to preserve new card gather order
...
Allows cards to be presented in deck order when gather priority is set
to 'deck'.
2021-08-20 12:03:32 +10:00
hikaru-y
0331da21e6
Quote font family names, except for generic families
...
Fixes https://forums.ankiweb.net/t/font-script-is-not-changing-in-the-anki-windows/12465
2021-08-20 04:31:11 +09:00
Damien Elmes
6ddbe8fd3e
put reviews at bottom of reviews graph
...
https://forums.ankiweb.net/t/new-reviews-graph-design-is-worse-than-it-was-in-2-1-40/9807
2021-08-19 21:43:00 +10:00
Damien Elmes
6410e66857
filtered decks w/ scheduling disabled in v3 now log reviews
2021-08-19 20:25:29 +10:00
Damien Elmes
fb7eabcb80
fix mutateNextCardStates being exported into global namespace
...
https://forums.ankiweb.net/t/v3-custom-scheduler-not-working/12441
2021-08-19 10:21:04 +10:00
hikaru-y
e23737fb6c
Use <template> element instead of Range.createContextualFragment()
...
https://forums.ankiweb.net/t/audio-in-back-template-is-played-on-front-template-on-desktop-2-1-46/12399
Unlike when using <template> element, if a DocumentFragment is created
using Range.createContextualFragment(), <audio>/<video> elements
with `aotoplay` will play immediately even before they are inserted into
the actual document, which will cause audio or video on the answer side
to be played on the question side.
2021-08-18 00:04:02 +09:00
Damien Elmes
37ed7f9bae
fix inverted 'skip question when replaying answer' option
...
I'd intended to add a new string but overlooked it.
https://forums.ankiweb.net/t/bug-always-include-question-side-when-replaying-audio/12273/2
2021-08-15 16:15:14 +10:00
Damien Elmes
eae17ffbff
use alphanumeric keyboard in SpinBoxFloat
...
https://forums.ankiweb.net/t/error-setting-hard-interval-on-ios/12105/3
2021-08-09 14:15:16 +10:00
Henrik Giesel
b396ef558c
Satisfy eslint
2021-08-03 06:12:04 +02:00
Henrik Giesel
00b990b79e
Add tooltip for Toggly sticky icon
2021-08-03 06:02:29 +02:00
Henrik Giesel
485460870c
Increase inactive opacity a little for better discoverability
2021-08-03 05:52:57 +02:00
Henrik Giesel
2649dc0ad7
Add toggle sticky shortcuts F9 and Shift+F9
2021-08-03 05:52:07 +02:00
Damien Elmes
9a809af6ab
Merge pull request #1320 from hgiesel/colorpickerplus
...
Remember last text and highlight color again
2021-08-03 09:07:46 +10:00
Henrik Giesel
39566638f3
Remember last text and highlight color again
2021-08-02 23:12:00 +02:00
Damien Elmes
bd146fa4fb
update congrats screen periodically; automatically move back to study
2021-08-02 16:05:18 +10:00
Damien Elmes
86d5d7e020
don't hide learning count on congrats screen when learning is overdue
...
The v3 scheduler will delay the final card from being shown twice in
a row, but the overdue case was being treated the same as the no-learning
case, leading to the message being hidden.
2021-08-02 15:57:09 +10:00
Damien Elmes
b5808eea9e
fix inability to map fields from larger to smaller notetype
...
We were using the new item count instead of the old one.
https://forums.ankiweb.net/t/issue-changing-note-type-on-2-1-45/11822
2021-07-31 18:30:50 +10:00
Henrik Giesel
94eff9a864
Install Ctrl+Shfit+V paste only on Apple platforms
2021-07-31 03:43:10 +02:00
Henrik Giesel
8c6df4461d
Remove registerShortcut for Ctrl+C/V/A/X from editor/index.ts
2021-07-30 22:28:40 +02:00
Damien Elmes
7513f9789f
export jQuery, not just $
...
https://github.com/ankitects/anki/pull/1314#issuecomment-889597619
2021-07-30 18:30:37 +10:00
Damien Elmes
d511f2bd18
Merge pull request #1314 from hgiesel/fixjqueryreviewer
...
Export jquery correctly
2021-07-29 23:26:05 +10:00
Henrik Giesel
652e4e6368
Export jquery correctly
2021-07-29 15:18:51 +02:00
Damien Elmes
83a4e510da
Merge pull request #1312 from hgiesel/smalleditorrefactors
...
Use :host instead of :host-context
2021-07-28 13:19:04 +10:00
Damien Elmes
cd784dd652
show warning when trying to indent plain text
...
https://forums.ankiweb.net/t/2-1-45-release-candidate/11362/55
2021-07-28 12:18:04 +10:00
Damien Elmes
e3b970961f
add reviewer_extras.js back
2021-07-27 15:13:39 +10:00
Henrik Giesel
f682cdf755
Use :host instead of :host-context
2021-07-26 16:06:50 +02:00
Henrik Giesel
8335f81396
Use event object in createShortcut, fix F8 for highlight
2021-07-26 06:15:30 +02:00
Henrik Giesel
78f3aff987
Rename to text color and text color highlight
2021-07-26 05:28:28 +02:00
Henrik Giesel
380ba8a5cc
Use new for-loop
2021-07-19 01:34:14 +02:00
Henrik Giesel
07e07aa6da
Catch hook errors in two ways:
...
- try/catch for catching synchronous errors
- Promise.allSettled will allow for rejected promises without fast-failing other promises
2021-07-19 01:23:41 +02:00
Damien Elmes
2f56b43859
expose _queueAction
...
https://github.com/ankitects/anki/pull/1292#issuecomment-881795577
2021-07-17 12:12:07 +10:00
Damien Elmes
a1f0287d4a
css_browser_selector was logging to the console
2021-07-17 09:25:05 +10:00
Damien Elmes
e80d539f87
keep _updateQA exposed for now, as some add-ons use it
2021-07-17 09:11:05 +10:00
Henrik Giesel
36ebcd8bd8
Allow any in reviewer/index.ts
2021-07-16 17:28:31 +02:00
Henrik Giesel
45fa549540
Add back opacity change
2021-07-16 17:26:04 +02:00
Henrik Giesel
170bc5c25e
Revert to MathJax through script tag
2021-07-16 16:56:57 +02:00
Henrik Giesel
4888f5ee79
Add copyright header
2021-07-16 16:56:57 +02:00
Henrik Giesel
0695638ed8
Satisfy formatter
2021-07-16 16:56:57 +02:00
Henrik Giesel
0bb6f56c74
Satisfy eslint
2021-07-16 16:56:56 +02:00
Henrik Giesel
28e2f62793
Remove protobuf important from reiewer (no longer necessary (?))
2021-07-16 16:56:56 +02:00
Henrik Giesel
cb890b849b
Do not set opacity to 0 in reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
70040d508e
Include MathJax over ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
dbbb590c2f
Simplify some reviewer code
2021-07-16 16:56:56 +02:00
Henrik Giesel
6ef8e17f60
Create reviewer/images.ts
2021-07-16 16:56:56 +02:00
Henrik Giesel
c62d2dc033
Export jquery via ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
8ee6eb71eb
Include css-browser-selector via ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
2536063784
Export getTypedAnswer
2021-07-16 16:56:56 +02:00
Henrik Giesel
791d7f2f4b
Move reviewer to ts/reviewer
2021-07-16 16:56:55 +02:00
Damien Elmes
1d4fb0ca50
add note about display order using current deck
2021-07-13 15:58:06 +10:00
Damien Elmes
314df22e1e
move bury options below display order
...
Causes the timer settings to appear at the bottom left, which is a bit neater.
2021-07-13 15:45:08 +10:00
Damien Elmes
e7f249f4b7
Merge pull request #1286 from ankitects/proto
...
Split backend.proto into multiple files
2021-07-11 19:53:04 +10:00
Damien Elmes
f0ce1cfc9d
rename workspace
...
I'd forgotten that Bazel "helpfully" adds __init__.py files into folders
that match the workspace name, breaking imports.
2021-07-10 23:58:53 +10:00
Damien Elmes
e3b53fc078
split out remaining tags, stats, media and rendering
2021-07-10 23:16:18 +10:00
Damien Elmes
673955de5b
split out sync, search, scheduler & config
2021-07-10 21:33:12 +10:00
Damien Elmes
1fb86d499d
split out decks, deckconfig, notes, notetypes
2021-07-10 20:44:22 +10:00
Damien Elmes
c43674762e
split out cards and collection
2021-07-10 19:52:31 +10:00
Damien Elmes
5255409093
refactor protobuf handling for split/import
...
In order to split backend.proto into a more manageable size, the protobuf
handling needed to be updated. This took more time than I would have
liked, as each language handles protobuf differently:
- The Python Protobuf code ignores "package" directives, and relies
solely on how the files are laid out on disk. While it would have been
nice to keep the generated files in a private subpackage, Protobuf gets
confused if the files are located in a location that does not match
their original .proto layout, so the old approach of storing them in
_backend/ will not work. They now clutter up pylib/anki instead. I'm
rather annoyed by that, but alternatives seem to be having to add an extra
level to the Protobuf path, making the other languages suffer, or trying
to hack around the issue by munging sys.modules.
- Protobufjs fails to expose packages if they don't start with a capital
letter, despite the fact that lowercase packages are the norm in most
languages :-( This required a patch to fix.
- Rust was the easiest, as Prost is relatively straightforward compared
to Google's tools.
The Protobuf files are now stored in /proto/anki, with a separate package
for each file. I've split backend.proto into a few files as a test, but
the majority of that work is still to come.
The Python Protobuf building is a bit of a hack at the moment, hard-coding
"proto" as the top level folder, but it seems to get the job done for now.
Also changed the workspace name, as there seems to be a number of Bazel
repos moving away from the more awkward reverse DNS naming style.
2021-07-10 19:17:05 +10:00
Damien Elmes
3ca4ca397a
add workaround for protobufjs requiring uppercase package names
...
I mourn the time lost trying to track this down :-(
https://github.com/protobufjs/protobuf.js/issues/1014
We can't patch the minified file in dist without essentially duplicating
it, so this change also switches from the external file to including
the src file as part of the bundle.
2021-07-10 15:24:01 +10:00
abdo
f9e86ccf6f
Tweak deck options tooltips for RTL languages
2021-07-10 00:45:10 +03:00
Damien Elmes
14263c7a79
move protobuf into separate folder in preparation for multiple files
2021-07-09 21:02:40 +10:00
hikaru-y
d7ec723f4b
Set lineWiseCopyCut option to false
...
Fixes https://forums.ankiweb.net/t/anki-2-1-45-beta/10664/103
Related: https://github.com/codemirror/CodeMirror/issues/3169
2021-07-08 01:19:19 +09:00
Damien Elmes
0043910ae7
Merge pull request #1280 from hgiesel/addonimprov2
...
Export via components for Deck Options
2021-07-07 09:53:05 +10:00
Damien Elmes
13dcc9636e
Merge pull request #1279 from hgiesel/addonimprov
...
Remove disabled / Export via Components
2021-07-07 09:31:00 +10:00
Henrik Giesel
30a50b746b
Export editor globals under anki namespace
2021-07-06 03:48:33 +02:00
Henrik Giesel
a3a558159b
Don't use containers components within Container
...
- dynamic componets will be placed outside of the inner container
2021-07-06 03:43:40 +02:00
Henrik Giesel
f323f96a85
Export under anki.components
2021-07-06 03:36:02 +02:00
Henrik Giesel
9546c49f93
Remove WithShortcut for now - it does not work
2021-07-05 22:32:19 +02:00
Henrik Giesel
fb3545545c
disabledKey => fieldFocusedKey
2021-07-05 18:15:03 +02:00
Henrik Giesel
57fe9f91c2
Fix issues with sometimes cause assignment of wrong position value
2021-07-05 17:17:58 +02:00
Henrik Giesel
9e415344ae
Use Components.svelte instead of exporting from EditorToolbar.svelte
2021-07-05 16:19:03 +02:00
Damien Elmes
42514dd008
add comment about the use of linear-gradient
...
Otherwise one of us is likely to return to the code in a few years,
think it could be made simpler, and then break things again. :-)
2021-07-05 11:09:22 +10:00
hikaru-y
22e036a129
Prevent #dupe bgcolor from being carried over when copying text
...
use 'background-image' instead of 'background-color'
to prevent the background-color from being carried over
when copying text to another field in day mode
2021-07-05 04:11:03 +09:00
Damien Elmes
447bd2671c
Merge pull request #1273 from hgiesel/macshortcuts
...
Execute Ctrl+C/V/X/A via execCommand in editor
2021-07-04 16:02:52 +10:00
Henrik Giesel
5b2290f868
Execute Ctrl+C/V/X/A through execCommand in editor (so we can customize it)
2021-07-03 01:48:49 +02:00
Henrik Giesel
76f432c94f
Allow non-null assertion in focus-handlers
2021-07-03 01:14:59 +02:00
Henrik Giesel
1968972c1c
Move selection into editable, if it's not there after focus
2021-07-03 01:00:52 +02:00
Damien Elmes
f4b15e1351
Merge pull request #1266 from hgiesel/renamelib
...
More uniform file naming
2021-07-02 09:31:52 +10:00
Henrik Giesel
db4cbfcb26
More uniform file naming
...
kebap-case for .ts, .scss, .html, and directories
2021-07-01 12:24:16 +02:00
Henrik Giesel
2680ffb969
Use better cloze button icon
2021-07-01 11:46:39 +02:00
Henrik Giesel
27335e1d33
Refactor WithDropdown to be more versatile and cause less bugs
2021-06-30 14:01:33 +02:00
Damien Elmes
dc0c8c217f
unpin bootstrap now that 5.0.1 is out
...
4d51a13259
2021-06-29 11:25:14 +10:00
Damien Elmes
fdfcfee5d6
Merge pull request #1262 from hgiesel/visibledeckpreset
...
Make input in TextInputModal in dark mode visible
2021-06-29 11:24:21 +10:00
Henrik Giesel
48afafb04e
Make input in TextInputModal in dark mode visible
2021-06-29 03:20:15 +02:00
Damien Elmes
e26f461ada
use css columns instead of grid
...
Alternative approach to #1255
thanks to Hikaru and Henrik for the margin fix, and Matthias for
the initial idea and prototypes!
2021-06-29 11:19:56 +10:00
Damien Elmes
50e7d6ea00
disable cloze&math buttons in html mode
...
Following on from 35777bb0ca
Keeping them active seems to encourage users to experiment:
https://forums.ankiweb.net/t/cloze-deleting-html-svg/11011
2021-06-25 10:31:47 +10:00
Henrik Giesel
1599526726
Make Codable abstract more over its textarea v codemirror when using fieldHTML
2021-06-24 19:55:50 +02:00
Henrik Giesel
9f0343f591
Make EditingArea intialize this.fieldHTML, not Editable.fieldHTML
2021-06-24 19:15:07 +02:00
Damien Elmes
4ba0c8d169
mobile fixes for js field
...
Without the overflow change, the page viewport gets messed up.
And for some reason specifying the font size as 1rem does not work;
it needs to be explicitly set to 16px to prevent zoom in.
2021-06-24 18:06:22 +10:00
Damien Elmes
04d6a89216
disable smart quotes and capitalization in js field
...
+ use bootstrap styling
2021-06-24 18:00:06 +10:00
Damien Elmes
b959feb6e5
expose scheduler js option in deck config
2021-06-24 14:38:10 +10:00
Damien Elmes
841250533d
gear -> revert icon
...
https://forums.ankiweb.net/t/anki-2-1-45-beta/10664/30
2021-06-24 13:07:03 +10:00
Damien Elmes
a277dc96ba
Merge pull request #1248 from ankitects/revert-on-right
...
Move deck options revert button to right; hide when inactive
2021-06-24 13:01:57 +10:00
Henrik Giesel
e5709ec90c
Adapt use of createDropdown for editor buttons
2021-06-22 17:31:06 +02:00
Damien Elmes
7416660c59
move revert button to the right
...
With a confirmation step now, accidental taps when scrolling shouldn't
be an issue, and it leaves more room for the text.
2021-06-22 09:41:31 +10:00
Damien Elmes
7e96005d54
hide revert button when not active
2021-06-22 09:38:28 +10:00
Damien Elmes
15825f5629
fix svelte-check error by tweaking formatting
...
🤷
2021-06-22 09:27:37 +10:00
Henrik Giesel
40058b49b2
Have swithes be blue when checked in night mode
2021-06-21 22:37:37 +02:00
Henrik Giesel
b89fbe1aa5
Replace dash with underscore for night_mode_lib
2021-06-21 21:51:15 +02:00
Henrik Giesel
4ee66fb742
Add night_mode_lib as SCSS target
2021-06-21 21:44:23 +02:00
Henrik Giesel
447f50724a
Always show spinning reverse icon on mobile
2021-06-21 21:35:20 +02:00
Henrik Giesel
7b01dd1719
Remove use of bootstrap-dark.night-mode for deckoptions
...
The CSS for the Switch component had a conflict regarding background color
Also generally it makes sense to put the CSS into the components
2021-06-21 21:16:40 +02:00
Henrik Giesel
28bab1f7a1
Position Revert/Gear button on the left of the label
...
+ Make the reverse arrow spin
2021-06-21 20:48:33 +02:00
Henrik Giesel
69ec04190c
Make gear button show dropdown menu
2021-06-21 20:24:15 +02:00
Henrik Giesel
ad6577d88c
Revert button with gear icon, that shows revert dropdown item
2021-06-21 19:11:10 +02:00
Henrik Giesel
60f0ad4093
Associate Switch labels with their respective switches
2021-06-21 18:15:41 +02:00
Henrik Giesel
c99330990a
Put tooltip only on the info badge
2021-06-21 17:48:18 +02:00
Damien Elmes
f695fac40b
remove explicit line-height
...
It was causing text in dropdowns to be slightly truncated
(eg "Tag Only")
2021-06-21 17:02:48 +02:00
Damien Elmes
eda359d652
remove left pad on switches
2021-06-21 17:02:48 +02:00
Damien Elmes
db48fe2124
decrease margins in deck options top sticky bar
2021-06-21 17:02:48 +02:00
Henrik Giesel
00fb0e7395
Add g-1 class to DeckoptionsPage. Include transitions.scss
...
* Modal misbehaved before
2021-06-21 17:02:48 +02:00
Henrik Giesel
2d3f967899
Disable RevertButton tooltip on touch devices
...
The tooltip will show after you clicked Revert. There's no sensible way
to show the tooltip, without also triggering the functionality
2021-06-21 17:02:48 +02:00
Henrik Giesel
e20a5bf2f0
Make TriggerType an input argument for WithTooltip
2021-06-21 17:02:48 +02:00
Henrik Giesel
e131f23037
Increase padding on tooltips + Remove erroneous closing angle bracket
2021-06-21 17:02:48 +02:00
Henrik Giesel
708feac2a2
Implement Switch and SwitchRow
2021-06-21 17:02:48 +02:00
Henrik Giesel
bce4c4d393
Properly dispose of tooltip resources when unmounting
2021-06-21 17:02:48 +02:00
Henrik Giesel
024517e864
Reverse RevertButton being on the right side
2021-06-21 17:02:48 +02:00
Henrik Giesel
827ca7efe5
Alternative solution to markdown tooltips creating bottom margin
2021-06-21 17:02:48 +02:00
Henrik Giesel
f67b9b75da
Update RevertButton to use Badge and WithTooltip
2021-06-21 17:02:48 +02:00
Henrik Giesel
01f074785c
Add a tooltip showing delay of a quarter second
2021-06-21 17:02:48 +02:00
Henrik Giesel
94c24c0f44
Add back info circles, remove underlines
2021-06-21 17:02:48 +02:00
Henrik Giesel
895bb454ef
Update NotetypeSelector to use Item instead of ButtonToolbarItem
2021-06-21 17:02:48 +02:00
Henrik Giesel
6c9de074b6
Fix tooltip regression
2021-06-21 17:02:48 +02:00
Henrik Giesel
13accfa840
Have decimal keyboard for SpinBoxFloat
2021-06-21 17:02:48 +02:00
Henrik Giesel
77cfebcccc
Have numeric keyboard for SpinBox
2021-06-21 17:02:48 +02:00
Henrik Giesel
99caaf8d71
Switch Revert button and input element position
2021-06-21 17:02:48 +02:00
Henrik Giesel
e4e6dd3a39
Implement WithTooltip
2021-06-21 17:02:48 +02:00
Henrik Giesel
74ebf7e9ad
Wrap label and HelpPopup into span
...
Avoids HelpPopup in a differnt column upon label wrapping
2021-06-21 17:02:48 +02:00
Henrik Giesel
9acf6af355
Make revert button horizontal padding smaller
2021-06-21 17:02:48 +02:00
Henrik Giesel
18f33e117d
Have colors inherit for badges
2021-06-21 17:02:48 +02:00
Henrik Giesel
73e66d6dd0
Add down-arrow SASS function
2021-06-21 17:02:48 +02:00
Henrik Giesel
6462643328
Use custom down arrow for both SelectButton and EnumSelector
2021-06-21 17:02:48 +02:00
Henrik Giesel
745f940890
Put Col types into col.ts
2021-06-21 17:02:48 +02:00
Henrik Giesel
bf7efa19c1
Fix formatting
2021-06-21 17:02:48 +02:00
Henrik Giesel
191684c1b0
Rename SectionItem to just Item and use across option sections
2021-06-21 17:02:46 +02:00
Henrik Giesel
d54b21db7a
Import API from all option sections
2021-06-21 17:01:45 +02:00
Henrik Giesel
0e0bdccba7
Add Container.svelte
2021-06-21 17:01:45 +02:00
Henrik Giesel
695fa09619
Remove SCSS from ConfigEditor
2021-06-21 17:01:45 +02:00
Henrik Giesel
b684101d9b
Implement CheckBoxRow and SpinBoxFloatRow
2021-06-21 17:01:45 +02:00
Henrik Giesel
019d41d01d
Implement EnumSelectorRow and StepsInputRow
2021-06-21 17:01:45 +02:00
Henrik Giesel
d43d7b10e0
Implement SpinBoxRow
2021-06-21 17:01:45 +02:00
Henrik Giesel
cf89d89dc2
Add breakpoint for Bury EnumSelector
2021-06-21 17:01:44 +02:00
Henrik Giesel
9e3d955502
Use Row and Col in favor of ConfigEntry
2021-06-21 17:01:44 +02:00
Henrik Giesel
7d0a02fe56
Remove ConfigEntryFull
2021-06-21 17:01:44 +02:00
Henrik Giesel
4e11cade23
Factor RevertButton out of components
2021-06-21 17:01:44 +02:00
Henrik Giesel
a07dc2bd7a
Change margin and gutters off rows
2021-06-21 17:01:44 +02:00
Henrik Giesel
d8e285ba69
Move the remaining Options to new ConfigEntry layout
2021-06-21 17:01:44 +02:00
Henrik Giesel
a89e048259
Update DailyLimits and NewOptions to new format
2021-06-21 17:01:44 +02:00
Henrik Giesel
8bab61c62c
Wrap input and revert button into one col
2021-06-21 17:01:44 +02:00
Henrik Giesel
b02d14dcbd
Introduce TitledContainer
2021-06-21 17:01:44 +02:00
Henrik Giesel
26c4753c38
Allow for gutters between rows
2021-06-21 17:01:44 +02:00
Henrik Giesel
af3f65188f
Vertically align text + Remove bottom margin from alerts
2021-06-21 17:01:44 +02:00
Henrik Giesel
2ddc22f6c2
Turn icons into Bootstrap badges in deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
588faf5f50
Start using Bootstrap grid for deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
cb14011410
Use Bootstrap containers instead of CSS in base for deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
43b5ba42ba
Add container scss to deckoptions-base
2021-06-21 17:01:44 +02:00
Henrik Giesel
9def4075b5
Make API argument required in ConfigEditor
2021-06-21 17:01:44 +02:00
Henrik Giesel
d2360869b3
Add Section and SectionItem for the deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
0061d61db5
Generalize ButtonToolbarItem to SectionItem
2021-06-21 17:01:42 +02:00
Damien Elmes
16e37c5537
Merge pull request #1244 from hgiesel/colorpickersetcolor
...
Make Color Pickers also format with colors
2021-06-20 15:58:58 +10:00
Damien Elmes
d89c538c48
in/out -> request/response
...
The saved characters weren't worth the increased difficulty when
reading, and the fact that we were deviating from protobuf norms.
2021-06-20 15:49:20 +10:00
Henrik Giesel
b1414c188d
Add type hint in WithColorHelper
2021-06-19 16:31:35 +02:00
Henrik Giesel
0a7697596d
Make Color Pickers also format with colors
2021-06-19 16:27:09 +02:00
Damien Elmes
5715a28c76
support jsdom tests
...
Alternative would be to switch to jsdom for everything, but TextEncoder
is currently missing from jsdom, and jsdom mode is slower IIRC.
2021-06-19 09:43:09 +10:00
Henrik Giesel
cac802872c
Cannot create Jest jsdom tests (?)
2021-06-18 20:41:54 +02:00
Damien Elmes
22f073d29c
Merge pull request #1242 from hgiesel/codable
...
In-line HTML-Editing for Editor
2021-06-18 17:18:35 +10:00
Henrik Giesel
c74d486120
Satisfy svelte_check
2021-06-18 03:12:02 +02:00
Henrik Giesel
44ed54a20f
Remove components from editor BUILD.bazel again
2021-06-18 02:59:45 +02:00
Henrik Giesel
519cc78c66
Disable function dropdown when no field selected
2021-06-18 02:51:42 +02:00
Henrik Giesel
8ca7dc589c
Satisfy linter
2021-06-18 02:44:15 +02:00
Henrik Giesel
f06b709a66
Make text wrapper buttons work with Codable
2021-06-18 02:33:56 +02:00
Henrik Giesel
35777bb0ca
Disable Media button for Codable, but keep wrapping and cloze key for now
2021-06-18 02:02:01 +02:00
Henrik Giesel
5992910fe8
Disable ColorButtons for Codable
2021-06-18 01:44:15 +02:00
Henrik Giesel
2de2e7ccf5
Allow Tab and Shift+Tab on Codable
2021-06-18 01:32:46 +02:00
Henrik Giesel
dee7be2323
Disable FormatBlock buttons for Codable
2021-06-18 01:17:43 +02:00
Henrik Giesel
dd1344d7f0
Disable Bold button in Codable
2021-06-18 00:27:07 +02:00
Henrik Giesel
0315aeefd7
Make different onPaste behavior for Editable and Codable
2021-06-17 23:12:15 +02:00
Henrik Giesel
32b3702d3c
Have correct enter behavior in for Editable and Codable
2021-06-17 22:02:06 +02:00
Henrik Giesel
e773d75f6d
Add autoclosetag addon for CodeMirror
2021-06-17 21:45:11 +02:00
Henrik Giesel
b1414376e4
Make it so you don't have to close the HTML mode for html to be written back
2021-06-17 21:36:56 +02:00
Henrik Giesel
bf9cbcd527
Only toggle the current field, not all
2021-06-17 20:57:20 +02:00
Henrik Giesel
7687a030ff
Make Codable enter behavior the same as Editable
2021-06-17 20:47:33 +02:00
Henrik Giesel
7530121314
Match and fold tags
2021-06-17 20:27:34 +02:00
Henrik Giesel
44e2560c8b
Make editable hide correctly when activating codable
2021-06-17 19:08:14 +02:00
Henrik Giesel
df32f60029
Successfully add monokai theming
2021-06-17 18:36:12 +02:00
Henrik Giesel
751747a693
Make DOMParser correctly return innerHTML
2021-06-17 17:52:27 +02:00
Henrik Giesel
d2b697fc1b
Make Codable correctly update the editable state and its button
2021-06-17 17:49:50 +02:00
Henrik Giesel
6ce9d18e4c
Apply the Monokai theme
2021-06-17 17:18:00 +02:00
Henrik Giesel
e895f85cbc
Setup toggleHtmlEdit on editingArea
2021-06-17 17:08:33 +02:00
Henrik Giesel
c6cee3bf31
Connect HtmlEditButton to codable
2021-06-17 15:30:05 +02:00
Henrik Giesel
48c8f89a11
Display CodeMirror in editingArea
2021-06-17 14:44:03 +02:00
Henrik Giesel
96e549e0d4
Add codable element
2021-06-17 13:46:25 +02:00
Damien Elmes
532ac8b511
Merge pull request #1230 from RumovZ/fields-check
...
Check for misplaced or missing clozes when adding and in the editor
2021-06-17 21:26:16 +10:00
Damien Elmes
48cffca7a9
update js deps; pin marked
...
marked 2.1.0 fails to run on node 12
2021-06-16 16:47:32 +10:00
RumovZ
be54c4352a
Merge cloze hint divs into one
2021-06-15 08:43:18 +02:00
RumovZ
3572f0a0c6
Add editor hints for cloze errors
2021-06-12 17:35:40 +02:00
hikaru-y
d6370d13bf
Disable color picker buttons when a field is not focused
2021-06-11 23:36:06 +09:00
Damien Elmes
cd303de619
specific encoding of strings.json
...
https://forums.ankiweb.net/t/win10-build-error-unicodedecodeerror-gbk-codec-cant-decode-byte-0x91/10714
2021-06-11 20:12:38 +10:00
Damien Elmes
548f62c6df
Merge pull request #1225 from kelciour/segoe-ui-font-fix
...
Fix Segoe UI got replaced with Arial on Windows
2021-06-10 22:29:06 +10:00
Damien Elmes
153e1e8d41
new change notetype implementation for the frontend
...
- changes can now be undone
- the same field can now be mapped to multiple target fields, allowing
fields to be cloned
- the old Qt dialog has been removed
- the old col.models.change() API calls the new code, to avoid
breaking existing consumers. It requires the field map to always
be passed in, but that appears to have been the common case.
- closes #1175
2021-06-10 22:19:24 +10:00
kelciour
8a81533336
fix default font family
...
Probably a regression introduced with 818fe75721
2021-06-10 12:07:52 +03:00
Damien Elmes
95151f5025
add LIFO sorting options for new cards
2021-06-08 14:01:46 +10:00
Damien Elmes
33cecaa618
use different toolbar size on Mac
...
see discussion on 8c8bf26488
2021-06-05 11:28:36 +10:00
Damien Elmes
e03cb50915
tooltip styling fix
...
Thanks Matthias!
https://forums.ankiweb.net/t/anki-2-1-45-alpha/10061/88
2021-06-04 15:27:27 +10:00
Damien Elmes
8c8bf26488
try toolbar size of 1.85rem
...
https://forums.ankiweb.net/t/anki-2-1-45-alpha/10061/97
2021-06-04 15:11:34 +10:00
Damien Elmes
5f44bf503e
make _vars.scss public
2021-06-04 14:39:53 +10:00
Damien Elmes
d38f57cf3c
Merge pull request #1213 from RumovZ/new-flags
...
Add pink, turquoise and purple flags
2021-06-02 11:22:26 +10:00
RumovZ
9e43c91a62
Tweak flag colors
2021-06-01 18:14:54 +02:00
Damien Elmes
b26385420e
Merge pull request #1211 from hgiesel/bettercolor
...
Implement new text color / highlight color buttons
2021-06-01 17:55:57 +10:00
Damien Elmes
170a177c60
ensure changes to current field are saved before saving deck opts
...
https://forums.ankiweb.net/t/anki-2-1-45-alpha/10061/70
2021-06-01 15:54:07 +10:00
Damien Elmes
9a76565101
add options to sort reviews by deck
...
https://forums.ankiweb.net/t/is-studying-subdeck-by-subdeck-broken-in-2-1-44-mac/10458/2
2021-06-01 13:22:39 +10:00
RumovZ
9e56a4421b
Add violet, turquoise and purple flags
2021-05-31 12:03:30 +02:00
Henrik Giesel
ecc8fed5a9
Change default icon size of IconButtons
2021-05-31 00:31:10 +02:00
Henrik Giesel
d358d0eb1e
Remove rainbow SCSS
2021-05-31 00:20:41 +02:00
Henrik Giesel
973cd59b29
Make ColorPicker buttons halfwidth
2021-05-31 00:17:06 +02:00
Henrik Giesel
6d72e7bc49
Implement new ColorPicker
2021-05-30 22:58:40 +02:00
Henrik Giesel
93c0770cd0
Implement WithColorHelper.svelte
2021-05-30 21:44:05 +02:00
Henrik Giesel
dcdca0ac7a
Implement new way to way to display icons in IconButtons
...
* allows for multiple icons overlay
* allows to make individual icons smaller/bigger
2021-05-30 21:05:16 +02:00
Henrik Giesel
794f9db637
Add new color icons
2021-05-30 20:09:09 +02:00
Damien Elmes
7108d8615b
Merge pull request #1202 from hgiesel/nowrapdeckoptionstoolbar
...
Uniformly use properties to Button{Toolbar,Group} for setting button properties
2021-05-29 10:39:11 +10:00
Henrik Giesel
1caf7ada72
Add overflow-x: hidden for SelectButton
2021-05-28 21:33:34 +02:00
Damien Elmes
098acaf665
round to whole seconds
...
the steps are serialized as f32, and the resulting imprecision was
leading to decimal values
closes #1203
2021-05-28 19:34:25 +10:00
Damien Elmes
8ca1360f38
allow running test with 'bazel run jest'
2021-05-28 19:24:58 +10:00
Henrik Giesel
054f96b726
Uniformly use variables to Button{Toolbar,Group} for setting button properties
...
Instead of using WithTheming around ButtonToolbar/ButtonGroup
2021-05-27 17:13:36 +02:00
Damien Elmes
4a575dbe0a
hook up some missing translations in deck options screen
2021-05-26 14:41:18 +10:00
Damien Elmes
6a823e53a1
add option to clone current config
2021-05-26 13:20:24 +10:00
Damien Elmes
ce9e1c3370
roll back sass for now to quieten deprecation warnings
...
https://github.com/twbs/bootstrap/issues/34051
2021-05-26 10:20:34 +10:00
Damien Elmes
3489257f41
update ts deps
...
- prettier's formatting has changed, so files needed to be reformatted
- dart is spitting out deprecation warnings like:
254 │ 2: $spacer / 2,
│ ^^^^^^^^^^^
╵
bazel-out/darwin-fastbuild/bin/ts/sass/bootstrap/_variables.scss 254:6 @import
ts/sass/button_mixins.scss 2:9 @use
ts/components/ColorPicker.svelte 2:5 root stylesheet
DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.
Recommendation: math.div($grid-gutter-width, 2)
2021-05-26 09:37:40 +10:00
Damien Elmes
87cfd51cfa
update rules_nodejs
2021-05-26 09:12:23 +10:00
Henrik Giesel
a819fa6abe
Satisfy svelte_check
2021-05-26 08:46:12 +10:00
Henrik Giesel
e21947956f
Fix TextInputModal preset value
2021-05-26 08:46:12 +10:00
Henrik Giesel
9e02d3a92c
Use TextInputModal directly from svelte component
...
* the only important thing is that it is not positioned within elements
with display: none
* I think we can treat the existence of the modal to be a kind of
"precondition" that has to be met for the component to be used
2021-05-26 08:46:12 +10:00
Henrik Giesel
a55ab8e03a
Inline some bootstrap-dark styling
2021-05-26 08:40:00 +10:00
Henrik Giesel
ba1abf0353
Use min-{width,height} for legacy buttons
2021-05-25 20:29:42 +02:00
Henrik Giesel
e7f9eaf1ce
Restructure legacy scss / remove button_mixin import
2021-05-25 13:57:09 +02:00
Henrik Giesel
5b6fbad5bb
Base width/height off on --toolbar-size for legacy buttons
2021-05-25 13:29:55 +02:00
Damien Elmes
4b011c40ff
Merge pull request #1190 from kleinerpirat/main
...
Make legacy buttons look and feel like Svelte buttons
2021-05-25 14:20:47 +10:00
Henrik Giesel
1647538d63
Fix background on DropdownItem + make transitions on buttons quicker
2021-05-24 19:53:30 +02:00
Matthias M
3d50972489
Restrict inversion to images
2021-05-24 19:46:51 +02:00
Matthias M
3ecc7add82
Adjust active:hover behaviour
...
so it behaves like Svelte buttons, when clicking and dragging the mouse away from the button.
2021-05-24 13:11:50 +02:00
Matthias M
ee1fbf2a8f
Use !important instead of :not() selector
...
!important cannot be used with the radius mixin, so I had to state them explicitly.
2021-05-24 11:21:42 +02:00
Damien Elmes
c29c883e7c
mention new limit bound by reviews in tooltip
2021-05-24 19:04:00 +10:00
Matthias M
afd6e47799
Merge branch 'ankitects:main' into main
2021-05-24 10:59:02 +02:00
Matthias M
af75129974
Revert changes, add exceptions
...
to keep the PR changes as contained as possible without the use of !important.
2021-05-24 10:37:43 +02:00
Damien Elmes
822a360b40
round floats before comparing against default values
...
tabbing through the Advanced section was marking things like
'easy bonus' as modified
2021-05-24 18:26:01 +10:00
Damien Elmes
267e287c30
hard-code code color, as the tooltip background is always dark
2021-05-24 18:25:19 +10:00
Damien Elmes
5f8e895f3e
move v3 options into separate section; more description/section tweaks
2021-05-24 18:25:17 +10:00
Damien Elmes
120659fc22
Merge pull request #1183 from hgiesel/keykey
...
Switch to event.key for keyboard sequences
2021-05-24 10:53:24 +10:00
Matthias M
066eb57283
Remove background-color transition from .button
...
but keep color, border-color and box-shadow transition as it is.
2021-05-23 19:41:45 +02:00
Matthias M
a2980e04b0
Remove CSS variable button-bg again
...
The variable is not as useful as I thought, since night mode uses a gradient anyway (and day mode is simply white).
2021-05-23 19:39:57 +02:00
Matthias M
84670cc1c2
Exclude dropdown items from night mode style
...
Makes dropdown menu look cleaner.
:not() selector did not work because the color selector button would be affected for some reason.
2021-05-23 15:58:22 +02:00
Matthias M
6cefa0f1bf
Remove transition from .linkb to fix blinking
2021-05-23 15:55:22 +02:00
Matthias M
98788ca52e
Merge branch 'ankitects:main' into main
2021-05-23 01:45:42 +02:00
Matthias M
0063dcb3c8
Add CSS variable --button-bg
...
might be useful for add-on developers.
2021-05-23 01:18:00 +02:00
Matthias M
c612c41023
Make legacy buttons look like Svelte buttons
...
with extra night mode handling.
2021-05-23 00:50:02 +02:00
Matthias M
95cfd7e0b5
Invert legacy button content in night mode
...
for better visibility.
2021-05-22 22:40:21 +02:00
Matthias M
39aeaa141e
Remove unnecessary Linux .button styling
2021-05-22 22:33:24 +02:00
Matthias M
8db2a4cf11
Remove hard-coded values from .button
...
so that dynamic border-radius gets used instead.
2021-05-22 22:29:50 +02:00
Henrik Giesel
6f31ab5990
Prefer event.which over event.{key,code}
...
It works better with alternative Latin-based keyboard layouts
2021-05-22 17:50:23 +02:00
Damien Elmes
cf1da4b264
fix missing cumulative overlays in graphs
2021-05-22 10:19:13 +10:00
Henrik Giesel
5cbda88605
Base shortcuts with letters no event.key, with symbols/numbers on event.code
2021-05-21 22:45:55 +02:00
Henrik Giesel
cc15145a0b
Make numpad keys also cancel current shortcut sequence
2021-05-21 19:03:06 +02:00
Henrik Giesel
21cf99d612
Capitalize keyboard shortcut letters
2021-05-20 18:46:22 +02:00
Henrik Giesel
3145e4884f
Instead of timeouts, make non-related keypresses cancel shortcut sequences
2021-05-20 18:32:53 +02:00
Henrik Giesel
abf1418695
Switch to keyboard shortcuts based on event.key
2021-05-20 18:28:59 +02:00
Damien Elmes
4849ca17e7
add a hack to handle sass resolution in svelte in external workspace
2021-05-20 15:32:06 +10:00
Damien Elmes
e8fa170bab
experiment with bottom border on deck option headings
2021-05-20 14:54:07 +10:00
Damien Elmes
4fc701eb1b
fix fields/cards font size & too-large toolbar on high DPI Windows
...
- enable default_css on editor again, so that the html element
is set to the system font size. If this is bringing in unwanted styling,
maybe we can come up with a different solution that just adjusts the
fonts
- make toolbar size relative to html font size, instead of hard-coding
it
2021-05-20 13:15:17 +10:00
Damien Elmes
3f232b6ba1
make sticky bar border a bit fainter
2021-05-20 12:49:07 +10:00
Damien Elmes
2ecd91eeb2
fix invisible dropdown arrow in night mode; use bootstrap styling in top
2021-05-20 12:43:47 +10:00
Damien Elmes
878131d201
apply the left padding in one place
2021-05-19 20:02:04 +10:00
Damien Elmes
991695b7f6
use standard toolbar colors for legacy items
2021-05-19 19:58:12 +10:00
Damien Elmes
5036e25399
fix broken night mode styling
...
#1172 removed the select styling, but EnumSelector has not been updated
yet
2021-05-19 19:48:31 +10:00
Damien Elmes
5c9f483cdc
move deck name into window title; v-center sticky bar
2021-05-19 19:34:15 +10:00
Damien Elmes
f93075628a
increase toolbar size by 5px and use the default font sizes
...
Workaround for #1174 for now
2021-05-19 19:23:32 +10:00
Damien Elmes
818fe75721
simplify previous patch
...
The default 1 rem is fine, but we need to apply the default font size
to the html element instead of the body for the definition of rem to
update.
Fixes #1174
2021-05-19 19:06:20 +10:00
Damien Elmes
45edc42959
fix inconsistent font sizes
...
fixes #1174
2021-05-19 19:00:09 +10:00
Damien Elmes
0804771626
indent headings and bold them to match graph style
2021-05-19 17:20:01 +10:00
Damien Elmes
c7e401d687
tweak left margin, and checkbox top margin
2021-05-19 17:18:28 +10:00
Damien Elmes
2135cbd001
left align input boxes; decrease width
2021-05-19 16:41:19 +10:00
Damien Elmes
60ef1c35eb
show note about old options screen if any add-ons are installed
2021-05-19 16:20:25 +10:00
Damien Elmes
390379ed62
disable svelte-check on Windows for now
2021-05-19 11:45:02 +10:00
Henrik Giesel
20d117e315
Add back global CSS for input
2021-05-18 19:30:43 +02:00
Henrik Giesel
5eabcdc987
Allow any in deckoptions/index until typing is provided
2021-05-18 19:21:25 +02:00
Henrik Giesel
8779a8a025
Make blur a proper event listener
2021-05-18 19:19:05 +02:00
Henrik Giesel
a602561612
Make SaveButton functional
2021-05-18 18:55:22 +02:00
Henrik Giesel
1582bdb31e
Make styling on select button behave correctly
2021-05-18 17:50:18 +02:00
Henrik Giesel
30d246d74b
WIP: Use our components in deckoptions sticky bar
2021-05-18 16:32:29 +02:00
Henrik Giesel
777d774545
Use StickyBar in deckoptions
2021-05-18 14:13:11 +02:00
Damien Elmes
43f1750eac
update jsdoc
...
https://github.com/jsdoc/jsdoc/issues/1908
2021-05-18 09:22:57 +10:00
Damien Elmes
5bd3884a71
support card state mutator in test scheduler
...
Documentation to come
2021-05-17 16:59:02 +10:00
Damien Elmes
957202a704
fix review sort order being shown in v2 scheduler options
2021-05-16 21:50:51 +10:00
Damien Elmes
a345ba1347
support markdown in JS tooltips
...
`marked` adds about 44k to the bundle size unfortunately :-(
2021-05-16 21:43:58 +10:00
Damien Elmes
fe5dee2a67
rework various aspects of the test scheduler
...
- Daily limits are no longer inherited - each deck limits its own
cards, and the selected deck enforces a maximum limit.
- Fetching of review cards now uses a single query, and sorts in advance.
In collections with a large number of overdue cards and decks, this is
faster than iterating over each deck in turn.
- Include interday learning count in review count & review limit, and
allow them to be buried.
- Warn when parent review limit is lower than child deck in deck options.
- Cap the new card limit to the review limit.
- Add option to control whether new card fetching short-circuits.
2021-05-16 20:23:07 +10:00
Damien Elmes
5f7590c4b4
expose new sorting options in test scheduler options; move things around
2021-05-13 15:23:16 +10:00
Damien Elmes
9ff8727e68
pass sort options into test scheduler
...
- split new card fetch order and subsequent sort order; use latter
when building queues
- default to spacing siblings when burying is off, with options to
show each sibling in turn, and shuffle the fetched cards
2021-05-13 15:21:20 +10:00
Damien Elmes
4d51a13259
roll back bootstrap until 5.0.1 comes out
...
Modals are currently broken:
https://github.com/twbs/bootstrap/issues/33840
2021-05-11 13:06:03 +10:00
Damien Elmes
2dab3f0487
disable broken svelte_check test on Windows for now
...
Likely caused by a lack of sandboxing on Windows, causing the generated
.d.ts files to be visible to svelte_check, and being picked up in
preference over the .svelte file.
2021-05-08 12:15:49 +10:00
Damien Elmes
6dd78b0ea5
Merge pull request #1159 from hgiesel/newapproach
...
Prefer idiomatic Svelte features over dynamic components
2021-05-08 11:35:31 +10:00
Henrik Giesel
755b39b59e
Check for id when inserting dynamic elements
...
* I'm not sure it behaved, if there were multiple elements
inserted by different add-ons into the same container
2021-05-07 16:50:17 +02:00
Henrik Giesel
c894d32c14
Fix remaining errors in editor/*.svelte files
2021-05-07 15:10:28 +02:00
Henrik Giesel
9379477e09
Use MouseEvent instead of KeyboardEvent in WithShortcut
...
* otherwise the disabled button will allow it to pass through
2021-05-07 14:46:08 +02:00
Henrik Giesel
3d4224a886
Rename Detachable.detach to detached
2021-05-07 14:31:08 +02:00
Damien Elmes
7f5972c080
update license checker for security issue in dependency
2021-05-07 18:50:25 +10:00
Damien Elmes
5213ff8dbb
update JS deps
...
Unfortunately we're still stuck with a security alert about underscore,
because the latest jsdoc uses an old underscore, and protobufjs depends
on it.
https://github.com/jsdoc/jsdoc/issues/1908
2021-05-07 18:03:22 +10:00
Damien Elmes
4fe03e1f22
tweak hover css to work with latest js deps
2021-05-07 17:57:28 +10:00
Henrik Giesel
cd6599c301
Fix module name formatting
2021-05-07 02:14:54 +02:00
Henrik Giesel
1e5feffba0
Fix Preview tooltip
2021-05-07 02:04:44 +02:00
Henrik Giesel
8a558eb297
Fix unused CSS selector issue in graphs introduced by updating Svelte
2021-05-07 02:04:44 +02:00
Henrik Giesel
fbc9c8a250
Use any in toolbar.ts for using context as parameter
2021-05-07 02:04:44 +02:00
Henrik Giesel
8f2c5a0c1c
Turn on editor:eslint
2021-05-07 02:04:44 +02:00
Henrik Giesel
147617dff2
Add copyright header
2021-05-07 02:04:44 +02:00
Henrik Giesel
17bca7be6e
Add ts-expect-error for module import in EditorToolbar
2021-05-07 02:04:44 +02:00
Henrik Giesel
bb2fb8e9f5
Fix ButtonDropdown
2021-05-07 02:04:44 +02:00
Henrik Giesel
0a979d789a
Make LabelButtons support active notion
2021-05-07 02:04:44 +02:00
Henrik Giesel
95b6b386dc
Only initialize extension apis if necessary
2021-05-07 02:04:44 +02:00
Henrik Giesel
d92a0c44c7
Add lefttopbtns as AddonButtons
2021-05-07 02:04:44 +02:00
Henrik Giesel
d3bec1a584
Add ButtonToolbarItem as interface for modifying button groups
2021-05-07 02:04:44 +02:00
Henrik Giesel
55e8256f0e
Clean up ButtonGroup and factor out extension logic
2021-05-07 02:04:44 +02:00
Henrik Giesel
dd99524ae0
Enable setting of PreviewButton and hiding of cloze button again
2021-05-07 02:04:42 +02:00
Henrik Giesel
0612c3428b
Fix typing issues
2021-05-07 02:03:55 +02:00
Henrik Giesel
47edde0d00
Set tooltip for buttons correctly
2021-05-07 02:03:55 +02:00
Henrik Giesel
74dad42df3
Use ButtonGroupItem for all buttons in editor
2021-05-07 02:03:55 +02:00
Henrik Giesel
68339ab0b0
Set ButtonPosition via ButtonGroupItem
2021-05-07 02:03:55 +02:00
Henrik Giesel
f724b45ae1
Add hiding functionality in ButtonGroup
2021-05-07 02:03:55 +02:00
Henrik Giesel
da5756822f
Add API for adding new buttons, updating existing ones in ButtonGroup
2021-05-07 02:03:55 +02:00
Henrik Giesel
5f8f4c06f8
Fix issue with dropdowns
2021-05-07 02:03:55 +02:00
Henrik Giesel
deafb0925c
Add .dropdown-menu class to DropdownMenu
2021-05-07 02:03:55 +02:00
Henrik Giesel
099325f407
Add back ColorButtons
2021-05-07 02:03:55 +02:00
Henrik Giesel
af7b1f7d7f
Activate FormatBlockButtons
2021-05-07 02:03:55 +02:00
Henrik Giesel
805ef26e20
Add all format inline buttons
2021-05-07 02:03:55 +02:00
Henrik Giesel
35267f30c9
Export module functions from EditorToolbar
2021-05-07 02:03:55 +02:00
Henrik Giesel
e7706bac6d
Refactor {CommandIcon,Icon,Square}Button into IconButton and WithState
2021-05-07 02:03:55 +02:00
Henrik Giesel
76ea48fade
Make StickyBar flex
2021-05-07 02:03:55 +02:00
Henrik Giesel
45c52f75aa
Translate ts files in ts/editor to svelte files
2021-05-07 02:03:55 +02:00
Henrik Giesel
8238ec5727
Rename editor-toolbar to components
2021-05-07 02:03:55 +02:00
Henrik Giesel
1515e07ea6
Add StickyBar.svelte WithTheming.svelte
2021-05-07 02:03:55 +02:00
Henrik Giesel
138e69bcf1
Move Notetype buttons to using slots instead of dynamic components
2021-05-07 02:03:55 +02:00
Henrik Giesel
a51eb42e7b
Simplify structure of EditorToolbar and ButtonGroup in editor HTML file
2021-05-07 02:03:55 +02:00
Damien Elmes
a24456d96f
fix missing keyboard modifier translations on Linux/Windows
...
https://forums.ankiweb.net/t/card-browser-hotkeys-semi-broken/9815
2021-05-07 09:30:06 +10:00
Damien Elmes
b4cb2baa0e
fix properties missing from generated Svelte .d.ts files
...
They're currently being set to 'any', as we're not providing the dependencies
to the tsc invocation. Older Anki versions had the same issue, and we'll
want to fix that as well, but for now this at least restores the missing
props.
2021-05-04 18:55:58 +10:00
Damien Elmes
0d113fd447
i18n deckoptions; move some options into separate 'advanced' section
2021-04-26 23:34:58 +10:00
Damien Elmes
7999682f6d
defer bounds checking in SpinBox to focus loss
...
The previous behaviour was preventing a backspace to remove the
current text when a minimum of 1 or greater was supplied
2021-04-26 20:17:48 +10:00
Henrik Giesel
b0988e43e1
Move EditorToolbar API into EditorToolbar.svelte
2021-04-25 19:15:00 +02:00
Henrik Giesel
a21a4d330b
Initialize editor toolbar via function, not web component
2021-04-25 18:32:01 +02:00
Damien Elmes
bd45967129
add translations for deck option warnings
...
+ cap maximum recommended review limit to 9999, since we don't allow
the user to set it higher
2021-04-25 23:06:35 +10:00
Damien Elmes
7aceb9fd3f
subLabel->tooltip
2021-04-25 21:37:21 +10:00
Damien Elmes
9a25f8480d
slide warnings in/out
2021-04-25 21:10:53 +10:00
Damien Elmes
e5264c909b
use lodash instead of json in RevertButton
2021-04-25 19:34:07 +10:00
Damien Elmes
d8ca46e6e9
experimental support for extending add-ons screen with Svelte
2021-04-25 19:33:18 +10:00
Damien Elmes
fdb814cbcd
deckconfig->deckoptions
2021-04-25 19:02:30 +10:00
Damien Elmes
863fa972ef
RevertIcon->RevertButton
2021-04-25 19:02:30 +10:00
Damien Elmes
d5c1f19521
basic support for add-ons in new deck config screen
...
- expose the data as a writable store
- currently only supports raw HTML; example to come
- fix changes not marking a deck config as modified
- the data is currently packed into the deckconfig object, but we
may move these to a separate store in the collection config in the
future, like is done with decks/notetypes
2021-04-24 11:08:01 +10:00
Damien Elmes
fcd1582adb
Merge pull request #1150 from hgiesel/notetypechoose
...
Editor Toolbar cleanup
2021-04-24 11:04:24 +10:00
Henrik Giesel
6209731cd0
Prefer slicing and splicing
2021-04-24 01:48:22 +02:00
Henrik Giesel
f94c7f380f
Fix typing typo
2021-04-24 01:15:16 +02:00
Henrik Giesel
438fcae263
Add addMenu and updateMenu, avoid using {buttons,menus}Promise outside of class
2021-04-24 01:08:55 +02:00
Henrik Giesel
9346e007c9
Add mostly working addcards topbar
2021-04-24 00:00:32 +02:00
Henrik Giesel
667db3c12e
Simplify Handling of margins and padding of ButtonGroup & ButtonDropdown
2021-04-23 22:22:53 +02:00
Henrik Giesel
bf0ea46536
Simplify tag structure in ButtonGroup
2021-04-23 21:42:44 +02:00
Henrik Giesel
da230fbb24
Add simple version of Chooser buttons
2021-04-23 21:25:44 +02:00
Henrik Giesel
01b53a6be8
Make update algorithm in editor-toolbar/index.ts recursive
2021-04-23 20:50:09 +02:00
Henrik Giesel
e66edd3887
Reduce typing overhead in ts/editor-toolbar/index.ts and export buttonGroup
2021-04-23 19:05:43 +02:00
Henrik Giesel
aebaaf1a70
Add IterableToolbarItem interface for easier typing
2021-04-23 18:53:52 +02:00
Henrik Giesel
14d3877bb4
Fix regression from eefdd564e2
...
Negative indices were not treated correctly (as offset from end)
2021-04-23 18:21:03 +02:00
Henrik Giesel
5acf330414
Add withLabel component
2021-04-23 17:20:52 +02:00
Henrik Giesel
59f0a2dd70
Make dynamicComponents usable for addons, rather than the components directly
...
rawButton({ html: ... })
instead of
{ component: RawButton, html: ... }
2021-04-23 16:43:36 +02:00
Damien Elmes
68d35835de
onDestroy must be called from top level
2021-04-23 20:25:47 +10:00
Damien Elmes
c78bcebcf6
make return value match mergeTooltipAndShortcut() signature
2021-04-23 19:48:36 +10:00
Damien Elmes
eefdd564e2
remove nested terneries and enable lint
...
@hgiesel would you mind quickly checking I've correctly captured
the logic here?
2021-04-23 13:00:18 +10:00
Damien Elmes
5e37cb7561
move isApplePlatform() into lib/shortcuts, and remove sveltelib file
2021-04-23 11:22:30 +10:00
Damien Elmes
fba4b7ac24
use new registerShortcut() fuction in DeckConfigPage
2021-04-23 11:20:12 +10:00
Damien Elmes
61dfa02b88
update remaining anki/ references
2021-04-23 10:16:40 +10:00
Henrik Giesel
31eaeef09b
Rename anki/ to lib/ for export
...
import _ from "anki/x";
will become
import _ from "lib/x";
to fit the directory name.
2021-04-23 10:02:28 +10:00
Damien Elmes
628f337c3c
Merge pull request #1148 from hgiesel/updatetypescript
...
Update Typescript to 4.2.4
2021-04-23 09:48:34 +10:00
Damien Elmes
ca74b25481
Merge pull request #1146 from hgiesel/shortcuts
...
Shortcut API for Editor
2021-04-23 09:44:01 +10:00
Henrik Giesel
ed602146df
Update eslint to 4.22.0
2021-04-22 19:19:39 +02:00
Henrik Giesel
4b7e7bbdb1
Import createPatch in ts/sql_format directly
2021-04-22 18:43:35 +02:00
Henrik Giesel
697fa4ed9a
Update Typescript to 4.2.4
2021-04-22 18:33:42 +02:00
Henrik Giesel
90a6024dff
Separate type import for WithShortcut
2021-04-22 18:19:09 +02:00
Henrik Giesel
d4e6fe6a34
Prefer optionalModifiers over register multiple shortcuts
2021-04-22 18:15:25 +02:00
Henrik Giesel
4ebad6f173
Add optionalModifiers parameter to registerShortcut
2021-04-22 17:28:38 +02:00
Henrik Giesel
33fc648695
Add license headers
2021-04-22 16:49:30 +02:00
Henrik Giesel
363469dc36
Satisfy formatter
2021-04-22 15:24:27 +02:00
Henrik Giesel
0abcb86007
Use registerShortcut in inputHandlers + Avoid focus on color picker
2021-04-22 15:09:09 +02:00
Henrik Giesel
2477684e1c
Fix typo deregisters
2021-04-22 14:54:29 +02:00
Henrik Giesel
469c138ec1
Add shortcut labels for ColorPicker and Latex items
2021-04-22 14:35:44 +02:00
Henrik Giesel
e68d019b19
Add better better shortcutLabel support for buttons
2021-04-22 14:18:48 +02:00
Damien Elmes
c7c81c8f15
override some bootstrap styles for night mode
...
There's probably a better way to accomplish this - fixes welcome!
Also fix the page reloading when enter hit inside the modal.
2021-04-22 21:57:32 +10:00
Henrik Giesel
ffb0fd67e5
Add editing fluent strings without attached keyboard shortcuts
2021-04-22 13:38:37 +02:00
Henrik Giesel
7c2ac1fd37
Add getPlatformString for making shortcuts to platform string
2021-04-22 13:04:24 +02:00
Damien Elmes
d3d083651f
catch ctrl/cmd+enter to save settings
2021-04-22 19:54:57 +10:00
Damien Elmes
80689d319a
move top padding into sticky area to prevent movement
2021-04-22 19:54:50 +10:00
Damien Elmes
6d4c9994a8
disable overscroll on html as well
2021-04-22 19:54:44 +10:00
Damien Elmes
84eea8dbb9
more layout tweaks
...
- reduce maximum width
- de-emphasise revert and info buttons
- reduce grid margin
2021-04-22 18:11:27 +10:00
Damien Elmes
fcf6ad954f
add a workaround for bad save button in rtl mode
...
Bootstrap provides a different set of CSS for RTL languages, but having
to deal with two separate sets of css files depending on the language
would be a PITA.
2021-04-22 17:45:16 +10:00
Damien Elmes
d0ade13654
fix add/rename dialog right-aligning, and RTL issue
2021-04-22 17:31:33 +10:00
Damien Elmes
3b86fbe454
fill width when steps exceed 2; add bottom margin
2021-04-22 17:28:14 +10:00
Damien Elmes
1a8da843c6
allow checkboxes and select entries to take up whole line
2021-04-22 16:47:10 +10:00
Damien Elmes
779bc4953a
switch config to a grid; move info to popups
2021-04-22 15:39:50 +10:00
Damien Elmes
ab5c32abfd
fix select appearance inside webview
2021-04-22 11:41:41 +10:00
Henrik Giesel
3cbddf3e8c
Move up cloze id
2021-04-22 03:37:01 +02:00
Damien Elmes
b175ba9d72
minor layout tweaks to deck conf screen
...
- more space for dropdown
- limit width of main area so popups wrap correctly
- experiment with different colour dropdown
2021-04-22 11:33:27 +10:00
Henrik Giesel
7ab5f736df
Move other buttons to WithShortcut
2021-04-22 03:25:31 +02:00
Damien Elmes
a7ef410615
hook new deck config screen up behind an env var
2021-04-22 10:59:16 +10:00
Henrik Giesel
b0ddae0f6c
Add first shortcuts for bold, italic, underline, removeFormat
2021-04-22 02:37:04 +02:00
Henrik Giesel
e2e1b4d37b
Use registerShortcut within WithShortcut
2021-04-22 01:15:38 +02:00
Henrik Giesel
3b52bf6cb8
Add lib/shortcuts
2021-04-22 01:15:38 +02:00
Henrik Giesel
20f17a962a
Add WithShortcut
2021-04-22 01:15:38 +02:00
Henrik Giesel
b66699355c
Fix isBlockElement()
2021-04-21 14:40:16 +02:00
Henrik Giesel
099ca563e3
Remove paragraph button
2021-04-21 14:36:24 +02:00
Henrik Giesel
ae801729ec
Prefer exec over matchAll
2021-04-21 14:18:44 +02:00
Henrik Giesel
18efdcac67
Gather editor-toolbar svelte components into filegroup
2021-04-21 13:18:31 +02:00
Henrik Giesel
29fef178d8
Add copyright headers
2021-04-20 15:43:59 +02:00
Henrik Giesel
282d9df02e
Remove last ts-expect-error
2021-04-20 15:41:26 +02:00
Henrik Giesel
6e2f2fc3a6
Move toolbar initialization into toolbar.ts
2021-04-20 15:32:02 +02:00
Henrik Giesel
f11db5579e
Move dynamic component initialization logic from editor to editor-toolbar
2021-04-20 14:23:28 +02:00
Henrik Giesel
94eb3af662
Improve behavior of paragraph command and add tooltip
2021-04-20 13:46:01 +02:00
Henrik Giesel
973b7008b7
Make indent outdent only work for list items
...
+ make paragraph show its active state
2021-04-20 13:44:44 +02:00
Henrik Giesel
5e978b28d4
Move button implementations from editor-toolbar to editor
2021-04-20 13:44:44 +02:00
Henrik Giesel
93136030e9
Include editor-toolbar as a library in editor
2021-04-20 13:44:44 +02:00
Henrik Giesel
85ea209d06
Generalize commandIconButton functionality of setting active state
2021-04-20 13:44:44 +02:00
Henrik Giesel
96bd5c7b20
Add paragraph button
2021-04-20 13:44:44 +02:00
Henrik Giesel
3adcad4ca3
Don't use <br>s when inside of paragraph
2021-04-20 13:44:44 +02:00
Henrik Giesel
ece4f75592
Generalize inListItem to getAnchorElement
2021-04-20 13:44:43 +02:00
Henrik Giesel
a3a085249d
Add CSS for making empty paragraph elements visible
2021-04-20 13:44:43 +02:00
Damien Elmes
f61920e7ed
Merge pull request #1139 from hgiesel/toolbarfixes
...
Fix ButtonDropdown not hiding when closed
2021-04-20 19:54:51 +10:00
Damien Elmes
48fc9251bd
implement deck config saving on JS end
2021-04-20 19:50:05 +10:00
Damien Elmes
de5f892807
allow postrequest to send a binary body; fix WithGraphData
...
As far as I can tell, the existing code was transforming the encoded
protobuf data into UTF8, and we're just lucky it wasn't causing problems
with the small message we were sending.
2021-04-20 17:47:52 +10:00
Damien Elmes
c5cecabdd4
include sourcemaps for pages/* in dev builds
2021-04-20 17:33:46 +10:00
Damien Elmes
05f75c6194
implement deck config updating
2021-04-20 14:57:44 +10:00
Henrik Giesel
5550dc8e44
Hide ButtonDropdown when closed
...
Otherwise ul.{svelte-class} in ButtonGroup has higher priority then .show from Bootstrap
2021-04-19 14:47:10 +02:00
Damien Elmes
fc419e3b81
tweak deckconfig top area formatting
...
I suspect there's a better way to ensure selector and save button are
shown on the same line on both large and small widths; PRs are welcome.
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
Damien Elmes
3aa1d8bab9
move daily limits into separate section; add extra warning+tweak formatting
2021-04-18 00:04:02 +10:00
Damien Elmes
75205948b3
apply spinbox limits on each keystroke
2021-04-18 00:03:02 +10:00
Damien Elmes
20d1a3d1b1
avoid showing the strings twice
...
While it can help to show the link between the settings, having multiple
sections change at once feels a bit over the top
2021-04-17 22:56:55 +10:00
Damien Elmes
0f741912b6
add text to describe deckconfig warnings
2021-04-17 22:53:47 +10:00
Damien Elmes
e825a77ddd
update config automatically, and update parent limits at same time
2021-04-17 21:44:33 +10:00
Damien Elmes
dbf31d6748
add some unit tests to deckconfig
2021-04-17 21:00:10 +10:00
Damien Elmes
f89d7b2b1e
add a hack to avoid Long.js in Jest tests
2021-04-17 17:05:48 +10:00
Damien Elmes
c0e615ddde
support es6 imports in Jest tests
...
Switching to lodash-es caused Jest to fail. The standard Jest workflow
would be to transpile things with Bazel, but we can do it faster by
bundling with esbuild.
the log in lib.test.ts has revealed numbers are being set as Long instead
of JS numbers, and the published workaround for it is not working :-(
2021-04-17 16:38:45 +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
Damien Elmes
2ea5f5abde
Merge pull request #1134 from hgiesel/formatblock
...
Add block formatting options to Editor
2021-04-17 09:40:52 +10:00
Henrik Giesel
05c36ef205
Satisfy svelte_check
2021-04-16 19:00:36 +02:00
Henrik Giesel
b5e3156f6a
Color ButtonDropdown background in var(--bg-color) regardless of theme
2021-04-16 18:36:54 +02:00
Henrik Giesel
65442c5a84
Make clearer which parts of ButtonGroup css are theming related
2021-04-16 18:24:43 +02:00
Henrik Giesel
b102d0bbd2
Change style for Dropdown{Menu,Item} to match Button{Group,Dropdown}
2021-04-16 18:14:09 +02:00
Henrik Giesel
01870e68fa
Adjust ButtonDropdown for night mode
2021-04-16 17:14:47 +02:00
Henrik Giesel
6ce61de27c
Mark indent / outdent as non activatable
2021-04-16 16:11:53 +02:00
Henrik Giesel
11ace2f489
Add Fluent translations
2021-04-16 16:08:00 +02:00
Damien Elmes
168af33aa8
add macro for invoking Jest
2021-04-16 23:46:31 +10:00
Damien Elmes
72193c45ec
more experimental updates to deck config screen
...
- try out bootstrap modals - they're not perfect, but let's see how
they go for now. Won't be hard to switch to bridge commands if required.
- handle adding/renaming/removing
- add a class to manage the state
2021-04-16 23:29:21 +10:00
Henrik Giesel
7e47c918ee
Add justify and indentation menu
2021-04-16 15:26:49 +02:00
Damien Elmes
cc5cfb06fb
support passing @types/... into svelte-check
2021-04-16 23:18:33 +10:00
Damien Elmes
f474803146
switch to full lodash library
...
Individual packages are going away in v5, and we can rely on tree
shaking to only get what we need.
2021-04-16 20:14:17 +10:00
Damien Elmes
c1ed56d748
Merge pull request #1131 from glutanimate/fix-asyncreactivedata-typo
...
Fix minor typo
2021-04-16 11:58:58 +10:00
Henrik Giesel
ef4ea3db23
Add ol and ul buttons, rename previous format to formatInline
2021-04-16 03:46:37 +02:00
Henrik Giesel
a6f74a387a
Satisfy ./script/svelte-check
2021-04-16 03:10:39 +02:00
Henrik Giesel
190a863b4b
Remove unnecessary comments / dead code
2021-04-16 02:51:03 +02:00
Damien Elmes
8b336eeaa7
quiet esbuild output and format file
2021-04-16 10:27:09 +10:00
Henrik Giesel
cc2bd542af
Solve the race conditions of button insertion by operating on promises in EditorToolbar
2021-04-16 02:04:38 +02:00
Henrik Giesel
9cc05389fb
Abandon btn-secondary and btn-light in favor our own definitions btn-night and btn-day
2021-04-15 18:35:46 +02:00
Glutanimate
0a67445522
Fix minor typo
2021-04-15 18:30:53 +02:00
Henrik Giesel
a71311b65e
Make fields square again
...
This was an experiment, to adjust the field border-radius to the
buttons, but I think it looks cleaner if the fields are square
2021-04-15 16:44:07 +02:00
Henrik Giesel
a6b102fadd
Add license headers
2021-04-15 15:59:52 +02:00
Henrik Giesel
fce70c3ad1
Use bootstrap types for editor-toolbar svelte_check
2021-04-15 15:51:56 +02:00
Henrik Giesel
dc037c5aec
Experimental: Add bootstrap to svelte_check dependencies
2021-04-15 15:47:02 +02:00
Henrik Giesel
70d2c93222
Pass svelte_check for editor-toolbar
2021-04-15 15:33:47 +02:00
Henrik Giesel
1a04ca32fe
Add Latex formatting options to menu
...
* Format shortcuts in monospace font and increase padding a little bit
2021-04-15 15:20:37 +02:00
Henrik Giesel
ac768a464a
Satisfy prettier
2021-04-15 14:58:13 +02:00
Henrik Giesel
d9d2dddd4f
Use new bootstrap library paths
2021-04-15 14:04:41 +02:00
Henrik Giesel
e221050bc6
Use new bootstrap dep
2021-04-15 13:30:19 +02:00
Henrik Giesel
e032c8f6a0
Add shortcut labels for mathjax menu
2021-04-15 13:09:51 +02:00
Henrik Giesel
42d59a4af7
Explicitly name file in output_css for esbuild
2021-04-15 13:09:51 +02:00
Henrik Giesel
aca20bd3da
Make editor-toolbar pass eslint
2021-04-15 13:09:51 +02:00
Henrik Giesel
5c601db45f
Fix most of svelte-check issues for editor-toolbar
2021-04-15 13:09:51 +02:00
Henrik Giesel
1e5b2a06a3
Pass the svelte check for graphs
2021-04-15 13:09:50 +02:00
Henrik Giesel
36c031a0ca
Inline GraphData/GraphPreferences getters/setters into WithGraphData
2021-04-15 13:09:50 +02:00
Henrik Giesel
eebbf71256
Generalize ts/graphs/preferences to ts/sveltelib/preferences
2021-04-15 13:09:50 +02:00
Henrik Giesel
f4afb3e823
Style light mode button bar with borders
...
- whereas night mode toolbar has no visible borders
2021-04-15 13:09:50 +02:00
Henrik Giesel
5c84b1636b
Use padding for extended colorpicker background "border"
2021-04-15 13:09:50 +02:00
Henrik Giesel
a225accac3
Give light mode effects on hover/active/focus as well
2021-04-15 13:09:50 +02:00
Henrik Giesel
350ef044f2
Add theming support for DropdownItem and DropdownMenu
2021-04-15 13:09:50 +02:00
Henrik Giesel
b862c3ecea
Improve looks of color picker button
2021-04-15 13:09:50 +02:00
Henrik Giesel
b425d09ac6
Update CSS for ColorPicker and forecolor button
2021-04-15 13:09:50 +02:00
Henrik Giesel
a0de8bef55
Switch from core to base CSS for editor view
2021-04-15 13:09:50 +02:00
Henrik Giesel
5c37ac1640
Correctly check for night mode
2021-04-15 13:09:50 +02:00
Henrik Giesel
639cfa57a3
Rely more heavily on bootstrap provided types for editor-toolbar
2021-04-15 13:09:50 +02:00
Henrik Giesel
b95ccb99c2
Make mdi also use renamed pkg_from_name
2021-04-15 13:09:50 +02:00
Henrik Giesel
0d63ffcaeb
Add buttons_mixins.scss for sharing SCSS across components
2021-04-15 13:09:50 +02:00
Henrik Giesel
de5b9d551d
Also add Bootstrap buttons.scss
2021-04-15 13:09:50 +02:00
Henrik Giesel
05affd313f
Include Dropdown directly from bootstrap, required installing popperjs
2021-04-15 13:09:50 +02:00
Henrik Giesel
ef90924f91
Use compile_sass and add flag to make editor-toolbar compile again
2021-04-15 13:09:50 +02:00
Henrik Giesel
7bf675d75e
Remove $$restProps and make explicit dropdown support in buttons
...
* Currently LabelButton, CommandIconButtton, and IconButton support dropdowns
2021-04-15 13:09:50 +02:00
Henrik Giesel
fa6ac2b27b
Add RawButton and hook old python hooks up to it
2021-04-15 13:09:50 +02:00
Henrik Giesel
98dc8a56f2
Introduce ToolbarItem as a better base type instead of DynamicSvelteComponent
2021-04-15 13:09:50 +02:00
Henrik Giesel
0e0f33022f
Switch from lazy loading of properties to wrapping the buttons in a function
2021-04-15 13:09:50 +02:00
Henrik Giesel
42e580430a
Add a button / buttonGroup insertion API
2021-04-15 13:09:50 +02:00
Henrik Giesel
d93aefdaaa
Fix sticky toolbar which was broken when introducing var(--toolbar-size)
2021-04-15 13:09:50 +02:00
Henrik Giesel
d1374d4b58
Show/Hide Cloze button depending on whether cloze type
2021-04-15 13:09:50 +02:00
Henrik Giesel
e8fb17c1eb
Move cloze logic and wrapping logic editor-toolbar
2021-04-15 13:09:50 +02:00
Henrik Giesel
fa00dbc01e
Make buttons and button groups easily toggleable through hidden web component
2021-04-15 13:09:50 +02:00
Henrik Giesel
8ba2b383eb
Remove props property in favor of $$restProps
2021-04-15 13:09:50 +02:00
Henrik Giesel
64fbbbfcd0
Get rid of types.d.ts in favor of DynamicSvelteComponent
2021-04-15 13:09:50 +02:00
Henrik Giesel
7646a81b7c
Pass button groups as actual button groups, not arrays
2021-04-15 13:09:50 +02:00
Henrik Giesel
5520863278
Pass wraps more similiar to how size is passed via CSS variables
2021-04-15 13:09:50 +02:00
Henrik Giesel
9ff521126d
Make wraps a passable prop to EditorToolbar
...
Can be set to nowrap via document.getElementByID("editorToolbar").component.$set({ wraps: false })
2021-04-15 13:09:50 +02:00
Henrik Giesel
fc3a272327
Give clearer type names to dynamicComponent
2021-04-15 13:09:50 +02:00
Henrik Giesel
38fe270937
Rename title to tooltip across editor toolbar components
2021-04-15 13:09:50 +02:00
Henrik Giesel
2b252d8b41
Rename types.ts to types.d.ts
2021-04-15 13:09:50 +02:00
Henrik Giesel
5d2d9396f9
Change overflow of button groups to overflow-y auto
...
Avoids erratic creation of scrollbars
2021-04-15 13:09:50 +02:00
Henrik Giesel
3fb052d736
Use dynamicComponent instead of withLazyProps
2021-04-15 13:09:50 +02:00
Henrik Giesel
c432831a19
Move enabled/disabled logic to EditorToolbar
2021-04-15 13:09:50 +02:00
Henrik Giesel
5bc7132a4f
Fix clicking the bold button immediately showing the updated button state
...
- rather than only after typing
2021-04-15 13:09:49 +02:00
Henrik Giesel
3c84e31bf4
Support building as external repo
2021-04-15 13:09:49 +02:00
Henrik Giesel
115757c327
Remove lazyProperties -> we use withLazyProperties instead
2021-04-15 13:09:49 +02:00
Henrik Giesel
cfb9376e5e
Fix some code quality issues
2021-04-15 13:09:49 +02:00
Henrik Giesel
90825cc95b
Pass in buttons and menus directly as stores
2021-04-15 13:09:49 +02:00
Henrik Giesel
77b45835f4
Make --toolbar-size a parameter
2021-04-15 13:09:49 +02:00
Henrik Giesel
162f13fee1
Add ButtonDropdown for dropdowns like the MathJax dropdown on AnkiMobile
2021-04-15 13:09:49 +02:00
Henrik Giesel
cd69c7ffa3
Add exports for add-ons
2021-04-15 13:09:49 +02:00
Henrik Giesel
c1aa8d7bf7
Make it easier to update buttons and menus
2021-04-15 13:09:49 +02:00
Henrik Giesel
b002994d30
Add labels and titles to all buttons
2021-04-15 13:09:49 +02:00
Henrik Giesel
5cecde34ed
Add titles to buttons with lazyProperties
2021-04-15 13:09:49 +02:00
Henrik Giesel
04aebbd7fe
Move logic from index.ts to their individual files
2021-04-15 13:09:49 +02:00
Henrik Giesel
cdb3221f82
Add first lazily loaded i18n strings
2021-04-15 13:09:49 +02:00
Henrik Giesel
a1d11edbdf
Give select an effect on :hover
2021-04-15 13:09:49 +02:00
Henrik Giesel
4544025fc2
Make select display inline-block
2021-04-15 13:09:49 +02:00
Henrik Giesel
bdcdcc7a56
Make Toolbar resizable through a single CSS variable --toolbar-size
2021-04-15 13:09:49 +02:00
Henrik Giesel
f033672045
Add SelectButton
2021-04-15 13:09:49 +02:00
Henrik Giesel
675ffca1fa
Add dropdown menu to mathjax button
2021-04-15 13:09:49 +02:00
Henrik Giesel
c61d5a501d
Make it so you can include DropdownMenus on all kinds of buttons
2021-04-15 13:09:49 +02:00
Henrik Giesel
a053332421
WIP: Turn DropdownMenu into a _decorator_ usable with all other button types
2021-04-15 13:09:49 +02:00
Henrik Giesel
ef9eb38d26
Utilize enableButtons disableButtons from Svelte component
2021-04-15 13:09:49 +02:00
Henrik Giesel
90c176c180
Display .active:active as :hover buttons
2021-04-15 13:09:49 +02:00
Henrik Giesel
95be25a2eb
Add active shadow on ColorPicker
2021-04-15 13:09:49 +02:00
Henrik Giesel
934b426541
Move display:flex from outer div to ButtonGroup ul
2021-04-15 13:09:49 +02:00
Henrik Giesel
9a0ae77db6
Add negative tabindex
2021-04-15 13:09:49 +02:00
Henrik Giesel
62198b29a0
Add mathjaxButton and htmlButton instead of more button
2021-04-15 13:09:49 +02:00
Henrik Giesel
91a5a20684
Make icons slightly smaller, so they are the same size as before
2021-04-15 13:09:49 +02:00
Henrik Giesel
6fbeeff1c5
Make all buttons functional
2021-04-15 13:09:49 +02:00
Henrik Giesel
904aa3d45a
Move initialization logic from EditorToolbar to index.ts
2021-04-15 13:09:49 +02:00
Henrik Giesel
d976dd711c
Simplify General Toolbar structure
2021-04-15 13:09:49 +02:00
Henrik Giesel
fefd2e5008
Merge buttons to one OuterButtonGroup
...
- keeping up the concept of left / right buttons might not be necessary anymore
- This might make it easier to display them on mobile, and simplifies the logic
2021-04-15 13:09:49 +02:00
Henrik Giesel
27188bef29
Make all Leaf buttons 30px high and give same vertical-align
2021-04-15 13:09:49 +02:00
Henrik Giesel
5290bc7d86
Rename IconButtonInner to InnerButton, as it does not necessarily contain an Icon
2021-04-15 13:09:49 +02:00
Henrik Giesel
87ab416bb3
Add hover and active effects
2021-04-15 13:09:49 +02:00
Henrik Giesel
14577c07ed
Display ButtonGroups inline-block
2021-04-15 13:09:49 +02:00
Henrik Giesel
50a2929e93
Add ButtonGroup for grouping of toolbar items
2021-04-15 13:09:49 +02:00
Henrik Giesel
9a52d0f345
Add CommandIconButton functionality
2021-04-15 13:09:49 +02:00
Henrik Giesel
9330a0bd47
Add color.ts for foreground color and color picker
2021-04-15 13:09:49 +02:00
Henrik Giesel
9c19c85f79
Add remaining icons for toolbar
2021-04-15 13:09:49 +02:00
Henrik Giesel
c06d500f0c
Include icons directly in ts lib
2021-04-15 13:09:49 +02:00
Henrik Giesel
e175c9348e
First implementation
2021-04-15 13:09:48 +02:00
Henrik Giesel
e1da2d0e01
Add ts/editor-toolbar
2021-04-15 13:09:48 +02:00
Damien Elmes
c046ce1c26
move bootstrap into ts/sass
2021-04-15 16:10:01 +10:00
Damien Elmes
130e960262
support external building of sass; node_modules->ts/bootstrap
2021-04-15 15:59:17 +10:00
Damien Elmes
9e0e3edb04
allow passing sass deps to svelte compile/check
2021-04-15 14:27:53 +10:00
Damien Elmes
59d6e15d50
update other ts deps
2021-04-15 10:59:29 +10:00
Damien Elmes
74c917239f
remove unused esbuild package, and update rules_nodejs packages
2021-04-15 10:57:19 +10:00
Damien Elmes
cc91868092
move esbuild into separate repo
...
Most of our changes have been upstreamed, but the toolchain change
probably won't be merged soon, and a separate git repo will make it
easier to track upstream changes.
@hgiesel output_css=True will need to be changed to output_css="foo.css"
instead
2021-04-15 10:53:49 +10:00
Damien Elmes
ac045e9e3f
fix initial ease not being updated
2021-04-14 23:01:03 +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
64818290fc
Merge pull request #1128 from hgiesel/webviewcss3
...
Remove unnecessary exports from sass/BUILD.bazel
2021-04-14 21:28:25 +10:00
Damien Elmes
6523fed84c
experiment with making bootstrap scss available as a library
...
This will allow us to import the local sass lib, then use something
like the following in our sass:
@import "ts/bootstrap/functions";
@import "ts/bootstrap/variables";
@import "ts/bootstrap/mixins";
@import "ts/bootstrap/helpers";
@import "ts/bootstrap/dropdown";
@import "ts/bootstrap/forms";
@import "ts/bootstrap/buttons";
@import "ts/bootstrap/button-group";
I'm currently trialing it out on a prototype reimplementation of the
deck options screen. Unfortunately bootstrap don't seem to support the
@use syntax, so we need to @import everything
2021-04-14 21:27:34 +10:00
Henrik Giesel
d055bfa3c7
Remove unnecessary exports from sass/BUILD.bazel
...
I think these were just part of an unsuccessful experiment
Partially reverses fb26361274
2021-04-14 12:31:42 +02:00
Damien Elmes
cd4326c77e
run prettier on some sass files
2021-04-14 18:22:33 +10:00
Damien Elmes
2a43d42323
run black/isort on Python scripts
2021-04-14 18:22:02 +10:00
Damien Elmes
898b8d2e09
Merge pull request #1125 from hgiesel/scrollbarcorner
...
Color Scrollbar bottom right corner
2021-04-14 12:43:34 +10:00
Henrik Giesel
082fd8d28f
Color in the Scrollbar corner at the bottom right into the appropriate color
2021-04-13 21:41:15 +02:00
Henrik Giesel
fb26361274
Create explicit dependencies for the congrats,editor,graphs scss files
2021-04-13 19:47:03 +02:00
Henrik Giesel
19903986f9
Move compile_sass.bzl to /ts + Remove core.css from data/web (unused?)
2021-04-13 19:47:03 +02:00
Henrik Giesel
5bcb2f080f
Declare dependencies in data/web/css
2021-04-13 19:47:03 +02:00
Henrik Giesel
9cba0c2d29
Make h1 explicitly bold in Graph.svelte
2021-04-13 19:47:03 +02:00
Henrik Giesel
630ee9c6bb
Use graphs-base and congrats-base
2021-04-13 19:47:03 +02:00
Henrik Giesel
8efbcddbb4
Do not include webview.css for editor
2021-04-13 19:47:03 +02:00
Henrik Giesel
b14dc3f7cb
Move card_counts and split off fusion_vars
2021-04-13 19:47:03 +02:00
Henrik Giesel
c944eeb5f6
Add base.scss
2021-04-13 19:47:03 +02:00
Damien Elmes
eb6502bd6e
add missing copyright headers to *.svelte
2021-04-13 19:02:41 +10:00
Damien Elmes
1f475a1709
add missing copyright headers to *.ts
2021-04-13 18:57:08 +10:00
Damien Elmes
c6da01c4aa
disable Jest tests on Windows again
...
It looks like the templated_args change only masked the error last time;
Jest seems broken on Windows with both the patched .24 version, latest
stable, and the new beta version too, presumably because symlinks are
being handled differently on Windows somehow. It might be possible to
hack around the issue by patching the following file, but I'm not sure:
https://github.com/facebook/jest/blob/master/packages/jest-haste-map/src/crawlers/node.ts
2021-04-12 15:39:46 +10:00
Damien Elmes
9d03e266e3
add naturalWholeUnit() and basic tests to lib/time.ts
...
naturalWholeUnit() is not currently used
2021-04-12 14:42:06 +10:00
Damien Elmes
3c3258251d
force number in protobuf generation
...
Anki's object IDs and millisecond timestamps fit within MAX_SAFE_INTEGER.
2021-04-12 14:33:20 +10:00
Damien Elmes
43a8b8fec3
stop Svelte warnings from failing the build
...
+ check for them at test time
2021-04-12 14:28:09 +10:00
Damien Elmes
8c64cc38d7
fix jest
...
- templated_args was missing --node_modules= prefix, and was causing
tests to pass unconditionally
- update to beta of jest 27, which introduces an option to fix the
symlink handling, and is approx twice as fast to start up
2021-04-12 09:43:31 +10:00
Damien Elmes
dc8c0a2e73
switch esbuild to a toolchain
2021-04-07 15:19:23 +10:00
Damien Elmes
fb1111623f
update to latest esbuild
2021-04-07 14:54:40 +10:00
abdo
a6bdde68db
Fix graph labels display in RTL layout
2021-04-02 06:25:38 +03:00
Damien Elmes
188a8891fd
add docstring to forEditorField
2021-03-29 18:13:45 +10:00
Damien Elmes
efb8a4e61c
Merge pull request #1101 from Arthur-Milchior/TS_type
...
NF: add type ts
2021-03-29 18:09:56 +10:00
Damien Elmes
2e1104c724
move loader arg into esbuild() invocation
...
upstream.bzl should be kept as close to upstream as possible, so that
it's easier to send changes upstream and pull in future changes
2021-03-29 17:59:06 +10:00
Arthur Milchior
cfa2ee6774
NF: add type ts
2021-03-28 23:59:16 +02:00
Henrik Giesel
d01aa0de6f
Add copy_bootstrap_icons macro
2021-03-28 18:50:37 +02:00
Henrik Giesel
77c396c2a8
Include pin-angle icon via inline SVG
2021-03-28 16:15:30 +02:00
Damien Elmes
fb222149af
define file extension in .d.ts so typescript doesn't complain
2021-03-28 16:15:28 +02:00
Henrik Giesel
443ee54f7e
Unsuccessfully try to add text loader for .svg files
2021-03-28 16:14:52 +02:00
Henrik Giesel
9d64508bd1
Remove bootstrap-icons from css folder
2021-03-28 16:14:52 +02:00
Damien Elmes
d279ca4cac
move back to latest Jest
...
Patch is no longer required after previous change
2021-03-28 21:44:55 +10:00
Damien Elmes
9a75392f54
fix Jest on Windows
2021-03-28 20:59:51 +10:00
Damien Elmes
e2963e54f8
Revert "disable Jest tests on Windows for now"
...
This reverts commit 819f87df42 .
2021-03-28 20:59:31 +10:00
Damien Elmes
819f87df42
disable Jest tests on Windows for now
2021-03-28 20:34:10 +10:00
Damien Elmes
ad47b68255
add Jest for TS unit tests
...
@hgiesel the reason no files were being found is because Jest ignores
symlinks by default. The Bazel example includes a patch we can use
to work around it, and Jest plan to add symlink support in a future
update.
https://github.com/bazelbuild/rules_nodejs/blob/stable/examples/jest/patches/jest-haste-map%2B24.9.0.patch
https://github.com/facebook/jest/pull/9351
2021-03-28 19:41:20 +10:00
Henrik Giesel
ac46f6cb27
Utilize ts/tsconfig.js from ts/{editor,html-filter}
2021-03-28 19:41:20 +10:00
Henrik Giesel
d346ae6feb
No need to explicitly import from index
2021-03-28 19:41:20 +10:00
Henrik Giesel
722adec915
Satisfy formatter
2021-03-28 19:41:20 +10:00
Henrik Giesel
c99d91c283
Avoid using outerHTML + Fix regression
2021-03-28 19:41:20 +10:00
Henrik Giesel
f432da5af7
Change filter logic in html-filter/element: predicate true, means it stays in
2021-03-28 19:41:20 +10:00
Henrik Giesel
1aefab95f8
Move html-filter into its own directory
2021-03-28 19:41:20 +10:00
Henrik Giesel
127b46d240
Insert break statements into switch
2021-03-28 19:41:20 +10:00
Henrik Giesel
4baa87348e
Create htmlFilter{Node,Styling} for better separation of concerns
2021-03-28 19:41:20 +10:00
Henrik Giesel
6822c56e53
Put filterElement logic completely into its own file
2021-03-28 19:41:20 +10:00
Henrik Giesel
a9fa7cd0db
Move most of tags allowed to its own file
2021-03-28 19:41:20 +10:00
Henrik Giesel
f4e3a9202f
Refactor htmlFilter to use function declarations
2021-03-28 19:41:20 +10:00
Damien Elmes
0edbd3fc4b
use relative link to sass file
...
links relative to workspace root break when invoked from an external
repo
2021-03-28 12:37:21 +10:00
Damien Elmes
3761693be2
add links to pending PRs
2021-03-28 12:32:40 +10:00
Damien Elmes
0b2c3e1c3b
fix(esbuild): files not being found when building external repo
...
An esbuild rule that ran fine in a local repo (eg bazel build //:my_esbuild_rule)
fails when built externally (eg bazel build @other_workspace//:my_esbuild_rule).
By prepending the workspace root to the bin path, the resulting base
URL works correctly in both local and remote repo invocations, allowing
esbuild output to be consumed by a different repo.
This change fixes remote repos in Bazel 4.0.0. 3.7.0 seems to require a
workspace_root.replace("external/", "") call first in order
to get the correct location. So while this patch should not break anything
that was not already broken, it only fixes/adds support for remote repos
in 4.0+.
2021-03-28 11:30:15 +10:00
Damien Elmes
061c7e60fc
add esbuild/helpers.bzl in from upstream
2021-03-28 11:12:23 +10:00
Damien Elmes
b8b2be3f9f
update $(location ...) in esbuild inject lines
2021-03-28 09:35:46 +10:00
Damien Elmes
7500a2765f
support expanding locations in esbuild arguments
2021-03-28 09:35:27 +10:00
Damien Elmes
16632c90df
update TS deps
2021-03-27 15:02:02 +10:00
Damien Elmes
125dcee811
remove obsolete comment
2021-03-26 21:47:23 +10:00
Damien Elmes
0006a385e1
allow js to request specific i18n modules
...
Brings the payload on the congrats page with a non-English language
down from about 150k to 15k
2021-03-26 21:43:36 +10:00
Damien Elmes
5ef9282f9b
fix handling of variables that don't match ts naming style
2021-03-26 21:34:24 +10:00
Damien Elmes
00eb89c2ec
use singleton + free functions for i18n in ts
...
This allows for tree shaking, and reduces the congrats page from 150k
with the old enum solution to about 80k.
2021-03-26 20:38:44 +10:00
Damien Elmes
b145b04ddf
drop legacy enum from ts/
2021-03-26 19:26:35 +10:00
Damien Elmes
6cde7ff536
update remaining TR references in ts/
2021-03-26 19:24:48 +10:00
Damien Elmes
7a7cb7402d
update most no-arg TR references in *.svelte
2021-03-26 19:13:30 +10:00
Damien Elmes
1ed1902933
update TR references with args in *.svelte
2021-03-26 19:13:30 +10:00
Damien Elmes
0e50259e6b
update TR references with args in *.ts; fix average answer time
2021-03-26 19:10:39 +10:00
Damien Elmes
2ab7a30b7b
convert no-arg TR references to method invocations in *.ts
2021-03-26 19:10:27 +10:00
Damien Elmes
efb92d5ee9
generate ts methods for translations
2021-03-26 18:11:58 +10:00
Damien Elmes
0c63a7c8c4
rework translation handling
...
Instead of generating a fluent.proto file with a giant enum, create
a .json file representing the translations that downstream consumers
can use for code generation.
This enables the generation of a separate method for each translation,
with a docstring that shows the actual text, and any required arguments
listed in the function signature.
The codebase is still using the old enum for now; updating it will need
to come in future commits, and the old enum will need to be kept
around, as add-ons are referencing it.
Other changes:
- move translation code into a separate crate
- store the translations on a per-file/module basis, which will allow
us to avoid sending 1000+ strings on each JS page load in the future
- drop the undocumented support for external .ftl files, that we weren't
using
- duplicate strings in translation files are now checked for at build
time
- fix i18n test failing when run outside Bazel
- drop slog dependency in i18n module
2021-03-26 09:41:32 +10:00
Henrik Giesel
730d75a6c4
Satisfy svelte_check
2021-03-22 15:41:43 +01:00
Henrik Giesel
0a882175e5
Add type signatures to asyncReactive
2021-03-22 15:30:35 +01:00
Henrik Giesel
8bf68ea7ca
Satisfy formatter
2021-03-22 15:25:49 +01:00
Henrik Giesel
e973b555f3
Fix asyncReactive detection of loading
...
- Removed `success` store as it wouldn't work
- We should check for a value in error instead
2021-03-22 15:23:48 +01:00
Henrik Giesel
b52d05431d
Partially revert "Make sure RangeBox does not trigger update on stores on creation"
...
This reverts commit 8232e2f5ed .
2021-03-22 15:11:36 +01:00
Henrik Giesel
12123fc68b
Remove assignment to preferencesPromise: getPreferences will only be called once
2021-03-22 04:03:52 +01:00
Henrik Giesel
0368bac9be
Move async and asyncReactive to sveltelib
...
- sveltelib is a lib for component-agnostic svelte utils
2021-03-22 03:06:53 +01:00
Henrik Giesel
c44340e761
Avoid duplicate initial fetching with asyncReactive
2021-03-22 02:58:19 +01:00
Henrik Giesel
8232e2f5ed
Make sure RangeBox does not trigger update on stores on creation
2021-03-22 02:50:16 +01:00
Henrik Giesel
8cb7d4a8ad
Create search and days writable in GraphsPage to allow browserSearch to work
2021-03-22 02:44:08 +01:00
Henrik Giesel
c7a6665307
Fix syntax error introduced by rebase
2021-03-22 01:44:07 +01:00
Henrik Giesel
1e5bb2f226
Create BrowserSearch component, because we cannot read from stores within slotted content
2021-03-22 01:42:23 +01:00
Henrik Giesel
abdf8a464f
Remove pending, and resort to checking for value
...
- once value is set, it won't be unset
2021-03-22 01:42:23 +01:00
Henrik Giesel
6d2d40472d
Use preferencesPromise, as refreshing is handled over stores
2021-03-22 01:42:23 +01:00
Henrik Giesel
4468938dfd
Use $-assignments instead of store.set
2021-03-22 01:42:23 +01:00
Henrik Giesel
fbf2c6f6fc
Rename search and days to initialSearch and intitialDays in GraphsPage
2021-03-22 01:42:23 +01:00
Henrik Giesel
4ef0b3c977
Get it to work, if you change the input
...
- there's still an issue on initial load
2021-03-22 01:42:23 +01:00
Henrik Giesel
26d4854502
Compiles with WithGraphData
2021-03-22 01:42:23 +01:00
Henrik Giesel
c6ba8f779e
Move Graph-specific html from GraphsPage to Graph.svelte
2021-03-22 01:42:21 +01:00
Henrik Giesel
cfaf0e587b
Add WithGraphData
2021-03-22 01:40:51 +01:00
Henrik Giesel
aebb665164
Rename asyncRefresh to asyncReactive
2021-03-22 01:40:51 +01:00
Henrik Giesel
92658495ad
Improve implementation of asyncRefresh
2021-03-22 01:40:51 +01:00
Henrik Giesel
b0116aa3a9
Add (probably non-working) asyncRefresh
2021-03-22 01:40:51 +01:00
Henrik Giesel
159f6dc4e1
Add Svelte async hook
2021-03-22 01:40:51 +01:00
Henrik Giesel
5b1eb98b86
Add comment where to find global styles
2021-03-21 16:04:38 +01:00
Henrik Giesel
794642b2f2
Move ticks.scss directly into Graph.svelte
2021-03-21 15:59:11 +01:00
Damien Elmes
7c76693618
merge in Henrik's TS/Svelte refactor with some changes
...
- The previous commits moved the majority of the remaining global css
into components; move the remaining @emotion/css references into
ticks.scss and the styling of the Graph.svelte. This is not as elegant
as the emotion solution, but builds a whole lot faster, and most of
our styling can be scoped to a component anyway.
- Leave the .html files in ts/ for now. AnkiMobile uses them, and
AnkiDroid likely will in the future too. In the long run we'll likely
move to loading the JS into an existing page instead of loading a
separate page, but at that point we can just exclude the .html file from
copy_files_into_group() without affecting other clients.
Closes #1074
2021-03-21 23:01:18 +10:00
Damien Elmes
13afaaa770
move some cumulative-overlay-specific styling out of shared css
2021-03-21 20:18:05 +10:00
Damien Elmes
ba4e5d834c
add HoverColumns.svelte for hoverzone styling
2021-03-21 19:58:39 +10:00
Damien Elmes
cdf326d45d
add CumulativeOverlay.svelte for area styling
2021-03-21 19:50:35 +10:00
Damien Elmes
d4f0661e16
add Tooltip.svelte so we can encapsulating styling
2021-03-21 19:35:38 +10:00
Damien Elmes
c02823b488
bundle all Svelte css into separate file
...
- svelte compilation outputs a separate .css file for each component
- compilation also adds an "import foo.css" to the top of each generated
.mjs file
- when the .mjs files are bundled into app.js, esbuild creates an app.css
as well
- graphs.scss was renamed to graphs_shared.scss and imported in the
top level GraphsPage. Henrik's style refactoring would be a better path
forward, but I needed to make this change for now, as the filenames were
conflicting.
2021-03-21 16:06:36 +10:00
Damien Elmes
2ffb210ca4
add support for declaring css output in esbuild call
2021-03-21 16:06:36 +10:00
Damien Elmes
d5c088175f
add upstream esbuild impl so we can add css output support
...
Taken from 4a26898023/packages/esbuild/esbuild.bzl
2021-03-21 16:06:36 +10:00
Damien Elmes
460a071fe4
switch from rollup to esbuild
...
brings the 2+ second bundle on a module like the graphs down to 90ms
2021-03-21 16:06:36 +10:00
Damien Elmes
e1233ac156
ESM import issue on Windows came back again
...
Not sure if I just missed this in the previous change, or whether
the patch_resolver change broke things again.
Previous issue:
7ae6837cfa
2021-03-21 16:06:07 +10:00
Damien Elmes
27feb0688a
output embedded Svelte css into separate .css file for bundling
2021-03-21 16:06:01 +10:00
Damien Elmes
b6f95c0e5e
fixes for Svelte compilation
...
- enable resolver patch on worker binary to ensure js imports work
on subsequent worker requests
- cache ts library content, and use unified interface for cache
- prepare for separate css outputs
2021-03-21 16:05:46 +10:00
Damien Elmes
cf68717830
avoid temporary .ts file due to lack of sandbox on Windows
...
Just a quick hack for now to store it in memory, as the temp file
conflicts on Windows due to the lack of a sandbox, and we don't really
have a need to write it to the filesystem anyway.
2021-03-21 00:17:09 +10:00
Damien Elmes
63b621ce9f
use ts language service for much faster Svelte compiles
2021-03-20 23:49:10 +10:00
Damien Elmes
52551b629d
convert svelte worker to ts
...
Should make it easier to maintain, and ironically it also fixes
the issue with .mjs files from this morning.
2021-03-20 23:13:27 +10:00
Damien Elmes
b025e92d26
switch Svelte compilation to worker model
...
based on changes from upstream rules_svelte
Their code was using run_node() instead of ctx.actions.run(), which
seems to create a new worker for every CPU core, instead of respecting
the standard limit of 4.
2021-03-20 22:52:35 +10:00
Damien Elmes
e99c8b8a81
clarify comment
2021-03-20 16:25:50 +10:00
Damien Elmes
7ae6837cfa
update Svelte and fix Windows build
...
Svelte 3.25.0 and onwards bundle compiler.mjs, which seems to be
preferentially used over the .js file. Presumably this is only breaking
on Windows due to the lack of a sandbox. Resolve by explicitly requesting
the .js file.
2021-03-20 16:13:20 +10:00
Damien Elmes
06b0b4d68b
vendor Svelte rules
...
The separate repo made it difficult to update the rules, and made things
more complicated than they needed to be.
2021-03-20 15:04:19 +10:00
Damien Elmes
7840d773ef
update rules_nodejs
2021-03-20 10:54:18 +10:00
Damien Elmes
72885bc710
move to new rules_nodejs protobuf example to unblock upgrade
...
@hgiesel the tag editor will need to add the following to the rollup
deps:
"//ts/lib:backend_proto",
"//ts/lib:fluent_proto",
2021-03-20 10:24:32 +10:00
Damien Elmes
ebd3bba91b
fade out webview when pending updates; do some reviewer updates immediately
...
Issues that need fixing:
- when the editor saves the note with perform_op(), if it isn't modified,
no new undo entry is created, and perform_op then returns the changes
made by the previous operation instead
- the approach of fetching the last action in a subsequent backend
method is unsound, as another queued operation may sneak in first before
we have a chance to query the result - it would be better if it were
returned in a single atomic action
- redrawing the current card while editing is likely to make sound
autoplay annoyingly, and it has an unpleasant redraw. We may be better off
fading it out instead
Side note: the editor cursor moves to the start of the field when the
note is updated in another window - it might be nicer to have it move
the cursor to the end instead.
2021-03-19 19:45:21 +10:00
Henrik Giesel
f5bf50ed02
Fix bug with initially enabled toolbar in browser
2021-03-10 19:28:08 +01:00
Henrik Giesel
f56c510e86
Fix another import
2021-03-09 14:02:41 +01:00
Henrik Giesel
4424ae864b
Fix reversed sticky icon logic
2021-03-09 13:44:06 +01:00
Henrik Giesel
1ae13b7217
Satisfy formatter
2021-03-09 13:43:11 +01:00
Henrik Giesel
df20381a9e
Change to pin icon
2021-03-09 13:43:11 +01:00
Henrik Giesel
2ea0602347
Switch to bi-sticky icons, toggle opacity for state indiciation
2021-03-09 13:43:11 +01:00