{"_id":"@afonso360/react-input-enhancements","_rev":"7-f47f2879284d725c440716baf79a9443","name":"@afonso360/react-input-enhancements","description":"Set of enhancements for input control (bootstrap-ready)","dist-tags":{"latest":"0.4.16"},"versions":{"0.4.12":{"name":"@afonso360/react-input-enhancements","version":"0.4.12","description":"Set of enhancements for input control (bootstrap-ready)","scripts":{"build:lib":"NODE_ENV=production babel src --out-dir lib","build:demo":"NODE_ENV=production webpack -p --optimize-dedupe","stats":"webpack --profile --json > stats.json","start":"webpack-dev-server","lint":"eslint src","version":"npm run build:demo && git add -A .","postversion":"git push","prepublish":"npm run build:lib"},"main":"lib/index.js","repository":{"url":"git+https://github.com/alexkuz/react-input-enhancements.git"},"keywords":["react","reactjs","input","autocomplete","autosize","typeahead","mask","dropdown","combobox"],"devDependencies":{"babel":"^5.8.21","babel-core":"^5.4.7","babel-eslint":"^4.0.10","babel-loader":"^5.1.2","babel-plugin-react-transform":"^1.0.3","babel-runtime":"^5.8.20","clean-webpack-plugin":"^0.1.3","css-loader":"^0.23.0","eslint":"^1.2.1","eslint-loader":"^1.0.0","eslint-plugin-babel":"^2.1.1","eslint-plugin-react":"^3.2.3","export-files-webpack-plugin":"0.0.1","expose-loader":"^0.7.1","html-webpack-plugin":"^1.6.1","imports-loader":"^0.6.4","json-loader":"^0.5.2","nyan-progress-webpack-plugin":"^1.1.4","postcss-loader":"^0.8.0","raw-loader":"^0.5.1","react":">=0.14.0","react-dom":">=0.14.0","react-addons-perf":"^0.14.3","react-bootstrap":"^0.28.1","react-transform-hmr":"^1.0.1","style-loader":"^0.13.0","webpack":"^1.11.0","webpack-dev-server":"^1.10.1"},"peerDependencies":{"react":">=0.14.0","react-dom":">=0.14.0"},"dependencies":{"classnames":"^2.2.1","css-vendor":"^0.3.1","jss":"^3.2.0","jss-nested":"^1.0.1","jss-vendor-prefixer":"^1.0.1","lodash.sortby":"^3.1.5","moment":"^2.13.0","react-date-picker":"^3.1.9","react-pure-render":"^1.0.2"},"author":{"name":"Alexander","email":"alexkuz@gmail.com","url":"http://kuzya.org/"},"license":"MIT","gitHead":"e6ab17545ac51e5817518949c9296b5b4301144a","bugs":{"url":"https://github.com/alexkuz/react-input-enhancements/issues"},"homepage":"https://github.com/alexkuz/react-input-enhancements#readme","_id":"@afonso360/react-input-enhancements@0.4.12","_shasum":"5501c588caf721863833d5ea7ab4b2d61ddb7b2a","_from":".","_npmVersion":"3.9.6","_nodeVersion":"6.2.2","_npmUser":{"name":"afonso360","email":"afonsobordado@az8.co"},"dist":{"shasum":"5501c588caf721863833d5ea7ab4b2d61ddb7b2a","tarball":"https://registry.npmjs.org/@afonso360/react-input-enhancements/-/react-input-enhancements-0.4.12.tgz","integrity":"sha512-FTgy6K/bLOW7lvX/0B2A+sgd34nJSO7BOWhDn/qAJ7pUcShvgTaPwA51f+TDC7xyB92uaKbdY1bgAXG/+8/NjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDvx27J7HHxzxE8g5Ms+GLkXVdwCrFrdGz/+qAzJEQvgIhANrscA4mv2/ebAHdHpn6qwVmvPVhDQBC10MzGeRa/zrt"}]},"maintainers":[{"name":"afonso360","email":"afonsobordado@az8.co"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-input-enhancements-0.4.12.tgz_1467281174978_0.4776777164079249"}},"0.4.13":{"name":"@afonso360/react-input-enhancements","version":"0.4.13","description":"Set of enhancements for input control (bootstrap-ready)","scripts":{"build:lib":"NODE_ENV=production babel src --out-dir lib","build:demo":"NODE_ENV=production webpack -p --optimize-dedupe","stats":"webpack --profile --json > stats.json","start":"webpack-dev-server","lint":"eslint src","version":"npm run build:demo && git add -A .","postversion":"git push","prepublish":"npm run build:lib"},"main":"lib/index.js","repository":{"url":"git+https://github.com/alexkuz/react-input-enhancements.git"},"keywords":["react","reactjs","input","autocomplete","autosize","typeahead","mask","dropdown","combobox"],"devDependencies":{"babel":"^5.8.21","babel-core":"^5.4.7","babel-eslint":"^4.0.10","babel-loader":"^5.1.2","babel-plugin-react-transform":"^1.0.3","babel-runtime":"^5.8.20","clean-webpack-plugin":"^0.1.3","css-loader":"^0.23.0","eslint":"^1.2.1","eslint-loader":"^1.0.0","eslint-plugin-babel":"^2.1.1","eslint-plugin-react":"^3.2.3","export-files-webpack-plugin":"0.0.1","expose-loader":"^0.7.1","html-webpack-plugin":"^1.6.1","imports-loader":"^0.6.4","json-loader":"^0.5.2","nyan-progress-webpack-plugin":"^1.1.4","postcss-loader":"^0.8.0","raw-loader":"^0.5.1","react":">=0.14.0","react-dom":">=0.14.0","react-addons-perf":"^0.14.3","react-bootstrap":"^0.28.1","react-transform-hmr":"^1.0.1","style-loader":"^0.13.0","webpack":"^1.11.0","webpack-dev-server":"^1.10.1"},"peerDependencies":{"react":">=0.14.0","react-dom":">=0.14.0"},"dependencies":{"classnames":"^2.2.1","css-vendor":"^0.3.1","jss":"^3.2.0","jss-nested":"^1.0.1","jss-vendor-prefixer":"^1.0.1","lodash.sortby":"^3.1.5","moment":"^2.13.0","react-date-picker":"^3.1.9","react-pure-render":"^1.0.2"},"author":{"name":"Alexander","email":"alexkuz@gmail.com","url":"http://kuzya.org/"},"license":"MIT","gitHead":"e6ab17545ac51e5817518949c9296b5b4301144a","bugs":{"url":"https://github.com/alexkuz/react-input-enhancements/issues"},"homepage":"https://github.com/alexkuz/react-input-enhancements#readme","_id":"@afonso360/react-input-enhancements@0.4.13","_shasum":"7d24620e759b725bde95c75a32cd02b35cece734","_from":".","_npmVersion":"3.9.6","_nodeVersion":"6.2.2","_npmUser":{"name":"afonso360","email":"afonsobordado@az8.co"},"dist":{"shasum":"7d24620e759b725bde95c75a32cd02b35cece734","tarball":"https://registry.npmjs.org/@afonso360/react-input-enhancements/-/react-input-enhancements-0.4.13.tgz","integrity":"sha512-Z9AeWVHrDRrGM5tvnFZweXrFw90YjW3ZbvN4FlvkXojgK6byrytlA6hWqFY+b7ELmT5AWlaUtWdGd2UOuFaOpg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICdDEuW+0V/sFd+6jakmrk4mMPgOmCIurqO4HNrHBvRPAiEAqze5wVNbilqYxVJYX1oyZqY89Un7J7LYIukW/guRTX4="}]},"maintainers":[{"name":"afonso360","email":"afonsobordado@az8.co"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/react-input-enhancements-0.4.13.tgz_1467288063932_0.4528102756012231"}},"0.4.14":{"name":"@afonso360/react-input-enhancements","version":"0.4.14","description":"Set of enhancements for input control (bootstrap-ready)","scripts":{"build:lib":"NODE_ENV=production babel src --out-dir lib","build:demo":"NODE_ENV=production webpack -p --optimize-dedupe","stats":"webpack --profile --json > stats.json","start":"webpack-dev-server","lint":"eslint src","version":"npm run build:demo && git add -A .","postversion":"git push","prepublish":"npm run build:lib"},"main":"lib/index.js","repository":{"url":"git+https://github.com/alexkuz/react-input-enhancements.git"},"keywords":["react","reactjs","input","autocomplete","autosize","typeahead","mask","dropdown","combobox"],"devDependencies":{"babel":"^5.8.21","babel-core":"^5.4.7","babel-eslint":"^4.0.10","babel-loader":"^5.1.2","babel-plugin-react-transform":"^1.0.3","babel-runtime":"^5.8.20","clean-webpack-plugin":"^0.1.3","css-loader":"^0.23.0","eslint":"^1.2.1","eslint-loader":"^1.0.0","eslint-plugin-babel":"^2.1.1","eslint-plugin-react":"^3.2.3","export-files-webpack-plugin":"0.0.1","expose-loader":"^0.7.1","html-webpack-plugin":"^1.6.1","imports-loader":"^0.6.4","json-loader":"^0.5.2","nyan-progress-webpack-plugin":"^1.1.4","postcss-loader":"^0.8.0","raw-loader":"^0.5.1","react":">=0.14.0","react-dom":">=0.14.0","react-addons-perf":"^0.14.3","react-bootstrap":"^0.28.1","react-transform-hmr":"^1.0.1","style-loader":"^0.13.0","webpack":"^1.11.0","webpack-dev-server":"^1.10.1"},"peerDependencies":{"react":">=0.14.0","react-dom":">=0.14.0"},"dependencies":{"classnames":"^2.2.1","css-vendor":"^0.3.1","jss":"^3.2.0","jss-nested":"^1.0.1","jss-vendor-prefixer":"^1.0.1","lodash.sortby":"^3.1.5","moment":"^2.13.0","react-date-picker":"^3.1.9","react-pure-render":"^1.0.2"},"author":{"name":"Alexander","email":"alexkuz@gmail.com","url":"http://kuzya.org/"},"license":"MIT","gitHead":"e6ab17545ac51e5817518949c9296b5b4301144a","bugs":{"url":"https://github.com/alexkuz/react-input-enhancements/issues"},"homepage":"https://github.com/alexkuz/react-input-enhancements#readme","_id":"@afonso360/react-input-enhancements@0.4.14","_shasum":"326fd21f476e4753bf77ff15feca6166597e14c7","_from":".","_npmVersion":"3.9.6","_nodeVersion":"6.2.2","_npmUser":{"name":"afonso360","email":"afonsobordado@az8.co"},"dist":{"shasum":"326fd21f476e4753bf77ff15feca6166597e14c7","tarball":"https://registry.npmjs.org/@afonso360/react-input-enhancements/-/react-input-enhancements-0.4.14.tgz","integrity":"sha512-Z4MnS5KQzMCNJbvUQGZr4HPzPCVgWEhUV0l2D0IE72zKPyZWRIWmzZvVii6ZpGP9xj3rQfIT9R5dnT1ihKFv+g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHvkOWNQH9iLdVHHIpNId7ptVZ+CApzB/tc6hcri7uptAiEA2CIDvUdXXYwRIuSRzV3BjqZTWmdfustPs4gFd1TsnqE="}]},"maintainers":[{"name":"afonso360","email":"afonsobordado@az8.co"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-input-enhancements-0.4.14.tgz_1467309976993_0.42320047691464424"}},"0.4.15":{"name":"@afonso360/react-input-enhancements","version":"0.4.15","description":"Set of enhancements for input control (bootstrap-ready)","scripts":{"build:lib":"NODE_ENV=production babel src --out-dir lib","build:demo":"NODE_ENV=production webpack -p --optimize-dedupe","stats":"webpack --profile --json > stats.json","start":"webpack-dev-server","lint":"eslint src","version":"npm run build:demo && git add -A .","postversion":"git push","prepublish":"npm run build:lib"},"main":"lib/index.js","repository":{"url":"git+https://github.com/alexkuz/react-input-enhancements.git"},"keywords":["react","reactjs","input","autocomplete","autosize","typeahead","mask","dropdown","combobox"],"devDependencies":{"babel":"^5.8.21","babel-core":"^5.4.7","babel-eslint":"^4.0.10","babel-loader":"^5.1.2","babel-plugin-react-transform":"^1.0.3","babel-runtime":"^5.8.20","clean-webpack-plugin":"^0.1.3","css-loader":"^0.23.0","eslint":"^1.2.1","eslint-loader":"^1.0.0","eslint-plugin-babel":"^2.1.1","eslint-plugin-react":"^3.2.3","export-files-webpack-plugin":"0.0.1","expose-loader":"^0.7.1","html-webpack-plugin":"^1.6.1","imports-loader":"^0.6.4","json-loader":"^0.5.2","nyan-progress-webpack-plugin":"^1.1.4","postcss-loader":"^0.8.0","raw-loader":"^0.5.1","react":">=0.14.0","react-dom":">=0.14.0","react-addons-perf":"^0.14.3","react-bootstrap":"^0.28.1","react-transform-hmr":"^1.0.1","style-loader":"^0.13.0","webpack":"^1.11.0","webpack-dev-server":"^1.10.1"},"peerDependencies":{"react":">=0.14.0","react-dom":">=0.14.0"},"dependencies":{"classnames":"^2.2.1","css-vendor":"^0.3.1","jss":"^3.2.0","jss-nested":"^1.0.1","jss-vendor-prefixer":"^1.0.1","lodash.sortby":"^3.1.5","moment":"^2.13.0","react-date-picker":"^3.1.9","react-pure-render":"^1.0.2"},"author":{"name":"Alexander","email":"alexkuz@gmail.com","url":"http://kuzya.org/"},"license":"MIT","gitHead":"e6ab17545ac51e5817518949c9296b5b4301144a","bugs":{"url":"https://github.com/alexkuz/react-input-enhancements/issues"},"homepage":"https://github.com/alexkuz/react-input-enhancements#readme","_id":"@afonso360/react-input-enhancements@0.4.15","_shasum":"998a574796b80ad800fb384d1edd61b20d670866","_from":".","_npmVersion":"3.9.6","_nodeVersion":"6.2.2","_npmUser":{"name":"afonso360","email":"afonsobordado@az8.co"},"dist":{"shasum":"998a574796b80ad800fb384d1edd61b20d670866","tarball":"https://registry.npmjs.org/@afonso360/react-input-enhancements/-/react-input-enhancements-0.4.15.tgz","integrity":"sha512-UeBF0Qg5zYAsOSX/qXp7r46pVUjePKBrie/br4c+s52v2SGaDeZEGCSozE2uY4t4XzHbjme5e8HrhBzRb09PGQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHTE56bsTNYiabqiBXoGRt7xh5VCrfJUlXeBowkaqUD0AiBOF5kaf5BkswE+vWw/PEHy4Ve15HMmUYnIUzuj8xHH7g=="}]},"maintainers":[{"name":"afonso360","email":"afonsobordado@az8.co"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/react-input-enhancements-0.4.15.tgz_1467312340751_0.08692689030431211"}},"0.4.16":{"name":"@afonso360/react-input-enhancements","version":"0.4.16","description":"Set of enhancements for input control (bootstrap-ready)","scripts":{"build:lib":"NODE_ENV=production babel src --out-dir lib","build:demo":"NODE_ENV=production webpack -p --optimize-dedupe","stats":"webpack --profile --json > stats.json","start":"webpack-dev-server","lint":"eslint src","version":"npm run build:demo && git add -A .","postversion":"git push","prepublish":"npm run build:lib"},"main":"lib/index.js","repository":{"url":"git+https://github.com/alexkuz/react-input-enhancements.git"},"keywords":["react","reactjs","input","autocomplete","autosize","typeahead","mask","dropdown","combobox"],"devDependencies":{"babel":"^5.8.21","babel-core":"^5.4.7","babel-eslint":"^4.0.10","babel-loader":"^5.1.2","babel-plugin-react-transform":"^1.0.3","babel-runtime":"^5.8.20","clean-webpack-plugin":"^0.1.3","css-loader":"^0.23.0","eslint":"^1.2.1","eslint-loader":"^1.0.0","eslint-plugin-babel":"^2.1.1","eslint-plugin-react":"^3.2.3","export-files-webpack-plugin":"0.0.1","expose-loader":"^0.7.1","html-webpack-plugin":"^1.6.1","imports-loader":"^0.6.4","json-loader":"^0.5.2","nyan-progress-webpack-plugin":"^1.1.4","postcss-loader":"^0.8.0","raw-loader":"^0.5.1","react":">=0.14.0","react-dom":">=0.14.0","react-addons-perf":"^0.14.3","react-bootstrap":"^0.28.1","react-transform-hmr":"^1.0.1","style-loader":"^0.13.0","webpack":"^1.11.0","webpack-dev-server":"^1.10.1"},"peerDependencies":{"react":">=0.14.0","react-dom":">=0.14.0"},"dependencies":{"classnames":"^2.2.1","css-vendor":"^0.3.1","jss":"^3.2.0","jss-nested":"^1.0.1","jss-vendor-prefixer":"^1.0.1","lodash.sortby":"^3.1.5","moment":"^2.13.0","react-date-picker":"^3.1.9","react-pure-render":"^1.0.2"},"author":{"name":"Alexander","email":"alexkuz@gmail.com","url":"http://kuzya.org/"},"license":"MIT","gitHead":"e6ab17545ac51e5817518949c9296b5b4301144a","bugs":{"url":"https://github.com/alexkuz/react-input-enhancements/issues"},"homepage":"https://github.com/alexkuz/react-input-enhancements#readme","_id":"@afonso360/react-input-enhancements@0.4.16","_shasum":"3f1dbcecf5a8321d187f8861150337d79f1401f9","_from":".","_npmVersion":"3.9.6","_nodeVersion":"6.2.2","_npmUser":{"name":"afonso360","email":"afonsobordado@az8.co"},"dist":{"shasum":"3f1dbcecf5a8321d187f8861150337d79f1401f9","tarball":"https://registry.npmjs.org/@afonso360/react-input-enhancements/-/react-input-enhancements-0.4.16.tgz","integrity":"sha512-iTMvrDAEMUPz3nUouyiYNcm5NexG35MW0Mbn9td8kG5+p1HyICROMe/+f1dDKXQc88p6h2cRPEHmEh8Rpp74qw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlOXztcGWQK1udy4q3vqPf73/8Ct9RWSvINsf12OROdgIhAN8JRMWOZ7Ruosq9X3uJ5rLXER0h7QVcrGCcIusVv3aB"}]},"maintainers":[{"name":"afonso360","email":"afonsobordado@az8.co"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/react-input-enhancements-0.4.16.tgz_1467370454325_0.6366158532910049"}}},"readme":"# react-input-enhancements\nSet of enhancements for input control\n\nThe intention of creating this library was to bring `input` component out of the dropdown/autocomplete/whatever code, so it could be easily replaced with your custom component, and also to split independent functionality into different components, which could be combined with each other (still not quite sure it was worth it, though).\n\nThere are currently five components:\n\n1. [`<Autosize />`](#autosize)\n2. [`<Autocomplete />`](#autocomplete)\n3. [`<Dropdown />`](#dropdown)\n4. [`<Mask />`](#mask)\n5. [`<DatePicker />`](#datepicker)\n\nAll components accept `function` as a child, providing props as a first argument, which you should pass to your `input` component. If there is nothing else except `input`, it could be passed as a child directly (for simplicity).\n\n[`<Combobox />`](#combobox) is a combination of `Dropdown`, `Autosize` and/or `Autocomplete` components.\n\n## Demo\n\nhttp://alexkuz.github.io/react-input-enhancements/\n\n## Autosize\n\n`Autosize` resizes component to fit it's content.\n\n```js\n<Autosize defaultValue={value}\n          minWidth={100}>\n  {(inputProps, { width }) =>\n    <input type='text' {...inputProps} />\n  }\n</Autosize>\n```\n\n### Autosize Props\n\n* **`value`** *string* - Input value (for a controlled component)\n* **`defaultValue`** *string* - Initial value (for a uncontrolled component)\n* **`getInputElement`** *function()* - Optional callback that provides input DOM element\n* **`defaultWidth`** *number* - Minimum input width\n\n## Autocomplete\n\n`Autocomplete` prompts a value based on provided `options` (see also [react-autocomplete](https://github.com/reactjs/react-autocomplete) for the same behaviour)\n\n```js\n<Autocomplete defaultValue={value}\n              options={options}>\n  {(inputProps, { matchingText, value }) =>\n    <input type='text' {...inputProps} />\n  }\n</Autocomplete>\n```\n\n### Autocomplete Props\n\n* **`value`** *string* - Input value (for a controlled component)\n* **`defaultValue`** *string* - Initial value (for a uncontrolled component)\n* **`getInputElement`** *function* - Optional callback that provides input DOM element\n* **`options`** *array* - Array of options that are used to predict a value\n\n`options` is an array of strings or objects with a `text` or `value` string properties.\n\n## Dropdown\n\n`Dropdown` shows a dropdown with a (optionally filtered) list of suitable options.\n\n```js\n<Dropdown defaultValue={value}\n          options={options}>\n  {(inputProps, { textValue }) =>\n    <input type='text' {...inputProps} />\n  }\n</Dropdown>\n```\n\n### Dropdown Props\n\n* **`value`** *string* - Input value (for a controlled component)\n* **`defaultValue`** *string* - Initial value (for a uncontrolled component)\n* **`options`** *array* - Array of shown options\n* **`onRenderOption`** *function(className, style, option)* - Renders option in list\n* **`onRenderCaret`** *function(className, style, isActive, children)* - Renders a caret\n* **`onRenderList`** *function(className, style, isActive, listShown, children, header)* - Renders list of options\n* **`onRenderListHeader`** *function(allCount, shownCount, staticCount)* - Renders list header\n* **`dropdownClassName`** *string* - Dropdown root element class name\n* **`dropdownProps`** *object* - Custom props passed to dropdown root element\n* **`optionFilters`** *array* - List of option filters\n\n`options` is an array of strings or objects with a shape:\n\n* **`value`** - \"real\" value of on option\n* **`text`** - text used as input value when option is selected\n* **`label`** - text or component rendered in list\n* **`static`** - option is never filtered out or sorted\n* **`disabled`** - option is not selectable\n\n`null` option is rendered as a separator\n\n`optionFilters` is an array of filters for options (for convenience). By default, these filters are used:\n\n* `filters.filterByMatchingTextWithThreshold(20)` - filters options by matching value, if options length is more than 20\n* `filters.sortByMatchingText` - sorting by matching value\n* `filters.limitBy(100)` - cuts options longer than 100\n* `filters.notFoundMessage('No matches found')` - shows option with 'No matches found' label if all options are filtered out\n* `filters.filterRedudantSeparators` - removes redudant separators (duplicated or at the begin/end of the list)\n\n## Mask\n\n`Mask` formats input value.\n\n```js\n<Mask defaultValue={value}\n      pattern='0000-0000-0000-0000'>\n  {(inputProps, { value }) =>\n    <input type='text' {...inputProps} />\n  }\n</Mask>\n```\n\n### Mask Props\n\n* **`value`** *string* - Input value (for a controlled component)\n* **`defaultValue`** *string* - Initial value (for a uncontrolled component)\n* **`getInputElement`** *function()* - Optional callback that provides input DOM element\n* **`pattern`** *string* - String formatting pattern. Only '0' (digit) or 'a' (letter) pattern chars are currently supported.\n* **`emptyChar`** *string* - Character used as an empty symbol (`' '` by default)\n* **`placeholder`** *string* - If set, it is shown when `unmaskedValue` is empty\n* **`onUnmaskedValueChange`** *function(text)* - Fires when value is changed, providing unmasked value\n\n## DatePicker\n\n`DatePicker` uses `Mask` to format date and shows calendar ([react-date-picker](https://github.com/zippyui/react-date-picker) by default) in popup.\n\n```js\n<DatePicker defaultValue={moment(value).format('ddd DD/MM/YYYY')}\n            placeholder={moment().format('ddd DD/MM/YYYY')}\n            pattern='ddd DD/MM/YYYY'\n            locale='en'>\n  {(inputProps, { value }) =>\n    <input type='text' {...inputProps} />\n  }\n</DatePicker>\n```\n\n### DatePicker Props\n\n* **`value`** *string* - Input value (for a controlled component)\n* **`defaultValue`** *string* - Initial value (for a uncontrolled component)\n* **`pattern`** *string* - Date formatting pattern. For now, only these tokens are supported:\n  * `DD` - day of month\n  * `MM` - month\n  * `YYYY` - year\n  * `ddd` - day of week *(not editable)*\n* **`placeholder`** *string* - If set, it is shown when `unmaskedValue` is empty\n* **`locale`** *string* - Date locale\n* **`onRenderCalendar`** *function(className, style, date, isActive, popupShown, onSelect, locale)* - Returns calendar component shown in popup ([react-date-picker](https://github.com/zippyui/react-date-picker) by default)\n* **`onChange`** *function(date)* - Fires when date is selected, providing [moment.js](http://momentjs.com/) object\n\n## Combobox\n\n`Combobox` combines `Dropdown`, `Autosize` and/or `Autocomplete` components.\n\n```js\n<Combobox defaultValue={value}\n          options={options}\n          autosize\n          autocomplete>\n  {(inputProps, { matchingText, width }) =>\n    <input type='text' {...inputProps} />\n  }\n</Combobox>\n```\n\n`Autosize` and `Autocomlete` are enabled with corresponding bool props, other properties are proxied to `Dropdown` component.\n\nSee [demo](http://alexkuz.github.io/react-input-enhancements/) for code examples.\n\n## Some other (probably better) implementations\n\n* [react-autocomplete](https://github.com/rackt/react-autocomplete) - Dropdown with autocompletion by Ryan Florence (that led me to create this library)\n* [react-maskedinput](https://github.com/insin/react-maskedinput) - More advanced masked input by Jonny Buchanan\n","maintainers":[{"name":"afonso360","email":"afonsobordado@az8.co"}],"time":{"modified":"2022-06-12T14:20:31.476Z","created":"2016-06-30T10:06:17.172Z","0.4.12":"2016-06-30T10:06:17.172Z","0.4.13":"2016-06-30T12:01:05.638Z","0.4.14":"2016-06-30T18:06:19.305Z","0.4.15":"2016-06-30T18:45:42.495Z","0.4.16":"2016-07-01T10:54:16.248Z"},"homepage":"https://github.com/alexkuz/react-input-enhancements#readme","keywords":["react","reactjs","input","autocomplete","autosize","typeahead","mask","dropdown","combobox"],"repository":{"url":"git+https://github.com/alexkuz/react-input-enhancements.git"},"author":{"name":"Alexander","email":"alexkuz@gmail.com","url":"http://kuzya.org/"},"bugs":{"url":"https://github.com/alexkuz/react-input-enhancements/issues"},"license":"MIT","readmeFilename":"README.md"}