Commit graph

1166 commits

Author SHA1 Message Date
Josh Johnson ebbea8c3b0
Update README.md 2020-07-28 11:01:32 +01:00
Alex Chan cbaf43232c Fix a typo in the README: s/seperates/separates (#807) 2020-01-14 08:50:42 +00:00
Josh Johnson 825efc6fd0
Update release drafter to latest (#800) 2019-12-23 18:33:31 +00:00
Josh Johnson 68313da412
Convert to typescript (#795)
* Typescript config setup

* Add type annotations to components

* Further type additions

* And more...

* Add types to actions

* Add types to templates

* Further type checks

* Further type additons

* Install fuse latest

* Housekeeping

* Remove old type definitions

* Fix remaning type issues

* Fix some failing tests

* Remove types workflow

* Fix failing unit tests

* Resolve back space event regression

* Convert cypress files to .ts

* Fix eslint issues

* Remove cachebusting urls

* Resolve delete button bug

* Resolve regression bugs

* Fix lint script

* Fix lint workflow

* Pass args instead of object to keyboard handlers

* Flatten misc reducer

* Resolve keyboad action test failures

* Use Pick instead of Partial

* Use interfaces in action tests

* Update firefox image

* Incorporate #791

* Incorporate #788
2019-12-23 18:22:54 +00:00
dGrammatiko 3ed027229d Adds a variable for the z-index (#794) 2019-12-15 19:26:56 +00:00
Josh Johnson 44b4326a52
Resolve #780 (#785)
* Attempt #1

* Remove console.log

* Update puppeteer screenshot
2019-12-03 12:56:47 +00:00
Josh Johnson b3b7b3f14f Update README 2019-11-28 18:52:45 +00:00
Josh Johnson 3d099d85fc Update README 2019-11-28 18:06:33 +00:00
Josh Johnson 9676cff128
Resolve #622 and #781 (#784)
* Resolve duplicate initialise in demo

* Update README with versioned cdn links

* Update log

* Re-add env var
2019-11-27 11:46:40 +00:00
Josh Johnson 47aba515fb
Add fetch to polyfill bundle on the demo page (#783) 2019-11-26 16:59:16 +00:00
Josh Johnson 62e849d1b4
Resolve 774 (#777)
* Include customProperties in removeItem

* Add tests

* Housekeeping

* Update mac vm label

* Add .nvmrc
2019-11-24 17:32:02 +00:00
Josh Johnson d116f95c54 Update issue templates 2019-11-23 22:41:44 +00:00
GitHub Action 6215ca5e59 Update build files 🏗 2019-11-22 19:13:46 +00:00
Josh Johnson 67266a3aae
Resolve #762 (#767)
* Update value with character value

* Remove .only

* Lowercase character before updating value

* Add cypress tests covering change

* Update logic to affect both select inputs

* Update cypress

* Emphasise remove button focus

* Text change

* Revert "Update cypress"

This reverts commit 81e406de85.

* Remove false positive tests
2019-11-22 19:09:45 +00:00
GitHub Action 85f0b5f9be Update build files 🏗 2019-11-19 18:38:17 +00:00
Josh Johnson 592c326442
Update polyfill list (#765)
* Update polyfill list

* Update eslintrc.json

* Add keydown methods to types

* Resolve type issue
2019-11-19 18:34:08 +00:00
GitHub Action 214b6e80df Update build files 🏗 2019-11-18 09:55:07 +00:00
Josh Johnson 9f2661023d
Next release (#763)
* 🔖 Version 9.0.1

* Remove post version check
2019-11-18 09:51:24 +00:00
GitHub Action d2516e7de3 Update build files 🏗 2019-11-17 12:38:39 +00:00
Kazuki Nishikawa 0e8e42e015 Fix #573 (#574)
* add specs

* fix to restore preset choices after destroy

* avoid to modify `this.config.choices` directly

* Update cypress/integration/select-one.spec.js

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* Update public/test/select-one.html

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* Update public/test/select-one.html

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* Update public/test/select-one.html

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* Update public/test/select-one.html

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* fix specs

* restoring passed element initial options

 - Save `passedElement.options` values as `this._presetOptions`
 - Restore saved `this._presetOptions` to `passedElement.options` on `destroy`
 - It avoids restoring options in `this.config.choices`

* Update cypress/integration/select-one.spec.js

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* Update cypress/integration/select-one.spec.js

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* Update public/test/select-one.html

Co-Authored-By: Josh Johnson <josh@joshuajohnson.co.uk>

* move preset options assignment statement
2019-11-17 12:34:34 +00:00
Josh Johnson e7b4afd472
Fix releases (#761)
* Testing

* Re add "needs" flags

* Further testing

* Add skip husky install flag

* Revert "on" flag
2019-11-15 19:34:20 +00:00
GitHub Action 952b3fc146 Update build files 🏗 2019-11-14 23:06:48 +00:00
Josh Johnson 760f39dbf3 Remove "needs" from deployment.yaml 2019-11-14 23:03:03 +00:00
Josh Johnson 573c840de4 Fix deployment.yml 2019-11-14 23:00:06 +00:00
Josh Johnson 44da784f29
🔖 Version 9.0.0 (#758) 2019-11-14 22:51:50 +00:00
agamemnus 6be462c80b Typo. (#759) 2019-11-14 20:34:05 +00:00
Josh Johnson e67b8a3e4c
Commit and push built files to master (#756)
* Commit and push built files to master

* Testing...

* Add  name

* Add fallback

* Revert back to master branch
2019-11-14 09:47:20 +00:00
Josh Johnson 933ea6093f
Remove redundant check (#755)
* Remove redundant check

* Add integration tests covering fix

* Add missing test
2019-11-13 15:40:47 +00:00
Josh Johnson 84b952e115
Resolve bug #637 (#754)
* Add is-selected class when item is selected

* Remove console.log

* Update README
2019-11-13 14:49:23 +00:00
Chris DeLuca f745be449d Always hide remove button if no value is selected (#744)
In some cases, the remove item X button is not hidden when there is no
selection made from the dropdown. This is not as usable, since there's
no item to clear, hence an effective noop.

The condition I saw seeing this issue arise is in single selects with
a placeholder value, a selection has been made, and then cleared: the
button HTML remains.

To fix, add some styles to hide the button if the select doesn't have a
value selected, in this case keying off of it's parents `data-value`
property.

fixes #684
2019-11-12 12:29:34 +00:00
Konstantin Vyatkin 8775bacdd9 improve whole-page performance by scoping events handlers (#740)
* scope onMouseDown event capture

* supercedes #710

* make isIE11 a const

* scope keydown

* scope mouseover

* fix removeEventListener for keyup
2019-11-12 09:47:41 +00:00
Oleg Dmitrochenko fb2310cb56 Indent fixed in "choices__list--dropdown" (#750)
Indent fixed in "choices__list--dropdown". Added "box-sizing: border-box;".
2019-11-12 09:03:04 +00:00
Konstantin Vyatkin 68322d9528 Upgrade Cypress to 3.6 and use cache in Github Actions (#748)
* try to cache cypress cache

* try to fix

* try cache hit

* Upgrade Cypress to 3.6

* remove uneeded prefix
2019-11-08 13:24:57 +00:00
Josh Johnson d04031e02f
Fix id types (#743)
* Set ids to be numbers

* Split out _setLoading into start/stop methods

* Build
2019-11-08 09:19:18 +00:00
Konstantin Vyatkin 7dcc155b8f remove safari test, update snapshots for new macOS, use dependency caching (#745)
* remove safari test

* add node modules caching

* update macos snapshots

* try to fix caching

* try like this

* cache .npm

* adjust cache keys
2019-11-08 07:48:29 +00:00
Josh Johnson b5b593a62f
Resolve bug 473 (#739)
* Fix #473

* Add tests

* Tweak cypress tests

* Build
2019-11-07 08:50:19 +00:00
Konstantin Vyatkin 81c44ba8f2 Enable test on Safari (#737)
* Enable test on Safari

* fix platform name

* update base Safari snapshot
2019-11-04 13:17:45 +00:00
Josh Johnson f30b976424
Resolve bug 533 (#736)
* Add placeholder options to demo page

* Use constant types in components

* Refactor adding predefined groups/items/choices

* Add 'highlighted' flag to Item type

* Fix dispatch param type

* Build

* Add jsdoc comments to utils

* Remove unused file

* Add default values to js doc comments

* Use Redux Action type

* Housekeeping

* Increase utils coverage

* Apply suggestions from code review

* Add _getTemplate unit tests

* Resolve #533

* Add tests
2019-11-03 18:12:47 +00:00
Josh Johnson ab22347d7b
Code refactoring (#735)
* Add placeholder options to demo page

* Use constant types in components

* Refactor adding predefined groups/items/choices

* Add 'highlighted' flag to Item type

* Fix dispatch param type

* Build

* Add jsdoc comments to utils

* Remove unused file

* Add default values to js doc comments

* Use Redux Action type

* Housekeeping

* Increase utils coverage

* Apply suggestions from code review

* Add _getTemplate unit tests
2019-11-03 17:45:16 +00:00
Josh Johnson e6882f3e4b
Add missing type definitions + rename sortFn (#734)
* Add wrapped element getters + fix some types

* Remove comment

* Add missing config options to types

* Add types to constants

* Rename sortFn to sorter

* Update PR template

* Add refactor to PR template

* Add passed element types to constants

* Add js doc comments to actions

* Add "returns" to js doc comments

* Add missing choice prop to type

* Add types to store.js

* Add jsdoc comments to components

* Ignore strict null checks

* Move loading action into misc.js

* Further type def additions

* Rename itemCompare to valueCompare

* Update badges

* Rename scrollToChoice to scrollToChildElement
2019-11-03 13:18:16 +00:00
Josh Johnson 452c8fa666 Fix release drafter 2019-11-02 14:03:27 +00:00
Josh Johnson a0fe05f926
Fix #727 (#731)
* Housekeeping

* Resolve placeholder bug + hide from choice list

* Restructure test folder

* Update cypress test to assert one placeholder

* Fix breaking e2e test

* Remove ability to pass placeholder via config for select boxes

* Add further e2e tests covering placeholders

* Add unit tests for _generatePlaceholderValue

* Display placeholder choice for select one

* Add further e2e test to assert on placeholder ordering

* Add labels to exclude from draft releases

* Add failure case to e2e test workflow

* Resolve broken e2e test

* Update puppeteer snapshot baseline
2019-11-02 13:49:33 +00:00
Konstantin Vyatkin 939a73b762 fix setChoices flow (#730)
* fix setChoices flow

* ignore Promise as it gate checked

* re-run cypress
2019-11-02 12:58:18 +00:00
Konstantin Vyatkin 68f6b8e398 [bug] Override Prettier settings for Demo page (#733)
* add prettier override

* run prettier
2019-11-02 11:19:09 +00:00
Konstantin Vyatkin dddba5b35b [TEST] Automatic screenshots comparing and error checking in IE11, Firefox and Chrome (#715)
* taking screenshots

* let's try

* save artifacts

* better exceptiosn

* try to install geskodriver

* fix edge name

* add check for safari

* check os

* try this

* again

* fix syntax

* try this

* try firefox on windows

* and again

* handle error

* and again

* try older macos

* add firefox screenshot

* switch back env

* switch back env

* add IE screenshot

* try sudo for safari

* try not install nuget

* try more

* more

* try this

* install firefox

* add chrome

* increase threshold

* add firefox-darwin

* push

* fixing

* let's go

* increase threeshold

* again

* try safari tp

* tap cask versions

* fix conditions

* try like this

* last run

* increase threshold

* reenable macos firefox

* last try for safari

* rename screenshots to snapshots

* check console

* console workarounds

* fix safari misspleings

* logging is not supported by everyone

* maximize and set rect

* errors only for Chrome

* remove safari for now

* try to decrease threshold

* cleanup

* increase threeshold

* sleep more and increase threeshold

* add pupeeter

* handle errors

* build

* add prettier end of line

* add gitattributes

* add png to binary

* more attributest

* limit run

* run on chages to snapshots

* hey!

* make artifacts named as snapshots

* just for fun: we don't need express here

* update pupeeter snapshot

* no audit

* don't wait for quit?

* try more IE capabilities

* add wait timeout

* use server.js
2019-11-02 11:18:19 +00:00
Konstantin Vyatkin 5afe8b5a7f speed up getAdjacentEl (#726)
* use element accessors

* don't change params
2019-10-31 17:49:27 +00:00
Josh Johnson 9e11db8181
Add documentation label + headings (#729) 2019-10-31 17:40:02 +00:00
Josh Johnson 00e53f76ee
Update GitHub action workflows (#728)
* Deploy on published release

* Run build and test on merge to master

* Update release drafter template

* Update title of releases

* Testing cypress fix

* Pass group to --group flag
2019-10-31 17:28:12 +00:00
Konstantin Vyatkin 5051bf1b10 Fix lint (#723)
* adjust eslint config

* run prettier

* limit cypress run

* add all cypress files
2019-10-31 12:11:46 +00:00
Konstantin Vyatkin 034191c78a use CSS queries (#718)
* use matchMedia

* use last-of-type

* better type check

* simplify distanceFromTopWindow

* use visibility

* update JSDoc
2019-10-30 17:28:15 +00:00