Commit graph

114 commits

Author SHA1 Message Date
Matt Triff 303d12504c Upgrade to Fuse v6 2021-12-31 18:11:45 -05:00
Mason Rogers 9c9aded8b2 chore: Build 2021-12-27 14:50:45 +00:00
Matt Triff a8862e78be Add typings and declaration maps 2021-12-26 16:38:09 -05:00
Matt Triff 66c6864267 Update allowHTML wording, set remote examples to allowHTML false 2021-12-26 09:36:12 -05:00
viction 545a442f5c fix: Custom template displaying/unit tests 2021-12-25 20:29:54 +00:00
viction c989be1491 test: select-multiple coverage 2021-12-25 20:29:31 +00:00
viction 3633c4ac0f test: select-one coverage 2021-12-25 20:29:15 +00:00
viction 859f6262eb test: Coverage for allowHTML 2021-12-24 17:33:32 +00:00
Matt Triff 9835eb756a Implement stylelint 2021-12-19 17:43:03 -05:00
Matt Triff 70397fd89a Switch to dart-sass, fix npm audit issues 2021-12-19 16:58:00 -05:00
Matt Triff 3d921621b7 Update dependencies, fix linting issues, split interfaces and default objects to resolve dependency cycles 2021-12-17 16:26:52 -05: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
Josh Johnson 44b4326a52
Resolve #780 (#785)
* Attempt #1

* Remove console.log

* Update puppeteer screenshot
2019-12-03 12:56:47 +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
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
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
GitHub Action 952b3fc146 Update build files 🏗 2019-11-14 23:06:48 +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
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
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
Josh Johnson b5b593a62f
Resolve bug 473 (#739)
* Fix #473

* Add tests

* Tweak cypress tests

* Build
2019-11-07 08:50:19 +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 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
Josh Johnson 0e44a916e3
Fix constructor (#693)
* breaking test

* Remove ablity to pass multiple elements + tests

* Update readme

* Update README.md

* 🔖 Version 8.0.0

* Remove type definition hack

* Update coverage command

* Add some missing list tests

* Remove .only

* Update demo page to loop over elements

* Update constructor to set initialised flag if already active

* Make templates private

* Throw type error once if element is invalid

* Fix list children bug

* Re-add generic examples to index.html

* Housekeeping

* Use typeof instead of isType where applicable

* Remove isElement

* Add test for isIE11
2019-10-29 21:19:56 +00:00
Konstantin Vyatkin 172366d6fa [Tooling] Expand browsers target while keeping Polyfills under control (#709)
* expand browsers target

* add eslint-plugin-compat

* sort polyfils

* adjust readme

* add polyfills sync check action

* only build js

* trim

* add Element.prototype.closest

* add closest to demo links

* fix ignore
2019-10-29 18:19:19 +00:00
Konstantin Vyatkin e3cc6eaf1b [MAJOR] Remove .ajax and allow async function for .setChoices (#701)
* WIP: remove ajax

* copy #700

* remove ajax, add fetchChoices

* extend setChoices

* update README
2019-10-29 18:12:32 +00:00
Konstantin Vyatkin b080bcda7d rename addItemFilterFn (#699) 2019-10-29 17:29:31 +00:00
Josh Johnson 264a0cb486 Build 2019-10-28 19:53:24 +00:00
Konstantin Vyatkin bef6743c3b set window target for minified build (#685)
* set `globalObject` option

* commit builded assets

* set window target for minified build
2019-10-24 18:21:40 +01:00
Konstantin Vyatkin 4b9dd1efe3 Remove unused devDependencies (#673)
* remove `opn`

* remove `whatwg-fetch`

* remove `wrapper-webpack-plugin` in favor of built-in plugin
2019-10-23 08:45:49 +01:00
Konstantin Vyatkin 4acd6d6ca8 Improve GitHub actions and fix package.json SCSS script (#669)
* run actions on dependencies change

* add bundlesize token to master run

* fix bundlesize commit number

* add cypress env

* also run on - '.browserslistrc' changes

* update node-sass to allow install on Node 12 and trigger events

* use script

* add group

* skip husky on cypress

* upgrade csso dependency to make it trim sourcemaps

* fix run-p / run-s use

* remove commited assets on check

* commit assets

* remove cypress record

* restore recording

* reduce bundlesize limits

* try to specify key implicity

* remove Cypress recording

* restore build in bundlesize

* regenerate package-json.lock

* commit generated assets

* handle no-js case in lint

* fix lint error
2019-10-22 22:20:40 +01:00
Christophe Coevoet 8782564ddf Add support for standard-compliant placeholder option (#617)
* Add support for standard-compliant placeholder option

* Bump version and rebuild files
2019-10-22 11:25:36 +01:00
Josh Johnson f597bc9aff
Remove travis (#667)
* Remove travis.yml

* Remove versioning from index file

* Resolve linting issues

* Resolve further linting issues

* Uppercase NPM_TOKEN

* Run audit fix

* Update postversion command

* Update @babel/core to latest

* Update post version command

* Housekeeping

* Revert cypress upgrade

* Enforce cypress version

* Update package.lock

* Add cypress project id
2019-10-21 20:03:57 +01:00
Josh Johnson 4e8842d013 Build 2019-10-15 09:50:12 +01:00
Josh Johnson 98206e899d Build 2019-10-15 09:49:38 +01:00
Josh Johnson 659c3545fb Bump demo version 2019-10-15 09:47:00 +01:00
bradwade 5cf226f166 ADA accessibility label fixes (#642)
* Update incorrect 'label-for' in demo index.html file.

* Use placeholder value for search input aria label.

* Updated input template test.

* Adding the compiled, uglified JS.
2019-10-10 09:49:00 +01:00
Josh Johnson 67382a3f31 Use v3 of polyfill 2019-03-29 09:12:29 +00:00
Josh Johnson 63e5b51683 Update polyfill url 2019-03-29 09:08:42 +00:00
Darren Mackintosh b08a5412f9
Update text.html 2019-03-15 17:18:58 +00:00
Darren Mackintosh f32995367b
Update select-one.html 2019-03-15 17:18:23 +00:00
Darren Mackintosh 201b3c8ada
Updated version numbers 2019-03-15 17:17:43 +00:00