David Taylor
18ae8de9e5
FIX: Sanitize tags before creation
2018-10-19 15:43:31 +01:00
David Taylor
9bf522f227
FEATURE: Mixed case tagging ( #6454 )
...
- By default, behaviour is not changed: tags are made lowercase upon creation and edit.
- If force_lowercase_tags is disabled, then mixed case tags are allowed.
- Tags must remain case-insensitively unique. This is enforced by ActiveRecord and Postgres.
- A migration is added to provide a `UNIQUE` index on `lower(name)`. Migration includes a safety to correct any current tags that do not meet the criteria.
- A `where_name` scope is added to `models/tag.rb`, to allow easy case-insensitive lookups. This is used instead of `Tag.where(name: "blah")`.
- URLs remain lowercase. Mixed case URLs are functional, but have the lowercase equivalent as the canonical.
2018-10-05 10:23:52 +01:00
Joffrey JAFFEUX
17087eff2a
FIX: Reset tags on category change ( #6363 )
2018-09-05 17:18:52 +02:00
Joffrey JAFFEUX
bfcf8ed61b
FIX: prevents focus of input on mobile ( #6251 )
2018-08-09 14:23:09 +02:00
Joffrey JAFFEUX
523acfcea4
FIX: checks on parent visibility instead of filter itself ( #6250 )
2018-08-09 10:45:53 +02:00
Joffrey JAFFEUX
066010db7d
FEATURE: introduces list/compact_list components
2018-08-03 16:41:37 -04:00
Joffrey JAFFEUX
73d736c8c3
FIX: popup-menu instantly closing ( #6147 )
2018-07-23 14:19:36 -04:00
Joffrey JAFFEUX
78419f677d
FIX: multiple select-kit fixes on mobile
2018-07-23 12:19:40 -04:00
Joffrey JAFFEUX
5e521f8ce6
Revert "FIX: various select-kit corrections on mobile"
...
This reverts commit 78a2324c89
.
2018-07-20 15:28:12 -04:00
Joffrey JAFFEUX
78a2324c89
FIX: various select-kit corrections on mobile
2018-07-20 14:46:25 -04:00
Joffrey JAFFEUX
eb9b99e519
FIX: makes select-kit match searches with accents (filter and content)
2018-06-26 12:19:14 +02:00
Joffrey JAFFEUX
666386d4b7
FIX: allows more chars than a-z in select-kit
2018-06-25 12:52:20 +02:00
Joffrey JAFFEUX
03a7d532cf
DEV: introduces prettier for es6 files
2018-06-15 17:03:24 +02:00
Joffrey JAFFEUX
4b9c713581
FIX: avoids hidding mobile keyboard on each keystroke
2018-05-28 16:18:25 +02:00
Joffrey JAFFEUX
1be76d066c
FIX: forces boolean when content is only "true" && "false"
2018-05-24 23:41:39 +02:00
Joffrey JAFFEUX
11c47f57f9
FIX: prevents keyboard from appearing on android when expanding
2018-04-10 16:25:05 +02:00
Joffrey JAFFEUX
f0fe16d824
FEATURE: implements minimum selection for select-kit
2018-04-05 16:45:19 +02:00
Joffrey JAFFEUX
d54da517d9
FIX: more resilient focus filter or header
2018-04-02 22:50:20 +02:00
Joffrey JAFFEUX
a828da33aa
FIX: regression preventing addition of multiple tags in a group
2018-04-02 17:54:40 +02:00
Joffrey JAFFEUX
cbbeedf53b
FIX: fires onExpand/onCollapse when using arrows
2018-03-22 18:35:46 +01:00
Joffrey JAFFEUX
4f61f5db27
FIX: event is not present here
...
TODO: make event accessible everywhere and in a more consitent way.
2018-03-22 16:17:23 +01:00
Joffrey JAFFEUX
d48542796e
FIX: select-kit refactoring
...
- improve mini-tag-chooser keyboard behavior
- all multil select now respond to select all and left/right arrows
- improve events handling
- many minor tweaks
2018-03-22 11:29:55 +01:00
Joffrey JAFFEUX
057fa049e6
FIX: display keyboard on mobile when focusing mini-tag-chooser
2018-03-05 10:55:20 +01:00
Joffrey JAFFEUX
460c905dc6
FIX: improves positioning of select-kit body
2018-03-01 11:53:14 +01:00
Joffrey JAFFEUX
9b680fc45c
FIX: prevents create row to be displayed if term is in displayed list
2018-02-27 18:31:58 +01:00
Joffrey JAFFEUX
ac701696b3
FEATURE: replaces tag-chooser/tag-group-chooser with select-kit component
...
These component were also the last using select2. As a consequence select2 is removed from Discourse in this commit.
2018-02-26 11:42:57 +01:00
Joffrey JAFFEUX
d525a644d2
fix linting
2018-02-13 18:12:30 +01:00
Joffrey JAFFEUX
20123271d2
FIX: override backspaceFromFilter only if defined
2018-02-13 17:48:00 +01:00
Joffrey JAFFEUX
6bfc25d895
FEATURE: new {{mini-tag-chooser}} replaces {{tag-chooser}} in composer
2018-02-13 17:23:12 +01:00
Joffrey JAFFEUX
97ddaeeae8
FIX: use css instead of js to fix select-kit-collection max-height
2018-02-01 16:56:07 +01:00
Joffrey JAFFEUX
56834dbd98
FEATURE: select-kit api to modify collection header
2018-01-26 14:42:24 +01:00
Joffrey JAFFEUX
bd5a82cfe7
FIX: makes sure mousedown is stopped only on select-kit element
2018-01-19 15:19:07 +01:00
Joffrey JAFFEUX
3ec2024466
select-kit refactoring
...
* improve events naming/handling
* do not explicitly check for true/Fasle
* make sure header is re-computed on toggle
2018-01-11 09:39:51 +01:00
Joffrey JAFFEUX
c9921869f1
FIX: adds select-kit api to modify header computed content ( #5476 )
...
This api would allow to simply modify header text or icons, eg:
```
api.modifySelectKit("select-kit")
.modifyHeaderComputedContent((context, computedContent) => {
computedContent.title = "Not so evil";
return computedContent;
});
```
2018-01-09 10:52:32 +01:00
Joffrey JAFFEUX
8fd683ab19
select-kit DOM mixin refactoring
...
This commits improves code readability, performance and rendering precision.
2017-12-28 16:12:45 +01:00
Joffrey JAFFEUX
329343be06
FIX: various sizing issues on select-kit
2017-11-26 17:21:39 +01:00
Joffrey JAFFEUX
616a0dae4e
FIX: removes auto sizing and touchstart support for now
2017-11-23 15:34:52 +01:00
Joffrey JAFFEUX
d32c95b6e8
FIX: avoid touch on select-kit causing instant closing of it
2017-11-22 16:36:50 +01:00
Joffrey JAFFEUX
86b8f6b238
FIX: cast integer on truthy value and not only true
...
allows castInteger="true" to work
2017-11-22 13:40:22 +01:00
Joffrey JAFFEUX
a3b511f4f5
FIX: simplify keyboard handling
2017-11-22 11:29:30 +01:00
Joffrey JAFFEUX
b2b565c2fb
select-kit initial plugin api implementation (0.8.13)
...
```
api.modifySelectKit("identifier-of-the-select-targeted")
.modifyContent((context, existingContent) => {})
.appendContent(() => {})
.prependContent(() => {})
.onSelect((context, val) => {});
```
2017-11-22 10:34:12 +01:00
Joffrey JAFFEUX
761f4afd85
FIX: tab should select and focus next tabindex
2017-11-21 23:28:48 +01:00
Joffrey JAFFEUX
12beb77afa
FIX: make sure the element exists before calling off
...
This commit fixes an issue happening only when running tests under `/qunit` and not with `rake qunit:test`
2017-11-21 19:08:59 +01:00
Joffrey JAFFEUX
7669146897
FIX: force focus input only on expand
2017-11-21 18:23:49 +01:00
Joffrey JAFFEUX
9444c31918
FIX: makes typing indicator visible when possible
2017-11-21 18:07:10 +01:00
Joffrey JAFFEUX
3dfc0777df
FIX: close on click outside
2017-11-21 17:37:13 +01:00
Joffrey JAFFEUX
2087d011df
FIX: fix bugs with keyboard events
2017-11-21 16:59:03 +01:00
Joffrey JAFFEUX
39f3dbd945
Introduces select-kit
...
* renames `select-box-kit` into `select-kit`
* introduces `single-select` and `multi-select` as base components
* introduces {{search-advanced-category-chooser}} as a better component for selecting category in advanced search
* improves events handling in select-kit
* recreates color selection inputs using {{multi-select}} and a custom {{selected-color}} component
* replaces category-selector by a component using select-kit and based on multi-select
* improves positioning of wrapper
* removes the need for offscreen, and instead use `select-kit-header` as a base focus point for all select-kit based components
* introduces a formal plugin api for select-kit based components
* introduces a formal pattern for loading and updating select-kit based components:
```
computeValue()
computeContent()
mutateValue()
```
2017-11-21 11:53:09 +01:00