Commit Graph

412 Commits

Author SHA1 Message Date
52672b9eab DEV: apply new coding standards (#10592) 2020-09-04 13:42:47 +02:00
2f11457263 REFACTOR: Use Array.isArray instead of _.isArray 2020-09-03 10:03:33 -04:00
f8062300da DEV: removes jquery usage from highlight-syntax (#10564) 2020-09-01 09:50:49 +02:00
1959745c2c FIX: Current title wasn't visible when assigning badge title 2020-08-24 21:39:44 +02:00
226be994da REFACTOR: rewrite the emoji-picker (#10464)
The emoji-picker is a specific piece of code as it has very strong performance requirements which are almost not found anywhere else in the app, as a result it was using various hacks to make it work decently even on old browsers.

Following our drop of Internet Explorer, and various new features in Ember and recent browsers we can now take advantage of this to reduce the amount of code needed, this rewrite most importantly does the following:
- use loading="lazy" preventing the full list of emojis to be loaded on opening
- uses InterserctionObserver to find the active section
- limits the use of native event listentes only for hover/click emojis (for performance reason we track click on the whole emoji area and delegate events), everything else is using ember events
- uses popper to position the emoji picker
- no jquery code
2020-08-24 14:20:51 +02:00
19d057d261 REFACTOR: We can hardcode #ember-testing here to avoid a global 2020-08-17 15:56:17 -04:00
5b2c306bb8 REFACTOR: Remove Discourse.HighlightJSPath from globals
Instead we use the session, and pass that along where necessary.
2020-08-17 15:45:44 -04:00
a78b256e8b FIX: Raw jQuery usage in tests 2020-07-20 15:13:49 -04:00
71b0400501 FIX: deleted is a computed property of Topic 2020-07-20 14:43:37 -04:00
a0c6f1b2b4 FIX: category-drop tests were broken and overwriting CPs 2020-07-20 14:39:42 -04:00
2a4a2a2ab7 FIX: More 404 image requests in test
A few tests were removed that were testing a subforum for the logo,
which I don't think gain us much anymore. We use `getURL` everywhere and
needn't test it so much. Plus, over time it's always good to remove
a few tests here and there :)
2020-07-17 14:58:32 -04:00
f68ea29236 FIX: Don't load images that don't exist in test
This makes 404 requests and fills up the logs with junk
2020-07-17 14:33:38 -04:00
e1bc709dc3 FIX: Fewer 404s in JS tests 2020-07-16 16:23:54 -04:00
4656812e00 FIX: More errors being logged in tests 2020-07-16 16:19:20 -04:00
16766a5d62 FIX: topic.details is not a plain JS Object 2020-07-15 13:10:05 -04:00
7d300006a1 Revert "PERF: Move highlightjs to a background worker, and add result cache (#10191)"
This caused a CORS error when used with S3 asset storage

This reverts commit d09f283e911c0847ca23372aceefc344526690d2.
2020-07-15 13:52:35 +01:00
d09f283e91 PERF: Move highlightjs to a background worker, and add result cache (#10191)
Syntax highlighting is a CPU-intensive process which we run a lot while rendering posts and while using the composer preview. Moving it to a background worker releases the main thread to the browser, which makes the UX much smoother.
2020-07-15 12:48:07 +01:00
706f1a6294 DEV: Remove text-ellipsis component and use CSS line-clamp instead (#10196) 2020-07-09 20:51:43 -04:00
32ee9fae40 FIX: Short URL resolution in cook-text (#10200)
Regressed in 3b51e05de2aeb0cff547befcfde442f5ceeb329d. Thanks to @romanrizzi for reporting!
2020-07-09 14:39:13 +02:00
66257ca8b6 FEATURE: Add "smallest" option to user text size preferences 2020-07-07 13:08:19 -04:00
4a90464619 FIX: Do not highlight large code blocks (#10125) 2020-07-07 18:51:19 +03:00
dd85d44dda FIX: Show tag count for existing tags (#9892)
* FIX: Show tag count for existing tags

* Add test
2020-06-11 14:13:48 +03:00
2d880b42a3 UX: Add simple-list setting type (#9970) 2020-06-04 10:44:54 -04:00
ae52f5eaf5 DEV: removes brittle test (#9977) 2020-06-04 09:21:21 +02:00
40c4a8e3fc DEV: skips/tweaks brittle tests (#9952) 2020-06-01 11:09:34 +02:00
7635c18a14 DEV: ensures highlightjs is correctly tested (#9923) 2020-05-29 13:05:44 +02:00
0854785175 FIX: allows to define label/title properties for display instead of name
Usage:

```
const content = [{foo: "FOO", bar: "BAR", value: 1, name: "foo-bar"}];

{{combo-box
  content=content
  value=value
  labelProperty="foo"
  titleProperty="bar"
}}
```
2020-05-28 08:30:31 +02:00
e81a4048e3 REFACTOR: s/focusAfterOnchange/focusAfterOnChange (#9801) 2020-05-16 11:20:37 +02:00
b07f1bfd93 FIX: displays a title on sk header if no selected name (#9794)
none has to be defined.
2020-05-15 17:36:00 +02:00
aa2d040526 DEV: Update ESLint to remove I18n global
Also fixes missed imports in core.
2020-05-14 10:18:12 -04:00
42e5a5bb39 DEV: do not append/prepend if callback returns nothing (#9778) 2020-05-14 14:38:03 +02:00
286b4e535e DEV: allows buttons to define aria-label (#9747) 2020-05-11 22:09:44 +02:00
0deb05740f Revert "DEV: allows to define an ariaLabel on d-button (#9716)"
This reverts commit 7a95dd48415c2152f1c791b2dfcd04f6910c1ca7.
2020-05-11 19:19:13 +02:00
7a95dd4841 DEV: allows to define an ariaLabel on d-button (#9716)
* DEV: allows to define an ariaLabel on d-button

This topic also adds this function to topic-footer-buttons, simplifies the whole logic of titile/label/arialabel in d-button and adds tests for these properties.

* typo
2020-05-11 18:42:51 +02:00
9bf11a8c68 DEV: allows select-kit to prevent autofocus of header after onChange (#9718) 2020-05-09 10:26:23 +02:00
c99ecba68f DEV: improves sk api (#9653)
- reduces the API to 3 actions for now: appendContent/prependContent/onChange
- well tested
- removes all previous APIS which were only half supported or too dangerous as they could collide with other plugins or core behaviors
- this plugins also puts every sk test helpers in one file
2020-05-06 17:16:20 +02:00
3bbd8b1258 UX: rework date time input range (#9524) 2020-04-22 22:17:53 +02:00
fe579c918f DEV: fix failing test relating to sk click propagation
* followup to 62459c84
2020-04-21 12:01:16 -04:00
d984848aa9 FIX: ensures toolbar is updated on composer action change (#9402) 2020-04-10 22:39:19 +02:00
058506bb77 DEV: prevents toolbar callbacks to leak between tests (#9403) 2020-04-10 16:47:27 +02:00
befaf39aca DEV: Refactor and test plugin addKeyboardShortcut (#9381)
Refactor plugin-api `addKeyboardShortcut` to point to `KeyboardShortcuts`.
* Do not add shortcuts to the default object directly.
* Create an addShortcut function in keyboard-shortcuts to add shortcuts safely and call to bindKey to be able to use opts.
* Refactor controllers/bookmark.js to use new addShortcut func and emove unnecessary addBindings.
* No longer export keyboard shortcut bindings, rename to DEFAULT_BINDINGS and remove export, these do not need to be accessed by anything else.
2020-04-09 10:30:26 +10:00
4f42bb1fd2 DEV: Support for onChange on {{text-field}} (#9362)
* DEV: Support for `onChange` on `{{text-field}}`

This will automatically be debounced and only fired when the value
changes.

There is also `onChangeImmediate` which is not debounced in case you
need that, but in almost all cases when observing text in an element you
should debounce.

* Add cancel for timer
2020-04-07 11:41:21 -04:00
8f4b54fedd fix d-button tests (#9316) 2020-03-30 23:42:21 +02:00
5b6cdd6fb5 DEV: adds a loading property to d-button (#9072)
Usage:

```
{{d-button icon="times" label="foo.bar" isLoading=true}}
```

Note that  a button loading without an icon will shrink text size to prevent button to jump in size.

A button while loading is disabled.
2020-03-30 23:17:00 +02:00
60df2ade8d Retry: Rename all test files from JS -> ES6 2020-03-26 12:25:46 -04:00
4fa580fbd1 Revert "Rename all test files from JS -> ES6"
This reverts commit 2abe85b8344de1102c1589a9ac9421a8b296f2b5.
2020-03-25 16:13:43 -04:00
2abe85b834 Rename all test files from JS -> ES6 2020-03-25 15:03:21 -04:00
683cb28099 DEV: enforces ember-template-lint: no-triple-curlies (#9165)
This pr replaces `{{{ }}}` usage by a {{html-safe}} helper. While it doesn't solve the underlying issue, it gives us a path forward without risking breaking too much existing behavior.

Also introduces an htmlSafe computed macro:

```
import { htmlSafe } from "discourse/lib/computed";

htmlDescription: htmlSafe("description")
```

Overtime {{html-safe}} usage should be removed and moved to components properties or specialized components/helpers.
2020-03-11 09:23:10 +01:00
f795c1b8e8 Revert "DEV: enforces ember-template-lint: no-triple-curlies (#9150)"
This reverts commit d436b600fba4cea846a5e96c235c507441965e05.

Triple curlies are still necessary for some raw templates.
2020-03-10 15:00:12 -03:00
d436b600fb DEV: enforces ember-template-lint: no-triple-curlies (#9150)
This pr replaces `{{{ }}}` usage by a {{html-safe}} helper. While it doesn't solve the underlying issue, it gives us a path forward without risking breaking too much existing behavior.

Also introduces an htmlSafe computed macro:

```
import { htmlSafe } from "discourse/lib/computed";

htmlDescription: htmlSafe("description")
```

Overtime {{html-safe}} usage should be removed and moved to components properties or specialized components/helpers.
2020-03-10 16:46:57 +01:00