Commit graph

62 commits

Author SHA1 Message Date
Fabien Basmaison
5d569e8926 [assets] Only update status if the promise is successful:
- Use promises in `ajaxPost` and `interact`.
- Add some animations in CSS.
2021-04-07 09:24:34 +02:00
Fabien Basmaison
1c05107f2b [assets] Tweak comments. 2021-04-07 07:53:30 +02:00
Fabien Basmaison
44040201f9 [assets] Move interact function. 2021-04-06 17:57:39 +02:00
Fabien Basmaison
9d95f54aa2 [assets] Refactor toggleAction and toggleMenu a bit. 2021-04-06 17:48:56 +02:00
Fabien Basmaison
52d2f0e331 [assets] Document functions and variables:
- Use expressive names for variables.
- Add docblocks for each function.
- Add ESLint rules for comments.
2021-04-06 16:17:20 +02:00
Fabien Basmaison
5d3d00f694 [assets] Use dataset + use expressive names for some variables. 2021-04-06 15:36:34 +02:00
Fabien Basmaison
62fe2ef600 [assets] Replace inline events with addEventListener; this breaks sliding menu. 2021-04-06 11:37:23 +02:00
Fabien Basmaison
7e49b3cb26 [assets] Simplify addRemoveClass function. 2021-04-06 11:19:44 +02:00
Fabien Basmaison
70c652d565 [assets] Add rules to ESLint:
- Fix long line.
- Enforce a few stylistic habits:

    - Avoid some potential dangerous constructs.
    - `arrow-spacing`: Use at least one space around arrows.
    - `keyword-spacing`: Use at least one space around keywords (if, else, for…).
    - `no-multiple-empty-lines`: Only use one empty line between code.
	- `no-var`: Use `let` or `const` instead of `var`:
    - `padded-blocks`: Do not pad blocks.
    - `padding-line-between-statements`: Use empty lines between some statements.
    - `space-before-blocks`: Use at least one space before the opening brace of a block.
2021-04-06 10:42:52 +02:00
Fabien Basmaison
991d897ac7 [assets] Listen to events as soon as possible. 2021-04-06 09:57:52 +02:00
Fabien Basmaison
2f2f7db086 [assets] Use classes for JS files:
- Classes strictly parse code implicitly.
- Fix previously updated code.
2021-04-06 09:44:59 +02:00
Fabien Basmaison
f430363be0 [assets] Simplify a function expression. 2021-04-06 09:11:56 +02:00
Fabien Basmaison
f6c3e581b9 [assets] Replace Array.from(document.getElementsByClassName(…)) by querySelectorAll(…). 2021-04-06 09:11:27 +02:00
Fabien Basmaison
6b0a3ce4b1 [assets] Move localStorage chunks of code to their own file:
This should prevent a sync issue with updateDisplay not always being loaded on time.
2021-04-06 09:06:51 +02:00
Fabien Basmaison
cbed5e331b [assets] Move some frontend assets to _vendor_ directories:
This simplifies linting of files we have no grasp on, and clarifies responsibilities.

