Commit Graph

24 Commits

Author SHA1 Message Date
Kris 5f042a2c8d Prevent move to new topic tag input from becoming too wide on click 2018-09-20 16:12:08 -04:00
Joffrey JAFFEUX 38668818a5
FIX: allows forcing unsafe string in select-kit (#6386)
forceEscape will be defaulted to true before next release.
2018-09-12 12:19:04 +02:00
Joffrey JAFFEUX 17087eff2a
FIX: Reset tags on category change (#6363) 2018-09-05 17:18:52 +02: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 03a7d532cf
DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
Joffrey JAFFEUX 1be76d066c
FIX: forces boolean when content is only "true" && "false" 2018-05-24 23:41:39 +02:00
Joffrey JAFFEUX f0fe16d824
FEATURE: implements minimum selection for select-kit 2018-04-05 16:45:19 +02: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 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 6bfc25d895
FEATURE: new {{mini-tag-chooser}} replaces {{tag-chooser}} in composer 2018-02-13 17:23:12 +01:00
Joffrey JAFFEUX 56834dbd98
FEATURE: select-kit api to modify collection header 2018-01-26 14:42:24 +01:00
Joffrey JAFFEUX 3ee7b18886
FIX: disable by default limitMatches 2018-01-11 09:54:39 +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 315b9d796d
select-kit refactoring
* better test helper
* more reliable tests
* more consistent use of data-value/data-name/title/aria-label everywhere: header and rows
2017-12-22 13:08:12 +01:00
Guo Xiang Tan 91e84433ff Take two at fixing JS tests. 2017-12-15 15:46:09 +08:00
Joffrey JAFFEUX 49b1df40fc
FIX: various issues when editing category permissions
This commit also adds multiple tests
2017-11-27 19:50:04 +01:00
Joffrey JAFFEUX acdfb3ed03
FIX: don’t convert an object using EachProxy to an array 2017-11-22 14:33:04 +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 9444c31918
FIX: makes typing indicator visible when possible 2017-11-21 18:07:10 +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