Commit Graph

4204 Commits

Author SHA1 Message Date
Alexander Skvortsov
d0829bc3a4 hasDiscussions method of DiscussionListState has been removed 2021-05-12 19:41:28 -04:00
flarum-bot
12abec475f Bundled output for commit 9b21d05207
Includes transpiled JS/TS, and Typescript declaration files (typings).

[skip ci]
2021-05-12 23:29:46 +00:00
David Wheatley
9b21d05207 Update core to use new Webpack config, flarum-tsconfig, and build action (#2856)
* Update core to use new Webpack and TSConfig

* Bump webpack dep

* Update JS build action

* Copy custom `.d.ts` files to `dist-typings` folder on typings compile

* Run workflow against action v2

This allows us to have a moving tag, like first party actions have.

* Remove bundle analyzer from core

* Use webpack config 0.1.0-beta.16.2

* Add note about checking flarum-tsconfig
2021-05-13 00:28:17 +01:00
flarum-bot
5f2978d81f Bundled output for commit 896e1ec8ff
Includes transpiled JS/TS.

[skip ci]
2021-05-12 23:12:10 +00:00
Alexander Skvortsov
896e1ec8ff Use proper attrs for viewForum and searchUsers 2021-05-12 18:49:11 -04:00
flarum-bot
8b47bf0316 Bundled output for commit fa8812a5d4 [skip ci] 2021-05-12 22:19:45 +00:00
David Wheatley
fa8812a5d4 Fix formatting error in Tooltip.tsx
Prettier is acting differently on different systems.
2021-05-12 23:14:50 +01:00
flarum-bot
f1e8821b70 Bundled output for commit b8c0787dfa [skip ci] 2021-05-12 03:57:28 +00:00
Alexander Skvortsov
b8c0787dfa Tooltip formatting fix 2021-05-11 23:55:52 -04:00
Alexander Skvortsov
0bd3dcec39 Typehint event in console scheduling test case 2021-05-11 23:55:34 -04:00
flarum-bot
2164b82b80 Bundled output for commit 29957d2b1d [skip ci] 2021-05-11 23:15:50 +00:00
David Sevilla Martín
29957d2b1d Create abstract PaginatedListState for DiscussionList and others (#2781) 2021-05-11 19:14:26 -04:00
flarum-bot
3a7acc48d0 Bundled output for commit bd33954a57 [skip ci] 2021-05-11 19:17:04 +00:00
Alexander Skvortsov
bd33954a57 Rename viewDiscussions => viewForum, viewUserList => searchUsers (#2854)
This naming is clearer as to the intended effect. Changes include:

- A migration to rename all permissions
- Updating the seed migration to use the original naming from the start
- Replacing usage of the old names with new names in code
- Throwing warnings when the old names are used.
2021-05-11 15:15:27 -04:00
flarum-bot
f08767fed2 Bundled output for commit acd3873bbd [skip ci] 2021-05-11 02:31:32 +00:00
Alexander Skvortsov
acd3873bbd Search frontend cleanup (#2849)
- Convert KeyboardNavigatable to TypeScript, as that is used internally here.
- Convert search sources to TypeScript
- Convert Search component to TypeScript
- Convert Search States to Typescript
- Add `getInitialSearch` to `SearchState`
- Fix search disappearing on page reload / direct link
2021-05-10 22:30:04 -04:00
David Sevilla Martín
6fd185e425 Improve discussion page canonical URL (#2853)
* Switch to ?page= discussion page canonical URL & fix no-JS pagination buttons
2021-05-10 19:20:47 -04:00
Alexander Skvortsov
03e4f31bda Squash core migrations (#2842)
Data migrations (seed default groups, seed default permissions) are deliberately excluded.
This also allows us to remove a lot of now unnecessary public API from the migrator and migration repository.
2021-05-10 18:05:01 -04:00
flarum-bot
2401355fb9 Bundled output for commit 90cfd36e30 [skip ci] 2021-05-10 21:56:41 +00:00
Alexander Skvortsov
90cfd36e30 Some minor JS cleanup (#2846)
- Change index files to ts
- Remove deprecated EditUserModal from forum compat
- Remove b14-specific error
- Remove transChoice method (ICU should be used instead)
- Translator to TypeScript
- Small JS => TS cleanup
* Trivial js => ts change

Co-authored-by: David Wheatley <hi@davwheat.dev>
2021-05-10 17:54:58 -04:00
Alexander Skvortsov
60dea59815 Use github markdown utils in core, support key handlers (#2826)
This simplifies the markdown extension and allows BBCode to use these features.
It also allows undoing stuff like inserting replies/mentions
2021-05-10 17:53:32 -04:00
Alexander Skvortsov
d5c2a997b1 Run API Client requests through middleware (#2783)
- Add integration tests for login and registration
- Use URL instead of controller
- Add fluent API
- Allow setting parent request, user, session
2021-05-10 17:41:38 -04:00
flarum-bot
a7373487fb Bundled output for commit 194031bdae [skip ci] 2021-05-10 20:07:59 +00:00
David Wheatley
194031bdae Add tooltip component (#2843)
* Add Tooltip component to common

Will be used to provide backwards compatibility when we switch to CSS tooltips.

All other methods of creating tooltips are deprecated and this component-based method should be used instead.

* Modify direct child instead of using container element

Instead of using a container to house the tooltip, we'll now modify the
first direct child of the Tooltip component.

The Tooltip component will ensure that:
- children are passed to it
- only one child is present
- that child is an actual HTML Element and not a text node, or similar
- that child is currently present in the DOM

Only after all of the above are satisfied, will the tooltip be created
on that element. We store a reference to the DOM node that the tooltip
should be created on, then use this to perform tooltip actions via
jQuery. If this element gets changes (e.g. the tooltip content is
updated to another element) then the tooltip will be recreated.

If any of the first 3 requirements are not satisfied, an error will
be thrown to alert the developer to their misuse of this component.

To make this work, we do need to overwrite the title attribute of
the element with the tooltip, but this is the only solution other than
specifying `title` as an option when making the tooltip, but this is
not accessible by screenreaders unless they simulate a hover on the
element.

* Add warning about component overwriting `title` attr

* Update previous uses of Tooltip component
2021-05-10 21:06:40 +01:00
flarum-bot
afad2dc584 Bundled output for commit 6c2d01a5b8 [skip ci] 2021-05-09 22:10:56 +00:00
Alexander Skvortsov
6c2d01a5b8 Use all Mithril lifecycle stubs (#2847) 2021-05-09 18:09:45 -04:00
David Wheatley
45602a83c6 Remove spin.js, bump some dependencies (#2848) 2021-05-09 18:09:29 -04:00
flarum-bot
c81d203e8e Bundled output for commit e7427f59da [skip ci] 2021-05-09 21:35:04 +00:00
David Wheatley
e7427f59da Fix typo in LoadingIndicator docblock 2021-05-09 22:33:33 +01:00
flarum-bot
0704952b5c Bundled output for commit 1d0d1c825a [skip ci] 2021-05-09 21:23:38 +00:00
David Wheatley
1d0d1c825a Fix required selector argument to Component.$() (#2844) 2021-05-09 17:22:22 -04:00
flarum-bot
503c3fe640 Bundled output for commit e335e316af [skip ci] 2021-05-07 16:31:01 +00:00
Alexander Skvortsov
e335e316af Fix exception in bootExtensions
Frontend extenders exist in a weird state of limbo, where they are technically defined, but aren't used or tested at all. In 114779bcfd, we shifted from passing `extension.extend` to `flattenDeep` to calling `flat` on `extension.extend`. If an extension doesn't define extenders (as is the case for most extensions), the change breaks the forum. All we do here is add a null check.
2021-05-07 12:29:10 -04:00
flarum-bot
d8ad125014 Bundled output for commit 114779bcfd [skip ci] 2021-05-05 23:29:41 +00:00
David Wheatley
114779bcfd Remove lodash from core (#2827)
* Remove `lodash-es` dependency

* Replace `escapeRegExp` with home-made util

* Replace `throttle` with `throttle-debounce` library

* Use native browser methods for `deepFlatten`

We need a polyfill for iOS 11 and below. I think using a native method with this polyfill is better than having our own function instead, even if the bundle size is ~150B more.

* Save a few bytes in `escapeRegExp`

* Fix typo in comment

* Undo import re-organisation

* Use spread instead of slice

* Use smaller Array.flat polyfill from MDN

* Export new utils in `compat.js`
2021-05-06 00:28:22 +01:00
flarum-bot
529e5bb559 Bundled output for commit 340f7d0dd1 [skip ci] 2021-05-05 14:47:48 +00:00
David Wheatley
340f7d0dd1 Remove unneeded delete (#2835) 2021-05-05 15:46:23 +01:00
Alexander Skvortsov
d16bd5a72e Remove unused variable 2021-05-04 18:15:05 -04:00
Alexander Skvortsov
f8421b47b2 Centralize permission caching (#2832) 2021-05-04 13:56:14 -04:00
David Wheatley
a7f98f54fa Mark JS dist folder as generated code (#2828)
This excludes it from the repo's language stats and are suppressed in Linguist diffs.

See: https://github.com/github/linguist/blob/master/docs/overrides.md#generated-code
2021-05-04 18:13:42 +01:00
Robert Korulczyk
02d9033349 Update validation.yml. (#2829)
source: https://github.com/laravel/laravel/blob/v8.5.16/resources/lang/en/validation.php
2021-05-03 19:47:18 -04:00
Matt Kilgore
b6a811bbcc Harden Headers (#2721)
* Basic security headers

* Remove XSS Header (not relevent)

* Fix config name

* Use Arr::get()

* Add tests

* Re-fix the StoreConfig step for fresh installs

Co-authored-by: luceos <luceos@users.noreply.github.com>
Co-authored-by: Alexander Skvortsov <askvortsov1@users.noreply.github.com>
2021-05-03 12:42:06 -04:00
Alexander Skvortsov
87024fc8b7 Apply fixes from StyleCI
[ci skip] [skip ci]
2021-05-03 05:36:06 +00:00
Alexander Skvortsov
a22fed10a7 Use latest version of settings package
This allows us to get rid of hacks for configuring settings and config
2021-05-03 01:35:46 -04:00
flarum-bot
5e0d59eedb Bundled output for commit 3893d92d4a [skip ci] 2021-05-02 16:14:09 +00:00
David Wheatley
3893d92d4a Revamp notifications stylesheet (grid and flex) (#2822) 2021-05-02 17:13:04 +01:00
flarum-bot
6f07235be0 Bundled output for commit f3eb142a57 [skip ci] 2021-05-02 10:38:26 +00:00
David Wheatley
f3eb142a57 Allow multiple methods to be provided to extend and override 2021-05-02 11:37:19 +01:00
flarum-bot
1f1c17628a Bundled output for commit b32fc37df4 [skip ci] 2021-04-30 17:00:49 +00:00
Alexander Skvortsov
b32fc37df4 Fix package-lock
b5ee8a034b accidentially commited a package-lock with symlinks, breaking the JS build process
2021-04-30 12:59:33 -04:00