Commit Graph

45677 Commits

Author SHA1 Message Date
d8714facb6 FIX: can't hide overflow of d-editor-button-bar on mobile (#17563) 2022-07-18 20:43:05 -04:00
a0d501b0b1 DEV: Add discourse-templates in the official plugins list (#17560) 2022-07-18 16:46:49 -03:00
48e2caf7b7 DEV: emoji helper: add the ability to set custom title (#17517) 2022-07-18 21:51:19 +04:00
80bda4a9db FIX: use padding, not margin (#17559) 2022-07-18 13:30:44 -04:00
e57485370f UX: plus icon for sidebar messages section header (#17558) 2022-07-18 12:54:23 -04:00
9e603e9374 COPY: Change "old" to "unsupported" browser (#17555)
The word choice was inaccurate because new browsers may still not work
well with Discourse because not all required browser features are
present.
2022-07-18 19:32:04 +03:00
719efc46a9 UX: prevent sidebar count from wrapping (#17557) 2022-07-18 12:11:40 -04:00
aad1e76150 PERF: avoid extra object created on each User#validatable_user_fields call (#17556) 2022-07-18 12:35:47 -03:00
cc515e2c1c DEV: Remove before(:all) from RSpec suite 2022-07-18 14:21:56 +02:00
e7f04a8674 FIX: Use URI#merge to merge base and relative URLs (#17454)
The old implementation did not handle all cases, such as the case when
`src` is a relative URL that starts with `..`.
2022-07-18 14:17:54 +03:00
c94a011d9f FIX: prevents multi-select to use noneItem for its list (#17523) 2022-07-18 11:26:12 +02:00
fab1c00c8f DEV: Drop the deprecated themeSettings.blah syntax (#17394)
This syntax has been printing deprecation messages since 880311dd4d2b367e54cc8244fba60fce69e121c3
2022-07-18 10:10:23 +01:00
ab05d931a0 DEV: updates popper to 2.11.5 (#17522)
This commit also removes a modifier used in select-kit which was causing issues with this update and doesn’t appear to be needed anymore.
2022-07-18 11:06:19 +02:00
cd82e10d87 FIX: Restrict sidebar specific select kit CSS to sidebar (#17552)
Follow-up to 0d72a8c458216698f55aaee54b8ffbe4d7750ce9
2022-07-18 16:17:03 +08:00
7230b0d436 FIX: pass custom section willDestroy (#17551)
Custom sections `willDestroy` function has to be passed to SidebarSection component  to call when component is removed.
2022-07-18 15:46:49 +10:00
fe6ec28228 DEV: Custom section in Sidebar should implement own willDestory hook (#17550)
No need for us to specify our custom teardown hook when Sidebar
component is destroyed when each custom section link is expected to be
its own component and can implement its own `willDestory` hook.
2022-07-18 12:57:14 +08:00
0d72a8c458 FEATURE: API for sidebar (#17296)
This plugin API can be used to add to sections and links to sidebar
2022-07-18 14:03:37 +10:00
0ca1152c1c DEV: Add bookmark_id to bookmark reminder_handler notifications (#17547)
This is so we can join the Notification table onto the
Bookmark table. A slight refactor was needed to ensure
that the required values are always included and the
consumer does not need to think about this.

The discourse-chat and discourse-data-explorer plugins
will be updated to take advantage of this commit.
2022-07-18 12:51:57 +10:00
54e63b3d31 Revert "UX: Remove experimental sidebar notification text (#17290)" (#17548)
This reverts commit 4df683f88d8c5d8d18da0779d36611396718baef.

We've decided to bring back the words for counts in the experimental sidebar.
2022-07-18 10:34:22 +08:00
a0a0f6f37c DEV: Run screen-track run in a runloop, drop jQ (#17545) 2022-07-18 00:27:29 +02:00
fd9f8c6802 Build(deps): Bump rack-protection from 2.2.0 to 2.2.1 (#17546)
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/v2.2.1/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.0...v2.2.1)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-18 00:27:17 +02:00
070b1cbed6 DEV: Don't double inject in screen-track (#17543)
1. Injecting `appEvents` service into `screen-track` was unnecessary as it's already injected into all services (and was causing an assertion error)
2. Return a promise from `sendNextConsolidatedTiming()` (no need for `await settled()` then)
2022-07-17 23:44:20 +02:00
1ccabe62d6 DEV: Move emoji-store test to the correct dir (#17544) 2022-07-17 23:44:10 +02:00
057d6b406d DEV: Extensively use includes() (#17541)
Also, the change in insert-hyperlink (from `this.linkUrl.indexOf("http") === -1` to `!this.linkUrl.startsWith("http")`) was intentional fix: we don't want to prevent users from looking up topics with http in their titles.
2022-07-17 20:48:36 +02:00
5f7163b5bb DEV: Extensively use startsWith() (#17540) 2022-07-17 20:16:39 +02:00
6a4a7b1d88 UX: Prevent long toolbars from resizing the column (#17538) 2022-07-17 20:16:11 +02:00
1c8d461ecc DEV: Remove unnecessary visit() calls (#17536) 2022-07-17 20:15:44 +02:00
c3f7a45821 DEV: Use key names in triggerKeyEvent (#17535) 2022-07-17 20:15:28 +02:00
5538b8442e DEV: Introduce discourseLater (#17532)
A wrapper for `later()` from `@ember/runloop`, similar to `discourseDebounce`. It automatically reduces the delay in testing environment.
2022-07-17 00:50:49 +02:00
5707431981 DEV: Don't await for updateCurrentUser (#17534)
It doesn't return Promises.
2022-07-17 00:21:12 +02:00
39c35ee47d DEV: Clear tagsHtmlCallbacks after each test (#17530)
Fixes leakage between tests
2022-07-16 23:24:13 +02:00
343b8dd7aa DEV: One more de-jQueryfied test (#17528)
Forgot to save this file when doing #17474 😅
2022-07-16 22:57:43 +02:00
facca3f46c DEV: We already restore sinon after each test (#17529) 2022-07-16 22:57:33 +02:00
751a5e1430 DEV: Clear clearToolbarCallbacks after each test (#17531)
Fixes leakage between tests. Have a composer toolbar with a 100 "Add emoji" buttons? I gotchu.
2022-07-16 22:57:08 +02:00
1b4dea75ee DEV: Also reset horizontal scroll after each test (#17527)
🤞 maybe this will cover the remaining out-of-viewport flakes
2022-07-16 22:56:19 +02:00
eef358dc13 DEV: Remove frontend/core-plugins job (#17533)
Frontend tests for core plugins already run in frontend/plugins job
2022-07-16 22:55:39 +02:00
0760b249ff DEV: introduces {{concat-class}} helper (#17526)
Usage:

```
<button class={{concat-class "foo" this.bar (if true "baz")}} />
```
2022-07-16 14:09:54 +02:00
be6736c940 UX: Make space for scrollbar in mini-profiler (#17524) 2022-07-16 10:12:44 +02:00
9909d001c5 UX: increase text size for mobile exp sidebar (#17521) 2022-07-15 17:44:44 -04:00
ddd9d9b620 UX: remove .btn-default from admin btn (#17515) 2022-07-15 22:09:48 +02:00
e293afad4c UX: Prevent pre tag from making posts too wide (#17518) 2022-07-15 15:51:22 -04:00
4a996825fd FIX: Skip job if tag edit notification is disabled (#17508)
Previous commit did not schedule any more new jobs, but the jobs in
queue could still create notifications.

Follow up to commit e8d802eb86bb4c9fda140422325e80b21541e33e.
2022-07-15 15:36:27 +03:00
f774083016 FIX: Allow Symbol objects to be deserialized in PostRevision (#17510)
Followup to ee07f6da7d111e46ca79454320d027c1aca7e157
2022-07-15 13:14:57 +01:00
7cf95e6339 DEV: Check if screen-track was destroyed (#17509)
This error is swallowed by `.catch()` but it's an error nonetheless.
2022-07-15 13:35:31 +02:00
8ddca5998c DEV: Fix state leak in QUnit acceptance tests (#17507)
Follow-up to 0525455ef69f4482b0f7b1610c5ccade40f88dd7
2022-07-15 16:51:15 +10:00
e8d802eb86 FIX: Check if tags edit notifications are disabled (#17499)
Tag edit notifications are either created by PostActionNotifier or
PostRevisor. PostActionNotifier already checks if the site setting is
enabled. but PostRevisor scheduled a NotifyTagChange job without
checking disable_tags_edit_notifications.
2022-07-15 16:14:46 +10:00
0525455ef6 FIX: Unread count badge shown for topics that user is not tracking (#17506)
When navigating to a topic and directly back to a topic list,
an unread count may be shown for the topic even if the user is
not tracking it.
2022-07-15 12:48:51 +08:00
098ab29d41 FEATURE: Add plugin API to register About stat group (#17442)
This commit introduces a new plugin API to register
a group of stats that will be included in about.json
and also conditionally in the site about UI at /about.

The usage is like this:

```ruby
register_about_stat_group("chat_messages", show_in_ui: true) do
  {
    last_day: 1,
    "7_days" => 10,
    "30_days" => 100,
    count: 1000,
    previous_30_days: 120
  }
end
```

In reality the stats will be generated any way the implementer
chooses within the plugin. The `last_day`, `7_days`, `30_days,` and `count`
keys must be present but apart from that additional stats may be added.
Only those core 4 stat keys will be shown in the UI, but everything will be shown
in about.json.

The stat group name is used to prefix the stats in about.json like so:

```json
"chat_messages_last_day": 2322,
"chat_messages_7_days": 2322,
"chat_messages_30_days": 2322,
"chat_messages_count": 2322,
```

The `show_in_ui` option (default false) is used to determine whether the
group of stats is shown on the site About page in the Site Statistics
table. Some stats may be needed purely for reporting purposes and thus
do not need to be shown in the UI to admins/users. An extension to the Site
serializer, `displayed_about_plugin_stat_groups`, has been added so this
can be inspected on the client-side.
2022-07-15 13:16:00 +10:00
Sam
8dad778fcc FIX: support systems without SSE 4.2 (#17505)
Older CPUs do not support the instruction set used internally by the oj gem
starting with version 3.13.15.

This pins the version to a working one while oj patch the project to support
CPUs without the instructions (eg: AMD Opteron 4180).

see:

https://meta.discourse.org/t/discourse-update-keeps-failing/231862
https://github.com/ohler55/oj/issues/789
a455c389c0
2022-07-15 10:06:04 +10:00
7d9b98a161 FIX: Allow Time objects to be deserialized in PostRevision (#17501)
Followup to ee07f6da7d111e46ca79454320d027c1aca7e157
2022-07-15 00:17:41 +01:00