Commit Graph

27 Commits

Author SHA1 Message Date
Tristian Kelly
46357ee9a9
perf(flags): add pagination to flags list (#3931) 2023-11-23 18:11:46 +01:00
Sami Mazouz
eaabeab8c9
chore: extract FormModal from Modal (#3922) 2023-11-10 21:59:34 +00:00
Sami Mazouz
e2281a2123
chore: handle deprecations from 1.x (#3909)
* chore: drop deprecated `post_number_index` column

* chore: remove deprecated `FlagsWillBeDeleted` event

* chore: `Migration::addSettings` can still be needed

* chore: `settings->get` default can still be needed

* chore: deprecated `$default` in `Settings::serializeToForum` extender

* chore: deprecated request `actor` attribute

* chore: already handled

* chore: remove `RecompileFrontendAssets::whenSettingsSaved`

* chore: remove `getReadIds`

* chore: `Model::dateAttribute` extender

* chore: `evented` js util

* chore: `WelcomeHero` js hidden prop

* chore: attributes pushData with relations

* chore: app request options `extract`

* chore: itemlist deprecations

* chore: `search` state

* chore: `getMentionText`

* chore: deprecated non-registered store type

* chore: `Button` title

* chore: `Modal` deprecations

* chore

* chore: deprecated `less` mixins

* Apply fixes from StyleCI

* fix

* fix: phpstan

* fix

* fix

---------

Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-11-10 21:20:18 +00:00
Sami Mazouz
5ab5257ff5
feat: theming and extensibility improvements (#3876)
* feat: make page structure customizable across different pages (#3867)

* feat: create `PageStructure` component
* feat: apply to `DiscussionPage`
* feat: apply to `UserPage`
* feat: apply to `TagsPage`
* fix: adapt subscriptions ext
* chore: cleanup

* chore: use grid & flexbox for the discussion list item (#3868)

* chore: rename `DiscussionPage-list` to `DiscussionListPane`
* chore: itemlistify `DiscussionListItem`
* chore: use flex and grid for `DiscussionListItem`

* chore: use flexbox for `App-header` (#3869)

* chore: use flex and grid for `App-header`
* chore: drop search floats
* fix: adapt admin styles

* chore: use flexbox in dropdowns and SplitDropdown for subscriptions (#3874)

* chore: flexbox dropdown menu items
* chore: normalize subscriptions menu (use slit dropdown)
* chore: cleanup

* chore: misc flexbox/grid changes (#3875)

* chore: `TagsPage` to tsx
* chore: `TagsPage` flexbox/grid
* chore: `IndexPage-toolbar` flexbox
* chore: `UserCard` flexbox & itemlists
* fix: `Post` improve spacing logic
* chore: `Post` grid and proper spacing
* fix: avatar editor hover layer layout
* chore: `Button` flex

* chore: normalize form semantics (#3877)

* chore: normalize fieldsets
* fix: `LinkButton` spacing
* chore: consistent form semantics

* fix: styling regressions (#3878)

* fix: post spacing goes off in other pages
* fix: regression

* feat: extract reusable components from `NotificationsDropdown` (#3879)

* feat: extensible global notices (#3880)

* fix: js error on null item list
* feat: extensible global notices

* chore: housekeeping (#3881)

* chore: use CSS variables where still not using
* chore: cleanup suspension modal
* chore: cleanup post flag
* fix: badge vertical align
* chore: use CSS variables for custom coloring
* chore: `icon` helper to `Icon` component
* chore: `avatar` helper to `Avatar` component
* fix: chunk loading fails on admin frontend
* chore: format

* feat: reusable `UploadImageButton` component (#3882)

* chore: convert `UploadImageButton` to tsx
* feat: reusable `UploadImageButton` component
* feat: add `image-upload` setting type

* feat: extensible default footer component (#3883)

* chore: yarn format
2023-10-10 21:36:08 +01:00
Sami Mazouz
016503d8c3
feat: export registry (#3842)
* feat: registry first iteration

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* feat: improve webpack auto export loader

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* chore: remove `compat` API

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* chore: cleanup

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

---------

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>
2023-06-29 18:57:53 +01:00
David Wheatley
e63e161be6
chore: major frontend JS cleanup (#3609) 2023-05-07 17:40:18 +01:00
Sami Mazouz
47b670aa29
feat: frontend Model extender (#3646)
* feat: reintroduce frontend extenders
* chore: used `Routes` extender in bundled extensions
* chore: used `PostTypes` extender in bundled extensions
* chore: `yarn format`
* feat: `Model` frontend extender
* chore: naming
* chore(review): attributes can be nullable or undefined
* chore(review): delay extender implementation
* chore(review): unnecessary check
* chore(review): stay consistent
* chore: merge conflicts
* chore: unused import
* chore: multiline extenders
* feat: add Store extender

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>
2023-02-08 21:13:53 +01:00
Sami Mazouz
d7f4975330
feat: introduce frontend extenders (#3645)
* feat: reintroduce frontend extenders
* chore: used `Routes` extender in bundled extensions
* chore: used `PostTypes` extender in bundled extensions
* chore: `yarn format`
* chore: naming
* chore(review): unnecessary check
* chore(review): stay consistent
* chore: unused import

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>
2023-01-17 19:10:24 +01:00
Alexander Skvortsov
a595665bfb
fix: Assorted Typing Fixes (#3348)
With all the commits below, we resolve all outstanding typing issues in the repo, and CI jobs run green.

* fix: Convert DashboardPage and DashboardWidget to TypeScript

* fix: fix type errors in package manager ext

* fix: Convert Post component to TypeScript

* fix: avatar typings should accept null user

* fix: convert Notification component to TypeScript

* fix: properly use `typeof` in ForumApplication

* feat: make Notification content attr generic

* chore: format Notification component

* fix: Convert DiscussionRenamedNotification to TypeScript

* fix(pusher) move shims to a location where they get applied

* fix(pusher): fix some typing errors

* fix(akismet): fix some typing issues

* chore: update core dist typings

* chore(pusher): format

* fix: anchorScroll should accept string selectors

* fix: more accurately represent ApiQueryParamsPlural

* fix: convert PostStreamState to TypeScript

* chore(core): rebuild typings

* feat: allow extending app.routes

* fix: more flexible typings for highlight.ts

* fix: use primitive `number` type for Discussion typings

* fix: convert DiscussionListItem to TypeScript

* chore: rebuild core typings

* fix: final pusher type fixes

* feat: start tags TypeScript conversion

* fix: require-dev tags in pusher for CI TypeScript purposes.

* chore(core): format

* chore(tags): build dist typings

* feat(pusher): use dist types from tags.

* feat: convert flags to TypeScript

* chore(flags): generate dist typings

* fix(akismet): last type errors

* chore: update .yarn-integrity

* chore: partially run flarum-cli audit infra --fix

The tsconfig changes from that command are ignored, since we don't yet support "replacable sections" that would let us add custom config.

* chore: use type imports

* fix: broader gitattributes

* chore: run flarum-cli audit infra --monorepo --fix

* feat: make `app.data` typings extensible

* chore(core): format

* chore: boost tags TypeScript coverage

* fix(tags): further increase type coverage.
2022-03-23 11:43:14 -04:00
Alexander Skvortsov
6dddb748ba chore: flarum-cli audit infra --fix 2022-01-20 03:32:36 -05:00
Ian Morland
9d7f9eb0e5 Update JS imports (#40) 2022-01-07 12:07:20 -05:00
Ian Morland
1bd32bb4e0 chore: convert flag items to ItemList (#39)
* Convert to ItemList, update import namespaces

* Bump deps, add prettier

* Format js
2022-01-07 14:05:40 +00:00
Lucas Fernandes
bae89a2f44 Add missing translation for the reason flag (#30) 2021-10-25 13:56:17 -04:00
Charlie
9e2d794cd4 AdminUX Changes (#33) 2020-11-24 16:58:40 -05:00
Alexander Skvortsov
2c79c4c620 Don't initialize cache until we receive flags (#31) 2020-10-25 01:31:07 -04:00
Alexander Skvortsov
ede3a33952 Use Link component instead of route patch 2020-10-02 19:22:43 -04:00
Alexander Skvortsov
07e93eb6f9 Use flarum/utils/Stream instead of m.stream 2020-10-02 19:22:19 -04:00
Alexander Skvortsov
df74cc4a96 Mithril 2 Update (#29)
Update for Mithril 2
2020-09-23 22:48:20 -04:00
David Sevilla Martín
5038ec4590 Update modal show call for the modal state changes (#28) 2020-08-18 17:03:37 -04:00
Alexander Skvortsov
f26db4d3f2 Extract flags list state (#24)
* Extract flags list state
2020-08-17 20:38:35 -04:00
Alexander Skvortsov
bf431c4fdf Fix extension to work with latest state changes 2020-07-01 19:58:59 -04:00
Franz Liedke
95d2ba3eb7 Rely on default modal error handling
This also gives the server-side the chance to add more different error
messages / additional behavior without having to change the frontend.

Refs #18.
2020-02-07 11:55:38 +01:00
Franz Liedke
e9a11b11d3 Tweak translation keys for consistency
Refs #18.
2020-02-07 11:54:29 +01:00
Ian Morland
4344f71d99 Flag improvements/tweaks (#18)
* Option to allow users to flag their own post
* Increase size of "Flag Post" modal
* Allow optional reason detail for offtopic, inappropriate and spam reasons
* For other reasons, detail text is now required
* Switch to column type "text" to allow more details in reason
2020-02-07 11:23:10 +01:00
Toby Zerner
3461537e8a Prefix compat exports 2018-11-15 16:41:18 +10:30
Toby Zerner
ec60fed381 Database changes (#15)
* Implement database changes

* Split foreign keys into their own migration

* Use whereColumn

* Rename flag.time

* Rename forum.flagCount

* Rename forum.newFlagCount
2018-09-16 20:49:41 +02:00
Toby Zerner
ec6cd07f94 Webpack (#14)
See https://github.com/flarum/core/pull/1367

* Replace gulp with webpack and npm scripts for JS compilation
* Set up Travis CI to commit compiled JS
* Restructure `js` directory; only one instance of npm, forum/admin are "submodules"
* Restructure `less` directory
2018-06-20 13:35:25 +09:30