├── .gitattributes ├── .gitignore ├── .npmignore ├── .travis.yml ├── .vscode └── settings.json ├── CHANGELOG.md ├── LICENSE.txt ├── README.md ├── bundle ├── easydropdown.js └── easydropdown.js.map ├── config ├── mocha │ └── mocha.opts ├── nyc │ └── .nycrc.json ├── stylelint │ └── .stylelintrc.json ├── tslint │ └── tslint.json └── webpack │ ├── Constants │ └── Environment.ts │ ├── Rules │ └── typescriptRule.ts │ └── config.ts ├── demos ├── 01-basic-list.html ├── 02-basic-list-with-placeholder.html ├── 03-groups.html ├── 04-mixed-groups.html ├── 05-disabled-select.html ├── 06-disabled-group.html ├── 07-disabled-options.html ├── 08-preselected-value.html ├── 09-form-reset.html ├── 10-form-validation.html ├── 11-show-placeholder-when-open.html ├── 12-collision-detection.html ├── 13-live-updates.html ├── 14-loop.html ├── 15-callbacks.html ├── 16-programmatic-validation.html ├── easydropdown.js ├── easydropdown.js.map ├── index.html ├── scripts │ ├── optionAdder.js │ ├── submitHandler.js │ └── themeSwitcher.js ├── style.css └── themes │ ├── README.md │ ├── beanstalk.css │ ├── flax.css │ ├── ivy.css │ └── theme.css.d.ts ├── docs └── easydropdown-anatomy.png ├── package.json ├── src ├── Components │ ├── arrow.ts │ ├── body.ts │ ├── group.ts │ ├── head.ts │ ├── option.ts │ ├── root.ts │ └── value.ts ├── Config │ ├── Behavior.ts │ ├── Callbacks.ts │ ├── ClassNames.ts │ ├── Config.ts │ └── Interfaces │ │ ├── IBehavior.ts │ │ ├── ICallback.ts │ │ ├── ICallbacks.ts │ │ ├── IClassNames.ts │ │ ├── IConfig.ts │ │ └── ISelectCallback.ts ├── Easydropdown │ ├── Easydropdown.test.ts │ ├── Easydropdown.ts │ ├── EasydropdownFacade.test.ts │ ├── EasydropdownFacade.ts │ ├── Interfaces │ │ └── IFactory.ts │ ├── Timers.ts │ ├── cache.ts │ ├── factory.test.ts │ └── factory.ts ├── Events │ ├── Constants │ │ ├── KeyCodes.ts │ │ └── Selectors.ts │ ├── EventBinding.ts │ ├── Handlers │ │ ├── handleBodyClick.test.ts │ │ ├── handleBodyClick.ts │ │ ├── handleBodyMousedown.test.ts │ │ ├── handleBodyMousedown.ts │ │ ├── handleBodyMouseover.test.ts │ │ ├── handleBodyMouseover.ts │ │ ├── handleHeadClick.test.ts │ │ ├── handleHeadClick.ts │ │ ├── handleItemsListScroll.test.ts │ │ ├── handleItemsListScroll.ts │ │ ├── handleSelectBlur.test.ts │ │ ├── handleSelectBlur.ts │ │ ├── handleSelectFocus.test.ts │ │ ├── handleSelectFocus.ts │ │ ├── handleSelectInvalid.test.ts │ │ ├── handleSelectInvalid.ts │ │ ├── handleSelectKeydown.test.ts │ │ ├── handleSelectKeydown.ts │ │ ├── handleSelectKeydownDown.test.ts │ │ ├── handleSelectKeydownDown.ts │ │ ├── handleSelectKeydownUp.test.ts │ │ ├── handleSelectKeydownUp.ts │ │ ├── handleSelectKeypress.test.ts │ │ ├── handleSelectKeypress.ts │ │ ├── handleWindowClick.test.ts │ │ ├── handleWindowClick.ts │ │ ├── handleWindowResize.test.ts │ │ └── handleWindowResize.ts │ ├── Interfaces │ │ ├── IEventBinding.ts │ │ ├── IEventHandler.ts │ │ └── IHandlerParams.ts │ ├── Mock │ │ ├── createMockEvent.ts │ │ ├── createMockGroups.ts │ │ └── createMockHandlerParams.ts │ ├── bindEvents.test.ts │ ├── bindEvents.ts │ └── getEventsList.ts ├── Renderer │ ├── Constants │ │ ├── AttributeChangeType.ts │ │ └── DomChangeType.ts │ ├── Dom.ts │ ├── Interfaces │ │ ├── IAttributeChange.ts │ │ └── IPatchCommand.ts │ ├── PatchCommand.ts │ ├── Renderer.test.ts │ ├── Renderer.ts │ ├── dom.test.ts │ ├── domDiff.test.ts │ ├── domDiff.ts │ ├── domPatch.test.ts │ └── domPatch.ts ├── Shared │ ├── Polyfills │ │ └── Element.matches.ts │ └── Util │ │ ├── Constants │ │ └── CollisionType.ts │ │ ├── Interfaces │ │ ├── ICollisionData.ts │ │ └── IDispatchOpen.ts │ │ ├── closestParent.test.ts │ │ ├── closestParent.ts │ │ ├── composeClassName.test.ts │ │ ├── composeClassName.ts │ │ ├── createDomElementFromHtml.ts │ │ ├── detectBodyCollision.test.ts │ │ ├── detectBodyCollision.ts │ │ ├── dispatchOpen.test.ts │ │ ├── dispatchOpen.ts │ │ ├── getIsMobilePlatform.test.ts │ │ ├── getIsMobilePlatform.ts │ │ ├── killSelectReaction.ts │ │ ├── pollForSelectChange.ts │ │ ├── pollForSelectMutation.test.ts │ │ ├── pollForSelectMutation.ts │ │ ├── throttle.test.ts │ │ └── throttle.ts ├── State │ ├── Constants │ │ ├── BodyStatus.ts │ │ └── ScrollStatus.ts │ ├── Group.ts │ ├── InjectedActions │ │ ├── closeOthers.test.ts │ │ ├── closeOthers.ts │ │ ├── scrollToView.test.ts │ │ └── scrollToView.ts │ ├── Interfaces │ │ ├── IActions.ts │ │ ├── IOnAction.ts │ │ └── IPropertyDescriptor.ts │ ├── Option.ts │ ├── State.test.ts │ ├── State.ts │ ├── StateManager.ts │ ├── StateMapper.test.ts │ ├── StateMapper.ts │ ├── resolveActions.test.ts │ └── resolveActions.ts ├── index.ts └── umd.ts └── tsconfig.json /.gitattributes: -------------------------------------------------------------------------------- 1 | *.ts linguist-language=JavaScript -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/.npmignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/.travis.yml -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/README.md -------------------------------------------------------------------------------- /bundle/easydropdown.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/bundle/easydropdown.js -------------------------------------------------------------------------------- /bundle/easydropdown.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/bundle/easydropdown.js.map -------------------------------------------------------------------------------- /config/mocha/mocha.opts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/mocha/mocha.opts -------------------------------------------------------------------------------- /config/nyc/.nycrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/nyc/.nycrc.json -------------------------------------------------------------------------------- /config/stylelint/.stylelintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/stylelint/.stylelintrc.json -------------------------------------------------------------------------------- /config/tslint/tslint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/tslint/tslint.json -------------------------------------------------------------------------------- /config/webpack/Constants/Environment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/webpack/Constants/Environment.ts -------------------------------------------------------------------------------- /config/webpack/Rules/typescriptRule.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/webpack/Rules/typescriptRule.ts -------------------------------------------------------------------------------- /config/webpack/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/config/webpack/config.ts -------------------------------------------------------------------------------- /demos/01-basic-list.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/01-basic-list.html -------------------------------------------------------------------------------- /demos/02-basic-list-with-placeholder.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/02-basic-list-with-placeholder.html -------------------------------------------------------------------------------- /demos/03-groups.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/03-groups.html -------------------------------------------------------------------------------- /demos/04-mixed-groups.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/04-mixed-groups.html -------------------------------------------------------------------------------- /demos/05-disabled-select.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/05-disabled-select.html -------------------------------------------------------------------------------- /demos/06-disabled-group.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/06-disabled-group.html -------------------------------------------------------------------------------- /demos/07-disabled-options.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/07-disabled-options.html -------------------------------------------------------------------------------- /demos/08-preselected-value.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/08-preselected-value.html -------------------------------------------------------------------------------- /demos/09-form-reset.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/09-form-reset.html -------------------------------------------------------------------------------- /demos/10-form-validation.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/10-form-validation.html -------------------------------------------------------------------------------- /demos/11-show-placeholder-when-open.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/11-show-placeholder-when-open.html -------------------------------------------------------------------------------- /demos/12-collision-detection.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/12-collision-detection.html -------------------------------------------------------------------------------- /demos/13-live-updates.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/13-live-updates.html -------------------------------------------------------------------------------- /demos/14-loop.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/14-loop.html -------------------------------------------------------------------------------- /demos/15-callbacks.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/15-callbacks.html -------------------------------------------------------------------------------- /demos/16-programmatic-validation.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/16-programmatic-validation.html -------------------------------------------------------------------------------- /demos/easydropdown.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/easydropdown.js -------------------------------------------------------------------------------- /demos/easydropdown.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/easydropdown.js.map -------------------------------------------------------------------------------- /demos/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/index.html -------------------------------------------------------------------------------- /demos/scripts/optionAdder.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/scripts/optionAdder.js -------------------------------------------------------------------------------- /demos/scripts/submitHandler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/scripts/submitHandler.js -------------------------------------------------------------------------------- /demos/scripts/themeSwitcher.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/scripts/themeSwitcher.js -------------------------------------------------------------------------------- /demos/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/style.css -------------------------------------------------------------------------------- /demos/themes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/themes/README.md -------------------------------------------------------------------------------- /demos/themes/beanstalk.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/themes/beanstalk.css -------------------------------------------------------------------------------- /demos/themes/flax.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/themes/flax.css -------------------------------------------------------------------------------- /demos/themes/ivy.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/themes/ivy.css -------------------------------------------------------------------------------- /demos/themes/theme.css.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/demos/themes/theme.css.d.ts -------------------------------------------------------------------------------- /docs/easydropdown-anatomy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/docs/easydropdown-anatomy.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/package.json -------------------------------------------------------------------------------- /src/Components/arrow.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/arrow.ts -------------------------------------------------------------------------------- /src/Components/body.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/body.ts -------------------------------------------------------------------------------- /src/Components/group.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/group.ts -------------------------------------------------------------------------------- /src/Components/head.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/head.ts -------------------------------------------------------------------------------- /src/Components/option.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/option.ts -------------------------------------------------------------------------------- /src/Components/root.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/root.ts -------------------------------------------------------------------------------- /src/Components/value.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Components/value.ts -------------------------------------------------------------------------------- /src/Config/Behavior.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Behavior.ts -------------------------------------------------------------------------------- /src/Config/Callbacks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Callbacks.ts -------------------------------------------------------------------------------- /src/Config/ClassNames.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/ClassNames.ts -------------------------------------------------------------------------------- /src/Config/Config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Config.ts -------------------------------------------------------------------------------- /src/Config/Interfaces/IBehavior.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Interfaces/IBehavior.ts -------------------------------------------------------------------------------- /src/Config/Interfaces/ICallback.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Interfaces/ICallback.ts -------------------------------------------------------------------------------- /src/Config/Interfaces/ICallbacks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Interfaces/ICallbacks.ts -------------------------------------------------------------------------------- /src/Config/Interfaces/IClassNames.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Interfaces/IClassNames.ts -------------------------------------------------------------------------------- /src/Config/Interfaces/IConfig.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Interfaces/IConfig.ts -------------------------------------------------------------------------------- /src/Config/Interfaces/ISelectCallback.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Config/Interfaces/ISelectCallback.ts -------------------------------------------------------------------------------- /src/Easydropdown/Easydropdown.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/Easydropdown.test.ts -------------------------------------------------------------------------------- /src/Easydropdown/Easydropdown.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/Easydropdown.ts -------------------------------------------------------------------------------- /src/Easydropdown/EasydropdownFacade.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/EasydropdownFacade.test.ts -------------------------------------------------------------------------------- /src/Easydropdown/EasydropdownFacade.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/EasydropdownFacade.ts -------------------------------------------------------------------------------- /src/Easydropdown/Interfaces/IFactory.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/Interfaces/IFactory.ts -------------------------------------------------------------------------------- /src/Easydropdown/Timers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/Timers.ts -------------------------------------------------------------------------------- /src/Easydropdown/cache.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/cache.ts -------------------------------------------------------------------------------- /src/Easydropdown/factory.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/factory.test.ts -------------------------------------------------------------------------------- /src/Easydropdown/factory.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Easydropdown/factory.ts -------------------------------------------------------------------------------- /src/Events/Constants/KeyCodes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Constants/KeyCodes.ts -------------------------------------------------------------------------------- /src/Events/Constants/Selectors.ts: -------------------------------------------------------------------------------- 1 | export const OPTION = '[data-ref~="option"]'; -------------------------------------------------------------------------------- /src/Events/EventBinding.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/EventBinding.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleBodyClick.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleBodyClick.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleBodyClick.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleBodyClick.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleBodyMousedown.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleBodyMousedown.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleBodyMousedown.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleBodyMousedown.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleBodyMouseover.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleBodyMouseover.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleBodyMouseover.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleBodyMouseover.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleHeadClick.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleHeadClick.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleHeadClick.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleHeadClick.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleItemsListScroll.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleItemsListScroll.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleItemsListScroll.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleItemsListScroll.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectBlur.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectBlur.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectBlur.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectBlur.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectFocus.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectFocus.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectFocus.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectFocus.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectInvalid.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectInvalid.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectInvalid.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectInvalid.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeydown.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeydown.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeydown.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeydown.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeydownDown.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeydownDown.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeydownDown.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeydownDown.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeydownUp.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeydownUp.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeydownUp.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeydownUp.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeypress.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeypress.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleSelectKeypress.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleSelectKeypress.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleWindowClick.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleWindowClick.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleWindowClick.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleWindowClick.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleWindowResize.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleWindowResize.test.ts -------------------------------------------------------------------------------- /src/Events/Handlers/handleWindowResize.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Handlers/handleWindowResize.ts -------------------------------------------------------------------------------- /src/Events/Interfaces/IEventBinding.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Interfaces/IEventBinding.ts -------------------------------------------------------------------------------- /src/Events/Interfaces/IEventHandler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Interfaces/IEventHandler.ts -------------------------------------------------------------------------------- /src/Events/Interfaces/IHandlerParams.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Interfaces/IHandlerParams.ts -------------------------------------------------------------------------------- /src/Events/Mock/createMockEvent.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Mock/createMockEvent.ts -------------------------------------------------------------------------------- /src/Events/Mock/createMockGroups.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Mock/createMockGroups.ts -------------------------------------------------------------------------------- /src/Events/Mock/createMockHandlerParams.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/Mock/createMockHandlerParams.ts -------------------------------------------------------------------------------- /src/Events/bindEvents.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/bindEvents.test.ts -------------------------------------------------------------------------------- /src/Events/bindEvents.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/bindEvents.ts -------------------------------------------------------------------------------- /src/Events/getEventsList.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Events/getEventsList.ts -------------------------------------------------------------------------------- /src/Renderer/Constants/AttributeChangeType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Constants/AttributeChangeType.ts -------------------------------------------------------------------------------- /src/Renderer/Constants/DomChangeType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Constants/DomChangeType.ts -------------------------------------------------------------------------------- /src/Renderer/Dom.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Dom.ts -------------------------------------------------------------------------------- /src/Renderer/Interfaces/IAttributeChange.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Interfaces/IAttributeChange.ts -------------------------------------------------------------------------------- /src/Renderer/Interfaces/IPatchCommand.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Interfaces/IPatchCommand.ts -------------------------------------------------------------------------------- /src/Renderer/PatchCommand.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/PatchCommand.ts -------------------------------------------------------------------------------- /src/Renderer/Renderer.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Renderer.test.ts -------------------------------------------------------------------------------- /src/Renderer/Renderer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/Renderer.ts -------------------------------------------------------------------------------- /src/Renderer/dom.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/dom.test.ts -------------------------------------------------------------------------------- /src/Renderer/domDiff.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/domDiff.test.ts -------------------------------------------------------------------------------- /src/Renderer/domDiff.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/domDiff.ts -------------------------------------------------------------------------------- /src/Renderer/domPatch.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/domPatch.test.ts -------------------------------------------------------------------------------- /src/Renderer/domPatch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Renderer/domPatch.ts -------------------------------------------------------------------------------- /src/Shared/Polyfills/Element.matches.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Polyfills/Element.matches.ts -------------------------------------------------------------------------------- /src/Shared/Util/Constants/CollisionType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/Constants/CollisionType.ts -------------------------------------------------------------------------------- /src/Shared/Util/Interfaces/ICollisionData.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/Interfaces/ICollisionData.ts -------------------------------------------------------------------------------- /src/Shared/Util/Interfaces/IDispatchOpen.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/Interfaces/IDispatchOpen.ts -------------------------------------------------------------------------------- /src/Shared/Util/closestParent.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/closestParent.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/closestParent.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/closestParent.ts -------------------------------------------------------------------------------- /src/Shared/Util/composeClassName.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/composeClassName.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/composeClassName.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/composeClassName.ts -------------------------------------------------------------------------------- /src/Shared/Util/createDomElementFromHtml.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/createDomElementFromHtml.ts -------------------------------------------------------------------------------- /src/Shared/Util/detectBodyCollision.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/detectBodyCollision.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/detectBodyCollision.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/detectBodyCollision.ts -------------------------------------------------------------------------------- /src/Shared/Util/dispatchOpen.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/dispatchOpen.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/dispatchOpen.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/dispatchOpen.ts -------------------------------------------------------------------------------- /src/Shared/Util/getIsMobilePlatform.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/getIsMobilePlatform.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/getIsMobilePlatform.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/getIsMobilePlatform.ts -------------------------------------------------------------------------------- /src/Shared/Util/killSelectReaction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/killSelectReaction.ts -------------------------------------------------------------------------------- /src/Shared/Util/pollForSelectChange.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/pollForSelectChange.ts -------------------------------------------------------------------------------- /src/Shared/Util/pollForSelectMutation.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/pollForSelectMutation.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/pollForSelectMutation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/pollForSelectMutation.ts -------------------------------------------------------------------------------- /src/Shared/Util/throttle.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/throttle.test.ts -------------------------------------------------------------------------------- /src/Shared/Util/throttle.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/Shared/Util/throttle.ts -------------------------------------------------------------------------------- /src/State/Constants/BodyStatus.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Constants/BodyStatus.ts -------------------------------------------------------------------------------- /src/State/Constants/ScrollStatus.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Constants/ScrollStatus.ts -------------------------------------------------------------------------------- /src/State/Group.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Group.ts -------------------------------------------------------------------------------- /src/State/InjectedActions/closeOthers.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/InjectedActions/closeOthers.test.ts -------------------------------------------------------------------------------- /src/State/InjectedActions/closeOthers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/InjectedActions/closeOthers.ts -------------------------------------------------------------------------------- /src/State/InjectedActions/scrollToView.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/InjectedActions/scrollToView.test.ts -------------------------------------------------------------------------------- /src/State/InjectedActions/scrollToView.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/InjectedActions/scrollToView.ts -------------------------------------------------------------------------------- /src/State/Interfaces/IActions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Interfaces/IActions.ts -------------------------------------------------------------------------------- /src/State/Interfaces/IOnAction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Interfaces/IOnAction.ts -------------------------------------------------------------------------------- /src/State/Interfaces/IPropertyDescriptor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Interfaces/IPropertyDescriptor.ts -------------------------------------------------------------------------------- /src/State/Option.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/Option.ts -------------------------------------------------------------------------------- /src/State/State.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/State.test.ts -------------------------------------------------------------------------------- /src/State/State.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/State.ts -------------------------------------------------------------------------------- /src/State/StateManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/StateManager.ts -------------------------------------------------------------------------------- /src/State/StateMapper.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/StateMapper.test.ts -------------------------------------------------------------------------------- /src/State/StateMapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/StateMapper.ts -------------------------------------------------------------------------------- /src/State/resolveActions.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/resolveActions.test.ts -------------------------------------------------------------------------------- /src/State/resolveActions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/State/resolveActions.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/umd.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/src/umd.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickkunka/easydropdown/HEAD/tsconfig.json --------------------------------------------------------------------------------