Commit Graph

886 Commits

Author SHA1 Message Date
Jarek Radosz 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
Jarek Radosz 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
Joffrey JAFFEUX 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
Alan Guo Xiang Tan 8ddca5998c DEV: Fix state leak in QUnit acceptance tests (#17507)
Follow-up to 0525455ef6
2022-07-15 16:51:15 +10:00
Alan Guo Xiang Tan 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
Martin Brennan 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
Meghna 72889573e6 UX: better account-created page (#17452)
UX: minor styling updates to accept invite pages
2022-07-14 20:43:00 +05:30
Alan Guo Xiang Tan 737c0a7b9f DEV: Allow sidebar section caret title to be translated (#17491) 2022-07-14 15:27:01 +08:00
Alan Guo Xiang Tan 92e1e43104 FIX: Improve reliability of topic tracking state (#17387)
The `unread_not_too_old` attribute is a little odd because there should never be a case where
the user's first_unread_at column is less than the `Topic#updated_at`
column of an unread topic. The `unread_not_too_old` attribute is causing
a bug where topic states synced into `TopicTrackingState` do not appear
as unread because the attribute does not exsist on a normal `Topic`
object and hence never set.
2022-07-14 13:44:58 +08:00
Jarek Radosz abe9b41ddf DEV: Fix various typos (#17485) 2022-07-14 08:56:25 +08:00
Jarek Radosz 7b6cd44c32 DEV: Remove most of jQuery usage from tests (#17474) 2022-07-13 19:29:19 +02:00
Jarek Radosz e4f042f9de DEV: Drop the server var in setup-tests (#17458) 2022-07-13 14:00:19 +02:00
Andrei Prigorshnev 075d6b83f4 DEV: add emoji handlebars helper (#17449) 2022-07-13 14:54:47 +04:00
Jarek Radosz b530781d71 DEV: Remove no-op autocomplete disabler (#17460)
It was done before the autocomplete initializer, so had no effect.
2022-07-13 11:03:15 +02:00
Jarek Radosz 4751ddedfb DEV: Don't flush twice (#17462)
#save-water

`flushMap` is already called in `QUnit.testDone()`
2022-07-13 11:01:41 +02:00
Jarek Radosz 22b6d1b668 DEV: Remove old pretender paths (#17464) 2022-07-13 11:01:20 +02:00
Joffrey JAFFEUX 638bbf8f7e DEV: prevents prop override and simplifies test (#17457) 2022-07-13 00:20:48 +02:00
Joffrey JAFFEUX a939609d32 FIX: fixes few regressions in select-kit (#17453)
- following https://github.com/discourse/discourse/commit/c3fd91670e30bb70a2e0617be3faff41edaba1ba `paste` has been typoed into `pase`
- adds two tests for pasting in `multi-select` and `email-group-user-chooser`
- selectKitOptions would not be following the right overriding order
- `category-selector` was using `selectKitOptions` directly which shouldn't be the case as it's not using computed values
- apparently since a recent ember upgrade, paste event is not providing `originalEvent` anymore and `clipboardData` should be retrieved directly on the event
2022-07-12 21:38:17 +02:00
David Taylor be29197f62 DEV: Stop overriding an injected property in topic controller test (#17450)
Similar to e15c6302, overriding an auto-injected value like this triggers errors in more recent versions of Ember. Instead, we can use the registry to inject the value we need.

Co-authored-by: Peter Wagenet <peter.wagenet@gmail.com>
2022-07-12 17:29:11 +01:00
Jarek Radosz 8a0bddd98d DEV: Remove an unused js helpers file (#17439) 2022-07-12 12:23:21 +02:00
Jarek Radosz 8bc0ec3fac DEV: Simplify test setup (#17441) 2022-07-12 12:16:17 +02:00
Jarek Radosz 6c3e262a7c FIX: Set resolver options on the legacy resolver (#17440) 2022-07-12 11:42:19 +02:00
David Taylor 9e9e843136 DEV: Allow use of qunit notrycatch mode (#17433)
This is useful when debugging exceptions - when the box is checked, exceptions will be thrown and handled by the browser rather than being absorbed by qunit. This allows developers to intercept the exception and inspect the stack.
2022-07-11 21:40:38 +01:00
David Taylor dd62b88f78 DEV: Switch from htmlbars-inline-precompile to ember-cli-htmlbars (#17424)
See https://github.com/ember-cli/ember-cli-htmlbars#tagged-template-usage--migrating-from-htmlbars-inline-precompile
2022-07-11 15:25:40 +01:00
Jarek Radosz 189bebb2e4 DEV: Modernize component tests (#17368)
* Use QUnit `module` instead of `discourseModule`
* Use QUnit `test` instead of `componentTest`
* Use angle-bracket syntax
* Remove jQuery usage
* Improve assertions (and actually fix some of them)
2022-07-11 12:29:44 +02:00
David Taylor 0ffa93ccaf FIX: Ensure category-tag filter routes are functioning (#17420)
This regressed as part of the changes in fc36ac6c.

This commit also introduces a test which would have caught the issue.
2022-07-11 10:54:51 +01:00
Jarek Radosz a94dee31c4 DEV: Fix emoji-uploader tests (#17395) 2022-07-11 02:06:58 +02:00
Jarek Radosz 25dacc08ce DEV: Update @ember/test-helpers (#17247) 2022-07-11 01:54:25 +02:00
Jarek Radosz 0d6929d935 DEV: Avoid triggering 404 errors in tests (#17404) 2022-07-10 11:09:13 +02:00
Jarek Radosz 9365d4e86a DEV: Fix test leakage/flakes (#17407)
Fixes failures like:

```
Unhandled request in test environment: /forum/topics/timings (POST)
```
2022-07-10 10:52:42 +02:00
Jarek Radosz 0f01cc7df2 DEV: Reduce jQuery usage in acceptance tests (#17406) 2022-07-10 10:52:02 +02:00
Joe 06ae9229e8 UX: Skip length check on reply drafts (#17408)
We don't count quote characters as part of the reply length.

We don't save drafts if the reply length is less than the min_post_length site setting.

If you start a reply that only contains a bunch of quotes with the intent to continue later, you get no draft.

This PR fixes that.

Note that we still don't save drafts if the composer is completely empty or if you're composing a new topic. This only affects replies.

This PR only changes the behavior if the reply composer contains something regardless of whether that something is a quote or not and ignores the min_post_length site setting.
2022-07-10 13:54:40 +08:00
Jarek Radosz 20851f7240 FIX: Inputs using focusout regressed in #17345 (#17389) 2022-07-08 13:00:33 +02:00
Alan Guo Xiang Tan b622302351 Revert "UX: Hide user menu bookmark link when experimental sidebar is enabled (#17336)" (#17386)
This reverts commit 526e6e7a3b.

Link in dropdown user menu is kept in favor of link in experimental sidebar
2022-07-08 15:44:49 +08:00
Jarek Radosz 94c70a0909 DEV: Silence one more test (#17375)
…and improve silencing added in #17362
2022-07-08 09:15:09 +08:00
David Taylor d037796ff4 FIX: Allow connector template names to be camelCase (#17371)
The default Ember resolver implementation allows this for components. We need the same for connectors (which are essentially components behind-the-scenes)
2022-07-07 12:42:23 +01:00
Jarek Radosz 39c28cec87 DEV: Allow hooks.beforeEach usage w/ component tests (#17360) 2022-07-07 09:57:38 +02:00
Jarek Radosz c32ac45b29 DEV: Reduce test noise (#17362) 2022-07-07 13:28:40 +08:00
David Taylor fc36ac6cde DEV: Modernize Ember Resolver (#17353)
This switches us to use the modern ember resolver package, and re-implements a number of our custom resolution rules within it. The legacy resolver remains for now, and is used as a fallback if the modern resolver is unable to resolve a package. When this happens, a warning will be printed to the console.

Co-authored-by: Peter Wagenet <peter.wagenet@gmail.com>
2022-07-06 14:20:00 +01:00
Jarek Radosz c3fd91670e DEV: Update linting setup and fix issues (#17345)
Re-lands #16119 and #17298

* Update eslint-config-discourse
* Update linting workflow
* Prettier-ignore stuff
* Update template-lint config
* Auto-fix template issues
* Fix various template issues
  Mostly incorrect attributes and unused templates
* Prettier js files
* Fix template auto-fix regressions
* Small css tweak

Co-authored-by: Peter Wagenet <peter.wagenet@gmail.com>
2022-07-06 10:37:54 +02:00
Andrei Prigorshnev c59f1729a6 FEATURE: auto remove user status after predefined period (#17236) 2022-07-05 19:12:22 +04:00
Alan Guo Xiang Tan 526e6e7a3b UX: Hide user menu bookmark link when experimental sidebar is enabled (#17336)
Sidebar has a link to bookmarks by default
2022-07-05 15:50:25 +08:00
Alan Guo Xiang Tan 843907d1ac UX: Update categories/tags in sidebar only after saving. (#17333)
Adding the category/tag into sidebar before the user has saved was
giving the impression that the user's record has already been updated.
2022-07-05 13:32:12 +08:00
Alan Guo Xiang Tan 4d51f9cad6 UX: Enforce bullet category style in sidebar (#17334)
The other category styles do not fit into how we want the sidebar to
look.
2022-07-05 13:28:51 +08:00
Kris 56c0d8cf92 UX: mobile experimental sidebar improvement (#17302)
First pass at the mobile experimental sidebar improvement.

Co-authored-by: Alan Guo Xiang Tan <gxtan1990@gmail.com>
2022-07-05 11:45:02 +08:00
Jarek Radosz a0a7b3f9c4 FIX: Correctly display /admin/emails errors (#17321)
Also removed unused codepath in `admin-badges-show`.
2022-07-04 16:03:53 +02:00
Jarek Radosz 999865401c DEV: Remove most jQ from select-kit test helpers (#17305) 2022-07-04 11:37:11 +02:00
Jarek Radosz 7b9e6bb303 DEV: Fix a flaky submodule/auth test (#17313) 2022-07-04 02:25:35 +02:00
Kris 4df683f88d UX: Remove experimental sidebar notification text (#17290) 2022-06-30 14:15:39 -04:00
Jarek Radosz 7343cb9f73 DEV: Convert {{cook-text}} to angle-brackets (#17287) 2022-06-30 14:03:27 +02:00