Commit Graph

297 Commits

Author SHA1 Message Date
David Wheatley
f76524a5de
Replace spin.js with a CSS-only loading spinner (#2764)
* Create CSS only loading indicator

* Core mods to fix Loading Indicator usage

* Remove extra whitespace

* Attrs interface extends ComponentAttrs and is exported

* Add doc block about custom styling
2021-04-09 00:42:32 +01:00
David Wheatley
c75db75efe
Bump dependencies, add missing typing libraries (#2753)
* Bump dependencies and add missing typing libraries

* Fix expose-loader breaking changes

* Expose jQuery using its own typings instead of ours

* Extend jQuery typings with our own custom $.fn helpers

* Use jQuery typings for Component's `this.$` attribute

* Format webpack config file

* Use Spin.js 3.1.0
2021-04-08 12:35:10 +01:00
Alexander Skvortsov
40dc6d0feb
Preloaded API document Improvements (#2754)
* Invalidate preloadedApiDocument if URL has changed
* Revert to using `getRouteData()[0]`
2021-04-07 23:25:01 +01:00
David Wheatley
19465fb522
Fix missing vendor prefix on post scrubber; move styles to Less 2021-04-05 23:19:52 +01:00
David Wheatley
4b69a35260
Replace classList with clsx library (#2760) 2021-04-05 16:27:16 +01:00
David Wheatley
3dae397c65
Merge "Small Admin Patches" (#2739) from flarum/ck/adminux-patch2 into master
- Fixes #2736
- Fixes #2728
2021-04-03 03:14:41 +01:00
David Sevilla Martin
2de57af7c8 Move forum & admin app declarations to separate files 2021-03-29 20:19:15 -04:00
KyrneDev
0eefbf0374
Help on redraw 2021-03-24 17:30:13 -10:00
KyrneDev
90c0bc410e
Null name/desc breaks search fix 2021-03-24 17:29:54 -10:00
Alexander Skvortsov
908d087e00
Remove deprecated code from beta 16 (#2705) 2021-03-19 19:13:50 +01:00
David Wheatley
cd9ee48af6
[A11Y] Add aria-label and landmark role to search input (#2669)
* Adds role="search" to Search container
* Add aria-label to search input

See this page for more info:
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Search_role
2021-03-18 23:03:01 +01:00
David Wheatley
0cc12aed95
[A11Y] Fix nav drawer being focusable when off-screen on small viewports (#2666)
* Fix nav drawer being focusable when off-screen on small viewports

Fixes #2565

* Implement review suggestions

* Format
2021-03-18 22:38:32 +01:00
David Wheatley
0d139e6133
[A11Y] Add aria-label to dropdown toggles (#2668)
Implement custom accessible dropdown toggle labels for forum components

Making the a11y label more specific to the specific action it performs is critical for good UX with assistive technologies.
2021-03-16 10:50:36 -04:00
David Sevilla Martín
386f3d3db1
Fix Stream function code being shown when renaming discussion (#2693) 2021-03-15 21:42:22 -04:00
Alexander Skvortsov
a64c39835a Fix shaky composer on safari mobile
When the composer is opened while scrolled to the absolute bottom of the page (via hitting the "reply" button, `window.scrollTop` has a value of ~600px greater than it should. This doesn't seem to be the composer element's height (which appears to be 0 at the time). This incorrect scrollTop positions the composer off screen, which causes Safari to freak out and shake the element violently as it tries to scroll to the cursor (which is now off screen).

We can get around this by calculating scrollTop ourselves.

Fixes https://github.com/flarum/core/issues/2683
2021-03-12 00:23:37 -05:00
Alexander Skvortsov
b88a7cb33b Search: dont adjust height if not rendered 2021-03-08 22:45:39 -05:00
Alexander Skvortsov
30017eef09 Send username as author filter value instead of id.
For consistency with the Discussion AuthorFilterGambit, this should be sent usernames, not numerical ids.
2021-03-08 16:29:48 -05:00
Alexander Skvortsov
612a57c466 Use new author key for filtering posts
Fixes https://github.com/flarum/core/issues/2671
2021-03-08 16:21:36 -05:00
Alexander Skvortsov
8eea0985a4
Split JSDoc directives to separate lines. 2021-03-07 17:35:58 -05:00
Sami Mazouz
91d5d9c176
Use absolute positioning for the Composer on Safari (#2660) 2021-03-07 16:31:46 -05:00
Alexander Skvortsov
3aa118ab94
Fix search box out of screen (#2650)
Programatically set search results max height
2021-03-07 16:31:23 -05:00
Alexander Skvortsov
ddac07d991
Move TextEditor to common (#2649) 2021-03-04 16:51:34 -05:00
daniellesniak
a65e1de641
Convert common helpers to Typescript (#2541) 2021-03-03 18:50:54 -05:00
Charlie
b7379bf91b
Simplify Extension Categories (#2604) 2021-03-01 17:25:55 -05:00
Matt Kilgore
9627eb73f1
User edit permission tightening (#2620)
- Split user edit permision into edit attributes, edit credentials, and edit groups
- Only Admins can edit Admin Credentials
- Only Admins can Promote/Demote to/from Admin
2021-03-01 15:52:29 -05:00
Alexander Skvortsov
7d79912d36
Editor Driver Abstraction (#2594)
This will allow drop-in replacements of the editor with a more advanced WYSIWYG solution such as ProseMirror
2021-02-26 16:17:05 -05:00
Alexander Skvortsov
49009d268f NotificationList: Fix load on mobile
Followup to https://github.com/flarum/core/pull/2524.

In that PR, we fixed infinite scroll for the panel, but accidentially used document.body. Since scrollTop on body is (almost always) 0, this means that new pages of notifications were loaded on every scroll, which quickly becomes overwhelming. Instead, we can use `document.documentElement` for getting scrollTop, which results in the expected behavior.
2021-02-23 14:21:18 -05:00
Charlie
71ccdc00e6
AdminUX Patch and Admin Page (#2593)
* AdminPage

* More fixes

* Settings Modal Drop

* Translation and docblock

* settingS

* Convert Fieldset to JSX

* info -> headerInfo, className

* Overflow fixes

* MailPage

* Admin Less

* Basics Page

* Changes

* Cleanup

* Permission Page

* Add padding
2021-02-18 15:45:43 -08:00
Alexander Skvortsov
09076e005b
Various iOS scroll improvements (#2548)
* Don't update scrubber while post pages loading

This alleviates the scrubber bouncing around when scrolling up on iOS

* Throttle loadMore loadPrevious

Throttle loadMore and loadPrevious functions to alleviate skipping over pages and pages of posts during one scroll. This sometimes happens on iOS
2021-02-17 10:36:30 -05:00
Charlie
122a99b51e
Don't push bidi function to DOM (#2602) 2021-02-16 17:48:16 -05:00
Wadim Kalmykov
03231b2931
PostStream: Fix minor load more issue (#2388) 2021-02-10 14:22:26 -05:00
Ian Morland
95b021a839
Add user badges to post preview #1765 (#2555) 2021-02-10 13:53:59 -05:00
Alexander Skvortsov
7306d8ef13 Export DiscussionListPane in compat
We forgot to do this in beta 14 when introducing the component.

Fixes https://github.com/flarum/core/issues/2591
2021-02-10 09:09:58 -05:00
David Sevilla Martín
e13772075c
Navigate to dashboard page if extension ID not found (#2584) 2021-01-30 17:45:20 -05:00
David Sevilla Martín
a4880453a4
Set this.changingState back to false in ExtensionPage if an error occurs (#2558) 2021-01-30 17:43:28 -05:00
Alexander Skvortsov
9347b12b47 BasicsPage: fix "show language selector" default
Since some boolean settings might be stored as string "0" or "1", the previous system no longer works, and it always sets the switch to true. The "no setting" check has been changed to reference `undefined`, so now the switch will only be defaulted to `true` if the setting truly hasn't been set.

Fixes https://github.com/flarum/core/issues/2574
2021-01-27 00:03:30 -05:00
Alexander Skvortsov
26c4e492fe Remove unused variable 2021-01-25 20:53:07 -05:00
Alexander Skvortsov
00913d5b0b ChangeEmailModal: dismiss alert on new request
Removing old errors at the beginning of the next request, rather than at the end of the next successful request, makes it clearer that any new errors are caused by the new inputs.

See https://github.com/flarum/core/pull/2467#issuecomment-749832787
2021-01-25 20:52:21 -05:00
David Wheatley
14dc46e226
Add missing a11y attributes (#2564) 2021-01-24 14:05:14 -05:00
Alexander Skvortsov
92d5c716be
Fix notification panel infinite scroll (#2524)
Improves calculations for determining whether we are at the bottom of the notifications panel (which would trigger infinite scroll). This should be particularly effective in fixing issues on smaller screens.
2021-01-24 12:12:42 -05:00
daniellesniak
b50d806534
Convert highlight helper to Typescript (#2532) 2021-01-23 16:43:40 -05:00
Alexander Skvortsov
fae79ea910 Bring m.attrs.bidi in as a util
We previously used the tobscure/m.attrs.bidi github repo, but that repo was recently taken offline. We decided to integrate it as a util instead of publishing it as a separate package since we seem to be the only project using it, and adopting it into a new project requires barneycarroll/mattr, which does not seem to be used anywhere.

The code added here was taken from https://github.com/askvortsov1/m.attrs.bidi, a fork (without changes) of the tobscure repo. Support for alternative module systems and ways of registering bidi were removed, and the file was formatted in compliance with our prettier config.
2021-01-19 17:30:03 -05:00
Wadim Kalmykov
2e3197d510
Fix DiscussionListPane jumping around (#2402)
Ensure that scroll position is retained between page changes, so if navigating via the sidebar, you don't need to re-scroll down every time.
2021-01-13 17:49:26 -05:00
Sami Mazouz
9b27b0d9d7
Fix composer header hidden by mobile browser (#2279) 2021-01-07 10:25:12 -05:00
Sami Mazouz
36c55e8f69
Add ExtensionPermissionGrid to compat (#2501) 2020-12-20 12:14:00 -05:00
Alexander Skvortsov
84b1666b24 Support multiple callback-based settings per-extension 2020-12-15 17:49:24 -05:00
Alexander Skvortsov
210a6b3e25 Fix scroll on long discussions
- Anchor scroll when inserting post placeholders
- Indicate that pages are loading at start of `loadPage`, which allows `onscroll` to not request that multiple pages be loaded at the same time

These changes are particularly applicable to firefox, where previously, dozens of posts could be skipped at a time if scroll up was held while at the top of the viewport.
2020-12-14 14:06:32 -05:00
Charlie
07a43f52b4
AdminUX Overhaul Small Patches (#2468) 2020-12-07 15:14:22 -05:00
Matt Kilgore
4679448300
Slug Driver Support (#2456)
- Support slug drivers for core's sluggable models, easily extends to other models
- Add automated testing for affected single-model API routes
- Fix nickname selection UI
- Serialize slugs as `slug` attribute
- Make min search length a constant
2020-12-07 13:33:42 -05:00
David Sevilla Martín
67a2aac635
Replace forum and admin global compat exports with a Proxy to allow namespace use (#2488) 2020-12-07 13:25:24 -05:00