Commit Graph

19 Commits

Author SHA1 Message Date
Joffrey JAFFEUX f0fe16d824
FEATURE: implements minimum selection for select-kit 2018-04-05 16:45:19 +02:00
Joffrey JAFFEUX 3287ac77e0
FIX: reverts combobox placeholder and introduces noneLabel
noneLabels works almost like none but instead of actually adding a row in the list, it will only change the text displayed in the header, when there's no selection.
2018-03-29 13:42:00 +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 5e323139ae
FIX: makes sure we recompute shouldDisplayCreateRow after request 2018-03-03 11:42:44 +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 3a290ee625
FEATURE: replaces category/tag dropdowns by select-kit 2018-01-24 11:48:20 +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
Joffrey JAFFEUX dbadebacd1
FIX: allows select-kit to search by null value 2017-12-01 20:02:00 +01: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 96cdc4e66e
FIX: makes allowInitialValueMutation more restrictive 2017-11-24 13:15:02 +01:00
Joffrey JAFFEUX fe94e7c453
FIX: more resilient allowInitiatlValueMutation implementation 2017-11-23 14:39:26 +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 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 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