Commit Graph

43053 Commits

Author SHA1 Message Date
f859fd6bde FEATURE: allow plugins to extend Groups (#14216)
* add_permitted_group_param API for plugins
* add groups-interaction-custom-options outlet
* custom search can use custom group scope
2021-09-06 10:18:51 +10:00
9873a942e3 DEV: Add addComposerUploadPreProcessor to plugin-api (#14222)
This new interface will be used explicitly to add upload
preprocessors in the form of uppy plugins. These will be
run for each upload in the composer (dependent on the logic
of the plugin itself), before the UppyChecksum plugin is
finally run.

Since discourse-encrypt uses the existing addComposerUploadHandler
API for essentially preprocessing an upload and not uploading it
to a different place, it will be the first plugin to use this interface,
along with the register-media-optimization-upload-processor initializer
in core.

Related https://github.com/discourse/discourse-encrypt/pull/131.
2021-09-06 08:22:50 +10:00
cba8b39607 UX: limit select-kit tag chooser width (#14246) 2021-09-03 17:27:55 -04:00
30e1dbe353 FIX: Search was not being initialized properly.
`results` is now an array `[]` not an object, and `suggestionResults`
was not being initialized properly.
2021-09-03 16:47:53 -04:00
4b6307ecd9 FIX: We weren't properly resetting the mobile state between tests.
Additionally we had two tests with the same name which is not really
supported.
2021-09-03 15:58:24 -04:00
9b30fbdbbd DEV: Run tests in Firefox ESR (#14094) 2021-09-03 15:17:11 -03:00
d3be77a0d1 DEV: toggle sk on click (#14243) 2021-09-03 18:29:16 +02:00
d7873dd823 FIX: Don't attempt to migrate concurrently with other migrations (#14231) 2021-09-03 10:22:25 -05:00
142120753f DEV: prevents focus event bubbling (#14241) 2021-09-03 16:41:15 +02:00
36a81435cf DEV: simplify logic when selecting an undefined value (#14225) 2021-09-03 16:40:20 +02:00
ee7809e8a8 DEV: Add missing operationIds to the api docs (#14235)
From the openapi spec:

 https://spec.openapis.org/oas/latest.html#fixed-fields-7

each endpoint needs to have an `operationId`:

> Unique string used to identify the operation. The id MUST be unique
> among all operations described in the API. The operationId value is
> case-sensitive. Tools and libraries MAY use the operationId to uniquely
> identify an operation, therefore, it is RECOMMENDED to follow common
> programming naming conventions.

Running the linter on our openapi.json file with this command:

`npx @redocly/openapi-cli lint openapi.json`

produced the following warning on all of our endpoints:

> Operation object should contain `operationId` field

This commit resolves these warnings by adding an operationId field to
each endpoint.
2021-09-03 07:39:29 -06:00
85c31c73ba FIX: allow single string values on custom multiple select fields and not just arrays (#14236) 2021-09-03 09:26:57 -04:00
763f48abc7 FIX: increase chunk size to fetch title tag correctly (#14144) 2021-09-03 13:15:58 +05:30
b47a4d0207 PERF: Improve query perf when fetching unread for PM topic tracking state. (#14237)
This change helps the planner to use the
index_topics_on_timestamps_private index on topics.

Follow-up to f66007ec83b62169b5c41016eecd40c72f27028f
2021-09-03 15:12:13 +08:00
c401d6411b A11Y: Improve create account modal for screen readers (#14234)
Improves the create account modal for screen readers by doing the following:

* Making the `modal-alert` section into an `aria-role="alert"` region and making it show and hide using height instead of display:none so screen readers pick it up. Made a change so the field-related error messages are always shown beneath the field.
* Add `aria-invalid` and `aria-describedby` attributes to each field in the modal, so the screen reader will read out the error hint on error. This necessitated an Ember component extension to allow both the `aria-*` attributes to be bound and to render on `{{input}}`.
* Moved the social login buttons to the right in the HTML structure so they are not read out first.
* Added `aria-label` attributes to the login buttons so they can have different content for screen readers.
* In some cases for modals, the title that should be used for the `aria-labelledby` attribute is within the modal content and not the discourse-modal-title title. This introduces a new titleAriaElementId property to the d-modal component that is then used by the create-account modal to read out the title

------

This is the same as e0d2de73d89cdea13e9681b2daaa52074ee510a5 but
fixes the Ember-input-component-extension to use the public
Ember components TextField and TextArea instead of the private
TextSupport so the extension works in both normal Ember and
Ember CLI.
2021-09-03 13:04:24 +10:00
a0fbccf612 Revert "A11Y: Improve create account modal for screen readers (#14204)" (#14233)
This reverts commit e0d2de73d89cdea13e9681b2daaa52074ee510a5.
2021-09-03 09:42:56 +10:00
e0d2de73d8 A11Y: Improve create account modal for screen readers (#14204)
Improves the create account modal for screen readers by doing the following:

* Making the `modal-alert` section into an `aria-role="alert"` region and making it show and hide using height instead of display:none so screen readers pick it up. Made a change so the field-related error messages are always shown beneath the field.
* Add `aria-invalid` and `aria-describedby` attributes to each field in the modal, so the screen reader will read out the error hint on error. This necessitated an Ember component extension to allow both the `aria-*` attributes to be bound and to render on `{{input}}`.
* Moved the social login buttons to the right in the HTML structure so they are not read out first.
* Added `aria-label` attributes to the login buttons so they can have different content for screen readers.
* In some cases for modals, the title that should be used for the `aria-labelledby` attribute is within the modal content and not the discourse-modal-title title. This introduces a new titleAriaElementId property to the d-modal component that is then used by the create-account modal to read out the
2021-09-03 08:59:22 +10:00
75041dbbeb UX: Remove :empty on topic-statuses, clean up (#14227) 2021-09-02 15:35:35 -04:00
90a23c6fc8 FEATURE: Enable auto dark mode on new instances (#14208) 2021-09-02 14:55:38 -04:00
ea84c66fe0 DEV: This constructs a pluginId for modifyClass when dispatching events
It also helpfully adds the `ignoreMissing` option which was causing
logging issues on optional modifications before.
2021-09-02 14:50:31 -04:00
f0d2b0f2f0 Version bump to v2.8.0.beta6 (#14228)
v2.8.0.beta5 can cause segfaults due to the oj gem v3.13.3.
v2.8.0.beta6
2021-09-02 14:25:33 -04:00
d00bd626d8 DEV: re-enable ember-cli tests on CI (#14189) 2021-09-02 19:27:31 +02:00
8bb331e63f DEV: prevents uppy to act on destroyed object (#14224) 2021-09-02 18:38:36 +02:00
d2eef423c3 DEV: prevents broken tests due to focus bubbling (#14223) 2021-09-02 18:30:52 +02:00
074bce77f0 FIX: bug with navigation to the activity/topics and the activity/read pages (#14182) 2021-09-02 19:49:26 +04:00
09764291b1 FIX: In test mode, initializers were modifying classes over and over
This adds a new property, `pluginId` which you can pass to `modifyClass`
which prevent the class from being modified over and over again.

This also includes a fix for polls which was leaking state between tests
which this new functionality exposed.
2021-09-02 11:22:01 -04:00
fa66d1fa82 FIX: Make bindMobileUploadButton explicit for upload mixins (#14220)
When using ComposerUpload and/or ComposerUploadUppy, we were
always calling bindMobileUploadButton. However with more composer-like
interfaces being developed, we need this to be optional, as not
everywhere will have a separate mobile upload button to bind to.

Also makes it so the composer extending the ComposerUpload mixins is
responsible for explicitly unbinding the mobile upload button if
it needs to.
2021-09-02 17:31:15 +10:00
6e812f30ec DEV: Don't clear sidekiq default error handlers in development. (#14205)
Restores error logs in the development environment.
2021-09-02 15:09:55 +08:00
43f40c3cf5 Build(deps): Bump ffi from 1.15.3 to 1.15.4 (#14214)
Bumps [ffi](https://github.com/ffi/ffi) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/ffi/ffi/releases)
- [Changelog](https://github.com/ffi/ffi/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ffi/ffi/compare/v1.15.3...v1.15.4)

---
updated-dependencies:
- dependency-name: ffi
  dependency-type: indirect
  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>
2021-09-02 11:19:35 +08:00
43c05ef172 Build(deps): Bump aws-eventstream from 1.1.1 to 1.2.0 (#14215)
Bumps [aws-eventstream](https://github.com/aws/aws-sdk-ruby) from 1.1.1 to 1.2.0.
- [Release notes](https://github.com/aws/aws-sdk-ruby/releases)
- [Changelog](https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-eventstream/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-ruby/compare/1.1.1...1.2.0)

---
updated-dependencies:
- dependency-name: aws-eventstream
  dependency-type: indirect
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-02 11:19:19 +08:00
823354d177 DEV: Update Plugin Release Notes heading format (#14218) 2021-09-02 11:08:31 +08:00
6a5b44be53 DEV: Pin oj gem to 3.13.2. (#14219)
Follow-up to 0183d51070d33abc66c8681b43a5ce7571333b13
2021-09-02 11:01:54 +08:00
Sam
0183d51070 FIX: downgrade oj (#14217)
We appear to be having memory issues with oj leading to stuck proccesses

see: https://github.com/ohler55/oj/pull/695#issuecomment-911012672

not certain this will fix the issue, but worth a shot
2021-09-02 11:49:08 +10:00
ef0471d7ae DEV: Allow passing cook_method to TopicEmbed.import to override default (#14209)
DEV: Allow passing cook_method to TopicEmbed.import to override default

This will be used in the rss-polling plugin when we want to have
oneboxes on feed content, like youtube for example.
2021-09-01 15:46:39 -03:00
c6f1818b85 Version bump to v2.8.0.beta5 (#14210) v2.8.0.beta5 2021-09-01 13:29:36 -04:00
4f3a7c6f07 FIX: Visible "skip navigation" link on some themes (#14211) 2021-09-01 12:53:53 -04:00
0e62602fbf FIX: Use named params correctly with dir-span (#14203) 2021-09-01 07:58:26 -06:00
a2ca430068 DEV: prevents hooks to create leaks on widgets (#14207)
Before this, mounted widgets were not correctly unhooked and would keep a reference to a custom widget object.
2021-09-01 14:34:20 +02:00
55739fd3c9 DEV: cards were leaking mousedown event listener (#14206) 2021-09-01 13:01:37 +02:00
1a65f0bfbb Build(deps): Bump oj from 3.13.2 to 3.13.3 (#14202)
Bumps [oj](https://github.com/ohler55/oj) from 3.13.2 to 3.13.3.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.13.2...v3.13.3)

---
updated-dependencies:
- dependency-name: oj
  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>
2021-09-01 12:32:54 +08:00
eba317b74e DEV: Extract textarea text manipulation to mixin (#14201) 2021-08-31 14:36:26 -05:00
2bf81592ec UX: Comma separate public custom field lists (#14200) 2021-08-31 14:08:04 -04:00
8f06528bb2 A11Y: Add "skip to main content" link (#14190) 2021-08-31 13:43:30 -04:00
94085d0996 UX: Select-kit update alignment fixes (#14199) 2021-08-31 17:44:11 +02:00
59975d7433 Update translations (#14197) 2021-08-31 16:10:59 +02:00
499c69c827 DEV: prevents _lastKeyTimeout to leak after component lifecycle (#14194) 2021-08-31 15:22:25 +02:00
49b2bb294e FEATURE: option to update default notification level of existing users. (#14084)
Previously, a group's `default_notification_level` change will only affect the users added after it.

Co-authored-by: Alan Guo Xiang Tan <gxtan1990@gmail.com>
2021-08-31 16:11:26 +05:30
a2ccf0a9ff DEV: Use named parameters for dir-span helper (#14195)
* DEV: Use named parameters for dir-span helper

Follow up to: e50a5c0c73d8f983286b50ac45e10ce52924269e

In order to improve code clarity this change introduces named parameters
for the dir-span helper. This is specifically for the new `htmlSafe`
parameter which you can use instead of just passing in a boolean if the
strings you are passing in have already been escaped.

Before: `{{dir-span category.description false}}`
After: `{{dir-span category.description htmlSafe=true}}`

* Set default value for params arg
2021-08-31 13:51:08 +08:00
45a166b6ef FIX: Jump to reply button in post stream was not working (#14123) 2021-08-31 15:18:45 +10:00
c2f87e0a36 PERF: Make TopicViewSerializer#requested_group_name more efficient. (#14196)
* Avoid executing a query when the custom field doesn't exist
* Avoid generating an ActiveRecord when all we need is the name.
2021-08-31 12:05:32 +08:00