- Add .eslintignore.
- Restrict linting to bookwyrm/static.
2021-04-05 16:17:11 +02:00
Fabien Basmaison
5aea7343b4 [assets] Rename some files for consistency. 2021-04-05 16:16:48 +02:00
Fabien Basmaison
6971c9b133 [assets] Move toggleAllCheckboxes code to its own file. 2021-04-05 16:16:05 +02:00
Fabien Basmaison
53f03457cc Add linter for JS files with basic recommended rules:
- Add Github Action.
- Fix JS files to match rules; mostly `globals` and `exported`.
2021-03-31 17:07:28 +02:00
Mouse Reeve
b8cd1d5bce Show unread status reload link 2021-03-23 12:52:38 -07:00
Fabien Basmaison
fa79070b59 [lint] Update editorconfig linting:
- Add settings for comments.
- Remove custom settings that don’t work.
- Fix vendor JS file:
2021-03-20 16:33:18 +01:00
Mouse Reeve
c31bf1f0c8 Fixes loading javascript listeners 2021-03-19 15:59:28 -07:00
Mouse Reeve
5ad645c225 Move check all js into separate file 2021-03-19 10:51:45 -07:00
Mouse Reeve
443daab128 Move tabs javascript into separate file 2021-03-19 10:47:32 -07:00
Mouse Reeve
baee0796cd Moves localstorage handlers into its own file 2021-03-18 09:02:07 -07:00
Mouse Reeve
091ad53061 JS linting and whitespace fixes 2021-03-13 12:14:34 -08:00
Fabien Basmaison
097b8e5811 Fix toggling all checkboxes of failed imports:
- Rename classes and function to something more descriptive.
- Listen to the element checked status instead of a click on a non‑focusable element.
- Use specific DOM targets instead of relying on the DOM ancestor tree.
- Add a skip‑link to the end of the list and avoid tabbing through all failed items.
- Update related i18n strings in French.
- Avoid having the label on the whole width to prevent accidental click.
- Move `fieldset` out of `ul`.
2021-03-05 15:41:21 +01:00
Ned Zimmerman
263b13f157 Adapt tab handler to vanilla JS, fix focus jump, improve accessible naming of tabs/panels 2021-02-28 14:04:04 -04:00
Ned Zimmerman
bc7f830b2b Merge branch 'upstream' into tab-keyboard-accessibility 2021-02-27 11:53:27 -04:00
Ned Zimmerman
9580bec154 feat: modify tabbed interfaces to support keyboard accessibility (fixes #526) 2021-02-27 11:47:03 -04:00
Mouse Reeve
76491e4e35 Back off notification polling 2021-02-09 10:38:43 -08:00
Mouse Reeve
b53ef73faf Feed templates 2021-01-29 10:25:31 -08:00
Mouse Reeve
2411b4fe79 puts @'mentions directly in compose box 2021-01-19 16:16:22 -08:00
Mouse Reeve
1778e8dd46 Uses timeout instead of interval 2021-01-19 14:59:46 -08:00
Mouse Reeve
94a41498cf Remove counts when notifications are deleted 2021-01-19 14:32:08 -08:00
Mouse Reeve
3fce67a60d Only update on change 2021-01-19 14:25:04 -08:00
Mouse Reeve
394666357f Poll for notifications 2021-01-18 16:32:02 -08:00
Mouse Reeve
c7b03fec5a Fixes rate action 2021-01-18 09:57:44 -08:00
Mouse Reeve
7308d8d1e9 javascript cleanup
I got my linter working!
2021-01-18 08:26:04 -08:00
Mouse Reeve
3f136c40da Uses js pattern for tabs 2021-01-17 20:19:09 -08:00
Mouse Reeve
0a70d6e981 Makes dropdown clickable, and work with screen reader
I'm lightly peeved with bulma that it wasn't clear how to make hover
menus accessible, but clickable menus are just fine with my anyway.
2021-01-17 16:29:46 -08:00
Mouse Reeve
47d5b907ac Readthrough interactions 2021-01-17 10:10:59 -08:00
Mouse Reeve
f7e3cbda84 Uses toggle button snippet for content warning 2021-01-17 08:50:47 -08:00
Mouse Reeve
afdf5fc8ec starts replacing pure css buttons with javascript buttons
RIP, but it was time
2021-01-17 08:26:28 -08:00
Mouse Reeve
f42fd28c73 Removes unused javascript 2021-01-16 19:59:08 -08:00
Mouse Reeve
3e58163f0d refactors content warning button 2021-01-16 19:57:20 -08:00
Mouse Reeve
739b6e19e2 Dismiss reading goal using localstorage 2021-01-16 09:21:19 -08:00
Mouse Reeve
861249080b Moves toggle menu javascript out of html 2021-01-14 15:45:30 -08:00
Mouse Reeve
7abe39b7d5 Tab change javascript out of html 2021-01-14 15:29:37 -08:00
Mouse Reeve
4d4e692f49 Javascript cleanup 2021-01-14 15:16:18 -08:00
Mouse Reeve
5591024933 Moves interaction javascript out of html 2021-01-14 14:38:33 -08:00